diff --git a/.changeset/config.json b/.changeset/config.json index 46f92f33..95e0ce15 100644 --- a/.changeset/config.json +++ b/.changeset/config.json @@ -4,7 +4,9 @@ "baseBranch": "main", "changelog": [ "@changesets/changelog-github", - { "repo": "openpatch/hyperbook" } + { + "repo": "openpatch/hyperbook" + } ], "privatePackages": { "version": true, @@ -12,6 +14,5 @@ }, "commit": false, "ignore": [], - "fixed": [["@platforms/web", "hyperbook"]], "updateInternalDependencies": "patch" } diff --git a/.changeset/fuzzy-colts-roll.md b/.changeset/fuzzy-colts-roll.md new file mode 100644 index 00000000..d094024b --- /dev/null +++ b/.changeset/fuzzy-colts-roll.md @@ -0,0 +1,35 @@ +--- +"@hyperbook/web-component-excalidraw": minor +"hyperbook": minor +"@hyperbook/markdown": minor +"hyperbook-studio": minor +"@hyperbook/types": minor +"@hyperbook/fs": minor +--- + +The release is a complete rewrite of the underlying process to generate the +HTML files. React was removed from the project and replaced with remark +plugins. This improves build times and give us more control over the whole +process. For example there is no need anymore for running `npx hyperbook +setup`. + +I also added a new pagelist directive, which can be used to list pages based +on user-defined criteria. This directive also replaces the included glossary +page. Therefore, you need to create on yourself. This can be easily done by +creating a page `glossary.md` with the following content: + +```md +--- +name: Glossary +--- + +::pagelist{format="glossary" source="href(/glossary/)"} + +``` + +Additionally, I added the ability to use custom JavaScript and CSS-files - see +the documentation under Advanced Features - in addition to using HTML in your +hyperbook, when the `allowDangerousHtml` option is enabled in your config. + +I also improved the appearance of custom links, by moving them to the +footer on mobile devices. diff --git a/.gitignore b/.gitignore index 22e14359..4554c180 100644 --- a/.gitignore +++ b/.gitignore @@ -1,11 +1,3 @@ -platforms/web/next.config.js -platforms/web/glossary -platforms/web/book -platforms/web/hyperbook.json -platforms/web/public -platforms/web/archives -platforms/web/snippets -platforms/web/templates vdirectory.book.json vdirectory.snippets.json vdirectory.archives.json @@ -13,6 +5,8 @@ vdirectory.glossary.json vdirectory.public.json vfiles.json +packages/markdown/index.html + *.zip activity diff --git a/package.json b/package.json index 345a2585..da36ca69 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "private": true, "scripts": { "preinstall": "npx only-allow pnpm", - "prepare": "husky && node scripts/setup.mjs", + "prepare": "husky", "dev": "node scripts/watcher.mjs", "build": "pnpm -r build", "build:vercel": "pnpm --filter=!hyperbook-studio build", @@ -14,13 +14,10 @@ "hyperbook:build": "pnpm --filter hyperbook build", "version-packages": "changeset version", "release": "changeset publish", - "platform:web:dev": "pnpm --filter @platforms/web dev", "platform:vscode:dev": "pnpm --filter hyperbook-studio watch", - "examples:setup": "cd examples && HYPERBOOK_LOCAL_DEV=1 node ../packages/hyperbook/dist/index.js setup", - "examples:build": "cd examples && HYPERBOOK_LOCAL_DEV=1 node ../packages/hyperbook/dist/index.js build", - "website:setup": "cd website && HYPERBOOK_LOCAL_DEV=1 node ../packages/hyperbook/dist/index.js setup", - "website:dev": "node ./scripts/websiteDev.mjs", - "website:build": "cd website && HYPERBOOK_LOCAL_DEV=1 node ../packages/hyperbook/dist/index.js build" + "examples:build": "cd examples && node ../packages/hyperbook/dist/index.js build", + "website:dev": "cd website && node ../packages/hyperbook/dist/index.js dev", + "website:build": "cd website && node ../packages/hyperbook/dist/index.js build" }, "devDependencies": { "@changesets/changelog-github": "0.5.0", diff --git a/packages/drawer/CHANGELOG.md b/packages/drawer/CHANGELOG.md deleted file mode 100644 index a07b70c7..00000000 --- a/packages/drawer/CHANGELOG.md +++ /dev/null @@ -1,19 +0,0 @@ -# @hyperbook/drawer - -## 0.1.2 - -### Patch Changes - -- [`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -## 0.1.1 - -### Patch Changes - -- [`75a3227`](https://github.com/openpatch/hyperbook/commit/75a322721e2e0af3c248ab12fb72cca357d6f4d8) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - add missing type - -## 0.1.0 - -### Minor Changes - -- [`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Move to pure ESM packages diff --git a/packages/drawer/README.md b/packages/drawer/README.md deleted file mode 100644 index 2807148c..00000000 --- a/packages/drawer/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# @hyperbook/drawer - -## Installation - -```sh -yarn add @hyperbook/drawer -# or -npm i @hyperbook/drawer -``` diff --git a/packages/drawer/package.json b/packages/drawer/package.json deleted file mode 100644 index 539aa076..00000000 --- a/packages/drawer/package.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "name": "@hyperbook/drawer", - "version": "0.1.2", - "author": "Mike Barkmin", - "homepage": "https://github.com/openpatch/hyperbook#readme", - "license": "MIT", - "type": "module", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "sideEffects": false, - "exports": { - ".": "./dist/index.js", - "./index.css": "./dist/index.css" - }, - "files": [ - "dist" - ], - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/drawer" - }, - "bugs": { - "url": "https://github.com/openpatch/hyperbook/issues" - }, - "scripts": { - "version": "pnpm build", - "lint": "tsc --noEmit", - "build": "rimraf dist && pnpm build:pkg && pnpm build:types", - "build:pkg": "node ../../scripts/build.mjs", - "build:types": "tsc --project tsconfig.build.json --declaration --emitDeclarationOnly" - }, - "dependencies": { - "classnames": "2.5.1" - }, - "peerDependencies": { - "react": "18.x", - "react-dom": "18.x" - }, - "devDependencies": { - "@types/react": "18.3.2", - "@types/react-dom": "18.3.0", - "react": "18.3.1", - "react-dom": "18.3.1", - "vitest": "^1.6.0" - } -} diff --git a/packages/drawer/src/Drawer.tsx b/packages/drawer/src/Drawer.tsx deleted file mode 100644 index 0db83787..00000000 --- a/packages/drawer/src/Drawer.tsx +++ /dev/null @@ -1,125 +0,0 @@ -import { useRef, useEffect, useState, ReactNode, FC } from "react"; -import { createPortal } from "react-dom"; -import cn from "classnames"; - -export const useMountTransition = ( - isMounted: boolean, - unmountDelay: number -) => { - const [isTransitioning, setIsTransitioning] = useState(false); - - useEffect(() => { - let timeoutId: NodeJS.Timeout; - - if (isMounted && !isTransitioning) { - setIsTransitioning(true); - } else if (!isMounted && isTransitioning) { - timeoutId = setTimeout(() => setIsTransitioning(false), unmountDelay); - } - return () => { - clearTimeout(timeoutId); - }; - }, [unmountDelay, isMounted, isTransitioning]); - - return isTransitioning; -}; - -function createPortalRoot() { - const drawerRoot = document.createElement("div"); - drawerRoot.setAttribute("id", "drawer-root"); - - return drawerRoot; -} - -export type DrawerProps = { - isOpen: boolean; - children: ReactNode; - onClose: () => void; - position?: "left" | "right"; - removeWhenClosed?: boolean; -}; - -/* - * Read the blog post here: - * https://letsbuildui.dev/articles/building-a-drawer-component-with-react-portals - */ -export const Drawer: FC = ({ - isOpen, - children, - onClose, - position = "left", - removeWhenClosed = true, -}) => { - const bodyRef = useRef(); - const portalRootRef = useRef(); - const isTransitioning = useMountTransition(isOpen, 300); - - // Append portal root on mount - useEffect(() => { - portalRootRef.current = - document.getElementById("drawer-root") || createPortalRoot(); - bodyRef.current = document.querySelector("body") as HTMLBodyElement; - bodyRef.current.appendChild(portalRootRef.current); - const portal = portalRootRef.current; - const bodyEl = bodyRef.current; - - return () => { - // Clean up the portal when drawer component unmounts - portal.remove(); - // Ensure scroll overflow is removed - bodyEl.style.overflow = ""; - }; - }, []); - - // Prevent page scrolling when the drawer is open - useEffect(() => { - const updatePageScroll = () => { - if (bodyRef.current) { - if (isOpen) { - bodyRef.current.style.overflow = "hidden"; - } else { - bodyRef.current.style.overflow = ""; - } - } - }; - - updatePageScroll(); - }, [isOpen]); - - // Allow Escape key to dismiss the drawer - useEffect(() => { - const onKeyPress = (e: KeyboardEvent) => { - if (e.key === "Escape") { - onClose(); - } - }; - - if (isOpen) { - window.addEventListener("keyup", onKeyPress); - } - - return () => { - window.removeEventListener("keyup", onKeyPress); - }; - }, [isOpen, onClose]); - - if (!isTransitioning && removeWhenClosed && !isOpen) { - return null; - } - - return createPortal( -
-
- {children} -
-
-
, - portalRootRef.current as HTMLElement - ); -}; diff --git a/packages/drawer/src/index.css b/packages/drawer/src/index.css deleted file mode 100644 index 33cc1d42..00000000 --- a/packages/drawer/src/index.css +++ /dev/null @@ -1,66 +0,0 @@ -#drawer-root { - font-family: hyperbook-body, sans-serif; -} - -#drawer-root * { - box-sizing: border-box; -} - -.drawer { - background: #fff; - font-size: 16px; -} - -.drawer-container { - --transition-speed: 0.3s; -} - -.drawer { - width: 300px; - height: 100%; - overflow: auto; - position: fixed; - display: flex; - box-shadow: 0 0 15px rgba(0, 0, 0, 0.5); - transition: transform var(--transition-speed) ease; - z-index: 1000; -} - -.drawer.left { - top: 80px; - left: 0; - transform: translateX(-105%); -} - -.drawer.right { - top: 80px; - right: 0; - transform: translateX(100%); -} - -.drawer-container.in.open .left, -.drawer-container.in.open .right { - transform: translateX(0); -} - -.backdrop { - visibility: hidden; - opacity: 0; - background: rgba(0, 0, 0, 0.5); - transition: opacity var(--transition-speed) ease, - visibility var(--transition-speed) ease; - width: 100%; - height: 100%; - top: 80px; - left: 0; - position: fixed; - pointer-events: none; - z-index: 0; -} - -.drawer-container.in.open .backdrop { - visibility: visible; - opacity: 1; - pointer-events: auto; - z-index: 999; -} diff --git a/packages/drawer/src/index.ts b/packages/drawer/src/index.ts deleted file mode 100644 index 5892a842..00000000 --- a/packages/drawer/src/index.ts +++ /dev/null @@ -1,2 +0,0 @@ -import "./index.css"; -export * from "./Drawer"; diff --git a/packages/drawer/tsconfig.build.json b/packages/drawer/tsconfig.build.json deleted file mode 100644 index e8415085..00000000 --- a/packages/drawer/tsconfig.build.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["src", "../../types"], - "compilerOptions": { - "rootDir": "src", - "declarationDir": "dist" - } -} diff --git a/packages/drawer/tsconfig.json b/packages/drawer/tsconfig.json deleted file mode 100644 index f068abe3..00000000 --- a/packages/drawer/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "include": ["src", "../../types", "tests"] -} diff --git a/packages/element-alert/CHANGELOG.md b/packages/element-alert/CHANGELOG.md deleted file mode 100644 index 9796ce98..00000000 --- a/packages/element-alert/CHANGELOG.md +++ /dev/null @@ -1,147 +0,0 @@ -# @hyperbook/element-alert - -## 0.2.2 - -### Patch Changes - -- [`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23)]: - - @hyperbook/provider@0.4.2 - -## 0.2.1 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.4.1 - -## 0.2.0 - -### Minor Changes - -- [`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Move to pure ESM packages - -### Patch Changes - -- Updated dependencies [[`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de)]: - - @hyperbook/provider@0.4.0 - -## 0.1.14 - -### Patch Changes - -- Updated dependencies [[`902c0b3`](https://github.com/openpatch/hyperbook/commit/902c0b30a0aa97984350cfd58ad88d38ef7b4cd6)]: - - @hyperbook/provider@0.3.0 - -## 0.1.13 - -### Patch Changes - -- [`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - fix data not defined - -- Updated dependencies [[`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1)]: - - @hyperbook/provider@0.2.5 - -## 0.1.12 - -### Patch Changes - -- [`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update packages - -- Updated dependencies [[`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e)]: - - @hyperbook/provider@0.2.4 - -## 0.1.11 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.3 - -## 0.1.10 - -### Patch Changes - -- [`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- [`bf7d452`](https://github.com/openpatch/hyperbook/commit/bf7d452cc1608507166a9e0c499d2db42740a307) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update package.json - -- Updated dependencies [[`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37)]: - - @hyperbook/provider@0.2.2 - -## 0.1.9 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.1 - -## 0.1.8 - -### Patch Changes - -- Updated dependencies [[`8d53899`](https://github.com/openpatch/hyperbook/commit/8d538999fc924f7b3e3115416cba4978c9589b68)]: - - @hyperbook/provider@0.2.0 - -## 0.1.7 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.7 - -## 0.1.6 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.6 - -## 0.1.5 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.5 - -## 0.1.4 - -### Patch Changes - -- Updated dependencies [[`cedb551`](https://github.com/openpatch/hyperbook/commit/cedb55191fd025b5a214df406a53cbab5d1b1bc1)]: - - @hyperbook/provider@0.1.4 - -## 0.1.3 - -### Patch Changes - -- Updated dependencies [[`c3e747a`](https://github.com/openpatch/hyperbook/commit/c3e747ab7b95c3e526b3800b169aa8f505f9b9a2)]: - - @hyperbook/provider@0.1.3 - -## 0.1.2 - -### Patch Changes - -- Updated dependencies [[`2c34554`](https://github.com/openpatch/hyperbook/commit/2c34554f64359fb995190b1465daddfa3e0101c0)]: - - @hyperbook/provider@0.1.2 - -## 0.1.1 - -### Patch Changes - -- [`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Force package update due to failed pipeline - -- Updated dependencies [[`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00)]: - - @hyperbook/provider@0.1.1 - -## 0.1.0 - -### Minor Changes - -- [`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Extract feature in separate packages. This allows for easier development of new templates and allows enables to make changes more transparent. - -### Patch Changes - -- Updated dependencies [[`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8)]: - - @hyperbook/provider@0.1.0 diff --git a/packages/element-alert/README.md b/packages/element-alert/README.md deleted file mode 100644 index 9e61d850..00000000 --- a/packages/element-alert/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# @hyperbook/element-alert - -## Installation - -```sh -yarn add @hyperbook/element-alert -# or -npm i @hyperbook/element-alert -``` diff --git a/packages/element-alert/package.json b/packages/element-alert/package.json deleted file mode 100644 index b430022b..00000000 --- a/packages/element-alert/package.json +++ /dev/null @@ -1,52 +0,0 @@ -{ - "name": "@hyperbook/element-alert", - "version": "0.2.2", - "author": "Mike Barkmin", - "homepage": "https://github.com/openpatch/hyperbook#readme", - "license": "MIT", - "type": "module", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "sideEffects": false, - "exports": { - ".": "./dist/index.js", - "./index.css": "./dist/index.css" - }, - "files": [ - "dist" - ], - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/element-alert" - }, - "bugs": { - "url": "https://github.com/openpatch/hyperbook/issues" - }, - "scripts": { - "version": "pnpm build", - "lint": "tsc --noEmit", - "build": "rimraf dist && pnpm build:pkg && pnpm build:types", - "build:pkg": "node ../../scripts/build.mjs", - "build:types": "tsc --project tsconfig.build.json --declaration --emitDeclarationOnly" - }, - "dependencies": { - "@hyperbook/provider": "workspace:*" - }, - "peerDependencies": { - "react": "18.x", - "react-dom": "18.x", - "react-redux": "9.x" - }, - "devDependencies": { - "@types/react": "18.3.2", - "@types/react-dom": "18.3.0", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-redux": "9.1.2", - "@reduxjs/toolkit": "2.2.5" - } -} diff --git a/packages/element-alert/src/index.tsx b/packages/element-alert/src/index.tsx deleted file mode 100644 index 04eac9c7..00000000 --- a/packages/element-alert/src/index.tsx +++ /dev/null @@ -1,20 +0,0 @@ -import { FC, ReactNode } from "react"; -import "./index.css"; - -type DirectiveAlertProps = { - children?: ReactNode; - node: any; -} & any; - -const DirectiveAlert: FC = ({ - children, - node, - ...props -}) => { - let c = Object.keys(props).join(" "); - return
{children}
; -}; - -export default { - directives: { alert: DirectiveAlert }, -}; diff --git a/packages/element-alert/tsconfig.build.json b/packages/element-alert/tsconfig.build.json deleted file mode 100644 index e8415085..00000000 --- a/packages/element-alert/tsconfig.build.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["src", "../../types"], - "compilerOptions": { - "rootDir": "src", - "declarationDir": "dist" - } -} diff --git a/packages/element-alert/tsconfig.json b/packages/element-alert/tsconfig.json deleted file mode 100644 index f068abe3..00000000 --- a/packages/element-alert/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "include": ["src", "../../types", "tests"] -} diff --git a/packages/element-audio/CHANGELOG.md b/packages/element-audio/CHANGELOG.md deleted file mode 100644 index f76f0932..00000000 --- a/packages/element-audio/CHANGELOG.md +++ /dev/null @@ -1,55 +0,0 @@ -# @hyperbook/element-audio - -## 0.2.3 - -### Patch Changes - -- [`2bfe682`](https://github.com/openpatch/hyperbook/commit/2bfe6828e578399c405bf4fc52fb1845efe2fb6a) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update packages - -## 0.2.2 - -### Patch Changes - -- [`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23)]: - - @hyperbook/provider@0.4.2 - - @hyperbook/store@0.2.1 - -## 0.2.1 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.4.1 - -## 0.2.0 - -### Minor Changes - -- [`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Move to pure ESM packages - -### Patch Changes - -- Updated dependencies [[`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de)]: - - @hyperbook/provider@0.4.0 - - @hyperbook/store@0.2.0 - -## 0.1.2 - -### Patch Changes - -- Updated dependencies [[`902c0b3`](https://github.com/openpatch/hyperbook/commit/902c0b30a0aa97984350cfd58ad88d38ef7b4cd6)]: - - @hyperbook/provider@0.3.0 - -## 0.1.1 - -### Patch Changes - -- [`b6f842d`](https://github.com/openpatch/hyperbook/commit/b6f842d222af821346382feff5c5f698a1d93e7e) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - fix make url not hinting on public folder - -## 0.1.0 - -### Minor Changes - -- [`a9d0900`](https://github.com/openpatch/hyperbook/commit/a9d09005a21e87e663a3a5cd2d94cfceb9b7e728) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Add audio element for playing audio files and showing information about the audio file. diff --git a/packages/element-audio/README.md b/packages/element-audio/README.md deleted file mode 100644 index 8a6d4766..00000000 --- a/packages/element-audio/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# @hyperbook/element-audio - -## Installation - -```sh -yarn add @hyperbook/element-audio -# or -npm i @hyperbook/element-audio -``` diff --git a/packages/element-audio/package.json b/packages/element-audio/package.json deleted file mode 100644 index 85aedd12..00000000 --- a/packages/element-audio/package.json +++ /dev/null @@ -1,55 +0,0 @@ -{ - "name": "@hyperbook/element-audio", - "version": "0.2.3", - "author": "Mike Barkmin", - "homepage": "https://github.com/openpatch/hyperbook#readme", - "license": "MIT", - "type": "module", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "sideEffects": false, - "exports": { - ".": "./dist/index.js", - "./index.css": "./dist/index.css" - }, - "files": [ - "dist" - ], - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/element-audio" - }, - "bugs": { - "url": "https://github.com/openpatch/hyperbook/issues" - }, - "scripts": { - "version": "pnpm build", - "lint": "tsc --noEmit", - "build": "rimraf dist && pnpm build:pkg && pnpm build:types", - "build:pkg": "node ../../scripts/build.mjs", - "build:types": "tsc --project tsconfig.build.json --declaration --emitDeclarationOnly" - }, - "dependencies": { - "@hyperbook/provider": "workspace:*", - "@hyperbook/store": "workspace:*", - "wavesurfer.js": "^7.8.6" - }, - "peerDependencies": { - "react": "18.x", - "react-dom": "18.x", - "react-redux": "9.x" - }, - "devDependencies": { - "@reduxjs/toolkit": "2.2.5", - "@types/react": "18.3.2", - "@types/react-dom": "18.3.0", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-redux": "9.1.2", - "vitest": "^1.6.0" - } -} diff --git a/packages/element-audio/src/index.css b/packages/element-audio/src/index.css deleted file mode 100644 index 7613a436..00000000 --- a/packages/element-audio/src/index.css +++ /dev/null @@ -1,53 +0,0 @@ -.element-audio { - margin-bottom: 16px; -} - -.element-audio .information { - margin-top: 4px; - text-align: center; - font-style: italic; -} - -.element-audio .player .thumbnail { - width: 64px; - height: 64px; - background-size: cover; - background-position: center; - border-right: 1px solid; - border-right-color: var(--color-nav-border); -} - -.element-audio .player .thumbnail.right { - border-right: none; - border-left: 1px solid; - border-left-color: var(--color-nav-border); -} - -.element-audio .player { - display: flex; - overflow: hidden; - align-items: center; - justify-content: center; - background-color: var(--color-nav); - border-radius: 8px; - border-style: solid; - border-width: 1px; - border-color: var(--color-nav-border); -} - -.element-audio .player .wave { - flex: 1; -} - -.element-audio .player .play { - width: 64px; - height: 64px; - display: flex; - border: none; - color: var(--color-text); - background: none; - justify-content: center; - align-items: center; - font-size: 32px; - padding: 0; -} diff --git a/packages/element-audio/src/index.tsx b/packages/element-audio/src/index.tsx deleted file mode 100644 index aa7894ac..00000000 --- a/packages/element-audio/src/index.tsx +++ /dev/null @@ -1,152 +0,0 @@ -import { FC, useEffect, useRef, useState } from "react"; -import { createSlice } from "@hyperbook/store"; -import type { Slice } from "@reduxjs/toolkit"; -import { useMakeUrl } from "@hyperbook/provider"; -import type Wavesurfer from "wavesurfer.js"; -import PlayIcon from "./play"; -import PauseIcon from "./pause"; -import "./index.css"; - -type DirectiveAudioProps = { - src: string; - title?: string; - author?: string; - thumbnail?: string; - position?: "left" | "right"; -}; - -function secondsToTimestamp(seconds: number) { - seconds = Math.floor(seconds); - var h = Math.floor(seconds / 3600); - var m = Math.floor((seconds - h * 3600) / 60); - var s = seconds - h * 3600 - m * 60; - - let th = h < 10 ? "0" + h : h; - let tm = m < 10 ? "0" + m : m; - let ts = s < 10 ? "0" + s : s; - if (h > 0) { - return th + ":" + tm + ":" + ts; - } - - return tm + ":" + ts; -} - -const DirectiveAudio: FC = ({ - src, - title, - thumbnail, - author, - position = "left", -}) => { - const makeUrl = useMakeUrl(); - src = makeUrl(src, "public"); - thumbnail = makeUrl(thumbnail, "public"); - - const containerRef = useRef(null); - const wavesurferRef = useRef(); - const [isPlaying, setIsPlaying] = useState(false); - const [duration, setDuration] = useState(0); - const [currentTime, setCurrentTime] = useState(0); - - useEffect(() => { - import("wavesurfer.js").then((wavesurfer) => { - if (containerRef.current) { - const ws = wavesurfer.default.create({ - container: containerRef.current, - cursorWidth: 4, - barWidth: 4, - barGap: 5, - barRadius: 2, - height: 64, - }); - ws.load(src); - ws.on("ready", () => { - wavesurferRef.current = ws; - setDuration(ws.getDuration()); - }); - - ws.on("audioprocess", () => { - setCurrentTime(Math.floor(ws.getCurrentTime())); - }); - - ws.on("pause", () => { - setIsPlaying(false); - }); - - ws.on("finish", () => { - setIsPlaying(false); - }); - - ws.on("play", () => { - setIsPlaying(true); - }); - - ws.on; - } - }); - - return () => { - wavesurferRef.current?.destroy(); - }; - }, [src]); - - const togglePlayPause = () => { - if (wavesurferRef.current) { - wavesurferRef.current.playPause(); - setIsPlaying(wavesurferRef.current.isPlaying()); - } - }; - - return ( -
-
- {position === "left" && thumbnail && ( -
- )} - {position === "left" && ( - - )} -
- {position === "right" && ( - - )} - {position === "right" && thumbnail && ( -
- )} -
-
- {title && {title}}{" "} - {title && author && -}{" "} - {author && {author}}{" "} - - {secondsToTimestamp(currentTime)}/{secondsToTimestamp(duration)} - -
-
- ); -}; - -type ElementAudioState = {}; - -const initialState: ElementAudioState = {}; - -const sliceAudio = createSlice({ - name: "element.audio", - initialState, - reducers: {}, -}); - -export default { - directives: { audio: DirectiveAudio }, - slice: sliceAudio as Slice, -}; diff --git a/packages/element-audio/src/pause.tsx b/packages/element-audio/src/pause.tsx deleted file mode 100644 index 3d4502c0..00000000 --- a/packages/element-audio/src/pause.tsx +++ /dev/null @@ -1,15 +0,0 @@ -import { SVGProps } from "react"; - -const SvgComponent = (props: SVGProps) => ( - - - -); -export default SvgComponent; diff --git a/packages/element-audio/src/play.tsx b/packages/element-audio/src/play.tsx deleted file mode 100644 index ea112328..00000000 --- a/packages/element-audio/src/play.tsx +++ /dev/null @@ -1,15 +0,0 @@ -import { SVGProps } from "react"; - -const SvgComponent = (props: SVGProps) => ( - - - -); -export default SvgComponent; diff --git a/packages/element-audio/tsconfig.build.json b/packages/element-audio/tsconfig.build.json deleted file mode 100644 index e8415085..00000000 --- a/packages/element-audio/tsconfig.build.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["src", "../../types"], - "compilerOptions": { - "rootDir": "src", - "declarationDir": "dist" - } -} diff --git a/packages/element-audio/tsconfig.json b/packages/element-audio/tsconfig.json deleted file mode 100644 index f068abe3..00000000 --- a/packages/element-audio/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "include": ["src", "../../types", "tests"] -} diff --git a/packages/element-audio/vite.config.ts b/packages/element-audio/vite.config.ts deleted file mode 100644 index 8fb6f2dc..00000000 --- a/packages/element-audio/vite.config.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineConfig } from "vitest/config"; - -export default defineConfig({}); diff --git a/packages/element-bitflow/CHANGELOG.md b/packages/element-bitflow/CHANGELOG.md deleted file mode 100644 index a3729ad7..00000000 --- a/packages/element-bitflow/CHANGELOG.md +++ /dev/null @@ -1,162 +0,0 @@ -# @hyperbook/element-bitflow - -## 0.2.3 - -### Patch Changes - -- [`2bfe682`](https://github.com/openpatch/hyperbook/commit/2bfe6828e578399c405bf4fc52fb1845efe2fb6a) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update packages - -## 0.2.2 - -### Patch Changes - -- [`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23)]: - - @hyperbook/provider@0.4.2 - - @hyperbook/store@0.2.1 - -## 0.2.1 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.4.1 - -## 0.2.0 - -### Minor Changes - -- [`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Move to pure ESM packages - -### Patch Changes - -- Updated dependencies [[`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de)]: - - @hyperbook/provider@0.4.0 - - @hyperbook/store@0.2.0 - -## 0.1.15 - -### Patch Changes - -- Updated dependencies [[`902c0b3`](https://github.com/openpatch/hyperbook/commit/902c0b30a0aa97984350cfd58ad88d38ef7b4cd6)]: - - @hyperbook/provider@0.3.0 - -## 0.1.14 - -### Patch Changes - -- [`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - fix data not defined - -- Updated dependencies [[`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1)]: - - @hyperbook/provider@0.2.5 - - @hyperbook/store@0.1.5 - -## 0.1.13 - -### Patch Changes - -- [`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update packages - -- Updated dependencies [[`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e)]: - - @hyperbook/provider@0.2.4 - - @hyperbook/store@0.1.4 - -## 0.1.12 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.3 - -## 0.1.11 - -### Patch Changes - -- [`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37)]: - - @hyperbook/provider@0.2.2 - - @hyperbook/store@0.1.3 - -## 0.1.10 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.1 - -## 0.1.9 - -### Patch Changes - -- Updated dependencies [[`8d53899`](https://github.com/openpatch/hyperbook/commit/8d538999fc924f7b3e3115416cba4978c9589b68)]: - - @hyperbook/provider@0.2.0 - -## 0.1.8 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.7 - -## 0.1.7 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.6 - -## 0.1.6 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.5 - -## 0.1.5 - -### Patch Changes - -- Updated dependencies [[`cedb551`](https://github.com/openpatch/hyperbook/commit/cedb55191fd025b5a214df406a53cbab5d1b1bc1)]: - - @hyperbook/provider@0.1.4 - -## 0.1.4 - -### Patch Changes - -- Updated dependencies [[`c3e747a`](https://github.com/openpatch/hyperbook/commit/c3e747ab7b95c3e526b3800b169aa8f505f9b9a2)]: - - @hyperbook/provider@0.1.3 - -## 0.1.3 - -### Patch Changes - -- [`2459c34`](https://github.com/openpatch/hyperbook/commit/2459c343e89f890c10132cfb36bb466b5800133d) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - use default import to be compatible with commonjs - -## 0.1.2 - -### Patch Changes - -- Updated dependencies [[`2c34554`](https://github.com/openpatch/hyperbook/commit/2c34554f64359fb995190b1465daddfa3e0101c0)]: - - @hyperbook/provider@0.1.2 - -## 0.1.1 - -### Patch Changes - -- [`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Force package update due to failed pipeline - -- Updated dependencies [[`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00)]: - - @hyperbook/provider@0.1.1 - -## 0.1.0 - -### Minor Changes - -- [`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Extract feature in separate packages. This allows for easier development of new templates and allows enables to make changes more transparent. - -### Patch Changes - -- Updated dependencies [[`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8)]: - - @hyperbook/provider@0.1.0 diff --git a/packages/element-bitflow/README.md b/packages/element-bitflow/README.md deleted file mode 100644 index 4d286e4a..00000000 --- a/packages/element-bitflow/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# @hyperbook/element-bitflow - -## Installation - -```sh -yarn add @hyperbook/element-bitflow -# or -npm i @hyperbook/element-bitflow -``` diff --git a/packages/element-bitflow/package.json b/packages/element-bitflow/package.json deleted file mode 100644 index eaa53e06..00000000 --- a/packages/element-bitflow/package.json +++ /dev/null @@ -1,69 +0,0 @@ -{ - "name": "@hyperbook/element-bitflow", - "version": "0.2.3", - "author": "Mike Barkmin", - "homepage": "https://github.com/openpatch/hyperbook#readme", - "license": "MIT", - "type": "module", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "sideEffects": false, - "exports": { - ".": "./dist/index.js", - "./index.css": "./dist/index.css" - }, - "files": [ - "dist" - ], - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/element-bitflow" - }, - "bugs": { - "url": "https://github.com/openpatch/hyperbook/issues" - }, - "scripts": { - "version": "pnpm build", - "lint": "tsc --noEmit", - "build": "rimraf dist && pnpm build:pkg && pnpm build:types", - "build:pkg": "node ../../scripts/build.mjs", - "build:types": "tsc --project tsconfig.build.json --declaration --emitDeclarationOnly" - }, - "dependencies": { - "@babel/core": "7.25.7", - "@bitflow/bits": "0.2.1", - "@bitflow/core": "0.6.0", - "@bitflow/do-local": "0.5.1", - "@bitflow/provider": "0.5.0", - "@bitflow/shell": "0.7.1", - "@emotion/cache": "11.13.1", - "@emotion/core": "11.0.0", - "@emotion/react": "11.13.3", - "@emotion/styled": "11.13.0", - "@hyperbook/provider": "workspace:*", - "@hyperbook/store": "workspace:*", - "@openpatch/patches": "6.0.1", - "@vocab/core": "1.6.2", - "@vocab/react": "1.1.11", - "@vocab/types": "1.3.6", - "react-hook-form": "7.53.0", - "zod": "3.23.8" - }, - "peerDependencies": { - "react": "18.x", - "react-dom": "18.x", - "react-redux": "9.x" - }, - "devDependencies": { - "@reduxjs/toolkit": "2.2.5", - "@types/react": "18.3.2", - "@types/react-dom": "18.3.0", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-redux": "9.1.2" - } -} diff --git a/packages/element-bitflow/src/Flow.tsx b/packages/element-bitflow/src/Flow.tsx deleted file mode 100644 index 4a256bd8..00000000 --- a/packages/element-bitflow/src/Flow.tsx +++ /dev/null @@ -1,54 +0,0 @@ -import { PatchesProvider } from "@openpatch/patches"; -import { BitflowProvider, useFlow } from "@bitflow/provider"; -import { Flow as IFlow } from "@bitflow/core"; -import { bits } from "@bitflow/bits"; -import { DoLocal } from "@bitflow/do-local"; -import { FC } from "react"; -import { useConfig, useMakeUrl } from "@hyperbook/provider"; -import { ZodError } from "zod"; - -const Flow: FC<{ flow: IFlow }> = ({ flow }) => { - const { language } = useConfig(); - return ( - - - - - - ); -}; - -const FlowInner: FC<{ flow: IFlow }> = ({ flow }) => { - const { FlowSchema } = useFlow(); - const makeUrl = useMakeUrl(); - - try { - FlowSchema.parse(flow); - } catch (e) { - if (e instanceof ZodError) { - return ( -

- {e.issues - .map((i) => i.code + ": " + i.path.join(".") + " " + i.message) - .join("\n")} -

- ); - } - return

Error

; - } - return ( - - ); -}; - -export default Flow; diff --git a/packages/element-bitflow/src/Task.tsx b/packages/element-bitflow/src/Task.tsx deleted file mode 100644 index 9c38ad81..00000000 --- a/packages/element-bitflow/src/Task.tsx +++ /dev/null @@ -1,83 +0,0 @@ -// @ts-nocheck -import { PatchesProvider } from "@openpatch/patches"; -import { BitflowProvider, useFlow } from "@bitflow/provider"; -import { FlowTaskNode } from "@bitflow/core"; -import { bits } from "@bitflow/bits"; -import { FC, useState } from "react"; -import { TaskShell } from "@bitflow/shell"; -import { ZodError } from "zod"; -import { useConfig, useMakeUrl } from "@hyperbook/provider"; - -const Task: FC<{ task: FlowTaskNode["data"] }> = ({ task }) => { - const { language } = useConfig(); - return ( - - - - - - ); -}; - -export const TaskInner: FC<{ task: FlowTaskNode["data"] }> = ({ task }) => { - const makeUrl = useMakeUrl(); - const bit = bits.task[task.subtype]; - const [result, setResult] = useState(); - const [key, setKey] = useState(new Date()); - const { FlowNodeSchema } = useFlow(); - - try { - FlowNodeSchema.parse({ - id: "", - position: { - x: 0, - y: 0, - }, - type: "task", - data: task, - }); - } catch (e) { - if (e instanceof ZodError) { - return ( -

- {e.issues - .map((i) => i.code + ": " + i.path.join(".") + " " + i.message) - .join("\n")} -

- ); - } - return

"Error"

; - } - - const evaluate = async (answer: any) => { - const result = await bit.evaluate({ answer, task }); - setResult(result); - - return result; - }; - - const retry = async () => { - setResult(null); - setKey(new Date()); - }; - - return ( - - ); -}; - -export default Task; diff --git a/packages/element-bitflow/src/index.tsx b/packages/element-bitflow/src/index.tsx deleted file mode 100644 index d68b4136..00000000 --- a/packages/element-bitflow/src/index.tsx +++ /dev/null @@ -1,104 +0,0 @@ -import { Flow as IFlow } from "@bitflow/core"; -import { FC, lazy, Suspense, useEffect, useState } from "react"; -import type { Slice } from "@reduxjs/toolkit"; -import { createSlice } from "@hyperbook/store"; -import { useFile, useMakeUrl } from "@hyperbook/provider"; -import "./index.css"; - -type DirectiveFlowProps = { - src: string; - height?: number; -}; - -const Flow = lazy(() => import("./Flow")); -const Task = lazy(() => import("./Task")); - -const Loading = () => { - return
...
; -}; - -const DirectiveFlow: FC = ({ src, height = 400 }) => { - const makeUrl = useMakeUrl(); - const [loadFile] = useFile(); - const [flow, setFlow] = useState(); - const [err, setErr] = useState(); - - if (!src) { - setErr('You need to provide a src like so: ::flow{src="/flow.json"}'); - } - - useEffect(() => { - const url = makeUrl(src, "public"); - loadFile(url) - .then((r) => JSON.parse(r)) - .then(setFlow) - .catch(() => { - setErr(`Could not find a flow at ${src}. Please check the src.`); - }); - }, [src]); - - if (err) { - return
{err}
; - } - - return ( -
- }> - {flow ? : } - -
- ); -}; - -type DirectiveTaskProps = { - src: string; - height?: number; -}; - -const DirectiveTask: FC = ({ src, height = 400 }) => { - const makeUrl = useMakeUrl(); - const [loadFile] = useFile(); - const [task, setTask] = useState(); - const [err, setErr] = useState(); - - if (!src) { - setErr('You need to provide a src like so: ::task{src="/task.json"}'); - } - - useEffect(() => { - const url = makeUrl(src, "public"); - loadFile(url) - .then((r) => JSON.parse(r)) - .then(setTask) - .catch(() => { - setErr(`Could not find a task at ${src}. Please check the src.`); - }); - }, [src]); - - if (err) { - return
{err}
; - } - - return ( -
- }> - {task ? : } - -
- ); -}; - -type ElementBitflowState = {}; - -const initialState: ElementBitflowState = {}; - -const sliceBitflow = createSlice({ - name: "element.bitflow", - initialState, - reducers: {}, -}); - -export default { - directives: { flow: DirectiveFlow, task: DirectiveTask }, - slice: sliceBitflow as Slice, -}; diff --git a/packages/element-bitflow/tsconfig.build.json b/packages/element-bitflow/tsconfig.build.json deleted file mode 100644 index e8415085..00000000 --- a/packages/element-bitflow/tsconfig.build.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["src", "../../types"], - "compilerOptions": { - "rootDir": "src", - "declarationDir": "dist" - } -} diff --git a/packages/element-bitflow/tsconfig.json b/packages/element-bitflow/tsconfig.json deleted file mode 100644 index bba93ef2..00000000 --- a/packages/element-bitflow/tsconfig.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "include": ["src", "../../types", "tests"], - "compilerOptions": { - "jsxImportSource": "@emotion/react", - "jsx": "react-jsx" - } -} diff --git a/packages/element-bookmarks/CHANGELOG.md b/packages/element-bookmarks/CHANGELOG.md deleted file mode 100644 index 39ffade4..00000000 --- a/packages/element-bookmarks/CHANGELOG.md +++ /dev/null @@ -1,155 +0,0 @@ -# @hyperbook/element-bookmarks - -## 0.3.3 - -### Patch Changes - -- [`e9359e1`](https://github.com/openpatch/hyperbook/commit/e9359e1e8d51be1d2a71d76e74940e0eb844a74c) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Fix peer dependencies - -## 0.3.2 - -### Patch Changes - -- [`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23)]: - - @hyperbook/provider@0.4.2 - -## 0.3.1 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.4.1 - -## 0.3.0 - -### Minor Changes - -- [`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Move to pure ESM packages - -### Patch Changes - -- Updated dependencies [[`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de)]: - - @hyperbook/provider@0.4.0 - -## 0.2.9 - -### Patch Changes - -- Updated dependencies [[`902c0b3`](https://github.com/openpatch/hyperbook/commit/902c0b30a0aa97984350cfd58ad88d38ef7b4cd6)]: - - @hyperbook/provider@0.3.0 - -## 0.2.8 - -### Patch Changes - -- [`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - fix data not defined - -- Updated dependencies [[`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1)]: - - @hyperbook/provider@0.2.5 - -## 0.2.7 - -### Patch Changes - -- [`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update packages - -- Updated dependencies [[`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e)]: - - @hyperbook/provider@0.2.4 - -## 0.2.6 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.3 - -## 0.2.5 - -### Patch Changes - -- [`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37)]: - - @hyperbook/provider@0.2.2 - -## 0.2.4 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.1 - -## 0.2.3 - -### Patch Changes - -- Updated dependencies [[`8d53899`](https://github.com/openpatch/hyperbook/commit/8d538999fc924f7b3e3115416cba4978c9589b68)]: - - @hyperbook/provider@0.2.0 - -## 0.2.2 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.7 - -## 0.2.1 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.6 - -## 0.2.0 - -### Minor Changes - -- [#326](https://github.com/openpatch/hyperbook/pull/326) [`9472583`](https://github.com/openpatch/hyperbook/commit/947258359e33a39362c070f6c7128f214a79c4c5) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Add configuration options to the hyperbook.json for the element bookmarks and excalidraw. - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.5 - -## 0.1.4 - -### Patch Changes - -- Updated dependencies [[`cedb551`](https://github.com/openpatch/hyperbook/commit/cedb55191fd025b5a214df406a53cbab5d1b1bc1)]: - - @hyperbook/provider@0.1.4 - -## 0.1.3 - -### Patch Changes - -- Updated dependencies [[`c3e747a`](https://github.com/openpatch/hyperbook/commit/c3e747ab7b95c3e526b3800b169aa8f505f9b9a2)]: - - @hyperbook/provider@0.1.3 - -## 0.1.2 - -### Patch Changes - -- Updated dependencies [[`2c34554`](https://github.com/openpatch/hyperbook/commit/2c34554f64359fb995190b1465daddfa3e0101c0)]: - - @hyperbook/provider@0.1.2 - -## 0.1.1 - -### Patch Changes - -- [`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Force package update due to failed pipeline - -- Updated dependencies [[`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00)]: - - @hyperbook/provider@0.1.1 - -## 0.1.0 - -### Minor Changes - -- [`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Extract feature in separate packages. This allows for easier development of new templates and allows enables to make changes more transparent. - -### Patch Changes - -- Updated dependencies [[`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8)]: - - @hyperbook/provider@0.1.0 diff --git a/packages/element-bookmarks/README.md b/packages/element-bookmarks/README.md deleted file mode 100644 index 8bd07035..00000000 --- a/packages/element-bookmarks/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# @hyperbook/element-bookmarks - -## Installation - -```sh -yarn add @hyperbook/element-bookmarks -# or -npm i @hyperbook/element-bookmarks -``` diff --git a/packages/element-bookmarks/package.json b/packages/element-bookmarks/package.json deleted file mode 100644 index 3422cd29..00000000 --- a/packages/element-bookmarks/package.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "name": "@hyperbook/element-bookmarks", - "version": "0.3.3", - "author": "Mike Barkmin", - "homepage": "https://github.com/openpatch/hyperbook#readme", - "license": "MIT", - "type": "module", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "sideEffects": false, - "exports": { - ".": "./dist/index.js", - "./index.css": "./dist/index.css" - }, - "files": [ - "dist" - ], - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/element-bookmarks" - }, - "bugs": { - "url": "https://github.com/openpatch/hyperbook/issues" - }, - "scripts": { - "version": "pnpm build", - "lint": "tsc --noEmit", - "build": "rimraf dist && pnpm build:pkg && pnpm build:types", - "build:pkg": "node ../../scripts/build.mjs", - "build:types": "tsc --project tsconfig.build.json --declaration --emitDeclarationOnly" - }, - "dependencies": { - "@hyperbook/provider": "workspace:*" - }, - "peerDependencies": { - "@reduxjs/toolkit": "2.x", - "react": "18.x", - "react-dom": "18.x", - "react-redux": "9.x" - }, - "devDependencies": { - "@types/react": "18.3.2", - "@types/react-dom": "18.3.0", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-redux": "9.1.2", - "@reduxjs/toolkit": "2.2.5" - } -} diff --git a/packages/element-bookmarks/src/index.tsx b/packages/element-bookmarks/src/index.tsx deleted file mode 100644 index 2de445d0..00000000 --- a/packages/element-bookmarks/src/index.tsx +++ /dev/null @@ -1,31 +0,0 @@ -import { FC, ReactNode } from "react"; -import { useBookmarks, useConfig, useLink } from "@hyperbook/provider"; -import "./index.css"; - -type DirectiveBookmarksProps = { - children?: ReactNode; -}; - -const DirectiveBookmarks: FC = ({}) => { - const Link = useLink(); - const bookmarks = useBookmarks(); - const config = useConfig(); - const bookmarksConfig = config?.elements?.bookmarks; - if (bookmarksConfig === false) { - return null; - } - - return ( -
    - {bookmarks.map((bookmark) => ( -
  • - {bookmark.label} -
  • - ))} -
- ); -}; - -export default { - directives: { bookmarks: DirectiveBookmarks }, -}; diff --git a/packages/element-bookmarks/tsconfig.build.json b/packages/element-bookmarks/tsconfig.build.json deleted file mode 100644 index e8415085..00000000 --- a/packages/element-bookmarks/tsconfig.build.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["src", "../../types"], - "compilerOptions": { - "rootDir": "src", - "declarationDir": "dist" - } -} diff --git a/packages/element-bookmarks/tsconfig.json b/packages/element-bookmarks/tsconfig.json deleted file mode 100644 index f068abe3..00000000 --- a/packages/element-bookmarks/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "include": ["src", "../../types", "tests"] -} diff --git a/packages/element-collapsible/CHANGELOG.md b/packages/element-collapsible/CHANGELOG.md deleted file mode 100644 index 418fb3ca..00000000 --- a/packages/element-collapsible/CHANGELOG.md +++ /dev/null @@ -1,171 +0,0 @@ -# @hyperbook/element-collapsible - -## 0.4.2 - -### Patch Changes - -- [`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23)]: - - @hyperbook/provider@0.4.2 - - @hyperbook/store@0.2.1 - -## 0.4.1 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.4.1 - -## 0.4.0 - -### Minor Changes - -- [`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Move to pure ESM packages - -### Patch Changes - -- Updated dependencies [[`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de)]: - - @hyperbook/provider@0.4.0 - - @hyperbook/store@0.2.0 - -## 0.3.5 - -### Patch Changes - -- Updated dependencies [[`902c0b3`](https://github.com/openpatch/hyperbook/commit/902c0b30a0aa97984350cfd58ad88d38ef7b4cd6)]: - - @hyperbook/provider@0.3.0 - -## 0.3.4 - -### Patch Changes - -- [`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - fix data not defined - -- Updated dependencies [[`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1)]: - - @hyperbook/provider@0.2.5 - - @hyperbook/store@0.1.5 - -## 0.3.3 - -### Patch Changes - -- [`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update packages - -- Updated dependencies [[`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e)]: - - @hyperbook/provider@0.2.4 - - @hyperbook/store@0.1.4 - -## 0.3.2 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.3 - -## 0.3.1 - -### Patch Changes - -- [`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37)]: - - @hyperbook/provider@0.2.2 - - @hyperbook/store@0.1.3 - -## 0.3.0 - -### Minor Changes - -- [`ac262ca`](https://github.com/openpatch/hyperbook/commit/ac262ca4a60b313dafbce33e5c0d753fd504f012) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Upgrade react-collapsed to prerelease 4.0.0. This prerelease adds support for React 18. So the warning about unmet peer-dependencies should disappear. - -## 0.2.5 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.1 - -## 0.2.4 - -### Patch Changes - -- Updated dependencies [[`8d53899`](https://github.com/openpatch/hyperbook/commit/8d538999fc924f7b3e3115416cba4978c9589b68)]: - - @hyperbook/provider@0.2.0 - -## 0.2.3 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.7 - -## 0.2.2 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.6 - -## 0.2.1 - -### Patch Changes - -- [`69e76ae`](https://github.com/openpatch/hyperbook/commit/69e76aec46f3b83ecd4dc9e7e5fceb0fe7fb8148) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Fix collapsibles not syncing when using the same id - -## 0.2.0 - -### Minor Changes - -- [#341](https://github.com/openpatch/hyperbook/pull/341) [`b1d976c`](https://github.com/openpatch/hyperbook/commit/b1d976cfcad7d9be760c595d23becc48187d641e) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - The Element Collapsible now has a little animation when opening and closing. - -## 0.1.5 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.5 - -## 0.1.4 - -### Patch Changes - -- Updated dependencies [[`cedb551`](https://github.com/openpatch/hyperbook/commit/cedb55191fd025b5a214df406a53cbab5d1b1bc1)]: - - @hyperbook/provider@0.1.4 - -## 0.1.3 - -### Patch Changes - -- Updated dependencies [[`c3e747a`](https://github.com/openpatch/hyperbook/commit/c3e747ab7b95c3e526b3800b169aa8f505f9b9a2)]: - - @hyperbook/provider@0.1.3 - -## 0.1.2 - -### Patch Changes - -- [`2c34554`](https://github.com/openpatch/hyperbook/commit/2c34554f64359fb995190b1465daddfa3e0101c0) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - try to overcome issues with @redux/toolkit not supporting esm modules the way nextjs likes it. - -- Updated dependencies [[`2c34554`](https://github.com/openpatch/hyperbook/commit/2c34554f64359fb995190b1465daddfa3e0101c0)]: - - @hyperbook/provider@0.1.2 - - @hyperbook/store@0.1.2 - -## 0.1.1 - -### Patch Changes - -- [`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Force package update due to failed pipeline - -- Updated dependencies [[`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00)]: - - @hyperbook/provider@0.1.1 - -## 0.1.0 - -### Minor Changes - -- [`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Extract feature in separate packages. This allows for easier development of new templates and allows enables to make changes more transparent. - -### Patch Changes - -- Updated dependencies [[`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8)]: - - @hyperbook/provider@0.1.0 diff --git a/packages/element-collapsible/README.md b/packages/element-collapsible/README.md deleted file mode 100644 index 37afc7e5..00000000 --- a/packages/element-collapsible/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# @hyperbook/element-collapsible - -## Installation - -```sh -yarn add @hyperbook/element-collapsible -# or -npm i @hyperbook/element-collapsible -``` diff --git a/packages/element-collapsible/package.json b/packages/element-collapsible/package.json deleted file mode 100644 index a0c86752..00000000 --- a/packages/element-collapsible/package.json +++ /dev/null @@ -1,56 +0,0 @@ -{ - "name": "@hyperbook/element-collapsible", - "version": "0.4.2", - "author": "Mike Barkmin", - "homepage": "https://github.com/openpatch/hyperbook#readme", - "license": "MIT", - "type": "module", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "sideEffects": false, - "exports": { - ".": "./dist/index.js", - "./index.css": "./dist/index.css" - }, - "files": [ - "dist" - ], - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/element-collapsible" - }, - "bugs": { - "url": "https://github.com/openpatch/hyperbook/issues" - }, - "scripts": { - "version": "pnpm build", - "lint": "tsc --noEmit", - "build": "rimraf dist && pnpm build:pkg && pnpm build:types", - "build:pkg": "node ../../scripts/build.mjs", - "build:types": "tsc --project tsconfig.build.json --declaration --emitDeclarationOnly" - }, - "dependencies": { - "@hyperbook/provider": "workspace:*", - "@hyperbook/store": "workspace:*", - "object-hash": "3.0.0", - "react-collapsed": "4.1.2" - }, - "peerDependencies": { - "react": "18.x", - "react-dom": "18.x", - "react-redux": "9.x" - }, - "devDependencies": { - "@reduxjs/toolkit": "2.2.5", - "@types/object-hash": "3.0.6", - "@types/react": "18.3.2", - "@types/react-dom": "18.3.0", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-redux": "9.1.2" - } -} diff --git a/packages/element-collapsible/src/index.tsx b/packages/element-collapsible/src/index.tsx deleted file mode 100644 index 10e52402..00000000 --- a/packages/element-collapsible/src/index.tsx +++ /dev/null @@ -1,89 +0,0 @@ -import { FC, ReactNode } from "react"; -import { useDispatch, useSelector } from "react-redux"; -import { createSlice } from "@hyperbook/store"; -import type { PayloadAction } from "@reduxjs/toolkit"; -import { useActivePageId } from "@hyperbook/provider"; -import "./index.css"; -import { useCollapse } from "react-collapsed"; - -type DirectiveCollapsibleProps = { - children?: ReactNode; - id: string; - title: string; -}; - -const DirectiveCollapsible: FC = ({ - children, - id, - title, -}) => { - if (!id) { - id = title; - } - - const [activePageId] = useActivePageId(); - id = activePageId + "." + id; - - let active = useSelector(selectActive(id)); - const { getCollapseProps, getToggleProps, isExpanded } = useCollapse({ - isExpanded: active ? true : false, - }); - - const dispatch = useDispatch(); - - const toggleActive = () => { - dispatch(sliceCollapsible.actions.toggleActive({ id })); - }; - - return ( - <> - -
-
{children}
-
- - ); -}; - -type ElementCollapsibleState = Record; - -const initialState: ElementCollapsibleState = {}; - -const sliceCollapsible = createSlice({ - name: "element.collapsible", - initialState, - reducers: { - toggleActive: (state, action: PayloadAction<{ id: string }>) => { - state[action.payload.id] = !(state[action.payload.id] || false); - }, - }, -}); - -const selectActive = - (tab: string) => - (state: { "element.collapsible": ElementCollapsibleState }) => { - return state[sliceCollapsible.name][tab]; - }; - -export default { - directives: { collapsible: DirectiveCollapsible }, - slice: sliceCollapsible, -}; diff --git a/packages/element-collapsible/tsconfig.build.json b/packages/element-collapsible/tsconfig.build.json deleted file mode 100644 index e8415085..00000000 --- a/packages/element-collapsible/tsconfig.build.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["src", "../../types"], - "compilerOptions": { - "rootDir": "src", - "declarationDir": "dist" - } -} diff --git a/packages/element-collapsible/tsconfig.json b/packages/element-collapsible/tsconfig.json deleted file mode 100644 index f068abe3..00000000 --- a/packages/element-collapsible/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "include": ["src", "../../types", "tests"] -} diff --git a/packages/element-dl/CHANGELOG.md b/packages/element-dl/CHANGELOG.md deleted file mode 100644 index 91ad2d6e..00000000 --- a/packages/element-dl/CHANGELOG.md +++ /dev/null @@ -1,161 +0,0 @@ -# @hyperbook/element-download - -## 0.2.3 - -### Patch Changes - -- [`e9359e1`](https://github.com/openpatch/hyperbook/commit/e9359e1e8d51be1d2a71d76e74940e0eb844a74c) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Fix peer dependencies - -## 0.2.2 - -### Patch Changes - -- [`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23)]: - - @hyperbook/provider@0.4.2 - -## 0.2.1 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.4.1 - -## 0.2.0 - -### Minor Changes - -- [`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Move to pure ESM packages - -### Patch Changes - -- Updated dependencies [[`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de)]: - - @hyperbook/provider@0.4.0 - -## 0.1.15 - -### Patch Changes - -- Updated dependencies [[`902c0b3`](https://github.com/openpatch/hyperbook/commit/902c0b30a0aa97984350cfd58ad88d38ef7b4cd6)]: - - @hyperbook/provider@0.3.0 - -## 0.1.14 - -### Patch Changes - -- [`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - fix data not defined - -- Updated dependencies [[`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1)]: - - @hyperbook/provider@0.2.5 - -## 0.1.13 - -### Patch Changes - -- [`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update packages - -- Updated dependencies [[`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e)]: - - @hyperbook/provider@0.2.4 - -## 0.1.12 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.3 - -## 0.1.11 - -### Patch Changes - -- [`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37)]: - - @hyperbook/provider@0.2.2 - -## 0.1.10 - -### Patch Changes - -- [`f1d2219`](https://github.com/openpatch/hyperbook/commit/f1d2219791491e6ae7579503864b3795f5bf7dc9) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Add margin to download - -## 0.1.9 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.1 - -## 0.1.8 - -### Patch Changes - -- Updated dependencies [[`8d53899`](https://github.com/openpatch/hyperbook/commit/8d538999fc924f7b3e3115416cba4978c9589b68)]: - - @hyperbook/provider@0.2.0 - -## 0.1.7 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.7 - -## 0.1.6 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.6 - -## 0.1.5 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.5 - -## 0.1.4 - -### Patch Changes - -- Updated dependencies [[`cedb551`](https://github.com/openpatch/hyperbook/commit/cedb55191fd025b5a214df406a53cbab5d1b1bc1)]: - - @hyperbook/provider@0.1.4 - -## 0.1.3 - -### Patch Changes - -- Updated dependencies [[`c3e747a`](https://github.com/openpatch/hyperbook/commit/c3e747ab7b95c3e526b3800b169aa8f505f9b9a2)]: - - @hyperbook/provider@0.1.3 - -## 0.1.2 - -### Patch Changes - -- Updated dependencies [[`2c34554`](https://github.com/openpatch/hyperbook/commit/2c34554f64359fb995190b1465daddfa3e0101c0)]: - - @hyperbook/provider@0.1.2 - -## 0.1.1 - -### Patch Changes - -- Updated dependencies [[`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00)]: - - @hyperbook/provider@0.1.1 - -## 0.1.0 - -### Minor Changes - -- [`09af0c5`](https://github.com/openpatch/hyperbook/commit/09af0c5bee8fc95f04138a660e4a7c2e0e963f17) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - rename download element to dl, since npm does not allow download in the package name. - -## 0.1.0 - -### Minor Changes - -- [`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Extract feature in separate packages. This allows for easier development of new templates and allows enables to make changes more transparent. - -### Patch Changes - -- Updated dependencies [[`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8)]: - - @hyperbook/provider@0.1.0 diff --git a/packages/element-dl/README.md b/packages/element-dl/README.md deleted file mode 100644 index dfde6b5d..00000000 --- a/packages/element-dl/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# @hyperbook/element-download - -## Installation - -```sh -yarn add @hyperbook/element-download -# or -npm i @hyperbook/element-download -``` diff --git a/packages/element-dl/package.json b/packages/element-dl/package.json deleted file mode 100644 index 70cc822d..00000000 --- a/packages/element-dl/package.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "name": "@hyperbook/element-dl", - "version": "0.2.3", - "author": "Mike Barkmin", - "homepage": "https://github.com/openpatch/hyperbook#readme", - "license": "MIT", - "type": "module", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "sideEffects": false, - "exports": { - ".": "./dist/index.js", - "./index.css": "./dist/index.css" - }, - "files": [ - "dist" - ], - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/element-dl" - }, - "bugs": { - "url": "https://github.com/openpatch/hyperbook/issues" - }, - "scripts": { - "version": "pnpm build", - "lint": "tsc --noEmit", - "build": "rimraf dist && pnpm build:pkg && pnpm build:types", - "build:pkg": "node ../../scripts/build.mjs", - "build:types": "tsc --project tsconfig.build.json --declaration --emitDeclarationOnly" - }, - "dependencies": { - "@hyperbook/provider": "workspace:*" - }, - "peerDependencies": { - "@reduxjs/toolkit": "2.x", - "react": "18.x", - "react-dom": "18.x", - "react-redux": "9.x" - }, - "devDependencies": { - "@types/react": "18.3.2", - "@types/react-dom": "18.3.0", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-redux": "9.1.2", - "@reduxjs/toolkit": "2.2.5" - } -} diff --git a/packages/element-dl/src/index.tsx b/packages/element-dl/src/index.tsx deleted file mode 100644 index dd5a013a..00000000 --- a/packages/element-dl/src/index.tsx +++ /dev/null @@ -1,59 +0,0 @@ -import { useMakeUrl } from "@hyperbook/provider"; -import { FC, ReactNode, useEffect, useState } from "react"; -import "./index.css"; - -type DirectiveDownloadProps = { - children?: ReactNode; - src: string; -}; - -const DirectiveDownload: FC = ({ children, src }) => { - const [isOnline, setIsOnline] = useState(true); - const makeUrl = useMakeUrl(); - - src = makeUrl(src, "public"); - - useEffect(() => { - let isCancelled = false; - fetch(src, { - method: "HEAD", - }).then((r) => { - if (!r.ok && !isCancelled) { - setIsOnline(false); - } - }); - - return () => { - isCancelled = true; - }; - }, []); - - return ( - - - - {children} {!isOnline && "(Offline)"} - - - ); -}; - -type DirectiveArchiveProps = { - name: string; - children: ReactNode; -}; - -const DirectiveArchive: FC = ({ name, children }) => { - return ( - - ); -}; - -export default { - directives: { download: DirectiveDownload, archive: DirectiveArchive }, -}; diff --git a/packages/element-dl/tsconfig.build.json b/packages/element-dl/tsconfig.build.json deleted file mode 100644 index e8415085..00000000 --- a/packages/element-dl/tsconfig.build.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["src", "../../types"], - "compilerOptions": { - "rootDir": "src", - "declarationDir": "dist" - } -} diff --git a/packages/element-dl/tsconfig.json b/packages/element-dl/tsconfig.json deleted file mode 100644 index f068abe3..00000000 --- a/packages/element-dl/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "include": ["src", "../../types", "tests"] -} diff --git a/packages/element-embed/CHANGELOG.md b/packages/element-embed/CHANGELOG.md deleted file mode 100644 index 014f2d70..00000000 --- a/packages/element-embed/CHANGELOG.md +++ /dev/null @@ -1,79 +0,0 @@ -# @hyperbook/element-embed - -## 0.2.2 - -### Patch Changes - -- [`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23)]: - - @hyperbook/provider@0.4.2 - - @hyperbook/store@0.2.1 - -## 0.2.1 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.4.1 - -## 0.2.0 - -### Minor Changes - -- [`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Move to pure ESM packages - -### Patch Changes - -- Updated dependencies [[`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de)]: - - @hyperbook/provider@0.4.0 - - @hyperbook/store@0.2.0 - -## 0.1.5 - -### Patch Changes - -- Updated dependencies [[`902c0b3`](https://github.com/openpatch/hyperbook/commit/902c0b30a0aa97984350cfd58ad88d38ef7b4cd6)]: - - @hyperbook/provider@0.3.0 - -## 0.1.4 - -### Patch Changes - -- [`fcc3033`](https://github.com/openpatch/hyperbook/commit/fcc30337f4ef68842e25b5a914de46af38d5e196) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - add visible border around embed elements - -## 0.1.3 - -### Patch Changes - -- [`a3496b4`](https://github.com/openpatch/hyperbook/commit/a3496b4676376f16697306869733a780f9d15a56) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - fix width and height having no defaults - -## 0.1.2 - -### Patch Changes - -- [`9977ab2`](https://github.com/openpatch/hyperbook/commit/9977ab26b3e75727acfc33e969ca70df544ad183) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - fix createSlice not found - -## 0.1.1 - -### Patch Changes - -- [`aa0d719`](https://github.com/openpatch/hyperbook/commit/aa0d7197aa78e7d42b2393d8850c6983c3681f07) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - fix width and height - -- [`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - fix data not defined - -- Updated dependencies [[`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1)]: - - @hyperbook/provider@0.2.5 - -## 0.1.0 - -### Minor Changes - -- [`f98c89e`](https://github.com/openpatch/hyperbook/commit/f98c89ed582a155d5b005ec72a04ae2619c35c47) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Add element embed. This elements allow embedding content like GeoGebra Applets, LearningApps etc. - -### Patch Changes - -- [`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update packages - -- Updated dependencies [[`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e)]: - - @hyperbook/provider@0.2.4 diff --git a/packages/element-embed/README.md b/packages/element-embed/README.md deleted file mode 100644 index 85f72891..00000000 --- a/packages/element-embed/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# @hyperbook/element-embed - -## Installation - -```sh -yarn add @hyperbook/element-embed -# or -npm i @hyperbook/element-embed -``` diff --git a/packages/element-embed/package.json b/packages/element-embed/package.json deleted file mode 100644 index f687e3b0..00000000 --- a/packages/element-embed/package.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "name": "@hyperbook/element-embed", - "version": "0.2.2", - "author": "Mike Barkmin", - "homepage": "https://github.com/openpatch/hyperbook#readme", - "license": "MIT", - "type": "module", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "sideEffects": false, - "exports": { - ".": "./dist/index.js", - "./index.css": "./dist/index.css" - }, - "files": [ - "dist" - ], - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/element-embed" - }, - "bugs": { - "url": "https://github.com/openpatch/hyperbook/issues" - }, - "scripts": { - "version": "pnpm build", - "lint": "tsc --noEmit", - "build": "rimraf dist && pnpm build:pkg && pnpm build:types", - "build:pkg": "node ../../scripts/build.mjs", - "build:types": "tsc --project tsconfig.build.json --declaration --emitDeclarationOnly" - }, - "dependencies": { - "@hyperbook/provider": "workspace:*", - "@hyperbook/store": "workspace:*" - }, - "peerDependencies": { - "react": "18.x", - "react-dom": "18.x", - "react-redux": "9.x" - }, - "devDependencies": { - "@reduxjs/toolkit": "2.2.5", - "@types/react": "18.3.2", - "@types/react-dom": "18.3.0", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-redux": "9.1.2", - "vitest": "^1.6.0" - } -} diff --git a/packages/element-embed/src/index.tsx b/packages/element-embed/src/index.tsx deleted file mode 100644 index 47109393..00000000 --- a/packages/element-embed/src/index.tsx +++ /dev/null @@ -1,43 +0,0 @@ -import { FC } from "react"; -import { createSlice } from "@hyperbook/store"; -import type { Slice } from "@reduxjs/toolkit"; -import "./index.css"; - -type DirectiveEmbedProps = { - src?: string; - height?: string | number; - width?: string | number; - title?: string; - allowFullScreen?: boolean; - aspectRatio?: string; -}; - -const DirectiveEmbed: FC = ({ - src, - width = "100%", - height = "400px", - title, - allowFullScreen = true, - aspectRatio, -}) => { - return ( -
- -
- -
-
- ); -}; - -export default { - directives: { - onlineide: DirectiveOnlineIde, - }, -}; diff --git a/packages/element-online-ide/tsconfig.build.json b/packages/element-online-ide/tsconfig.build.json deleted file mode 100644 index e8415085..00000000 --- a/packages/element-online-ide/tsconfig.build.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["src", "../../types"], - "compilerOptions": { - "rootDir": "src", - "declarationDir": "dist" - } -} diff --git a/packages/element-online-ide/tsconfig.json b/packages/element-online-ide/tsconfig.json deleted file mode 100644 index f068abe3..00000000 --- a/packages/element-online-ide/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "include": ["src", "../../types", "tests"] -} diff --git a/packages/element-online-ide/vite.config.ts b/packages/element-online-ide/vite.config.ts deleted file mode 100644 index 8fb6f2dc..00000000 --- a/packages/element-online-ide/vite.config.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineConfig } from "vitest/config"; - -export default defineConfig({}); diff --git a/packages/element-plantuml/CHANGELOG.md b/packages/element-plantuml/CHANGELOG.md deleted file mode 100644 index 557008c4..00000000 --- a/packages/element-plantuml/CHANGELOG.md +++ /dev/null @@ -1,43 +0,0 @@ -# @hyperbook/element-plantuml - -## 0.2.2 - -### Patch Changes - -- [`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23)]: - - @hyperbook/provider@0.4.2 - - @hyperbook/store@0.2.1 - -## 0.2.1 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.4.1 - -## 0.2.0 - -### Minor Changes - -- [`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Move to pure ESM packages - -### Patch Changes - -- Updated dependencies [[`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de)]: - - @hyperbook/provider@0.4.0 - - @hyperbook/store@0.2.0 - -## 0.1.1 - -### Patch Changes - -- Updated dependencies [[`902c0b3`](https://github.com/openpatch/hyperbook/commit/902c0b30a0aa97984350cfd58ad88d38ef7b4cd6)]: - - @hyperbook/provider@0.3.0 - -## 0.1.0 - -### Minor Changes - -- [`035cd2a`](https://github.com/openpatch/hyperbook/commit/035cd2ac6eae9beadb5c899d971019d99ec1bbb1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Add the PlantUML element. This element uses the external service Kroki to render PlantUML code to images. diff --git a/packages/element-plantuml/README.md b/packages/element-plantuml/README.md deleted file mode 100644 index 166ec0c7..00000000 --- a/packages/element-plantuml/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# @hyperbook/element-plantuml - -## Installation - -```sh -yarn add @hyperbook/element-plantuml -# or -npm i @hyperbook/element-plantuml -``` diff --git a/packages/element-plantuml/package.json b/packages/element-plantuml/package.json deleted file mode 100644 index 47fd78f1..00000000 --- a/packages/element-plantuml/package.json +++ /dev/null @@ -1,57 +0,0 @@ -{ - "name": "@hyperbook/element-plantuml", - "version": "0.2.2", - "author": "Mike Barkmin", - "homepage": "https://github.com/openpatch/hyperbook#readme", - "license": "MIT", - "type": "module", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "sideEffects": false, - "exports": { - ".": "./dist/index.js", - "./index.css": "./dist/index.css" - }, - "files": [ - "dist" - ], - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/element-plantuml" - }, - "bugs": { - "url": "https://github.com/openpatch/hyperbook/issues" - }, - "scripts": { - "version": "pnpm build", - "lint": "tsc --noEmit", - "build": "rimraf dist && pnpm build:pkg && pnpm build:types", - "build:pkg": "node ../../scripts/build.mjs", - "build:types": "tsc --project tsconfig.build.json --declaration --emitDeclarationOnly" - }, - "dependencies": { - "@hyperbook/provider": "workspace:*", - "@hyperbook/store": "workspace:*", - "@types/pako": "2.0.3", - "js-base64": "^3.7.7", - "pako": "2.1.0" - }, - "peerDependencies": { - "react": "18.x", - "react-dom": "18.x", - "react-redux": "9.x" - }, - "devDependencies": { - "@reduxjs/toolkit": "2.2.5", - "@types/react": "18.3.2", - "@types/react-dom": "18.3.0", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-redux": "9.1.2", - "vitest": "^1.6.0" - } -} diff --git a/packages/element-plantuml/src/encode.ts b/packages/element-plantuml/src/encode.ts deleted file mode 100644 index 72fc28e1..00000000 --- a/packages/element-plantuml/src/encode.ts +++ /dev/null @@ -1,9 +0,0 @@ -import pako from "pako"; -import { Base64 } from "js-base64"; - -export function encode(str: string) { - var data = new TextEncoder().encode(str); - var buffer = pako.deflate(data, { level: 9 }); - var result = Base64.fromUint8Array(buffer, true); - return result; -} diff --git a/packages/element-plantuml/src/index.css b/packages/element-plantuml/src/index.css deleted file mode 100644 index 5a51dea4..00000000 --- a/packages/element-plantuml/src/index.css +++ /dev/null @@ -1,10 +0,0 @@ -.element-plantuml { - display: flex; - align-items: center; - justify-content: center; - width: 100%; -} - -.element-plantuml img { - max-width: 100%; -} diff --git a/packages/element-plantuml/src/index.tsx b/packages/element-plantuml/src/index.tsx deleted file mode 100644 index dca20f01..00000000 --- a/packages/element-plantuml/src/index.tsx +++ /dev/null @@ -1,48 +0,0 @@ -import { FC, ReactNode } from "react"; -import { createSlice } from "@hyperbook/store"; -import "./index.css"; -import { encode } from "./encode"; -import type { Slice } from "@reduxjs/toolkit"; - -const getNodeText = (node: any): string => { - if (["string", "number"].includes(typeof node)) return node; - if (node instanceof Array) return node.map(getNodeText).join(""); - if (typeof node === "object" && node) return getNodeText(node.props.children); - return ""; -}; - -type DirectivePlantumlProps = { - children?: ReactNode; - alt?: string; - width?: string; -}; - -const DirectivePlantuml: FC = ({ - children, - alt, - width, -}) => { - let text = getNodeText(children); - const url = `https://kroki.io/plantuml/svg/${encode(text)}`; - - return ( -
- {alt} -
- ); -}; - -type ElementPlantumlState = {}; - -const initialState: ElementPlantumlState = {}; - -const slicePlantuml = createSlice({ - name: "element.plantuml", - initialState, - reducers: {}, -}); - -export default { - directives: { plantuml: DirectivePlantuml }, - slice: slicePlantuml as Slice, -}; diff --git a/packages/element-plantuml/tsconfig.build.json b/packages/element-plantuml/tsconfig.build.json deleted file mode 100644 index e8415085..00000000 --- a/packages/element-plantuml/tsconfig.build.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["src", "../../types"], - "compilerOptions": { - "rootDir": "src", - "declarationDir": "dist" - } -} diff --git a/packages/element-plantuml/tsconfig.json b/packages/element-plantuml/tsconfig.json deleted file mode 100644 index f068abe3..00000000 --- a/packages/element-plantuml/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "include": ["src", "../../types", "tests"] -} diff --git a/packages/element-plantuml/vite.config.ts b/packages/element-plantuml/vite.config.ts deleted file mode 100644 index 8fb6f2dc..00000000 --- a/packages/element-plantuml/vite.config.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineConfig } from "vitest/config"; - -export default defineConfig({}); diff --git a/packages/element-protect/CHANGELOG.md b/packages/element-protect/CHANGELOG.md deleted file mode 100644 index e45620cd..00000000 --- a/packages/element-protect/CHANGELOG.md +++ /dev/null @@ -1,169 +0,0 @@ -# @hyperbook/element-protect - -## 0.4.2 - -### Patch Changes - -- [`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23)]: - - @hyperbook/provider@0.4.2 - - @hyperbook/store@0.2.1 - -## 0.4.1 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.4.1 - -## 0.4.0 - -### Minor Changes - -- [`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Move to pure ESM packages - -### Patch Changes - -- Updated dependencies [[`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de)]: - - @hyperbook/provider@0.4.0 - - @hyperbook/store@0.2.0 - -## 0.3.5 - -### Patch Changes - -- Updated dependencies [[`902c0b3`](https://github.com/openpatch/hyperbook/commit/902c0b30a0aa97984350cfd58ad88d38ef7b4cd6)]: - - @hyperbook/provider@0.3.0 - -## 0.3.4 - -### Patch Changes - -- [`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - fix data not defined - -- Updated dependencies [[`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1)]: - - @hyperbook/provider@0.2.5 - - @hyperbook/store@0.1.5 - -## 0.3.3 - -### Patch Changes - -- [`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update packages - -- Updated dependencies [[`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e)]: - - @hyperbook/provider@0.2.4 - - @hyperbook/store@0.1.4 - -## 0.3.2 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.3 - -## 0.3.1 - -### Patch Changes - -- [`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37)]: - - @hyperbook/provider@0.2.2 - - @hyperbook/store@0.1.3 - -## 0.3.0 - -### Minor Changes - -- [`9298af0`](https://github.com/openpatch/hyperbook/commit/9298af040b16836c632e234f6ccbb61d67e1246d) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Allow a protect block to be synced to other protect blocks by using the same id. - -### Patch Changes - -- [`9298af0`](https://github.com/openpatch/hyperbook/commit/9298af040b16836c632e234f6ccbb61d67e1246d) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Add the snippet element. Snippets are helpful for making the handling of repeated blocks easiert. For example you can define a protect-block, which uses the same password across your hyperbook in a snippet. If you want to change the password, you can just change it in the snippet. See the documentation for snippets to get a more in detail view on snippets. - -## 0.2.4 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.1 - -## 0.2.3 - -### Patch Changes - -- Updated dependencies [[`8d53899`](https://github.com/openpatch/hyperbook/commit/8d538999fc924f7b3e3115416cba4978c9589b68)]: - - @hyperbook/provider@0.2.0 - -## 0.2.2 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.7 - -## 0.2.1 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.6 - -## 0.2.0 - -### Minor Changes - -- [`2574ee6`](https://github.com/openpatch/hyperbook/commit/2574ee6f0f4c70b1f05a70bbd8b1d5ba0eba013f) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - In development mode you can now use the reveal button to reveal the elements under the protect element. This should ease the development. This does not have any effects on the production side. - -## 0.1.5 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.5 - -## 0.1.4 - -### Patch Changes - -- Updated dependencies [[`cedb551`](https://github.com/openpatch/hyperbook/commit/cedb55191fd025b5a214df406a53cbab5d1b1bc1)]: - - @hyperbook/provider@0.1.4 - -## 0.1.3 - -### Patch Changes - -- Updated dependencies [[`c3e747a`](https://github.com/openpatch/hyperbook/commit/c3e747ab7b95c3e526b3800b169aa8f505f9b9a2)]: - - @hyperbook/provider@0.1.3 - -## 0.1.2 - -### Patch Changes - -- [`2c34554`](https://github.com/openpatch/hyperbook/commit/2c34554f64359fb995190b1465daddfa3e0101c0) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - try to overcome issues with @redux/toolkit not supporting esm modules the way nextjs likes it. - -- Updated dependencies [[`2c34554`](https://github.com/openpatch/hyperbook/commit/2c34554f64359fb995190b1465daddfa3e0101c0)]: - - @hyperbook/provider@0.1.2 - - @hyperbook/store@0.1.2 - -## 0.1.1 - -### Patch Changes - -- [`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Force package update due to failed pipeline - -- Updated dependencies [[`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00)]: - - @hyperbook/provider@0.1.1 - -## 0.1.0 - -### Minor Changes - -- [`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Extract feature in separate packages. This allows for easier development of new templates and allows enables to make changes more transparent. - -### Patch Changes - -- Updated dependencies [[`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8)]: - - @hyperbook/provider@0.1.0 diff --git a/packages/element-protect/README.md b/packages/element-protect/README.md deleted file mode 100644 index b4d952d3..00000000 --- a/packages/element-protect/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# @hyperbook/element-protect - -## Installation - -```sh -yarn add @hyperbook/element-protect -# or -npm i @hyperbook/element-protect -``` diff --git a/packages/element-protect/package.json b/packages/element-protect/package.json deleted file mode 100644 index 43474d7b..00000000 --- a/packages/element-protect/package.json +++ /dev/null @@ -1,56 +0,0 @@ -{ - "name": "@hyperbook/element-protect", - "version": "0.4.2", - "author": "Mike Barkmin", - "homepage": "https://github.com/openpatch/hyperbook#readme", - "license": "MIT", - "type": "module", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "sideEffects": false, - "exports": { - ".": "./dist/index.js", - "./index.css": "./dist/index.css" - }, - "files": [ - "dist" - ], - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/element-protect" - }, - "bugs": { - "url": "https://github.com/openpatch/hyperbook/issues" - }, - "scripts": { - "version": "pnpm build", - "lint": "tsc --noEmit", - "build": "rimraf dist && pnpm build:pkg && pnpm build:types", - "build:pkg": "node ../../scripts/build.mjs", - "build:types": "tsc --project tsconfig.build.json --declaration --emitDeclarationOnly" - }, - "dependencies": { - "@hyperbook/provider": "workspace:*", - "@hyperbook/store": "workspace:*", - "object-hash": "3.0.0" - }, - "peerDependencies": { - "@reduxjs/toolkit": "2.x", - "react": "18.x", - "react-dom": "18.x", - "react-redux": "9.x" - }, - "devDependencies": { - "@reduxjs/toolkit": "2.2.5", - "@types/object-hash": "3.0.6", - "@types/react": "18.3.2", - "@types/react-dom": "18.3.0", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-redux": "9.1.2" - } -} diff --git a/packages/element-protect/src/index.tsx b/packages/element-protect/src/index.tsx deleted file mode 100644 index 2277e873..00000000 --- a/packages/element-protect/src/index.tsx +++ /dev/null @@ -1,92 +0,0 @@ -import { FC, ReactNode, useEffect, useState } from "react"; -import { useDispatch, useSelector } from "react-redux"; -import { createSlice } from "@hyperbook/store"; -import type { Slice, PayloadAction } from "@reduxjs/toolkit"; -import hash from "object-hash"; -import { useActivePageId, useEnv } from "@hyperbook/provider"; -import "./index.css"; - -type DirectiveProtectProps = { - children?: ReactNode; - password: string; - description?: string; - id?: string; - node: any; -}; - -const DirectiveProtect: FC = ({ - children, - description, - node, - id, - password, -}) => { - const [activePageId] = useActivePageId(); - const dispatch = useDispatch(); - const env = useEnv(); - let pId: string = `${activePageId}.${hash(node)}`; - if (id) { - pId = id; - } - - const value = useSelector(selectValue(pId)); - const [reveal, setReveal] = useState(false); - - const setValue = (value: string) => { - dispatch(sliceProtect.actions.set({ id: pId, value })); - }; - - useEffect(() => { - setReveal(value === password); - }, [value, password]); - - return ( - <> - {reveal ? ( - <>{children} - ) : ( -
- {description} - 🔒 - setValue(e.target.value)} - /> -
- )} - - {env === "development" && ( -
- -
- )} - - ); -}; - -type ElementProtectState = Record; - -const initialState: ElementProtectState = {}; - -const sliceProtect = createSlice({ - name: "element.protect", - initialState, - reducers: { - set: (state, action: PayloadAction<{ id: string; value: string }>) => { - state[action.payload.id] = action.payload.value; - }, - }, -}); - -const selectValue = - (id: string) => (state: { "element.protect": ElementProtectState }) => { - return state[sliceProtect.name][id] || ""; - }; - -export default { - directives: { protect: DirectiveProtect }, - slice: sliceProtect as Slice, -}; diff --git a/packages/element-protect/tsconfig.build.json b/packages/element-protect/tsconfig.build.json deleted file mode 100644 index e8415085..00000000 --- a/packages/element-protect/tsconfig.build.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["src", "../../types"], - "compilerOptions": { - "rootDir": "src", - "declarationDir": "dist" - } -} diff --git a/packages/element-protect/tsconfig.json b/packages/element-protect/tsconfig.json deleted file mode 100644 index f068abe3..00000000 --- a/packages/element-protect/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "include": ["src", "../../types", "tests"] -} diff --git a/packages/element-qr/CHANGELOG.md b/packages/element-qr/CHANGELOG.md deleted file mode 100644 index b7e4b515..00000000 --- a/packages/element-qr/CHANGELOG.md +++ /dev/null @@ -1,169 +0,0 @@ -# @hyperbook/element-qr - -## 0.3.3 - -### Patch Changes - -- [`2bfe682`](https://github.com/openpatch/hyperbook/commit/2bfe6828e578399c405bf4fc52fb1845efe2fb6a) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update packages - -## 0.3.2 - -### Patch Changes - -- [`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23)]: - - @hyperbook/provider@0.4.2 - -## 0.3.1 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.4.1 - -## 0.3.0 - -### Minor Changes - -- [`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Move to pure ESM packages - -### Patch Changes - -- Updated dependencies [[`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de)]: - - @hyperbook/provider@0.4.0 - -## 0.2.1 - -### Patch Changes - -- [`19af1f3`](https://github.com/openpatch/hyperbook/commit/19af1f3baae82508091b2f49541449464d88bb28) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Fix qr package causing an error when building - -## 0.2.0 - -### Minor Changes - -- [`902c0b3`](https://github.com/openpatch/hyperbook/commit/902c0b30a0aa97984350cfd58ad88d38ef7b4cd6) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Improve static site generation - -### Patch Changes - -- Updated dependencies [[`902c0b3`](https://github.com/openpatch/hyperbook/commit/902c0b30a0aa97984350cfd58ad88d38ef7b4cd6)]: - - @hyperbook/provider@0.3.0 - -## 0.1.14 - -### Patch Changes - -- [`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - fix data not defined - -- Updated dependencies [[`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1)]: - - @hyperbook/provider@0.2.5 - -## 0.1.13 - -### Patch Changes - -- [`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update packages - -- Updated dependencies [[`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e)]: - - @hyperbook/provider@0.2.4 - -## 0.1.12 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.3 - -## 0.1.11 - -### Patch Changes - -- [`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37)]: - - @hyperbook/provider@0.2.2 - -## 0.1.10 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.1 - -## 0.1.9 - -### Patch Changes - -- Updated dependencies [[`8d53899`](https://github.com/openpatch/hyperbook/commit/8d538999fc924f7b3e3115416cba4978c9589b68)]: - - @hyperbook/provider@0.2.0 - -## 0.1.8 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.7 - -## 0.1.7 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.6 - -## 0.1.6 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.5 - -## 0.1.5 - -### Patch Changes - -- Updated dependencies [[`cedb551`](https://github.com/openpatch/hyperbook/commit/cedb55191fd025b5a214df406a53cbab5d1b1bc1)]: - - @hyperbook/provider@0.1.4 - -## 0.1.4 - -### Patch Changes - -- [`9b2b71b`](https://github.com/openpatch/hyperbook/commit/9b2b71b8bbd728294ff4c4c97502e58e99619300) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Fix css for qr code if in canvas mode. - -- Updated dependencies [[`c3e747a`](https://github.com/openpatch/hyperbook/commit/c3e747ab7b95c3e526b3800b169aa8f505f9b9a2)]: - - @hyperbook/provider@0.1.3 - -## 0.1.3 - -### Patch Changes - -- [`2459c34`](https://github.com/openpatch/hyperbook/commit/2459c343e89f890c10132cfb36bb466b5800133d) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - use default import to be compatible with commonjs - -## 0.1.2 - -### Patch Changes - -- Updated dependencies [[`2c34554`](https://github.com/openpatch/hyperbook/commit/2c34554f64359fb995190b1465daddfa3e0101c0)]: - - @hyperbook/provider@0.1.2 - -## 0.1.1 - -### Patch Changes - -- [`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Force package update due to failed pipeline - -- Updated dependencies [[`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00)]: - - @hyperbook/provider@0.1.1 - -## 0.1.0 - -### Minor Changes - -- [`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Extract feature in separate packages. This allows for easier development of new templates and allows enables to make changes more transparent. - -### Patch Changes - -- Updated dependencies [[`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8)]: - - @hyperbook/provider@0.1.0 diff --git a/packages/element-qr/README.md b/packages/element-qr/README.md deleted file mode 100644 index d7aba9fc..00000000 --- a/packages/element-qr/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# @hyperbook/element-qr - -## Installation - -```sh -yarn add @hyperbook/element-qr -# or -npm i @hyperbook/element-qr -``` diff --git a/packages/element-qr/package.json b/packages/element-qr/package.json deleted file mode 100644 index 94f223f6..00000000 --- a/packages/element-qr/package.json +++ /dev/null @@ -1,55 +0,0 @@ -{ - "name": "@hyperbook/element-qr", - "version": "0.3.3", - "author": "Mike Barkmin", - "homepage": "https://github.com/openpatch/hyperbook#readme", - "license": "MIT", - "type": "module", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "sideEffects": false, - "exports": { - ".": "./dist/index.js", - "./index.css": "./dist/index.css" - }, - "files": [ - "dist" - ], - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/element-qr" - }, - "bugs": { - "url": "https://github.com/openpatch/hyperbook/issues" - }, - "scripts": { - "version": "pnpm build", - "lint": "tsc --noEmit", - "build": "rimraf dist && pnpm build:pkg && pnpm build:types", - "build:pkg": "node ../../scripts/build.mjs", - "build:types": "tsc --project tsconfig.build.json --declaration --emitDeclarationOnly" - }, - "dependencies": { - "@hyperbook/provider": "workspace:*", - "qrcode": "^1.5.4" - }, - "peerDependencies": { - "@reduxjs/toolkit": "2.x", - "react": "18.x", - "react-dom": "18.x", - "react-redux": "9.x" - }, - "devDependencies": { - "@reduxjs/toolkit": "2.2.5", - "@types/qrcode": "^1.5.5", - "@types/react": "18.3.2", - "@types/react-dom": "18.3.0", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-redux": "9.1.2" - } -} diff --git a/packages/element-qr/src/index.tsx b/packages/element-qr/src/index.tsx deleted file mode 100644 index 29b7d6e0..00000000 --- a/packages/element-qr/src/index.tsx +++ /dev/null @@ -1,61 +0,0 @@ -import QRCode from "qrcode"; -import { FC, useEffect, useState } from "react"; -import "./index.css"; - -type DirectiveQrProps = { - size: "S" | "M" | "L" | "XL"; - value: string; - label: string; -}; - -const realSizes = { - S: 64, - M: 128, - L: 256, - XL: 512, -} as const; - -const DirectiveQr: FC = ({ size = "M", value, label }) => { - const [data, setData] = useState(""); - - useEffect(() => { - QRCode.toDataURL( - value, - { - width: realSizes[size], - errorCorrectionLevel: "Q", - margin: 0, - color: { - dark: "#000", - light: "#FFF", - }, - }, - (err, url) => { - if (err) return; - setData(url); - } - ); - }, [size, value]); - - return ( -
-
- -
- {label && ( -
- {label} -
- )} -
- ); -}; - -export default { - directives: { qr: DirectiveQr }, -}; diff --git a/packages/element-qr/tsconfig.build.json b/packages/element-qr/tsconfig.build.json deleted file mode 100644 index e8415085..00000000 --- a/packages/element-qr/tsconfig.build.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["src", "../../types"], - "compilerOptions": { - "rootDir": "src", - "declarationDir": "dist" - } -} diff --git a/packages/element-qr/tsconfig.json b/packages/element-qr/tsconfig.json deleted file mode 100644 index f068abe3..00000000 --- a/packages/element-qr/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "include": ["src", "../../types", "tests"] -} diff --git a/packages/element-scratchblock/CHANGELOG.md b/packages/element-scratchblock/CHANGELOG.md deleted file mode 100644 index e329c7f9..00000000 --- a/packages/element-scratchblock/CHANGELOG.md +++ /dev/null @@ -1,75 +0,0 @@ -# @hyperbook/element-scratchblock - -## 0.2.2 - -### Patch Changes - -- [`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23)]: - - @hyperbook/provider@0.4.2 - -## 0.2.1 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.4.1 - -## 0.2.0 - -### Minor Changes - -- [`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Move to pure ESM packages - -### Patch Changes - -- Updated dependencies [[`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de)]: - - @hyperbook/provider@0.4.0 - -## 0.1.5 - -### Patch Changes - -- Updated dependencies [[`902c0b3`](https://github.com/openpatch/hyperbook/commit/902c0b30a0aa97984350cfd58ad88d38ef7b4cd6)]: - - @hyperbook/provider@0.3.0 - -## 0.1.4 - -### Patch Changes - -- [`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - fix data not defined - -- Updated dependencies [[`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1)]: - - @hyperbook/provider@0.2.5 - -## 0.1.3 - -### Patch Changes - -- [`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update packages - -- Updated dependencies [[`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e)]: - - @hyperbook/provider@0.2.4 - -## 0.1.2 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.3 - -## 0.1.1 - -### Patch Changes - -- [`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37)]: - - @hyperbook/provider@0.2.2 - -## 0.1.0 - -### Minor Changes - -- [`dfe9200`](https://github.com/openpatch/hyperbook/commit/dfe9200ff5a05cdc81328e2ba8317ab5f5363424) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Add element scratchblock for rendering scratch blocks. diff --git a/packages/element-scratchblock/README.md b/packages/element-scratchblock/README.md deleted file mode 100644 index baa02625..00000000 --- a/packages/element-scratchblock/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# @hyperbook/element-scratchblock - -## Installation - -```sh -yarn add @hyperbook/element-scratchblock -# or -npm i @hyperbook/element-scratchblock -``` diff --git a/packages/element-scratchblock/package.json b/packages/element-scratchblock/package.json deleted file mode 100644 index 95753552..00000000 --- a/packages/element-scratchblock/package.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "name": "@hyperbook/element-scratchblock", - "version": "0.2.2", - "author": "Mike Barkmin", - "homepage": "https://github.com/openpatch/hyperbook#readme", - "license": "MIT", - "type": "module", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "sideEffects": false, - "exports": { - ".": "./dist/index.js", - "./index.css": "./dist/index.css" - }, - "files": [ - "dist" - ], - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/element-scratchblock" - }, - "bugs": { - "url": "https://github.com/openpatch/hyperbook/issues" - }, - "scripts": { - "version": "pnpm build", - "lint": "tsc --noEmit", - "build": "rimraf dist && pnpm build:pkg && pnpm build:types", - "build:pkg": "node ../../scripts/build.mjs", - "build:types": "tsc --project tsconfig.build.json --declaration --emitDeclarationOnly" - }, - "dependencies": { - "@hyperbook/provider": "workspace:*", - "scratchblocks": "^3.6.4" - }, - "peerDependencies": { - "@reduxjs/toolkit": "2.x", - "react": "18.x", - "react-dom": "18.x", - "react-redux": "9.x" - }, - "devDependencies": { - "@types/react": "18.3.2", - "@types/react-dom": "18.3.0", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-redux": "9.1.2", - "@reduxjs/toolkit": "2.2.5" - } -} diff --git a/packages/element-scratchblock/src/index.tsx b/packages/element-scratchblock/src/index.tsx deleted file mode 100644 index 6a52f032..00000000 --- a/packages/element-scratchblock/src/index.tsx +++ /dev/null @@ -1,69 +0,0 @@ -import { useConfig } from "@hyperbook/provider"; -import { FC, ReactNode, useEffect, useRef } from "react"; -import "./index.css"; - -type DirectiveScratchblockProps = { - children?: ReactNode; - language?: string; -}; - -const getNodeText = (node: any): string => { - if (["string", "number"].includes(typeof node)) return node; - if (node instanceof Array) return node.map(getNodeText).join(""); - if (typeof node === "object" && node) return getNodeText(node.props.children); - return ""; -}; - -const renderScratchblock = async ( - text: string, - options: any -): Promise => { - const scratchblocks = (await import("scratchblocks")).default; - const languages: Record = {}; - for (let language of options.languages) { - try { - const l = (await import(`scratchblocks/locales/${language}.json`)) - .default; - languages[language] = l; - } catch (e) {} - } - scratchblocks.loadLanguages(languages); - const doc = scratchblocks.parse(text, options); - const svg = scratchblocks.render(doc, options); - return svg; -}; - -const DirectiveScratchblock: FC = ({ - children, - language, -}) => { - const ref = useRef(null); - const { language: hbl } = useConfig(); - const text = getNodeText(children); - const languages = ["en"]; - if (language) { - languages.push(language); - } - if (hbl) { - languages.push(hbl); - } - const options = { - style: "scratch3", - languages: languages, - }; - - useEffect(() => { - renderScratchblock(text, options).then((svg) => { - if (ref.current) { - ref.current.innerHTML = ""; - ref.current.appendChild(svg); - } - }); - }, [text]); - - return
; -}; - -export default { - directives: { scratchblock: DirectiveScratchblock }, -}; diff --git a/packages/element-scratchblock/src/scratchblocks.d.ts b/packages/element-scratchblock/src/scratchblocks.d.ts deleted file mode 100644 index 3380e6ed..00000000 --- a/packages/element-scratchblock/src/scratchblocks.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -declare module "scratchblocks" { - export function parse(text: string, options: any): any; - export function render(text: string, options: any): SVGElement; - export function stringify(doc: any): string; - export function loadLanguages(locales: any); -} diff --git a/packages/element-scratchblock/tsconfig.build.json b/packages/element-scratchblock/tsconfig.build.json deleted file mode 100644 index e8415085..00000000 --- a/packages/element-scratchblock/tsconfig.build.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["src", "../../types"], - "compilerOptions": { - "rootDir": "src", - "declarationDir": "dist" - } -} diff --git a/packages/element-scratchblock/tsconfig.json b/packages/element-scratchblock/tsconfig.json deleted file mode 100644 index f068abe3..00000000 --- a/packages/element-scratchblock/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "include": ["src", "../../types", "tests"] -} diff --git a/packages/element-slideshow/CHANGELOG.md b/packages/element-slideshow/CHANGELOG.md deleted file mode 100644 index e9c9768a..00000000 --- a/packages/element-slideshow/CHANGELOG.md +++ /dev/null @@ -1,18 +0,0 @@ -# @hyperbook/element-slideshow - -## 0.0.2 - -### Patch Changes - -- [`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23)]: - - @hyperbook/provider@0.4.2 - - @hyperbook/store@0.2.1 - -## 0.0.1 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.4.1 diff --git a/packages/element-slideshow/README.md b/packages/element-slideshow/README.md deleted file mode 100644 index 54fc7f4e..00000000 --- a/packages/element-slideshow/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# @hyperbook/element-slideshow - -## Installation - -```sh -yarn add @hyperbook/element-slideshow -# or -npm i @hyperbook/element-slideshow -``` diff --git a/packages/element-slideshow/package.json b/packages/element-slideshow/package.json deleted file mode 100644 index fb48b187..00000000 --- a/packages/element-slideshow/package.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "name": "@hyperbook/element-slideshow", - "version": "0.0.2", - "author": "Mike Barkmin", - "homepage": "https://github.com/openpatch/hyperbook#readme", - "license": "MIT", - "type": "module", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "sideEffects": false, - "exports": { - ".": "./dist/index.js", - "./index.css": "./dist/index.css" - }, - "files": [ - "dist" - ], - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/element-slideshow" - }, - "bugs": { - "url": "https://github.com/openpatch/hyperbook/issues" - }, - "scripts": { - "version": "pnpm build", - "lint": "tsc --noEmit", - "build": "rimraf dist && pnpm build:pkg && pnpm build:types", - "build:pkg": "node ../../scripts/build.mjs", - "build:types": "tsc --project tsconfig.build.json --declaration --emitDeclarationOnly" - }, - "dependencies": { - "@hyperbook/provider": "workspace:*", - "@hyperbook/store": "workspace:*" - }, - "peerDependencies": { - "react": "18.x", - "react-dom": "18.x", - "react-redux": "9.x" - }, - "devDependencies": { - "@reduxjs/toolkit": "2.2.5", - "@types/react": "18.3.2", - "@types/react-dom": "18.3.0", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-redux": "9.1.2", - "vitest": "^1.6.0" - } -} diff --git a/packages/element-slideshow/src/index.tsx b/packages/element-slideshow/src/index.tsx deleted file mode 100644 index ead8f3fe..00000000 --- a/packages/element-slideshow/src/index.tsx +++ /dev/null @@ -1,92 +0,0 @@ -import { - FC, - ReactElement, - ReactNode, - useCallback, - useEffect, - useRef, - useState, -} from "react"; -import { createSlice } from "@hyperbook/store"; -import type { Slice } from "@reduxjs/toolkit"; -import "./index.css"; - -type DirectiveSlideshowProps = { - height?: number; - children?: ReactNode[]; -}; - -const DirectiveSlideshow: FC = ({ - children, - height = 300, -}) => { - const [active, setActive] = useState(0); - const imageChildren = children?.filter((c) => c instanceof Object); - const l = imageChildren?.length || 0; - - const increaseActiveBy = useCallback( - (value: number) => { - setActive((active) => { - if (l == 0) return active; - if (active + value < 0) { - return l - 1; - } else if (active + value >= l) { - return 0; - } else { - return active + value; - } - }); - }, - [active, setActive, l] - ); - - return ( -
-
- {imageChildren?.map((c, i) => ( -
- {c} -
- ))} - - increaseActiveBy(-1)}> - ❮ - - increaseActiveBy(+1)}> - ❯ - -
- -
- {imageChildren?.map((_, i) => ( - setActive(i)} - > - ))} -
-
- ); -}; - -type ElementSlideshowState = {}; - -const initialState: ElementSlideshowState = {}; - -const sliceSlideshow = createSlice({ - name: "element.slideshow", - initialState, - reducers: {}, -}); - -export default { - directives: { slideshow: DirectiveSlideshow }, - slice: sliceSlideshow as Slice, -}; diff --git a/packages/element-slideshow/tsconfig.build.json b/packages/element-slideshow/tsconfig.build.json deleted file mode 100644 index e8415085..00000000 --- a/packages/element-slideshow/tsconfig.build.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["src", "../../types"], - "compilerOptions": { - "rootDir": "src", - "declarationDir": "dist" - } -} diff --git a/packages/element-slideshow/tsconfig.json b/packages/element-slideshow/tsconfig.json deleted file mode 100644 index f068abe3..00000000 --- a/packages/element-slideshow/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "include": ["src", "../../types", "tests"] -} diff --git a/packages/element-slideshow/vite.config.ts b/packages/element-slideshow/vite.config.ts deleted file mode 100644 index 8fb6f2dc..00000000 --- a/packages/element-slideshow/vite.config.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineConfig } from "vitest/config"; - -export default defineConfig({}); diff --git a/packages/element-sql-ide/CHANGELOG.md b/packages/element-sql-ide/CHANGELOG.md deleted file mode 100644 index 5e76dcfe..00000000 --- a/packages/element-sql-ide/CHANGELOG.md +++ /dev/null @@ -1,91 +0,0 @@ -# @hyperbook/element-online-ide - -## 0.5.2 - -### Patch Changes - -- [`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23)]: - - @hyperbook/provider@0.4.2 - -## 0.5.1 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.4.1 - -## 0.5.0 - -### Minor Changes - -- [`9cf8f9c`](https://github.com/openpatch/hyperbook/commit/9cf8f9c028c315b63770495b97d0567da0f69c1b) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Add fullscreen button to the Online IDE and SQL IDE elements. - -## 0.4.0 - -### Minor Changes - -- [`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Move to pure ESM packages - -### Patch Changes - -- Updated dependencies [[`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de)]: - - @hyperbook/provider@0.4.0 - -## 0.3.3 - -### Patch Changes - -- Updated dependencies [[`902c0b3`](https://github.com/openpatch/hyperbook/commit/902c0b30a0aa97984350cfd58ad88d38ef7b4cd6)]: - - @hyperbook/provider@0.3.0 - -## 0.3.2 - -### Patch Changes - -- [`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - fix data not defined - -- [`ed5a41d`](https://github.com/openpatch/hyperbook/commit/ed5a41d3c324e55e932a3c375d9daf89ebd6b675) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - add makeurl for supporting relative db urls - -- Updated dependencies [[`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1)]: - - @hyperbook/provider@0.2.5 - -## 0.3.1 - -### Patch Changes - -- [`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update packages - -- Updated dependencies [[`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e)]: - - @hyperbook/provider@0.2.4 - -## 0.3.0 - -### Minor Changes - -- [`4221fe1`](https://github.com/openpatch/hyperbook/commit/4221fe145a6dfffd9f97459fa2d2694da4b5d78e) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - add global configuration options for onlineide and sqlide - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.3 - -## 0.2.0 - -### Minor Changes - -- [`cb65222`](https://github.com/openpatch/hyperbook/commit/cb652224860a718149be4c34234eeb8dcdfbfc91) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - add element sql ide - -## 0.1.0 - -### Minor Changes - -- [`086019c`](https://github.com/openpatch/hyperbook/commit/086019c276dc42d1262dc104c894065b89203b24) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Add element online ide for java - -### Patch Changes - -- [`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37)]: - - @hyperbook/provider@0.2.2 diff --git a/packages/element-sql-ide/README.md b/packages/element-sql-ide/README.md deleted file mode 100644 index c45a5237..00000000 --- a/packages/element-sql-ide/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# @hyperbook/element-online-ide - -## Installation - -```sh -yarn add @hyperbook/element-online-ide -# or -npm i @hyperbook/element-online-ide -``` diff --git a/packages/element-sql-ide/package.json b/packages/element-sql-ide/package.json deleted file mode 100644 index d08ec879..00000000 --- a/packages/element-sql-ide/package.json +++ /dev/null @@ -1,55 +0,0 @@ -{ - "name": "@hyperbook/element-sql-ide", - "version": "0.5.2", - "author": "Mike Barkmin", - "homepage": "https://github.com/openpatch/hyperbook#readme", - "license": "MIT", - "type": "module", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "sideEffects": false, - "exports": { - ".": "./dist/index.js", - "./index.css": "./dist/index.css" - }, - "files": [ - "dist" - ], - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/element-sql-ide" - }, - "bugs": { - "url": "https://github.com/openpatch/hyperbook/issues" - }, - "scripts": { - "version": "pnpm build", - "lint": "tsc --noEmit", - "build": "rimraf dist && pnpm build:pkg && pnpm build:types", - "build:pkg": "node ../../scripts/build.mjs", - "build:types": "tsc --project tsconfig.build.json --declaration --emitDeclarationOnly" - }, - "dependencies": { - "@hyperbook/provider": "workspace:*", - "object-hash": "3.0.0" - }, - "peerDependencies": { - "react": "18.x", - "react-dom": "18.x", - "react-redux": "9.x" - }, - "devDependencies": { - "@reduxjs/toolkit": "2.2.5", - "@types/object-hash": "3.0.6", - "@types/react": "18.3.2", - "@types/react-dom": "18.3.0", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-redux": "9.1.2", - "vitest": "^1.6.0" - } -} diff --git a/packages/element-sql-ide/src/index.tsx b/packages/element-sql-ide/src/index.tsx deleted file mode 100644 index 3db0bcd0..00000000 --- a/packages/element-sql-ide/src/index.tsx +++ /dev/null @@ -1,114 +0,0 @@ -import { FC, ReactNode, useRef } from "react"; -import hash from "object-hash"; -import "./index.css"; -import { useConfig, useMakeUrl } from "@hyperbook/provider"; - -type DirectiveSqlIdeProps = { - children?: ReactNode; - node: any; - url?: string; - id: string; - db: string; - height?: string | number; -}; - -const nodeToText = (n: any): string => { - return n.children - ?.map((n: any) => (n.value ? n.value : nodeToText(n))) - .join(" "); -}; - -const DirectiveSqlIde: FC = ({ - node, - url = "https://sqlide.openpatch.org", - height = "600px", - db = "https://sqlide.openpatch.org/assets/databases/world1.sqLite", - id, -}) => { - if (!id) { - id = hash(node); - } - - const iframeRef = useRef(null); - const makeUrl = useMakeUrl(); - const config = useConfig(); - const ideConfig = config?.elements?.sqlide; - - if (ideConfig?.url) { - url = ideConfig.url; - } - - if (ideConfig?.height) { - height = ideConfig.height; - } - - if (ideConfig?.db) { - db = makeUrl(ideConfig.db, "public"); - } - - const openInFullscreen = () => { - if (iframeRef.current?.requestFullscreen) { - iframeRef.current.requestFullscreen(); - } - }; - - const codes: { title: string; code: string; hint?: boolean }[] = node.children - ?.filter((n: any) => n.tagName === "pre") - .flatMap((n: any) => { - return n.children - ?.filter((n: any) => n.tagName === "code") - .map((n: any) => { - return { - title: n.data?.meta || "", - code: nodeToText(n) || "", - hint: n?.properties?.className?.[1] === "language-markdown", - }; - }); - }); - - const scripts = codes.map((c) => { - return ``; - }); - let html = `{'id': '${id}', 'databaseURL': '${db}'}`; - html = html + "\n" + scripts.join("\n"); - html = - html + - "\n" + - ``; - - return ( -
- -
- -
-
- ); -}; - -export default { - directives: { - sqlide: DirectiveSqlIde, - }, -}; diff --git a/packages/element-sql-ide/tsconfig.build.json b/packages/element-sql-ide/tsconfig.build.json deleted file mode 100644 index e8415085..00000000 --- a/packages/element-sql-ide/tsconfig.build.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["src", "../../types"], - "compilerOptions": { - "rootDir": "src", - "declarationDir": "dist" - } -} diff --git a/packages/element-sql-ide/tsconfig.json b/packages/element-sql-ide/tsconfig.json deleted file mode 100644 index f068abe3..00000000 --- a/packages/element-sql-ide/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "include": ["src", "../../types", "tests"] -} diff --git a/packages/element-sql-ide/vite.config.ts b/packages/element-sql-ide/vite.config.ts deleted file mode 100644 index 8fb6f2dc..00000000 --- a/packages/element-sql-ide/vite.config.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineConfig } from "vitest/config"; - -export default defineConfig({}); diff --git a/packages/element-struktog/CHANGELOG.md b/packages/element-struktog/CHANGELOG.md deleted file mode 100644 index 7c881f6f..00000000 --- a/packages/element-struktog/CHANGELOG.md +++ /dev/null @@ -1,145 +0,0 @@ -# @hyperbook/element-struktog - -## 0.2.2 - -### Patch Changes - -- [`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23)]: - - @hyperbook/provider@0.4.2 - -## 0.2.1 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.4.1 - -## 0.2.0 - -### Minor Changes - -- [`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Move to pure ESM packages - -### Patch Changes - -- Updated dependencies [[`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de)]: - - @hyperbook/provider@0.4.0 - -## 0.1.14 - -### Patch Changes - -- Updated dependencies [[`902c0b3`](https://github.com/openpatch/hyperbook/commit/902c0b30a0aa97984350cfd58ad88d38ef7b4cd6)]: - - @hyperbook/provider@0.3.0 - -## 0.1.13 - -### Patch Changes - -- [`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - fix data not defined - -- Updated dependencies [[`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1)]: - - @hyperbook/provider@0.2.5 - -## 0.1.12 - -### Patch Changes - -- [`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update packages - -- Updated dependencies [[`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e)]: - - @hyperbook/provider@0.2.4 - -## 0.1.11 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.3 - -## 0.1.10 - -### Patch Changes - -- [`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37)]: - - @hyperbook/provider@0.2.2 - -## 0.1.9 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.1 - -## 0.1.8 - -### Patch Changes - -- Updated dependencies [[`8d53899`](https://github.com/openpatch/hyperbook/commit/8d538999fc924f7b3e3115416cba4978c9589b68)]: - - @hyperbook/provider@0.2.0 - -## 0.1.7 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.7 - -## 0.1.6 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.6 - -## 0.1.5 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.5 - -## 0.1.4 - -### Patch Changes - -- Updated dependencies [[`cedb551`](https://github.com/openpatch/hyperbook/commit/cedb55191fd025b5a214df406a53cbab5d1b1bc1)]: - - @hyperbook/provider@0.1.4 - -## 0.1.3 - -### Patch Changes - -- Updated dependencies [[`c3e747a`](https://github.com/openpatch/hyperbook/commit/c3e747ab7b95c3e526b3800b169aa8f505f9b9a2)]: - - @hyperbook/provider@0.1.3 - -## 0.1.2 - -### Patch Changes - -- Updated dependencies [[`2c34554`](https://github.com/openpatch/hyperbook/commit/2c34554f64359fb995190b1465daddfa3e0101c0)]: - - @hyperbook/provider@0.1.2 - -## 0.1.1 - -### Patch Changes - -- [`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Force package update due to failed pipeline - -- Updated dependencies [[`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00)]: - - @hyperbook/provider@0.1.1 - -## 0.1.0 - -### Minor Changes - -- [`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Extract feature in separate packages. This allows for easier development of new templates and allows enables to make changes more transparent. - -### Patch Changes - -- Updated dependencies [[`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8)]: - - @hyperbook/provider@0.1.0 diff --git a/packages/element-struktog/README.md b/packages/element-struktog/README.md deleted file mode 100644 index 685abc01..00000000 --- a/packages/element-struktog/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# @hyperbook/element-struktog - -## Installation - -```sh -yarn add @hyperbook/element-struktog -# or -npm i @hyperbook/element-struktog -``` diff --git a/packages/element-struktog/package.json b/packages/element-struktog/package.json deleted file mode 100644 index a68cbb01..00000000 --- a/packages/element-struktog/package.json +++ /dev/null @@ -1,56 +0,0 @@ -{ - "name": "@hyperbook/element-struktog", - "version": "0.2.2", - "author": "Mike Barkmin", - "homepage": "https://github.com/openpatch/hyperbook#readme", - "license": "MIT", - "type": "module", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "sideEffects": false, - "exports": { - ".": "./dist/index.js", - "./index.css": "./dist/index.css" - }, - "files": [ - "dist" - ], - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/element-struktog" - }, - "bugs": { - "url": "https://github.com/openpatch/hyperbook/issues" - }, - "scripts": { - "version": "pnpm build", - "lint": "tsc --noEmit", - "build": "rimraf dist && pnpm build:pkg && pnpm build:types", - "build:pkg": "node ../../scripts/build.mjs", - "build:types": "tsc --project tsconfig.build.json --declaration --emitDeclarationOnly" - }, - "dependencies": { - "@hyperbook/provider": "workspace:*", - "js-base64": "3.7.7", - "pako": "2.1.0" - }, - "peerDependencies": { - "@reduxjs/toolkit": "2.x", - "react": "18.x", - "react-dom": "18.x", - "react-redux": "9.x" - }, - "devDependencies": { - "@types/pako": "2.0.3", - "@types/react": "18.3.2", - "@types/react-dom": "18.3.0", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-redux": "9.1.2", - "@reduxjs/toolkit": "2.2.5" - } -} diff --git a/packages/element-struktog/src/index.tsx b/packages/element-struktog/src/index.tsx deleted file mode 100644 index 537febbe..00000000 --- a/packages/element-struktog/src/index.tsx +++ /dev/null @@ -1,613 +0,0 @@ -import { FC, Fragment } from "react"; -import { deserializeState } from "./serge"; -import "./index.css"; - -type InsertNode = { - id: string; - type: "InsertNode"; - followElement: Node; -}; - -type Placeholder = { - type: "Placeholder"; -}; - -type InsertCase = { - id: string; - text: string; - type: "InsertCase"; - followElement: Node; -}; - -type InputNode = { - id: string; - text: string; - type: "InputNode"; - followElement: Node; -}; - -type OutputNode = { - id: string; - text: string; - type: "OutputNode"; - followElement: Node; -}; - -type BranchNode = { - id: string; - text: string; - type: "BranchNode"; - followElement: Node; - trueChild: Node; - falseChild: Node; -}; - -type TaskNode = { - id: string; - text: string; - type: "TaskNode"; - followElement: Node; -}; - -type TryCatchNode = { - id: string; - text: string; - type: "TryCatchNode"; - tryChild: Node; - catchChild: Node; - followElement: Node; -}; - -type HeadLoopNode = { - id: string; - type: "HeadLoopNode"; - text: string; - child: Node; - followElement: Node; -}; - -type CountLoopNode = { - id: string; - type: "CountLoopNode"; - text: string; - child: Node; - followElement: Node; -}; - -type FunctionNode = { - id: string; - type: "FunctionNode"; - text: string; - parameters: { pos: number; parName: string }[]; - child: Node; - followElement: Node; -}; - -type FootLoopNode = { - id: string; - type: "FootLoopNode"; - text: string; - child: Node; - followElement: Node; -}; - -type CaseNode = { - id: string; - type: "CaseNode"; - text: string; - cases: Node[]; - defaultOn?: boolean; - defaultNode: Node; - followElement: Node; -}; - -type Node = - | InsertNode - | Placeholder - | InsertCase - | InputNode - | OutputNode - | TaskNode - | BranchNode - | TryCatchNode - | HeadLoopNode - | CountLoopNode - | FunctionNode - | FootLoopNode - | CaseNode; - -const config: Record = { - InsertNode: { - color: "rgb(255,255,243)", - }, - Placeholder: { - color: "rgb(255,255,243)", - }, - InsertCase: { - color: "rgb(250, 218, 209)", - }, - InputNode: { - color: "rgb(253, 237, 206)", - }, - OutputNode: { - color: "rgb(253, 237, 206)", - }, - TaskNode: { - color: "rgb(253, 237, 206)", - }, - CountLoopNode: { - color: "rgb(220, 239, 231)", - }, - HeadLoopNode: { - color: "rgb(220, 239, 231)", - }, - FootLoopNode: { - color: "rgb(220, 239, 231)", - }, - BranchNode: { - color: "rgb(250, 218, 209)", - }, - CaseNode: { - color: "rgb(250, 218, 209)", - }, - FunctionNode: { - color: "rgb(255, 255, 255)", - }, - TryCatchNode: { - color: "rgb(250, 218, 209)", - }, -}; - -const InsertNode: FC = ({ followElement }) => { - return followElement && ; -}; - -const Placeholder: FC = () => { - return ( -
-
-
-
-
- ); -}; - -const InsertCase: FC = ({ text, followElement }) => { - return ( - -
-
-
-
- {text} -
-
-
-
- {followElement && } -
- ); -}; - -const InputNode: FC = ({ text, followElement }) => { - return ( - -
-
-
-
- E: {text} -
-
-
-
- {followElement && } -
- ); -}; - -const OutputNode: FC = ({ text, followElement }) => { - return ( - -
-
-
-
- A: {text} -
-
-
-
- {followElement && } -
- ); -}; - -const TaskNode: FC = ({ followElement, text }) => { - return ( - -
-
-
-
- {text} -
-
-
-
- {followElement && } -
- ); -}; - -const BranchNode: FC = ({ - text, - followElement, - falseChild, - trueChild, -}) => { - return ( - -
-
-
-
-
-
- {text} -
-
-
-
-
Wahr
-
Falsch
-
-
-
-
- {trueChild && } -
-
- {falseChild && } -
-
-
-
- {followElement && } -
- ); -}; - -const TryCatchNode: FC = ({ - tryChild, - catchChild, - followElement, - text, -}) => { - return ( - -
-
-
-
Try
-
-
-
- {tryChild && } -
-
-
-
-
-
-
-
-
-
Catch
-
-
- {text} -
-
-
-
-
- {catchChild && } -
-
-
- {followElement && } -
- ); -}; - -const HeadLoopNode: FC = ({ followElement, text, child }) => { - return ( -
-
-
-
-
- {text} -
-
-
-
-
- {child && } -
-
- {followElement && } -
-
- ); -}; - -const CountLoopNode: FC = ({ followElement, text, child }) => { - return ( -
-
-
-
-
- {text} -
-
-
-
-
- {child && } -
-
- {followElement && } -
-
- ); -}; - -const FunctionNode: FC = ({ - followElement, - child, - text, - parameters, -}) => { - return ( - -
-
-
- function -
-
-
- {text} ({parameters.map((p) => p.parName).join(", ")}) {`{`} -
-
-
-
-
- {child && } -
-
-
-
-
-
-
-
-
{`}`}
-
-
-
- {followElement && } -
- ); -}; - -const FootLoopNode: FC = ({ child, followElement, text }) => { - return ( - -
-
-
-
- {child && } -
-
-
-
-
-
- {text} -
-
-
-
-
- {followElement && } - - ); -}; - -const CaseNode: FC = ({ - defaultOn, - cases, - text, - defaultNode, - followElement, -}) => { - const headClassNames = ["vcontainer", "fixedHeight"]; - const bodyClassNames = ["columnAuto", "container"]; - - let nrCases = cases.length; - if (defaultOn) { - headClassNames.push(`caseHead-${nrCases}`); - bodyClassNames.push(`caseBody-${nrCases}`); - } else { - headClassNames.push(`caseHead-noDefault-${nrCases}`); - bodyClassNames.push(`caseBody-${nrCases - 1}`); - nrCases = nrCases + 2; - } - return ( - -
-
-
-
-
- - {text} - -
-
-
-
- {cases.map((c, i) => ( -
- -
- ))} -
- -
-
-
-
- {followElement && } -
- ); -}; - -const Node: FC = (props) => { - switch (props.type) { - case "FootLoopNode": - return ; - case "HeadLoopNode": - return ; - case "InputNode": - return ; - case "InsertCase": - return ; - case "CaseNode": - return ; - case "FunctionNode": - return ; - case "CountLoopNode": - return ; - case "TryCatchNode": - return ; - case "BranchNode": - return ; - case "TaskNode": - return ; - case "Placeholder": - return ; - case "OutputNode": - return ; - case "InsertNode": - return ; - } -}; - -type State = { - model: Node; - width: number; - height: number; -}; - -type DirectiveStruktogProps = { - data: string; -}; - -const DirectiveStruktog: FC = ({ data }) => { - try { - data = data.replace(new RegExp("https://struktog.openpatch.org/?#"), ""); - const state = deserializeState(data); - - return ( - - ); - } catch (e) { - return ( -
-
- We can not parse the provided data. Please check if it is correct. -
-
- ); - } -}; - -export default { - directives: { struktog: DirectiveStruktog }, -}; diff --git a/packages/element-struktog/tsconfig.build.json b/packages/element-struktog/tsconfig.build.json deleted file mode 100644 index e8415085..00000000 --- a/packages/element-struktog/tsconfig.build.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["src", "../../types"], - "compilerOptions": { - "rootDir": "src", - "declarationDir": "dist" - } -} diff --git a/packages/element-struktog/tsconfig.json b/packages/element-struktog/tsconfig.json deleted file mode 100644 index f068abe3..00000000 --- a/packages/element-struktog/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "include": ["src", "../../types", "tests"] -} diff --git a/packages/element-tabs/CHANGELOG.md b/packages/element-tabs/CHANGELOG.md deleted file mode 100644 index 499c4866..00000000 --- a/packages/element-tabs/CHANGELOG.md +++ /dev/null @@ -1,159 +0,0 @@ -# @hyperbook/element-tabs - -## 0.2.2 - -### Patch Changes - -- [`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23)]: - - @hyperbook/provider@0.4.2 - - @hyperbook/store@0.2.1 - -## 0.2.1 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.4.1 - -## 0.2.0 - -### Minor Changes - -- [`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Move to pure ESM packages - -### Patch Changes - -- Updated dependencies [[`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de)]: - - @hyperbook/provider@0.4.0 - - @hyperbook/store@0.2.0 - -## 0.1.15 - -### Patch Changes - -- Updated dependencies [[`902c0b3`](https://github.com/openpatch/hyperbook/commit/902c0b30a0aa97984350cfd58ad88d38ef7b4cd6)]: - - @hyperbook/provider@0.3.0 - -## 0.1.14 - -### Patch Changes - -- [`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - fix data not defined - -- Updated dependencies [[`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1)]: - - @hyperbook/provider@0.2.5 - - @hyperbook/store@0.1.5 - -## 0.1.13 - -### Patch Changes - -- [`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update packages - -- Updated dependencies [[`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e)]: - - @hyperbook/provider@0.2.4 - - @hyperbook/store@0.1.4 - -## 0.1.12 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.3 - -## 0.1.11 - -### Patch Changes - -- [`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37)]: - - @hyperbook/provider@0.2.2 - - @hyperbook/store@0.1.3 - -## 0.1.10 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.1 - -## 0.1.9 - -### Patch Changes - -- Updated dependencies [[`8d53899`](https://github.com/openpatch/hyperbook/commit/8d538999fc924f7b3e3115416cba4978c9589b68)]: - - @hyperbook/provider@0.2.0 - -## 0.1.8 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.7 - -## 0.1.7 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.6 - -## 0.1.6 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.5 - -## 0.1.5 - -### Patch Changes - -- Fix error when no tab is present. - -## 0.1.4 - -### Patch Changes - -- Updated dependencies [[`cedb551`](https://github.com/openpatch/hyperbook/commit/cedb55191fd025b5a214df406a53cbab5d1b1bc1)]: - - @hyperbook/provider@0.1.4 - -## 0.1.3 - -### Patch Changes - -- Updated dependencies [[`c3e747a`](https://github.com/openpatch/hyperbook/commit/c3e747ab7b95c3e526b3800b169aa8f505f9b9a2)]: - - @hyperbook/provider@0.1.3 - -## 0.1.2 - -### Patch Changes - -- [`2c34554`](https://github.com/openpatch/hyperbook/commit/2c34554f64359fb995190b1465daddfa3e0101c0) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - try to overcome issues with @redux/toolkit not supporting esm modules the way nextjs likes it. - -- Updated dependencies [[`2c34554`](https://github.com/openpatch/hyperbook/commit/2c34554f64359fb995190b1465daddfa3e0101c0)]: - - @hyperbook/provider@0.1.2 - - @hyperbook/store@0.1.2 - -## 0.1.1 - -### Patch Changes - -- [`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Force package update due to failed pipeline - -- Updated dependencies [[`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00)]: - - @hyperbook/provider@0.1.1 - -## 0.1.0 - -### Minor Changes - -- [`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Extract feature in separate packages. This allows for easier development of new templates and allows enables to make changes more transparent. - -### Patch Changes - -- Updated dependencies [[`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8)]: - - @hyperbook/provider@0.1.0 diff --git a/packages/element-tabs/README.md b/packages/element-tabs/README.md deleted file mode 100644 index e6a30f56..00000000 --- a/packages/element-tabs/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# @hyperbook/element-tabs - -## Installation - -```sh -yarn add @hyperbook/element-tabs -# or -npm i @hyperbook/element-tabs -``` diff --git a/packages/element-tabs/package.json b/packages/element-tabs/package.json deleted file mode 100644 index e549a9e9..00000000 --- a/packages/element-tabs/package.json +++ /dev/null @@ -1,55 +0,0 @@ -{ - "name": "@hyperbook/element-tabs", - "version": "0.2.2", - "author": "Mike Barkmin", - "homepage": "https://github.com/openpatch/hyperbook#readme", - "license": "MIT", - "type": "module", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "sideEffects": false, - "exports": { - ".": "./dist/index.js", - "./index.css": "./dist/index.css" - }, - "files": [ - "dist" - ], - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/element-tabs" - }, - "bugs": { - "url": "https://github.com/openpatch/hyperbook/issues" - }, - "scripts": { - "version": "pnpm build", - "lint": "tsc --noEmit", - "build": "rimraf dist && pnpm build:pkg && pnpm build:types", - "build:pkg": "node ../../scripts/build.mjs", - "build:types": "tsc --project tsconfig.build.json --declaration --emitDeclarationOnly" - }, - "peerDependencies": { - "react": "18.x", - "react-dom": "18.x", - "react-redux": "9.x" - }, - "devDependencies": { - "@reduxjs/toolkit": "2.2.5", - "@types/object-hash": "3.0.6", - "@types/react": "18.3.2", - "@types/react-dom": "18.3.0", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-redux": "9.1.2" - }, - "dependencies": { - "@hyperbook/provider": "workspace:*", - "@hyperbook/store": "workspace:*", - "object-hash": "3.0.0" - } -} diff --git a/packages/element-tabs/src/index.tsx b/packages/element-tabs/src/index.tsx deleted file mode 100644 index 83c82c31..00000000 --- a/packages/element-tabs/src/index.tsx +++ /dev/null @@ -1,99 +0,0 @@ -import { FC, Fragment, ReactNode } from "react"; -import { createSlice } from "@hyperbook/store"; -import type { Slice, PayloadAction } from "@reduxjs/toolkit"; -import { useActivePageId } from "@hyperbook/provider"; -import hash from "object-hash"; -import { useDispatch, useSelector } from "react-redux"; -import "./index.css"; - -type DirectiveTabsProps = { - children?: ReactNode; - node: any; - id: string; -}; - -const DirectiveTabs: FC = ({ id, node, children }) => { - const [activePageId] = useActivePageId(); - - if (!id) { - id = hash(node); - } - - id = activePageId + "." + id; - - let activeTab = useSelector(selectActive(id)); - const dispatch = useDispatch(); - - const tabs: { title: string; id: string; index: number }[] = - node.children?.map((c: any, i: number) => { - return { - title: c.properties?.title || "", - id: c.properties?.id || c.properties?.title, - index: i, - }; - }); - - const setActiveTab = (tab: string) => { - dispatch(sliceTabs.actions.setActive({ id, tab })); - }; - - if (activeTab == null) { - activeTab = tabs?.[0]?.id; - } - - return ( -
-
- {tabs.map(({ title, id, index }) => ( - - ))} -
- {tabs?.map( - ({ id, index }) => - activeTab === id && ( -
- {(children as any)?.[index]} -
- ) - )} -
- ); -}; - -type DirectiveTabProps = { - children?: ReactNode; -}; - -const DirectiveTab: FC = ({ children }) => { - return {children}; -}; - -type ElementTabsState = Record; - -const initialState: ElementTabsState = {}; - -const sliceTabs = createSlice({ - name: "element.tabs", - initialState, - reducers: { - setActive: (state, action: PayloadAction<{ id: string; tab: string }>) => { - state[action.payload.id] = action.payload.tab; - }, - }, -}); - -const selectActive = - (tab: string) => (state: { "element.tabs": ElementTabsState }) => { - return state?.[sliceTabs.name]?.[tab]; - }; - -export default { - directives: { tabs: DirectiveTabs, tab: DirectiveTab }, - slice: sliceTabs as Slice, -}; diff --git a/packages/element-tabs/tsconfig.build.json b/packages/element-tabs/tsconfig.build.json deleted file mode 100644 index e8415085..00000000 --- a/packages/element-tabs/tsconfig.build.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["src", "../../types"], - "compilerOptions": { - "rootDir": "src", - "declarationDir": "dist" - } -} diff --git a/packages/element-tabs/tsconfig.json b/packages/element-tabs/tsconfig.json deleted file mode 100644 index f068abe3..00000000 --- a/packages/element-tabs/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "include": ["src", "../../types", "tests"] -} diff --git a/packages/element-term/CHANGELOG.md b/packages/element-term/CHANGELOG.md deleted file mode 100644 index dd2502ba..00000000 --- a/packages/element-term/CHANGELOG.md +++ /dev/null @@ -1,145 +0,0 @@ -# @hyperbook/element-term - -## 0.2.2 - -### Patch Changes - -- [`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23)]: - - @hyperbook/provider@0.4.2 - -## 0.2.1 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.4.1 - -## 0.2.0 - -### Minor Changes - -- [`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Move to pure ESM packages - -### Patch Changes - -- Updated dependencies [[`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de)]: - - @hyperbook/provider@0.4.0 - -## 0.1.14 - -### Patch Changes - -- Updated dependencies [[`902c0b3`](https://github.com/openpatch/hyperbook/commit/902c0b30a0aa97984350cfd58ad88d38ef7b4cd6)]: - - @hyperbook/provider@0.3.0 - -## 0.1.13 - -### Patch Changes - -- [`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - fix data not defined - -- Updated dependencies [[`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1)]: - - @hyperbook/provider@0.2.5 - -## 0.1.12 - -### Patch Changes - -- [`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update packages - -- Updated dependencies [[`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e)]: - - @hyperbook/provider@0.2.4 - -## 0.1.11 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.3 - -## 0.1.10 - -### Patch Changes - -- [`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37)]: - - @hyperbook/provider@0.2.2 - -## 0.1.9 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.1 - -## 0.1.8 - -### Patch Changes - -- Updated dependencies [[`8d53899`](https://github.com/openpatch/hyperbook/commit/8d538999fc924f7b3e3115416cba4978c9589b68)]: - - @hyperbook/provider@0.2.0 - -## 0.1.7 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.7 - -## 0.1.6 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.6 - -## 0.1.5 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.5 - -## 0.1.4 - -### Patch Changes - -- Updated dependencies [[`cedb551`](https://github.com/openpatch/hyperbook/commit/cedb55191fd025b5a214df406a53cbab5d1b1bc1)]: - - @hyperbook/provider@0.1.4 - -## 0.1.3 - -### Patch Changes - -- Updated dependencies [[`c3e747a`](https://github.com/openpatch/hyperbook/commit/c3e747ab7b95c3e526b3800b169aa8f505f9b9a2)]: - - @hyperbook/provider@0.1.3 - -## 0.1.2 - -### Patch Changes - -- Updated dependencies [[`2c34554`](https://github.com/openpatch/hyperbook/commit/2c34554f64359fb995190b1465daddfa3e0101c0)]: - - @hyperbook/provider@0.1.2 - -## 0.1.1 - -### Patch Changes - -- [`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Force package update due to failed pipeline - -- Updated dependencies [[`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00)]: - - @hyperbook/provider@0.1.1 - -## 0.1.0 - -### Minor Changes - -- [`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Extract feature in separate packages. This allows for easier development of new templates and allows enables to make changes more transparent. - -### Patch Changes - -- Updated dependencies [[`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8)]: - - @hyperbook/provider@0.1.0 diff --git a/packages/element-term/README.md b/packages/element-term/README.md deleted file mode 100644 index 1ab53e8e..00000000 --- a/packages/element-term/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# @hyperbook/element-term - -## Installation - -```sh -yarn add @hyperbook/element-term -# or -npm i @hyperbook/element-term -``` diff --git a/packages/element-term/package.json b/packages/element-term/package.json deleted file mode 100644 index 03dfef27..00000000 --- a/packages/element-term/package.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "name": "@hyperbook/element-term", - "version": "0.2.2", - "author": "Mike Barkmin", - "homepage": "https://github.com/openpatch/hyperbook#readme", - "license": "MIT", - "type": "module", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "sideEffects": false, - "exports": { - ".": "./dist/index.js", - "./index.css": "./dist/index.css" - }, - "files": [ - "dist" - ], - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/element-term" - }, - "bugs": { - "url": "https://github.com/openpatch/hyperbook/issues" - }, - "scripts": { - "version": "pnpm build", - "lint": "tsc --noEmit", - "build": "rimraf dist && pnpm build:pkg && pnpm build:types", - "build:pkg": "node ../../scripts/build.mjs", - "build:types": "tsc --project tsconfig.build.json --declaration --emitDeclarationOnly" - }, - "dependencies": { - "@hyperbook/provider": "workspace:*" - }, - "peerDependencies": { - "@reduxjs/toolkit": "2.x", - "react": "18.x", - "react-dom": "18.x", - "react-redux": "9.x" - }, - "devDependencies": { - "@types/react": "18.3.2", - "@types/react-dom": "18.3.0", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-redux": "9.1.2", - "@reduxjs/toolkit": "2.2.5" - } -} diff --git a/packages/element-term/src/index.css b/packages/element-term/src/index.css deleted file mode 100644 index e69de29b..00000000 diff --git a/packages/element-term/src/index.tsx b/packages/element-term/src/index.tsx deleted file mode 100644 index 9bac103c..00000000 --- a/packages/element-term/src/index.tsx +++ /dev/null @@ -1,28 +0,0 @@ -import { FC, ReactNode } from "react"; -import { useLink } from "@hyperbook/provider"; -import "./index.css"; - -type DirectiveTermProps = { - children?: ReactNode; - id: string; - className?: string; -}; - -const DirectiveTerm: FC = ({ id, children, className }) => { - const Link = useLink(); - if (!id) { - id = (children as any)?.[0].toLowerCase().replaceAll(" ", "-"); - } - - let href = `/glossary/${id}`; - - if (className && typeof className[0] == "string") { - href += `#${className}`; - } - - return {children}; -}; - -export default { - directives: { term: DirectiveTerm, t: DirectiveTerm }, -}; diff --git a/packages/element-term/tsconfig.build.json b/packages/element-term/tsconfig.build.json deleted file mode 100644 index e8415085..00000000 --- a/packages/element-term/tsconfig.build.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["src", "../../types"], - "compilerOptions": { - "rootDir": "src", - "declarationDir": "dist" - } -} diff --git a/packages/element-term/tsconfig.json b/packages/element-term/tsconfig.json deleted file mode 100644 index f068abe3..00000000 --- a/packages/element-term/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "include": ["src", "../../types", "tests"] -} diff --git a/packages/element-tiles/CHANGELOG.md b/packages/element-tiles/CHANGELOG.md deleted file mode 100644 index 7ea09e62..00000000 --- a/packages/element-tiles/CHANGELOG.md +++ /dev/null @@ -1,36 +0,0 @@ -# @hyperbook/element-tiles - -## 0.1.4 - -### Patch Changes - -- [`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23)]: - - @hyperbook/provider@0.4.2 - - @hyperbook/store@0.2.1 - -## 0.1.3 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.4.1 - -## 0.1.2 - -### Patch Changes - -- [`2eca214`](https://github.com/openpatch/hyperbook/commit/2eca214b355e3cdfec59f21cc067539666cdf5f7) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Fix not using baseUrl - -## 0.1.1 - -### Patch Changes - -- [`add7313`](https://github.com/openpatch/hyperbook/commit/add7313099754952f27a5de4534607b55043f898) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - use type module for tiles package - -## 0.1.0 - -### Minor Changes - -- [`1e92522`](https://github.com/openpatch/hyperbook/commit/1e925225fb8329ddc7b26317ec7779ee008da6a2) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - add tiles diff --git a/packages/element-tiles/README.md b/packages/element-tiles/README.md deleted file mode 100644 index 42117773..00000000 --- a/packages/element-tiles/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# @hyperbook/element-tiles - -## Installation - -```sh -yarn add @hyperbook/element-tiles -# or -npm i @hyperbook/element-tiles -``` diff --git a/packages/element-tiles/package.json b/packages/element-tiles/package.json deleted file mode 100644 index ee043994..00000000 --- a/packages/element-tiles/package.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "name": "@hyperbook/element-tiles", - "version": "0.1.4", - "author": "Mike Barkmin", - "homepage": "https://github.com/openpatch/hyperbook#readme", - "license": "MIT", - "type": "module", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "sideEffects": false, - "exports": { - ".": "./dist/index.js", - "./index.css": "./dist/index.css" - }, - "files": [ - "dist" - ], - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/element-tiles" - }, - "bugs": { - "url": "https://github.com/openpatch/hyperbook/issues" - }, - "scripts": { - "version": "pnpm build", - "lint": "tsc --noEmit", - "build": "rimraf dist && pnpm build:pkg && pnpm build:types", - "build:pkg": "node ../../scripts/build.mjs", - "build:types": "tsc --project tsconfig.build.json --declaration --emitDeclarationOnly" - }, - "dependencies": { - "@hyperbook/provider": "workspace:*", - "@hyperbook/store": "workspace:*" - }, - "peerDependencies": { - "react": "18.x", - "react-dom": "18.x", - "react-redux": "9.x" - }, - "devDependencies": { - "@reduxjs/toolkit": "2.2.5", - "@types/react": "18.3.2", - "@types/react-dom": "18.3.0", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-redux": "9.1.2", - "vitest": "^1.6.0" - } -} diff --git a/packages/element-tiles/src/index.tsx b/packages/element-tiles/src/index.tsx deleted file mode 100644 index 3994c41d..00000000 --- a/packages/element-tiles/src/index.tsx +++ /dev/null @@ -1,59 +0,0 @@ -import { FC, ReactNode } from "react"; -import { createSlice } from "@hyperbook/store"; -import type { Slice } from "@reduxjs/toolkit"; -import "./index.css"; -import { useMakeUrl } from "@hyperbook/provider"; - -type DirectiveTilesProps = { - children?: ReactNode; -}; - -const DirectiveTiles: FC = ({ children }) => { - return ( -
-
    {children}
-
- ); -}; - -type DirectiveTileProps = { - size?: "S" | "M" | "L"; - title?: string; - description?: string; - href?: string; - icon?: string; -}; - -const DirectiveTile: FC = ({ - size = "M", - title, - href, - icon, -}) => { - const makeUrl = useMakeUrl(); - href = makeUrl(href, "public"); - icon = makeUrl(icon, "public"); - return ( -
  • - - {title} - - {icon && } -
  • - ); -}; - -type ElementTilesState = {}; - -const initialState: ElementTilesState = {}; - -const sliceTiles = createSlice({ - name: "element.tiles", - initialState, - reducers: {}, -}); - -export default { - directives: { tiles: DirectiveTiles, tile: DirectiveTile }, - slice: sliceTiles as Slice, -}; diff --git a/packages/element-tiles/tsconfig.build.json b/packages/element-tiles/tsconfig.build.json deleted file mode 100644 index e8415085..00000000 --- a/packages/element-tiles/tsconfig.build.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["src", "../../types"], - "compilerOptions": { - "rootDir": "src", - "declarationDir": "dist" - } -} diff --git a/packages/element-tiles/tsconfig.json b/packages/element-tiles/tsconfig.json deleted file mode 100644 index f068abe3..00000000 --- a/packages/element-tiles/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "include": ["src", "../../types", "tests"] -} diff --git a/packages/element-tiles/vite.config.ts b/packages/element-tiles/vite.config.ts deleted file mode 100644 index 8fb6f2dc..00000000 --- a/packages/element-tiles/vite.config.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineConfig } from "vitest/config"; - -export default defineConfig({}); diff --git a/packages/element-video/CHANGELOG.md b/packages/element-video/CHANGELOG.md deleted file mode 100644 index ee26032f..00000000 --- a/packages/element-video/CHANGELOG.md +++ /dev/null @@ -1,36 +0,0 @@ -# @hyperbook/element-video - -## 0.2.4 - -### Patch Changes - -- [`2bfe682`](https://github.com/openpatch/hyperbook/commit/2bfe6828e578399c405bf4fc52fb1845efe2fb6a) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update packages - -## 0.2.3 - -### Patch Changes - -- [`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23)]: - - @hyperbook/provider@0.4.2 - - @hyperbook/store@0.2.1 - -## 0.2.2 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.4.1 - -## 0.2.1 - -### Patch Changes - -- Fix not using baseUrl - -## 0.2.0 - -### Minor Changes - -- [#847](https://github.com/openpatch/hyperbook/pull/847) [`0b893a3`](https://github.com/openpatch/hyperbook/commit/0b893a39ba9f5e3fffa40fc3ce115bd379f43313) Thanks [@elielmartinsbr](https://github.com/elielmartinsbr)! - add video element diff --git a/packages/element-video/README.md b/packages/element-video/README.md deleted file mode 100644 index 2c8cf3ea..00000000 --- a/packages/element-video/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# @hyperbook/element-video - -## Installation - -```sh -yarn add @hyperbook/element-video -# or -npm i @hyperbook/element-video -``` diff --git a/packages/element-video/package.json b/packages/element-video/package.json deleted file mode 100644 index 676a9842..00000000 --- a/packages/element-video/package.json +++ /dev/null @@ -1,56 +0,0 @@ -{ - "name": "@hyperbook/element-video", - "version": "0.2.4", - "author": "Eliel Martins", - "homepage": "https://github.com/openpatch/hyperbook#readme", - "license": "MIT", - "type": "module", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "sideEffects": false, - "exports": { - ".": "./dist/index.js", - "./index.css": "./dist/index.css" - }, - "files": [ - "dist" - ], - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/element-video" - }, - "bugs": { - "url": "https://github.com/openpatch/hyperbook/issues" - }, - "scripts": { - "version": "pnpm build", - "lint": "tsc --noEmit", - "build": "rimraf dist && pnpm build:pkg && pnpm build:types", - "build:pkg": "node ../../scripts/build.mjs", - "build:types": "tsc --project tsconfig.build.json --declaration --emitDeclarationOnly" - }, - "dependencies": { - "@hyperbook/provider": "workspace:*", - "@hyperbook/store": "workspace:*", - "@types/wavesurfer.js": "^6.0.12", - "wavesurfer.js": "^7.8.6" - }, - "peerDependencies": { - "react": "18.x", - "react-dom": "18.x", - "react-redux": "9.x" - }, - "devDependencies": { - "@reduxjs/toolkit": "2.2.5", - "@types/react": "18.3.2", - "@types/react-dom": "18.3.0", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-redux": "9.1.2", - "vitest": "^1.6.0" - } -} diff --git a/packages/element-video/src/index.tsx b/packages/element-video/src/index.tsx deleted file mode 100644 index e3a29784..00000000 --- a/packages/element-video/src/index.tsx +++ /dev/null @@ -1,53 +0,0 @@ -import { FC } from "react"; -import { createSlice } from "@hyperbook/store"; -import type { Slice } from "@reduxjs/toolkit"; -import { useMakeUrl } from "@hyperbook/provider"; -import "./index.css"; - -type DirectiveVideoProps = { - src: string; - title?: string; - author?: string; - poster?: string; -}; - -const DirectiveVideo: FC = ({ - src, - title, - author, - poster, -}) => { - const makeUrl = useMakeUrl(); - src = makeUrl(src, "public"); - poster = makeUrl(poster, "public"); - - return ( -
    -
    - -
    -
    - {title && {title}}{" "} - {title && author && -}{" "} - {author && {author}}{" "} -
    -
    - ); -}; - -type ElementVideoState = {}; - -const initialState: ElementVideoState = {}; - -const sliceVideo = createSlice({ - name: "element.video", - initialState, - reducers: {}, -}); - -export default { - directives: { video: DirectiveVideo }, - slice: sliceVideo as Slice, -}; diff --git a/packages/element-video/tsconfig.build.json b/packages/element-video/tsconfig.build.json deleted file mode 100644 index e8415085..00000000 --- a/packages/element-video/tsconfig.build.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["src", "../../types"], - "compilerOptions": { - "rootDir": "src", - "declarationDir": "dist" - } -} diff --git a/packages/element-video/tsconfig.json b/packages/element-video/tsconfig.json deleted file mode 100644 index f068abe3..00000000 --- a/packages/element-video/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "include": ["src", "../../types", "tests"] -} diff --git a/packages/element-video/vite.config.ts b/packages/element-video/vite.config.ts deleted file mode 100644 index 8fb6f2dc..00000000 --- a/packages/element-video/vite.config.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineConfig } from "vitest/config"; - -export default defineConfig({}); diff --git a/packages/element-youtube/CHANGELOG.md b/packages/element-youtube/CHANGELOG.md deleted file mode 100644 index 5fcefa57..00000000 --- a/packages/element-youtube/CHANGELOG.md +++ /dev/null @@ -1,145 +0,0 @@ -# @hyperbook/element-youtube - -## 0.2.2 - -### Patch Changes - -- [`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23)]: - - @hyperbook/provider@0.4.2 - -## 0.2.1 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.4.1 - -## 0.2.0 - -### Minor Changes - -- [`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Move to pure ESM packages - -### Patch Changes - -- Updated dependencies [[`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de)]: - - @hyperbook/provider@0.4.0 - -## 0.1.14 - -### Patch Changes - -- Updated dependencies [[`902c0b3`](https://github.com/openpatch/hyperbook/commit/902c0b30a0aa97984350cfd58ad88d38ef7b4cd6)]: - - @hyperbook/provider@0.3.0 - -## 0.1.13 - -### Patch Changes - -- [`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - fix data not defined - -- Updated dependencies [[`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1)]: - - @hyperbook/provider@0.2.5 - -## 0.1.12 - -### Patch Changes - -- [`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update packages - -- Updated dependencies [[`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e)]: - - @hyperbook/provider@0.2.4 - -## 0.1.11 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.3 - -## 0.1.10 - -### Patch Changes - -- [`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37)]: - - @hyperbook/provider@0.2.2 - -## 0.1.9 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.1 - -## 0.1.8 - -### Patch Changes - -- Updated dependencies [[`8d53899`](https://github.com/openpatch/hyperbook/commit/8d538999fc924f7b3e3115416cba4978c9589b68)]: - - @hyperbook/provider@0.2.0 - -## 0.1.7 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.7 - -## 0.1.6 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.6 - -## 0.1.5 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.5 - -## 0.1.4 - -### Patch Changes - -- Updated dependencies [[`cedb551`](https://github.com/openpatch/hyperbook/commit/cedb55191fd025b5a214df406a53cbab5d1b1bc1)]: - - @hyperbook/provider@0.1.4 - -## 0.1.3 - -### Patch Changes - -- Updated dependencies [[`c3e747a`](https://github.com/openpatch/hyperbook/commit/c3e747ab7b95c3e526b3800b169aa8f505f9b9a2)]: - - @hyperbook/provider@0.1.3 - -## 0.1.2 - -### Patch Changes - -- Updated dependencies [[`2c34554`](https://github.com/openpatch/hyperbook/commit/2c34554f64359fb995190b1465daddfa3e0101c0)]: - - @hyperbook/provider@0.1.2 - -## 0.1.1 - -### Patch Changes - -- [`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Force package update due to failed pipeline - -- Updated dependencies [[`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00)]: - - @hyperbook/provider@0.1.1 - -## 0.1.0 - -### Minor Changes - -- [`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Extract feature in separate packages. This allows for easier development of new templates and allows enables to make changes more transparent. - -### Patch Changes - -- Updated dependencies [[`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8)]: - - @hyperbook/provider@0.1.0 diff --git a/packages/element-youtube/README.md b/packages/element-youtube/README.md deleted file mode 100644 index dfec20d8..00000000 --- a/packages/element-youtube/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# @hyperbook/element-youtube - -## Installation - -```sh -yarn add @hyperbook/element-youtube -# or -npm i @hyperbook/element-youtube -``` diff --git a/packages/element-youtube/package.json b/packages/element-youtube/package.json deleted file mode 100644 index 2480144f..00000000 --- a/packages/element-youtube/package.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "name": "@hyperbook/element-youtube", - "version": "0.2.2", - "author": "Mike Barkmin", - "homepage": "https://github.com/openpatch/hyperbook#readme", - "license": "MIT", - "type": "module", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "sideEffects": false, - "exports": { - ".": "./dist/index.js", - "./index.css": "./dist/index.css" - }, - "files": [ - "dist" - ], - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/element-youtube" - }, - "bugs": { - "url": "https://github.com/openpatch/hyperbook/issues" - }, - "scripts": { - "version": "pnpm build", - "lint": "tsc --noEmit", - "build": "rimraf dist && pnpm build:pkg && pnpm build:types", - "build:pkg": "node ../../scripts/build.mjs", - "build:types": "tsc --project tsconfig.build.json --declaration --emitDeclarationOnly" - }, - "dependencies": { - "@hyperbook/provider": "workspace:*" - }, - "peerDependencies": { - "@reduxjs/toolkit": "2.x", - "react": "18.x", - "react-dom": "18.x", - "react-redux": "9.x" - }, - "devDependencies": { - "@types/react": "18.3.2", - "@types/react-dom": "18.3.0", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-redux": "9.1.2", - "@reduxjs/toolkit": "2.2.5" - } -} diff --git a/packages/element-youtube/src/index.tsx b/packages/element-youtube/src/index.tsx deleted file mode 100644 index 38423115..00000000 --- a/packages/element-youtube/src/index.tsx +++ /dev/null @@ -1,24 +0,0 @@ -import { FC, ReactNode } from "react"; -import "./index.css"; - -type DirectiveYoutubeProps = { - children?: ReactNode; - id: string; -}; - -const DirectiveYoutube: FC = ({ children, id }) => { - return ( -
    - +
    +
    +
    +
    +
    © Copyright 2024
    " +`; + +exports[`process > should transfrom complex context 1`] = ` +"Markdown Referenz - Hyperbook Dokumenation" +`; diff --git a/packages/markdown/tests/__snapshots__/rehypeTableOfContents.test.ts.snap b/packages/markdown/tests/__snapshots__/rehypeTableOfContents.test.ts.snap new file mode 100644 index 00000000..4b0c08de --- /dev/null +++ b/packages/markdown/tests/__snapshots__/rehypeTableOfContents.test.ts.snap @@ -0,0 +1,26 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`remarkTableOfContents > should generate toc 1`] = ` +" +
    + +
    + +
    +
    +

    H1

    +

    H2a

    +

    H3b

    +

    H2b

    +

    H3b

    +
    +" +`; diff --git a/packages/markdown/tests/__snapshots__/remarkCollectHeadings.test.ts.snap b/packages/markdown/tests/__snapshots__/remarkCollectHeadings.test.ts.snap new file mode 100644 index 00000000..5029abf7 --- /dev/null +++ b/packages/markdown/tests/__snapshots__/remarkCollectHeadings.test.ts.snap @@ -0,0 +1,33 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`remarkCollectHeadings > should collect 1`] = ` +{ + "headings": [ + { + "anchor": "h1", + "label": "H1", + "level": 1, + }, + { + "anchor": "h2a", + "label": "H2a", + "level": 2, + }, + { + "anchor": "h3b", + "label": "H3b", + "level": 3, + }, + { + "anchor": "h2b", + "label": "H2b", + "level": 2, + }, + { + "anchor": "h3b", + "label": "H3b", + "level": 3, + }, + ], +} +`; diff --git a/packages/markdown/tests/__snapshots__/remarkDirectiveAlert.test.ts.snap b/packages/markdown/tests/__snapshots__/remarkDirectiveAlert.test.ts.snap new file mode 100644 index 00000000..649b4f6f --- /dev/null +++ b/packages/markdown/tests/__snapshots__/remarkDirectiveAlert.test.ts.snap @@ -0,0 +1,21 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`remarkDirectiveAlert > should transform 1`] = ` +" +
    +

    Default

    +
    +
    +

    Error

    +
    +
    +

    Success

    +
    +
    +

    Info

    +
    +
    +

    Warn

    +
    +" +`; diff --git a/packages/markdown/tests/__snapshots__/remarkDirectiveAudio.test.ts.snap b/packages/markdown/tests/__snapshots__/remarkDirectiveAudio.test.ts.snap new file mode 100644 index 00000000..38fa24e0 --- /dev/null +++ b/packages/markdown/tests/__snapshots__/remarkDirectiveAudio.test.ts.snap @@ -0,0 +1,13 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`remarkDirectiveAudio > should transform 1`] = ` +" +
    +
    +
    +
    +
    +
    Hallo - Max Mustermann
    +
    +" +`; diff --git a/packages/markdown/tests/__snapshots__/remarkDirectiveCollapsible.test.ts.snap b/packages/markdown/tests/__snapshots__/remarkDirectiveCollapsible.test.ts.snap new file mode 100644 index 00000000..469a1c31 --- /dev/null +++ b/packages/markdown/tests/__snapshots__/remarkDirectiveCollapsible.test.ts.snap @@ -0,0 +1,22 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`remarkDirectiveCollapsible > should transform 1`] = ` +" +
    +
    +

    This is a panel

    + +
    +

    This is a stacked collapsible

    + Test +
    +

    This is normal Test in-between.

    +
    +

    + +

    +
    +
    +
    +" +`; diff --git a/packages/markdown/tests/__snapshots__/remarkDirectiveEmbed.test.ts.snap b/packages/markdown/tests/__snapshots__/remarkDirectiveEmbed.test.ts.snap new file mode 100644 index 00000000..7405c601 --- /dev/null +++ b/packages/markdown/tests/__snapshots__/remarkDirectiveEmbed.test.ts.snap @@ -0,0 +1,9 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`remarkDirectiveEmbed > should transform 1`] = ` +" +
    + +
    +" +`; diff --git a/packages/markdown/tests/__snapshots__/remarkDirectiveMermaid.test.ts.snap b/packages/markdown/tests/__snapshots__/remarkDirectiveMermaid.test.ts.snap new file mode 100644 index 00000000..c5b12c2e --- /dev/null +++ b/packages/markdown/tests/__snapshots__/remarkDirectiveMermaid.test.ts.snap @@ -0,0 +1,93 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`remarkDirectiveMermaid > should transform 1`] = ` +" +
    classDiagram
    +Animal <|-- Duck
    +Animal <|-- Fish
    +Animal <|-- Zebra
    +Animal : +int age
    +Animal : +String gender
    +Animal: +isMammal()
    +Animal: +mate()
    +class Duck{
    ++String beakColor
    ++swim()
    ++quack()
    +}
    +class Fish{
    +-int sizeInFeet
    +-canEat()
    +}
    +class Zebra{
    ++bool is_wild
    ++run()
    +}
    +" +`; + +exports[`remarkDirectiveMermaid > should transform code 1`] = ` +" +
    classDiagram
    +    Animal <|-- Duck
    +    Animal <|-- Fish
    +    Animal <|-- Zebra
    +    Animal : +int age
    +    Animal : +String gender
    +    Animal: +isMammal()
    +    Animal: +mate()
    +    class Duck{
    +      +String beakColor
    +      +swim()
    +      +quack()
    +    }
    +    class Fish{
    +      -int sizeInFeet
    +      -canEat()
    +    }
    +    class Zebra{
    +      +bool is_wild
    +      +run()
    +    }
    +" +`; diff --git a/packages/markdown/tests/__snapshots__/remarkDirectivePagelist.test.ts.snap b/packages/markdown/tests/__snapshots__/remarkDirectivePagelist.test.ts.snap new file mode 100644 index 00000000..88837155 --- /dev/null +++ b/packages/markdown/tests/__snapshots__/remarkDirectivePagelist.test.ts.snap @@ -0,0 +1,324 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`remarkDirectiveEmbed > should filter by keyword 1`] = ` +" + +" +`; + +exports[`remarkDirectiveEmbed > should filter by name 1`] = ` +" +
    + + + +
    +" +`; + +exports[`remarkDirectiveEmbed > should filter by one keyword and a href 1`] = ` +" +
    + + + +
    +" +`; + +exports[`remarkDirectiveEmbed > should filter by two keywords 1`] = ` +" +
    + + + +
    +" +`; + +exports[`remarkDirectiveEmbed > should filter glossary 1`] = ` +" +
    + + + +
    +" +`; + +exports[`remarkDirectiveEmbed > should filter glossary and format as glossary 1`] = ` +" +
    +
    +
    O
    + +
    +
    +" +`; + +exports[`remarkDirectiveEmbed > should format as ol 1`] = ` +" + +" +`; + +exports[`remarkDirectiveEmbed > should format as ul 1`] = ` +" + +" +`; + +exports[`remarkDirectiveEmbed > should sort by name asc 1`] = ` +" + +" +`; + +exports[`remarkDirectiveEmbed > should sort by name desc 1`] = ` +" + +" +`; + +exports[`remarkDirectiveEmbed > should transform 1`] = ` +" + +" +`; diff --git a/packages/markdown/tests/__snapshots__/remarkDirectiveQr.test.ts.snap b/packages/markdown/tests/__snapshots__/remarkDirectiveQr.test.ts.snap new file mode 100644 index 00000000..a60c8701 --- /dev/null +++ b/packages/markdown/tests/__snapshots__/remarkDirectiveQr.test.ts.snap @@ -0,0 +1,352 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`remarkDirectiveQr > should transform 1`] = ` +" +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +" +`; diff --git a/packages/markdown/tests/__snapshots__/remarkDirectiveSlideshow.test.ts.snap b/packages/markdown/tests/__snapshots__/remarkDirectiveSlideshow.test.ts.snap new file mode 100644 index 00000000..47b61263 --- /dev/null +++ b/packages/markdown/tests/__snapshots__/remarkDirectiveSlideshow.test.ts.snap @@ -0,0 +1,17 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`remarkDirectiveSlideshow > should transform 1`] = ` +" +
    +
    +
    + Test +
    +
    + Clouds +
    +
    +
    +
    +" +`; diff --git a/packages/markdown/tests/__snapshots__/remarkDirectiveSqlIde.test.ts.snap b/packages/markdown/tests/__snapshots__/remarkDirectiveSqlIde.test.ts.snap new file mode 100644 index 00000000..09f0aff4 --- /dev/null +++ b/packages/markdown/tests/__snapshots__/remarkDirectiveSqlIde.test.ts.snap @@ -0,0 +1,27 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`remarkDirectiveSqlIde > should transform 1`] = ` +" +
    + + +
    +" +`; diff --git a/packages/markdown/tests/__snapshots__/remarkDirectiveStruktog.test.ts.snap b/packages/markdown/tests/__snapshots__/remarkDirectiveStruktog.test.ts.snap new file mode 100644 index 00000000..3b831c95 --- /dev/null +++ b/packages/markdown/tests/__snapshots__/remarkDirectiveStruktog.test.ts.snap @@ -0,0 +1,99 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`remarkDirectiveStruktog > should transform 1`] = ` +" + +" +`; diff --git a/packages/markdown/tests/__snapshots__/remarkDirectiveTabs.test.ts.snap b/packages/markdown/tests/__snapshots__/remarkDirectiveTabs.test.ts.snap new file mode 100644 index 00000000..cfebb2fc --- /dev/null +++ b/packages/markdown/tests/__snapshots__/remarkDirectiveTabs.test.ts.snap @@ -0,0 +1,28 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`remarkDirectiveTabs > should transform 1`] = ` +" +
    +
    +
    +

    Java

    +
    +
    +

    Python

    +
    +
    +

    Another tabs cluster with the same ids.

    +
    +
    +
    +

    Java

    +
    +
    +

    Python

    +
    +
    +

    C

    +
    +
    +" +`; diff --git a/packages/markdown/tests/__snapshots__/remarkDirectiveTerm.test.ts.snap b/packages/markdown/tests/__snapshots__/remarkDirectiveTerm.test.ts.snap new file mode 100644 index 00000000..2e20db32 --- /dev/null +++ b/packages/markdown/tests/__snapshots__/remarkDirectiveTerm.test.ts.snap @@ -0,0 +1,19 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`remarkDirectiveTerm > should infer id from text 1`] = ` +" +

    Object-oriented Programming

    +" +`; + +exports[`remarkDirectiveTerm > should render 1`] = ` +" +

    Object-oriented Programming

    +" +`; + +exports[`remarkDirectiveTerm > should work with term 1`] = ` +" +

    Object-oriented Programming

    +" +`; diff --git a/packages/markdown/tests/__snapshots__/remarkDirectiveTiles.test.ts.snap b/packages/markdown/tests/__snapshots__/remarkDirectiveTiles.test.ts.snap new file mode 100644 index 00000000..7c289b13 --- /dev/null +++ b/packages/markdown/tests/__snapshots__/remarkDirectiveTiles.test.ts.snap @@ -0,0 +1,17 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`remarkDirectiveTiles > should transform 1`] = ` +" + +" +`; diff --git a/packages/markdown/tests/__snapshots__/remarkDirectiveVideo.test.ts.snap b/packages/markdown/tests/__snapshots__/remarkDirectiveVideo.test.ts.snap new file mode 100644 index 00000000..8603feeb --- /dev/null +++ b/packages/markdown/tests/__snapshots__/remarkDirectiveVideo.test.ts.snap @@ -0,0 +1,56 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`remarkDirectiveVideo > should transform with author 1`] = ` +" +
    +
    + +
    +
    Natureclip (CC-BY 3.0)
    +
    +" +`; + +exports[`remarkDirectiveVideo > should transform with author and title 1`] = ` +" +
    +
    + +
    +
    Morgenwolken-Natureclip (CC-BY 3.0)
    +
    +" +`; + +exports[`remarkDirectiveVideo > should transform with missing src 1`] = ` +" +
    +
    + +
    +
    Morgenwolken
    +
    +" +`; + +exports[`remarkDirectiveVideo > should transform with missing src 2`] = ` +" +
    +
    + +
    +
    Morgenwolken
    +
    +" +`; + +exports[`remarkDirectiveVideo > should transform with title 1`] = ` +" +
    +
    + +
    +
    Morgenwolken
    +
    +" +`; diff --git a/packages/markdown/tests/__snapshots__/remarkDirectiveYoutube.test.ts.snap b/packages/markdown/tests/__snapshots__/remarkDirectiveYoutube.test.ts.snap new file mode 100644 index 00000000..165b46e8 --- /dev/null +++ b/packages/markdown/tests/__snapshots__/remarkDirectiveYoutube.test.ts.snap @@ -0,0 +1,9 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`remarkDirectiveYoutube > should render 1`] = ` +" +
    + +
    +" +`; diff --git a/packages/markdown/tests/__snapshots__/remarkImage.test.ts.snap b/packages/markdown/tests/__snapshots__/remarkImage.test.ts.snap new file mode 100644 index 00000000..f62a3bb5 --- /dev/null +++ b/packages/markdown/tests/__snapshots__/remarkImage.test.ts.snap @@ -0,0 +1,31 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`remarkImage > should render as link 1`] = ` +" +

    + A description +
    A caption
    +

    +" +`; + +exports[`remarkImage > should render image with caption 1`] = ` +" +

    +

    + A description +
    A caption
    +
    +

    +" +`; + +exports[`remarkImage > should render image with description 1`] = ` +" +

    +

    + A description +
    +

    +" +`; diff --git a/packages/markdown/tests/__snapshots__/remarkLink.test.ts.snap b/packages/markdown/tests/__snapshots__/remarkLink.test.ts.snap new file mode 100644 index 00000000..1c75cea1 --- /dev/null +++ b/packages/markdown/tests/__snapshots__/remarkLink.test.ts.snap @@ -0,0 +1,15 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`remarkLink > should transform image link 1`] = ` +" +

    + A description +

    +" +`; + +exports[`remarkLink > should transform link 1`] = ` +" +

    A description

    +" +`; diff --git a/packages/markdown/tests/__snapshots__/remarkTableOfContents.test.ts.snap b/packages/markdown/tests/__snapshots__/remarkTableOfContents.test.ts.snap new file mode 100644 index 00000000..846edebc --- /dev/null +++ b/packages/markdown/tests/__snapshots__/remarkTableOfContents.test.ts.snap @@ -0,0 +1,3 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`remarkTableOfContents > should generate toc 1`] = `[Function]`; diff --git a/packages/markdown/tests/__snapshots__/toHtml.test.ts.snap b/packages/markdown/tests/__snapshots__/toHtml.test.ts.snap new file mode 100644 index 00000000..9f070d13 --- /dev/null +++ b/packages/markdown/tests/__snapshots__/toHtml.test.ts.snap @@ -0,0 +1,7 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`remarkDirectiveYoutube > should transform 1`] = ` +"

    Java

    Python

    +

    Another tabs cluster with the same ids.

    +

    Java

    Python

    C

    " +`; diff --git a/packages/markdown/tests/fixtures/snippets/list.md.hbs b/packages/markdown/tests/fixtures/snippets/list.md.hbs new file mode 100644 index 00000000..bb333b7b --- /dev/null +++ b/packages/markdown/tests/fixtures/snippets/list.md.hbs @@ -0,0 +1,3 @@ +{{#each pages}} +- [{{{ name }}}]({{{ href }}}) +{{/each}} diff --git a/packages/markdown/tests/mock.ts b/packages/markdown/tests/mock.ts new file mode 100644 index 00000000..f2c8348f --- /dev/null +++ b/packages/markdown/tests/mock.ts @@ -0,0 +1,485 @@ +import { HyperbookContext } from "@hyperbook/types"; +import path from "path"; + +export const ctx: HyperbookContext = { + root: path.join(process.cwd(), "tests", "fixtures"), + config: { + name: "My Hyperbook", + elements: { + sqlide: { + url: "https://embed.learn-sql.de/include", + db: "https://embed.learn-sql.de/include/assets/databases/world1.sqLite", + }, + }, + }, + navigation: { + current: { + name: "Hi", + }, + next: null, + previous: null, + pages: [], + sections: [], + glossary: [], + }, + makeUrl: (p, base) => { + if (typeof p === "string") { + if (base === "public" || base === "book") { + return path.posix.join("/", base, p); + } + return path.posix.join("/", base, p); + } + return path.posix.join("/", base, ...p); + }, +}; + +export const realCtx: HyperbookContext = { + root: path.join(process.cwd(), "tests", "fixtures"), + config: { + name: "Hyperbook Dokumenation", + description: "Dokumentation für Hyperbook erstellt mit Hyperbook", + author: { + name: "OpenPatch", + url: "https://openpatch.org", + }, + elements: { + code: { + showLineNumbers: true, + }, + }, + links: [ + { + label: "Kontakt", + icon: "🐦", + links: [ + { + label: "Mail", + href: "mailto:contact@openpatch.org", + }, + { + label: "Twitter", + icon: "🐦", + href: "https://twitter.com/openpatchorg", + }, + { + label: "Mastodon", + icon: "🐘", + href: "https://fosstodon.org/@openpatch", + }, + { + label: "Matrix (Chat)", + icon: "👨‍💻", + href: "https://matrix.to/#/#hyperbook:matrix.org", + }, + ], + }, + ], + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de", + }, + makeUrl: (p, base) => { + if (typeof p === "string") { + if (base === "public" || base === "book") { + return p; + } + return path.posix.join("", base, p); + } + if (base === "public" || base === "book") { + return path.join("", ...p); + } + return path.join("", base, ...p); + }, + navigation: { + next: { + name: "Bild", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/markdown/image.md", + href: "/markdown/image", + }, + current: { + name: "Markdown Referenz", + index: 0, + isEmpty: true, + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/markdown/index.md", + href: "/markdown", + }, + previous: { + name: "Bibliothek Konfiguration", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/configuration/library.md", + href: "/configuration/library", + }, + sections: [ + { + name: "Konfiguration", + index: 0, + isEmpty: true, + pages: [ + { + name: "Buch Konfiguration", + index: 0, + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/configuration/book.md", + href: "/configuration/book", + }, + { + name: "Seiten Konfiguration", + lang: "de", + index: 1, + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/configuration/page.md", + href: "/configuration/page", + }, + { + name: "Bereich Konfiguration", + index: 2, + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/configuration/section.md", + href: "/configuration/section", + }, + { + name: "Bibliothek Konfiguration", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/configuration/library.md", + href: "/configuration/library", + }, + ], + sections: [], + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/configuration/index.md", + href: "/configuration", + }, + { + name: "Markdown Referenz", + index: 0, + isEmpty: true, + pages: [ + { + name: "Bild", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/markdown/image.md", + href: "/markdown/image", + }, + { + name: "Hervorhebung", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/markdown/emphasis.md", + href: "/markdown/emphasis", + }, + { + name: "Horizontale Linie", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/markdown/hr.md", + href: "/markdown/hr", + }, + { + name: "Kommentar", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/markdown/comment.md", + href: "/markdown/comment", + }, + { + name: "Link", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/markdown/link.md", + href: "/markdown/link", + }, + { + name: "Liste", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/markdown/list.md", + href: "/markdown/list", + }, + { + name: "Quelltext", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/markdown/code.md", + href: "/markdown/code", + }, + { + name: "Tabelle", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/markdown/table.md", + href: "/markdown/table", + }, + { + name: "Zeilenumbruch", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/markdown/line-break.md", + href: "/markdown/line-break", + }, + { + name: "Zitat", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/markdown/quote.md", + href: "/markdown/quote", + }, + { + name: "Überschriften", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/markdown/header.md", + href: "/markdown/header", + }, + ], + sections: [], + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/markdown/index.md", + href: "/markdown", + }, + { + name: "Elemente", + index: 1, + isEmpty: true, + pages: [ + { + name: "Archiv", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/archive.md", + href: "/elements/archive", + }, + { + name: "Audio", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/audio.md", + href: "/elements/audio", + }, + { + name: "Bitflow", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/bitflow.md", + href: "/elements/bitflow", + }, + { + name: "Download", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/download.md", + href: "/elements/download", + }, + { + name: "Embed", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/embed.md", + href: "/elements/embed", + }, + { + name: "Emoji", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/emoji.md", + href: "/elements/emoji", + }, + { + name: "Excalidraw", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/excalidraw.md", + href: "/elements/excalidraw", + }, + { + name: "Geschützer Bereich", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/protect.md", + href: "/elements/protect", + }, + { + name: "Glossar", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/glossary.md", + href: "/elements/glossary", + }, + { + name: "Hinweise", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/alert.md", + href: "/elements/alert", + }, + { + name: "Kacheln", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/tiles.md", + href: "/elements/tiles", + }, + { + name: "Klappkasten", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/collapsible.md", + href: "/elements/collapsible", + }, + { + name: "Lesezeichen", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/bookmarks.md", + href: "/elements/bookmarks", + }, + { + name: "Mathmathik", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/math.md", + href: "/elements/math", + }, + { + name: "Mermaid", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/mermaid.md", + href: "/elements/mermaid", + }, + { + name: "Online IDE", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/online-ide.md", + href: "/elements/online-ide", + }, + { + name: "PlantUML", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/plantuml.md", + href: "/elements/plantuml", + }, + { + name: "QR Code", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/qr.md", + href: "/elements/qr", + }, + { + name: "Reiter", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/tabs.md", + href: "/elements/tabs", + }, + { + name: "SQL IDE", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/sql-ide.md", + href: "/elements/sql-ide", + }, + { + name: "Scratchblöcke", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/scratchblock.md", + href: "/elements/scratchblock", + }, + { + name: "Slideshow", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/slideshow.md", + href: "/elements/slideshow", + }, + { + name: "Snippets", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/snippets.md", + href: "/elements/snippets", + }, + { + name: "Struktog", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/struktog.md", + href: "/elements/struktog", + }, + { + name: "Video", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/video.md", + href: "/elements/video", + keywords: ["test"], + }, + { + name: "YouTube", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/youtube.md", + href: "/elements/youtube", + keywords: ["test"], + }, + ], + sections: [], + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/elements/index.md", + href: "/elements", + }, + { + name: "Fortgeschrittene Features", + index: 10, + isEmpty: true, + pages: [ + { + name: "Einweg Vorlagen", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/advanced/single-use-templates.md.hbs", + href: "/advanced/single-use-templates", + }, + { + name: "Vorlage - Demo", + hide: true, + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/advanced/template-demo-json.json", + href: "/advanced/template-demo-json", + }, + { + name: "Vorlagen", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/advanced/templates.md", + href: "/advanced/templates", + keywords: ["test"], + }, + { + name: "Vorlagen - Demo", + hide: true, + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/advanced/template-demo-yaml.yml", + href: "/advanced/template-demo-yaml", + keywords: ["test", "ball"], + }, + ], + sections: [], + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/advanced/index.md", + href: "/advanced", + }, + { + name: "Hosting", + isEmpty: true, + pages: [ + { + name: "EduGit Pages", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/hosting/edugitpages.md", + href: "/hosting/edugitpages", + }, + { + name: "Eigene Lösung", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/hosting/custom.md", + href: "/hosting/custom", + }, + { + name: "GitHub Pages", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/hosting/ghpages.md", + href: "/hosting/ghpages", + }, + { + name: "GitLab Pages", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/hosting/glpages.md", + href: "/hosting/glpages", + }, + { + name: "Vercel", + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/hosting/vercel.md", + href: "/hosting/vercel", + }, + ], + sections: [], + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/hosting/index.md", + href: "/hosting", + }, + ], + pages: [ + { + name: "Los Gehts", + index: 0, + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/index.md", + href: "/", + }, + ], + glossary: [ + { + name: "OOP", + index: 0, + lang: "de", + repo: "https://github.com/openpatch/hyperbook/edit/main/website/de/book/index.md", + href: "/glossary/oop", + }, + ], + }, +}; diff --git a/packages/markdown/tests/process.test.ts b/packages/markdown/tests/process.test.ts new file mode 100644 index 00000000..14a0228d --- /dev/null +++ b/packages/markdown/tests/process.test.ts @@ -0,0 +1,104 @@ +import { describe, expect, it } from "vitest"; +import { ctx, realCtx } from "./mock"; +import { process } from "../src/process"; +import { HyperbookContext } from "@hyperbook/types/dist"; + +describe("process", () => { + it("should transform", async () => { + const result = await process( + `::::tabs{id="code"} +:::tab{title="Java" id="java"} +Java +::: +:::tab{title="Python" id="python"} +Python +:::: + +Another tabs cluster with the same ids. +::::tabs{id="code"} +:::tab{title="Java"} +Java +::: +:::tab{title="Python" id="python"} +Python +::: +:::tab{title="C" id="c"} +C +::: +:::tab{title="YouTube" id="c"} + +::youtube[Hi]{#1234} + +::: +:::: +`, + ctx, + ); + expect(result.value).toMatchSnapshot(); + }); + it("should transfrom complex context", async () => { + const result = await process("", realCtx); + expect(result.value).toMatchSnapshot(); + }); + it("should add showLineNumbers", async () => { + const result = await process( + ` +\`\`\`python title="my.py" {1} +def func(): + pass +\`\`\` +`, + realCtx, + ); + expect(result.value).toMatchSnapshot(); + }); + it("should use theme from context", async () => { + const ctx: HyperbookContext = { + ...realCtx, + config: { + ...realCtx.config, + elements: { + code: { + theme: "catppuccin-frappe", + }, + }, + }, + }; + const result = await process( + ` +\`\`\`python title="my.py" {1} +def func(): + pass +\`\`\` +`, + ctx, + ); + expect(result.value).toContain("catppuccin-frappe"); + }); + it("should use dark and light theme from context", async () => { + const ctx: HyperbookContext = { + ...realCtx, + config: { + ...realCtx.config, + elements: { + code: { + theme: { + dark: "catppuccin-frappe", + light: "dracula", + }, + }, + }, + }, + }; + const result = await process( + ` +\`\`\`python title="my.py" {1} +def func(): + pass +\`\`\` +`, + ctx, + ); + expect(result.value).toContain("catppuccin-frappe").toContain("dracula"); + }); +}); diff --git a/packages/markdown/tests/rehypeTableOfContents.test.ts b/packages/markdown/tests/rehypeTableOfContents.test.ts new file mode 100644 index 00000000..afdf3955 --- /dev/null +++ b/packages/markdown/tests/rehypeTableOfContents.test.ts @@ -0,0 +1,42 @@ +import { HyperbookContext } from "@hyperbook/types/dist"; +import { describe, expect, it } from "vitest"; +import rehypeStringify from "rehype-stringify"; +import remarkParse from "remark-parse"; +import remarkToRehype from "remark-rehype"; +import { unified } from "unified"; +import rehypeFormat from "rehype-format"; +import { ctx } from "./mock"; +import rehypeTableOfContents from "../src/rehypeTableOfContents"; +import remarkCollectHeadings from "../src/remarkCollectHeadings"; + +export const toHtml = (md: string, ctx: HyperbookContext) => { + return unified() + .use(remarkParse) + .use(remarkCollectHeadings(ctx)) + .use(remarkToRehype) + .use(rehypeTableOfContents(ctx)) + .use(rehypeFormat) + .use(rehypeStringify, { + allowDangerousCharacters: true, + allowDangerousHtml: true, + }) + .processSync(md); +}; + +describe("remarkTableOfContents", () => { + it("should generate toc", async () => { + expect( + toHtml( + `# H1 +## H2a + +### H3b + +## H2b + +### H3b`, + ctx, + ).value, + ).toMatchSnapshot(); + }); +}); diff --git a/packages/markdown/tests/remarkCollectHeadings.test.ts b/packages/markdown/tests/remarkCollectHeadings.test.ts new file mode 100644 index 00000000..6aad493e --- /dev/null +++ b/packages/markdown/tests/remarkCollectHeadings.test.ts @@ -0,0 +1,42 @@ +import { HyperbookContext } from "@hyperbook/types/dist"; +import { describe, expect, it } from "vitest"; +import rehypeStringify from "rehype-stringify"; +import remarkParse from "remark-parse"; +import remarkToRehype from "remark-rehype"; +import { unified, PluggableList } from "unified"; +import rehypeFormat from "rehype-format"; +import { ctx } from "./mock"; +import remarkCollectHeadings from "../src/remarkCollectHeadings"; + +export const toHtml = (md: string, ctx: HyperbookContext) => { + const remarkPlugins: PluggableList = [remarkCollectHeadings(ctx)]; + + return unified() + .use(remarkParse) + .use(remarkPlugins) + .use(remarkToRehype) + .use(rehypeFormat) + .use(rehypeStringify, { + allowDangerousCharacters: true, + allowDangerousHtml: true, + }) + .processSync(md); +}; + +describe("remarkCollectHeadings", () => { + it("should collect", async () => { + expect( + toHtml( + `# H1 +## H2a + +### H3b + +## H2b + +### H3b`, + ctx, + ).data, + ).toMatchSnapshot(); + }); +}); diff --git a/packages/markdown/tests/remarkCustomHeadingIds.test.ts b/packages/markdown/tests/remarkCustomHeadingIds.test.ts deleted file mode 100644 index b8aea345..00000000 --- a/packages/markdown/tests/remarkCustomHeadingIds.test.ts +++ /dev/null @@ -1,55 +0,0 @@ -import { describe, it, expect } from "vitest"; -import { unified } from "unified"; -import remarkParse from "remark-parse"; -import remarkRehype from "remark-rehype"; -import remarkGfm from "remark-gfm"; -import rehypeStringify from "rehype-stringify"; - -import { remarkCustomHeadingIds } from "../src/remarkCustomHeadingIds"; - -describe("remarkHeadingId", () => { - it("should parse well", async () => { - let file = await unified() - .data("settings", { - position: false, - }) - .use(remarkParse) - .use(remarkCustomHeadingIds) - .use(remarkGfm) - .use(remarkRehype) - .use(rehypeStringify).process(`# head -# cus head1 {#idd-id} -# cus head2 {#idd id} -# cus head3 {#中文 id} - `); - - expect(String(file)).toMatchInlineSnapshot(` - "

    head

    -

    cus head1

    -

    cus head2

    -

    cus head3

    " - `); - }); - - it("should parse well which contains inline syntax", async () => { - let file = await unified() - .data("settings", { - position: false, - }) - .use(remarkParse) - .use(remarkCustomHeadingIds) - .use(remarkGfm) - .use(remarkRehype) - .use(rehypeStringify).process(` -# cus \`head1\` {#idd-id} -## cus **head2** {#idd id} -## cus ~~head2~~ {#idd id} - `); - - expect(String(file)).toMatchInlineSnapshot(` - "

    cus head1

    -

    cus head2

    -

    cus head2

    " - `); - }); -}); diff --git a/packages/markdown/tests/remarkDirectiveAlert.test.ts b/packages/markdown/tests/remarkDirectiveAlert.test.ts new file mode 100644 index 00000000..5f80bd92 --- /dev/null +++ b/packages/markdown/tests/remarkDirectiveAlert.test.ts @@ -0,0 +1,73 @@ +import { HyperbookContext } from "@hyperbook/types/dist"; +import { describe, expect, it } from "vitest"; +import rehypeStringify from "rehype-stringify"; +import remarkParse from "remark-parse"; +import remarkToRehype from "remark-rehype"; +import rehypeFormat from "rehype-format"; +import { unified, PluggableList } from "unified"; +import remarkDirective from "remark-directive"; +import remarkDirectiveRehype from "remark-directive-rehype"; +import { ctx } from "./mock"; +import remarkDirectiveAlert from "../src/remarkDirectiveAlert"; + +export const toHtml = (md: string, ctx: HyperbookContext) => { + const remarkPlugins: PluggableList = [ + remarkDirective, + remarkDirectiveRehype, + remarkDirectiveAlert(ctx), + ]; + + return unified() + .use(remarkParse) + .use(remarkPlugins) + .use(remarkToRehype) + .use(rehypeFormat) + .use(rehypeStringify, { + allowDangerousCharacters: true, + allowDangerousHtml: true, + }) + .processSync(md); +}; + +describe("remarkDirectiveAlert", () => { + it("should transform", async () => { + expect( + toHtml( + ` +:::alert +Default +::: + +:::alert{error} +Error +::: + +:::alert{success} +Success +::: + +:::alert{info} +Info +::: + +:::alert{warn} +Warn +::: +`, + ctx, + ).value, + ).toMatchSnapshot(); + }); + it("should register directives", async () => { + expect( + toHtml( + ` +:::alert +Default +::: +`, + ctx, + ).data.directives?.["alert"], + ).toBeDefined(); + }); +}); diff --git a/packages/markdown/tests/remarkDirectiveAudio.test.ts b/packages/markdown/tests/remarkDirectiveAudio.test.ts new file mode 100644 index 00000000..db312f7a --- /dev/null +++ b/packages/markdown/tests/remarkDirectiveAudio.test.ts @@ -0,0 +1,53 @@ +import { HyperbookContext } from "@hyperbook/types/dist"; +import { describe, expect, it } from "vitest"; +import rehypeStringify from "rehype-stringify"; +import remarkParse from "remark-parse"; +import remarkToRehype from "remark-rehype"; +import rehypeFormat from "rehype-format"; +import { unified, PluggableList } from "unified"; +import remarkDirective from "remark-directive"; +import remarkDirectiveRehype from "remark-directive-rehype"; +import { ctx } from "./mock"; +import remarkDirectiveAudio from "../src/remarkDirectiveAudio"; + +export const toHtml = (md: string, ctx: HyperbookContext) => { + const remarkPlugins: PluggableList = [ + remarkDirective, + remarkDirectiveRehype, + remarkDirectiveAudio(ctx), + ]; + + return unified() + .use(remarkParse) + .use(remarkPlugins) + .use(remarkToRehype) + .use(rehypeFormat) + .use(rehypeStringify, { + allowDangerousCharacters: true, + allowDangerousHtml: true, + }) + .processSync(md); +}; + +describe("remarkDirectiveAudio", () => { + it("should transform", async () => { + expect( + toHtml( + ` +::audio{src="/Free_Test_Data_1MB_MP3.mp3" thumbnail="/group-people.png" title="Hallo" author="Max Mustermann" position="right"} +`, + ctx, + ).value, + ).toMatchSnapshot(); + }); + it("should register directives", async () => { + expect( + toHtml( + ` +::audio{src="/Free_Test_Data_1MB_MP3.mp3" thumbnail="/group-people.png" title="Hallo" author="Max Mustermann" position="right"} +`, + ctx, + ).data.directives?.["audio"], + ).toBeDefined(); + }); +}); diff --git a/packages/markdown/tests/remarkDirectiveCollapsible.test.ts b/packages/markdown/tests/remarkDirectiveCollapsible.test.ts new file mode 100644 index 00000000..82a81eac --- /dev/null +++ b/packages/markdown/tests/remarkDirectiveCollapsible.test.ts @@ -0,0 +1,81 @@ +import { HyperbookContext } from "@hyperbook/types/dist"; +import { describe, expect, it } from "vitest"; +import rehypeStringify from "rehype-stringify"; +import remarkParse from "remark-parse"; +import remarkToRehype from "remark-rehype"; +import rehypeFormat from "rehype-format"; +import { unified, PluggableList } from "unified"; +import remarkDirective from "remark-directive"; +import remarkDirectiveRehype from "remark-directive-rehype"; +import { ctx } from "./mock"; +import remarkDirectiveCollapsible from "../src/remarkDirectiveCollapsible"; + +export const toHtml = (md: string, ctx: HyperbookContext) => { + const remarkPlugins: PluggableList = [ + remarkDirective, + remarkDirectiveRehype, + remarkDirectiveCollapsible(ctx), + ]; + + return unified() + .use(remarkParse) + .use(remarkPlugins) + .use(remarkToRehype) + .use(rehypeFormat) + .use(rehypeStringify, { + allowDangerousCharacters: true, + allowDangerousHtml: true, + }) + .processSync(md); +}; + +describe("remarkDirectiveCollapsible", () => { + it("should transform", async () => { + expect( + toHtml( + ` +::::collapsible{title="Hallo"} + +This is a panel + +::audio{src="/Free_Test_Data_1MB_MP3.mp3" thumbnail="/group-people.png" title="Hallo" author="Max Mustermann"} + +:::collapsible{title="Nested"} + +This is a stacked collapsible + +::youtube[Test]{#124} + +::: + +This is normal Test in-between. + +:::collapsible{title="With an Image"} + +![](/test.jpg) + +::: + +:::: +`, + ctx, + ).value, + ).toMatchSnapshot(); + }); + it("should register directives", async () => { + expect( + toHtml( + ` +:::collapsible{title="Nested"} + +This is a stacked collapsible + +::youtube[Test]{#124} + +::: +`, + ctx, + ).data.directives?.["collapsible"], + ).toBeDefined(); + }); +}); diff --git a/packages/markdown/tests/remarkDirectiveEmbed.test.ts b/packages/markdown/tests/remarkDirectiveEmbed.test.ts new file mode 100644 index 00000000..bfe491b8 --- /dev/null +++ b/packages/markdown/tests/remarkDirectiveEmbed.test.ts @@ -0,0 +1,53 @@ +import { HyperbookContext } from "@hyperbook/types/dist"; +import { describe, expect, it } from "vitest"; +import rehypeStringify from "rehype-stringify"; +import remarkParse from "remark-parse"; +import remarkToRehype from "remark-rehype"; +import rehypeFormat from "rehype-format"; +import { unified, PluggableList } from "unified"; +import remarkDirective from "remark-directive"; +import remarkDirectiveRehype from "remark-directive-rehype"; +import { ctx } from "./mock"; +import remarkDirectiveEmbed from "../src/remarkDirectiveEmbed"; + +export const toHtml = (md: string, ctx: HyperbookContext) => { + const remarkPlugins: PluggableList = [ + remarkDirective, + remarkDirectiveRehype, + remarkDirectiveEmbed(ctx), + ]; + + return unified() + .use(remarkParse) + .use(remarkPlugins) + .use(remarkToRehype) + .use(rehypeFormat) + .use(rehypeStringify, { + allowDangerousCharacters: true, + allowDangerousHtml: true, + }) + .processSync(md); +}; + +describe("remarkDirectiveEmbed", () => { + it("should transform", async () => { + expect( + toHtml( + ` +::embed{src="https://learningapps.org/watch?app=15767435"} +`, + ctx, + ).value, + ).toMatchSnapshot(); + }); + it("should register directives", async () => { + expect( + toHtml( + ` +::embed{src="https://learningapps.org/watch?app=15767435"} +`, + ctx, + ).data.directives?.["embed"], + ).toBeDefined(); + }); +}); diff --git a/packages/markdown/tests/remarkDirectiveMermaid.test.ts b/packages/markdown/tests/remarkDirectiveMermaid.test.ts new file mode 100644 index 00000000..d87566d4 --- /dev/null +++ b/packages/markdown/tests/remarkDirectiveMermaid.test.ts @@ -0,0 +1,131 @@ +import { HyperbookContext } from "@hyperbook/types/dist"; +import { describe, expect, it } from "vitest"; +import rehypeStringify from "rehype-stringify"; +import remarkParse from "remark-parse"; +import remarkToRehype from "remark-rehype"; +import rehypeFormat from "rehype-format"; +import { unified, PluggableList } from "unified"; +import remarkDirective from "remark-directive"; +import remarkDirectiveRehype from "remark-directive-rehype"; +import { ctx } from "./mock"; +import remarkDirectiveMermaid from "../src/remarkDirectiveMermaid"; + +export const toHtml = (md: string, ctx: HyperbookContext) => { + const remarkPlugins: PluggableList = [ + remarkDirective, + remarkDirectiveRehype, + remarkDirectiveMermaid(ctx), + ]; + + return unified() + .use(remarkParse) + .use(remarkPlugins) + .use(remarkToRehype) + .use(rehypeFormat) + .use(rehypeStringify, { + allowDangerousCharacters: true, + allowDangerousHtml: true, + }) + .processSync(md); +}; + +describe("remarkDirectiveMermaid", () => { + it("should transform", async () => { + expect( + toHtml( + ` +:::mermaid +classDiagram + Animal <|-- Duck + Animal <|-- Fish + Animal <|-- Zebra + Animal : +int age + Animal : +String gender + Animal: +isMammal() + Animal: +mate() + class Duck{ + +String beakColor + +swim() + +quack() + } + class Fish{ + -int sizeInFeet + -canEat() + } + class Zebra{ + +bool is_wild + +run() + } +::: + +`, + ctx, + ).value, + ).toMatchSnapshot(); + }); + it("should transform code", async () => { + expect( + toHtml( + ` +\`\`\`mermaid +classDiagram + Animal <|-- Duck + Animal <|-- Fish + Animal <|-- Zebra + Animal : +int age + Animal : +String gender + Animal: +isMammal() + Animal: +mate() + class Duck{ + +String beakColor + +swim() + +quack() + } + class Fish{ + -int sizeInFeet + -canEat() + } + class Zebra{ + +bool is_wild + +run() + } +\`\`\` + +`, + ctx, + ).value, + ).toMatchSnapshot(); + }); + it("should register directives", async () => { + expect( + toHtml( + ` +:::mermaid +classDiagram + Animal <|-- Duck + Animal <|-- Fish + Animal <|-- Zebra + Animal : +int age + Animal : +String gender + Animal: +isMammal() + Animal: +mate() + class Duck{ + +String beakColor + +swim() + +quack() + } + class Fish{ + -int sizeInFeet + -canEat() + } + class Zebra{ + +bool is_wild + +run() + } +::: +`, + ctx, + ).data.directives?.["mermaid"], + ).toBeDefined(); + }); +}); diff --git a/packages/markdown/tests/remarkDirectivePagelist.test.ts b/packages/markdown/tests/remarkDirectivePagelist.test.ts new file mode 100644 index 00000000..489a8464 --- /dev/null +++ b/packages/markdown/tests/remarkDirectivePagelist.test.ts @@ -0,0 +1,153 @@ +import { HyperbookContext } from "@hyperbook/types/dist"; +import { describe, expect, it } from "vitest"; +import rehypeStringify from "rehype-stringify"; +import remarkParse from "remark-parse"; +import remarkToRehype from "remark-rehype"; +import rehypeFormat from "rehype-format"; +import { unified, PluggableList } from "unified"; +import remarkDirective from "remark-directive"; +import remarkDirectiveRehype from "remark-directive-rehype"; +import { realCtx } from "./mock"; +import remarkDirectivePagelist from "../src/remarkDirectivePagelist"; + +export const toHtml = (md: string, ctx: HyperbookContext) => { + const remarkPlugins: PluggableList = [ + remarkDirective, + remarkDirectiveRehype, + remarkDirectivePagelist(ctx), + ]; + + return unified() + .use(remarkParse) + .use(remarkPlugins) + .use(remarkToRehype) + .use(rehypeFormat) + .use(rehypeStringify, { + allowDangerousCharacters: true, + allowDangerousHtml: true, + }) + .processSync(md); +}; + +describe("remarkDirectiveEmbed", () => { + it("should transform", async () => { + expect( + toHtml( + ` +::pagelist{format="#list" source="href(/elements/*)"} +`, + realCtx, + ).value, + ).toMatchSnapshot(); + }); + it("should sort by name asc", async () => { + expect( + toHtml( + ` +::pagelist{format="#list" source="href(/elements/*)" orderBy="name:asc"} +`, + realCtx, + ).value, + ).toMatchSnapshot(); + }); + it("should filter by name", async () => { + expect( + toHtml( + ` +::pagelist{format="#list" source="name(.*IDE.*)" orderBy="name:asc"} +`, + realCtx, + ).value, + ).toMatchSnapshot(); + }); + it("should sort by name desc", async () => { + expect( + toHtml( + ` +::pagelist{format="#list" source="href(/elements/.*)" orderBy="name:desc"} +`, + realCtx, + ).value, + ).toMatchSnapshot(); + }); + it("should filter glossary", async () => { + expect( + toHtml( + ` +::pagelist{format="#list" source="href(/glossary/.*)" orderBy="name:desc"} +`, + realCtx, + ).value, + ).toMatchSnapshot(); + }); + it("should filter glossary and format as glossary", async () => { + expect( + toHtml( + ` +::pagelist{format="glossary" source="href(/glossary/.*)"} +`, + realCtx, + ).value, + ).toMatchSnapshot(); + }); + it("should filter by keyword", async () => { + expect( + toHtml( + ` +::pagelist{format="#list" source="keyword(test)" orderBy="name:desc"} +`, + realCtx, + ).value, + ).toMatchSnapshot(); + }); + it("should filter by two keywords", async () => { + expect( + toHtml( + ` +::pagelist{format="#list" source="keyword(test) AND keyword(ball)" orderBy="name:desc"} +`, + realCtx, + ).value, + ).toMatchSnapshot(); + }); + it("should filter by one keyword and a href", async () => { + expect( + toHtml( + ` +::pagelist{format="#list" source="keyword(test) AND href(/elements/.*)" orderBy="name:desc"} +`, + realCtx, + ).value, + ).toMatchSnapshot(); + }); + it("should format as ul", async () => { + expect( + toHtml( + ` +::pagelist{format="ul"} +`, + realCtx, + ).value, + ).toMatchSnapshot(); + }); + it("should format as ol", async () => { + expect( + toHtml( + ` +::pagelist{format="ol"} +`, + realCtx, + ).value, + ).toMatchSnapshot(); + }); + it("should register directives", async () => { + expect( + toHtml( + ` +::pagelist{format="#list" source="href(/elements/*)"} +`, + realCtx, + ).data.directives?.["pagelist"], + ).toBeDefined(); + }); +}); diff --git a/packages/markdown/tests/remarkDirectiveQr.test.ts b/packages/markdown/tests/remarkDirectiveQr.test.ts new file mode 100644 index 00000000..720b73e8 --- /dev/null +++ b/packages/markdown/tests/remarkDirectiveQr.test.ts @@ -0,0 +1,54 @@ +import { HyperbookContext } from "@hyperbook/types/dist"; +import { describe, expect, it } from "vitest"; +import rehypeStringify from "rehype-stringify"; +import remarkParse from "remark-parse"; +import remarkToRehype from "remark-rehype"; +import rehypeFormat from "rehype-format"; +import { unified, PluggableList } from "unified"; +import remarkDirective from "remark-directive"; +import remarkDirectiveRehype from "remark-directive-rehype"; +import { ctx } from "./mock"; +import remarkDirectiveAlert from "../src/remarkDirectiveAlert"; +import remarkDirectiveQr from "../src/remarkDirectiveQr"; + +export const toHtml = (md: string, ctx: HyperbookContext) => { + const remarkPlugins: PluggableList = [ + remarkDirective, + remarkDirectiveRehype, + remarkDirectiveQr(ctx), + ]; + + return unified() + .use(remarkParse) + .use(remarkPlugins) + .use(remarkToRehype) + .use(rehypeFormat) + .use(rehypeStringify, { + allowDangerousCharacters: true, + allowDangerousHtml: true, + }) + .processSync(md); +}; + +describe("remarkDirectiveQr", () => { + it("should transform", async () => { + expect( + toHtml( + ` +::qr{value="https://openpatch.org"} +`, + ctx, + ).value, + ).toMatchSnapshot(); + }); + it("should register directives", async () => { + expect( + toHtml( + ` +::qr{value="https://openpatch.org"} +`, + ctx, + ).data.directives?.["qr"], + ).toBeDefined(); + }); +}); diff --git a/packages/markdown/tests/remarkDirectiveSlideshow.test.ts b/packages/markdown/tests/remarkDirectiveSlideshow.test.ts new file mode 100644 index 00000000..369159b9 --- /dev/null +++ b/packages/markdown/tests/remarkDirectiveSlideshow.test.ts @@ -0,0 +1,59 @@ +import { HyperbookContext } from "@hyperbook/types/dist"; +import { describe, expect, it } from "vitest"; +import rehypeStringify from "rehype-stringify"; +import remarkParse from "remark-parse"; +import remarkToRehype from "remark-rehype"; +import rehypeFormat from "rehype-format"; +import { unified, PluggableList } from "unified"; +import remarkDirective from "remark-directive"; +import remarkDirectiveRehype from "remark-directive-rehype"; +import { ctx } from "./mock"; +import remarkDirectiveSlideshow from "../src/remarkDirectiveSlideshow"; + +export const toHtml = (md: string, ctx: HyperbookContext) => { + const remarkPlugins: PluggableList = [ + remarkDirective, + remarkDirectiveRehype, + remarkDirectiveSlideshow(ctx), + ]; + + return unified() + .use(remarkParse) + .use(remarkPlugins) + .use(remarkToRehype) + .use(rehypeFormat) + .use(rehypeStringify, { + allowDangerousCharacters: true, + allowDangerousHtml: true, + }) + .processSync(md); +}; + +describe("remarkDirectiveSlideshow", () => { + it("should transform", async () => { + expect( + toHtml( + `:::slideshow +![Test](/test.jpg "A caption") +![Clouds](/clouds.jpg "Another caption") +::: +`, + ctx, + ).value, + ).toMatchSnapshot(); + }); + it("should register directives", async () => { + expect( + toHtml( + `:::slideshow + +![Test](/test.jpg "A caption") +![Clouds](/clouds.jpg "Another caption") + +::: +`, + ctx, + ).data.directives?.["slideshow"], + ).toBeDefined(); + }); +}); diff --git a/packages/markdown/tests/remarkDirectiveSqlIde.test.ts b/packages/markdown/tests/remarkDirectiveSqlIde.test.ts new file mode 100644 index 00000000..72879dbf --- /dev/null +++ b/packages/markdown/tests/remarkDirectiveSqlIde.test.ts @@ -0,0 +1,56 @@ +import { HyperbookContext } from "@hyperbook/types"; +import { describe, expect, it } from "vitest"; +import rehypeStringify from "rehype-stringify"; +import remarkParse from "remark-parse"; +import remarkToRehype from "remark-rehype"; +import rehypeFormat from "rehype-format"; +import { unified, PluggableList } from "unified"; +import remarkDirective from "remark-directive"; +import remarkDirectiveRehype from "remark-directive-rehype"; +import remarkDirectiveSqlIde from "../src/remarkDirectiveSqlIde"; +import { ctx } from "./mock"; + +export const toHtml = (md: string, ctx: HyperbookContext) => { + const remarkPlugins: PluggableList = [ + remarkDirective, + remarkDirectiveRehype, + remarkDirectiveSqlIde(ctx), + ]; + + return unified() + .use(remarkParse) + .use(remarkPlugins) + .use(remarkToRehype) + .use(rehypeFormat) + .use(rehypeStringify, { + allowDangerousCharacters: true, + allowDangerousHtml: true, + }) + .processSync(md); +}; + +describe("remarkDirectiveSqlIde", () => { + it("should transform", async () => { + expect( + toHtml( + `:::sqlide{height=500} + +\`\`\`mysql Statements.sql + +SELECT * from fluss; + +\`\`\` + +\`\`\`md A Hint + +Do this + +\`\`\` +::: + +`, + ctx, + ).value, + ).toMatchSnapshot(); + }); +}); diff --git a/packages/markdown/tests/remarkDirectiveStruktog.test.ts b/packages/markdown/tests/remarkDirectiveStruktog.test.ts new file mode 100644 index 00000000..7a3774d5 --- /dev/null +++ b/packages/markdown/tests/remarkDirectiveStruktog.test.ts @@ -0,0 +1,54 @@ +import { HyperbookContext } from "@hyperbook/types/dist"; +import { describe, expect, it } from "vitest"; +import rehypeStringify from "rehype-stringify"; +import remarkParse from "remark-parse"; +import remarkToRehype from "remark-rehype"; +import rehypeFormat from "rehype-format"; +import { unified, PluggableList } from "unified"; +import remarkDirective from "remark-directive"; +import remarkDirectiveRehype from "remark-directive-rehype"; +import { ctx } from "./mock"; +import remarkDirectiveAlert from "../src/remarkDirectiveAlert"; +import remarkDirectiveStruktog from "../src/remarkDirectiveStruktog"; + +export const toHtml = (md: string, ctx: HyperbookContext) => { + const remarkPlugins: PluggableList = [ + remarkDirective, + remarkDirectiveRehype, + remarkDirectiveStruktog(ctx), + ]; + + return unified() + .use(remarkParse) + .use(remarkPlugins) + .use(remarkToRehype) + .use(rehypeFormat) + .use(rehypeStringify, { + allowDangerousCharacters: true, + allowDangerousHtml: true, + }) + .processSync(md); +}; + +describe("remarkDirectiveStruktog", () => { + it("should transform", async () => { + expect( + toHtml( + ` +::struktog{data="https://struktog.openpatch.org/#pako:eNqtVcuKG0kQ_Jc-T0LWu0pX433AsjZ42YvxIasycyS2LQ2jFrYx-rO97Y85ZcaWXzOM8F6aoqiKjIyKjH4_vd6xzNPq_bThaTW1mJsvrkHrtYLr3kPj4iA535CKTFfT8u5G7OTv273cLn_abdvT3Tzv3jyd5bVsl89gymGU7Bhq9gmyFoSGnoAaNS8xnMF-E-I_drubO7hF3hrK9Ot__87L5vof2Sz7LrzZXh-21_dWS46U-UQ4lQiqsYMEzDA4U4tdH0d9e5jn49U01puZz9DVe3EpAqoGsGWH5nMAdSQj5XaRKkFboSwIclJlZMNpjgx2sKKpdQZ7dlhuDsvXmvwl--Ve6NpYqXCEUYdAiGOAaBTowXOvOVzEM4Zhj4XNeMYK2M0FvfluVsCSg9Qz2BPay9cs_6bbDfX5fnCh0kNhg-waoWDI4DEPY0ou1xEueiwWpcO8PNtOq-X2IJ83Pl76VDG3EQdmBa9NIRNWCJgqpFJ9NhLfVjw1dW7oxW77gO7dY2lMA2rnAolbARQOwClbazE9Vve7Q89nGrLezSy30_F4cqNx2U-rl3flRo_RzD7MiWT-Tk6Bo5iNsldF5Idb-YXm-d5OqCZ1Lpw6cQGCjgY9mTlHtcnCkC5yUJUaGuYCPvUBhuqhOjolQRg6HH0J9p3Rn9q4U3_AQY1i6cOiaQyF5NlipmQD55obar7AQSeNP006itbavXVtbLuTCmSPC2zNY8X0E9J6CqWkEAAxM3huCMUXhpDMmL6Vy0LE5id1HpDtLmA1VV3qFbplSomU_99oVQo-mg-AQjbWQT0oi4VL6yOmx_4VfhitmD1jlwbVYhGitmFeywQdixYm_3Ojczy--vi1smvZXK_tqMd4Nb3Z8LKeVi254wfMXCkO"} +`, + ctx, + ).value, + ).toMatchSnapshot(); + }); + it("should register directives", async () => { + expect( + toHtml( + ` +::struktog{data="https://struktog.openpatch.org/#pako:eNqtVcuKG0kQ_Jc-T0LWu0pX433AsjZ42YvxIasycyS2LQ2jFrYx-rO97Y85ZcaWXzOM8F6aoqiKjIyKjH4_vd6xzNPq_bThaTW1mJsvrkHrtYLr3kPj4iA535CKTFfT8u5G7OTv273cLn_abdvT3Tzv3jyd5bVsl89gymGU7Bhq9gmyFoSGnoAaNS8xnMF-E-I_drubO7hF3hrK9Ot__87L5vof2Sz7LrzZXh-21_dWS46U-UQ4lQiqsYMEzDA4U4tdH0d9e5jn49U01puZz9DVe3EpAqoGsGWH5nMAdSQj5XaRKkFboSwIclJlZMNpjgx2sKKpdQZ7dlhuDsvXmvwl--Ve6NpYqXCEUYdAiGOAaBTowXOvOVzEM4Zhj4XNeMYK2M0FvfluVsCSg9Qz2BPay9cs_6bbDfX5fnCh0kNhg-waoWDI4DEPY0ou1xEueiwWpcO8PNtOq-X2IJ83Pl76VDG3EQdmBa9NIRNWCJgqpFJ9NhLfVjw1dW7oxW77gO7dY2lMA2rnAolbARQOwClbazE9Vve7Q89nGrLezSy30_F4cqNx2U-rl3flRo_RzD7MiWT-Tk6Bo5iNsldF5Idb-YXm-d5OqCZ1Lpw6cQGCjgY9mTlHtcnCkC5yUJUaGuYCPvUBhuqhOjolQRg6HH0J9p3Rn9q4U3_AQY1i6cOiaQyF5NlipmQD55obar7AQSeNP006itbavXVtbLuTCmSPC2zNY8X0E9J6CqWkEAAxM3huCMUXhpDMmL6Vy0LE5id1HpDtLmA1VV3qFbplSomU_99oVQo-mg-AQjbWQT0oi4VL6yOmx_4VfhitmD1jlwbVYhGitmFeywQdixYm_3Ojczy--vi1smvZXK_tqMd4Nb3Z8LKeVi254wfMXCkO"} +`, + ctx, + ).data.directives?.["struktog"], + ).toBeDefined(); + }); +}); diff --git a/packages/markdown/tests/remarkDirectiveTabs.test.ts b/packages/markdown/tests/remarkDirectiveTabs.test.ts new file mode 100644 index 00000000..9562115b --- /dev/null +++ b/packages/markdown/tests/remarkDirectiveTabs.test.ts @@ -0,0 +1,89 @@ +import { HyperbookContext } from "@hyperbook/types/dist"; +import { describe, expect, it } from "vitest"; +import rehypeStringify from "rehype-stringify"; +import remarkParse from "remark-parse"; +import remarkToRehype from "remark-rehype"; +import rehypeFormat from "rehype-format"; +import { unified, PluggableList } from "unified"; +import remarkDirective from "remark-directive"; +import remarkDirectiveRehype from "remark-directive-rehype"; +import remarkDirectiveTabs from "../src/remarkDirectiveTabs"; +import { ctx } from "./mock"; + +export const toHtml = (md: string, ctx: HyperbookContext) => { + const remarkPlugins: PluggableList = [ + remarkDirective, + remarkDirectiveRehype, + remarkDirectiveTabs(ctx), + ]; + + return unified() + .use(remarkParse) + .use(remarkPlugins) + .use(remarkToRehype) + .use(rehypeFormat) + .use(rehypeStringify, { + allowDangerousCharacters: true, + allowDangerousHtml: true, + }) + .processSync(md); +}; + +describe("remarkDirectiveTabs", () => { + it("should transform", async () => { + expect( + toHtml( + `::::tabs{id="code"} +:::tab{title="Java" id="java"} +Java +::: +:::tab{title="Python" id="python"} +Python +:::: + +Another tabs cluster with the same ids. +::::tabs{id="code"} +:::tab{title="Java"} +Java +::: +:::tab{title="Python" id="python"} +Python +::: +:::tab{title="C" id="c"} +C +::: +:::: +`, + ctx, + ).value, + ).toMatchSnapshot(); + }); + it("should register directives", async () => { + expect( + toHtml( + `::::tabs{id="code"} +:::tab{title="Java" id="java"} +Java +::: +:::tab{title="Python" id="python"} +Python +:::: + +Another tabs cluster with the same ids. +::::tabs{id="code"} +:::tab{title="Java"} +Java +::: +:::tab{title="Python" id="python"} +Python +::: +:::tab{title="C" id="c"} +C +::: +:::: +`, + ctx, + ).data.directives?.["tabs"], + ).toBeDefined(); + }); +}); diff --git a/packages/markdown/tests/remarkDirectiveTerm.test.ts b/packages/markdown/tests/remarkDirectiveTerm.test.ts new file mode 100644 index 00000000..8ba0c64b --- /dev/null +++ b/packages/markdown/tests/remarkDirectiveTerm.test.ts @@ -0,0 +1,59 @@ +import { HyperbookContext } from "@hyperbook/types/dist"; +import { describe, expect, it } from "vitest"; +import rehypeStringify from "rehype-stringify"; +import remarkParse from "remark-parse"; +import remarkToRehype from "remark-rehype"; +import { unified, PluggableList } from "unified"; +import remarkDirective from "remark-directive"; +import remarkDirectiveRehype from "remark-directive-rehype"; +import rehypeFormat from "rehype-format"; +import { ctx } from "./mock"; +import remarkDirectiveTerm from "../src/remarkDirectiveTerm"; + +export const toHtml = (md: string, ctx: HyperbookContext) => { + const remarkPlugins: PluggableList = [ + remarkDirective, + remarkDirectiveRehype, + remarkDirectiveTerm(ctx), + ]; + + return unified() + .use(remarkParse) + .use(remarkPlugins) + .use(remarkToRehype) + .use(rehypeFormat) + .use(rehypeStringify, { + allowDangerousCharacters: true, + allowDangerousHtml: true, + }) + .processSync(md); +}; + +describe("remarkDirectiveTerm", () => { + it("should render", async () => { + expect( + toHtml(`:t[Object-oriented Programming]{#oop.bluej-by-example}`, ctx) + .value, + ).toMatchSnapshot(); + }); + it("should infer id from text", async () => { + expect( + toHtml(`:t[Object-oriented Programming]`, ctx).value, + ).toMatchSnapshot(); + }); + it("should work with term", async () => { + expect( + toHtml(`:term[Object-oriented Programming]`, ctx).value, + ).toMatchSnapshot(); + }); + it("should fail without text", async () => { + expect(() => toHtml(`:t{#oop}`, ctx).value).toThrowError("Only plain text"); + }); + it("should register directives", async () => { + expect( + toHtml(`:term[Object-oriented Programming]`, ctx).data.directives?.[ + "term" + ], + ).toBeDefined(); + }); +}); diff --git a/packages/markdown/tests/remarkDirectiveTiles.test.ts b/packages/markdown/tests/remarkDirectiveTiles.test.ts new file mode 100644 index 00000000..2646fef2 --- /dev/null +++ b/packages/markdown/tests/remarkDirectiveTiles.test.ts @@ -0,0 +1,75 @@ +import { HyperbookContext } from "@hyperbook/types/dist"; +import { describe, expect, it } from "vitest"; +import rehypeStringify from "rehype-stringify"; +import remarkParse from "remark-parse"; +import remarkToRehype from "remark-rehype"; +import { unified, PluggableList } from "unified"; +import remarkDirective from "remark-directive"; +import rehypeFormat from "rehype-format"; +import remarkDirectiveRehype from "remark-directive-rehype"; +import { ctx } from "./mock"; +import remarkDirectiveTiles from "../src/remarkDirectiveTiles"; + +export const toHtml = (md: string, ctx: HyperbookContext) => { + const remarkPlugins: PluggableList = [ + remarkDirective, + remarkDirectiveRehype, + remarkDirectiveTiles(ctx), + ]; + + return unified() + .use(remarkParse) + .use(remarkPlugins) + .use(remarkToRehype) + .use(rehypeFormat) + .use(rehypeStringify, { + allowDangerousCharacters: true, + allowDangerousHtml: true, + }) + .processSync(md); +}; + +describe("remarkDirectiveTiles", () => { + it("should transform", async () => { + expect( + toHtml( + `:::tiles + +::tile{title="Hallo"} + +::tile{title="A tile with a link" href="openpatch.org"} + +::tile{title="A large tile" size="L"} + +::tile{title="A small tile" size="S"} + +::tile{title="A icon tile" icon="https://www.inf-schule.de/assets/img/icons/icon_algorithmen.png"} + +::: +`, + ctx, + ).value, + ).toMatchSnapshot(); + }); + it("should register directives", async () => { + expect( + toHtml( + `:::tiles + +::tile{title="Hallo"} + +::tile{title="A tile with a link" href="openpatch.org"} + +::tile{title="A large tile" size="L"} + +::tile{title="A small tile" size="S"} + +::tile{title="A icon tile" icon="https://www.inf-schule.de/assets/img/icons/icon_algorithmen.png"} + +::: +`, + ctx, + ).data.directives?.["tiles"], + ).toBeDefined(); + }); +}); diff --git a/packages/markdown/tests/remarkDirectiveVideo.test.ts b/packages/markdown/tests/remarkDirectiveVideo.test.ts new file mode 100644 index 00000000..d1dda4bd --- /dev/null +++ b/packages/markdown/tests/remarkDirectiveVideo.test.ts @@ -0,0 +1,93 @@ +import { HyperbookContext } from "@hyperbook/types/dist"; +import { describe, expect, it } from "vitest"; +import rehypeStringify from "rehype-stringify"; +import remarkParse from "remark-parse"; +import remarkToRehype from "remark-rehype"; +import { unified, PluggableList } from "unified"; +import remarkDirective from "remark-directive"; +import remarkDirectiveRehype from "remark-directive-rehype"; +import rehypeFormat from "rehype-format"; +import { ctx } from "./mock"; +import remarkDirectiveVideo from "../src/remarkDirectiveVideo"; + +export const toHtml = (md: string, ctx: HyperbookContext) => { + const remarkPlugins: PluggableList = [ + remarkDirective, + remarkDirectiveRehype, + remarkDirectiveVideo(ctx), + ]; + + return unified() + .use(remarkParse) + .use(remarkPlugins) + .use(remarkToRehype) + .use(rehypeFormat) + .use(rehypeStringify, { + allowDangerousCharacters: true, + allowDangerousHtml: true, + }) + .processSync(md); +}; + +describe("remarkDirectiveVideo", () => { + it("should transform with author and title", async () => { + expect( + toHtml( + `::video{src="/clouds.mp4" poster="/clouds.jpg" title="Morgenwolken" author="Natureclip (CC-BY 3.0)"} +`, + ctx, + ).value, + ).toMatchSnapshot(); + }); + it("should transform with author", async () => { + expect( + toHtml( + `::video{src="/clouds.mp4" poster="/clouds.jpg" author="Natureclip (CC-BY 3.0)"} +`, + ctx, + ).value, + ).toMatchSnapshot(); + }); + it("should transform with title", async () => { + expect( + toHtml( + `::video{src="/clouds.mp4" poster="/clouds.jpg" title="Morgenwolken"} +`, + ctx, + ).value, + ).toMatchSnapshot(); + }); + it("should transform with missing src", async () => { + expect( + toHtml( + `::video{poster="/clouds.jpg" title="Morgenwolken"} +`, + ctx, + ).value, + ).toMatchSnapshot(); + }); + it("should transform with missing src", async () => { + expect( + toHtml( + `::video{poster="/clouds.jpg" title="Morgenwolken"} +`, + ctx, + ).value, + ).toMatchSnapshot(); + }); + it("should fail on wrong column count", async () => { + expect( + toHtml( + `:video{poster="/clouds.jpg" title="Morgenwolken"} +`, + ctx, + ).messages.length, + ).toBe(1); + }); + it("should register directives", async () => { + expect( + toHtml(`::video{poster="/clouds.jpg" title="Morgenwolken"}`, ctx).data + .directives?.["video"], + ).toBeDefined(); + }); +}); diff --git a/packages/markdown/tests/remarkDirectiveYoutube.test.ts b/packages/markdown/tests/remarkDirectiveYoutube.test.ts new file mode 100644 index 00000000..15b8cfc8 --- /dev/null +++ b/packages/markdown/tests/remarkDirectiveYoutube.test.ts @@ -0,0 +1,53 @@ +import { HyperbookContext } from "@hyperbook/types/dist"; +import { describe, expect, it } from "vitest"; +import rehypeStringify from "rehype-stringify"; +import remarkParse from "remark-parse"; +import remarkToRehype from "remark-rehype"; +import { unified, PluggableList } from "unified"; +import remarkDirective from "remark-directive"; +import remarkDirectiveRehype from "remark-directive-rehype"; +import rehypeFormat from "rehype-format"; +import { ctx } from "./mock"; +import remarkDirectiveYoutube from "../src/remarkDirectiveYoutube"; + +export const toHtml = (md: string, ctx: HyperbookContext) => { + const remarkPlugins: PluggableList = [ + remarkDirective, + remarkDirectiveRehype, + remarkDirectiveYoutube(ctx), + ]; + + return unified() + .use(remarkParse) + .use(remarkPlugins) + .use(remarkToRehype) + .use(rehypeFormat) + .use(rehypeStringify, { + allowDangerousCharacters: true, + allowDangerousHtml: true, + }) + .processSync(md); +}; + +describe("remarkDirectiveYoutube", () => { + it("should add youtube to directives", async () => { + expect( + toHtml(`::youtube[Costa Rica]{#abc}`, ctx).data.directives?.["youtube"], + ).toBeDefined(); + }); + it("should render", async () => { + expect( + toHtml(`::youtube[Costa Rica]{#LXb3EKWsInQ}`, ctx).value, + ).toMatchSnapshot(); + }); + it("should fail on missing id", async () => { + expect(() => toHtml(`::youtube[Costa Rica]`, ctx).value).toThrowError( + `Missing id`, + ); + }); + it("should fail on wrong column count", async () => { + expect( + toHtml(`:youtube[Costa Rica]{#LXb3EKWsInQ}`, ctx).messages.length, + ).toBe(1); + }); +}); diff --git a/packages/markdown/tests/remarkHeadings.test.ts b/packages/markdown/tests/remarkHeadings.test.ts new file mode 100644 index 00000000..f7e77b7f --- /dev/null +++ b/packages/markdown/tests/remarkHeadings.test.ts @@ -0,0 +1,58 @@ +import { describe, it, expect } from "vitest"; +import { unified } from "unified"; +import remarkParse from "remark-parse"; +import remarkRehype from "remark-rehype"; +import remarkGfm from "remark-gfm"; +import rehypeStringify from "rehype-stringify"; +import { ctx } from "./mock"; +import remarkHeadings from "../src/remarkHeadings"; + +describe("remarkHeadingId", () => { + it("should parse well", async () => { + let file = await unified() + .use(remarkParse) + .use(remarkHeadings(ctx)) + .use(remarkGfm) + .use(remarkRehype) + .use(rehypeStringify, { + allowDangerousCharacters: true, + allowDangerousHtml: true, + }).process(`# head +# cus head1 {#idd-id} +# cus head2 {#idd id} +# cus head3 {#中文 id} + `); + + expect(String(file)).toMatchInlineSnapshot(` + "

    head

    +

    cus head1

    +

    cus head2

    +

    cus head3

    " + `); + }); + + it("should parse well which contains inline syntax", async () => { + let file = await unified() + .data("settings", { + position: false, + }) + .use(remarkParse) + .use(remarkHeadings(ctx)) + .use(remarkGfm) + .use(remarkRehype) + .use(rehypeStringify, { + allowDangerousCharacters: true, + allowDangerousHtml: true, + }).process(` +# cus \`head1\` {#idd-id} +## cus **head2** {#idd id} +## cus ~~head2~~ {#idd id} + `); + + expect(String(file)).toMatchInlineSnapshot(` + "

    cus head1

    +

    cus head2

    +

    cus head2

    " + `); + }); +}); diff --git a/packages/markdown/tests/remarkImage.test.ts b/packages/markdown/tests/remarkImage.test.ts new file mode 100644 index 00000000..b11d15fe --- /dev/null +++ b/packages/markdown/tests/remarkImage.test.ts @@ -0,0 +1,57 @@ +import { HyperbookContext } from "@hyperbook/types/dist"; +import { describe, expect, it } from "vitest"; +import rehypeStringify from "rehype-stringify"; +import remarkParse from "remark-parse"; +import remarkToRehype from "remark-rehype"; +import { unified } from "unified"; +import rehypeFormat from "rehype-format"; +import { ctx } from "./mock"; +import remarkImage from "../src/remarkImage"; +import remarkLink from "../src/remarkLink"; + +export const toHtml = (md: string, ctx: HyperbookContext) => { + return unified() + .use(remarkParse) + .use(remarkLink(ctx)) + .use(remarkImage(ctx)) + .use(remarkToRehype) + .use(rehypeFormat) + .use(rehypeStringify, { + allowDangerousCharacters: true, + allowDangerousHtml: true, + }) + .processSync(md).value; +}; + +describe("remarkImage", () => { + it("should render image with description", () => { + expect( + toHtml( + ` +![A description](/test.jpg) +`, + ctx, + ), + ).toMatchSnapshot(); + }); + it("should render image with caption", () => { + expect( + toHtml( + ` +![A description](/test.jpg "A caption") +`, + ctx, + ), + ).toMatchSnapshot(); + }); + it("should render as link", () => { + expect( + toHtml( + ` +[![A description](/test.jpg "A caption")](/elements/hints) +`, + ctx, + ), + ).toMatchSnapshot(); + }); +}); diff --git a/packages/markdown/tests/remarkLink.test.ts b/packages/markdown/tests/remarkLink.test.ts new file mode 100644 index 00000000..9074d348 --- /dev/null +++ b/packages/markdown/tests/remarkLink.test.ts @@ -0,0 +1,45 @@ +import { HyperbookContext } from "@hyperbook/types/dist"; +import { describe, expect, it } from "vitest"; +import rehypeStringify from "rehype-stringify"; +import remarkParse from "remark-parse"; +import remarkToRehype from "remark-rehype"; +import { unified } from "unified"; +import rehypeFormat from "rehype-format"; +import { ctx } from "./mock"; +import remarkLink from "../src/remarkLink"; + +export const toHtml = (md: string, ctx: HyperbookContext) => { + return unified() + .use(remarkParse) + .use(remarkLink(ctx)) + .use(remarkToRehype) + .use(rehypeFormat) + .use(rehypeStringify, { + allowDangerousCharacters: true, + allowDangerousHtml: true, + }) + .processSync(md).value; +}; + +describe("remarkLink", () => { + it("should transform image link", () => { + expect( + toHtml( + ` +![A description](/test.jpg) +`, + ctx, + ), + ).toMatchSnapshot(); + }); + it("should transform link", () => { + expect( + toHtml( + ` +[A description](/test.jpg) +`, + ctx, + ), + ).toMatchSnapshot(); + }); +}); diff --git a/packages/next-watch/CHANGELOG.md b/packages/next-watch/CHANGELOG.md deleted file mode 100644 index 1a617f10..00000000 --- a/packages/next-watch/CHANGELOG.md +++ /dev/null @@ -1,215 +0,0 @@ -# @hyperbook/next-watch - -## 0.7.4 - -### Patch Changes - -- [`2bfe682`](https://github.com/openpatch/hyperbook/commit/2bfe6828e578399c405bf4fc52fb1845efe2fb6a) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update packages - -## 0.7.3 - -### Patch Changes - -- [`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23)]: - - @hyperbook/types@0.8.1 - -## 0.7.2 - -### Patch Changes - -- Updated dependencies [[`90c99bd`](https://github.com/openpatch/hyperbook/commit/90c99bd0edc9ea8da5e1c6376e09d1977f881870)]: - - @hyperbook/types@0.8.0 - -## 0.7.1 - -### Patch Changes - -- [`d723aaf`](https://github.com/openpatch/hyperbook/commit/d723aafed2eab1ebef7eda5055ba59f2d4e16a9b) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Fix fs module for windows. This should also fix the vscode extension on windows. - -## 0.7.0 - -### Minor Changes - -- [`5c90434`](https://github.com/openpatch/hyperbook/commit/5c90434bd37a4067cdc400a394f7caea2b18a33f) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Add slideshow element - -## 0.6.4 - -### Patch Changes - -- [`cfdb112`](https://github.com/openpatch/hyperbook/commit/cfdb112f3c845db5607f681e4bb2ac521523d292) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Fix drawer in hyperbook-studio - -## 0.6.3 - -### Patch Changes - -- [`4042bc1`](https://github.com/openpatch/hyperbook/commit/4042bc1d1e54f6c81d76243b96e8a933d40fea7d) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Fix mermaid bug, which lead to showing an error banner. - -## 0.6.2 - -### Patch Changes - -- [`a4e4f61`](https://github.com/openpatch/hyperbook/commit/a4e4f61e44d2b9acd7b7a465b793baf3546e3fb3) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Fix dev server for windows - -## 0.6.1 - -### Patch Changes - -- [`fd877cf`](https://github.com/openpatch/hyperbook/commit/fd877cfce2f3052e129ca27e7bb85e2209b40111) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Fix bug in dev mode - -## 0.6.0 - -### Minor Changes - -- [`2e67754`](https://github.com/openpatch/hyperbook/commit/2e67754670a45ce19d4974c80294bff18713f433) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Disable caching, which caused problems. Enable the dev server to serve libraries aswell as individual book. - -## 0.5.1 - -### Patch Changes - -- [`bfa3016`](https://github.com/openpatch/hyperbook/commit/bfa30169bf2e6377385c6a1adb5aa625db7d1b68) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Fix bug with remark - -- [`e84275a`](https://github.com/openpatch/hyperbook/commit/e84275a11949e455be4a00742528541b969d52f1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -## 0.5.0 - -### Minor Changes - -- [`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Move to pure ESM packages - -### Patch Changes - -- Updated dependencies [[`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de)]: - - @hyperbook/types@0.7.0 - -## 0.4.1 - -### Patch Changes - -- [`c6c7d1f`](https://github.com/openpatch/hyperbook/commit/c6c7d1f3dda16879166398916792025545e344ea) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - fix unified package wrong export error - -- [`9851b21`](https://github.com/openpatch/hyperbook/commit/9851b21db8d19c849110eca623bfc450c76e06b9) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - bundle unified to handle wrong import - -## 0.4.0 - -### Minor Changes - -- [`ff0e867`](https://github.com/openpatch/hyperbook/commit/ff0e86788d967194d442026b49d23082960c66da) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Improve the build of hyperbooks and the generation of the toc. - -## 0.3.0 - -### Minor Changes - -- [`f98c89e`](https://github.com/openpatch/hyperbook/commit/f98c89ed582a155d5b005ec72a04ae2619c35c47) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Add element embed. This elements allow embedding content like GeoGebra Applets, LearningApps etc. - -### Patch Changes - -- [`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update packages - -- Updated dependencies [[`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e)]: - - @hyperbook/types@0.6.1 - -## 0.2.4 - -### Patch Changes - -- Updated dependencies [[`4221fe1`](https://github.com/openpatch/hyperbook/commit/4221fe145a6dfffd9f97459fa2d2694da4b5d78e)]: - - @hyperbook/types@0.6.0 - -## 0.2.3 - -### Patch Changes - -- [`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -## 0.2.2 - -### Patch Changes - -- [`e581f06`](https://github.com/openpatch/hyperbook/commit/e581f06ddb5291528d46ba8c797f5cf8f54072e1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Fix bug index not found when no other sibling directories are present. - -## 0.2.1 - -### Patch Changes - -- [`1a91dcb`](https://github.com/openpatch/hyperbook/commit/1a91dcb3d78f8567c8616e3239d6b771b71d874e) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Fix dev server not starting. With the upgrade to NextJS 13 the parsing of conf property to the next function changed. At the moment we do not need the custom conf, but in the future we probably need to create next.config.js files. - -## 0.2.0 - -### Minor Changes - -- [`ac262ca`](https://github.com/openpatch/hyperbook/commit/ac262ca4a60b313dafbce33e5c0d753fd504f012) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Upgrade to NextJS 13 - -## 0.1.2 - -### Patch Changes - -- [`50e5fc2`](https://github.com/openpatch/hyperbook/commit/50e5fc2ab3730bbded82b4b954dc2667724cb1ec) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - use workspace dependency - -- Updated dependencies [[`104f2de`](https://github.com/openpatch/hyperbook/commit/104f2de6fa054ecadaf19811c5f8c3c560ca5a64)]: - - @hyperbook/types@0.5.0 - -## 0.1.1 - -### Patch Changes - -- Updated dependencies [[`8d53899`](https://github.com/openpatch/hyperbook/commit/8d538999fc924f7b3e3115416cba4978c9589b68)]: - - @hyperbook/types@0.4.0 - -## 0.1.0 - -### Minor Changes - -- [#371](https://github.com/openpatch/hyperbook/pull/371) [`5a287b2`](https://github.com/openpatch/hyperbook/commit/5a287b25a24c027f65c7b2817f180c1ec395dff9) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - # Introducing Hyperlibrary - - A Hyperlibrary is a way to connect multiple Hyperbooks and Hyperlibraries with - each other. Hyperlibraries are a super flexible way to develop connected - Hyperbooks. - - A Hyperlibrary is nothing more than a `hyperlibrary.json` files. - Here is an example for connecting different versions. - - ```json - { - "name": "Versions", - "library": [ - { "src": "v1", "name": "1.0.0", "basePath": "v1" }, - { "src": "v2", "name": "2.0.0", "basePath": "/" } - ] - } - ``` - - The folder structure in this case would look like this: - - ```bas - documention - | v1 - | | ... - | | hyperbook.json - | v2 - | | ... - | | hyperbook.json - | hyperlibrary.json - ``` - - As for a Hyperbook, you also have to run the `hyperbook setup` first. - Afterwards you can use the `hyperbook build` command for building your - Hyperlibrary. - - The `hyperbook dev` command is not supported with this release. As a workaround you have to start the Hyperbooks as standalones. For example - - ```bash - user ~/documention $ cd v1 - user ~/v1 $ npx hyperbook dev - ``` - - # CLI Changes - - - `hyperbook setup` does not download the template any more from the GitHub repo, but bundles it. This should decrease bandwidth and improve setup speed. - - `hyperbook build` and `hyperbook setup` received new command line outputs. This was necessary for not getting lost when using the CLI with a Hyperlibrary. - -### Patch Changes - -- Updated dependencies [[`5a287b2`](https://github.com/openpatch/hyperbook/commit/5a287b25a24c027f65c7b2817f180c1ec395dff9)]: - - @hyperbook/types@0.3.0 diff --git a/packages/next-watch/README.md b/packages/next-watch/README.md deleted file mode 100644 index 27ac3ab9..00000000 --- a/packages/next-watch/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# @hyperbook/next-hyperbook-watch - -## Installation - -```sh -yarn add @hyperbook/next-hyperbook-watch -# or -npm i @hyperbook/next-hyperbook-watch -``` diff --git a/packages/next-watch/dist/index.esm.mjs b/packages/next-watch/dist/index.esm.mjs deleted file mode 100755 index 6b394718..00000000 --- a/packages/next-watch/dist/index.esm.mjs +++ /dev/null @@ -1,184 +0,0 @@ -#!/usr/bin/env node - -// src/index.ts -import chokidar from "chokidar"; -import express from "express"; -import next from "next"; -import path2 from "path"; -import { parse } from "url"; - -// src/project.ts -import fs from "fs/promises"; -import chalk from "chalk"; -import path from "path"; -async function collect(root, basePath, label, icon) { - const hyperbookJson = await fs.readFile(path.join(root, "hyperbook.json")).then((data) => JSON.parse(data.toString())).catch((e) => { - if (e instanceof SyntaxError) { - console.error(e); - } - return null; - }); - if (hyperbookJson) { - let href = basePath ?? hyperbookJson.basePath ?? "/"; - if (!href.startsWith("/")) { - href = "/" + href; - } - if (href.length > 1 && href.endsWith("/")) { - href = href.slice(0, -1); - } - return { - type: "book", - src: root, - href, - basePath: basePath ?? hyperbookJson.basePath, - template: hyperbookJson.template, - name: label ?? hyperbookJson.name, - icon - }; - } - const hyperlibraryJson = await fs.readFile(path.join(root, "hyperlibrary.json")).then((data) => JSON.parse(data.toString())).catch((e) => { - if (e instanceof SyntaxError) { - console.error(e); - } - return null; - }); - if (hyperlibraryJson) { - const projects = await Promise.all( - hyperlibraryJson.library.map( - async ({ src, basePath: localBasePath, name, icon: icon2 }) => { - if (!localBasePath) { - console.log( - chalk.red( - `Missing basePath for book ${name} in library ${path.join( - root, - "hyperlibrary.json" - )}` - ) - ); - } - return collect( - path.join(root, src), - path.join( - basePath ?? hyperlibraryJson.basePath ?? "", - localBasePath - ), - name, - icon2 - ); - } - ) - ); - return { - type: "library", - name: label ?? hyperlibraryJson.name, - basePath: basePath ?? hyperlibraryJson.basePath, - src: root, - icon, - projects - }; - } - console.log( - `${chalk.red("Error")} - Missing book or library for path ${root}.` - ); - throw Error(`Missing book or library for path ${root}`); -} - -// src/index.ts -var createNextApp = async (root, basePath) => { - const app = next({ - dev: true, - dir: root, - hostname: "localhost", - port: Number(process.env.PORT) || 3e3, - conf: { - basePath, - env: { - root - } - } - }); - return app.prepare().then(async () => { - const appServer = app.server || await app.getServer(); - chokidar.watch(["./book", "./glossary", "./hyperbook.json", "./public"], { - usePolling: false, - cwd: root - }).on("add", async (filePath) => { - appServer.hotReloader.send("building"); - const global = filePath.startsWith("hyperbook.json") || filePath.startsWith("public"); - const pages = []; - if (filePath.startsWith("book") || global) { - pages.push("/[[...page]]"); - } else if (filePath.startsWith("glossary") || global) { - pages.push("/glossary/[...term]", "/glossary"); - } - appServer.hotReloader.send({ - event: "serverOnlyChanges", - pages - }); - }).on("unlink", async (filePath) => { - appServer.hotReloader.send("building"); - const global = filePath.startsWith("hyperbook.json") || filePath.startsWith("public"); - const pages = []; - if (filePath.startsWith("book") || global) { - pages.push("/[[...page]]"); - } else if (filePath.startsWith("glossary") || global) { - pages.push("/glossary/[...term]", "/glossary"); - } - appServer.hotReloader.send({ - event: "serverOnlyChanges", - pages - }); - }).on("change", async (filePath) => { - appServer.hotReloader.send("building"); - const global = filePath.startsWith("hyperbook.json") || filePath.startsWith("public"); - const pages = []; - if (filePath.startsWith("book") || global) { - pages.push("/[[...page]]"); - } else if (filePath.startsWith("glossary") || global) { - pages.push("/glossary/[...term]", "/glossary"); - } - appServer.hotReloader.send({ - event: "serverOnlyChanges", - pages - }); - }); - return app; - }); -}; -var handleProject = (server) => async (project) => { - if (project.type === "book") { - const root = path2.join(project.src, ".hyperbook"); - let basePath = project.basePath; - if (basePath && !basePath.startsWith("/")) { - basePath = "/" + basePath; - } - if (basePath && basePath.endsWith("/")) { - basePath = basePath.slice(0, -1); - } - const app = await createNextApp(root, basePath); - const handle = app.getRequestHandler(); - const paths = [ - project.href, - project.href.endsWith("/") ? project.href + "*" : project.href + "/*" - ]; - server.all(paths, (req, res) => { - handle(req, res, parse(req.url, true)); - }); - } else if (project.type === "library") { - await Promise.all(project.projects.map(handleProject(server))); - } -}; -async function run() { - console.log(`> Starting dev server ...`); - const root = path2.join(process.cwd(), ".."); - const project = await collect(root); - const server = express(); - await handleProject(server)(project); - process.chdir(root); - const port = process.env.PORT || 3e3; - server.listen(port, () => { - console.log(`> Ready on http://localhost:${port}`); - }); -} -run(); -//# sourceMappingURL=index.esm.mjs.map diff --git a/packages/next-watch/dist/index.esm.mjs.map b/packages/next-watch/dist/index.esm.mjs.map deleted file mode 100644 index 0ee459bc..00000000 --- a/packages/next-watch/dist/index.esm.mjs.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../src/index.ts", "../src/project.ts"], - "sourcesContent": ["#!/usr/bin/env node\nimport chokidar from \"chokidar\";\nimport chalk from \"chalk\";\nimport express from \"express\";\nimport * as core from \"express-serve-static-core\";\nimport next from \"next\";\nimport path from \"path\";\nimport { parse } from \"url\";\nimport { collect, Project } from \"./project\";\n\nconst createNextApp = async (root: string, basePath?: string) => {\n const app = next({\n dev: true,\n dir: root,\n hostname: \"localhost\",\n port: Number(process.env.PORT) || 3000,\n conf: {\n basePath,\n env: {\n root,\n },\n },\n });\n\n return app.prepare().then(async () => {\n // if directories are provided, watch them for changes and trigger reload\n const appServer: any =\n (app as any).server || (await (app as any).getServer());\n chokidar\n .watch([\"./book\", \"./glossary\", \"./hyperbook.json\", \"./public\"], {\n usePolling: false,\n cwd: root,\n })\n .on(\"add\", async (filePath) => {\n appServer.hotReloader.send(\"building\");\n\n const global =\n filePath.startsWith(\"hyperbook.json\") ||\n filePath.startsWith(\"public\");\n\n const pages = [];\n if (filePath.startsWith(\"book\") || global) {\n pages.push(\"/[[...page]]\");\n } else if (filePath.startsWith(\"glossary\") || global) {\n pages.push(\"/glossary/[...term]\", \"/glossary\");\n }\n\n // @ts-ignore\n // https://github.com/hashicorp/next-remote-watch/issues/42\n appServer.hotReloader.send({\n event: \"serverOnlyChanges\",\n pages,\n });\n })\n .on(\"unlink\", async (filePath) => {\n appServer.hotReloader.send(\"building\");\n\n const global =\n filePath.startsWith(\"hyperbook.json\") ||\n filePath.startsWith(\"public\");\n\n const pages = [];\n if (filePath.startsWith(\"book\") || global) {\n pages.push(\"/[[...page]]\");\n } else if (filePath.startsWith(\"glossary\") || global) {\n pages.push(\"/glossary/[...term]\", \"/glossary\");\n }\n\n // @ts-ignore\n // https://github.com/hashicorp/next-remote-watch/issues/42\n appServer.hotReloader.send({\n event: \"serverOnlyChanges\",\n pages,\n });\n })\n .on(\"change\", async (filePath) => {\n appServer.hotReloader.send(\"building\");\n\n const global =\n filePath.startsWith(\"hyperbook.json\") ||\n filePath.startsWith(\"public\");\n\n const pages = [];\n if (filePath.startsWith(\"book\") || global) {\n pages.push(\"/[[...page]]\");\n } else if (filePath.startsWith(\"glossary\") || global) {\n pages.push(\"/glossary/[...term]\", \"/glossary\");\n }\n\n // @ts-ignore\n // https://github.com/hashicorp/next-remote-watch/issues/42\n appServer.hotReloader.send({\n event: \"serverOnlyChanges\",\n pages,\n });\n });\n return app;\n });\n};\n\nconst handleProject = (server: core.Express) => async (project: Project) => {\n if (project.type === \"book\") {\n const root = path.join(project.src, \".hyperbook\");\n let basePath = project.basePath;\n\n if (basePath && !basePath.startsWith(\"/\")) {\n basePath = \"/\" + basePath;\n }\n\n if (basePath && basePath.endsWith(\"/\")) {\n basePath = basePath.slice(0, -1);\n }\n\n const app = await createNextApp(root, basePath);\n const handle = app.getRequestHandler();\n // handle all other routes with next.js\n const paths = [\n project.href,\n project.href.endsWith(\"/\") ? project.href + \"*\" : project.href + \"/*\",\n ];\n server.all(paths, (req, res) => {\n handle(req as any, res, parse(req.url, true));\n });\n } else if (project.type === \"library\") {\n await Promise.all(project.projects.map(handleProject(server)));\n }\n};\n\nasync function run() {\n console.log(`> Starting dev server ...`);\n const root = path.join(process.cwd(), \"..\");\n const project = await collect(root);\n //if (project.type !== \"library\") {\n // console.log(\n // chalk.red(\n // `\\`hyperbook dev\\` is currently not supported for libraries. You have to run \\`hyperbook dev\\` in a folder containing a book.`\n // )\n // );\n // return;\n //}\n // create an express server\n const server = express();\n await handleProject(server)(project);\n\n process.chdir(root);\n\n // fire it up\n const port = process.env.PORT || 3000;\n server.listen(port, () => {\n console.log(`> Ready on http://localhost:${port}`);\n });\n}\n\nrun();\n", "import {\n HyperbookJson,\n HyperlibraryJson,\n Language,\n LanguageString,\n Link,\n} from \"@hyperbook/types\";\nimport fs from \"fs/promises\";\nimport chalk from \"chalk\";\nimport path from \"path\";\n\nexport type Book = {\n type: \"book\";\n src: string;\n basePath?: string;\n href: string;\n icon?: string;\n name: string | LanguageString;\n template?: string;\n};\n\nexport type Library = {\n type: \"library\";\n name: string | LanguageString;\n basePath?: string;\n icon?: string;\n src: string;\n projects: Project[];\n};\n\nexport type Project = Book | Library;\n\nexport function getProjectName(project: Project, language?: Language) {\n let label = \"\";\n if (typeof project.name === \"string\") {\n label = project.name;\n } else {\n if (language) {\n label = project.name[language] || \"en\";\n } else {\n label = Object.values(project.name)[0];\n }\n if (!label) {\n console.log(\n chalk.red(\n `You need to provide a name for language ${language} in ${project.src}`\n )\n );\n throw Error(\"\");\n }\n }\n return label;\n}\n\nexport function makeLink(project: Project): Link {\n if (project.type === \"library\") {\n return {\n label: getProjectName(project),\n links: project.projects.map(makeLink),\n icon: project.icon,\n };\n } else {\n return {\n label: getProjectName(project),\n href: project.href,\n icon: project.icon,\n };\n }\n}\n\nexport async function collect(\n root: string,\n basePath?: string,\n label?: string | LanguageString,\n icon?: string\n): Promise {\n const hyperbookJson = await fs\n .readFile(path.join(root, \"hyperbook.json\"))\n .then((data) => JSON.parse(data.toString()) as HyperbookJson)\n .catch((e) => {\n if (e instanceof SyntaxError) {\n console.error(e);\n }\n return null;\n });\n\n if (hyperbookJson) {\n let href = basePath ?? hyperbookJson.basePath ?? \"/\";\n if (!href.startsWith(\"/\")) {\n href = \"/\" + href;\n }\n\n if (href.length > 1 && href.endsWith(\"/\")) {\n href = href.slice(0, -1);\n }\n return {\n type: \"book\",\n src: root,\n href,\n basePath: basePath ?? hyperbookJson.basePath,\n template: hyperbookJson.template,\n name: label ?? hyperbookJson.name,\n icon,\n };\n }\n\n const hyperlibraryJson = await fs\n .readFile(path.join(root, \"hyperlibrary.json\"))\n .then((data) => JSON.parse(data.toString()) as HyperlibraryJson)\n .catch((e) => {\n if (e instanceof SyntaxError) {\n console.error(e);\n }\n return null;\n });\n\n if (hyperlibraryJson) {\n const projects = await Promise.all(\n hyperlibraryJson.library.map(\n async ({ src, basePath: localBasePath, name, icon }) => {\n if (!localBasePath) {\n console.log(\n chalk.red(\n `Missing basePath for book ${name} in library ${path.join(\n root,\n \"hyperlibrary.json\"\n )}`\n )\n );\n }\n return collect(\n path.join(root, src),\n path.join(\n basePath ?? hyperlibraryJson.basePath ?? \"\",\n localBasePath\n ),\n name,\n icon\n );\n }\n )\n );\n\n return {\n type: \"library\",\n name: label ?? hyperlibraryJson.name,\n basePath: basePath ?? hyperlibraryJson.basePath,\n src: root,\n icon,\n projects,\n };\n }\n\n console.log(\n `${chalk.red(\"Error\")} - Missing book or library for path ${root}.`\n );\n\n throw Error(`Missing book or library for path ${root}`);\n}\n"], - "mappings": ";;;AACA,OAAO,cAAc;AAErB,OAAO,aAAa;AAEpB,OAAO,UAAU;AACjB,OAAOA,WAAU;AACjB,SAAS,aAAa;;;ACAtB,OAAO,QAAQ;AACf,OAAO,WAAW;AAClB,OAAO,UAAU;AA6DjB,eAAsB,QACpB,MACA,UACA,OACA,MACkB;AAClB,QAAM,gBAAgB,MAAM,GACzB,SAAS,KAAK,KAAK,MAAM,gBAAgB,CAAC,EAC1C,KAAK,CAAC,SAAS,KAAK,MAAM,KAAK,SAAS,CAAC,CAAkB,EAC3D,MAAM,CAAC,MAAM;AACZ,QAAI,aAAa,aAAa;AAC5B,cAAQ,MAAM,CAAC;AAAA,IACjB;AACA,WAAO;AAAA,EACT,CAAC;AAEH,MAAI,eAAe;AACjB,QAAI,OAAO,YAAY,cAAc,YAAY;AACjD,QAAI,CAAC,KAAK,WAAW,GAAG,GAAG;AACzB,aAAO,MAAM;AAAA,IACf;AAEA,QAAI,KAAK,SAAS,KAAK,KAAK,SAAS,GAAG,GAAG;AACzC,aAAO,KAAK,MAAM,GAAG,EAAE;AAAA,IACzB;AACA,WAAO;AAAA,MACL,MAAM;AAAA,MACN,KAAK;AAAA,MACL;AAAA,MACA,UAAU,YAAY,cAAc;AAAA,MACpC,UAAU,cAAc;AAAA,MACxB,MAAM,SAAS,cAAc;AAAA,MAC7B;AAAA,IACF;AAAA,EACF;AAEA,QAAM,mBAAmB,MAAM,GAC5B,SAAS,KAAK,KAAK,MAAM,mBAAmB,CAAC,EAC7C,KAAK,CAAC,SAAS,KAAK,MAAM,KAAK,SAAS,CAAC,CAAqB,EAC9D,MAAM,CAAC,MAAM;AACZ,QAAI,aAAa,aAAa;AAC5B,cAAQ,MAAM,CAAC;AAAA,IACjB;AACA,WAAO;AAAA,EACT,CAAC;AAEH,MAAI,kBAAkB;AACpB,UAAM,WAAW,MAAM,QAAQ;AAAA,MAC7B,iBAAiB,QAAQ;AAAA,QACvB,OAAO,EAAE,KAAK,UAAU,eAAe,MAAM,MAAAC,MAAK,MAAM;AACtD,cAAI,CAAC,eAAe;AAClB,oBAAQ;AAAA,cACN,MAAM;AAAA,gBACJ,6BAA6B,IAAI,eAAe,KAAK;AAAA,kBACnD;AAAA,kBACA;AAAA,gBACF,CAAC;AAAA,cACH;AAAA,YACF;AAAA,UACF;AACA,iBAAO;AAAA,YACL,KAAK,KAAK,MAAM,GAAG;AAAA,YACnB,KAAK;AAAA,cACH,YAAY,iBAAiB,YAAY;AAAA,cACzC;AAAA,YACF;AAAA,YACA;AAAA,YACAA;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAEA,WAAO;AAAA,MACL,MAAM;AAAA,MACN,MAAM,SAAS,iBAAiB;AAAA,MAChC,UAAU,YAAY,iBAAiB;AAAA,MACvC,KAAK;AAAA,MACL;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAEA,UAAQ;AAAA,IACN,GAAG,MAAM,IAAI,OAAO,CAAC,uCAAuC,IAAI;AAAA,EAClE;AAEA,QAAM,MAAM,oCAAoC,IAAI,EAAE;AACxD;;;ADpJA,IAAM,gBAAgB,OAAO,MAAc,aAAsB;AAC/D,QAAM,MAAM,KAAK;AAAA,IACf,KAAK;AAAA,IACL,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM,OAAO,QAAQ,IAAI,IAAI,KAAK;AAAA,IAClC,MAAM;AAAA,MACJ;AAAA,MACA,KAAK;AAAA,QACH;AAAA,MACF;AAAA,IACF;AAAA,EACF,CAAC;AAED,SAAO,IAAI,QAAQ,EAAE,KAAK,YAAY;AAEpC,UAAM,YACH,IAAY,UAAW,MAAO,IAAY,UAAU;AACvD,aACG,MAAM,CAAC,UAAU,cAAc,oBAAoB,UAAU,GAAG;AAAA,MAC/D,YAAY;AAAA,MACZ,KAAK;AAAA,IACP,CAAC,EACA,GAAG,OAAO,OAAO,aAAa;AAC7B,gBAAU,YAAY,KAAK,UAAU;AAErC,YAAM,SACJ,SAAS,WAAW,gBAAgB,KACpC,SAAS,WAAW,QAAQ;AAE9B,YAAM,QAAQ,CAAC;AACf,UAAI,SAAS,WAAW,MAAM,KAAK,QAAQ;AACzC,cAAM,KAAK,cAAc;AAAA,MAC3B,WAAW,SAAS,WAAW,UAAU,KAAK,QAAQ;AACpD,cAAM,KAAK,uBAAuB,WAAW;AAAA,MAC/C;AAIA,gBAAU,YAAY,KAAK;AAAA,QACzB,OAAO;AAAA,QACP;AAAA,MACF,CAAC;AAAA,IACH,CAAC,EACA,GAAG,UAAU,OAAO,aAAa;AAChC,gBAAU,YAAY,KAAK,UAAU;AAErC,YAAM,SACJ,SAAS,WAAW,gBAAgB,KACpC,SAAS,WAAW,QAAQ;AAE9B,YAAM,QAAQ,CAAC;AACf,UAAI,SAAS,WAAW,MAAM,KAAK,QAAQ;AACzC,cAAM,KAAK,cAAc;AAAA,MAC3B,WAAW,SAAS,WAAW,UAAU,KAAK,QAAQ;AACpD,cAAM,KAAK,uBAAuB,WAAW;AAAA,MAC/C;AAIA,gBAAU,YAAY,KAAK;AAAA,QACzB,OAAO;AAAA,QACP;AAAA,MACF,CAAC;AAAA,IACH,CAAC,EACA,GAAG,UAAU,OAAO,aAAa;AAChC,gBAAU,YAAY,KAAK,UAAU;AAErC,YAAM,SACJ,SAAS,WAAW,gBAAgB,KACpC,SAAS,WAAW,QAAQ;AAE9B,YAAM,QAAQ,CAAC;AACf,UAAI,SAAS,WAAW,MAAM,KAAK,QAAQ;AACzC,cAAM,KAAK,cAAc;AAAA,MAC3B,WAAW,SAAS,WAAW,UAAU,KAAK,QAAQ;AACpD,cAAM,KAAK,uBAAuB,WAAW;AAAA,MAC/C;AAIA,gBAAU,YAAY,KAAK;AAAA,QACzB,OAAO;AAAA,QACP;AAAA,MACF,CAAC;AAAA,IACH,CAAC;AACH,WAAO;AAAA,EACT,CAAC;AACH;AAEA,IAAM,gBAAgB,CAAC,WAAyB,OAAO,YAAqB;AAC1E,MAAI,QAAQ,SAAS,QAAQ;AAC3B,UAAM,OAAOC,MAAK,KAAK,QAAQ,KAAK,YAAY;AAChD,QAAI,WAAW,QAAQ;AAEvB,QAAI,YAAY,CAAC,SAAS,WAAW,GAAG,GAAG;AACzC,iBAAW,MAAM;AAAA,IACnB;AAEA,QAAI,YAAY,SAAS,SAAS,GAAG,GAAG;AACtC,iBAAW,SAAS,MAAM,GAAG,EAAE;AAAA,IACjC;AAEA,UAAM,MAAM,MAAM,cAAc,MAAM,QAAQ;AAC9C,UAAM,SAAS,IAAI,kBAAkB;AAErC,UAAM,QAAQ;AAAA,MACZ,QAAQ;AAAA,MACR,QAAQ,KAAK,SAAS,GAAG,IAAI,QAAQ,OAAO,MAAM,QAAQ,OAAO;AAAA,IACnE;AACA,WAAO,IAAI,OAAO,CAAC,KAAK,QAAQ;AAC9B,aAAO,KAAY,KAAK,MAAM,IAAI,KAAK,IAAI,CAAC;AAAA,IAC9C,CAAC;AAAA,EACH,WAAW,QAAQ,SAAS,WAAW;AACrC,UAAM,QAAQ,IAAI,QAAQ,SAAS,IAAI,cAAc,MAAM,CAAC,CAAC;AAAA,EAC/D;AACF;AAEA,eAAe,MAAM;AACnB,UAAQ,IAAI,2BAA2B;AACvC,QAAM,OAAOA,MAAK,KAAK,QAAQ,IAAI,GAAG,IAAI;AAC1C,QAAM,UAAU,MAAM,QAAQ,IAAI;AAUlC,QAAM,SAAS,QAAQ;AACvB,QAAM,cAAc,MAAM,EAAE,OAAO;AAEnC,UAAQ,MAAM,IAAI;AAGlB,QAAM,OAAO,QAAQ,IAAI,QAAQ;AACjC,SAAO,OAAO,MAAM,MAAM;AACxB,YAAQ,IAAI,+BAA+B,IAAI,EAAE;AAAA,EACnD,CAAC;AACH;AAEA,IAAI;", - "names": ["path", "icon", "path"] -} diff --git a/packages/next-watch/esbuild.mjs b/packages/next-watch/esbuild.mjs deleted file mode 100644 index 558e837b..00000000 --- a/packages/next-watch/esbuild.mjs +++ /dev/null @@ -1,70 +0,0 @@ -import chalk from "chalk"; -import { build } from "esbuild"; -import { existsSync, readFileSync } from "fs"; -import { join, dirname } from "path"; -import { fileURLToPath } from "url"; - -const __dirname = dirname(fileURLToPath(import.meta.url)); - -const ignorePackages = []; - -export const buildPackage = async (path) => { - const split = path.split("/"); - const packageName = split[split.length - 1]; - if (ignorePackages.includes(packageName)) { - return; - } - - let entry = `${path}/src/index.ts`; - - if (!existsSync(entry)) { - entry = `${path}/src/index.tsx`; - } - const isEntryExists = existsSync(entry); - let packageJSON; - try { - packageJSON = readFileSync(join(`${path}/package.json`), "utf-8"); - } catch (e) { - return; - } - - if (!isEntryExists || !packageJSON) { - throw new Error(`Entry file missing from ${packageName}`); - } - - const bundle = JSON.parse(packageJSON).bundle || []; - - const external = [ - ...Object.keys(JSON.parse(packageJSON)?.dependencies || {}).filter( - (p) => !bundle.includes(p) - ), - ...Object.keys(JSON.parse(packageJSON)?.peerDependencies || {}), - ]; - external.push("path"); - external.push("fs"); - - const commonConfig = { - entryPoints: [entry], - platform: "node", - outbase: path + "/src", - outdir: `${path}/dist`, - sourcemap: true, - minify: false, - bundle: true, - external, - }; - - await build({ - ...commonConfig, - outExtension: { - ".js": ".esm.mjs", - }, - format: "esm", - }).catch((e) => { - throw new Error(`ESM Build failed for ${packageName} \n ${e}`); - }); - - console.log(`build ${chalk.green("success")} - ${packageName}`); -}; - -buildPackage(process.cwd()); diff --git a/packages/next-watch/package.json b/packages/next-watch/package.json deleted file mode 100644 index 7d74cf53..00000000 --- a/packages/next-watch/package.json +++ /dev/null @@ -1,48 +0,0 @@ -{ - "name": "@hyperbook/next-watch", - "version": "0.7.4", - "author": "Mike Barkmin", - "homepage": "https://github.com/openpatch/hyperbook#readme", - "license": "MIT", - "sideEffects": false, - "bin": { - "next-hyperbook-watch": "./dist/index.esm.mjs" - }, - "files": [ - "bin" - ], - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/next-watch" - }, - "bugs": { - "url": "https://github.com/openpatch/hyperbook/issues" - }, - "scripts": { - "version": "pnpm build", - "lint": "tsc --noEmit", - "build": "rimraf dist && node ./esbuild.mjs" - }, - "dependencies": { - "@hyperbook/types": "workspace:*", - "chalk": "5.3.0", - "chokidar": "3.6.0", - "commander": "12.1.0", - "express": "4.21.0" - }, - "peerDependencies": { - "next": ">=12" - }, - "devDependencies": { - "@types/express": "^4.17.21", - "esbuild": "0.21.3", - "express-serve-static-core": "^0.1.1", - "next": "13.4.5", - "react": "18.3.1", - "react-dom": "18.3.1" - } -} diff --git a/packages/next-watch/src/index.ts b/packages/next-watch/src/index.ts deleted file mode 100644 index a63b7b09..00000000 --- a/packages/next-watch/src/index.ts +++ /dev/null @@ -1,154 +0,0 @@ -#!/usr/bin/env node -import chokidar from "chokidar"; -import chalk from "chalk"; -import express from "express"; -import * as core from "express-serve-static-core"; -import next from "next"; -import path from "path"; -import { parse } from "url"; -import { collect, Project } from "./project"; - -const createNextApp = async (root: string, basePath?: string) => { - const app = next({ - dev: true, - dir: root, - hostname: "localhost", - port: Number(process.env.PORT) || 3000, - conf: { - basePath, - env: { - root, - }, - }, - }); - - return app.prepare().then(async () => { - // if directories are provided, watch them for changes and trigger reload - const appServer: any = - (app as any).server || (await (app as any).getServer()); - chokidar - .watch(["./book", "./glossary", "./hyperbook.json", "./public"], { - usePolling: false, - cwd: root, - }) - .on("add", async (filePath) => { - appServer.hotReloader.send("building"); - - const global = - filePath.startsWith("hyperbook.json") || - filePath.startsWith("public"); - - const pages = []; - if (filePath.startsWith("book") || global) { - pages.push("/[[...page]]"); - } else if (filePath.startsWith("glossary") || global) { - pages.push("/glossary/[...term]", "/glossary"); - } - - // @ts-ignore - // https://github.com/hashicorp/next-remote-watch/issues/42 - appServer.hotReloader.send({ - event: "serverOnlyChanges", - pages, - }); - }) - .on("unlink", async (filePath) => { - appServer.hotReloader.send("building"); - - const global = - filePath.startsWith("hyperbook.json") || - filePath.startsWith("public"); - - const pages = []; - if (filePath.startsWith("book") || global) { - pages.push("/[[...page]]"); - } else if (filePath.startsWith("glossary") || global) { - pages.push("/glossary/[...term]", "/glossary"); - } - - // @ts-ignore - // https://github.com/hashicorp/next-remote-watch/issues/42 - appServer.hotReloader.send({ - event: "serverOnlyChanges", - pages, - }); - }) - .on("change", async (filePath) => { - appServer.hotReloader.send("building"); - - const global = - filePath.startsWith("hyperbook.json") || - filePath.startsWith("public"); - - const pages = []; - if (filePath.startsWith("book") || global) { - pages.push("/[[...page]]"); - } else if (filePath.startsWith("glossary") || global) { - pages.push("/glossary/[...term]", "/glossary"); - } - - // @ts-ignore - // https://github.com/hashicorp/next-remote-watch/issues/42 - appServer.hotReloader.send({ - event: "serverOnlyChanges", - pages, - }); - }); - return app; - }); -}; - -const handleProject = (server: core.Express) => async (project: Project) => { - if (project.type === "book") { - const root = path.join(project.src, ".hyperbook"); - let basePath = project.basePath; - - if (basePath && !basePath.startsWith("/")) { - basePath = "/" + basePath; - } - - if (basePath && basePath.endsWith("/")) { - basePath = basePath.slice(0, -1); - } - - const app = await createNextApp(root, basePath); - const handle = app.getRequestHandler(); - // handle all other routes with next.js - const paths = [ - project.href, - project.href.endsWith("/") ? project.href + "*" : project.href + "/*", - ]; - server.all(paths, (req, res) => { - handle(req as any, res, parse(req.url, true)); - }); - } else if (project.type === "library") { - await Promise.all(project.projects.map(handleProject(server))); - } -}; - -async function run() { - console.log(`> Starting dev server ...`); - const root = path.join(process.cwd(), ".."); - const project = await collect(root); - //if (project.type !== "library") { - // console.log( - // chalk.red( - // `\`hyperbook dev\` is currently not supported for libraries. You have to run \`hyperbook dev\` in a folder containing a book.` - // ) - // ); - // return; - //} - // create an express server - const server = express(); - await handleProject(server)(project); - - process.chdir(root); - - // fire it up - const port = process.env.PORT || 3000; - server.listen(port, () => { - console.log(`> Ready on http://localhost:${port}`); - }); -} - -run(); diff --git a/packages/next-watch/src/project.ts b/packages/next-watch/src/project.ts deleted file mode 100644 index 0ca7bd00..00000000 --- a/packages/next-watch/src/project.ts +++ /dev/null @@ -1,159 +0,0 @@ -import { - HyperbookJson, - HyperlibraryJson, - Language, - LanguageString, - Link, -} from "@hyperbook/types"; -import fs from "fs/promises"; -import chalk from "chalk"; -import path from "path"; - -export type Book = { - type: "book"; - src: string; - basePath?: string; - href: string; - icon?: string; - name: string | LanguageString; - template?: string; -}; - -export type Library = { - type: "library"; - name: string | LanguageString; - basePath?: string; - icon?: string; - src: string; - projects: Project[]; -}; - -export type Project = Book | Library; - -export function getProjectName(project: Project, language?: Language) { - let label = ""; - if (typeof project.name === "string") { - label = project.name; - } else { - if (language) { - label = project.name[language] || "en"; - } else { - label = Object.values(project.name)[0]; - } - if (!label) { - console.log( - chalk.red( - `You need to provide a name for language ${language} in ${project.src}` - ) - ); - throw Error(""); - } - } - return label; -} - -export function makeLink(project: Project): Link { - if (project.type === "library") { - return { - label: getProjectName(project), - links: project.projects.map(makeLink), - icon: project.icon, - }; - } else { - return { - label: getProjectName(project), - href: project.href, - icon: project.icon, - }; - } -} - -export async function collect( - root: string, - basePath?: string, - label?: string | LanguageString, - icon?: string -): Promise { - const hyperbookJson = await fs - .readFile(path.join(root, "hyperbook.json")) - .then((data) => JSON.parse(data.toString()) as HyperbookJson) - .catch((e) => { - if (e instanceof SyntaxError) { - console.error(e); - } - return null; - }); - - if (hyperbookJson) { - let href = basePath ?? hyperbookJson.basePath ?? "/"; - if (!href.startsWith("/")) { - href = "/" + href; - } - - if (href.length > 1 && href.endsWith("/")) { - href = href.slice(0, -1); - } - return { - type: "book", - src: root, - href, - basePath: basePath ?? hyperbookJson.basePath, - template: hyperbookJson.template, - name: label ?? hyperbookJson.name, - icon, - }; - } - - const hyperlibraryJson = await fs - .readFile(path.join(root, "hyperlibrary.json")) - .then((data) => JSON.parse(data.toString()) as HyperlibraryJson) - .catch((e) => { - if (e instanceof SyntaxError) { - console.error(e); - } - return null; - }); - - if (hyperlibraryJson) { - const projects = await Promise.all( - hyperlibraryJson.library.map( - async ({ src, basePath: localBasePath, name, icon }) => { - if (!localBasePath) { - console.log( - chalk.red( - `Missing basePath for book ${name} in library ${path.join( - root, - "hyperlibrary.json" - )}` - ) - ); - } - return collect( - path.join(root, src), - path.join( - basePath ?? hyperlibraryJson.basePath ?? "", - localBasePath - ), - name, - icon - ); - } - ) - ); - - return { - type: "library", - name: label ?? hyperlibraryJson.name, - basePath: basePath ?? hyperlibraryJson.basePath, - src: root, - icon, - projects, - }; - } - - console.log( - `${chalk.red("Error")} - Missing book or library for path ${root}.` - ); - - throw Error(`Missing book or library for path ${root}`); -} diff --git a/packages/next-watch/tsconfig.build.json b/packages/next-watch/tsconfig.build.json deleted file mode 100644 index 9434a833..00000000 --- a/packages/next-watch/tsconfig.build.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["src", "../../types"], - "compilerOptions": { - "rootDir": ".", - "outDir": "dist", - "resolveJsonModule": true - } -} diff --git a/packages/next-watch/tsconfig.json b/packages/next-watch/tsconfig.json deleted file mode 100644 index f068abe3..00000000 --- a/packages/next-watch/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "include": ["src", "../../types", "tests"] -} diff --git a/packages/provider/CHANGELOG.md b/packages/provider/CHANGELOG.md deleted file mode 100644 index 1ce5a451..00000000 --- a/packages/provider/CHANGELOG.md +++ /dev/null @@ -1,154 +0,0 @@ -# @hyperbook/provider - -## 0.4.2 - -### Patch Changes - -- [`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23)]: - - @hyperbook/store@0.2.1 - - @hyperbook/types@0.8.1 - -## 0.4.1 - -### Patch Changes - -- Updated dependencies [[`90c99bd`](https://github.com/openpatch/hyperbook/commit/90c99bd0edc9ea8da5e1c6376e09d1977f881870)]: - - @hyperbook/types@0.8.0 - -## 0.4.0 - -### Minor Changes - -- [`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Move to pure ESM packages - -### Patch Changes - -- Updated dependencies [[`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de)]: - - @hyperbook/store@0.2.0 - - @hyperbook/types@0.7.0 - -## 0.3.0 - -### Minor Changes - -- [`902c0b3`](https://github.com/openpatch/hyperbook/commit/902c0b30a0aa97984350cfd58ad88d38ef7b4cd6) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Improve static site generation - -## 0.2.5 - -### Patch Changes - -- [`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - fix data not defined - -- Updated dependencies [[`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1)]: - - @hyperbook/store@0.1.5 - -## 0.2.4 - -### Patch Changes - -- [`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update packages - -- Updated dependencies [[`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e)]: - - @hyperbook/store@0.1.4 - - @hyperbook/types@0.6.1 - -## 0.2.3 - -### Patch Changes - -- Updated dependencies [[`4221fe1`](https://github.com/openpatch/hyperbook/commit/4221fe145a6dfffd9f97459fa2d2694da4b5d78e)]: - - @hyperbook/types@0.6.0 - -## 0.2.2 - -### Patch Changes - -- [`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37)]: - - @hyperbook/store@0.1.3 - -## 0.2.1 - -### Patch Changes - -- Updated dependencies [[`104f2de`](https://github.com/openpatch/hyperbook/commit/104f2de6fa054ecadaf19811c5f8c3c560ca5a64)]: - - @hyperbook/types@0.5.0 - -## 0.2.0 - -### Minor Changes - -- [#392](https://github.com/openpatch/hyperbook/pull/392) [`8d53899`](https://github.com/openpatch/hyperbook/commit/8d538999fc924f7b3e3115416cba4978c9589b68) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Extract core funcationality from platfrom web into separate packages. This helps us to support more platforms. - -### Patch Changes - -- Updated dependencies [[`8d53899`](https://github.com/openpatch/hyperbook/commit/8d538999fc924f7b3e3115416cba4978c9589b68)]: - - @hyperbook/types@0.4.0 - -## 0.1.7 - -### Patch Changes - -- Updated dependencies [[`5a287b2`](https://github.com/openpatch/hyperbook/commit/5a287b25a24c027f65c7b2817f180c1ec395dff9)]: - - @hyperbook/types@0.3.0 - -## 0.1.6 - -### Patch Changes - -- Updated dependencies [[`5ca2ccf`](https://github.com/openpatch/hyperbook/commit/5ca2ccfec72a841ec9c4e43a03ceb2be68710541)]: - - @hyperbook/types@0.2.0 - -## 0.1.5 - -### Patch Changes - -- Updated dependencies [[`9472583`](https://github.com/openpatch/hyperbook/commit/947258359e33a39362c070f6c7128f214a79c4c5)]: - - @hyperbook/types@0.1.0 - -## 0.1.4 - -### Patch Changes - -- [#316](https://github.com/openpatch/hyperbook/pull/316) [`cedb551`](https://github.com/openpatch/hyperbook/commit/cedb55191fd025b5a214df406a53cbab5d1b1bc1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Extract Hyperbook types into a separate package - -- Updated dependencies [[`cedb551`](https://github.com/openpatch/hyperbook/commit/cedb55191fd025b5a214df406a53cbab5d1b1bc1)]: - - @hyperbook/types@0.0.1 - -## 0.1.3 - -### Patch Changes - -- [`c3e747a`](https://github.com/openpatch/hyperbook/commit/c3e747ab7b95c3e526b3800b169aa8f505f9b9a2) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Do not rely on process.env.NODE_ENV and use env prodivded by the provider. - -## 0.1.2 - -### Patch Changes - -- [`2c34554`](https://github.com/openpatch/hyperbook/commit/2c34554f64359fb995190b1465daddfa3e0101c0) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - try to overcome issues with @redux/toolkit not supporting esm modules the way nextjs likes it. - -- Updated dependencies [[`2c34554`](https://github.com/openpatch/hyperbook/commit/2c34554f64359fb995190b1465daddfa3e0101c0)]: - - @hyperbook/store@0.1.2 - -## 0.1.1 - -### Patch Changes - -- [`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Force package update due to failed pipeline - -- Updated dependencies [[`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00)]: - - @hyperbook/store@0.1.1 - -## 0.1.0 - -### Minor Changes - -- [`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Extract feature in separate packages. This allows for easier development of new templates and allows enables to make changes more transparent. - -### Patch Changes - -- Updated dependencies [[`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8)]: - - @hyperbook/store@0.1.0 diff --git a/packages/provider/README.md b/packages/provider/README.md deleted file mode 100644 index 8eb25b12..00000000 --- a/packages/provider/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# @bitflow/provider - -## Installation - -```sh -yarn add @bitflow/provider -# or -npm i @bitflow/provider -``` diff --git a/packages/provider/package.json b/packages/provider/package.json deleted file mode 100644 index 1d147a40..00000000 --- a/packages/provider/package.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "name": "@hyperbook/provider", - "version": "0.4.2", - "author": "Mike Barkmin", - "homepage": "https://github.com/openpatch/hyperbook#readme", - "license": "MIT", - "type": "module", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "sideEffects": false, - "exports": { - ".": "./dist/index.js" - }, - "files": [ - "dist" - ], - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/provider" - }, - "bugs": { - "url": "https://github.com/openpatch/hyperbook/issues" - }, - "scripts": { - "version": "pnpm build", - "lint": "tsc --noEmit", - "build": "rimraf dist && pnpm build:pkg && pnpm build:types", - "build:pkg": "node ../../scripts/build.mjs", - "build:types": "tsc --project tsconfig.build.json --declaration --emitDeclarationOnly" - }, - "dependencies": { - "@hyperbook/store": "workspace:*", - "@hyperbook/types": "workspace:*", - "redux": "5.0.1" - }, - "peerDependencies": { - "react": "18.x", - "react-dom": "18.x", - "react-redux": "9.x" - }, - "devDependencies": { - "@types/react": "18.3.2", - "@types/react-dom": "18.3.0", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-redux": "9.1.2", - "@reduxjs/toolkit": "2.2.5" - } -} diff --git a/packages/provider/src/index.tsx b/packages/provider/src/index.tsx deleted file mode 100644 index be5750bf..00000000 --- a/packages/provider/src/index.tsx +++ /dev/null @@ -1,267 +0,0 @@ -import { - FC, - ReactNode, - Reducer, - useContext, - useEffect, - useState, - createContext, -} from "react"; -import { - Provider as ReduxProvider, - useDispatch, - useSelector, -} from "react-redux"; -import { - activePageSlice, - bookmarksSlice, - makeStore, - selectActivePage, - selectBookmark, - BookmarksState, - PersistGate, - Storage, -} from "@hyperbook/store"; -import type { Slice } from "@reduxjs/toolkit"; -import { HyperbookJson } from "@hyperbook/types"; - -export type RootFolder = "public" | "book" | "glossary"; - -type HyperbookContextProps = { - directives: Record>; - Link: FC; - Head: FC<{ children?: ReactNode }>; - env: "development" | "production"; - router: { - push: (path: string) => Promise; - }; - colorScheme?: "dark" | "light"; - saveFile: ( - config: HyperbookJson - ) => (path: string, content: string, rootFolder: RootFolder) => Promise; - loadFile: ( - config: HyperbookJson - ) => (path: string, rootFolder?: RootFolder) => Promise; - makeUrl: ( - config: HyperbookJson - ) => (path?: string, rootFolder?: RootFolder) => string; - getActivePageId: () => Promise; - config: HyperbookJson; -}; - -const HyperbookContext = createContext({ - directives: {}, - Link: (props) => , - router: { - push: async () => false, - }, - Head: () => null, - env: "production", - saveFile: () => async () => {}, - loadFile: () => async () => "", - makeUrl: () => (url) => url || "", - getActivePageId: async () => "", - config: { - name: "Hyperbook", - }, -}); - -export type Element = { - directives: Record>; - slice?: Slice; -}; - -export type ProviderProps = { - Link: HyperbookContextProps["Link"]; - Head?: HyperbookContextProps["Head"]; - router: HyperbookContextProps["router"]; - elements?: Element[]; - children?: ReactNode; - saveFile?: HyperbookContextProps["saveFile"]; - loadFile?: HyperbookContextProps["loadFile"]; - makeUrl?: HyperbookContextProps["makeUrl"]; - getActivePageId?: HyperbookContextProps["getActivePageId"]; - config?: HyperbookContextProps["config"]; - env?: HyperbookContextProps["env"]; - storage?: Storage; -}; - -export const Provider: FC = ({ - elements = [], - children, - Link, - Head = () => null, - saveFile = () => async () => {}, - loadFile = () => async () => "", - router, - env = "production", - makeUrl = () => (url) => url || "", - getActivePageId = async () => "", - config = { - name: "Hyperbook", - }, - storage, -}) => { - const directiveReducers: Record> = {}; - let directiveComponents: Record> = {}; - elements.forEach((element) => { - if (element.slice) { - directiveReducers[element.slice.name] = element.slice.reducer; - } - directiveComponents = { - ...directiveComponents, - ...element.directives, - }; - }); - - const { store, persistor } = makeStore(directiveReducers, storage); - - return ( - - - {children} - - - ); -}; - -export const useEnv = () => { - const data = useContext(HyperbookContext); - return data.env; -}; - -export const useBookmark = ( - anchor: string, - label: string -): [boolean, () => void] => { - const dispatch = useDispatch(); - const [activePageId] = useActivePageId(); - const key = `${activePageId}#${anchor}`; - const bookmark = useSelector(selectBookmark(key)); - - const toggle = () => { - dispatch(bookmarksSlice.actions.toggle({ key, label })); - }; - - return [bookmark?.active || false, toggle]; -}; - -export const useBookmarks = () => { - const bookmarks = useSelector( - (state: { bookmarks: BookmarksState }) => state.bookmarks - ); - - return Object.entries(bookmarks) - .map(([key, bookmark]) => { - return { - href: key, - ...bookmark, - }; - }) - .filter((bookmark) => bookmark.active); -}; - -export const useActivePageId = (auto: boolean = true) => { - const data = useContext(HyperbookContext); - const dispatch = useDispatch(); - const activePageId = useSelector(selectActivePage); - - const setActivePageId = (pageId: string) => { - dispatch(activePageSlice.actions.set(pageId)); - }; - - useEffect(() => { - if (auto) { - data - .getActivePageId() - .then(setActivePageId) - .catch(() => {}); - } - }, [auto]); - - return [activePageId, setActivePageId]; -}; - -export const useConfig = () => { - const data = useContext(HyperbookContext); - - return data.config; -}; - -export const useLink = () => { - const data = useContext(HyperbookContext); - - return data.Link; -}; - -export const useHead = () => { - const data = useContext(HyperbookContext); - - return data.Head; -}; - -export const useRouter = () => { - const data = useContext(HyperbookContext); - - return data.router; -}; - -export const useDirectives = () => { - const data = useContext(HyperbookContext); - - return data.directives; -}; - -export const useMakeUrl = () => { - const data = useContext(HyperbookContext); - return data.makeUrl(data.config); -}; - -export const useFile = () => { - const data = useContext(HyperbookContext); - - return [data.loadFile(data.config), data.saveFile(data.config)] as const; -}; - -export type ColorScheme = "light" | "dark"; - -export function useColorScheme(): [ColorScheme] { - const [preferredColorScheme, setPreferredColorScheme] = - useState("light"); - - useEffect(() => { - if (!window.matchMedia) { - setPreferredColorScheme("light"); - return; - } - - const mediaQuery = window.matchMedia("(prefers-color-scheme: dark)"); - - setPreferredColorScheme(mediaQuery.matches ? "dark" : "light"); - - function onChange(event: MediaQueryListEvent): void { - setPreferredColorScheme(event.matches ? "dark" : "light"); - } - - mediaQuery.addEventListener("change", onChange); - - return () => { - mediaQuery.removeEventListener("change", onChange); - }; - }, []); - - return [preferredColorScheme]; -} diff --git a/packages/provider/tsconfig.build.json b/packages/provider/tsconfig.build.json deleted file mode 100644 index e8415085..00000000 --- a/packages/provider/tsconfig.build.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["src", "../../types"], - "compilerOptions": { - "rootDir": "src", - "declarationDir": "dist" - } -} diff --git a/packages/provider/tsconfig.json b/packages/provider/tsconfig.json deleted file mode 100644 index f068abe3..00000000 --- a/packages/provider/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "include": ["src", "../../types", "tests"] -} diff --git a/packages/shell/CHANGELOG.md b/packages/shell/CHANGELOG.md deleted file mode 100644 index a01d684d..00000000 --- a/packages/shell/CHANGELOG.md +++ /dev/null @@ -1,174 +0,0 @@ -# @hyperbook/shell - -## 0.7.6 - -### Patch Changes - -- [`2bfe682`](https://github.com/openpatch/hyperbook/commit/2bfe6828e578399c405bf4fc52fb1845efe2fb6a) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update packages - -## 0.7.5 - -### Patch Changes - -- [`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23)]: - - @hyperbook/drawer@0.1.2 - - @hyperbook/provider@0.4.2 - -## 0.7.4 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.4.1 - -## 0.7.3 - -### Patch Changes - -- [`183bb32`](https://github.com/openpatch/hyperbook/commit/183bb3253256342882a167332a1ac7209740ab43) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Fix zoom on iPads - -## 0.7.2 - -### Patch Changes - -- [`e84275a`](https://github.com/openpatch/hyperbook/commit/e84275a11949e455be4a00742528541b969d52f1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -## 0.7.1 - -### Patch Changes - -- Updated dependencies [[`75a3227`](https://github.com/openpatch/hyperbook/commit/75a322721e2e0af3c248ab12fb72cca357d6f4d8)]: - - @hyperbook/drawer@0.1.1 - -## 0.7.0 - -### Minor Changes - -- [`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Move to pure ESM packages - -### Patch Changes - -- Updated dependencies [[`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de)]: - - @hyperbook/provider@0.4.0 - - @hyperbook/drawer@0.1.0 - -## 0.6.0 - -### Minor Changes - -- [`ff0e867`](https://github.com/openpatch/hyperbook/commit/ff0e86788d967194d442026b49d23082960c66da) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Improve the build of hyperbooks and the generation of the toc. - -## 0.5.0 - -### Minor Changes - -- [`902c0b3`](https://github.com/openpatch/hyperbook/commit/902c0b30a0aa97984350cfd58ad88d38ef7b4cd6) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Improve static site generation - -### Patch Changes - -- Updated dependencies [[`902c0b3`](https://github.com/openpatch/hyperbook/commit/902c0b30a0aa97984350cfd58ad88d38ef7b4cd6)]: - - @hyperbook/provider@0.3.0 - -## 0.4.6 - -### Patch Changes - -- [`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - fix data not defined - -- Updated dependencies [[`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1)]: - - @hyperbook/provider@0.2.5 - -## 0.4.5 - -### Patch Changes - -- [`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update packages - -- Updated dependencies [[`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e)]: - - @hyperbook/provider@0.2.4 - -## 0.4.4 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.3 - -## 0.4.3 - -### Patch Changes - -- [`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37)]: - - @hyperbook/provider@0.2.2 - -## 0.4.2 - -### Patch Changes - -- [`70e4131`](https://github.com/openpatch/hyperbook/commit/70e4131de7d3e2c81061dba8afe87c16e80372b4) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Fix some css did overwrite the heading font sizes, which lead to wrong sizes. - -## 0.4.1 - -### Patch Changes - -- [`0c58ad8`](https://github.com/openpatch/hyperbook/commit/0c58ad80c3c8b145868d2c0303d42478ec0a9978) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Fix links for Hyperproject not using the Link component. - -## 0.4.0 - -### Minor Changes - -- [`ac262ca`](https://github.com/openpatch/hyperbook/commit/ac262ca4a60b313dafbce33e5c0d753fd504f012) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Upgrade react-collapsed to prerelease 4.0.0. This prerelease adds support for React 18. So the warning about unmet peer-dependencies should disappear. - -## 0.3.0 - -### Minor Changes - -- [`104f2de`](https://github.com/openpatch/hyperbook/commit/104f2de6fa054ecadaf19811c5f8c3c560ca5a64) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Repo can now be configured. So you can customize the label of the edit button on a page and you can insert the current path anywhere in the link, by using "%path%" placeholder. - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.1 - -## 0.2.0 - -### Minor Changes - -- [`2562e84`](https://github.com/openpatch/hyperbook/commit/2562e847152902cc72d155d760ee87c0a8aff11c) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - The clickable area of empty sections is now the whole button instead of just the plus or minus symbol. - -## 0.1.3 - -### Patch Changes - -- [`28b803e`](https://github.com/openpatch/hyperbook/commit/28b803efbeac6835afc0040b7f1fb03c210cc72d) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Fix toc toggle misaligned bars on iPad - -- [`13a8313`](https://github.com/openpatch/hyperbook/commit/13a8313f60a89b697f638845327bbd4ddbae4af8) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Display Powered by Hyperbook in the mobile navigation drawer. - -- [`42cf26c`](https://github.com/openpatch/hyperbook/commit/42cf26cacd32026fa95ab850c4d5e8f2b96b9c37) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Fix height on iOS - -## 0.1.2 - -### Patch Changes - -- [`2e61eef`](https://github.com/openpatch/hyperbook/commit/2e61eef5ca40446ae28046659cb1eac96fd6ccf1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Set more default styles, so that Hyperbook looks alike on different platforms. - -## 0.1.1 - -### Patch Changes - -- [`2e92be1`](https://github.com/openpatch/hyperbook/commit/2e92be1fb5b1128cc43fbf0451aa4a493c6bafd7) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - The Hyperbook title now uses the heading font. - -## 0.1.0 - -### Minor Changes - -- [#392](https://github.com/openpatch/hyperbook/pull/392) [`8d53899`](https://github.com/openpatch/hyperbook/commit/8d538999fc924f7b3e3115416cba4978c9589b68) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Extract core funcationality from platfrom web into separate packages. This helps us to support more platforms. - -### Patch Changes - -- Updated dependencies [[`8d53899`](https://github.com/openpatch/hyperbook/commit/8d538999fc924f7b3e3115416cba4978c9589b68)]: - - @hyperbook/provider@0.2.0 diff --git a/packages/shell/README.md b/packages/shell/README.md deleted file mode 100644 index 3c7518bc..00000000 --- a/packages/shell/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# @hyperbook/shell - -## Installation - -```sh -yarn add @hyperbook/shell -# or -npm i @hyperbook/shell -``` diff --git a/packages/shell/package.json b/packages/shell/package.json deleted file mode 100644 index 41c972fa..00000000 --- a/packages/shell/package.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "name": "@hyperbook/shell", - "version": "0.7.6", - "author": "Mike Barkmin", - "homepage": "https://github.com/openpatch/hyperbook#readme", - "license": "MIT", - "type": "module", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "sideEffects": false, - "exports": { - ".": "./dist/index.js", - "./index.css": "./dist/index.css" - }, - "files": [ - "dist" - ], - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/shell" - }, - "bugs": { - "url": "https://github.com/openpatch/hyperbook/issues" - }, - "scripts": { - "version": "pnpm build", - "lint": "tsc --noEmit", - "build": "rimraf dist && pnpm build:pkg && pnpm build:types", - "build:pkg": "node ../../scripts/build.mjs", - "build:types": "tsc --project tsconfig.build.json --declaration --emitDeclarationOnly" - }, - "dependencies": { - "@hyperbook/drawer": "workspace:*", - "@hyperbook/provider": "workspace:*", - "@szhsin/react-menu": "4.2.2", - "react-collapsed": "4.1.2" - }, - "peerDependencies": { - "react": "18.x", - "react-dom": "18.x" - }, - "devDependencies": { - "@hyperbook/types": "workspace:*", - "@types/react": "18.3.2", - "@types/react-dom": "18.3.0", - "react": "18.3.1", - "react-dom": "18.3.1" - } -} diff --git a/packages/shell/src/Links.tsx b/packages/shell/src/Links.tsx deleted file mode 100644 index cc419ce2..00000000 --- a/packages/shell/src/Links.tsx +++ /dev/null @@ -1,160 +0,0 @@ -import { RefObject, useEffect, useState } from "react"; -import { useLink } from "@hyperbook/provider"; -import { - HyperbookJson, - LinkWithLinks as LinkWithLinksProps, - LinkWithHref as LinkWithHrefProps, - Link as LinkProps, -} from "@hyperbook/types"; -import { Menu, MenuItem, SubMenu, MenuButton } from "@szhsin/react-menu"; -import { Fragment, FC, useRef } from "react"; - -export const useOnScreen = ( - ref: RefObject, - containerRef: RefObject, - padding: number = 0 -) => { - const [isOnScreen, setOnScreen] = useState(true); - - const handleResize = (bounds: DOMRect) => () => { - if (containerRef.current) { - const containerBounds = containerRef.current.getBoundingClientRect(); - - if ( - containerBounds.width >= bounds.width + padding && - containerBounds.right <= window.innerWidth - ) { - setOnScreen(true); - } else { - setOnScreen(false); - } - } - }; - - useEffect(() => { - if (ref.current) { - const bounds = ref.current.getBoundingClientRect(); - - const h = handleResize(bounds); - - window.addEventListener("resize", h); - - h(); - - return () => { - window.removeEventListener("resize", h); - }; - } - }, [ref]); - - return isOnScreen; -}; - -export type LinksProps = { links: HyperbookJson["links"] }; - -const Item: FC> = ({ label, icon }) => { - return ( - - {icon &&
    {icon}
    } -
    {label}
    -
    - ); -}; - -const LinkWithLinks: FC = ({ label, links, icon }) => { - return ( - }> - {links.map((l, i) => ( - - ))} - - ); -}; - -const LinkWithHref: FC = ({ label, icon, href }) => { - const Link = useLink(); - return ( -
  • - - - -
  • - ); -}; - -const Link: FC = (link) => { - if ("links" in link) { - return ; - } else { - return ; - } -}; - -const MenuLink: FC = ({ label, href, icon }) => { - const Link = useLink(); - return ( - - - - ); -}; - -export const Links: FC = ({ links }) => { - const linkRef = useRef(null); - const containerRef = useRef(null); - const isVisible = useOnScreen(linkRef, containerRef); - return ( -
    - {!isVisible ? ( - - - - } - transition - > - {links?.map((link, i) => ( - - ))} - - ) : ( -
    - {links?.map((link, i) => { - if ("links" in link) { - return ( - - - - } - transition - > - {link.links?.map((link, i) => ( - - ))} - - ); - } else { - return ; - } - })} -
    - )} -
    - ); -}; diff --git a/packages/shell/src/Navigation.tsx b/packages/shell/src/Navigation.tsx deleted file mode 100644 index 0c191e05..00000000 --- a/packages/shell/src/Navigation.tsx +++ /dev/null @@ -1,120 +0,0 @@ -import { useLink } from "@hyperbook/provider"; -import { - HyperbookPage, - HyperbookSection, - Navigation as NavigationProps, -} from "@hyperbook/types"; -import { useCollapse } from "react-collapsed"; - -type P = HyperbookPage & Pick; - -const Page = ({ name, href, current }: P) => { - const Link = useLink(); - return ( -
  • - - {name} - -
  • - ); -}; - -type S = HyperbookSection & Pick; - -const Section = ({ - isEmpty, - virtual, - name, - href, - pages, - sections, - expanded, - current, -}: S) => { - const Link = useLink(); - let isActive = false; - if (current?.href && href) { - isActive = current.href.startsWith(href); - } - const { getCollapseProps, getToggleProps, isExpanded } = useCollapse({ - defaultExpanded: isActive || expanded, - }); - return ( -
    - {!virtual && - (isEmpty ? ( -
    - {name} - -
    - ) : ( -
    - - {name} - - -
    - ))} -
    - {pages.length > 0 && ( -
      - {pages - .filter((p) => !p.hide) - .map((p) => ( - - ))} -
    - )} - {sections - .filter((s) => !s.hide) - .map((s) => ( -
    - ))} -
    -
    - ); -}; - -export const Navigation = ({ pages, sections, current }: NavigationProps) => { - return ( - - ); -}; diff --git a/packages/shell/src/Shell.tsx b/packages/shell/src/Shell.tsx deleted file mode 100644 index daa2c068..00000000 --- a/packages/shell/src/Shell.tsx +++ /dev/null @@ -1,183 +0,0 @@ -import { useLink, useMakeUrl, useHead, useConfig } from "@hyperbook/provider"; -import { FC, Fragment, ReactNode, useState } from "react"; -import { Navigation as NavigationProps } from "@hyperbook/types"; -import { Links } from "./Links"; -import { Navigation } from "./Navigation"; -import { Drawer } from "@hyperbook/drawer"; - -export type ShellProps = { - navigation?: NavigationProps; - children?: ReactNode; -}; - -const linkLicense = (license: string) => { - const Link = useLink(); - let href: string | null = null; - let label: string | null = null; - switch (license.toLowerCase()) { - case "cc0": { - href = "https://creativecommons.org/publicdomain/zero/1.0/"; - label = "CC0"; - break; - } - case "cc-by": { - href = "https://creativecommons.org/licenses/by/4.0"; - label = "CC BY"; - break; - } - case "cc-by-sa": { - href = "https://creativecommons.org/licenses/by-sa/4.0"; - label = "CC BY-SA"; - break; - } - case "cc-by-nd": { - href = "https://creativecommons.org/licenses/by-nd/4.0"; - label = "CC BY-ND"; - break; - } - case "cc-by-nc": { - href = "https://creativecommons.org/licenses/by-nc/4.0"; - label = "CC BY-NC"; - break; - } - case "cc-by-nc-sa": { - href = "https://creativecommons.org/licenses/by-nc-sa/4.0"; - label = "CC BY-NC-SA"; - break; - } - case "cc-by-nc-nd": { - href = "https://creativecommons.org/licenses/by-nc-nd/4.0"; - label = "CC BY-NC-ND"; - break; - } - } - - if (href) { - return ( - - Licensed under {label} - - ); - } - - return license; -}; - -export const Shell: FC = ({ navigation, children }) => { - const Link = useLink(); - const Head = useHead(); - const hyperbook = useConfig(); - const page = navigation?.current; - const makeUrl = useMakeUrl(); - const [isNavOpen, setIsNavOpen] = useState(false); - - return ( - - {page && ( - - {`${page.name} - ${hyperbook.name}`} - - {hyperbook.description && ( - <> - - - - )} - {page.description && ( - <> - - - - )} - {page.keywords && ( - - )} - - )} -
    -
    - - - {hyperbook.logo && ( -
    - Logo -
    - )} -
    {hyperbook.name}
    - - {hyperbook.links && } -
    -
    - {navigation && } - - Powered by Hyperbook - -
    -
    - {children} -
    - {page?.repo && ( - - {typeof hyperbook.repo == "object" && hyperbook.repo.label - ? hyperbook.repo.label - : "✎ GitHub"} - - )} - {(hyperbook as any).vercel && ( - - - - )} - - {hyperbook.license - ? linkLicense(hyperbook.license) - : `© Copyright ${new Date().getFullYear()}`} - {hyperbook.author && ( - <> - {" by "} - {hyperbook.author.name} - - )} - . - -
    -
    -
    - - ); -}; diff --git a/packages/shell/src/index.ts b/packages/shell/src/index.ts deleted file mode 100644 index 1dbb1d55..00000000 --- a/packages/shell/src/index.ts +++ /dev/null @@ -1,2 +0,0 @@ -import "./index.css"; -export * from "./Shell"; diff --git a/packages/shell/tsconfig.build.json b/packages/shell/tsconfig.build.json deleted file mode 100644 index e8415085..00000000 --- a/packages/shell/tsconfig.build.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["src", "../../types"], - "compilerOptions": { - "rootDir": "src", - "declarationDir": "dist" - } -} diff --git a/packages/shell/tsconfig.json b/packages/shell/tsconfig.json deleted file mode 100644 index f068abe3..00000000 --- a/packages/shell/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "include": ["src", "../../types", "tests"] -} diff --git a/packages/store/CHANGELOG.md b/packages/store/CHANGELOG.md deleted file mode 100644 index f050bb47..00000000 --- a/packages/store/CHANGELOG.md +++ /dev/null @@ -1,49 +0,0 @@ -# @hyperbook/store - -## 0.2.1 - -### Patch Changes - -- [`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -## 0.2.0 - -### Minor Changes - -- [`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Move to pure ESM packages - -## 0.1.5 - -### Patch Changes - -- [`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - fix data not defined - -## 0.1.4 - -### Patch Changes - -- [`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update packages - -## 0.1.3 - -### Patch Changes - -- [`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -## 0.1.2 - -### Patch Changes - -- [`2c34554`](https://github.com/openpatch/hyperbook/commit/2c34554f64359fb995190b1465daddfa3e0101c0) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - try to overcome issues with @redux/toolkit not supporting esm modules the way nextjs likes it. - -## 0.1.1 - -### Patch Changes - -- [`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Force package update due to failed pipeline - -## 0.1.0 - -### Minor Changes - -- [`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Extract feature in separate packages. This allows for easier development of new templates and allows enables to make changes more transparent. diff --git a/packages/store/README.md b/packages/store/README.md deleted file mode 100644 index 2c7c0504..00000000 --- a/packages/store/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# @bitflow/store - -## Installation - -```sh -yarn add @bitflow/store -# or -npm i @bitflow/store -``` diff --git a/packages/store/package.json b/packages/store/package.json deleted file mode 100644 index 3bacd06f..00000000 --- a/packages/store/package.json +++ /dev/null @@ -1,49 +0,0 @@ -{ - "name": "@hyperbook/store", - "version": "0.2.1", - "author": "Mike Barkmin", - "homepage": "https://github.com/openpatch/hyperbook#readme", - "license": "MIT", - "type": "module", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "sideEffects": false, - "exports": { - ".": "./dist/index.js" - }, - "files": [ - "dist" - ], - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/store" - }, - "bugs": { - "url": "https://github.com/openpatch/hyperbook/issues" - }, - "scripts": { - "version": "pnpm build", - "lint": "tsc --noEmit", - "build": "rimraf dist && pnpm build:pkg && pnpm build:types", - "build:pkg": "node ../../scripts/build.mjs", - "build:types": "tsc --project tsconfig.build.json --declaration --emitDeclarationOnly" - }, - "bundle": [ - "@reduxjs/toolkit" - ], - "dependencies": { - "redux": "5.0.1", - "redux-persist": "6.0.0" - }, - "peerDependencies": { - "react": "18.x" - }, - "devDependencies": { - "@reduxjs/toolkit": "2.2.5", - "@types/react": "18.3.2" - } -} diff --git a/packages/store/src/index.ts b/packages/store/src/index.ts deleted file mode 100644 index 2d2fdadc..00000000 --- a/packages/store/src/index.ts +++ /dev/null @@ -1,44 +0,0 @@ -import { combineReducers } from "redux"; -import { persistReducer, persistStore, Storage } from "redux-persist"; -export { createSlice } from "@reduxjs/toolkit"; -import { configureStore } from "@reduxjs/toolkit"; -import { Reducer } from "react"; -export type { Storage } from "redux-persist"; - -export * from "./storage"; -export * from "./react"; - -import { noopStorage } from "./storage"; - -import { activePageSlice } from "./slices/activePage"; -import { bookmarksSlice } from "./slices/bookmarks"; - -export const makeStore = ( - reducers: Record>, - storage: Storage = noopStorage -) => { - const store = configureStore({ - reducer: persistReducer( - { key: "hyperbook", storage }, - combineReducers({ - [activePageSlice.name]: activePageSlice.reducer, - [bookmarksSlice.name]: bookmarksSlice.reducer, - ...reducers, - }) - ), - middleware: (getDefaultModdleware) => - getDefaultModdleware({ - serializableCheck: false, - }), - }); - - const persistor = persistStore(store); - - return { - store, - persistor, - }; -}; - -export * from "./slices/activePage"; -export * from "./slices/bookmarks"; diff --git a/packages/store/src/react.tsx b/packages/store/src/react.tsx deleted file mode 100644 index 7abfef2c..00000000 --- a/packages/store/src/react.tsx +++ /dev/null @@ -1,59 +0,0 @@ -import { PureComponent, ReactNode } from "react"; -import type { Persistor } from "redux-persist"; - -type Props = { - onBeforeLift?: () => void; - children: ReactNode | ((state: boolean) => ReactNode); - loading: ReactNode; - persistor: Persistor; -}; - -type State = { - bootstrapped: boolean; -}; - -export class PersistGate extends PureComponent { - static defaultProps = { - children: null, - loading: null, - }; - - state = { - bootstrapped: false, - }; - _unsubscribe?: () => void; - - componentDidMount(): void { - this._unsubscribe = this.props.persistor.subscribe( - this.handlePersistorState - ); - this.handlePersistorState(); - } - - handlePersistorState = (): void => { - const { persistor } = this.props; - const { bootstrapped } = persistor.getState(); - if (bootstrapped) { - if (this.props.onBeforeLift) { - Promise.resolve(this.props.onBeforeLift()).finally(() => - this.setState({ bootstrapped: true }) - ); - } else { - this.setState({ bootstrapped: true }); - } - this._unsubscribe && this._unsubscribe(); - } - }; - - componentWillUnmount(): void { - this._unsubscribe && this._unsubscribe(); - } - - render(): ReactNode { - if (typeof this.props.children === "function") { - return this.props.children(this.state.bootstrapped); - } - - return this.state.bootstrapped ? this.props.children : this.props.loading; - } -} diff --git a/packages/store/src/slices/activePage.ts b/packages/store/src/slices/activePage.ts deleted file mode 100644 index 065da2c7..00000000 --- a/packages/store/src/slices/activePage.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { PayloadAction } from "@reduxjs/toolkit"; -import * as toolkitRaw from "@reduxjs/toolkit"; -const { createSlice } = ((toolkitRaw as any).default ?? - toolkitRaw) as typeof toolkitRaw; - -type ActivePageState = { - id: string; -}; - -const initialState: ActivePageState = { - id: "", -}; - -export const activePageSlice = createSlice({ - name: "activePage", - initialState, - reducers: { - set: (state, action: PayloadAction) => { - state.id = action.payload; - }, - }, -}); - -export const selectActivePage = (state: { activePage: ActivePageState }) => - state[activePageSlice.name].id; diff --git a/packages/store/src/slices/bookmarks.ts b/packages/store/src/slices/bookmarks.ts deleted file mode 100644 index 7db09430..00000000 --- a/packages/store/src/slices/bookmarks.ts +++ /dev/null @@ -1,45 +0,0 @@ -import { PayloadAction } from "@reduxjs/toolkit"; -import * as toolkitRaw from "@reduxjs/toolkit"; -const { createSlice } = ((toolkitRaw as any).default ?? - toolkitRaw) as typeof toolkitRaw; - -export type BookmarksState = Record< - string, - { - label: string; - active: boolean; - } ->; - -const initialState: BookmarksState = {}; - -export const bookmarksSlice = createSlice({ - name: "bookmarks", - initialState, - reducers: { - toggle: ( - state, - action: PayloadAction<{ - key: string; - label: string; - }> - ) => { - const { key, label } = action.payload; - if (!state[key] || !state[key].active) { - state[key] = { - label, - active: true, - }; - } else { - state[key] = { - label, - active: false, - }; - } - }, - }, -}); - -export const selectBookmark = - (key: string) => (state: { bookmarks: BookmarksState }) => - state[bookmarksSlice.name][key]; diff --git a/packages/store/src/storage/createWebStorage.ts b/packages/store/src/storage/createWebStorage.ts deleted file mode 100644 index eca114f0..00000000 --- a/packages/store/src/storage/createWebStorage.ts +++ /dev/null @@ -1,23 +0,0 @@ -import getStorage from "./getStorage"; - -// eslint-disable-next-line @typescript-eslint/no-explicit-any -export default function createWebStorage(type: string): any { - const storage = getStorage(type); - return { - getItem: (key: string): Promise => { - return new Promise((resolve) => { - resolve(storage.getItem(key)); - }); - }, - setItem: (key: string, item: string): Promise => { - return new Promise((resolve) => { - resolve(storage.setItem(key, item)); - }); - }, - removeItem: (key: string): Promise => { - return new Promise((resolve) => { - resolve(storage.removeItem(key)); - }); - }, - }; -} diff --git a/packages/store/src/storage/getStorage.ts b/packages/store/src/storage/getStorage.ts deleted file mode 100644 index a76804df..00000000 --- a/packages/store/src/storage/getStorage.ts +++ /dev/null @@ -1,30 +0,0 @@ -import type { Storage } from "redux-persist"; -import noopStorage from "./noop"; - -function hasStorage(storageType: string) { - if (typeof self !== "object" || !(storageType in self)) { - return false; - } - - try { - const storage = (self as unknown as { [key: string]: Storage })[ - storageType - ] as unknown as Storage; - const testKey = `redux-persist ${storageType} test`; - storage.setItem(testKey, "test"); - storage.getItem(testKey); - storage.removeItem(testKey); - } catch (e) { - return false; - } - return true; -} - -export default function getStorage(type: string): Storage { - const storageType = `${type}Storage`; - if (hasStorage(storageType)) - return (self as unknown as { [key: string]: Storage })[storageType]; - else { - return noopStorage; - } -} diff --git a/packages/store/src/storage/index.ts b/packages/store/src/storage/index.ts deleted file mode 100644 index 843692f4..00000000 --- a/packages/store/src/storage/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -import localStorage from "./local"; -import noopStorage from "./noop"; -import sessionStorage from "./session"; - -export { noopStorage, sessionStorage, localStorage }; diff --git a/packages/store/src/storage/local.ts b/packages/store/src/storage/local.ts deleted file mode 100644 index 6ffa34fa..00000000 --- a/packages/store/src/storage/local.ts +++ /dev/null @@ -1,3 +0,0 @@ -import createWebStorage from "./createWebStorage"; - -export default createWebStorage("local"); diff --git a/packages/store/src/storage/noop.ts b/packages/store/src/storage/noop.ts deleted file mode 100644 index b248c705..00000000 --- a/packages/store/src/storage/noop.ts +++ /dev/null @@ -1,8 +0,0 @@ -async function noop() {} -export default { - getItem: noop, - setItem: noop, - removeItem: noop, - keys: [], - getAllKeys: noop, -}; diff --git a/packages/store/src/storage/session.ts b/packages/store/src/storage/session.ts deleted file mode 100644 index d143f6bb..00000000 --- a/packages/store/src/storage/session.ts +++ /dev/null @@ -1,3 +0,0 @@ -import createWebStorage from "./createWebStorage"; - -export default createWebStorage("session"); diff --git a/packages/store/tsconfig.build.json b/packages/store/tsconfig.build.json deleted file mode 100644 index e8415085..00000000 --- a/packages/store/tsconfig.build.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["src", "../../types"], - "compilerOptions": { - "rootDir": "src", - "declarationDir": "dist" - } -} diff --git a/packages/store/tsconfig.json b/packages/store/tsconfig.json deleted file mode 100644 index 13c8c9f5..00000000 --- a/packages/store/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "include": ["src", "../../types", "stories", "tests"] -} diff --git a/packages/styles/CHANGELOG.md b/packages/styles/CHANGELOG.md deleted file mode 100644 index c64b95fd..00000000 --- a/packages/styles/CHANGELOG.md +++ /dev/null @@ -1,153 +0,0 @@ -# @hyperbook/styles - -## 0.4.0 - -### Minor Changes - -- [`8da55e5`](https://github.com/openpatch/hyperbook/commit/8da55e5d20f8b924e016b60ff36c461f7be1e2c2) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Allow for adjusting the size of the fonts by setting a percentage after the font path. For example, "FireSans.ttf:110%", would increase the default size to 110%. - -### Patch Changes - -- [`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23)]: - - @hyperbook/provider@0.4.2 - -## 0.3.1 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.4.1 - -## 0.3.0 - -### Minor Changes - -- [`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Move to pure ESM packages - -### Patch Changes - -- Updated dependencies [[`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de)]: - - @hyperbook/provider@0.4.0 - -## 0.2.0 - -### Minor Changes - -- [`902c0b3`](https://github.com/openpatch/hyperbook/commit/902c0b30a0aa97984350cfd58ad88d38ef7b4cd6) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Improve static site generation - -### Patch Changes - -- Updated dependencies [[`902c0b3`](https://github.com/openpatch/hyperbook/commit/902c0b30a0aa97984350cfd58ad88d38ef7b4cd6)]: - - @hyperbook/provider@0.3.0 - -## 0.1.13 - -### Patch Changes - -- [`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - fix data not defined - -- Updated dependencies [[`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1)]: - - @hyperbook/provider@0.2.5 - -## 0.1.12 - -### Patch Changes - -- [`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update packages - -- Updated dependencies [[`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e)]: - - @hyperbook/provider@0.2.4 - -## 0.1.11 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.3 - -## 0.1.10 - -### Patch Changes - -- [`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37)]: - - @hyperbook/provider@0.2.2 - -## 0.1.9 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.2.1 - -## 0.1.8 - -### Patch Changes - -- Updated dependencies [[`8d53899`](https://github.com/openpatch/hyperbook/commit/8d538999fc924f7b3e3115416cba4978c9589b68)]: - - @hyperbook/provider@0.2.0 - -## 0.1.7 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.7 - -## 0.1.6 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.6 - -## 0.1.5 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.5 - -## 0.1.4 - -### Patch Changes - -- Updated dependencies [[`cedb551`](https://github.com/openpatch/hyperbook/commit/cedb55191fd025b5a214df406a53cbab5d1b1bc1)]: - - @hyperbook/provider@0.1.4 - -## 0.1.3 - -### Patch Changes - -- Updated dependencies [[`c3e747a`](https://github.com/openpatch/hyperbook/commit/c3e747ab7b95c3e526b3800b169aa8f505f9b9a2)]: - - @hyperbook/provider@0.1.3 - -## 0.1.2 - -### Patch Changes - -- Updated dependencies [[`2c34554`](https://github.com/openpatch/hyperbook/commit/2c34554f64359fb995190b1465daddfa3e0101c0)]: - - @hyperbook/provider@0.1.2 - -## 0.1.1 - -### Patch Changes - -- [`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Force package update due to failed pipeline - -- Updated dependencies [[`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00)]: - - @hyperbook/provider@0.1.1 - -## 0.1.0 - -### Minor Changes - -- [`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Extract feature in separate packages. This allows for easier development of new templates and allows enables to make changes more transparent. - -### Patch Changes - -- Updated dependencies [[`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8)]: - - @hyperbook/provider@0.1.0 diff --git a/packages/styles/README.md b/packages/styles/README.md deleted file mode 100644 index f0f7484f..00000000 --- a/packages/styles/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# @hyperbook/styles - -## Installation - -```sh -yarn add @hyperbook/styles -# or -npm i @hyperbook/styles -``` diff --git a/packages/styles/src/Styles.tsx b/packages/styles/src/Styles.tsx deleted file mode 100644 index 8c2f12fa..00000000 --- a/packages/styles/src/Styles.tsx +++ /dev/null @@ -1,122 +0,0 @@ -import { useConfig, useMakeUrl } from "@hyperbook/provider"; -import { Fragment } from "react"; - -function parseFont(font: string): [string, string] { - const parts = font.split(":"); - if (parts.length == 2) { - return [parts[0], parts[1]]; - } - - return [parts[0], "100%"]; -} - -export const Styles = () => { - const { colors, font, fonts } = useConfig(); - const makeUrl = useMakeUrl(); - return ( - - - {font && ( - - )} - {fonts?.body && ( - - )} - {fonts?.heading && ( - - )} - {fonts?.code && ( - - )} - - - - ); -}; diff --git a/packages/styles/src/index.ts b/packages/styles/src/index.ts deleted file mode 100644 index 5c35a851..00000000 --- a/packages/styles/src/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from "./Styles"; diff --git a/packages/styles/tsconfig.build.json b/packages/styles/tsconfig.build.json deleted file mode 100644 index e8415085..00000000 --- a/packages/styles/tsconfig.build.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["src", "../../types"], - "compilerOptions": { - "rootDir": "src", - "declarationDir": "dist" - } -} diff --git a/packages/styles/tsconfig.json b/packages/styles/tsconfig.json deleted file mode 100644 index f068abe3..00000000 --- a/packages/styles/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "include": ["src", "../../types", "tests"] -} diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts index edb6bd69..d473fcd3 100644 --- a/packages/types/src/index.ts +++ b/packages/types/src/index.ts @@ -22,6 +22,7 @@ export type Navigation = { current: HyperbookPage | null; pages: HyperbookPage[]; sections: HyperbookSection[]; + glossary: HyperbookPage[]; }; export type Term = { @@ -38,6 +39,8 @@ export type HyperbookPageFrontmatter = { lang?: Language; description?: string; keywords?: string[]; + scripts?: string[]; + styles?: string[]; index?: number; hide?: boolean; toc?: boolean; @@ -70,9 +73,9 @@ export type HyperbookFrontmatter = export type HyperbookJson = { name: string; - trailingSlash?: boolean; description?: string; logo?: string; + allowDangerousHtml?: boolean; author?: { name?: string; url?: string; @@ -83,6 +86,8 @@ export type HyperbookJson = { body?: string; code?: string; }; + scripts?: string[]; + styles?: string[]; colors?: { /** * @format color-hex @@ -110,6 +115,15 @@ export type HyperbookJson = { links?: Link[]; elements?: { bookmarks?: false | ElementConfig; + code?: ElementConfig & { + theme?: + | { + dark: string; + light: string; + } + | string; + showLineNumbers?: boolean; + }; excalidraw?: ElementConfig & { autoZoom?: boolean; center?: boolean; @@ -147,3 +161,15 @@ export type Hyperproject = { icon?: string; src: string; } & ({ type: "book" } | { type: "library"; projects: Hyperproject[] }); + +export interface HyperbookContext { + root: string; + config: HyperbookJson; + library?: HyperlibraryJson; + project?: Hyperproject; + makeUrl( + path: string | string[], + base: "public" | "book" | "archive" | "glossary" | "assets", + ): string; + navigation: Navigation; +} diff --git a/packages/element-excalidraw/CHANGELOG.md b/packages/web-component-excalidraw/CHANGELOG.md similarity index 100% rename from packages/element-excalidraw/CHANGELOG.md rename to packages/web-component-excalidraw/CHANGELOG.md diff --git a/packages/element-excalidraw/README.md b/packages/web-component-excalidraw/README.md similarity index 100% rename from packages/element-excalidraw/README.md rename to packages/web-component-excalidraw/README.md diff --git a/packages/web-component-excalidraw/index.html b/packages/web-component-excalidraw/index.html new file mode 100644 index 00000000..cb12c74a --- /dev/null +++ b/packages/web-component-excalidraw/index.html @@ -0,0 +1,22 @@ + + + + + + + Excalidraw + + + + + + + + + + + diff --git a/packages/styles/package.json b/packages/web-component-excalidraw/package.json similarity index 58% rename from packages/styles/package.json rename to packages/web-component-excalidraw/package.json index 422072c9..41bcc55d 100644 --- a/packages/styles/package.json +++ b/packages/web-component-excalidraw/package.json @@ -1,15 +1,16 @@ { - "name": "@hyperbook/styles", - "version": "0.4.0", + "name": "@hyperbook/web-component-excalidraw", + "version": "0.1.0", "author": "Mike Barkmin", "homepage": "https://github.com/openpatch/hyperbook#readme", "license": "MIT", "type": "module", - "main": "dist/index.js", + "main": "dist/index.umd.js", "types": "dist/index.d.ts", - "sideEffects": false, "exports": { - ".": "./dist/index.js" + ".": { + "require": "./dist/index.umd.js" + } }, "files": [ "dist" @@ -20,7 +21,7 @@ "repository": { "type": "git", "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/styles" + "directory": "packages/element-excalidraw" }, "bugs": { "url": "https://github.com/openpatch/hyperbook/issues" @@ -28,21 +29,19 @@ "scripts": { "version": "pnpm build", "lint": "tsc --noEmit", - "build": "rimraf dist && pnpm build:pkg && pnpm build:types", - "build:pkg": "node ../../scripts/build.mjs", - "build:types": "tsc --project tsconfig.build.json --declaration --emitDeclarationOnly" + "build": "vite build" }, "dependencies": { - "@hyperbook/provider": "workspace:*" - }, - "peerDependencies": { - "react": "18.x", - "react-dom": "18.x" + "@excalidraw/excalidraw": "0.17.6", + "@r2wc/react-to-web-component": "^2.0.3", + "react": "18.3.1", + "react-dom": "18.3.1" }, "devDependencies": { + "@rollup/plugin-typescript": "^12.1.1", "@types/react": "18.3.2", "@types/react-dom": "18.3.0", - "react": "18.3.1", - "react-dom": "18.3.1" + "@vitejs/plugin-react": "^4.3.3", + "vite": "^5.4.10" } } diff --git a/packages/web-component-excalidraw/src/HyperbookExcalidraw.tsx b/packages/web-component-excalidraw/src/HyperbookExcalidraw.tsx new file mode 100644 index 00000000..d7f3dbea --- /dev/null +++ b/packages/web-component-excalidraw/src/HyperbookExcalidraw.tsx @@ -0,0 +1,142 @@ +import { + type ExcalidrawImperativeAPI, + type ExcalidrawProps as EDP, + ExcalidrawInitialDataState, +} from "@excalidraw/excalidraw/types/types"; +import { Excalidraw } from "@excalidraw/excalidraw" +import { FC, useCallback, useEffect, useState } from "react"; + +type HyperbookExcalidrawProps = { + lang: string; + autoZoom: boolean; + edit: boolean; + src: string; + onlinkopen: (link: string) => void; +}; + +export const HyperbookExcalidraw: FC = ({ + lang = "en", + autoZoom = true, + edit = false, + src, + onlinkopen = () => { } +}) => { + const [api, setApi] = useState() + + const debounce = (func: Function, timeout = 300) => { + let timer: NodeJS.Timeout; + return (...args: any) => { + clearTimeout(timer); + timer = setTimeout(() => { + func.apply(this, args); + }, timeout); + }; + }; + + const handleResize = () => { + if (autoZoom) { + api?.scrollToContent(undefined, { + fitToViewport: true, + viewportZoomFactor: 0.9, + }); + } + }; + + useEffect(() => { + const stopSpace = (e: KeyboardEvent) => { + if (e.which === 32 && e.target === document.body) { + e.preventDefault(); + } + }; + window.addEventListener("keydown", stopSpace); + + return () => { + window.removeEventListener("keydown", stopSpace); + }; + }, []); + + useEffect(() => { + const debounceResize = debounce(handleResize, 300); + window.addEventListener("resize", debounceResize); + + return () => { + window.removeEventListener("resize", debounceResize); + }; + }, [api, autoZoom]); + + const updateTheme = (e: any) => { + if (e.matches) { + api?.updateScene({ + appState: { theme: "dark" }, + }); + } else { + api?.updateScene({ + appState: { theme: "light" }, + }); + + } + } + const colorSchemeQueryList = window.matchMedia( + "(prefers-color-scheme: dark)", + ); + + useEffect(() => { + colorSchemeQueryList.addEventListener("change", updateTheme); + + return () => { + colorSchemeQueryList.removeEventListener("change", updateTheme); + } + + }, [api]) + + + useEffect(() => { + if (autoZoom) { + setTimeout(() => { + api?.scrollToContent(undefined, { + fitToViewport: true, + viewportZoomFactor: 0.9, + }); + }, 2000); + } + }, [api, autoZoom]); + + const handleLinkOpen: EDP["onLinkOpen"] = useCallback( + (element: any, event: any) => { + const link = element.link; + const { nativeEvent } = event.detail; + const isNewTab = nativeEvent.ctrlKey || nativeEvent.metaKey; + const isNewWindow = nativeEvent.shiftKey; + if (!isNewTab && !isNewWindow) { + // signal that we're handling the redirect ourselves + if (link) { + event.preventDefault(); + onlinkopen(link); + } + } + }, + [], + ); + + const loadData = async (): Promise => { + return fetch(src).then(res => res.json()).then(data => ({ + ...data, + scrollToContent: autoZoom, + appState: { + ...data?.appState, + collaborators: [], + theme: colorSchemeQueryList.matches ? "dark" : "light" + } + })).catch(() => ({})) + } + + return ( + setApi(api)} + langCode={lang} + onLinkOpen={handleLinkOpen} + initialData={loadData()} + viewModeEnabled={!edit} + /> + ); +}; diff --git a/packages/element-excalidraw/src/index.css b/packages/web-component-excalidraw/src/index.css similarity index 100% rename from packages/element-excalidraw/src/index.css rename to packages/web-component-excalidraw/src/index.css diff --git a/packages/web-component-excalidraw/src/index.ts b/packages/web-component-excalidraw/src/index.ts new file mode 100644 index 00000000..f67feb43 --- /dev/null +++ b/packages/web-component-excalidraw/src/index.ts @@ -0,0 +1,15 @@ +import r2wc from "@r2wc/react-to-web-component"; +import { HyperbookExcalidraw } from "./HyperbookExcalidraw"; + +customElements.define( + "hyperbook-excalidraw", + r2wc(HyperbookExcalidraw, { + props: { + lang: "string", + autoZoom: "boolean", + edit: "boolean", + src: "string", + onlinkopen: "function", + }, + }), +); diff --git a/packages/web-component-excalidraw/tsconfig.json b/packages/web-component-excalidraw/tsconfig.json new file mode 100644 index 00000000..5e84980d --- /dev/null +++ b/packages/web-component-excalidraw/tsconfig.json @@ -0,0 +1,7 @@ +{ + "compilerOptions": { + "outDir": "./dist", + "declaration": true, + "jsx": "react-jsx" + } +} diff --git a/packages/web-component-excalidraw/vite.config.ts b/packages/web-component-excalidraw/vite.config.ts new file mode 100644 index 00000000..41552974 --- /dev/null +++ b/packages/web-component-excalidraw/vite.config.ts @@ -0,0 +1,22 @@ +import { resolve } from "path"; +import { defineConfig } from "vite"; +import react from "@vitejs/plugin-react"; +import typescript from "@rollup/plugin-typescript"; + +export default defineConfig(() => ({ + plugins: [react(), typescript()], + build: { + outDir: "./dist", + emptyOutDir: true, + lib: { + formats: ["umd"], + entry: resolve(__dirname, "src/index.ts"), + name: "index", + fileName: (format) => `index.${format}.js`, + }, + }, + define: { + "process.env.NODE_ENV": "'production'", + "process.env.IS_PREACT": JSON.stringify("false"), + }, +})); diff --git a/platforms/vscode/.gitignore b/platforms/vscode/.gitignore index 487bc705..45829298 100644 --- a/platforms/vscode/.gitignore +++ b/platforms/vscode/.gitignore @@ -4,4 +4,4 @@ node_modules *.vsix .DS_Store .history -assets/excalidraw +assets/hyperbook diff --git a/platforms/vscode/app/App.tsx b/platforms/vscode/app/App.tsx deleted file mode 100644 index 2d3faba8..00000000 --- a/platforms/vscode/app/App.tsx +++ /dev/null @@ -1,198 +0,0 @@ -import React, { useEffect, useState } from "react"; -import { Provider, ProviderProps } from "@hyperbook/provider"; -import elementTab from "@hyperbook/element-tabs"; -import elementTiles from "@hyperbook/element-tiles"; -import elementAudio from "@hyperbook/element-audio"; -import elementVideo from "@hyperbook/element-video"; -import elementAlert from "@hyperbook/element-alert"; -import elementBitflow from "@hyperbook/element-bitflow"; -import elementTerm from "@hyperbook/element-term"; -import elementYoutube from "@hyperbook/element-youtube"; -import elementPlantuml from "@hyperbook/element-plantuml"; -import elementProtect from "@hyperbook/element-protect"; -import elementCollapsible from "@hyperbook/element-collapsible"; -import elementScratchblock from "@hyperbook/element-scratchblock"; -import elementDl from "@hyperbook/element-dl"; -import elementBookmarks from "@hyperbook/element-bookmarks"; -import elementStruktog from "@hyperbook/element-struktog"; -import elementQr from "@hyperbook/element-qr"; -import elementMermaid from "@hyperbook/element-mermaid"; -import elementEmbed from "@hyperbook/element-embed"; -import elementExcalidraw from "@hyperbook/element-excalidraw"; -import elementOnlineIde from "@hyperbook/element-online-ide"; -import elementSqlIde from "@hyperbook/element-sql-ide"; -import elementSlideshow from "@hyperbook/element-slideshow"; -import { Markdown } from "@hyperbook/markdown"; -import { Styles } from "@hyperbook/styles"; -import { - ChangeBookFileMessage, - ChangeGlossaryFileMessage, - Message, -} from "../src/messages/messageTypes"; -import { ErrorBoundary } from "./ErrorBoundary"; -import { Shell } from "@hyperbook/shell"; -import { Page } from "./Page"; -import { Term } from "./Term"; - -const vscode = (window as any).vscode as VSCode; - -const createNoopStorage = () => { - return { - getItem(_key: any) { - return Promise.resolve(null); - }, - setItem(_key: any, value: any) { - return Promise.resolve(value); - }, - removeItem(_key: any) { - return Promise.resolve(); - }, - }; -}; - -export const App = () => { - const [state, setState] = useState< - ChangeBookFileMessage | ChangeGlossaryFileMessage - >(); - const [config, setConfig] = useState(); - const assetsPath = state?.payload.assetsPath ?? ""; - - useEffect(() => { - window.addEventListener("message", (event: MessageEvent) => { - if ( - event.data.type === "CHANGE_BOOK_FILE" || - event.data.type === "CHANGE_GLOSSARY_FILE" - ) { - setState(event.data); - } else if (event.data.type === "CONFIG_CHANGE") { - setConfig(event.data.payload); - } - }); - - vscode.postMessage({ - type: "READY", - }); - }, []); - - if (!state) { - return
    ...Loading
    ; - } - - return ( - - { - href = href?.split("#")[0]; - if (href?.startsWith("file:///")) { - return ( - { - vscode.postMessage({ - type: "OPEN", - payload: { - path: href as string, - rootFolder: "", - basePath: "", - }, - }); - }} - {...props} - /> - ); - } else if (href?.startsWith("/")) { - let rootFolder = ""; - if (href.startsWith("/glossary")) { - rootFolder = "glossary"; - } else { - rootFolder = "book"; - } - return ( - { - vscode.postMessage({ - type: "OPEN", - payload: { - path: href as string, - rootFolder: rootFolder, - basePath: config?.basePath, - }, - }); - }} - {...props} - /> - ); - } - return ; - }} - router={{ - push: async () => true, - }} - storage={createNoopStorage()} - makeUrl={() => (p, rootFolder) => { - if (p?.startsWith("/")) { - if (rootFolder) { - return assetsPath + "/" + rootFolder + p; - } else { - return assetsPath + p; - } - } else { - return p || ""; - } - }} - elements={[ - elementTab, - elementAudio, - elementVideo, - elementAlert, - elementBitflow, - elementTerm, - elementYoutube, - elementCollapsible, - elementPlantuml, - elementProtect, - elementDl, - elementEmbed, - elementBookmarks, - elementStruktog, - elementOnlineIde, - elementSqlIde, - elementQr, - elementMermaid, - elementScratchblock, - elementExcalidraw, - elementTiles, - elementSlideshow, - ]} - loadFile={() => async (path) => { - return fetch(path).then((res) => res.text()); - }} - saveFile={() => async (path, content, rootFolder) => { - return vscode.postMessage({ - type: "WRITE", - payload: { - content, - path, - rootFolder, - basePath: config?.basePath, - }, - }); - }} - getActivePageId={async () => - state?.payload.navigation?.current?.href || "" - } - > - - - {state.type === "CHANGE_BOOK_FILE" && } - {state.type === "CHANGE_GLOSSARY_FILE" && } - - - - ); -}; diff --git a/platforms/vscode/app/ErrorBoundary.tsx b/platforms/vscode/app/ErrorBoundary.tsx deleted file mode 100644 index 042fad21..00000000 --- a/platforms/vscode/app/ErrorBoundary.tsx +++ /dev/null @@ -1,45 +0,0 @@ -import React, { Component, ReactNode } from "react"; - -export type ErrorBoundaryProps = { - message?: string; - children: ReactNode; -}; - -export class ErrorBoundary extends Component< - ErrorBoundaryProps, - { error: any; errorInfo: any } -> { - constructor(props: ErrorBoundaryProps) { - super(props); - this.state = { error: null, errorInfo: null }; - } - - static getDerivedStateFromError() { - return { hasError: true }; - } - - componentDidCatch(error: any, errorInfo: any) { - // Catch errors in any components below and re-render with error message - this.setState({ - error: error, - errorInfo: errorInfo, - }); - // You can also log error messages to an error reporting service here - } - - render() { - if (this.state.errorInfo) { - return ( -
    -

    {this.props.message}

    -
    -

    {this.state.error && this.state.error.toString()}

    -

    {this.state.errorInfo.componentStack}

    -
    -
    - ); - } - - return this.props.children; - } -} diff --git a/platforms/vscode/app/Page.tsx b/platforms/vscode/app/Page.tsx deleted file mode 100644 index b31d5fa5..00000000 --- a/platforms/vscode/app/Page.tsx +++ /dev/null @@ -1,36 +0,0 @@ -import { Shell } from "@hyperbook/shell"; -import { ChangeBookFileMessage } from "../src/messages/messageTypes"; -import React from "react"; -import { Markdown } from "@hyperbook/markdown"; -import { useLink } from "@hyperbook/provider"; - -type PageProps = ChangeBookFileMessage["payload"]; - -export const Page = ({ markdown, data, navigation }: PageProps) => { - const Link = useLink(); - return ( - -
    - -
    - {!data.hide && ( -
    - {navigation.previous ? ( - - {navigation.previous.name} - - ) : ( -
    - )} - {navigation.next ? ( - - {navigation.next.name} - - ) : ( -
    - )} -
    - )} - - ); -}; diff --git a/platforms/vscode/app/Term.tsx b/platforms/vscode/app/Term.tsx deleted file mode 100644 index a4c14589..00000000 --- a/platforms/vscode/app/Term.tsx +++ /dev/null @@ -1,29 +0,0 @@ -import React, { Fragment } from "react"; -import { Shell } from "@hyperbook/shell"; -import { ErrorBoundary } from "./ErrorBoundary"; -import { Markdown } from "@hyperbook/markdown"; -import { ChangeGlossaryFileMessage } from "../src/messages/messageTypes"; -import { useLink } from "@hyperbook/provider"; - -type TermProps = ChangeGlossaryFileMessage["payload"]; - -export const Term = ({ navigation, data, markdown, references }: TermProps) => { - const Link = useLink(); - return ( - -
    - -
    - {references.map((p, i) => ( - - {i > 0 && ", "} - - {p.markdown?.data?.name ?? p.name} - - - ))} -
    -
    -
    - ); -}; diff --git a/platforms/vscode/app/global.d.ts b/platforms/vscode/app/global.d.ts deleted file mode 100644 index 77fd99cc..00000000 --- a/platforms/vscode/app/global.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -type Message = import("../src/messages/messageTypes").Message; - -type VSCode = { - postMessage(message: T): void; - getState(): any; - setState(state: any): void; -}; - -declare const vscode: VSCode; diff --git a/platforms/vscode/app/index.scss b/platforms/vscode/app/index.scss deleted file mode 100644 index 38dfa992..00000000 --- a/platforms/vscode/app/index.scss +++ /dev/null @@ -1,52 +0,0 @@ -@import "@hyperbook/drawer/index.css"; -@import "@hyperbook/shell/index.css"; -@import "@hyperbook/markdown/katex.css"; -@import "@hyperbook/markdown/index.css"; -@import "@hyperbook/element-embed/index.css"; -@import "@hyperbook/element-excalidraw/index.css"; -@import "@hyperbook/element-scratchblock/index.css"; -@import "@hyperbook/element-tabs/index.css"; -@import "@hyperbook/element-tiles/index.css"; -@import "@hyperbook/element-audio/index.css"; -@import "@hyperbook/element-video/index.css"; -@import "@hyperbook/element-alert/index.css"; -@import "@hyperbook/element-term/index.css"; -@import "@hyperbook/element-youtube/index.css"; -@import "@hyperbook/element-plantuml/index.css"; -@import "@hyperbook/element-protect/index.css"; -@import "@hyperbook/element-collapsible/index.css"; -@import "@hyperbook/element-dl/index.css"; -@import "@hyperbook/element-bookmarks/index.css"; -@import "@hyperbook/element-struktog/index.css"; -@import "@hyperbook/element-qr/index.css"; -@import "@hyperbook/element-mermaid/index.css"; -@import "@hyperbook/element-bitflow/index.css"; -@import "@hyperbook/element-online-ide/index.css"; -@import "@hyperbook/element-sql-ide/index.css"; -@import "@hyperbook/element-slideshow/index.css"; - -html, -body { - padding: 0; - margin: 0; - overflow: hidden; -} - -body { - -ms-overflow-style: none; /* IE and Edge */ - scrollbar-width: none; /* Firefox */ -} - -body::-webkit-scrollbar { - display: none; -} - -#root { - background: var(--color-background); -} - -.error-boundary { - text-align: center; - margin: 0 auto; - color: #ff0000; -} diff --git a/platforms/vscode/app/index.tsx b/platforms/vscode/app/index.tsx deleted file mode 100644 index bac011c2..00000000 --- a/platforms/vscode/app/index.tsx +++ /dev/null @@ -1,13 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom/client"; -import { App } from "./App"; -import "./index.scss"; - -const root = ReactDOM.createRoot( - document.getElementById("root") as HTMLElement -); -root.render( - - - -); diff --git a/platforms/vscode/app/tsconfig.json b/platforms/vscode/app/tsconfig.json deleted file mode 100644 index 47437090..00000000 --- a/platforms/vscode/app/tsconfig.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "compilerOptions": { - "target": "es2015", - "module": "esnext", - "lib": ["dom", "ES2015"], - "allowSyntheticDefaultImports": true, - "moduleResolution": "node", - "esModuleInterop": true, - "jsx": "react", - "sourceMap": true, - "experimentalDecorators": true, - "strict": true - } -} diff --git a/platforms/vscode/package.json b/platforms/vscode/package.json index a9256dbf..884619d6 100644 --- a/platforms/vscode/package.json +++ b/platforms/vscode/package.json @@ -112,11 +112,9 @@ "build": "npm-run-all compile:*", "compile": "npm-run-all compile:*", "compile:extension": "webpack --config ./webpack.extension.config.js --mode production", - "compile:view": "webpack --config ./webpack.view.config.js --mode production", "compile:schema-hyperbook": "typescript-json-schema ../../packages/types/src/index.ts HyperbookJson --out ./schemas/hyperbook.schema.json --required", "compile:schema-hyperlibrary": "typescript-json-schema ../../packages/types/src/index.ts HyperlibraryJson --out ./schemas/hyperlibrary.schema.json --required", "watch": "npm-run-all -p watch:*", - "watch:view": "webpack --config ./webpack.view.config.js --watch --mode development", "watch:extension": "webpack --config ./webpack.extension.config.js --watch --mode development", "open": "code --extensionDevelopmentPath=$PWD", "pretest": "pnpm compile && pnpm lint", @@ -126,12 +124,10 @@ "@hyperbook/types": "workspace:*", "@types/glob": "8.1.0", "@types/node": "20.12.12", - "@types/react": "18.3.2", - "@types/react-dom": "18.3.0", "@types/vscode": "1.71.0", "@typescript-eslint/eslint-plugin": "7.10.0", "@typescript-eslint/parser": "7.10.0", - "@vscode/vsce": "2.26.1", + "@vscode/vsce": "3.2.1", "buffer": "6.0.3", "copy-webpack-plugin": "12.0.2", "css-loader": "7.1.1", @@ -143,7 +139,6 @@ "npm-run-all": "4.1.5", "ovsx": "0.9.1", "prettier": "3.2.5", - "rimraf": "5.0.7", "sass": "1.77.2", "sass-loader": "14.2.1", "style-loader": "4.0.0", @@ -154,39 +149,8 @@ "webpack-cli": "5.1.4" }, "dependencies": { - "@hyperbook/drawer": "workspace:*", - "@hyperbook/element-alert": "workspace:*", - "@hyperbook/element-audio": "workspace:*", - "@hyperbook/element-bitflow": "workspace:*", - "@hyperbook/element-bookmarks": "workspace:*", - "@hyperbook/element-collapsible": "workspace:*", - "@hyperbook/element-dl": "workspace:*", - "@hyperbook/element-embed": "workspace:*", - "@hyperbook/element-excalidraw": "workspace:*", - "@hyperbook/element-mermaid": "workspace:*", - "@hyperbook/element-online-ide": "workspace:*", - "@hyperbook/element-plantuml": "workspace:*", - "@hyperbook/element-protect": "workspace:*", - "@hyperbook/element-qr": "workspace:*", - "@hyperbook/element-scratchblock": "workspace:*", - "@hyperbook/element-slideshow": "workspace:*", - "@hyperbook/element-sql-ide": "workspace:*", - "@hyperbook/element-struktog": "workspace:*", - "@hyperbook/element-tabs": "workspace:*", - "@hyperbook/element-term": "workspace:*", - "@hyperbook/element-tiles": "workspace:*", - "@hyperbook/element-video": "workspace:*", - "@hyperbook/element-youtube": "workspace:*", "@hyperbook/fs": "workspace:*", - "@hyperbook/markdown": "workspace:*", - "@hyperbook/provider": "workspace:*", - "@hyperbook/shell": "workspace:*", - "@hyperbook/store": "workspace:*", - "@hyperbook/styles": "workspace:*", - "gray-matter": "4.0.3", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-redux": "9.1.2" + "@hyperbook/markdown": "workspace:*" }, "vsce": { "dependencies": false, diff --git a/platforms/vscode/schemas/hyperbook.schema.json b/platforms/vscode/schemas/hyperbook.schema.json index 169eba0c..adf6ba5a 100644 --- a/platforms/vscode/schemas/hyperbook.schema.json +++ b/platforms/vscode/schemas/hyperbook.schema.json @@ -58,6 +58,9 @@ } }, "properties": { + "allowDangerousHtml": { + "type": "boolean" + }, "author": { "properties": { "name": { @@ -113,6 +116,48 @@ } ] }, + "code": { + "allOf": [ + { + "properties": { + "version": { + "type": "string" + } + }, + "type": "object" + }, + { + "properties": { + "showLineNumbers": { + "type": "boolean" + }, + "theme": { + "anyOf": [ + { + "properties": { + "dark": { + "type": "string" + }, + "light": { + "type": "string" + } + }, + "required": [ + "dark", + "light" + ], + "type": "object" + }, + { + "type": "string" + } + ] + } + }, + "type": "object" + } + ] + }, "excalidraw": { "allOf": [ { @@ -257,8 +302,17 @@ } ] }, - "trailingSlash": { - "type": "boolean" + "scripts": { + "items": { + "type": "string" + }, + "type": "array" + }, + "styles": { + "items": { + "type": "string" + }, + "type": "array" } }, "required": [ diff --git a/platforms/vscode/snipptes/hyperbook.code-snippets b/platforms/vscode/snipptes/hyperbook.code-snippets index 4df0a70b..7fed7e42 100644 --- a/platforms/vscode/snipptes/hyperbook.code-snippets +++ b/platforms/vscode/snipptes/hyperbook.code-snippets @@ -156,4 +156,8 @@ "prefix": [":video"], "body": ["::video{src=\"$1\"}", "$0"] } + "Element Pagelist": { + "prefix": [":pagelist"], + "body": ["::pagelist{source=\"$1\"}", "$0"] + } } diff --git a/platforms/vscode/src/Preview.ts b/platforms/vscode/src/Preview.ts index abfa9369..e601806d 100644 --- a/platforms/vscode/src/Preview.ts +++ b/platforms/vscode/src/Preview.ts @@ -3,21 +3,14 @@ import * as Constants from "./Constants"; import { hyperbook, hyperproject, + vfile, VFileBook, VFileGlossary, - vfile, - VFile, - getMarkdown, } from "@hyperbook/fs"; -import { htmlTemplate } from "./html-template"; +import { process } from "@hyperbook/markdown"; import { disposeAll } from "./utils/dispose"; -import { - ChangeBookFileMessage, - ChangeGlossaryFileMessage, - Message, -} from "./messages/messageTypes"; import path from "path"; -import { HyperbookJson, Navigation } from "@hyperbook/types"; +import { HyperbookContext, HyperbookJson, Navigation } from "@hyperbook/types"; export default class Preview { panel: vscode.WebviewPanel | undefined; @@ -27,7 +20,6 @@ export default class Preview { private _resource: vscode.Uri | undefined; private _vfile: VFileBook | VFileGlossary | undefined; - private _navigation: Navigation | undefined; private readonly disposables: vscode.Disposable[] = []; private _disposed: boolean = false; @@ -36,27 +28,17 @@ export default class Preview { constructor(context: vscode.ExtensionContext) { this.context = context; + vscode.workspace.onDidChangeTextDocument(async (e) => { if ( e.document.fileName.endsWith("hyperbook.json") || e.document.fileName.endsWith("hyperlibrary.json") ) { - this.postMessage({ - type: "CONFIG_CHANGE", - payload: await this.getConfig(), - }); + await this.handleTextDocumentChange(); } }); } - parseConfig(config: string) { - try { - return JSON.parse(config); - } catch (e) { - return {}; - } - } - async getConfig() { if (this._resource) { const hyperbookRoot = await hyperbook @@ -68,13 +50,13 @@ export default class Preview { () => ({ name: "@Hyperbook@", - } as const) + }) as const, ); const rootPath = vscode.workspace.getWorkspaceFolder(this._resource); if (rootPath) { const projectPath = this.hyperbookViewerConfig.get("root"); const project = await hyperproject.get( - path.join(rootPath.uri.fsPath, projectPath) + path.join(rootPath.uri.fsPath, projectPath), ); const links = []; if (config.links) { @@ -106,111 +88,19 @@ export default class Preview { } } - async getPageProps( - refreshNavigation = false - ): Promise { - if ( - vscode.window.activeTextEditor && - this.checkDocumentIsHyperbookFile(false) && - this._vfile && - this.panel - ) { - if (!this._navigation || refreshNavigation) { - await vfile.clean(this._vfile.root); - this._navigation = await hyperbook.getNavigation( - this._vfile.root, - this._vfile - ); - } - const assetsPath = this.panel.webview - .asWebviewUri(vscode.Uri.file(this._vfile.root)) - .toString(); - - return { - navigation: this._navigation, - data: this._vfile.markdown.data, - markdown: this._vfile.markdown.content, - locale: this._vfile.markdown.data.lang || "en", - assetsPath, - }; - } - return { - navigation: { - current: null, - next: null, - pages: [], - previous: null, - sections: [], - }, - assetsPath: "", - data: { name: "Not Found" }, - locale: "en", - markdown: "", - }; - } - - async getTermProps( - refreshNavigation = false - ): Promise { - if ( - vscode.window.activeTextEditor && - this.checkDocumentIsHyperbookFile(false) && - this._vfile && - this._vfile.folder === "glossary" && - this.panel - ) { - if (!this._navigation || refreshNavigation) { - await vfile.clean(this._vfile.root); - this._navigation = await hyperbook.getNavigation( - this._vfile.root, - this._vfile - ); - } - const assetsPath = this.panel.webview - .asWebviewUri(vscode.Uri.file(this._vfile.root)) - .toString(); - - return { - references: this._vfile.references, - navigation: this._navigation, - data: this._vfile.markdown.data, - markdown: this._vfile.markdown.content, - locale: this._vfile.markdown.data.lang || "en", - assetsPath, - }; - } - return { - references: [], - navigation: { - current: null, - next: null, - pages: [], - previous: null, - sections: [], - }, - assetsPath: "", - data: { name: "Not Found" }, - locale: "en", - markdown: "", - }; - } - - /* - * Update everything including the navigation - */ - async fullUpdate() { + async handleTextDocumentChange() { this.hyperbookViewerConfig = vscode.workspace.getConfiguration("hyperbook"); if ( vscode.window.activeTextEditor && - this.checkDocumentIsHyperbookFile(false) && + this.checkDocumentIsHyperbookFile(true) && this.panel && this.panel !== undefined ) { + this._resource = vscode.window.activeTextEditor.document.uri; const filePaths = vscode.window.activeTextEditor.document.fileName.split("/"); const fileName = filePaths[filePaths.length - 1]; - this.panel.title = `[Preview] ${fileName}`; - this._resource = vscode.window.activeTextEditor.document.uri; + const hyperbookRoot = await hyperbook.findRoot(this._resource.fsPath); const resourcePath = this._resource.fsPath; this._vfile = await vfile @@ -219,63 +109,65 @@ export default class Preview { return vfile.get(hyperbookRoot, "glossary", resourcePath, "absolute"); }); - if (this._vfile.folder === "glossary") { - console.log("Full glossary update"); - this.postMessage({ - type: "CHANGE_GLOSSARY_FILE", - payload: await this.getTermProps(true), - }); - } else { - console.log("Full book update"); - this.postMessage({ - type: "CHANGE_BOOK_FILE", - payload: await this.getPageProps(true), - }); - } - this.postMessage({ - type: "CONFIG_CHANGE", - payload: await this.getConfig(), - }); - } - } - - /* - * Only update the content and data - */ - async partialUpdate() { - this.hyperbookViewerConfig = vscode.workspace.getConfiguration("hyperbook"); - if ( - vscode.window.activeTextEditor && - this.checkDocumentIsHyperbookFile(false) && - this.panel && - this._vfile - ) { - console.log("Partial update"); + this.panel.title = `[Preview] ${fileName}`; - this._vfile = { - ...this._vfile, - markdown: await getMarkdown(this._vfile), + const pagesAndSections = await hyperbook.getPagesAndSections( + this._vfile.root, + ); + const fileNav = await hyperbook.getNavigationForFile(this._vfile as any); + const navigation: Navigation = { + ...pagesAndSections, + ...fileNav, }; + const files = await vfile.list(this._vfile.root); + const config = await this.getConfig(); + + const ctx: HyperbookContext = { + root: this._vfile.root, + config, + navigation, + makeUrl: (p, base) => { + if (typeof p === "string") { + if (p.includes("://")) return p; + p = [p]; + } - if (this._vfile.folder === "glossary") { - this.postMessage({ - type: "CHANGE_GLOSSARY_FILE", - payload: await this.getTermProps(true), - }); - } else { - this.postMessage({ - type: "CHANGE_BOOK_FILE", - payload: await this.getPageProps(true), - }); - } - } - } + if (base === "assets") { + const vsExtensionPath = + this.panel?.webview + .asWebviewUri( + vscode.Uri.joinPath( + this.context.extensionUri, + "assets", + "hyperbook", + ), + ) + .toString() || ""; + return path.posix.join(vsExtensionPath, ...p); + } else if (base === "public") { + const vsPath = + this.panel?.webview + .asWebviewUri(vscode.Uri.file(this._vfile?.root || "")) + .toString() || ""; + return path.posix.join(vsPath, "public", ...p); + } - async getWebviewContent() { - if (this.panel) { - return htmlTemplate(this.context, this.panel); - } else { - return ""; + // hbs, yaml and json is missing + const file = files.find((f) => f.path.href === p.join("/")); + if (file) { + const fileUri = { + scheme: "file", + path: file?.path.absolute || "", + authority: "", + }; + return `command:vscode.open?${encodeURIComponent(JSON.stringify(fileUri))}`; + } + return "#"; + }, + }; + const result = await process(this._vfile.markdown.content, ctx); + + this.panel.webview.html = String(result); } } @@ -283,7 +175,7 @@ export default class Preview { const supportedLanguages = ["markdown", "yaml", "json", "handlebars"]; const supportedFiles = ["hyperbook.json", "hyperlibrary.json"]; const fileName = path.basename( - vscode.window.activeTextEditor?.document.fileName || "" + vscode.window.activeTextEditor?.document.fileName || "", ); const languageId = vscode.window.activeTextEditor?.document.languageId.toLowerCase() || ""; @@ -292,103 +184,56 @@ export default class Preview { supportedFiles.includes(fileName); if (!isSupported && showWarning) { vscode.window.showInformationMessage( - Constants.ErrorMessages.NO_HYPERBOOK_FILE + Constants.ErrorMessages.NO_HYPERBOOK_FILE, ); } return isSupported; } async initMarkdownPreview(viewColumn: number) { - let proceed = this.checkDocumentIsHyperbookFile(false); - if (proceed) { + if (this.checkDocumentIsHyperbookFile(true)) { const filePaths = vscode.window.activeTextEditor?.document.fileName || ""; const fileName = path.basename(filePaths); - // Create and show a new webview this.panel = vscode.window.createWebviewPanel( - "liveHTMLPreviewer", - "[Preview] " + fileName, + "liveHTMLPreview", + "[Preview]" + fileName, viewColumn, { - // Enable scripts in the webview enableScripts: true, retainContextWhenHidden: true, - // And restrict the webview to only loading content from our extension's `assets` directory. + enableCommandUris: true, localResourceRoots: [ - vscode.Uri.joinPath(this.context.extensionUri, "out", "app"), vscode.Uri.joinPath(this.context.extensionUri, "assets"), vscode.Uri.file(vscode.workspace?.rootPath || ""), ], - } + }, ); this.panel.iconPath = this.iconPath; this._disposed = false; - this.panel.webview.html = await this.getWebviewContent(); - - // And set its HTML content this.editor = vscode.window.activeTextEditor; - await this.fullUpdate.call(this); - - vscode.workspace.onDidChangeTextDocument(this.partialUpdate.bind(this)); - vscode.workspace.onDidChangeConfiguration(this.partialUpdate.bind(this)); - vscode.workspace.onDidSaveTextDocument(this.partialUpdate.bind(this)); - vscode.window.onDidChangeActiveTextEditor(this.fullUpdate.bind(this)); - - this.panel.webview.onDidReceiveMessage(async (m: Message) => { - if (m.type === "OPEN" && this._vfile) { - console.log(m); - if (m.payload.path.startsWith("file")) { - const fileUri = vscode.Uri.parse(m.payload.path); - return vscode.workspace - .openTextDocument(fileUri) - .then((doc) => - vscode.window.showTextDocument(doc, vscode.ViewColumn.One) - ); - } - - let file: VFile = await vfile.get( - this._vfile.root, - (m.payload.rootFolder as any) || "book", - m.payload.path - ); - - if (file) { - const fileUri = vscode.Uri.file(file.path.absolute); - return vscode.workspace - .openTextDocument(fileUri) - .then((doc) => - vscode.window.showTextDocument(doc, vscode.ViewColumn.One) - ); - } - } else if (m.type === "WRITE") { - const hasExtension = m.payload.path.split(".").length > 1; - if (!hasExtension) { - m.payload.path += ".md"; - } + await this.handleTextDocumentChange.call(this); - return vscode.workspace.fs.writeFile( - vscode.Uri.file( - path.join( - vscode.workspace.rootPath || "", - m.payload.basePath || "", - m.payload.rootFolder || "", - m.payload.path - ) - ), - Buffer.from(m.payload.content, "utf8") - ); - } else if (m.type === "READY") { - this.fullUpdate(); - } - }); + vscode.workspace.onDidChangeTextDocument( + this.handleTextDocumentChange.bind(this), + ); + vscode.workspace.onDidChangeConfiguration( + this.handleTextDocumentChange.bind(this), + ); + vscode.workspace.onDidSaveTextDocument( + this.handleTextDocumentChange.bind(this), + ); + vscode.window.onDidChangeActiveTextEditor( + this.handleTextDocumentChange.bind(this), + ); this.panel.onDidDispose( () => { this.dispose(); }, null, - this.disposables + this.disposables, ); } } @@ -401,12 +246,6 @@ export default class Preview { }; } - private postMessage(msg: Message) { - if (!this._disposed) { - this.panel?.webview.postMessage(msg); - } - } - public dispose() { if (this._disposed) { return; diff --git a/platforms/vscode/src/extension.ts b/platforms/vscode/src/extension.ts index 99920cdf..a4c0e3fb 100644 --- a/platforms/vscode/src/extension.ts +++ b/platforms/vscode/src/extension.ts @@ -13,14 +13,14 @@ export function activate(context: vscode.ExtensionContext) { let disposableStatusBar = vscode.window.onDidChangeActiveTextEditor( statusBarItem.updateStatusbar, statusBarItem, - context.subscriptions + context.subscriptions, ); let disposableSidePreview = vscode.commands.registerCommand( "hyperbook.sidePreview", async () => { - await preview.initMarkdownPreview(vscode.ViewColumn.Two); - } + await preview.initMarkdownPreview(vscode.ViewColumn.Beside); + }, ); // push to subscriptions list so that they are disposed automatically @@ -63,18 +63,18 @@ export function activate(context: vscode.ExtensionContext) { return files.map((f) => { const p = path.relative( path.join(workspaceFolder, "book"), - f.path + f.path, ); const { dir, name } = path.parse(p); return new vscode.CompletionItem( name !== "index" ? path.join(dir, name) : dir, - vscode.CompletionItemKind.File + vscode.CompletionItemKind.File, ); }); }); }, }, - "/" + "/", ); const publicProvider = vscode.languages.registerCompletionItemProvider( @@ -100,17 +100,17 @@ export function activate(context: vscode.ExtensionContext) { return files.map((f) => { const p = path.relative( path.join(workspaceFolder, "public"), - f.path + f.path, ); return new vscode.CompletionItem( p, - vscode.CompletionItemKind.File + vscode.CompletionItemKind.File, ); }); }); }, }, - "/" + "/", ); const glossaryProvider = vscode.languages.registerCompletionItemProvider( @@ -137,18 +137,18 @@ export function activate(context: vscode.ExtensionContext) { return files.map((f) => { const p = path.relative( path.join(workspaceFolder, "glossary"), - f.path + f.path, ); const { name } = path.parse(p); return new vscode.CompletionItem( name, - vscode.CompletionItemKind.File + vscode.CompletionItemKind.File, ); }); }); }, }, - "#" + "#", ); const archiveProvider = vscode.languages.registerCompletionItemProvider( @@ -171,7 +171,7 @@ export function activate(context: vscode.ExtensionContext) { return vscode.workspace.fs .readDirectory( - vscode.Uri.parse(path.join(workspaceFolder, "archives")) + vscode.Uri.parse(path.join(workspaceFolder, "archives")), ) .then((files) => { return files @@ -180,20 +180,20 @@ export function activate(context: vscode.ExtensionContext) { const { name } = path.parse(file); return new vscode.CompletionItem( name, - vscode.CompletionItemKind.Folder + vscode.CompletionItemKind.Folder, ); }); }); }, }, - '"' + '"', ); context.subscriptions.push( bookProvider, publicProvider, glossaryProvider, - archiveProvider + archiveProvider, ); } diff --git a/platforms/vscode/src/html-template.ts b/platforms/vscode/src/html-template.ts deleted file mode 100644 index 82acda5f..00000000 --- a/platforms/vscode/src/html-template.ts +++ /dev/null @@ -1,61 +0,0 @@ -import * as vscode from "vscode"; - -export const htmlTemplate = ( - context: vscode.ExtensionContext, - panel: vscode.WebviewPanel -) => { - const nonce = getNonce(); - const bundleScriptPath = panel.webview.asWebviewUri( - vscode.Uri.joinPath(context.extensionUri, "out", "app", "bundle.js") - ); - return ` - - - - - - - - -
    - - - - `; -}; - -function getNonce() { - let text = ""; - const possible = - "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; - for (let i = 0; i < 32; i++) { - text += possible.charAt(Math.floor(Math.random() * possible.length)); - } - return text; -} diff --git a/platforms/vscode/src/messages/messageTypes.ts b/platforms/vscode/src/messages/messageTypes.ts deleted file mode 100644 index 1f876ded..00000000 --- a/platforms/vscode/src/messages/messageTypes.ts +++ /dev/null @@ -1,86 +0,0 @@ -import { Range } from "vscode"; -import { - HyperbookJson, - HyperbookPage, - Language, - Navigation, -} from "@hyperbook/types"; -import { vfile } from "@hyperbook/fs"; - -export interface WriteMessage { - type: "WRITE"; - payload: { - path: string; - content: string; - rootFolder?: string; - basePath?: string; - }; -} - -export interface ChangeBookFileMessage { - type: "CHANGE_BOOK_FILE"; - payload: { - locale: Language; - markdown: string; - data: HyperbookPage; - navigation: Navigation; - assetsPath: string; - }; -} - -export interface ChangeGlossaryFileMessage { - type: "CHANGE_GLOSSARY_FILE"; - payload: { - locale: Language; - markdown: string; - data: HyperbookPage; - references: vfile.VFileBook[]; - navigation: Navigation; - assetsPath: string; - }; -} - -export interface ConfigChangeMessage { - type: "CONFIG_CHANGE"; - payload: HyperbookJson; -} - -export interface OpenMessage { - type: "OPEN"; - payload: { - path: string; - rootFolder?: string; - basePath?: string; - }; -} - -export interface ScrollFromWebViewMessage { - type: "SCROLL_FROM_WEBVIEW"; - payload: { - line: number; - }; -} - -export interface ScrollFromExtensionMessage { - type: "SCROLL_FROM_EXTENSION"; - payload: { - line: readonly Range[]; - source: { - lineCount: number; - }; - }; -} - -export interface ReadyMessage { - type: "READY"; -} - -export type Message = - | ChangeBookFileMessage - | ChangeGlossaryFileMessage - | ReadyMessage - | ConfigChangeMessage - | WriteMessage - | OpenMessage - | ScrollFromWebViewMessage - | ScrollFromExtensionMessage; diff --git a/platforms/vscode/syntaxes/hyperbook.json b/platforms/vscode/syntaxes/hyperbook.json index 5eae5e9c..2f801cbf 100644 --- a/platforms/vscode/syntaxes/hyperbook.json +++ b/platforms/vscode/syntaxes/hyperbook.json @@ -77,6 +77,9 @@ }, { "include": "#directive-video" + }, + { + "include": "#directive-pagelist" } ], "repository": { @@ -948,6 +951,33 @@ ] } } + }, + "directive-pagelist": { + "name": "meta.directive.pagelist.hyperbook", + "match": "(^|\\G)(:{2,})(pagelist){(.*)}\\s*$", + "captures": { + "2": { + "name": "punctuation.definition.directive.level.hyperbook" + }, + "3": { + "name": "entity.name.function.directive.pagelist.hyperbook" + }, + "4": { + "patterns": [ + { + "match": "(source|orderBy|format)=\"([^\"]*)\"", + "captures": { + "1": { + "name": "keyword.parameter.directive.pagelist.hyperbook" + }, + "2": { + "name": "string.quoted.double.untitled" + } + } + } + ] + } + } } } } diff --git a/platforms/vscode/webpack.extension.config.js b/platforms/vscode/webpack.extension.config.js index 23803d7f..c4ca4469 100644 --- a/platforms/vscode/webpack.extension.config.js +++ b/platforms/vscode/webpack.extension.config.js @@ -1,4 +1,5 @@ const path = require("path"); +const CopyPlugin = require("copy-webpack-plugin"); module.exports = { target: "node", @@ -16,6 +17,23 @@ module.exports = { externals: { vscode: "commonjs vscode", // the vscode-module is created on-the-fly and must be excluded. Add other modules that cannot be webpack'ed, 📖 -> https://webpack.js.org/configuration/externals/ }, + plugins: [ + new CopyPlugin({ + patterns: [ + { + from: path.resolve( + __dirname, + "node_modules", + "@hyperbook", + "markdown", + "dist", + "assets", + ), + to: path.resolve(__dirname, "assets", "hyperbook"), + }, + ], + }), + ], module: { rules: [ { diff --git a/platforms/vscode/webpack.view.config.js b/platforms/vscode/webpack.view.config.js deleted file mode 100644 index c2ed6ea9..00000000 --- a/platforms/vscode/webpack.view.config.js +++ /dev/null @@ -1,91 +0,0 @@ -const path = require("path"); -const NodePolyfillPlugin = require("node-polyfill-webpack-plugin"); -const CopyPlugin = require("copy-webpack-plugin"); - -module.exports = { - entry: path.join(__dirname, "app", "index.tsx"), - resolve: { - extensions: [".ts", ".tsx", ".js", ".mjs", ".jsx", ".css"], - }, - plugins: [ - new NodePolyfillPlugin(), - new CopyPlugin({ - patterns: [ - { - from: path.resolve( - __dirname, - "node_modules", - "@hyperbook", - "element-excalidraw", - "node_modules", - "@excalidraw", - "excalidraw", - "dist", - "excalidraw-assets" - ), - to: path.resolve( - __dirname, - "assets", - "excalidraw", - "excalidraw-assets" - ), - }, - { - from: path.resolve( - __dirname, - "node_modules", - "@hyperbook", - "element-excalidraw", - "node_modules", - "@excalidraw", - "excalidraw", - "dist", - "excalidraw-assets-dev" - ), - to: path.resolve( - __dirname, - "assets", - "excalidraw", - "excalidraw-assets-dev" - ), - }, - ], - }), - ], - devtool: "inline-source-map", - module: { - rules: [ - { - test: /\.tsx?$/, - use: "ts-loader", - exclude: "/node_modules/", - }, - { - test: /\.(scss|css)$/, - use: ["style-loader", "css-loader", "sass-loader"], - }, - { - test: /\.m?js$/, - resolve: { - fullySpecified: false, - }, - }, - { - test: /\.(woff(2)?|ttf|eot|svg)(\?v=\d+\.\d+\.\d+)?$/, - use: [ - { - loader: "file-loader", - options: { - name: "[name].[ext]", - outputPath: "fonts/", - }, - }, - ], - }, - ], - }, - output: { - filename: "bundle.js", - path: path.resolve(__dirname, "out", "app"), - }, -}; diff --git a/platforms/web/CHANGELOG.md b/platforms/web/CHANGELOG.md deleted file mode 100644 index 1d154739..00000000 --- a/platforms/web/CHANGELOG.md +++ /dev/null @@ -1,1239 +0,0 @@ -# hyperbook-simple-template - -## 0.33.3 - -### Patch Changes - -- Updated dependencies [[`2bfe682`](https://github.com/openpatch/hyperbook/commit/2bfe6828e578399c405bf4fc52fb1845efe2fb6a)]: - - @hyperbook/element-bitflow@0.2.3 - - @hyperbook/element-mermaid@0.3.7 - - @hyperbook/element-audio@0.2.3 - - @hyperbook/element-video@0.2.4 - - @hyperbook/element-qr@0.3.3 - - @hyperbook/markdown@0.9.7 - - @hyperbook/shell@0.7.6 - - @hyperbook/fs@0.13.1 - -## 0.33.2 - -## 0.33.1 - -## 0.33.0 - -## 0.32.0 - -## 0.31.3 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/markdown@0.9.6 - -## 0.31.2 - -## 0.31.1 - -### Patch Changes - -- Updated dependencies [[`e9359e1`](https://github.com/openpatch/hyperbook/commit/e9359e1e8d51be1d2a71d76e74940e0eb844a74c), [`c500196`](https://github.com/openpatch/hyperbook/commit/c500196fe68bd9af55086fd16f74b202f53b23ec)]: - - @hyperbook/element-bookmarks@0.3.3 - - @hyperbook/element-dl@0.2.3 - - @hyperbook/fs@0.13.0 - -## 0.31.0 - -### Minor Changes - -- [`8da55e5`](https://github.com/openpatch/hyperbook/commit/8da55e5d20f8b924e016b60ff36c461f7be1e2c2) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Allow for adjusting the size of the fonts by setting a percentage after the font path. For example, "FireSans.ttf:110%", would increase the default size to 110%. - -### Patch Changes - -- [`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`4a3a21f`](https://github.com/openpatch/hyperbook/commit/4a3a21f40c0355c308e8dcb723234c0434aced23), [`8da55e5`](https://github.com/openpatch/hyperbook/commit/8da55e5d20f8b924e016b60ff36c461f7be1e2c2)]: - - @hyperbook/drawer@0.1.2 - - @hyperbook/element-alert@0.2.2 - - @hyperbook/element-audio@0.2.2 - - @hyperbook/element-bitflow@0.2.2 - - @hyperbook/element-bookmarks@0.3.2 - - @hyperbook/element-collapsible@0.4.2 - - @hyperbook/element-dl@0.2.2 - - @hyperbook/element-embed@0.2.2 - - @hyperbook/element-excalidraw@0.6.2 - - @hyperbook/element-mermaid@0.3.6 - - @hyperbook/element-online-ide@0.6.2 - - @hyperbook/element-plantuml@0.2.2 - - @hyperbook/element-protect@0.4.2 - - @hyperbook/element-qr@0.3.2 - - @hyperbook/element-scratchblock@0.2.2 - - @hyperbook/element-slideshow@0.0.2 - - @hyperbook/element-sql-ide@0.5.2 - - @hyperbook/element-struktog@0.2.2 - - @hyperbook/element-tabs@0.2.2 - - @hyperbook/element-term@0.2.2 - - @hyperbook/element-tiles@0.1.4 - - @hyperbook/element-video@0.2.3 - - @hyperbook/element-youtube@0.2.2 - - @hyperbook/fs@0.12.1 - - @hyperbook/markdown@0.9.5 - - @hyperbook/provider@0.4.2 - - @hyperbook/shell@0.7.5 - - @hyperbook/store@0.2.1 - - @hyperbook/styles@0.4.0 - -## 0.30.1 - -### Patch Changes - -- Updated dependencies [[`90c99bd`](https://github.com/openpatch/hyperbook/commit/90c99bd0edc9ea8da5e1c6376e09d1977f881870)]: - - @hyperbook/fs@0.12.0 - - @hyperbook/provider@0.4.1 - - @hyperbook/shell@0.7.4 - - @hyperbook/element-alert@0.2.1 - - @hyperbook/element-audio@0.2.1 - - @hyperbook/element-bitflow@0.2.1 - - @hyperbook/element-bookmarks@0.3.1 - - @hyperbook/element-collapsible@0.4.1 - - @hyperbook/element-dl@0.2.1 - - @hyperbook/element-embed@0.2.1 - - @hyperbook/element-excalidraw@0.6.1 - - @hyperbook/element-mermaid@0.3.5 - - @hyperbook/element-online-ide@0.6.1 - - @hyperbook/element-plantuml@0.2.1 - - @hyperbook/element-protect@0.4.1 - - @hyperbook/element-qr@0.3.1 - - @hyperbook/element-scratchblock@0.2.1 - - @hyperbook/element-slideshow@0.0.1 - - @hyperbook/element-sql-ide@0.5.1 - - @hyperbook/element-struktog@0.2.1 - - @hyperbook/element-tabs@0.2.1 - - @hyperbook/element-term@0.2.1 - - @hyperbook/element-tiles@0.1.3 - - @hyperbook/element-video@0.2.2 - - @hyperbook/element-youtube@0.2.1 - - @hyperbook/markdown@0.9.4 - - @hyperbook/styles@0.3.1 - -## 0.30.0 - -### Minor Changes - -- [`bc1849c`](https://github.com/openpatch/hyperbook/commit/bc1849c54b13f714f10171dfcec53c5f6fb20047) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Bring VS Code extension inline with the web platfrom. - -## 0.29.4 - -### Patch Changes - -- [`d723aaf`](https://github.com/openpatch/hyperbook/commit/d723aafed2eab1ebef7eda5055ba59f2d4e16a9b) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Fix fs module for windows. This should also fix the vscode extension on windows. - -- Updated dependencies [[`d723aaf`](https://github.com/openpatch/hyperbook/commit/d723aafed2eab1ebef7eda5055ba59f2d4e16a9b)]: - - @hyperbook/markdown@0.9.3 - - @hyperbook/fs@0.11.3 - -## 0.29.3 - -### Patch Changes - -- [`919e9a5`](https://github.com/openpatch/hyperbook/commit/919e9a534bc34a31085fb7cb6c472fe686dbfe51) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Another try fixing the cytoscope bug - -- Updated dependencies [[`919e9a5`](https://github.com/openpatch/hyperbook/commit/919e9a534bc34a31085fb7cb6c472fe686dbfe51)]: - - @hyperbook/element-mermaid@0.3.4 - -## 0.29.2 - -### Patch Changes - -- Updated dependencies [[`3905268`](https://github.com/openpatch/hyperbook/commit/390526881c0c74763ca791f225bb01edbe5ab959)]: - - @hyperbook/element-mermaid@0.3.3 - -## 0.29.1 - -### Patch Changes - -- Updated dependencies [[`a4284b6`](https://github.com/openpatch/hyperbook/commit/a4284b63b13fc3ce8b57cc3d9ce11f0d075c2c7d)]: - - @hyperbook/element-mermaid@0.3.2 - -## 0.29.0 - -### Minor Changes - -- [`5c90434`](https://github.com/openpatch/hyperbook/commit/5c90434bd37a4067cdc400a394f7caea2b18a33f) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Add slideshow element - -## 0.28.3 - -### Patch Changes - -- Updated dependencies [[`5792288`](https://github.com/openpatch/hyperbook/commit/57922883e159929aba257f8411fd122f0e804daf)]: - - @hyperbook/fs@0.11.2 - -## 0.28.2 - -### Patch Changes - -- Updated dependencies [[`cfdb112`](https://github.com/openpatch/hyperbook/commit/cfdb112f3c845db5607f681e4bb2ac521523d292)]: - - @hyperbook/fs@0.11.1 - -## 0.28.1 - -### Patch Changes - -- Updated dependencies [[`2eca214`](https://github.com/openpatch/hyperbook/commit/2eca214b355e3cdfec59f21cc067539666cdf5f7)]: - - @hyperbook/element-tiles@0.1.2 - - @hyperbook/element-video@0.2.1 - -## 0.28.0 - -### Minor Changes - -- [#847](https://github.com/openpatch/hyperbook/pull/847) [`0b893a3`](https://github.com/openpatch/hyperbook/commit/0b893a39ba9f5e3fffa40fc3ce115bd379f43313) Thanks [@elielmartinsbr](https://github.com/elielmartinsbr)! - add video element - -### Patch Changes - -- Updated dependencies [[`0b893a3`](https://github.com/openpatch/hyperbook/commit/0b893a39ba9f5e3fffa40fc3ce115bd379f43313)]: - - @hyperbook/element-video@0.2.0 - -## 0.27.1 - -### Patch Changes - -- Updated dependencies [[`add7313`](https://github.com/openpatch/hyperbook/commit/add7313099754952f27a5de4534607b55043f898)]: - - @hyperbook/element-tiles@0.1.1 - -## 0.27.0 - -### Minor Changes - -- [`1e92522`](https://github.com/openpatch/hyperbook/commit/1e925225fb8329ddc7b26317ec7779ee008da6a2) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - add tiles - -### Patch Changes - -- Updated dependencies [[`1e92522`](https://github.com/openpatch/hyperbook/commit/1e925225fb8329ddc7b26317ec7779ee008da6a2)]: - - @hyperbook/element-tiles@0.1.0 - -## 0.26.6 - -### Patch Changes - -- Updated dependencies [[`52b7fad`](https://github.com/openpatch/hyperbook/commit/52b7fad9129bbf1c0f3f192eddfb7c7ed07dc561), [`4042bc1`](https://github.com/openpatch/hyperbook/commit/4042bc1d1e54f6c81d76243b96e8a933d40fea7d)]: - - @hyperbook/element-mermaid@0.3.1 - -## 0.26.5 - -### Patch Changes - -- Updated dependencies [[`2b94605`](https://github.com/openpatch/hyperbook/commit/2b9460574a23fcecc66c0a187a56d236891482fe)]: - - @hyperbook/element-excalidraw@0.6.0 - - @hyperbook/element-mermaid@0.3.0 - -## 0.26.4 - -### Patch Changes - -- Updated dependencies [[`183bb32`](https://github.com/openpatch/hyperbook/commit/183bb3253256342882a167332a1ac7209740ab43)]: - - @hyperbook/shell@0.7.3 - -## 0.26.3 - -## 0.26.2 - -## 0.26.1 - -### Patch Changes - -- Updated dependencies [[`f5ddc0c`](https://github.com/openpatch/hyperbook/commit/f5ddc0c53564ea426d31aff69695e8fc91dfa0e9)]: - - @hyperbook/element-excalidraw@0.5.2 - -## 0.26.0 - -### Patch Changes - -- Updated dependencies [[`2e67754`](https://github.com/openpatch/hyperbook/commit/2e67754670a45ce19d4974c80294bff18713f433)]: - - @hyperbook/fs@0.11.0 - -## 0.25.0 - -### Patch Changes - -- Updated dependencies [[`9cf8f9c`](https://github.com/openpatch/hyperbook/commit/9cf8f9c028c315b63770495b97d0567da0f69c1b)]: - - @hyperbook/element-online-ide@0.6.0 - - @hyperbook/element-sql-ide@0.5.0 - -## 0.24.0 - -### Patch Changes - -- Updated dependencies [[`81c6d9e`](https://github.com/openpatch/hyperbook/commit/81c6d9e7b5df239db6fc240b7d75221f88587f31)]: - - @hyperbook/element-online-ide@0.5.0 - -## 0.23.2 - -### Patch Changes - -- [`d5dfc57`](https://github.com/openpatch/hyperbook/commit/d5dfc57ba96d9de2cbb7c61be20910b33844731c) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Do not minify - -- [`e84275a`](https://github.com/openpatch/hyperbook/commit/e84275a11949e455be4a00742528541b969d52f1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- [`cd72873`](https://github.com/openpatch/hyperbook/commit/cd72873f64b99da4f07a19d0516faeb5b41107d8) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Explicit import React - -- Updated dependencies [[`bfa3016`](https://github.com/openpatch/hyperbook/commit/bfa30169bf2e6377385c6a1adb5aa625db7d1b68), [`e84275a`](https://github.com/openpatch/hyperbook/commit/e84275a11949e455be4a00742528541b969d52f1), [`42ab56f`](https://github.com/openpatch/hyperbook/commit/42ab56f0e07a5adca5e7485a61d21d59d41ad100)]: - - @hyperbook/markdown@0.9.2 - - @hyperbook/element-excalidraw@0.5.1 - - @hyperbook/element-mermaid@0.2.1 - - @hyperbook/shell@0.7.2 - -## 0.23.1 - -### Patch Changes - -- Updated dependencies [[`75a3227`](https://github.com/openpatch/hyperbook/commit/75a322721e2e0af3c248ab12fb72cca357d6f4d8)]: - - @hyperbook/drawer@0.1.1 - - @hyperbook/markdown@0.9.1 - - @hyperbook/shell@0.7.1 - -## 0.23.0 - -### Patch Changes - -- Updated dependencies [[`9bb80bb`](https://github.com/openpatch/hyperbook/commit/9bb80bbd711a2ec11d84f2263c581d42e92fd7de)]: - - @hyperbook/element-scratchblock@0.2.0 - - @hyperbook/element-collapsible@0.4.0 - - @hyperbook/element-excalidraw@0.5.0 - - @hyperbook/element-online-ide@0.4.0 - - @hyperbook/element-bookmarks@0.3.0 - - @hyperbook/element-plantuml@0.2.0 - - @hyperbook/element-struktog@0.2.0 - - @hyperbook/element-bitflow@0.2.0 - - @hyperbook/element-mermaid@0.2.0 - - @hyperbook/element-protect@0.4.0 - - @hyperbook/element-sql-ide@0.4.0 - - @hyperbook/element-youtube@0.2.0 - - @hyperbook/element-alert@0.2.0 - - @hyperbook/element-audio@0.2.0 - - @hyperbook/element-embed@0.2.0 - - @hyperbook/element-tabs@0.2.0 - - @hyperbook/element-term@0.2.0 - - @hyperbook/element-dl@0.2.0 - - @hyperbook/element-qr@0.3.0 - - @hyperbook/markdown@0.9.0 - - @hyperbook/provider@0.4.0 - - @hyperbook/drawer@0.1.0 - - @hyperbook/styles@0.3.0 - - @hyperbook/shell@0.7.0 - - @hyperbook/store@0.2.0 - - @hyperbook/fs@0.10.0 - -## 0.22.3 - -### Patch Changes - -- Updated dependencies [[`c6c7d1f`](https://github.com/openpatch/hyperbook/commit/c6c7d1f3dda16879166398916792025545e344ea), [`9851b21`](https://github.com/openpatch/hyperbook/commit/9851b21db8d19c849110eca623bfc450c76e06b9)]: - - @hyperbook/markdown@0.8.1 - -## 0.22.2 - -### Patch Changes - -- Updated dependencies [[`19af1f3`](https://github.com/openpatch/hyperbook/commit/19af1f3baae82508091b2f49541449464d88bb28)]: - - @hyperbook/element-qr@0.2.1 - -## 0.22.1 - -### Patch Changes - -- [`2dcc07c`](https://github.com/openpatch/hyperbook/commit/2dcc07ce540e5c3a08a394b739450d7524b2a40c) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Use real names instead of file names for the glossary. - -## 0.22.0 - -### Minor Changes - -- [`ff0e867`](https://github.com/openpatch/hyperbook/commit/ff0e86788d967194d442026b49d23082960c66da) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Improve the build of hyperbooks and the generation of the toc. - -### Patch Changes - -- Updated dependencies [[`ff0e867`](https://github.com/openpatch/hyperbook/commit/ff0e86788d967194d442026b49d23082960c66da)]: - - @hyperbook/markdown@0.8.0 - - @hyperbook/shell@0.6.0 - - @hyperbook/fs@0.9.0 - -## 0.21.0 - -### Minor Changes - -- [`77c5ef4`](https://github.com/openpatch/hyperbook/commit/77c5ef42ecdb693c27b3eeeca098c712e0bf05b6) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Improve generating the table of content for a page. Headings in code block will now be ignored. - -### Patch Changes - -- Updated dependencies [[`77c5ef4`](https://github.com/openpatch/hyperbook/commit/77c5ef42ecdb693c27b3eeeca098c712e0bf05b6)]: - - @hyperbook/toc@0.3.0 - -## 0.20.0 - -### Minor Changes - -- [`902c0b3`](https://github.com/openpatch/hyperbook/commit/902c0b30a0aa97984350cfd58ad88d38ef7b4cd6) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Improve static site generation - -### Patch Changes - -- Updated dependencies [[`4e264d1`](https://github.com/openpatch/hyperbook/commit/4e264d166684ba476460fd48fedfae2f7e2a3195), [`902c0b3`](https://github.com/openpatch/hyperbook/commit/902c0b30a0aa97984350cfd58ad88d38ef7b4cd6)]: - - @hyperbook/markdown@0.7.0 - - @hyperbook/element-qr@0.2.0 - - @hyperbook/provider@0.3.0 - - @hyperbook/styles@0.2.0 - - @hyperbook/shell@0.5.0 - - @hyperbook/element-alert@0.1.14 - - @hyperbook/element-audio@0.1.2 - - @hyperbook/element-bitflow@0.1.15 - - @hyperbook/element-bookmarks@0.2.9 - - @hyperbook/element-collapsible@0.3.5 - - @hyperbook/element-dl@0.1.15 - - @hyperbook/element-embed@0.1.5 - - @hyperbook/element-excalidraw@0.4.5 - - @hyperbook/element-mermaid@0.1.14 - - @hyperbook/element-online-ide@0.3.3 - - @hyperbook/element-plantuml@0.1.1 - - @hyperbook/element-protect@0.3.5 - - @hyperbook/element-scratchblock@0.1.5 - - @hyperbook/element-sql-ide@0.3.3 - - @hyperbook/element-struktog@0.1.14 - - @hyperbook/element-tabs@0.1.15 - - @hyperbook/element-term@0.1.14 - - @hyperbook/element-youtube@0.1.14 - -## 0.19.1 - -### Patch Changes - -- Updated dependencies [[`b6f842d`](https://github.com/openpatch/hyperbook/commit/b6f842d222af821346382feff5c5f698a1d93e7e)]: - - @hyperbook/element-audio@0.1.1 - -## 0.19.0 - -### Minor Changes - -- [`a9d0900`](https://github.com/openpatch/hyperbook/commit/a9d09005a21e87e663a3a5cd2d94cfceb9b7e728) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Add audio element for playing audio files and showing information about the audio file. - -### Patch Changes - -- Updated dependencies [[`fcc3033`](https://github.com/openpatch/hyperbook/commit/fcc30337f4ef68842e25b5a914de46af38d5e196), [`a9d0900`](https://github.com/openpatch/hyperbook/commit/a9d09005a21e87e663a3a5cd2d94cfceb9b7e728)]: - - @hyperbook/element-embed@0.1.4 - - @hyperbook/element-audio@0.1.0 - -## 0.18.0 - -### Minor Changes - -- [`035cd2a`](https://github.com/openpatch/hyperbook/commit/035cd2ac6eae9beadb5c899d971019d99ec1bbb1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Add the PlantUML element. This element uses the external service Kroki to render PlantUML code to images. - -### Patch Changes - -- Updated dependencies [[`035cd2a`](https://github.com/openpatch/hyperbook/commit/035cd2ac6eae9beadb5c899d971019d99ec1bbb1)]: - - @hyperbook/element-plantuml@0.1.0 - -## 0.17.3 - -### Patch Changes - -- Updated dependencies [[`a3496b4`](https://github.com/openpatch/hyperbook/commit/a3496b4676376f16697306869733a780f9d15a56)]: - - @hyperbook/element-embed@0.1.3 - -## 0.17.2 - -### Patch Changes - -- Updated dependencies [[`9977ab2`](https://github.com/openpatch/hyperbook/commit/9977ab26b3e75727acfc33e969ca70df544ad183)]: - - @hyperbook/element-embed@0.1.2 - -## 0.17.1 - -### Patch Changes - -- [`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - fix data not defined - -- Updated dependencies [[`aa0d719`](https://github.com/openpatch/hyperbook/commit/aa0d7197aa78e7d42b2393d8850c6983c3681f07), [`edf8e94`](https://github.com/openpatch/hyperbook/commit/edf8e943e9b9c393121cfc1d859dc91e44af30c1), [`ed5a41d`](https://github.com/openpatch/hyperbook/commit/ed5a41d3c324e55e932a3c375d9daf89ebd6b675)]: - - @hyperbook/element-embed@0.1.1 - - @hyperbook/element-scratchblock@0.1.4 - - @hyperbook/element-collapsible@0.3.4 - - @hyperbook/element-excalidraw@0.4.4 - - @hyperbook/element-online-ide@0.3.2 - - @hyperbook/element-bookmarks@0.2.8 - - @hyperbook/element-struktog@0.1.13 - - @hyperbook/element-bitflow@0.1.14 - - @hyperbook/element-mermaid@0.1.13 - - @hyperbook/element-protect@0.3.4 - - @hyperbook/element-sql-ide@0.3.2 - - @hyperbook/element-youtube@0.1.13 - - @hyperbook/element-alert@0.1.13 - - @hyperbook/element-tabs@0.1.14 - - @hyperbook/element-term@0.1.13 - - @hyperbook/element-dl@0.1.14 - - @hyperbook/element-qr@0.1.14 - - @hyperbook/markdown@0.6.4 - - @hyperbook/provider@0.2.5 - - @hyperbook/styles@0.1.13 - - @hyperbook/shell@0.4.6 - - @hyperbook/store@0.1.5 - - @hyperbook/toc@0.2.3 - -## 0.17.0 - -### Minor Changes - -- [`f98c89e`](https://github.com/openpatch/hyperbook/commit/f98c89ed582a155d5b005ec72a04ae2619c35c47) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Add element embed. This elements allow embedding content like GeoGebra Applets, LearningApps etc. - -### Patch Changes - -- [`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update packages - -- Updated dependencies [[`f98c89e`](https://github.com/openpatch/hyperbook/commit/f98c89ed582a155d5b005ec72a04ae2619c35c47), [`832678b`](https://github.com/openpatch/hyperbook/commit/832678b39f6a1a6e5cdd361c9c384d341762c09e)]: - - @hyperbook/element-embed@0.1.0 - - @hyperbook/element-alert@0.1.12 - - @hyperbook/element-bitflow@0.1.13 - - @hyperbook/element-bookmarks@0.2.7 - - @hyperbook/element-collapsible@0.3.3 - - @hyperbook/element-dl@0.1.13 - - @hyperbook/element-excalidraw@0.4.3 - - @hyperbook/element-mermaid@0.1.12 - - @hyperbook/element-online-ide@0.3.1 - - @hyperbook/element-protect@0.3.3 - - @hyperbook/element-qr@0.1.13 - - @hyperbook/element-scratchblock@0.1.3 - - @hyperbook/element-sql-ide@0.3.1 - - @hyperbook/element-struktog@0.1.12 - - @hyperbook/element-tabs@0.1.13 - - @hyperbook/element-term@0.1.12 - - @hyperbook/element-youtube@0.1.12 - - @hyperbook/fs@0.8.1 - - @hyperbook/markdown@0.6.3 - - @hyperbook/provider@0.2.4 - - @hyperbook/shell@0.4.5 - - @hyperbook/store@0.1.4 - - @hyperbook/styles@0.1.12 - - @hyperbook/toc@0.2.2 - -## 0.16.0 - -### Patch Changes - -- Updated dependencies [[`13bfad5`](https://github.com/openpatch/hyperbook/commit/13bfad58f5a16d2d54b4043ce855cf6c3bc397a0), [`511f497`](https://github.com/openpatch/hyperbook/commit/511f497e3e19c4294ddacb4e2b98cb47f35901d9)]: - - @hyperbook/fs@0.8.0 - -## 0.15.1 - -### Patch Changes - -- Updated dependencies [[`4221fe1`](https://github.com/openpatch/hyperbook/commit/4221fe145a6dfffd9f97459fa2d2694da4b5d78e)]: - - @hyperbook/element-online-ide@0.3.0 - - @hyperbook/element-sql-ide@0.3.0 - - @hyperbook/fs@0.7.5 - - @hyperbook/provider@0.2.3 - - @hyperbook/shell@0.4.4 - - @hyperbook/element-alert@0.1.11 - - @hyperbook/element-bitflow@0.1.12 - - @hyperbook/element-bookmarks@0.2.6 - - @hyperbook/element-collapsible@0.3.2 - - @hyperbook/element-dl@0.1.12 - - @hyperbook/element-excalidraw@0.4.2 - - @hyperbook/element-mermaid@0.1.11 - - @hyperbook/element-protect@0.3.2 - - @hyperbook/element-qr@0.1.12 - - @hyperbook/element-scratchblock@0.1.2 - - @hyperbook/element-struktog@0.1.11 - - @hyperbook/element-tabs@0.1.12 - - @hyperbook/element-term@0.1.11 - - @hyperbook/element-youtube@0.1.11 - - @hyperbook/markdown@0.6.2 - - @hyperbook/styles@0.1.11 - -## 0.15.0 - -### Minor Changes - -- [`cb65222`](https://github.com/openpatch/hyperbook/commit/cb652224860a718149be4c34234eeb8dcdfbfc91) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - add element sql ide - -### Patch Changes - -- [`5385f57`](https://github.com/openpatch/hyperbook/commit/5385f57a0bac3242eb0166d522c031495d4e79be) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - fix missing import - -- Updated dependencies [[`cb65222`](https://github.com/openpatch/hyperbook/commit/cb652224860a718149be4c34234eeb8dcdfbfc91)]: - - @hyperbook/element-sql-ide@0.2.0 - -## 0.14.1 - -### Patch Changes - -- Updated dependencies [[`8da1b46`](https://github.com/openpatch/hyperbook/commit/8da1b46c9462aee8432e8697aee88628b0531ed8)]: - - @hyperbook/element-online-ide@0.2.0 - -## 0.14.0 - -### Minor Changes - -- [`086019c`](https://github.com/openpatch/hyperbook/commit/086019c276dc42d1262dc104c894065b89203b24) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Add element online ide for java - -### Patch Changes - -- [`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - update dependencies - -- Updated dependencies [[`086019c`](https://github.com/openpatch/hyperbook/commit/086019c276dc42d1262dc104c894065b89203b24), [`cf58c13`](https://github.com/openpatch/hyperbook/commit/cf58c13ca19aaba8e20e6e1cb27ab3ebbfb74d37), [`bf7d452`](https://github.com/openpatch/hyperbook/commit/bf7d452cc1608507166a9e0c499d2db42740a307)]: - - @hyperbook/element-online-ide@0.1.0 - - @hyperbook/element-scratchblock@0.1.1 - - @hyperbook/element-collapsible@0.3.1 - - @hyperbook/element-excalidraw@0.4.1 - - @hyperbook/element-bookmarks@0.2.5 - - @hyperbook/element-struktog@0.1.10 - - @hyperbook/element-bitflow@0.1.11 - - @hyperbook/element-mermaid@0.1.10 - - @hyperbook/element-protect@0.3.1 - - @hyperbook/element-youtube@0.1.10 - - @hyperbook/element-alert@0.1.10 - - @hyperbook/element-tabs@0.1.11 - - @hyperbook/element-term@0.1.10 - - @hyperbook/element-dl@0.1.11 - - @hyperbook/element-qr@0.1.11 - - @hyperbook/markdown@0.6.1 - - @hyperbook/provider@0.2.2 - - @hyperbook/styles@0.1.10 - - @hyperbook/shell@0.4.3 - - @hyperbook/store@0.1.3 - - @hyperbook/toc@0.2.1 - - @hyperbook/fs@0.7.5 - -## 0.13.14 - -### Patch Changes - -- Updated dependencies [[`e087609`](https://github.com/openpatch/hyperbook/commit/e087609de23c4d2868793fec65deee8beb144a78)]: - - @hyperbook/element-excalidraw@0.4.0 - -## 0.13.13 - -### Patch Changes - -- Updated dependencies [[`f1d2219`](https://github.com/openpatch/hyperbook/commit/f1d2219791491e6ae7579503864b3795f5bf7dc9)]: - - @hyperbook/element-dl@0.1.10 - -## 0.13.12 - -### Patch Changes - -- [`e581f06`](https://github.com/openpatch/hyperbook/commit/e581f06ddb5291528d46ba8c797f5cf8f54072e1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Fix bug index not found when no other sibling directories are present. - -- Updated dependencies [[`e581f06`](https://github.com/openpatch/hyperbook/commit/e581f06ddb5291528d46ba8c797f5cf8f54072e1)]: - - @hyperbook/fs@0.7.4 - -## 0.13.11 - -## 0.13.10 - -### Patch Changes - -- Updated dependencies [[`764a681`](https://github.com/openpatch/hyperbook/commit/764a681e4a8b0135ffa83f0a30c4cda23b79babd), [`fa2719e`](https://github.com/openpatch/hyperbook/commit/fa2719ebb2bd535aa09a9358ebb53c5c277ad630)]: - - @hyperbook/markdown@0.6.0 - -## 0.13.9 - -### Patch Changes - -- Updated dependencies [[`70e4131`](https://github.com/openpatch/hyperbook/commit/70e4131de7d3e2c81061dba8afe87c16e80372b4)]: - - @hyperbook/shell@0.4.2 - -## 0.13.8 - -### Patch Changes - -- Updated dependencies [[`17ad5eb`](https://github.com/openpatch/hyperbook/commit/17ad5eb263ce6c45a04482483d2efa3fc1697f76)]: - - @hyperbook/fs@0.7.3 - -## 0.13.7 - -### Patch Changes - -- Updated dependencies [[`c6414c8`](https://github.com/openpatch/hyperbook/commit/c6414c8e4c32ec96143a8da4fe8fb0e611ec8c7a)]: - - @hyperbook/fs@0.7.2 - -## 0.13.6 - -### Patch Changes - -- Updated dependencies [[`6fa6eba`](https://github.com/openpatch/hyperbook/commit/6fa6eba7b6753ed434c3aa94c713bb9486189c1a)]: - - @hyperbook/fs@0.7.1 - -## 0.13.5 - -### Patch Changes - -- Updated dependencies [[`ff21264`](https://github.com/openpatch/hyperbook/commit/ff2126432223b7abefd44c711c42c915ab839d94)]: - - @hyperbook/fs@0.7.0 - -## 0.13.4 - -### Patch Changes - -- Updated dependencies [[`6e3fcd5`](https://github.com/openpatch/hyperbook/commit/6e3fcd5616af81f41fb1ff412066f94660ea5cfd)]: - - @hyperbook/fs@0.6.3 - -## 0.13.3 - -### Patch Changes - -- [`1614352`](https://github.com/openpatch/hyperbook/commit/16143528449b1bfd2d70ab781df66f945b14f3ea) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Fix hyperbook not buidling when an unsupported file is present in the book or glossary folder. - -- [`c4f7617`](https://github.com/openpatch/hyperbook/commit/c4f76176e69e1be9aa9a6392fd982dcd27520912) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Remove unexported - -- Updated dependencies [[`1614352`](https://github.com/openpatch/hyperbook/commit/16143528449b1bfd2d70ab781df66f945b14f3ea)]: - - @hyperbook/fs@0.6.2 - -## 0.13.2 - -### Patch Changes - -- Updated dependencies [[`e4712b2`](https://github.com/openpatch/hyperbook/commit/e4712b20601a96e8e6c2c748a3bd3c9719a6d523), [`cad9962`](https://github.com/openpatch/hyperbook/commit/cad99629cae32de462f1145b082f6cc11cbf3cb3)]: - - @hyperbook/fs@0.6.1 - -## 0.13.1 - -### Patch Changes - -- Updated dependencies [[`56a42f6`](https://github.com/openpatch/hyperbook/commit/56a42f6a4b67de082fc90b812a248c5b7e004c31)]: - - @hyperbook/fs@0.6.0 - -## 0.13.0 - -### Minor Changes - -- [`b134e02`](https://github.com/openpatch/hyperbook/commit/b134e027db1b11cbd0a7e46858dfa60b93c05653) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Add more helpers for templates and snippets. See documentation of snippets for more details. - -### Patch Changes - -- Updated dependencies [[`b134e02`](https://github.com/openpatch/hyperbook/commit/b134e027db1b11cbd0a7e46858dfa60b93c05653)]: - - @hyperbook/fs@0.5.0 - -## 0.12.0 - -### Minor Changes - -- [`0c58ad8`](https://github.com/openpatch/hyperbook/commit/0c58ad80c3c8b145868d2c0303d42478ec0a9978) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Add templates to Hyperbook. Templates allow for resuing a layout. See the documentation for more details. - -### Patch Changes - -- Updated dependencies [[`0c58ad8`](https://github.com/openpatch/hyperbook/commit/0c58ad80c3c8b145868d2c0303d42478ec0a9978), [`0c58ad8`](https://github.com/openpatch/hyperbook/commit/0c58ad80c3c8b145868d2c0303d42478ec0a9978), [`0c58ad8`](https://github.com/openpatch/hyperbook/commit/0c58ad80c3c8b145868d2c0303d42478ec0a9978), [`0c58ad8`](https://github.com/openpatch/hyperbook/commit/0c58ad80c3c8b145868d2c0303d42478ec0a9978)]: - - @hyperbook/markdown@0.5.3 - - @hyperbook/fs@0.4.0 - - @hyperbook/shell@0.4.1 - -## 0.11.0 - -### Minor Changes - -- [`dfe9200`](https://github.com/openpatch/hyperbook/commit/dfe9200ff5a05cdc81328e2ba8317ab5f5363424) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Add element scratchblock for rendering scratch blocks. - -### Patch Changes - -- Updated dependencies [[`dfe9200`](https://github.com/openpatch/hyperbook/commit/dfe9200ff5a05cdc81328e2ba8317ab5f5363424)]: - - @hyperbook/element-scratchblock@0.1.0 - -## 0.10.0 - -### Minor Changes - -- [`9298af0`](https://github.com/openpatch/hyperbook/commit/9298af040b16836c632e234f6ccbb61d67e1246d) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Add the snippet element. Snippets are helpful for making the handling of repeated blocks easiert. For example you can define a protect-block, which uses the same password across your hyperbook in a snippet. If you want to change the password, you can just change it in the snippet. See the documentation for snippets to get a more in detail view on snippets. - -- [`ac262ca`](https://github.com/openpatch/hyperbook/commit/ac262ca4a60b313dafbce33e5c0d753fd504f012) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Upgrade to NextJS 13 - -### Patch Changes - -- Updated dependencies [[`ac262ca`](https://github.com/openpatch/hyperbook/commit/ac262ca4a60b313dafbce33e5c0d753fd504f012), [`9298af0`](https://github.com/openpatch/hyperbook/commit/9298af040b16836c632e234f6ccbb61d67e1246d), [`9298af0`](https://github.com/openpatch/hyperbook/commit/9298af040b16836c632e234f6ccbb61d67e1246d), [`ac262ca`](https://github.com/openpatch/hyperbook/commit/ac262ca4a60b313dafbce33e5c0d753fd504f012)]: - - @hyperbook/markdown@0.5.2 - - @hyperbook/element-protect@0.3.0 - - @hyperbook/fs@0.3.0 - - @hyperbook/element-collapsible@0.3.0 - - @hyperbook/shell@0.4.0 - -## 0.9.3 - -### Patch Changes - -- Updated dependencies [[`104f2de`](https://github.com/openpatch/hyperbook/commit/104f2de6fa054ecadaf19811c5f8c3c560ca5a64)]: - - @hyperbook/fs@0.2.0 - - @hyperbook/shell@0.3.0 - - @hyperbook/provider@0.2.1 - - @hyperbook/element-alert@0.1.9 - - @hyperbook/element-bitflow@0.1.10 - - @hyperbook/element-bookmarks@0.2.4 - - @hyperbook/element-collapsible@0.2.5 - - @hyperbook/element-dl@0.1.9 - - @hyperbook/element-excalidraw@0.3.1 - - @hyperbook/element-mermaid@0.1.9 - - @hyperbook/element-protect@0.2.4 - - @hyperbook/element-qr@0.1.10 - - @hyperbook/element-struktog@0.1.9 - - @hyperbook/element-tabs@0.1.10 - - @hyperbook/element-term@0.1.9 - - @hyperbook/element-youtube@0.1.9 - - @hyperbook/markdown@0.5.1 - - @hyperbook/styles@0.1.9 - -## 0.9.2 - -### Patch Changes - -- [`40ec0fd`](https://github.com/openpatch/hyperbook/commit/40ec0fde2cbb2ef823bf11be2b2db365f8c37d9c) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Empty section index pages now correctly link to the first non-empty subpage. - -- Updated dependencies [[`60e8fb1`](https://github.com/openpatch/hyperbook/commit/60e8fb1a3a95d7797234a0ba4f64adba65b74792), [`2562e84`](https://github.com/openpatch/hyperbook/commit/2562e847152902cc72d155d760ee87c0a8aff11c), [`40ec0fd`](https://github.com/openpatch/hyperbook/commit/40ec0fde2cbb2ef823bf11be2b2db365f8c37d9c)]: - - @hyperbook/markdown@0.5.0 - - @hyperbook/shell@0.2.0 - - @hyperbook/fs@0.1.3 - -## 0.9.1 - -### Patch Changes - -- Updated dependencies [[`af4964b`](https://github.com/openpatch/hyperbook/commit/af4964b7c1c12134a1d08f74d387e8b42844b4a5)]: - - @hyperbook/fs@0.1.2 - -## 0.9.0 - -## 0.8.9 - -### Patch Changes - -- Updated dependencies [[`fc4b3fd`](https://github.com/openpatch/hyperbook/commit/fc4b3fd5a56ab69a885299c0d41601cf936a81f7)]: - - @hyperbook/toc@0.2.0 - -## 0.8.8 - -### Patch Changes - -- Updated dependencies [[`5758cf0`](https://github.com/openpatch/hyperbook/commit/5758cf025f81b3ec6e5c33d6309ca47166e6db3a)]: - - @hyperbook/markdown@0.4.3 - -## 0.8.7 - -### Patch Changes - -- Updated dependencies [[`23413c7`](https://github.com/openpatch/hyperbook/commit/23413c74ae0338c063d13f98a78b08ffb8d7f065)]: - - @hyperbook/markdown@0.4.2 - -## 0.8.6 - -### Patch Changes - -- Updated dependencies [[`f906c50`](https://github.com/openpatch/hyperbook/commit/f906c5075ec26263f90fabfa2a8ad556619c86da)]: - - @hyperbook/fs@0.1.1 - -## 0.8.5 - -### Patch Changes - -- Updated dependencies [[`27032d1`](https://github.com/openpatch/hyperbook/commit/27032d1d76a07b590c18094139ba4a4bf74780c3)]: - - @hyperbook/markdown@0.4.1 - -## 0.8.4 - -### Patch Changes - -- [`d92c89e`](https://github.com/openpatch/hyperbook/commit/d92c89e099476c0b941ed9fea83ca75fd24c034d) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Anchor tags did not work on initial load. We now wait a little to make sure the markdown content is loaded. Then a smooth scroll to the anchor tag will happen. - -## 0.8.3 - -### Patch Changes - -- Updated dependencies [[`28b803e`](https://github.com/openpatch/hyperbook/commit/28b803efbeac6835afc0040b7f1fb03c210cc72d), [`13a8313`](https://github.com/openpatch/hyperbook/commit/13a8313f60a89b697f638845327bbd4ddbae4af8), [`42cf26c`](https://github.com/openpatch/hyperbook/commit/42cf26cacd32026fa95ab850c4d5e8f2b96b9c37), [`c526071`](https://github.com/openpatch/hyperbook/commit/c526071d11e9c248c933bade1ac1298a0fcbeefb)]: - - @hyperbook/markdown@0.4.0 - - @hyperbook/shell@0.1.3 - -## 0.8.2 - -### Patch Changes - -- Updated dependencies [[`2e61eef`](https://github.com/openpatch/hyperbook/commit/2e61eef5ca40446ae28046659cb1eac96fd6ccf1)]: - - @hyperbook/shell@0.1.2 - -## 0.8.1 - -### Patch Changes - -- [`a0c03e2`](https://github.com/openpatch/hyperbook/commit/a0c03e2338fa3ea5e06a0952a0eb6a16ef9cfdb7) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - When platform web has a new version, hyperbook should also get a new version, thus both packages will be released together from now on. - -- Updated dependencies [[`2e92be1`](https://github.com/openpatch/hyperbook/commit/2e92be1fb5b1128cc43fbf0451aa4a493c6bafd7), [`b1415aa`](https://github.com/openpatch/hyperbook/commit/b1415aaf8905a0fa7d119074e3b6731167023671)]: - - @hyperbook/shell@0.1.1 - - @hyperbook/element-excalidraw@0.3.0 - -## 0.8.0 - -### Minor Changes - -- [#392](https://github.com/openpatch/hyperbook/pull/392) [`8d53899`](https://github.com/openpatch/hyperbook/commit/8d538999fc924f7b3e3115416cba4978c9589b68) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Extract core funcationality from platfrom web into separate packages. This helps us to support more platforms. - -### Patch Changes - -- Updated dependencies [[`8d53899`](https://github.com/openpatch/hyperbook/commit/8d538999fc924f7b3e3115416cba4978c9589b68)]: - - @hyperbook/fs@0.1.0 - - @hyperbook/provider@0.2.0 - - @hyperbook/shell@0.1.0 - - @hyperbook/toc@0.1.0 - - @hyperbook/element-alert@0.1.8 - - @hyperbook/element-bitflow@0.1.9 - - @hyperbook/element-bookmarks@0.2.3 - - @hyperbook/element-collapsible@0.2.4 - - @hyperbook/element-dl@0.1.8 - - @hyperbook/element-excalidraw@0.2.3 - - @hyperbook/element-mermaid@0.1.8 - - @hyperbook/element-protect@0.2.3 - - @hyperbook/element-qr@0.1.9 - - @hyperbook/element-struktog@0.1.8 - - @hyperbook/element-tabs@0.1.9 - - @hyperbook/element-term@0.1.8 - - @hyperbook/element-youtube@0.1.8 - - @hyperbook/markdown@0.3.4 - - @hyperbook/styles@0.1.8 - -## 0.7.2 - -### Patch Changes - -- Updated dependencies [[`e526943`](https://github.com/openpatch/hyperbook/commit/e526943fec3ef91cfce853af6a0c5cdaf3f22eef)]: - - @hyperbook/markdown@0.3.3 - -## 0.7.1 - -### Patch Changes - -- [`b799b7c`](https://github.com/openpatch/hyperbook/commit/b799b7c26710ee1fc5e59551bb710768829d68cf) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Fix repo links include full local directory - -## 0.7.0 - -### Minor Changes - -- [#371](https://github.com/openpatch/hyperbook/pull/371) [`5a287b2`](https://github.com/openpatch/hyperbook/commit/5a287b25a24c027f65c7b2817f180c1ec395dff9) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - # Introducing Hyperlibrary - - A Hyperlibrary is a way to connect multiple Hyperbooks and Hyperlibraries with - each other. Hyperlibraries are a super flexible way to develop connected - Hyperbooks. - - A Hyperlibrary is nothing more than a `hyperlibrary.json` files. - Here is an example for connecting different versions. - - ```json - { - "name": "Versions", - "library": [ - { "src": "v1", "name": "1.0.0", "basePath": "v1" }, - { "src": "v2", "name": "2.0.0", "basePath": "/" } - ] - } - ``` - - The folder structure in this case would look like this: - - ```bas - documention - | v1 - | | ... - | | hyperbook.json - | v2 - | | ... - | | hyperbook.json - | hyperlibrary.json - ``` - - As for a Hyperbook, you also have to run the `hyperbook setup` first. - Afterwards you can use the `hyperbook build` command for building your - Hyperlibrary. - - The `hyperbook dev` command is not supported with this release. As a workaround you have to start the Hyperbooks as standalones. For example - - ```bash - user ~/documention $ cd v1 - user ~/v1 $ npx hyperbook dev - ``` - - # CLI Changes - - - `hyperbook setup` does not download the template any more from the GitHub repo, but bundles it. This should decrease bandwidth and improve setup speed. - - `hyperbook build` and `hyperbook setup` received new command line outputs. This was necessary for not getting lost when using the CLI with a Hyperlibrary. - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.7 - - @hyperbook/element-alert@0.1.7 - - @hyperbook/element-bitflow@0.1.8 - - @hyperbook/element-bookmarks@0.2.2 - - @hyperbook/element-collapsible@0.2.3 - - @hyperbook/element-dl@0.1.7 - - @hyperbook/element-excalidraw@0.2.2 - - @hyperbook/element-mermaid@0.1.7 - - @hyperbook/element-protect@0.2.2 - - @hyperbook/element-qr@0.1.8 - - @hyperbook/element-struktog@0.1.7 - - @hyperbook/element-tabs@0.1.8 - - @hyperbook/element-term@0.1.7 - - @hyperbook/element-youtube@0.1.7 - - @hyperbook/markdown@0.3.2 - - @hyperbook/styles@0.1.7 - -## 0.6.0 - -### Minor Changes - -- [#363](https://github.com/openpatch/hyperbook/pull/363) [`5ca2ccf`](https://github.com/openpatch/hyperbook/commit/5ca2ccfec72a841ec9c4e43a03ceb2be68710541) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Add custom links support. Custom links can now be configured in your `hyperbook.json`. See the book configuration documentation for more information on how to set them up. - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/provider@0.1.6 - - @hyperbook/element-alert@0.1.6 - - @hyperbook/element-bitflow@0.1.7 - - @hyperbook/element-bookmarks@0.2.1 - - @hyperbook/element-collapsible@0.2.2 - - @hyperbook/element-dl@0.1.6 - - @hyperbook/element-excalidraw@0.2.1 - - @hyperbook/element-mermaid@0.1.6 - - @hyperbook/element-protect@0.2.1 - - @hyperbook/element-qr@0.1.7 - - @hyperbook/element-struktog@0.1.6 - - @hyperbook/element-tabs@0.1.7 - - @hyperbook/element-term@0.1.6 - - @hyperbook/element-youtube@0.1.6 - - @hyperbook/markdown@0.3.1 - - @hyperbook/styles@0.1.6 - -## 0.5.2 - -### Patch Changes - -- Updated dependencies [[`2574ee6`](https://github.com/openpatch/hyperbook/commit/2574ee6f0f4c70b1f05a70bbd8b1d5ba0eba013f)]: - - @hyperbook/element-protect@0.2.0 - -## 0.5.1 - -### Patch Changes - -- Updated dependencies [[`69e76ae`](https://github.com/openpatch/hyperbook/commit/69e76aec46f3b83ecd4dc9e7e5fceb0fe7fb8148)]: - - @hyperbook/element-collapsible@0.2.1 - -## 0.5.0 - -### Minor Changes - -- [#341](https://github.com/openpatch/hyperbook/pull/341) [`b1d976c`](https://github.com/openpatch/hyperbook/commit/b1d976cfcad7d9be760c595d23becc48187d641e) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - The sections can now be opened and closed. The active page will always - start opened. For each section you can overwrite the default expanded - state by adding `expanded: true` to the frontmatter of the section. - -### Patch Changes - -- Updated dependencies [[`b1d976c`](https://github.com/openpatch/hyperbook/commit/b1d976cfcad7d9be760c595d23becc48187d641e)]: - - @hyperbook/element-collapsible@0.2.0 - -## 0.4.1 - -### Patch Changes - -- Updated dependencies [[`774405b`](https://github.com/openpatch/hyperbook/commit/774405b936b10bf90e884ec7201cb38c734db8c3)]: - - @hyperbook/markdown@0.3.0 - -## 0.4.0 - -### Minor Changes - -- [#326](https://github.com/openpatch/hyperbook/pull/326) [`9472583`](https://github.com/openpatch/hyperbook/commit/947258359e33a39362c070f6c7128f214a79c4c5) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Add configuration options to the hyperbook.json for the element bookmarks and excalidraw. - -### Patch Changes - -- Updated dependencies [[`9472583`](https://github.com/openpatch/hyperbook/commit/947258359e33a39362c070f6c7128f214a79c4c5)]: - - @hyperbook/element-bookmarks@0.2.0 - - @hyperbook/element-excalidraw@0.2.0 - - @hyperbook/markdown@0.2.0 - - @hyperbook/provider@0.1.5 - - @hyperbook/element-alert@0.1.5 - - @hyperbook/element-bitflow@0.1.6 - - @hyperbook/element-collapsible@0.1.5 - - @hyperbook/element-dl@0.1.5 - - @hyperbook/element-mermaid@0.1.5 - - @hyperbook/element-protect@0.1.5 - - @hyperbook/element-qr@0.1.6 - - @hyperbook/element-struktog@0.1.5 - - @hyperbook/element-tabs@0.1.6 - - @hyperbook/element-term@0.1.5 - - @hyperbook/element-youtube@0.1.5 - - @hyperbook/styles@0.1.5 - -## 0.3.9 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/element-tabs@0.1.5 - -## 0.3.8 - -### Patch Changes - -- Updated dependencies []: - - @hyperbook/markdown@0.1.6 - -## 0.3.7 - -### Patch Changes - -- [#316](https://github.com/openpatch/hyperbook/pull/316) [`cedb551`](https://github.com/openpatch/hyperbook/commit/cedb55191fd025b5a214df406a53cbab5d1b1bc1) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Extract Hyperbook types into a separate package - -- Updated dependencies [[`cedb551`](https://github.com/openpatch/hyperbook/commit/cedb55191fd025b5a214df406a53cbab5d1b1bc1)]: - - @hyperbook/provider@0.1.4 - - @hyperbook/element-alert@0.1.4 - - @hyperbook/element-bitflow@0.1.5 - - @hyperbook/element-bookmarks@0.1.4 - - @hyperbook/element-collapsible@0.1.4 - - @hyperbook/element-dl@0.1.4 - - @hyperbook/element-excalidraw@0.1.4 - - @hyperbook/element-mermaid@0.1.4 - - @hyperbook/element-protect@0.1.4 - - @hyperbook/element-qr@0.1.5 - - @hyperbook/element-struktog@0.1.4 - - @hyperbook/element-tabs@0.1.4 - - @hyperbook/element-term@0.1.4 - - @hyperbook/element-youtube@0.1.4 - - @hyperbook/markdown@0.1.5 - - @hyperbook/styles@0.1.4 - -## 0.3.6 - -### Patch Changes - -- [`c3e747a`](https://github.com/openpatch/hyperbook/commit/c3e747ab7b95c3e526b3800b169aa8f505f9b9a2) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Do not rely on process.env.NODE_ENV and use env prodivded by the provider. - -- Updated dependencies [[`9b2b71b`](https://github.com/openpatch/hyperbook/commit/9b2b71b8bbd728294ff4c4c97502e58e99619300), [`c3e747a`](https://github.com/openpatch/hyperbook/commit/c3e747ab7b95c3e526b3800b169aa8f505f9b9a2)]: - - @hyperbook/element-qr@0.1.4 - - @hyperbook/element-excalidraw@0.1.3 - - @hyperbook/provider@0.1.3 - - @hyperbook/element-alert@0.1.3 - - @hyperbook/element-bitflow@0.1.4 - - @hyperbook/element-bookmarks@0.1.3 - - @hyperbook/element-collapsible@0.1.3 - - @hyperbook/element-dl@0.1.3 - - @hyperbook/element-mermaid@0.1.3 - - @hyperbook/element-protect@0.1.3 - - @hyperbook/element-struktog@0.1.3 - - @hyperbook/element-tabs@0.1.3 - - @hyperbook/element-term@0.1.3 - - @hyperbook/element-youtube@0.1.3 - - @hyperbook/markdown@0.1.4 - - @hyperbook/styles@0.1.3 - -## 0.3.5 - -### Patch Changes - -- Updated dependencies [[`a7be20c`](https://github.com/openpatch/hyperbook/commit/a7be20c426ee96cefdc198e843b30eda32e96c75)]: - - @hyperbook/markdown@0.1.3 - -## 0.3.4 - -### Patch Changes - -- [`2459c34`](https://github.com/openpatch/hyperbook/commit/2459c343e89f890c10132cfb36bb466b5800133d) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - use default import to be compatible with commonjs - -- Updated dependencies [[`2459c34`](https://github.com/openpatch/hyperbook/commit/2459c343e89f890c10132cfb36bb466b5800133d)]: - - @hyperbook/element-bitflow@0.1.3 - - @hyperbook/element-qr@0.1.3 - -## 0.3.3 - -### Patch Changes - -- [`2c34554`](https://github.com/openpatch/hyperbook/commit/2c34554f64359fb995190b1465daddfa3e0101c0) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - try to overcome issues with @redux/toolkit not supporting esm modules the way nextjs likes it. - -- Updated dependencies [[`2c34554`](https://github.com/openpatch/hyperbook/commit/2c34554f64359fb995190b1465daddfa3e0101c0)]: - - @hyperbook/element-collapsible@0.1.2 - - @hyperbook/element-protect@0.1.2 - - @hyperbook/element-tabs@0.1.2 - - @hyperbook/provider@0.1.2 - - @hyperbook/store@0.1.2 - - @hyperbook/element-alert@0.1.2 - - @hyperbook/element-bitflow@0.1.2 - - @hyperbook/element-bookmarks@0.1.2 - - @hyperbook/element-dl@0.1.2 - - @hyperbook/element-excalidraw@0.1.2 - - @hyperbook/element-mermaid@0.1.2 - - @hyperbook/element-qr@0.1.2 - - @hyperbook/element-struktog@0.1.2 - - @hyperbook/element-term@0.1.2 - - @hyperbook/element-youtube@0.1.2 - - @hyperbook/markdown@0.1.2 - - @hyperbook/styles@0.1.2 - -## 0.3.2 - -### Patch Changes - -- [`f1dc99b`](https://github.com/openpatch/hyperbook/commit/f1dc99b785da1ff8079ad3881ba7eb354c3b2ec0) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Tag templates as well - -## 0.3.1 - -### Patch Changes - -- [`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Force package update due to failed pipeline - -- Updated dependencies [[`9ea5483`](https://github.com/openpatch/hyperbook/commit/9ea5483512fd5134f6823104a68fecea2c50cb00)]: - - @hyperbook/element-alert@0.1.1 - - @hyperbook/element-bitflow@0.1.1 - - @hyperbook/element-bookmarks@0.1.1 - - @hyperbook/element-collapsible@0.1.1 - - @hyperbook/element-excalidraw@0.1.1 - - @hyperbook/element-mermaid@0.1.1 - - @hyperbook/element-protect@0.1.1 - - @hyperbook/element-qr@0.1.1 - - @hyperbook/element-struktog@0.1.1 - - @hyperbook/element-tabs@0.1.1 - - @hyperbook/element-term@0.1.1 - - @hyperbook/element-youtube@0.1.1 - - @hyperbook/markdown@0.1.1 - - @hyperbook/provider@0.1.1 - - @hyperbook/store@0.1.1 - - @hyperbook/styles@0.1.1 - - @hyperbook/element-dl@0.1.1 - -## 0.3.0 - -### Minor Changes - -- [`09af0c5`](https://github.com/openpatch/hyperbook/commit/09af0c5bee8fc95f04138a660e4a7c2e0e963f17) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - rename download element to dl, since npm does not allow download in the package name. - -### Patch Changes - -- Updated dependencies [[`09af0c5`](https://github.com/openpatch/hyperbook/commit/09af0c5bee8fc95f04138a660e4a7c2e0e963f17)]: - - @hyperbook/element-dl@0.1.0 - -## 0.2.0 - -### Minor Changes - -- [`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Extract feature in separate packages. This allows for easier development of new templates and allows enables to make changes more transparent. - -### Patch Changes - -- Updated dependencies [[`6c1bd51`](https://github.com/openpatch/hyperbook/commit/6c1bd51e7ded1b2094ba590e5d8ddc5c0f6254b8)]: - - @hyperbook/element-alert@0.1.0 - - @hyperbook/element-bitflow@0.1.0 - - @hyperbook/element-bookmarks@0.1.0 - - @hyperbook/element-collapsible@0.1.0 - - @hyperbook/element-dl0.1.0 - - @hyperbook/element-excalidraw@0.1.0 - - @hyperbook/element-mermaid@0.1.0 - - @hyperbook/element-protect@0.1.0 - - @hyperbook/element-qr@0.1.0 - - @hyperbook/element-struktog@0.1.0 - - @hyperbook/element-tabs@0.1.0 - - @hyperbook/element-term@0.1.0 - - @hyperbook/element-youtube@0.1.0 - - @hyperbook/markdown@0.1.0 - - @hyperbook/provider@0.1.0 - - @hyperbook/store@0.1.0 - - @hyperbook/styles@0.1.0 - -## 0.1.1 - -### Patch Changes - -- [`0325b9d`](https://github.com/openpatch/hyperbook/commit/0325b9ddce534f7133ff355ca0dbf1f8ddb08437) Thanks [@mikebarkmin](https://github.com/mikebarkmin)! - Remove unused imports diff --git a/platforms/web/LICENSE b/platforms/web/LICENSE deleted file mode 100644 index 256e1ae6..00000000 --- a/platforms/web/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2021 OpenPatch - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/platforms/web/README.md b/platforms/web/README.md deleted file mode 100644 index 45035b91..00000000 --- a/platforms/web/README.md +++ /dev/null @@ -1,38 +0,0 @@ -This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app). - -Use this command `npx create-next-app -e https://github.com/openpatch/patches-nextjs-starter`. - -## Getting Started - -First, run the development server: - -```bash -npm run dev -# or -yarn dev -``` - -Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. - -You can start editing the page by modifying `pages/index.js`. The page auto-updates as you edit the file. - -[API routes](https://nextjs.org/docs/api-routes/introduction) can be accessed on [http://localhost:3000/api/hello](http://localhost:3000/api/hello). This endpoint can be edited in `pages/api/hello.js`. - -The `pages/api` directory is mapped to `/api/*`. Files in this directory are treated as [API routes](https://nextjs.org/docs/api-routes/introduction) instead of React pages. - -## Learn More - -To learn more about Next.js, take a look at the following resources: - -- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API. -- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial. - -You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome! - -## Deploy on Vercel - -The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/import?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js. - -[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/git/external?repository-url=https%3A%2F%2Fgithub.com%2Fopenpatch%2Fpatches-nextjs-starter) - -Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details. diff --git a/platforms/web/esbuild.mjs b/platforms/web/esbuild.mjs deleted file mode 100644 index 5277617d..00000000 --- a/platforms/web/esbuild.mjs +++ /dev/null @@ -1,31 +0,0 @@ -import chalk from "chalk"; -import { buildSync } from "esbuild"; -import { glob } from "glob"; -import fs from "fs"; -import path from "path"; - -const files = glob.sync("src/**/*.ts?(x)"); - -try { - buildSync({ - entryPoints: files, - target: "esnext", - platform: "node", - outdir: "dist", - sourcemap: false, - outbase: ".", - minify: false, - bundle: false, - format: "esm", - }); -} catch (e) { - throw new Error(`ESM Build failed \n ${e}`); -} - -const css = glob.sync("src/**/*.css"); - -for (const f of css) { - fs.cpSync(f, path.join("dist", f)); -} - -console.log(`build ${chalk.green("success")}`); diff --git a/platforms/web/next-env.d.ts b/platforms/web/next-env.d.ts deleted file mode 100644 index 4f11a03d..00000000 --- a/platforms/web/next-env.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -/// -/// - -// NOTE: This file should not be edited -// see https://nextjs.org/docs/basic-features/typescript for more information. diff --git a/platforms/web/package.json b/platforms/web/package.json deleted file mode 100644 index cd26c71d..00000000 --- a/platforms/web/package.json +++ /dev/null @@ -1,62 +0,0 @@ -{ - "name": "@platforms/web", - "version": "0.33.3", - "private": true, - "scripts": { - "build": "rimraf dist && tsc --project tsconfig.json --noEmit && node ./esbuild.mjs", - "dev": "next dev", - "next:dev": "next-hyperbook-watch", - "next:build": "next build", - "next:analyze": "ANALYZE=true next build" - }, - "dependencies": { - "@hyperbook/drawer": "workspace:*", - "@hyperbook/element-alert": "workspace:*", - "@hyperbook/element-audio": "workspace:*", - "@hyperbook/element-bitflow": "workspace:*", - "@hyperbook/element-bookmarks": "workspace:*", - "@hyperbook/element-collapsible": "workspace:*", - "@hyperbook/element-dl": "workspace:*", - "@hyperbook/element-embed": "workspace:*", - "@hyperbook/element-excalidraw": "workspace:*", - "@hyperbook/element-mermaid": "workspace:*", - "@hyperbook/element-online-ide": "workspace:*", - "@hyperbook/element-plantuml": "workspace:*", - "@hyperbook/element-protect": "workspace:*", - "@hyperbook/element-qr": "workspace:*", - "@hyperbook/element-scratchblock": "workspace:*", - "@hyperbook/element-slideshow": "workspace:*", - "@hyperbook/element-sql-ide": "workspace:*", - "@hyperbook/element-struktog": "workspace:*", - "@hyperbook/element-tabs": "workspace:*", - "@hyperbook/element-term": "workspace:*", - "@hyperbook/element-tiles": "workspace:*", - "@hyperbook/element-video": "workspace:*", - "@hyperbook/element-youtube": "workspace:*", - "@hyperbook/fs": "workspace:*", - "@hyperbook/markdown": "workspace:*", - "@hyperbook/provider": "workspace:*", - "@hyperbook/shell": "workspace:*", - "@hyperbook/store": "workspace:*", - "@hyperbook/styles": "workspace:*", - "gray-matter": "4.0.3", - "next": "13.4.5", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-redux": "9.1.2", - "redux": "5.0.1", - "redux-persist": "6.0.0" - }, - "devDependencies": { - "@hyperbook/next-watch": "workspace:*", - "@hyperbook/types": "workspace:*", - "@next/bundle-analyzer": "^13.3.1", - "@types/node": "20.12.12", - "@types/react": "18.3.2", - "chalk": "5.3.0", - "esbuild": "0.21.3", - "glob": "10.3.15", - "rimraf": "5.0.7", - "typescript": "5.4.5" - } -} diff --git a/platforms/web/src/index.css b/platforms/web/src/index.css deleted file mode 100644 index 35044f0c..00000000 --- a/platforms/web/src/index.css +++ /dev/null @@ -1,14 +0,0 @@ -html, -body { - overflow-x: hidden; - margin: 0; -} - -body { - -ms-overflow-style: none; /* IE and Edge */ - scrollbar-width: none; /* Firefox */ -} - -body::-webkit-scrollbar { - display: none; -} diff --git a/platforms/web/src/pages/[[...page]].tsx b/platforms/web/src/pages/[[...page]].tsx deleted file mode 100644 index 53515bc6..00000000 --- a/platforms/web/src/pages/[[...page]].tsx +++ /dev/null @@ -1,100 +0,0 @@ -import React from "react"; -import { GetStaticPaths, GetStaticProps } from "next"; -import { Shell, ShellProps } from "@hyperbook/shell"; -import { Markdown } from "@hyperbook/markdown"; -import { useActivePageId, useLink } from "@hyperbook/provider"; -import { Fragment } from "react"; -import { vfile, hyperbook } from "@hyperbook/fs"; -import { useScrollHash } from "../useScrollHash"; -import path from "path"; -import { HyperbookPage } from "@hyperbook/types"; - -type PageProps = { - markdown: string; - data: HyperbookPage; - navigation: ShellProps["navigation"]; -}; - -export default function BookPage({ markdown, data, navigation }: PageProps) { - const Link = useLink(); - useActivePageId(); - useScrollHash(); - - return ( - - -
    - -
    - {!data.hide && ( -
    - {navigation.previous ? ( - - {navigation.previous.name} - - ) : ( -
    - )} - {navigation.next ? ( - - {navigation.next.name} - - ) : ( -
    - )} -
    - )} - - - ); -} - -export const getStaticProps: GetStaticProps< - PageProps, - { - page: string[]; - } -> = async ({ params }) => { - const root = process.env.root ?? process.cwd(); - - let href = ""; - if (params.page) { - href = path.join(...params.page); - } - const file = await vfile.get(root, "book", "/" + href); - const { content, data } = file.markdown; - const hyperbookJson = await hyperbook.getJson(root); - const navigation = await hyperbook.getNavigation(root, file); - - return { - props: { - locale: data?.lang || hyperbookJson.language, - markdown: content, - data, - navigation, - }, - }; -}; - -export const getStaticPaths: GetStaticPaths<{ - page: string[]; -}> = async () => { - const root = process.env.root ?? process.cwd(); - const files = await vfile.listForFolder(root, "book"); - const paths = files.map((f) => { - const page = f.path.href.slice(1).split("/"); - if (f.name === "index" && f.path.directory === "") { - page.pop(); - } - return { - params: { - page, - }, - }; - }); - - return { - paths, - fallback: false, - }; -}; diff --git a/platforms/web/src/pages/_app.tsx b/platforms/web/src/pages/_app.tsx deleted file mode 100644 index d2220b96..00000000 --- a/platforms/web/src/pages/_app.tsx +++ /dev/null @@ -1,148 +0,0 @@ -import React from "react"; -import "../index.css"; -import "@hyperbook/shell/index.css"; -import "@hyperbook/drawer/index.css"; -import "@hyperbook/markdown/katex.css"; -import "@hyperbook/markdown/index.css"; -import { Provider, ProviderProps } from "@hyperbook/provider"; -import elementTab from "@hyperbook/element-tabs"; -import "@hyperbook/element-tabs/index.css"; -import elementAudio from "@hyperbook/element-audio"; -import "@hyperbook/element-audio/index.css"; -import elementVideo from "@hyperbook/element-video"; -import "@hyperbook/element-video/index.css"; -import elementAlert from "@hyperbook/element-alert"; -import "@hyperbook/element-alert/index.css"; -import elementTerm from "@hyperbook/element-term"; -import "@hyperbook/element-term/index.css"; -import elementYoutube from "@hyperbook/element-youtube"; -import "@hyperbook/element-youtube/index.css"; -import elementPlantuml from "@hyperbook/element-plantuml"; -import "@hyperbook/element-plantuml/index.css"; -import elementProtect from "@hyperbook/element-protect"; -import "@hyperbook/element-protect/index.css"; -import elementCollapsible from "@hyperbook/element-collapsible"; -import "@hyperbook/element-collapsible/index.css"; -import elementDl from "@hyperbook/element-dl"; -import "@hyperbook/element-dl/index.css"; -import elementBookmarks from "@hyperbook/element-bookmarks"; -import "@hyperbook/element-bookmarks/index.css"; -import elementStruktog from "@hyperbook/element-struktog"; -import "@hyperbook/element-struktog/index.css"; -import elementQr from "@hyperbook/element-qr"; -import "@hyperbook/element-qr/index.css"; -import elementMermaid from "@hyperbook/element-mermaid"; -import "@hyperbook/element-mermaid/index.css"; -import elementExcalidraw from "@hyperbook/element-excalidraw"; -import "@hyperbook/element-excalidraw/index.css"; -import elementEmbed from "@hyperbook/element-embed"; -import "@hyperbook/element-embed/index.css"; -import elementOnlineIde from "@hyperbook/element-online-ide"; -import "@hyperbook/element-online-ide/index.css"; -import elementSqlIde from "@hyperbook/element-sql-ide"; -import "@hyperbook/element-sql-ide/index.css"; -import elementBitflow from "@hyperbook/element-bitflow"; -import "@hyperbook/element-bitflow/index.css"; -import elementScratchblock from "@hyperbook/element-scratchblock"; -import "@hyperbook/element-scratchblock/index.css"; -import elementTiles from "@hyperbook/element-tiles"; -import "@hyperbook/element-tiles/index.css"; -import elementSlideshow from "@hyperbook/element-slideshow"; -import "@hyperbook/element-slideshow/index.css"; -import Link from "next/link"; -import Head from "next/head"; -import { Styles } from "@hyperbook/styles"; -import { localStorage, noopStorage } from "@hyperbook/store"; -import { useRouter } from "next/router"; -import { useEffect } from "react"; - -import hb from "../../hyperbook.json"; - -const MyLink: ProviderProps["Link"] = ({ ref, href, children, ...props }) => { - return ( - - {children} - - ); -}; - -const makeUrl: ProviderProps["makeUrl"] = - ({ basePath }) => - (path) => { - if ( - process.env.NODE_ENV === "production" && - basePath && - path?.startsWith("/") - ) { - if (basePath.endsWith("/")) { - path = basePath.slice(0, -1) + path; - } else { - path = basePath + path; - } - } - return path; - }; - -export default function MyApp({ Component, pageProps }) { - const router = useRouter(); - - useEffect(() => { - document.documentElement.lang = pageProps.locale; - }, [pageProps.locale]); - - return ( - async (path) => { - return fetch(path).then((res) => res.text()); - }} - saveFile={() => async (path, content, rootFolder) => { - await fetch("/api/save", { - method: "POST", - headers: { - "Content-Type": "application/json", - }, - body: JSON.stringify({ - path, - content, - rootFolder, - }), - }); - }} - getActivePageId={async () => router.asPath.split("#")?.[0] || "/"} - > - - - - ); -} diff --git a/platforms/web/src/pages/_document.tsx b/platforms/web/src/pages/_document.tsx deleted file mode 100644 index 231f85b9..00000000 --- a/platforms/web/src/pages/_document.tsx +++ /dev/null @@ -1,18 +0,0 @@ -import React from "react"; -import Document, { Html, Head, Main, NextScript } from "next/document"; - -class MyDocument extends Document { - render() { - return ( - - - -
    - - - - ); - } -} - -export default MyDocument; diff --git a/platforms/web/src/pages/api/save.ts b/platforms/web/src/pages/api/save.ts deleted file mode 100644 index 1f62b41a..00000000 --- a/platforms/web/src/pages/api/save.ts +++ /dev/null @@ -1,54 +0,0 @@ -import fs from "fs/promises"; -import path from "path"; -import { NextApiRequest, NextApiResponse } from "next"; - -type ReqData = { - path: string; - content: string; - rootFolder: string; -}; - -type ResData = { - status: "saved" | "failed"; -}; - -async function ensureDirectoryExistence(filePath: string) { - var dirname = path.dirname(filePath); - try { - await fs.access(dirname); - return true; - } catch (e) { - fs.mkdir(dirname).then(async () => ensureDirectoryExistence(dirname)); - } -} - -// not needed in production -export const config = { - api: { - bodyParser: { - sizeLimit: "32mb", - }, - }, -}; - -export default async function handler( - req: NextApiRequest, - res: NextApiResponse -) { - if (process.env.NODE_ENV !== "development") { - res.status(404).json({ status: "failed" }); - } - let { path: p, content, rootFolder } = req.body as ReqData; - - if (rootFolder) { - p = path.join(rootFolder, p); - } - p = path.join(__dirname, "..", "..", "..", "..", p); - try { - await ensureDirectoryExistence(p); - await fs.writeFile(p, content); - res.status(202).json({ status: "saved" }); - } catch (e) { - res.status(400).json(e); - } -} diff --git a/platforms/web/src/pages/glossary/[...term].tsx b/platforms/web/src/pages/glossary/[...term].tsx deleted file mode 100644 index 5d99773b..00000000 --- a/platforms/web/src/pages/glossary/[...term].tsx +++ /dev/null @@ -1,91 +0,0 @@ -import React from "react"; -import { GetStaticPaths, GetStaticProps } from "next"; -import { Shell, ShellProps } from "@hyperbook/shell"; -import { Fragment } from "react"; - -import { useActivePageId, useLink } from "@hyperbook/provider"; -import { Markdown } from "@hyperbook/markdown"; -import { hyperbook, vfile } from "@hyperbook/fs"; -import { useScrollHash } from "../../useScrollHash"; -import { HyperbookPage } from "@hyperbook/types"; - -type TermProps = { - markdown: string; - data: HyperbookPage; - navigation: ShellProps["navigation"]; - references: vfile.VFileBook[]; -}; - -export default function Term({ - markdown, - navigation, - data, - references, -}: TermProps) { - const Link = useLink(); - useActivePageId(); - useScrollHash(); - return ( - -
    - -
    - {references.map((p, i) => ( - - {i > 0 && ", "} - {p.markdown?.data?.name ?? p.name} - - ))} -
    -
    -
    - ); -} - -export const getStaticProps: GetStaticProps< - TermProps, - { - term: string[]; - } -> = async ({ params }) => { - const root = process.env.root ?? process.cwd(); - - const file = await vfile.get( - root, - "glossary", - "/glossary/" + params.term.join("/") - ); - if (!file) { - throw Error(`Missing file ${file}`); - } - const { content, data } = await vfile.getMarkdown(file); - const hyperbookJson = await hyperbook.getJson(root); - const navigation = await hyperbook.getNavigation(root, file); - - return { - props: { - locale: data?.lang || hyperbookJson.language, - markdown: content, - data, - references: file.references, - navigation, - }, - }; -}; - -export const getStaticPaths: GetStaticPaths<{ - term: string[]; -}> = async () => { - const root = process.env.root ?? process.cwd(); - const files = await vfile.listForFolder(root, "glossary"); - const paths = files.map((f) => ({ - params: { - term: f.path.href.slice(10).split("/"), - }, - })); - - return { - paths, - fallback: false, - }; -}; diff --git a/platforms/web/src/pages/glossary/index.tsx b/platforms/web/src/pages/glossary/index.tsx deleted file mode 100644 index 63e362e8..00000000 --- a/platforms/web/src/pages/glossary/index.tsx +++ /dev/null @@ -1,57 +0,0 @@ -import React from "react"; -import { GetStaticProps } from "next"; -import { Shell } from "@hyperbook/shell"; -import { Glossary as TGlossary } from "@hyperbook/types"; -import { useActivePageId, useLink } from "@hyperbook/provider"; -import { ShellProps } from "@hyperbook/shell"; -import { hyperbook, vfile } from "@hyperbook/fs"; -import { useScrollHash } from "../../useScrollHash"; - -export type GlossaryProps = { - navigation: ShellProps["navigation"]; - glossary: TGlossary; -}; - -export default function Glossary({ glossary, navigation }: GlossaryProps) { - const Link = useLink(); - useActivePageId(); - useScrollHash(); - return ( - -
    - {Object.keys(glossary).map((letter) => ( -
    -
    {letter}
    -
      - {glossary[letter].map((term) => ( -
    • - - {term.name} - -
    • - ))} -
    -
    - ))} -
    -
    - ); -} - -export const getStaticProps: GetStaticProps<{ - glossary: GlossaryProps["glossary"]; -}> = async () => { - const root = process.env.root ?? process.cwd(); - - const glossaryData = await vfile.getGlossary(root); - const hyperbookJson = await hyperbook.getJson(root); - const navigation = await hyperbook.getNavigation(root); - - return { - props: { - locale: hyperbookJson.language, - glossary: glossaryData, - navigation, - }, - }; -}; diff --git a/platforms/web/src/useScrollHash.ts b/platforms/web/src/useScrollHash.ts deleted file mode 100644 index 4cc6a367..00000000 --- a/platforms/web/src/useScrollHash.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { useEffect } from "react"; - -export const useScrollHash = () => { - useEffect(() => { - const hash = window.location.hash; - if (hash) { - setTimeout(() => { - document.querySelector(hash)?.scrollIntoView({ behavior: "smooth" }); - }, 100); - } - }); -}; diff --git a/platforms/web/tsconfig.json b/platforms/web/tsconfig.json deleted file mode 100644 index 61908879..00000000 --- a/platforms/web/tsconfig.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "compilerOptions": { - "target": "es5", - "lib": ["dom", "dom.iterable", "esnext"], - "typeRoots": ["./node_modules/@types", "./types"], - "allowJs": true, - "skipLibCheck": true, - "strict": false, - "forceConsistentCasingInFileNames": true, - "noEmit": true, - "esModuleInterop": true, - "module": "CommonJS", - "moduleResolution": "node", - "resolveJsonModule": true, - "isolatedModules": true, - "plugins": [ - { - "name": "typescript-styled-plugin" - } - ], - "incremental": true, - "jsx": "preserve" - }, - "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", "./types"], - "exclude": ["node_modules"] -} diff --git a/plop-templates/component/README.md.hbs b/plop-templates/component/README.md.hbs deleted file mode 100644 index 9602e627..00000000 --- a/plop-templates/component/README.md.hbs +++ /dev/null @@ -1,9 +0,0 @@ -# @hyperbook/{{dashCase name}} - -## Installation - -```sh -yarn add @hyperbook/{{dashCase name}} -# or -npm i @hyperbook/{{dashCase name}} -``` diff --git a/plop-templates/component/package.json.hbs b/plop-templates/component/package.json.hbs deleted file mode 100644 index 0112e7a0..00000000 --- a/plop-templates/component/package.json.hbs +++ /dev/null @@ -1,48 +0,0 @@ -{ - "name": "@hyperbook/{{dashCase name}}", - "version": "0.0.0", - "author": "Mike Barkmin", - "homepage": "https://github.com/openpatch/hyperbook#readme", - "license": "MIT", - "type": "module", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "sideEffects": false, - "exports": { - ".": "./dist/index.js" - }, - "files": [ - "dist" - ], - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/{{dashCase name }}" - }, - "bugs": { - "url": "https://github.com/openpatch/hyperbook/issues" - }, - "scripts": { - "version": "pnpm build", - "lint": "tsc --noEmit", - "test": "vitest", - "build": "rimraf dist && pnpm build:pkg && pnpm build:types", - "build:pkg": "node ../../scripts/build.mjs", - "build:types": "tsc --project tsconfig.build.json --declaration --emitDeclarationOnly" - }, - "dependencies": {}, - "peerDependencies": { - "react": "18.x", - "react-dom": "18.x", - }, - "devDependencies": { - "@types/react": "18.0.15", - "@types/react-dom": "18.0.6", - "react": "18.2.0", - "react-dom": "18.2.0", - "vitest": "^0.26.3" - } -} diff --git a/plop-templates/component/src/index.ts.hbs b/plop-templates/component/src/index.ts.hbs deleted file mode 100644 index 0afd1a5f..00000000 --- a/plop-templates/component/src/index.ts.hbs +++ /dev/null @@ -1 +0,0 @@ -export * from "./{{properCase name}}"; \ No newline at end of file diff --git a/plop-templates/component/src/{{ properCase name }}.tsx.hbs b/plop-templates/component/src/{{ properCase name }}.tsx.hbs deleted file mode 100644 index 53de75d2..00000000 --- a/plop-templates/component/src/{{ properCase name }}.tsx.hbs +++ /dev/null @@ -1,7 +0,0 @@ -import React from "react"; - -export type {{properCase name}}Props = { }; - -export const {{properCase name}} = ({}: {{properCase name}}Props) => { - return
    ; -} diff --git a/plop-templates/component/tsconfig.build.json b/plop-templates/component/tsconfig.build.json deleted file mode 100644 index e8415085..00000000 --- a/plop-templates/component/tsconfig.build.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["src", "../../types"], - "compilerOptions": { - "rootDir": "src", - "declarationDir": "dist" - } -} diff --git a/plop-templates/component/tsconfig.json b/plop-templates/component/tsconfig.json deleted file mode 100644 index f068abe3..00000000 --- a/plop-templates/component/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "include": ["src", "../../types", "tests"] -} diff --git a/plop-templates/component/vite.config.ts b/plop-templates/component/vite.config.ts deleted file mode 100644 index 8fb6f2dc..00000000 --- a/plop-templates/component/vite.config.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineConfig } from "vitest/config"; - -export default defineConfig({}); diff --git a/plop-templates/element/README.md.hbs b/plop-templates/element/README.md.hbs deleted file mode 100644 index 7865d320..00000000 --- a/plop-templates/element/README.md.hbs +++ /dev/null @@ -1,9 +0,0 @@ -# @hyperbook/element-{{dashCase name}} - -## Installation - -```sh -yarn add @hyperbook/element-{{dashCase name}} -# or -npm i @hyperbook/element-{{dashCase name}} -``` diff --git a/plop-templates/element/package.json.hbs b/plop-templates/element/package.json.hbs deleted file mode 100644 index a775f2a0..00000000 --- a/plop-templates/element/package.json.hbs +++ /dev/null @@ -1,54 +0,0 @@ -{ - "name": "@hyperbook/element-{{dashCase name}}", - "version": "0.0.0", - "author": "Mike Barkmin", - "homepage": "https://github.com/openpatch/hyperbook#readme", - "license": "MIT", - "type": "module", - "main": "dist/index.js", - "types": "dist/index.d.ts", - "sideEffects": false, - "exports": { - ".": "./dist/index.js", - "./index.css": "./dist/index.css" - }, - "files": [ - "dist" - ], - "publishConfig": { - "access": "public" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/openpatch/hyperbook.git", - "directory": "packages/element-{{dashCase name}}" - }, - "bugs": { - "url": "https://github.com/openpatch/hyperbook/issues" - }, - "scripts": { - "version": "pnpm build", - "lint": "tsc --noEmit", - "build": "rimraf dist && pnpm build:pkg && pnpm build:types", - "build:pkg": "node ../../scripts/build.mjs", - "build:types": "tsc --project tsconfig.build.json --declaration --emitDeclarationOnly" - }, - "dependencies": { - "@hyperbook/provider": "workspace:*", - "@hyperbook/store": "workspace:*" - }, - "peerDependencies": { - "react": "18.x", - "react-dom": "18.x", - "react-redux": "9.x" - }, - "devDependencies": { - "@types/react": "18.0.15", - "@types/react-dom": "18.0.6", - "react": "18.2.0", - "react-dom": "18.2.0", - "vitest": "^0.26.3", - "react-redux": "9.1.2", - "@reduxjs/toolkit": "2.2.5" - } -} diff --git a/plop-templates/element/src/index.css b/plop-templates/element/src/index.css deleted file mode 100644 index e69de29b..00000000 diff --git a/plop-templates/element/src/index.tsx.hbs b/plop-templates/element/src/index.tsx.hbs deleted file mode 100644 index ac6af61a..00000000 --- a/plop-templates/element/src/index.tsx.hbs +++ /dev/null @@ -1,31 +0,0 @@ -import { FC, Fragment, ReactNode } from "react"; -import { useDispatch, useSelector } from "react-redux"; -import { createSlice } from "@hyperbook/store"; -import type {Slice} from "@reduxjs/toolkit"; -import { useActivePageId } from "@hyperbook/provider"; -import "./index.css" - -type Directive{{ properCase name }}Props = { - children?: ReactNode; -} - -const Directive{{ properCase name}}: FC = ({ children }) => { - const [activePageId] = useActivePageId(); - - return
    {{ properCase name }} on {activePageId}
    -} - -type Element{{ properCase name }}State = {} - -const initialState: Element{{ properCase name }}State = {} - -const slice{{ properCase name }} = createSlice({ - name: "element.{{ camelCase name }}", - initialState, - reducers: {} -}) - -export default { - directives: { {{ camelCase name }}: Directive{{ properCase name }} }, - slice: slice{{ properCase name }} as Slice -} diff --git a/plop-templates/element/tsconfig.build.json b/plop-templates/element/tsconfig.build.json deleted file mode 100644 index e8415085..00000000 --- a/plop-templates/element/tsconfig.build.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "./tsconfig.json", - "include": ["src", "../../types"], - "compilerOptions": { - "rootDir": "src", - "declarationDir": "dist" - } -} diff --git a/plop-templates/element/tsconfig.json b/plop-templates/element/tsconfig.json deleted file mode 100644 index f068abe3..00000000 --- a/plop-templates/element/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "include": ["src", "../../types", "tests"] -} diff --git a/plop-templates/element/vite.config.ts b/plop-templates/element/vite.config.ts deleted file mode 100644 index 8fb6f2dc..00000000 --- a/plop-templates/element/vite.config.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineConfig } from "vitest/config"; - -export default defineConfig({}); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index fffa3d62..0044220f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -69,755 +69,6 @@ importers: specifier: 5.91.0 version: 5.91.0(esbuild@0.21.3) - packages/drawer: - dependencies: - classnames: - specifier: 2.5.1 - version: 2.5.1 - devDependencies: - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - vitest: - specifier: ^1.6.0 - version: 1.6.0(@types/node@22.7.4)(sass@1.79.4)(terser@5.34.1) - - packages/element-alert: - dependencies: - '@hyperbook/provider': - specifier: workspace:* - version: link:../provider - devDependencies: - '@reduxjs/toolkit': - specifier: 2.2.5 - version: 2.2.5(react-redux@9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1))(react@18.3.1) - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - react-redux: - specifier: 9.1.2 - version: 9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1) - - packages/element-audio: - dependencies: - '@hyperbook/provider': - specifier: workspace:* - version: link:../provider - '@hyperbook/store': - specifier: workspace:* - version: link:../store - wavesurfer.js: - specifier: ^7.8.6 - version: 7.8.6 - devDependencies: - '@reduxjs/toolkit': - specifier: 2.2.5 - version: 2.2.5(react-redux@9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1))(react@18.3.1) - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - react-redux: - specifier: 9.1.2 - version: 9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1) - vitest: - specifier: ^1.6.0 - version: 1.6.0(@types/node@22.7.4)(sass@1.79.4)(terser@5.34.1) - - packages/element-bitflow: - dependencies: - '@babel/core': - specifier: 7.25.7 - version: 7.25.7 - '@bitflow/bits': - specifier: 0.2.1 - version: 0.2.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@types/react@18.3.2)(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@bitflow/core': - specifier: 0.6.0 - version: 0.6.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@bitflow/do-local': - specifier: 0.5.1 - version: 0.5.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(@vocab/types@1.3.6)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@bitflow/provider': - specifier: 0.5.0 - version: 0.5.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@bitflow/shell': - specifier: 0.7.1 - version: 0.7.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@emotion/cache': - specifier: 11.13.1 - version: 11.13.1 - '@emotion/core': - specifier: 11.0.0 - version: 11.0.0 - '@emotion/react': - specifier: 11.13.3 - version: 11.13.3(@types/react@18.3.2)(react@18.3.1) - '@emotion/styled': - specifier: 11.13.0 - version: 11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1) - '@hyperbook/provider': - specifier: workspace:* - version: link:../provider - '@hyperbook/store': - specifier: workspace:* - version: link:../store - '@openpatch/patches': - specifier: 6.0.1 - version: 6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1) - '@vocab/core': - specifier: 1.6.2 - version: 1.6.2 - '@vocab/react': - specifier: 1.1.11 - version: 1.1.11(react@18.3.1) - '@vocab/types': - specifier: 1.3.6 - version: 1.3.6 - react-hook-form: - specifier: 7.53.0 - version: 7.53.0(react@18.3.1) - zod: - specifier: 3.23.8 - version: 3.23.8 - devDependencies: - '@reduxjs/toolkit': - specifier: 2.2.5 - version: 2.2.5(react-redux@9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1))(react@18.3.1) - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - react-redux: - specifier: 9.1.2 - version: 9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1) - - packages/element-bookmarks: - dependencies: - '@hyperbook/provider': - specifier: workspace:* - version: link:../provider - devDependencies: - '@reduxjs/toolkit': - specifier: 2.2.5 - version: 2.2.5(react-redux@9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1))(react@18.3.1) - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - react-redux: - specifier: 9.1.2 - version: 9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1) - - packages/element-collapsible: - dependencies: - '@hyperbook/provider': - specifier: workspace:* - version: link:../provider - '@hyperbook/store': - specifier: workspace:* - version: link:../store - object-hash: - specifier: 3.0.0 - version: 3.0.0 - react-collapsed: - specifier: 4.1.2 - version: 4.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - devDependencies: - '@reduxjs/toolkit': - specifier: 2.2.5 - version: 2.2.5(react-redux@9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1))(react@18.3.1) - '@types/object-hash': - specifier: 3.0.6 - version: 3.0.6 - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - react-redux: - specifier: 9.1.2 - version: 9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1) - - packages/element-dl: - dependencies: - '@hyperbook/provider': - specifier: workspace:* - version: link:../provider - devDependencies: - '@reduxjs/toolkit': - specifier: 2.2.5 - version: 2.2.5(react-redux@9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1))(react@18.3.1) - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - react-redux: - specifier: 9.1.2 - version: 9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1) - - packages/element-embed: - dependencies: - '@hyperbook/provider': - specifier: workspace:* - version: link:../provider - '@hyperbook/store': - specifier: workspace:* - version: link:../store - devDependencies: - '@reduxjs/toolkit': - specifier: 2.2.5 - version: 2.2.5(react-redux@9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1))(react@18.3.1) - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - react-redux: - specifier: 9.1.2 - version: 9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1) - vitest: - specifier: ^1.6.0 - version: 1.6.0(@types/node@22.7.4)(sass@1.79.4)(terser@5.34.1) - - packages/element-excalidraw: - dependencies: - '@excalidraw/excalidraw': - specifier: 0.17.6 - version: 0.17.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@hyperbook/provider': - specifier: workspace:* - version: link:../provider - devDependencies: - '@reduxjs/toolkit': - specifier: 2.2.5 - version: 2.2.5(react-redux@9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1))(react@18.3.1) - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - react-redux: - specifier: 9.1.2 - version: 9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1) - - packages/element-mermaid: - dependencies: - '@hyperbook/provider': - specifier: workspace:* - version: link:../provider - mermaid: - specifier: 11.3.0 - version: 11.3.0 - devDependencies: - '@reduxjs/toolkit': - specifier: 2.2.5 - version: 2.2.5(react-redux@9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1))(react@18.3.1) - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - react-redux: - specifier: 9.1.2 - version: 9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1) - - packages/element-online-ide: - dependencies: - '@hyperbook/provider': - specifier: workspace:* - version: link:../provider - object-hash: - specifier: 3.0.0 - version: 3.0.0 - devDependencies: - '@reduxjs/toolkit': - specifier: 2.2.5 - version: 2.2.5(react-redux@9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1))(react@18.3.1) - '@types/object-hash': - specifier: 3.0.6 - version: 3.0.6 - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - react-redux: - specifier: 9.1.2 - version: 9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1) - vitest: - specifier: ^1.6.0 - version: 1.6.0(@types/node@22.7.4)(sass@1.79.4)(terser@5.34.1) - - packages/element-plantuml: - dependencies: - '@hyperbook/provider': - specifier: workspace:* - version: link:../provider - '@hyperbook/store': - specifier: workspace:* - version: link:../store - '@types/pako': - specifier: 2.0.3 - version: 2.0.3 - js-base64: - specifier: ^3.7.7 - version: 3.7.7 - pako: - specifier: 2.1.0 - version: 2.1.0 - devDependencies: - '@reduxjs/toolkit': - specifier: 2.2.5 - version: 2.2.5(react-redux@9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1))(react@18.3.1) - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - react-redux: - specifier: 9.1.2 - version: 9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1) - vitest: - specifier: ^1.6.0 - version: 1.6.0(@types/node@22.7.4)(sass@1.79.4)(terser@5.34.1) - - packages/element-protect: - dependencies: - '@hyperbook/provider': - specifier: workspace:* - version: link:../provider - '@hyperbook/store': - specifier: workspace:* - version: link:../store - object-hash: - specifier: 3.0.0 - version: 3.0.0 - devDependencies: - '@reduxjs/toolkit': - specifier: 2.2.5 - version: 2.2.5(react-redux@9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1))(react@18.3.1) - '@types/object-hash': - specifier: 3.0.6 - version: 3.0.6 - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - react-redux: - specifier: 9.1.2 - version: 9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1) - - packages/element-qr: - dependencies: - '@hyperbook/provider': - specifier: workspace:* - version: link:../provider - qrcode: - specifier: ^1.5.4 - version: 1.5.4 - devDependencies: - '@reduxjs/toolkit': - specifier: 2.2.5 - version: 2.2.5(react-redux@9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1))(react@18.3.1) - '@types/qrcode': - specifier: ^1.5.5 - version: 1.5.5 - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - react-redux: - specifier: 9.1.2 - version: 9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1) - - packages/element-scratchblock: - dependencies: - '@hyperbook/provider': - specifier: workspace:* - version: link:../provider - scratchblocks: - specifier: ^3.6.4 - version: 3.6.4 - devDependencies: - '@reduxjs/toolkit': - specifier: 2.2.5 - version: 2.2.5(react-redux@9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1))(react@18.3.1) - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - react-redux: - specifier: 9.1.2 - version: 9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1) - - packages/element-slideshow: - dependencies: - '@hyperbook/provider': - specifier: workspace:* - version: link:../provider - '@hyperbook/store': - specifier: workspace:* - version: link:../store - devDependencies: - '@reduxjs/toolkit': - specifier: 2.2.5 - version: 2.2.5(react-redux@9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1))(react@18.3.1) - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - react-redux: - specifier: 9.1.2 - version: 9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1) - vitest: - specifier: ^1.6.0 - version: 1.6.0(@types/node@22.7.4)(sass@1.79.4)(terser@5.34.1) - - packages/element-sql-ide: - dependencies: - '@hyperbook/provider': - specifier: workspace:* - version: link:../provider - object-hash: - specifier: 3.0.0 - version: 3.0.0 - devDependencies: - '@reduxjs/toolkit': - specifier: 2.2.5 - version: 2.2.5(react-redux@9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1))(react@18.3.1) - '@types/object-hash': - specifier: 3.0.6 - version: 3.0.6 - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - react-redux: - specifier: 9.1.2 - version: 9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1) - vitest: - specifier: ^1.6.0 - version: 1.6.0(@types/node@22.7.4)(sass@1.79.4)(terser@5.34.1) - - packages/element-struktog: - dependencies: - '@hyperbook/provider': - specifier: workspace:* - version: link:../provider - js-base64: - specifier: 3.7.7 - version: 3.7.7 - pako: - specifier: 2.1.0 - version: 2.1.0 - devDependencies: - '@reduxjs/toolkit': - specifier: 2.2.5 - version: 2.2.5(react-redux@9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1))(react@18.3.1) - '@types/pako': - specifier: 2.0.3 - version: 2.0.3 - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - react-redux: - specifier: 9.1.2 - version: 9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1) - - packages/element-tabs: - dependencies: - '@hyperbook/provider': - specifier: workspace:* - version: link:../provider - '@hyperbook/store': - specifier: workspace:* - version: link:../store - object-hash: - specifier: 3.0.0 - version: 3.0.0 - devDependencies: - '@reduxjs/toolkit': - specifier: 2.2.5 - version: 2.2.5(react-redux@9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1))(react@18.3.1) - '@types/object-hash': - specifier: 3.0.6 - version: 3.0.6 - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - react-redux: - specifier: 9.1.2 - version: 9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1) - - packages/element-term: - dependencies: - '@hyperbook/provider': - specifier: workspace:* - version: link:../provider - devDependencies: - '@reduxjs/toolkit': - specifier: 2.2.5 - version: 2.2.5(react-redux@9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1))(react@18.3.1) - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - react-redux: - specifier: 9.1.2 - version: 9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1) - - packages/element-tiles: - dependencies: - '@hyperbook/provider': - specifier: workspace:* - version: link:../provider - '@hyperbook/store': - specifier: workspace:* - version: link:../store - devDependencies: - '@reduxjs/toolkit': - specifier: 2.2.5 - version: 2.2.5(react-redux@9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1))(react@18.3.1) - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - react-redux: - specifier: 9.1.2 - version: 9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1) - vitest: - specifier: ^1.6.0 - version: 1.6.0(@types/node@22.7.4)(sass@1.79.4)(terser@5.34.1) - - packages/element-video: - dependencies: - '@hyperbook/provider': - specifier: workspace:* - version: link:../provider - '@hyperbook/store': - specifier: workspace:* - version: link:../store - '@types/wavesurfer.js': - specifier: ^6.0.12 - version: 6.0.12 - wavesurfer.js: - specifier: ^7.8.6 - version: 7.8.6 - devDependencies: - '@reduxjs/toolkit': - specifier: 2.2.5 - version: 2.2.5(react-redux@9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1))(react@18.3.1) - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - react-redux: - specifier: 9.1.2 - version: 9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1) - vitest: - specifier: ^1.6.0 - version: 1.6.0(@types/node@22.7.4)(sass@1.79.4)(terser@5.34.1) - - packages/element-youtube: - dependencies: - '@hyperbook/provider': - specifier: workspace:* - version: link:../provider - devDependencies: - '@reduxjs/toolkit': - specifier: 2.2.5 - version: 2.2.5(react-redux@9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1))(react@18.3.1) - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - react-redux: - specifier: 9.1.2 - version: 9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1) - packages/fs: dependencies: chalk: @@ -876,9 +127,9 @@ importers: specifier: workspace:* version: link:../types devDependencies: - '@platforms/web': + '@hyperbook/markdown': specifier: workspace:* - version: link:../../platforms/web + version: link:../markdown '@pnpm/exportable-manifest': specifier: 6.0.1 version: 6.0.1 @@ -897,6 +148,9 @@ importers: '@types/tar': specifier: 6.1.13 version: 6.1.13 + '@types/ws': + specifier: ^8.5.12 + version: 8.5.12 '@vercel/ncc': specifier: 0.38.1 version: 0.38.1 @@ -909,6 +163,9 @@ importers: chalk: specifier: 5.2.0 version: 5.2.0 + chokidar: + specifier: 3.6.0 + version: 3.6.0 commander: specifier: 12.1.0 version: 12.1.0 @@ -921,6 +178,9 @@ importers: got: specifier: 12.6.0 version: 12.6.0 + mime: + specifier: ^4.0.4 + version: 4.0.4 prompts: specifier: 2.4.2 version: 2.4.2 @@ -933,30 +193,54 @@ importers: update-check: specifier: 1.5.4 version: 1.5.4 + ws: + specifier: ^8.18.0 + version: 8.18.0 packages/markdown: dependencies: - '@hyperbook/drawer': - specifier: workspace:* - version: link:../drawer - '@hyperbook/provider': - specifier: workspace:* - version: link:../provider - rehype-highlight: - specifier: 7.0.0 - version: 7.0.0 + '@rehype-pretty/transformers': + specifier: ^0.13.2 + version: 0.13.2 + decircular: + specifier: ^1.0.0 + version: 1.0.0 + handlebars: + specifier: ^4.7.8 + version: 4.7.8 + is-obj: + specifier: ^3.0.0 + version: 3.0.0 + js-base64: + specifier: ^3.7.7 + version: 3.7.7 + mdast-util-directive: + specifier: ^3.0.0 + version: 3.0.0 + mdast-util-from-markdown: + specifier: ^2.0.1 + version: 2.0.1 + mdast-util-to-hast: + specifier: ^13.1.0 + version: 13.1.0 + mdast-util-to-string: + specifier: ^4.0.0 + version: 4.0.0 + pako: + specifier: 2.1.0 + version: 2.1.0 + qrcode-svg: + specifier: ^1.1.0 + version: 1.1.0 + rehype-format: + specifier: ^5.0.1 + version: 5.0.1 rehype-katex: specifier: 7.0.1 version: 7.0.1 - rehype-parse: - specifier: ^9.0.1 - version: 9.0.1 - rehype-raw: - specifier: ^7.0.0 - version: 7.0.0 - rehype-react: - specifier: ^8.0.0 - version: 8.0.0 + rehype-pretty-code: + specifier: ^0.14.0 + version: 0.14.0(shiki@1.22.0) rehype-stringify: specifier: ^10.0.1 version: 10.0.1 @@ -981,296 +265,115 @@ importers: remark-rehype: specifier: ^11.1.1 version: 11.1.1 - remark-stringify: - specifier: ^11.0.0 - version: 11.0.0 remark-unwrap-images: specifier: 4.0.0 version: 4.0.0 + sort-keys: + specifier: ^5.1.0 + version: 5.1.0 unified: specifier: ^11.0.5 version: 11.0.5 unist-util-visit: specifier: ^5.0.0 version: 5.0.0 + unist-util-visit-parents: + specifier: ^6.0.1 + version: 6.0.1 devDependencies: + '@excalidraw/excalidraw': + specifier: 0.17.6 + version: 0.17.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@hyperbook/types': + specifier: workspace:* + version: link:../types + '@hyperbook/web-component-excalidraw': + specifier: workspace:* + version: link:../web-component-excalidraw '@types/hast': specifier: 3.0.4 version: 3.0.4 '@types/mdast': specifier: ^4.0.4 version: 4.0.4 - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 - '@types/unist': - specifier: 3.0.2 - version: 3.0.2 - hast-util-to-jsx-runtime: - specifier: ^2.3.0 - version: 2.3.0 - mdast-util-to-hast: - specifier: ^13.1.0 - version: 13.1.0 - mdast-util-to-string: - specifier: ^4.0.0 - version: 4.0.0 + '@types/object-hash': + specifier: 3.0.6 + version: 3.0.6 + '@types/pako': + specifier: 2.0.3 + version: 2.0.3 + '@types/qrcode-svg': + specifier: ^1.1.5 + version: 1.1.5 + chalk: + specifier: ^5.3.0 + version: 5.3.0 + chokidar: + specifier: 3.6.0 + version: 3.6.0 + live-server: + specifier: ^1.2.2 + version: 1.2.2 + mermaid: + specifier: 11.3.0 + version: 11.3.0 ncp: specifier: ^2.0.0 version: 2.0.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) + scratchblocks: + specifier: ^3.6.4 + version: 3.6.4 + vfile: + specifier: ^6.0.3 + version: 6.0.3 vitest: specifier: ^1.6.0 version: 1.6.0(@types/node@22.7.4)(sass@1.79.4)(terser@5.34.1) + wavesurfer.js: + specifier: ^7.8.8 + version: 7.8.8 - packages/next-watch: - dependencies: - '@hyperbook/types': - specifier: workspace:* - version: link:../types - chalk: - specifier: 5.3.0 - version: 5.3.0 - chokidar: - specifier: 3.6.0 - version: 3.6.0 - commander: - specifier: 12.1.0 - version: 12.1.0 - express: - specifier: 4.21.0 - version: 4.21.0 - devDependencies: - '@types/express': - specifier: ^4.17.21 - version: 4.17.21 - esbuild: - specifier: 0.21.3 - version: 0.21.3 - express-serve-static-core: - specifier: ^0.1.1 - version: 0.1.1 - next: - specifier: 13.4.5 - version: 13.4.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.79.4) - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - - packages/provider: - dependencies: - '@hyperbook/store': - specifier: workspace:* - version: link:../store - '@hyperbook/types': - specifier: workspace:* - version: link:../types - redux: - specifier: 5.0.1 - version: 5.0.1 - devDependencies: - '@reduxjs/toolkit': - specifier: 2.2.5 - version: 2.2.5(react-redux@9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1))(react@18.3.1) - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - react-redux: - specifier: 9.1.2 - version: 9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1) + packages/types: {} - packages/shell: + packages/web-component-excalidraw: dependencies: - '@hyperbook/drawer': - specifier: workspace:* - version: link:../drawer - '@hyperbook/provider': - specifier: workspace:* - version: link:../provider - '@szhsin/react-menu': - specifier: 4.2.2 - version: 4.2.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - react-collapsed: - specifier: 4.1.2 - version: 4.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - devDependencies: - '@hyperbook/types': - specifier: workspace:* - version: link:../types - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 + '@excalidraw/excalidraw': + specifier: 0.17.6 + version: 0.17.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@r2wc/react-to-web-component': + specifier: ^2.0.3 + version: 2.0.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: specifier: 18.3.1 version: 18.3.1 react-dom: specifier: 18.3.1 version: 18.3.1(react@18.3.1) - - packages/store: - dependencies: - react: - specifier: 18.x - version: 18.3.1 - redux: - specifier: 5.0.1 - version: 5.0.1 - redux-persist: - specifier: 6.0.0 - version: 6.0.0(react@18.3.1)(redux@5.0.1) - devDependencies: - '@reduxjs/toolkit': - specifier: 2.2.5 - version: 2.2.5(react-redux@9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1))(react@18.3.1) - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - - packages/styles: - dependencies: - '@hyperbook/provider': - specifier: workspace:* - version: link:../provider devDependencies: + '@rollup/plugin-typescript': + specifier: ^12.1.1 + version: 12.1.1(rollup@4.24.3)(tslib@2.6.2)(typescript@5.4.5) '@types/react': specifier: 18.3.2 version: 18.3.2 '@types/react-dom': specifier: 18.3.0 version: 18.3.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - - packages/types: {} + '@vitejs/plugin-react': + specifier: ^4.3.3 + version: 4.3.3(vite@5.4.10(@types/node@22.7.4)(sass@1.79.4)(terser@5.34.1)) + vite: + specifier: ^5.4.10 + version: 5.4.10(@types/node@22.7.4)(sass@1.79.4)(terser@5.34.1) platforms/vscode: dependencies: - '@hyperbook/drawer': - specifier: workspace:* - version: link:../../packages/drawer - '@hyperbook/element-alert': - specifier: workspace:* - version: link:../../packages/element-alert - '@hyperbook/element-audio': - specifier: workspace:* - version: link:../../packages/element-audio - '@hyperbook/element-bitflow': - specifier: workspace:* - version: link:../../packages/element-bitflow - '@hyperbook/element-bookmarks': - specifier: workspace:* - version: link:../../packages/element-bookmarks - '@hyperbook/element-collapsible': - specifier: workspace:* - version: link:../../packages/element-collapsible - '@hyperbook/element-dl': - specifier: workspace:* - version: link:../../packages/element-dl - '@hyperbook/element-embed': - specifier: workspace:* - version: link:../../packages/element-embed - '@hyperbook/element-excalidraw': - specifier: workspace:* - version: link:../../packages/element-excalidraw - '@hyperbook/element-mermaid': - specifier: workspace:* - version: link:../../packages/element-mermaid - '@hyperbook/element-online-ide': - specifier: workspace:* - version: link:../../packages/element-online-ide - '@hyperbook/element-plantuml': - specifier: workspace:* - version: link:../../packages/element-plantuml - '@hyperbook/element-protect': - specifier: workspace:* - version: link:../../packages/element-protect - '@hyperbook/element-qr': - specifier: workspace:* - version: link:../../packages/element-qr - '@hyperbook/element-scratchblock': - specifier: workspace:* - version: link:../../packages/element-scratchblock - '@hyperbook/element-slideshow': - specifier: workspace:* - version: link:../../packages/element-slideshow - '@hyperbook/element-sql-ide': - specifier: workspace:* - version: link:../../packages/element-sql-ide - '@hyperbook/element-struktog': - specifier: workspace:* - version: link:../../packages/element-struktog - '@hyperbook/element-tabs': - specifier: workspace:* - version: link:../../packages/element-tabs - '@hyperbook/element-term': - specifier: workspace:* - version: link:../../packages/element-term - '@hyperbook/element-tiles': - specifier: workspace:* - version: link:../../packages/element-tiles - '@hyperbook/element-video': - specifier: workspace:* - version: link:../../packages/element-video - '@hyperbook/element-youtube': - specifier: workspace:* - version: link:../../packages/element-youtube '@hyperbook/fs': specifier: workspace:* version: link:../../packages/fs '@hyperbook/markdown': specifier: workspace:* version: link:../../packages/markdown - '@hyperbook/provider': - specifier: workspace:* - version: link:../../packages/provider - '@hyperbook/shell': - specifier: workspace:* - version: link:../../packages/shell - '@hyperbook/store': - specifier: workspace:* - version: link:../../packages/store - '@hyperbook/styles': - specifier: workspace:* - version: link:../../packages/styles - gray-matter: - specifier: 4.0.3 - version: 4.0.3 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - react-redux: - specifier: 9.1.2 - version: 9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1) devDependencies: '@hyperbook/types': specifier: workspace:* @@ -1281,12 +384,6 @@ importers: '@types/node': specifier: 20.12.12 version: 20.12.12 - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - '@types/react-dom': - specifier: 18.3.0 - version: 18.3.0 '@types/vscode': specifier: 1.71.0 version: 1.71.0 @@ -1297,17 +394,17 @@ importers: specifier: 7.10.0 version: 7.10.0(eslint@9.3.0)(typescript@5.4.5) '@vscode/vsce': - specifier: 2.26.1 - version: 2.26.1 + specifier: 3.2.1 + version: 3.2.1 buffer: specifier: 6.0.3 version: 6.0.3 copy-webpack-plugin: specifier: 12.0.2 - version: 12.0.2(webpack@5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4)) + version: 12.0.2(webpack@5.91.0) css-loader: specifier: 7.1.1 - version: 7.1.1(webpack@5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4)) + version: 7.1.1(webpack@5.91.0) eslint: specifier: 9.3.0 version: 9.3.0 @@ -1316,13 +413,13 @@ importers: version: 4.6.2(eslint@9.3.0) file-loader: specifier: 6.2.0 - version: 6.2.0(webpack@5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4)) + version: 6.2.0(webpack@5.91.0) glob: specifier: 10.3.15 version: 10.3.15 node-polyfill-webpack-plugin: specifier: ^3.0.0 - version: 3.0.0(webpack@5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4)) + version: 3.0.0(webpack@5.91.0) npm-run-all: specifier: 4.1.5 version: 4.1.5 @@ -1332,21 +429,18 @@ importers: prettier: specifier: 3.2.5 version: 3.2.5 - rimraf: - specifier: 5.0.7 - version: 5.0.7 sass: specifier: 1.77.2 version: 1.77.2 sass-loader: specifier: 14.2.1 - version: 14.2.1(sass@1.77.2)(webpack@5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4)) + version: 14.2.1(sass@1.77.2)(webpack@5.91.0) style-loader: specifier: 4.0.0 - version: 4.0.0(webpack@5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4)) + version: 4.0.0(webpack@5.91.0) ts-loader: specifier: 9.5.1 - version: 9.5.1(typescript@5.4.5)(webpack@5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4)) + version: 9.5.1(typescript@5.4.5)(webpack@5.91.0) typescript: specifier: 5.4.5 version: 5.4.5 @@ -1360,148 +454,6 @@ importers: specifier: 5.1.4 version: 5.1.4(webpack@5.91.0) - platforms/web: - dependencies: - '@hyperbook/drawer': - specifier: workspace:* - version: link:../../packages/drawer - '@hyperbook/element-alert': - specifier: workspace:* - version: link:../../packages/element-alert - '@hyperbook/element-audio': - specifier: workspace:* - version: link:../../packages/element-audio - '@hyperbook/element-bitflow': - specifier: workspace:* - version: link:../../packages/element-bitflow - '@hyperbook/element-bookmarks': - specifier: workspace:* - version: link:../../packages/element-bookmarks - '@hyperbook/element-collapsible': - specifier: workspace:* - version: link:../../packages/element-collapsible - '@hyperbook/element-dl': - specifier: workspace:* - version: link:../../packages/element-dl - '@hyperbook/element-embed': - specifier: workspace:* - version: link:../../packages/element-embed - '@hyperbook/element-excalidraw': - specifier: workspace:* - version: link:../../packages/element-excalidraw - '@hyperbook/element-mermaid': - specifier: workspace:* - version: link:../../packages/element-mermaid - '@hyperbook/element-online-ide': - specifier: workspace:* - version: link:../../packages/element-online-ide - '@hyperbook/element-plantuml': - specifier: workspace:* - version: link:../../packages/element-plantuml - '@hyperbook/element-protect': - specifier: workspace:* - version: link:../../packages/element-protect - '@hyperbook/element-qr': - specifier: workspace:* - version: link:../../packages/element-qr - '@hyperbook/element-scratchblock': - specifier: workspace:* - version: link:../../packages/element-scratchblock - '@hyperbook/element-slideshow': - specifier: workspace:* - version: link:../../packages/element-slideshow - '@hyperbook/element-sql-ide': - specifier: workspace:* - version: link:../../packages/element-sql-ide - '@hyperbook/element-struktog': - specifier: workspace:* - version: link:../../packages/element-struktog - '@hyperbook/element-tabs': - specifier: workspace:* - version: link:../../packages/element-tabs - '@hyperbook/element-term': - specifier: workspace:* - version: link:../../packages/element-term - '@hyperbook/element-tiles': - specifier: workspace:* - version: link:../../packages/element-tiles - '@hyperbook/element-video': - specifier: workspace:* - version: link:../../packages/element-video - '@hyperbook/element-youtube': - specifier: workspace:* - version: link:../../packages/element-youtube - '@hyperbook/fs': - specifier: workspace:* - version: link:../../packages/fs - '@hyperbook/markdown': - specifier: workspace:* - version: link:../../packages/markdown - '@hyperbook/provider': - specifier: workspace:* - version: link:../../packages/provider - '@hyperbook/shell': - specifier: workspace:* - version: link:../../packages/shell - '@hyperbook/store': - specifier: workspace:* - version: link:../../packages/store - '@hyperbook/styles': - specifier: workspace:* - version: link:../../packages/styles - gray-matter: - specifier: 4.0.3 - version: 4.0.3 - next: - specifier: 13.4.5 - version: 13.4.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.79.4) - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - react-redux: - specifier: 9.1.2 - version: 9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1) - redux: - specifier: 5.0.1 - version: 5.0.1 - redux-persist: - specifier: 6.0.0 - version: 6.0.0(react@18.3.1)(redux@5.0.1) - devDependencies: - '@hyperbook/next-watch': - specifier: workspace:* - version: link:../../packages/next-watch - '@hyperbook/types': - specifier: workspace:* - version: link:../../packages/types - '@next/bundle-analyzer': - specifier: ^13.3.1 - version: 13.3.1 - '@types/node': - specifier: 20.12.12 - version: 20.12.12 - '@types/react': - specifier: 18.3.2 - version: 18.3.2 - chalk: - specifier: 5.3.0 - version: 5.3.0 - esbuild: - specifier: 0.21.3 - version: 0.21.3 - glob: - specifier: 10.3.15 - version: 10.3.15 - rimraf: - specifier: 5.0.7 - version: 5.0.7 - typescript: - specifier: 5.4.5 - version: 5.4.5 - packages: '@ampproject/remapping@2.3.0': @@ -1592,6 +544,10 @@ packages: peerDependencies: '@babel/core': ^7.0.0 + '@babel/helper-plugin-utils@7.25.9': + resolution: {integrity: sha512-kSMlyUVdWe25rEsRGviIgOWnoT/nfABVWlqt9N19/dIPWViAOW2s9wznP5tURbs/IDuNk4gPy3YdYRgH3uxhBw==} + engines: {node: '>=6.9.0'} + '@babel/helper-simple-access@7.25.7': resolution: {integrity: sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ==} engines: {node: '>=6.9.0'} @@ -1621,16 +577,20 @@ packages: engines: {node: '>=6.0.0'} hasBin: true - '@babel/runtime@7.22.5': - resolution: {integrity: sha512-ecjvYlnAaZ/KVneE/OdKYBYfgXV3Ptu6zQWmgEF7vwKhQnvVS6bjMD2XYgj+SNvQ1GfK/pjgokfPkC/2CO8CuA==} + '@babel/plugin-transform-react-jsx-self@7.25.9': + resolution: {integrity: sha512-y8quW6p0WHkEhmErnfe58r7x0A70uKphQm8Sp8cV7tjNQwK56sNVK0M73LK3WuYmsuyrftut4xAkjjgU0twaMg==} engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 - '@babel/runtime@7.24.5': - resolution: {integrity: sha512-Nms86NXrsaeU9vbBJKni6gXiEXZ4CVpYVzEjDH9Sb8vmZ3UljyA1GSOJl/6LGPO8EHLuSF9H+IxNXHPX8QHJ4g==} + '@babel/plugin-transform-react-jsx-source@7.25.9': + resolution: {integrity: sha512-+iqjT8xmXhhYv4/uiYd8FNQsraMFZIfxVSqxxVSZP0WbbSAWvBXAul0m/zu+7Vv4O/3WtApy9pmaTMiumEZgfg==} engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 - '@babel/runtime@7.25.7': - resolution: {integrity: sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==} + '@babel/runtime@7.24.5': + resolution: {integrity: sha512-Nms86NXrsaeU9vbBJKni6gXiEXZ4CVpYVzEjDH9Sb8vmZ3UljyA1GSOJl/6LGPO8EHLuSF9H+IxNXHPX8QHJ4g==} engines: {node: '>=6.9.0'} '@babel/template@7.25.7': @@ -1645,213 +605,6 @@ packages: resolution: {integrity: sha512-vwIVdXG+j+FOpkwqHRcBgHLYNL7XMkufrlaFvL9o6Ai9sJn9+PdyIL5qa0XzTZw084c+u9LOls53eoZWP/W5WQ==} engines: {node: '>=6.9.0'} - '@bitflow/bits@0.2.1': - resolution: {integrity: sha512-LfRhtGpyV25iryki8z1ftm3l06ufe3mC6DQCp9dS6C0ds2EObzjAm/Np2aSh5IvyrSmZpAcMwc+5v7SC1mHdrA==} - peerDependencies: - zod: 3.x - - '@bitflow/core@0.6.0': - resolution: {integrity: sha512-3oYAGwfiUIj02AgkbsUXpv5ng+NaBbmchqG361If7M3U1Z44jDGbcMA0CTh5hYIiPnIhN4eUqwfgFJCJ897udg==} - peerDependencies: - '@emotion/cache': 11.x - '@emotion/react': 11.x - '@emotion/styled': 11.x - '@openpatch/patches': 6.x - react: 18.x - react-dom: 18.x - zod: 3.x - - '@bitflow/do-local@0.5.1': - resolution: {integrity: sha512-J1Ul3YrbnH4S2xnDTL1mns44dAtb2UlWpzCJtxrQOml4U6OW8BRbiXz0Ikx6cMN1N0/HQARoFyjR9Ymq4dJi2w==} - peerDependencies: - '@emotion/cache': 11.x - '@emotion/react': 11.x - '@emotion/styled': 11.x - '@openpatch/patches': 6.x - '@vocab/core': 1.x - '@vocab/react': 1.x - react: 18.x - react-dom: 18.x - zod: 3.x - - '@bitflow/do@0.6.1': - resolution: {integrity: sha512-jI86UuWmi9H4RkGR8DTQ4SHeI/T3LlJ26wjJImaQt2M+o4Z6J55lwfTUl7SVMHHMnryBHRVPq+7Tf/fkqjw6sw==} - peerDependencies: - '@emotion/cache': 11.x - '@emotion/react': 11.x - '@emotion/styled': 11.x - '@openpatch/patches': 6.x - '@vocab/core': 1.x - '@vocab/react': 1.x - '@vocab/types': 1.x - react: 18.x - react-dom: 18.x - - '@bitflow/end-tries@0.5.1': - resolution: {integrity: sha512-aashXQORgri/PxhHBNjVxMmGhm4ZingTFxNcQsT6JIHa+xHUYUcGdXG6nITM/RH1l3kpwm/dC3HQ0IM1L7ri6g==} - peerDependencies: - '@emotion/cache': 11.x - '@emotion/react': 11.x - '@emotion/styled': 11.x - '@openpatch/patches': 6.x - '@vocab/core': 1.x - '@vocab/react': 1.x - react: 18.x - react-dom: 18.x - react-hook-form: 7.x - zod: 3.x - - '@bitflow/flow-engine@0.5.0': - resolution: {integrity: sha512-AMTTnp1fEbQ0GsjNL5FO43BpEHKv22sUpyaRSNQmGPRfm/YaVOa+VBPNragfK1arPsJLBANLSoLsgIIRVk8BDQ==} - - '@bitflow/icons@0.5.0': - resolution: {integrity: sha512-n0EvRZB4jMIg6tnIXq4XCMvkbmSt4eF1UAFPzJEIdk3QZPqmnRtYFzzRgbbhIRExGYMf4EUO6Dd74So47YAtfA==} - peerDependencies: - '@emotion/cache': 11.x - '@emotion/react': 11.x - '@emotion/styled': 11.x - '@openpatch/patches': 6.x - '@vocab/core': 1.x - '@vocab/react': 1.x - react: 18.x - react-dom: 18.x - - '@bitflow/input-markdown@0.5.0': - resolution: {integrity: sha512-iEpFkygrrDt6KoiPnnFLCVqMInP5tur6cu5Fy1AFFUJFw+bPpUrBtFeFfi/VZOEI1dZGdBjMOZuAdhLmRJPkzg==} - peerDependencies: - '@emotion/cache': 11.x - '@emotion/react': 11.x - '@emotion/styled': 11.x - '@openpatch/patches': 6.x - '@vocab/core': 1.x - '@vocab/react': 1.x - react: 18.x - react-dom: 18.x - react-hook-form: 7.x - zod: 3.x - - '@bitflow/provider@0.5.0': - resolution: {integrity: sha512-qu8GTNS5Y7kxI5ORHuzLWTbm+A1HzdxLnFWgBd0wF/al4x9Ug9dCUQQYD2JVkM+B9FjnYQrIFCgaJVQcggrqPg==} - peerDependencies: - '@emotion/cache': 11.x - '@emotion/react': 11.x - '@emotion/styled': 11.x - '@openpatch/patches': 6.x - '@vocab/core': 1.x - '@vocab/react': 1.x - react: 18.x - react-dom: 18.x - - '@bitflow/shell@0.7.1': - resolution: {integrity: sha512-mhEwtqSLzsJv/Y2LwmY7qVuCZrwm3Dhy8tPLnN/DobpYrhWcsUXibcu2tlsqygtrN8qUK5Oqok4aCM1KZmwD3Q==} - peerDependencies: - '@emotion/cache': 11.x - '@emotion/react': 11.x - '@emotion/styled': 11.x - '@openpatch/patches': 6.x - '@vocab/core': 1.x - '@vocab/react': 1.x - react: 18.x - react-dom: 18.x - - '@bitflow/start-simple@0.5.0': - resolution: {integrity: sha512-pseZ8ne0tpuL0Elf6HRPAObJD0p/MwGDnuATPuqdw2vZ8Bg8evA7Z/gy7/TKOWzwoSlFNXsyoucyxfJumpNEVQ==} - peerDependencies: - '@emotion/cache': 11.x - '@emotion/react': 11.x - '@emotion/styled': 11.x - '@openpatch/patches': 6.x - '@vocab/core': 1.x - '@vocab/react': 1.x - react: 18.x - react-dom: 18.x - react-hook-form: 7.x - zod: 3.x - - '@bitflow/task-choice@0.5.0': - resolution: {integrity: sha512-+qbFoOFWM38Z6SDoepuYaYowkRQeP/LlZdDL0Fiyor+VI7EzyQ+mWHs71JeWovWq+EB07rw/Vv3bvUZI1uhB8g==} - peerDependencies: - '@emotion/cache': 11.x - '@emotion/react': 11.x - '@emotion/styled': 11.x - '@openpatch/patches': 6.x - '@vocab/core': 1.x - '@vocab/react': 1.x - react: 18.x - react-dom: 18.x - react-hook-form: 7.x - zod: 3.x - - '@bitflow/task-fill-in-the-blank@0.5.0': - resolution: {integrity: sha512-6h9b63bCzyC/WVc67P/t7KJZzEnyrn0WiHAqaeGA1ti510rKo3W2R0yuHjU8OT5qP61U1ulyrHHia8YZ1t95dA==} - peerDependencies: - '@emotion/cache': 11.x - '@emotion/react': 11.x - '@emotion/styled': 11.x - '@openpatch/patches': 6.x - '@vocab/core': 1.x - '@vocab/react': 1.x - react: 18.x - react-dom: 18.x - react-hook-form: 7.x - zod: 3.x - - '@bitflow/task-highlighting@0.2.0': - resolution: {integrity: sha512-gwqnABdiBnVg3kXlrNO2JvZIfrxPZj+0k6bgJ2xmd1REQsWGNuCxzQWuKGGRjmHabDgzElWXxyXJU53N5xnLRg==} - peerDependencies: - '@emotion/cache': 11.x - '@emotion/react': 11.x - '@emotion/styled': 11.x - '@openpatch/patches': 6.x - '@vocab/core': 1.x - '@vocab/react': 1.x - react: 18.x - react-dom: 18.x - react-hook-form: 7.x - zod: 3.x - - '@bitflow/task-input@0.5.0': - resolution: {integrity: sha512-neGabE7RKtB4uCDoowRzCgEeeP/ZDCLXbV0/kFo2hNqKCx/eAw8GGzL9BqnErDP89xn0r1vkPwSXGQd41/PgRQ==} - peerDependencies: - '@emotion/cache': 11.x - '@emotion/react': 11.x - '@emotion/styled': 11.x - '@openpatch/patches': 6.x - '@vocab/core': 1.x - '@vocab/react': 1.x - react: 18.x - react-dom: 18.x - react-hook-form: 7.x - zod: 3.x - - '@bitflow/task-yes-no@0.5.0': - resolution: {integrity: sha512-GXTHr6AIBHmUsSHxjF1ny+Mfj+smNrlhCzpvqzwQVS+hNvUslFMU38znmZBSTKq6YF1ce7rHD4FBDqv7lGnsCg==} - peerDependencies: - '@emotion/cache': 11.x - '@emotion/react': 11.x - '@emotion/styled': 11.x - '@openpatch/patches': 6.x - '@vocab/core': 1.x - '@vocab/react': 1.x - react: 18.x - react-dom: 18.x - react-hook-form: 7.x - zod: 3.x - - '@bitflow/title-simple@0.5.0': - resolution: {integrity: sha512-DkgVLFp+yhhipeBEjPphBhj+sTVQNYTDQ8zrfG0usVJxVm9N3onqHIM+bWrWYvrypU/ULpVoZLIadhri/hj9lg==} - peerDependencies: - '@emotion/cache': 11.x - '@emotion/react': 11.x - '@emotion/styled': 11.x - '@openpatch/patches': 6.x - '@vocab/core': 1.x - '@vocab/react': 1.x - react: 18.x - react-dom: 18.x - react-hook-form: 7.x - zod: 3.x - '@braintree/sanitize-url@7.1.0': resolution: {integrity: sha512-o+UlMLt49RvtCASlOMW0AkHnabN9wR9rwCCherxO0yG4Npy34GkvrAqdXQvrhNs+jh+gkK8gB8Lf05qL/O7KWg==} @@ -1928,42 +681,6 @@ packages: '@chevrotain/utils@11.0.3': resolution: {integrity: sha512-YslZMgtJUyuMbZ+aKvfF3x1f5liK4mWNxghFRv7jqRR9C3R3fAOGTTKvxXDa2Y1s9zSbcpuO0cAxDYsc9SrXoQ==} - '@codemirror/autocomplete@0.20.3': - resolution: {integrity: sha512-lYB+NPGP+LEzAudkWhLfMxhTrxtLILGl938w+RcFrGdrIc54A+UgmCoz+McE3IYRFp4xyQcL4uFJwo+93YdgHw==} - - '@codemirror/lang-css@0.20.0': - resolution: {integrity: sha512-NvYBkDu5Abvzp3bRnU7oHnz3QGeYLYcMIVlEAExtDw6QLbKn8beObuJLQmQB1TqAk7KJcrMvH0xf73DAF9ICHg==} - - '@codemirror/lang-html@0.20.0': - resolution: {integrity: sha512-hh/vii8Hw0eoPQy6vacqrrt4FMeLn9cNOG7zPFFOyc+oTl66+FYHgOtWH8b6HysTx0pdTMtpNbBF4tTLMbmP1w==} - - '@codemirror/lang-java@0.20.1': - resolution: {integrity: sha512-D7CFKgO0Lq4I/z5ZxGfCf/WvMnkYajWe8LyJzmC6Nuf8dJq9VKiplP78THMWGLv/OEYZDqJvI/z3ZJtM+HE54Q==} - - '@codemirror/lang-javascript@0.20.1': - resolution: {integrity: sha512-eYulxirefgyow5rBf6I1aGXsF125lPmUIoL3JQaPgCVONimb90zsAG6I2m8ObMn9Z0kCTCdrGEhzCSwZkQiXBQ==} - - '@codemirror/lang-markdown@0.20.1': - resolution: {integrity: sha512-m9pAxcreEf5X2S6l+1a07rvac117DHCmOPRPp0/jih1Byif33LkLrSRObrNym/QyeTMEoE6dwLEutYisGrGaUg==} - - '@codemirror/lang-python@0.20.0': - resolution: {integrity: sha512-P2mIyjqBexRTaYbLmAf1HpIyNDw6nWsh2K5MiDi80+6oYwnRggU9dR3Yn9Lv0RM5ph3xJzayMbW0IpicIfA87w==} - - '@codemirror/lang-sql@0.20.4': - resolution: {integrity: sha512-mvej7xrFlmT9nPJjZmPCCwwZ1PXse9TtVDgLVegoSJTx0SMHbnx+NhDRsTRA+kG9sEroR+hsl3qrcEee9VMiDQ==} - - '@codemirror/language@0.20.2': - resolution: {integrity: sha512-WB3Bnuusw0xhVvhBocieYKwJm04SOk5bPoOEYksVHKHcGHFOaYaw+eZVxR4gIqMMcGzOIUil0FsCmFk8yrhHpw==} - - '@codemirror/lint@0.20.3': - resolution: {integrity: sha512-06xUScbbspZ8mKoODQCEx6hz1bjaq9m8W8DxdycWARMiiX1wMtfCh/MoHpaL7ws/KUMwlsFFfp2qhm32oaCvVA==} - - '@codemirror/state@0.20.1': - resolution: {integrity: sha512-ms0tlV5A02OK0pFvTtSUGMLkoarzh1F8mr6jy1cD7ucSC2X/VLHtQCxfhdSEGqTYlQF2hoZtmLv+amqhdgbwjQ==} - - '@codemirror/view@0.20.7': - resolution: {integrity: sha512-pqEPCb9QFTOtHgAH5XU/oVy9UR/Anj6r+tG5CRmkNVcqSKEPmBU05WtN/jxJCFZBXf6HumzWC9ydE4qstO3TxQ==} - '@cspotcode/source-map-support@0.8.1': resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} engines: {node: '>=12'} @@ -1972,63 +689,6 @@ packages: resolution: {integrity: sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==} engines: {node: '>=10.0.0'} - '@emotion/babel-plugin@11.12.0': - resolution: {integrity: sha512-y2WQb+oP8Jqvvclh8Q55gLUyb7UFvgv7eJfsj7td5TToBrIUtPay2kMrZi4xjq9qw2vD0ZR5fSho0yqoFgX7Rw==} - - '@emotion/cache@11.13.1': - resolution: {integrity: sha512-iqouYkuEblRcXmylXIwwOodiEK5Ifl7JcX7o6V4jI3iW4mLXX3dmt5xwBtIkJiQEXFAI+pC8X0i67yiPkH9Ucw==} - - '@emotion/core@11.0.0': - resolution: {integrity: sha512-w4sE3AmHmyG6RDKf6mIbtHpgJUSJ2uGvPQb8VXFL7hFjMPibE8IiehG8cMX3Ztm4svfCQV6KqusQbeIOkurBcA==} - - '@emotion/hash@0.9.2': - resolution: {integrity: sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g==} - - '@emotion/is-prop-valid@1.3.1': - resolution: {integrity: sha512-/ACwoqx7XQi9knQs/G0qKvv5teDMhD7bXYns9N/wM8ah8iNb8jZ2uNO0YOgiq2o2poIvVtJS2YALasQuMSQ7Kw==} - - '@emotion/memoize@0.9.0': - resolution: {integrity: sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ==} - - '@emotion/react@11.13.3': - resolution: {integrity: sha512-lIsdU6JNrmYfJ5EbUCf4xW1ovy5wKQ2CkPRM4xogziOxH1nXxBSjpC9YqbFAP7circxMfYp+6x676BqWcEiixg==} - peerDependencies: - '@types/react': '*' - react: '>=16.8.0' - peerDependenciesMeta: - '@types/react': - optional: true - - '@emotion/serialize@1.3.2': - resolution: {integrity: sha512-grVnMvVPK9yUVE6rkKfAJlYZgo0cu3l9iMC77V7DW6E1DUIrU68pSEXRmFZFOFB1QFo57TncmOcvcbMDWsL4yA==} - - '@emotion/sheet@1.4.0': - resolution: {integrity: sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg==} - - '@emotion/styled@11.13.0': - resolution: {integrity: sha512-tkzkY7nQhW/zC4hztlwucpT8QEZ6eUzpXDRhww/Eej4tFfO0FxQYWRyg/c5CCXa4d/f174kqeXYjuQRnhzf6dA==} - peerDependencies: - '@emotion/react': ^11.0.0-rc.0 - '@types/react': '*' - react: '>=16.8.0' - peerDependenciesMeta: - '@types/react': - optional: true - - '@emotion/unitless@0.10.0': - resolution: {integrity: sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg==} - - '@emotion/use-insertion-effect-with-fallbacks@1.1.0': - resolution: {integrity: sha512-+wBOcIV5snwGgI2ya3u99D7/FJquOIniQT1IKyDsBmEgwvpxMNeS65Oib7OnE2d2aY+3BU4OiH+0Wchf8yk3Hw==} - peerDependencies: - react: '>=16.8.0' - - '@emotion/utils@1.4.1': - resolution: {integrity: sha512-BymCXzCG3r72VKJxaYVwOXATqXIZ85cuvg0YOUDxMGNrKc1DJRZk8MgV5wyXRyEayIMd4FuXJIUgTBXvDNW5cA==} - - '@emotion/weak-memoize@0.4.0': - resolution: {integrity: sha512-snKqtPW01tN0ui7yu9rGv69aJXr/a/Ywvl11sUjNtEcRc+ng/mQriFL0wLXMef74iHa/EkftbDzU9F8iFbH+zg==} - '@esbuild/aix-ppc64@0.20.2': resolution: {integrity: sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==} engines: {node: '>=12'} @@ -2329,33 +989,14 @@ packages: react: ^17.0.2 || ^18.2.0 react-dom: ^17.0.2 || ^18.2.0 - '@formatjs/ecma402-abstract@2.0.0': - resolution: {integrity: sha512-rRqXOqdFmk7RYvj4khklyqzcfQl9vEL/usogncBHRZfZBDOwMGuSRNFl02fu5KGHXdbinju+YXyuR+Nk8xlr/g==} - - '@formatjs/fast-memoize@2.2.0': - resolution: {integrity: sha512-hnk/nY8FyrL5YxwP9e4r9dqeM6cAbo8PeU9UjyXojZMNvVad2Z06FAVHyR3Ecw6fza+0GH7vdJgiKIVXTMbSBA==} - - '@formatjs/icu-messageformat-parser@2.7.8': - resolution: {integrity: sha512-nBZJYmhpcSX0WeJ5SDYUkZ42AgR3xiyhNCsQweFx3cz/ULJjym8bHAzWKvG5e2+1XO98dBYC0fWeeAECAVSwLA==} - - '@formatjs/icu-skeleton-parser@1.8.2': - resolution: {integrity: sha512-k4ERKgw7aKGWJZgTarIcNEmvyTVD9FYh0mTrrBMHZ1b8hUu6iOJ4SzsZlo3UNAvHYa+PnvntIwRPt1/vy4nA9Q==} - - '@formatjs/intl-localematcher@0.5.4': - resolution: {integrity: sha512-zTwEpWOzZ2CiKcB93BLngUX59hQkuZjT2+SAQEscSm52peDW/getsawMcWF1rGRpMCX6D7nSJA3CzJ8gn13N/g==} - '@gwhitney/detect-indent@7.0.1': resolution: {integrity: sha512-7bQW+gkKa2kKZPeJf6+c6gFK9ARxQfn+FKy9ScTBppyKRWH2KzsmweXUoklqeEiHiNVWaeP5csIdsNq6w7QhzA==} engines: {node: '>=12.20'} - '@hookform/resolvers@2.9.10': - resolution: {integrity: sha512-JIL1DgJIlH9yuxcNGtyhsWX/PgNltz+5Gr6+8SX9fhXc/hPbEIk6wPI82nhgvp3uUb6ZfAM5mqg/x7KR7NAb+A==} - peerDependencies: - react-hook-form: ^7.0.0 - '@humanwhocodes/config-array@0.13.0': resolution: {integrity: sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==} engines: {node: '>=10.10.0'} + deprecated: Use @eslint/config-array instead '@humanwhocodes/module-importer@1.0.1': resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} @@ -2363,6 +1004,7 @@ packages: '@humanwhocodes/object-schema@2.0.3': resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==} + deprecated: Use @eslint/object-schema instead '@humanwhocodes/retry@0.3.0': resolution: {integrity: sha512-d2CGZR2o7fS6sWB7DG/3a95bGKQyHMACZ5aW8qGkkqQpUoZV6C0X7Pc7l4ZNMZkfNBf4VWNe9E1jRsf0G146Ew==} @@ -2406,104 +1048,17 @@ packages: '@jridgewell/trace-mapping@0.3.25': resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} - '@jridgewell/trace-mapping@0.3.9': - resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} - - '@lezer/common@0.16.1': - resolution: {integrity: sha512-qPmG7YTZ6lATyTOAWf8vXE+iRrt1NJd4cm2nJHK+v7X9TsOF6+HtuU/ctaZy2RCrluxDb89hI6KWQ5LfQGQWuA==} - - '@lezer/css@0.16.0': - resolution: {integrity: sha512-/YjbaCjgAYb7z/yDOpB/8dXdx1pTyXBsfvsZ6qL1jDg5kIjLUdqKmGGupx+xLTbKEdRC7mMUDPDsQPqXs6JJWQ==} - - '@lezer/highlight@0.16.0': - resolution: {integrity: sha512-iE5f4flHlJ1g1clOStvXNLbORJoiW4Kytso6ubfYzHnaNo/eo5SKhxs4wv/rtvwZQeZrK3we8S9SyA7OGOoRKQ==} - - '@lezer/html@0.16.1': - resolution: {integrity: sha512-3T7xJhNeETZpX+xzI7rO7Ba8ozhb8+raNVJKxKLZv/ARsMnhH5uhVqV3GQ8wwU4bjCmaF3q22+RWf/08GqF/Uw==} - - '@lezer/java@0.16.0': - resolution: {integrity: sha512-eHVeKZbqVodQ+RSgoGfEcTic8QUuOPR0rmj0wVFlmaylwkGlhUwq3oST3sy07hp++hL2sqAgaod96cRrjfnumw==} - - '@lezer/javascript@0.16.0': - resolution: {integrity: sha512-kDcwX3QMFKVd7VJwlYTeTNtcj3/gXQEDa7cQzXXsFMvTGV/RTDq0r8agTpZu0zBc1RUZkVILusd1Cluz3STRqw==} - - '@lezer/lr@0.16.3': - resolution: {integrity: sha512-pau7um4eAw94BEuuShUIeQDTf3k4Wt6oIUOYxMmkZgDHdqtIcxWND4LRxi8nI9KuT4I1bXQv67BCapkxt7Ywqw==} - - '@lezer/markdown@0.16.1': - resolution: {integrity: sha512-z+BkiwmtcFpAhlqHg7VahS0Zz6IRh9GTw0mNNW3J7BtlFzCF0gza3sOsBgVta3s3uZQB48ywq4e2WWOvpdCCjg==} - - '@lezer/python@0.16.1': - resolution: {integrity: sha512-xwnKG3CjUWRyG9TJCquLohDKgQYckLJoy4Y3cOrTWaxw+1cPhUJKqXxTq8ciseJI68XrgpUsjd724Ly+e8JLxg==} - - '@manypkg/find-root@1.1.0': - resolution: {integrity: sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA==} - - '@manypkg/get-packages@1.1.3': - resolution: {integrity: sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==} - - '@mermaid-js/parser@0.3.0': - resolution: {integrity: sha512-HsvL6zgE5sUPGgkIDlmAWR1HTNHz2Iy11BAWPTa4Jjabkpguy4Ze2gzfLrg6pdRuBvFwgUYyxiaNqZwrEEXepA==} - - '@next/bundle-analyzer@13.3.1': - resolution: {integrity: sha512-Qkd0ENOczIyJlKjjN7ENwQ2S5B6wqrTnVlzfWqAImw38VNgaVqZRgaM9Ph8JM43E6iLPjsMOHh8EN/7FxHyQ/g==} - - '@next/env@13.4.5': - resolution: {integrity: sha512-SG/gKH6eij4vwQy87b/3mbpQ1X3x2vUdnpwq6/qL2IQWjtq58EY/UuNAp9CoEZoC9sI4L9AD1r+73Z9r4d3uug==} - - '@next/swc-darwin-arm64@13.4.5': - resolution: {integrity: sha512-XvTzi2ASUN5bECFIAAcBiSoDb0xsq+KLj4F0bof4d4rdc+FgOqLvseGQaOXwVi1TIh5bHa7o4b6droSJMO5+2g==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [darwin] - - '@next/swc-darwin-x64@13.4.5': - resolution: {integrity: sha512-NQdqal/VKAqlJTuzhjZmNtdo8QSqwmfO7b2xJSAengTEVxQvsH76oGEzQeIv8Ci4NP6DysAFtFrJq++TmIxcUA==} - engines: {node: '>= 10'} - cpu: [x64] - os: [darwin] - - '@next/swc-linux-arm64-gnu@13.4.5': - resolution: {integrity: sha512-nB8TjtpJCXtzIFjYOMbnQu68ajkA8QK58TreHjTGojSQjsF0StDqo5zFHglVVVHrd8d3N/+EjC18yFNSWnd/ZA==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [linux] - - '@next/swc-linux-arm64-musl@13.4.5': - resolution: {integrity: sha512-W126XUW599OV3giSH9Co40VpT8VAOT47xONVHXZaYEpeca0qEevjj6WUr5IJu/8u+XGWm5xI1S0DYWjR6W+olw==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [linux] - - '@next/swc-linux-x64-gnu@13.4.5': - resolution: {integrity: sha512-ZbPLO/oztQdtjGmWvGhRmtkZ6j9kQqg65kiO7F7Ijj7ojTtu3hh/vY+XRsHa/4Cse6HgyJ8XGZJMGoLb8ecQfQ==} - engines: {node: '>= 10'} - cpu: [x64] - os: [linux] - - '@next/swc-linux-x64-musl@13.4.5': - resolution: {integrity: sha512-f+/h8KMNixVUoRB+2vza8I+jsthJ4KcvopGUsDIUHe7Q4t+m8nKwGFBeyNu9qNIenYK5g5QYEsSwYFEqZylrTQ==} - engines: {node: '>= 10'} - cpu: [x64] - os: [linux] + '@jridgewell/trace-mapping@0.3.9': + resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} - '@next/swc-win32-arm64-msvc@13.4.5': - resolution: {integrity: sha512-dvtPQZ5+J+zUE1uq7gP853Oj63e+n0T1ydZ/yRdVh7d8zW9ZFuC9fFrg3MqP1cv1NPPur8rrTqDKN2mRBkSSBw==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [win32] + '@manypkg/find-root@1.1.0': + resolution: {integrity: sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA==} - '@next/swc-win32-ia32-msvc@13.4.5': - resolution: {integrity: sha512-gK9zwGe25x31S4AjPy3Bf2niQvHIAbmwgkzmqWG3OmD4K2Z/Dh2ju4vuyzPzIt0pwQe4B520meP9NizTBmVWSg==} - engines: {node: '>= 10'} - cpu: [ia32] - os: [win32] + '@manypkg/get-packages@1.1.3': + resolution: {integrity: sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==} - '@next/swc-win32-x64-msvc@13.4.5': - resolution: {integrity: sha512-iyNQVc7eGehrik9RJt9xGcnO6b/pi8C7GCfg8RGenx1IlalEKbYRgBJloF7DQzwlrV47E9bQl8swT+JawaNcKA==} - engines: {node: '>= 10'} - cpu: [x64] - os: [win32] + '@mermaid-js/parser@0.3.0': + resolution: {integrity: sha512-HsvL6zgE5sUPGgkIDlmAWR1HTNHz2Iy11BAWPTa4Jjabkpguy4Ze2gzfLrg6pdRuBvFwgUYyxiaNqZwrEEXepA==} '@nodelib/fs.scandir@2.1.5': resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} @@ -2517,16 +1072,6 @@ packages: resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} engines: {node: '>= 8'} - '@openpatch/patches@6.0.1': - resolution: {integrity: sha512-7mdCBg0ZWfR/VyHVyWWerAAka6wQB01Z+xwwMflBQirWbpqSCMX7U/k8MMMuKulWalG8ZoLy517LodiYDXUpOw==} - peerDependencies: - '@emotion/cache': ^11.0.0 - '@emotion/react': ^11.1.1 - '@emotion/styled': ^11.0.0 - react: '>=18' - react-dom: '>=18' - react-hook-form: ^7.31.2 - '@pkgjs/parseargs@0.11.0': resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} engines: {node: '>=14'} @@ -2566,18 +1111,39 @@ packages: resolution: {integrity: sha512-DTjuH7Ls4v8CpfvOCtZkIIySpEKPGh7hEUpH5tqvVblzWQwfheoHfeBvyjGo975lvHsR2bCt2s8F7bv6DQ8o8g==} engines: {node: '>=18.12'} - '@polka/url@1.0.0-next.21': - resolution: {integrity: sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==} + '@r2wc/core@1.1.0': + resolution: {integrity: sha512-pEgtPXhfgg8mv/MooU83cb5sXC2aQOXPLm9UX7E7Oz/OXmrnP5r8hD/nJL1empWxC4wo1YeBXvrFu8fXsMgGZQ==} + + '@r2wc/react-to-web-component@2.0.3': + resolution: {integrity: sha512-nlDJ0LHiWLG/EFB5tBtA+9KLF2oMBeDSAXL08NUzAuj/ac+V0NkMl/RvCFdDFnyrPQqpzpD9uOvOY2E5IFpdCQ==} + peerDependencies: + react: ^18.0.0 + react-dom: ^18.0.0 + + '@rehype-pretty/transformers@0.13.2': + resolution: {integrity: sha512-p2ciQSwqy5Ip8aNUa9q6rdS/hJZXrxHYYfDVOHvKOsBu3t9HDmQ65YX6r9Qbl19vi160OAxmGF7MIoCRDJrRhg==} + engines: {node: '>=18'} - '@reduxjs/toolkit@2.2.5': - resolution: {integrity: sha512-aeFA/s5NCG7NoJe/MhmwREJxRkDs0ZaSqt0MxhWUrwCf1UQXpwR87RROJEql0uAkLI6U7snBOYOcKw83ew3FPg==} + '@rollup/plugin-typescript@12.1.1': + resolution: {integrity: sha512-t7O653DpfB5MbFrqPe/VcKFFkvRuFNp9qId3xq4Eth5xlyymzxNpye2z8Hrl0RIMuXTSr5GGcFpkdlMeacUiFQ==} + engines: {node: '>=14.0.0'} peerDependencies: - react: ^16.9.0 || ^17.0.0 || ^18 - react-redux: ^7.2.1 || ^8.1.3 || ^9.0.0 + rollup: ^2.14.0||^3.0.0||^4.0.0 + tslib: '*' + typescript: '>=3.7.0' peerDependenciesMeta: - react: + rollup: optional: true - react-redux: + tslib: + optional: true + + '@rollup/pluginutils@5.1.3': + resolution: {integrity: sha512-Pnsb6f32CD2W3uCaLZIzDmeFyQ2b8UWMFI7xtwUezpcGBDVDW6y9XgAWIlARiGAo6eNF5FK5aQTr0LFyNyqq5A==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 + peerDependenciesMeta: + rollup: optional: true '@rollup/rollup-android-arm-eabi@4.17.2': @@ -2585,81 +1151,186 @@ packages: cpu: [arm] os: [android] + '@rollup/rollup-android-arm-eabi@4.24.3': + resolution: {integrity: sha512-ufb2CH2KfBWPJok95frEZZ82LtDl0A6QKTa8MoM+cWwDZvVGl5/jNb79pIhRvAalUu+7LD91VYR0nwRD799HkQ==} + cpu: [arm] + os: [android] + '@rollup/rollup-android-arm64@4.17.2': resolution: {integrity: sha512-yeX/Usk7daNIVwkq2uGoq2BYJKZY1JfyLTaHO/jaiSwi/lsf8fTFoQW/n6IdAsx5tx+iotu2zCJwz8MxI6D/Bw==} cpu: [arm64] os: [android] + '@rollup/rollup-android-arm64@4.24.3': + resolution: {integrity: sha512-iAHpft/eQk9vkWIV5t22V77d90CRofgR2006UiCjHcHJFVI1E0oBkQIAbz+pLtthFw3hWEmVB4ilxGyBf48i2Q==} + cpu: [arm64] + os: [android] + '@rollup/rollup-darwin-arm64@4.17.2': resolution: {integrity: sha512-kcMLpE6uCwls023+kknm71ug7MZOrtXo+y5p/tsg6jltpDtgQY1Eq5sGfHcQfb+lfuKwhBmEURDga9N0ol4YPw==} cpu: [arm64] os: [darwin] + '@rollup/rollup-darwin-arm64@4.24.3': + resolution: {integrity: sha512-QPW2YmkWLlvqmOa2OwrfqLJqkHm7kJCIMq9kOz40Zo9Ipi40kf9ONG5Sz76zszrmIZZ4hgRIkez69YnTHgEz1w==} + cpu: [arm64] + os: [darwin] + '@rollup/rollup-darwin-x64@4.17.2': resolution: {integrity: sha512-AtKwD0VEx0zWkL0ZjixEkp5tbNLzX+FCqGG1SvOu993HnSz4qDI6S4kGzubrEJAljpVkhRSlg5bzpV//E6ysTQ==} cpu: [x64] os: [darwin] + '@rollup/rollup-darwin-x64@4.24.3': + resolution: {integrity: sha512-KO0pN5x3+uZm1ZXeIfDqwcvnQ9UEGN8JX5ufhmgH5Lz4ujjZMAnxQygZAVGemFWn+ZZC0FQopruV4lqmGMshow==} + cpu: [x64] + os: [darwin] + + '@rollup/rollup-freebsd-arm64@4.24.3': + resolution: {integrity: sha512-CsC+ZdIiZCZbBI+aRlWpYJMSWvVssPuWqrDy/zi9YfnatKKSLFCe6fjna1grHuo/nVaHG+kiglpRhyBQYRTK4A==} + cpu: [arm64] + os: [freebsd] + + '@rollup/rollup-freebsd-x64@4.24.3': + resolution: {integrity: sha512-F0nqiLThcfKvRQhZEzMIXOQG4EeX61im61VYL1jo4eBxv4aZRmpin6crnBJQ/nWnCsjH5F6J3W6Stdm0mBNqBg==} + cpu: [x64] + os: [freebsd] + '@rollup/rollup-linux-arm-gnueabihf@4.17.2': resolution: {integrity: sha512-3reX2fUHqN7sffBNqmEyMQVj/CKhIHZd4y631duy0hZqI8Qoqf6lTtmAKvJFYa6bhU95B1D0WgzHkmTg33In0A==} cpu: [arm] os: [linux] + '@rollup/rollup-linux-arm-gnueabihf@4.24.3': + resolution: {integrity: sha512-KRSFHyE/RdxQ1CSeOIBVIAxStFC/hnBgVcaiCkQaVC+EYDtTe4X7z5tBkFyRoBgUGtB6Xg6t9t2kulnX6wJc6A==} + cpu: [arm] + os: [linux] + '@rollup/rollup-linux-arm-musleabihf@4.17.2': resolution: {integrity: sha512-uSqpsp91mheRgw96xtyAGP9FW5ChctTFEoXP0r5FAzj/3ZRv3Uxjtc7taRQSaQM/q85KEKjKsZuiZM3GyUivRg==} cpu: [arm] os: [linux] + '@rollup/rollup-linux-arm-musleabihf@4.24.3': + resolution: {integrity: sha512-h6Q8MT+e05zP5BxEKz0vi0DhthLdrNEnspdLzkoFqGwnmOzakEHSlXfVyA4HJ322QtFy7biUAVFPvIDEDQa6rw==} + cpu: [arm] + os: [linux] + '@rollup/rollup-linux-arm64-gnu@4.17.2': resolution: {integrity: sha512-EMMPHkiCRtE8Wdk3Qhtciq6BndLtstqZIroHiiGzB3C5LDJmIZcSzVtLRbwuXuUft1Cnv+9fxuDtDxz3k3EW2A==} cpu: [arm64] os: [linux] + '@rollup/rollup-linux-arm64-gnu@4.24.3': + resolution: {integrity: sha512-fKElSyXhXIJ9pqiYRqisfirIo2Z5pTTve5K438URf08fsypXrEkVmShkSfM8GJ1aUyvjakT+fn2W7Czlpd/0FQ==} + cpu: [arm64] + os: [linux] + '@rollup/rollup-linux-arm64-musl@4.17.2': resolution: {integrity: sha512-NMPylUUZ1i0z/xJUIx6VUhISZDRT+uTWpBcjdv0/zkp7b/bQDF+NfnfdzuTiB1G6HTodgoFa93hp0O1xl+/UbA==} cpu: [arm64] os: [linux] + '@rollup/rollup-linux-arm64-musl@4.24.3': + resolution: {integrity: sha512-YlddZSUk8G0px9/+V9PVilVDC6ydMz7WquxozToozSnfFK6wa6ne1ATUjUvjin09jp34p84milxlY5ikueoenw==} + cpu: [arm64] + os: [linux] + '@rollup/rollup-linux-powerpc64le-gnu@4.17.2': resolution: {integrity: sha512-T19My13y8uYXPw/L/k0JYaX1fJKFT/PWdXiHr8mTbXWxjVF1t+8Xl31DgBBvEKclw+1b00Chg0hxE2O7bTG7GQ==} cpu: [ppc64] os: [linux] + '@rollup/rollup-linux-powerpc64le-gnu@4.24.3': + resolution: {integrity: sha512-yNaWw+GAO8JjVx3s3cMeG5Esz1cKVzz8PkTJSfYzE5u7A+NvGmbVFEHP+BikTIyYWuz0+DX9kaA3pH9Sqxp69g==} + cpu: [ppc64] + os: [linux] + '@rollup/rollup-linux-riscv64-gnu@4.17.2': resolution: {integrity: sha512-BOaNfthf3X3fOWAB+IJ9kxTgPmMqPPH5f5k2DcCsRrBIbWnaJCgX2ll77dV1TdSy9SaXTR5iDXRL8n7AnoP5cg==} cpu: [riscv64] os: [linux] + '@rollup/rollup-linux-riscv64-gnu@4.24.3': + resolution: {integrity: sha512-lWKNQfsbpv14ZCtM/HkjCTm4oWTKTfxPmr7iPfp3AHSqyoTz5AgLemYkWLwOBWc+XxBbrU9SCokZP0WlBZM9lA==} + cpu: [riscv64] + os: [linux] + '@rollup/rollup-linux-s390x-gnu@4.17.2': resolution: {integrity: sha512-W0UP/x7bnn3xN2eYMql2T/+wpASLE5SjObXILTMPUBDB/Fg/FxC+gX4nvCfPBCbNhz51C+HcqQp2qQ4u25ok6g==} cpu: [s390x] os: [linux] + '@rollup/rollup-linux-s390x-gnu@4.24.3': + resolution: {integrity: sha512-HoojGXTC2CgCcq0Woc/dn12wQUlkNyfH0I1ABK4Ni9YXyFQa86Fkt2Q0nqgLfbhkyfQ6003i3qQk9pLh/SpAYw==} + cpu: [s390x] + os: [linux] + '@rollup/rollup-linux-x64-gnu@4.17.2': resolution: {integrity: sha512-Hy7pLwByUOuyaFC6mAr7m+oMC+V7qyifzs/nW2OJfC8H4hbCzOX07Ov0VFk/zP3kBsELWNFi7rJtgbKYsav9QQ==} cpu: [x64] os: [linux] + '@rollup/rollup-linux-x64-gnu@4.24.3': + resolution: {integrity: sha512-mnEOh4iE4USSccBOtcrjF5nj+5/zm6NcNhbSEfR3Ot0pxBwvEn5QVUXcuOwwPkapDtGZ6pT02xLoPaNv06w7KQ==} + cpu: [x64] + os: [linux] + '@rollup/rollup-linux-x64-musl@4.17.2': resolution: {integrity: sha512-h1+yTWeYbRdAyJ/jMiVw0l6fOOm/0D1vNLui9iPuqgRGnXA0u21gAqOyB5iHjlM9MMfNOm9RHCQ7zLIzT0x11Q==} cpu: [x64] os: [linux] + '@rollup/rollup-linux-x64-musl@4.24.3': + resolution: {integrity: sha512-rMTzawBPimBQkG9NKpNHvquIUTQPzrnPxPbCY1Xt+mFkW7pshvyIS5kYgcf74goxXOQk0CP3EoOC1zcEezKXhw==} + cpu: [x64] + os: [linux] + '@rollup/rollup-win32-arm64-msvc@4.17.2': resolution: {integrity: sha512-tmdtXMfKAjy5+IQsVtDiCfqbynAQE/TQRpWdVataHmhMb9DCoJxp9vLcCBjEQWMiUYxO1QprH/HbY9ragCEFLA==} cpu: [arm64] os: [win32] + '@rollup/rollup-win32-arm64-msvc@4.24.3': + resolution: {integrity: sha512-2lg1CE305xNvnH3SyiKwPVsTVLCg4TmNCF1z7PSHX2uZY2VbUpdkgAllVoISD7JO7zu+YynpWNSKAtOrX3AiuA==} + cpu: [arm64] + os: [win32] + '@rollup/rollup-win32-ia32-msvc@4.17.2': resolution: {integrity: sha512-7II/QCSTAHuE5vdZaQEwJq2ZACkBpQDOmQsE6D6XUbnBHW8IAhm4eTufL6msLJorzrHDFv3CF8oCA/hSIRuZeQ==} cpu: [ia32] os: [win32] + '@rollup/rollup-win32-ia32-msvc@4.24.3': + resolution: {integrity: sha512-9SjYp1sPyxJsPWuhOCX6F4jUMXGbVVd5obVpoVEi8ClZqo52ViZewA6eFz85y8ezuOA+uJMP5A5zo6Oz4S5rVQ==} + cpu: [ia32] + os: [win32] + '@rollup/rollup-win32-x64-msvc@4.17.2': resolution: {integrity: sha512-TGGO7v7qOq4CYmSBVEYpI1Y5xDuCEnbVC5Vth8mOsW0gDSzxNrVERPc790IGHsrT2dQSimgMr9Ub3Y1Jci5/8w==} cpu: [x64] os: [win32] + '@rollup/rollup-win32-x64-msvc@4.24.3': + resolution: {integrity: sha512-HGZgRFFYrMrP3TJlq58nR1xy8zHKId25vhmm5S9jETEfDf6xybPxsavFTJaufe2zgOGYJBskGlj49CwtEuFhWQ==} + cpu: [x64] + os: [win32] + + '@shikijs/core@1.22.0': + resolution: {integrity: sha512-S8sMe4q71TJAW+qG93s5VaiihujRK6rqDFqBnxqvga/3LvqHEnxqBIOPkt//IdXVtHkQWKu4nOQNk0uBGicU7Q==} + + '@shikijs/engine-javascript@1.22.0': + resolution: {integrity: sha512-AeEtF4Gcck2dwBqCFUKYfsCq0s+eEbCEbkUuFou53NZ0sTGnJnJ/05KHQFZxpii5HMXbocV9URYVowOP2wH5kw==} + + '@shikijs/engine-oniguruma@1.22.0': + resolution: {integrity: sha512-5iBVjhu/DYs1HB0BKsRRFipRrD7rqjxlWTj4F2Pf+nQSPqc3kcyqFFeZXnBMzDf0HdqaFVvhDRAGiYNvyLP+Mw==} + + '@shikijs/types@1.22.0': + resolution: {integrity: sha512-Fw/Nr7FGFhlQqHfxzZY8Cwtwk5E9nKDUgeLjZgt3UuhcM3yJR9xj3ZGNravZZok8XmEZMiYkSMTPlPkULB8nww==} + + '@shikijs/vscode-textmate@9.3.0': + resolution: {integrity: sha512-jn7/7ky30idSkd/O5yDBfAnVt+JJpepofP/POZ1iMOxK59cOfqIgg/Dj0eFsjOTMw+4ycJN0uhZH/Eb0bs/EUA==} + '@sinclair/typebox@0.27.8': resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} @@ -2671,54 +1342,6 @@ packages: resolution: {integrity: sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==} engines: {node: '>=18'} - '@styled-system/background@5.1.2': - resolution: {integrity: sha512-jtwH2C/U6ssuGSvwTN3ri/IyjdHb8W9X/g8Y0JLcrH02G+BW3OS8kZdHphF1/YyRklnrKrBT2ngwGUK6aqqV3A==} - - '@styled-system/border@5.1.5': - resolution: {integrity: sha512-JvddhNrnhGigtzWRCVuAHepniyVi6hBlimxWDVAdcTuk7aRn9BYJUwfHslURtwYFsF5FoEs8Zmr1oZq2M1AP0A==} - - '@styled-system/color@5.1.2': - resolution: {integrity: sha512-1kCkeKDZkt4GYkuFNKc7vJQMcOmTl3bJY3YBUs7fCNM6mMYJeT1pViQ2LwBSBJytj3AB0o4IdLBoepgSgGl5MA==} - - '@styled-system/core@5.1.2': - resolution: {integrity: sha512-XclBDdNIy7OPOsN4HBsawG2eiWfCcuFt6gxKn1x4QfMIgeO6TOlA2pZZ5GWZtIhCUqEPTgIBta6JXsGyCkLBYw==} - - '@styled-system/css@5.1.5': - resolution: {integrity: sha512-XkORZdS5kypzcBotAMPBoeckDs9aSZVkvrAlq5K3xP8IMAUek+x2O4NtwoSgkYkWWzVBu6DGdFZLR790QWGG+A==} - - '@styled-system/flexbox@5.1.2': - resolution: {integrity: sha512-6hHV52+eUk654Y1J2v77B8iLeBNtc+SA3R4necsu2VVinSD7+XY5PCCEzBFaWs42dtOEDIa2lMrgL0YBC01mDQ==} - - '@styled-system/grid@5.1.2': - resolution: {integrity: sha512-K3YiV1KyHHzgdNuNlaw8oW2ktMuGga99o1e/NAfTEi5Zsa7JXxzwEnVSDSBdJC+z6R8WYTCYRQC6bkVFcvdTeg==} - - '@styled-system/layout@5.1.2': - resolution: {integrity: sha512-wUhkMBqSeacPFhoE9S6UF3fsMEKFv91gF4AdDWp0Aym1yeMPpqz9l9qS/6vjSsDPF7zOb5cOKC3tcKKOMuDCPw==} - - '@styled-system/position@5.1.2': - resolution: {integrity: sha512-60IZfMXEOOZe3l1mCu6sj/2NAyUmES2kR9Kzp7s2D3P4qKsZWxD1Se1+wJvevb+1TP+ZMkGPEYYXRyU8M1aF5A==} - - '@styled-system/shadow@5.1.2': - resolution: {integrity: sha512-wqniqYb7XuZM7K7C0d1Euxc4eGtqEe/lvM0WjuAFsQVImiq6KGT7s7is+0bNI8O4Dwg27jyu4Lfqo/oIQXNzAg==} - - '@styled-system/space@5.1.2': - resolution: {integrity: sha512-+zzYpR8uvfhcAbaPXhH8QgDAV//flxqxSjHiS9cDFQQUSznXMQmxJegbhcdEF7/eNnJgHeIXv1jmny78kipgBA==} - - '@styled-system/typography@5.1.2': - resolution: {integrity: sha512-BxbVUnN8N7hJ4aaPOd7wEsudeT7CxarR+2hns8XCX1zp0DFfbWw4xYa/olA0oQaqx7F1hzDg+eRaGzAJbF+jOg==} - - '@styled-system/variant@5.1.5': - resolution: {integrity: sha512-Yn8hXAFoWIro8+Q5J8YJd/mP85Teiut3fsGVR9CAxwgNfIAiqlYxsk5iHU7VHJks/0KjL4ATSjmbtCDC/4l1qw==} - - '@swc/helpers@0.5.1': - resolution: {integrity: sha512-sJ902EfIzn1Fa+qYmjdQqh8tPsoxyBz+8yBKC2HKUxyezKJFwPGOn7pv4WY6QuQW//ySQi5lJjA/ZT9sNWWNTg==} - - '@szhsin/react-menu@4.2.2': - resolution: {integrity: sha512-xI1LlPlOAmyjcnBxEwhathJs3YV0U+4hbEKMbR2CXK2O9X+r7g02l5EqB9Slsjj1poVMpgQvf81vOZuCw1HUjg==} - peerDependencies: - react: '>=16.14.0' - react-dom: '>=16.14.0' - '@szmarczak/http-timer@5.0.1': resolution: {integrity: sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw==} engines: {node: '>=14.16'} @@ -2741,18 +1364,21 @@ packages: '@types/async-retry@1.4.8': resolution: {integrity: sha512-Qup/B5PWLe86yI5I3av6ePGaeQrIHNKCwbsQotD6aHQ6YkHsMUxVZkZsmx/Ry3VZQ6uysHwTjQ7666+k6UjVJA==} - '@types/body-parser@1.19.5': - resolution: {integrity: sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==} + '@types/babel__core@7.20.5': + resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} + + '@types/babel__generator@7.6.8': + resolution: {integrity: sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==} + + '@types/babel__template@7.4.4': + resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==} - '@types/connect@3.4.38': - resolution: {integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==} + '@types/babel__traverse@7.20.6': + resolution: {integrity: sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==} '@types/cross-spawn@6.0.6': resolution: {integrity: sha512-fXRhhUkG4H3TQk5dBhQ7m/JDdSNHKwR2BBia62lhwEIq9xGiQKLxd6LymNhn47SjXhsUEPmxi+PKw2OkW4LLjA==} - '@types/debounce@1.2.4': - resolution: {integrity: sha512-jBqiORIzKDOToaF63Fm//haOCHuwQuLa2202RK4MozpA6lh93eCBc+/8+wZn5OzjJt3ySdc+74SXWXB55Ewtyw==} - '@types/debug@4.1.12': resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==} @@ -2762,17 +1388,11 @@ packages: '@types/eslint@8.56.10': resolution: {integrity: sha512-Shavhk87gCtY2fhXDctcfS3e6FdxWkCx1iUZ9eEUbh7rTqlZT0/IzOkCOVt0fCjcFuZ9FPYfuezTBImfHCDBGQ==} - '@types/estree-jsx@1.0.5': - resolution: {integrity: sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==} - '@types/estree@1.0.5': resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} - '@types/express-serve-static-core@4.19.0': - resolution: {integrity: sha512-bGyep3JqPCRry1wq+O5n7oiBgGWmeIJXPjXXCo8EK0u8duZGSYar7cGqd3ML2JUsLGeB7fmc06KYo9fLGWqPvQ==} - - '@types/express@4.17.21': - resolution: {integrity: sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==} + '@types/estree@1.0.6': + resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} '@types/fined@1.1.3': resolution: {integrity: sha512-CWYnSRnun3CGbt6taXeVo2lCbuaj4mchVJ4UF/BdU5TSuIn3AmS13pGMwCsBUoehGbhZrBrpNJZSZI5EVilXww==} @@ -2789,9 +1409,6 @@ packages: '@types/http-cache-semantics@4.0.4': resolution: {integrity: sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==} - '@types/http-errors@2.0.4': - resolution: {integrity: sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==} - '@types/inquirer@8.2.5': resolution: {integrity: sha512-QXlzybid60YtAwfgG3cpykptRYUx2KomzNutMlWsQC64J/WG/gQSl+P4w7A21sGN0VIxRVava4rgnT7FQmFCdg==} @@ -2807,18 +1424,12 @@ packages: '@types/liftoff@4.0.0': resolution: {integrity: sha512-Ny/PJkO6nxWAQnaet8q/oWz15lrfwvdvBpuY4treB0CSsBO1CG0fVuNLngR3m3bepQLd+E4c3Y3DlC2okpUvPw==} - '@types/mdast@3.0.15': - resolution: {integrity: sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==} - '@types/mdast@4.0.4': resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==} '@types/mime-types@2.1.4': resolution: {integrity: sha512-lfU4b34HOri+kAY5UheuFMWPDOI+OPceBSHZKp69gEyTL/mmJ4cnU6Y/rlme3UL3GyOn6Y42hyIEw0/q8sWx5w==} - '@types/mime@1.3.5': - resolution: {integrity: sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==} - '@types/minimatch@5.1.2': resolution: {integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==} @@ -2849,32 +1460,14 @@ packages: '@types/pako@2.0.3': resolution: {integrity: sha512-bq0hMV9opAcrmE0Byyo0fY3Ew4tgOevJmQ9grUhpXQhYfyLJ1Kqg3P33JT5fdbT2AjeAjR51zqqVjAL/HMkx7Q==} - '@types/parse-json@4.0.2': - resolution: {integrity: sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==} - - '@types/parse5@6.0.3': - resolution: {integrity: sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==} - '@types/prompts@2.4.9': resolution: {integrity: sha512-qTxFi6Buiu8+50/+3DGIWLHM6QuWsEKugJnnP6iv2Mc4ncxE4A/OJkjuVOA+5X0X1S/nq5VJRa8Lu+nwcvbrKA==} - '@types/prop-types@15.7.12': - resolution: {integrity: sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==} - '@types/prop-types@15.7.13': resolution: {integrity: sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==} - '@types/prop-types@15.7.5': - resolution: {integrity: sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==} - - '@types/qrcode@1.5.5': - resolution: {integrity: sha512-CdfBi/e3Qk+3Z/fXYShipBT13OJ2fDO2Q2w5CIP5anLTLIndQG9z6P1cnm+8zCWSpm5dnxMFd/uREtb0EXuQzg==} - - '@types/qs@6.9.15': - resolution: {integrity: sha512-uXHQKES6DQKKCLh441Xv/dwxOq1TVS3JPUMlEqoEglvlhR6Mxnlew/Xq/LRVHpLyk7iK3zODe1qYHIMltO7XGg==} - - '@types/range-parser@1.2.7': - resolution: {integrity: sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==} + '@types/qrcode-svg@1.1.5': + resolution: {integrity: sha512-GjkD+HB8S1wrIsf3skHDtcYBjzNhTxocMbX+wG166xDkaVOnLiMUla7bLjbwxo6mMvqqWQNP0Dk8nkIeizSmnw==} '@types/react-dom@18.3.0': resolution: {integrity: sha512-EhwApuTmMBmXuFOikhQLIBUn6uFg81SwLMOAUgodJF14SOBOCMdU04gDoYi0WOJJHD144TL32z4yDqCW3dnkQg==} @@ -2894,21 +1487,12 @@ packages: '@types/semver@7.5.8': resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==} - '@types/send@0.17.4': - resolution: {integrity: sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==} - - '@types/serve-static@1.15.7': - resolution: {integrity: sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==} - '@types/tar@6.1.13': resolution: {integrity: sha512-IznnlmU5f4WcGTh2ltRu/Ijpmk8wiWXfF0VA4s+HPjHZgvFggk1YaIkbo5krX/zUCzWF8N/l4+W/LNxnvAJ8nw==} '@types/through@0.0.30': resolution: {integrity: sha512-FvnCJljyxhPM3gkRgWmxmDZyAQSiBQQWLI0A0VFL0K7W1oRUrPJSqNO0NvTnLkBcotdlp3lKvaT0JrnyRDkzOg==} - '@types/unist@2.0.10': - resolution: {integrity: sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==} - '@types/unist@2.0.11': resolution: {integrity: sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==} @@ -2924,8 +1508,8 @@ packages: '@types/vscode@1.71.0': resolution: {integrity: sha512-nB50bBC9H/x2CpwW9FzRRRDrTZ7G0/POttJojvN/LiVfzTGfLyQIje1L1QRMdFXK9G41k5UJN/1B9S4of7CSzA==} - '@types/wavesurfer.js@6.0.12': - resolution: {integrity: sha512-oM9hYlPIVms4uwwoaGs9d0qp7Xk7IjSGkdwgmhUymVUIIilRfjtSQvoOgv4dpKiW0UozWRSyXfQqTobi0qWyCw==} + '@types/ws@8.5.12': + resolution: {integrity: sha512-3tPRkv1EtkDpzlgyKyI8pGsGZAGPEaXeu0DOj5DI25Ja91bdAYddYHbADRYVrZMRbfW+1l5YwXVDKohDJNQxkQ==} '@typescript-eslint/eslint-plugin@7.10.0': resolution: {integrity: sha512-PzCr+a/KAef5ZawX7nbyNwBDtM1HdLIT53aSA2DDlxmxMngZ43O8SIePOeX8H5S+FHXeI6t97mTt/dDdzY4Fyw==} @@ -2992,6 +1576,12 @@ packages: resolution: {integrity: sha512-IBBb+iI2NLu4VQn3Vwldyi2QwaXt5+hTyh58ggAMoCGE6DJmPvwL3KPBWcJl1m9LYPChBLE980Jw+CS4Wokqxw==} hasBin: true + '@vitejs/plugin-react@4.3.3': + resolution: {integrity: sha512-NooDe9GpHGqNns1i8XDERg0Vsg5SSYRhRxxyTGogUdkdNt47jal+fbuYi+Yfq6pzRCKXyoPcWisfxE6RIM3GKA==} + engines: {node: ^14.18.0 || >=16.0.0} + peerDependencies: + vite: ^4.2.0 || ^5.0.0 + '@vitest/expect@1.6.0': resolution: {integrity: sha512-ixEvFVQjycy/oNgHjqsL6AZCDduC+tflRluaHIzKIsdbzkLn2U/iBnVeJwB6HsIjQBdfMR8Z0tRxKUsvFJEeWQ==} @@ -3007,22 +1597,64 @@ packages: '@vitest/utils@1.6.0': resolution: {integrity: sha512-21cPiuGMoMZwiOHa2i4LXkMkMkCGzA+MVFV70jRwHo95dL4x/ts5GZhML1QWuy7yfp3WzK3lRvZi3JnXTYqrBw==} - '@vocab/core@1.6.2': - resolution: {integrity: sha512-IkMim1fTeUuOwPG0+wUnxrjis7peha2wHv74GjNw2hR4CFs9sYsdbueAuD+Z2n4zU0rqCqbpt1o4zJeqXXZf6A==} + '@vscode/vsce-sign-alpine-arm64@2.0.2': + resolution: {integrity: sha512-E80YvqhtZCLUv3YAf9+tIbbqoinWLCO/B3j03yQPbjT3ZIHCliKZlsy1peNc4XNZ5uIb87Jn0HWx/ZbPXviuAQ==} + cpu: [arm64] + os: [alpine] - '@vocab/react@1.1.11': - resolution: {integrity: sha512-Mm/NocwNt0fMGOWv9Jas9gHz0AaK/+pBTqelfv/mbd61qg2XlA4NF1JWoUHiJXgxvVhctSrabzE5aach6mlVlg==} - peerDependencies: - react: '>=16.3.0' + '@vscode/vsce-sign-alpine-x64@2.0.2': + resolution: {integrity: sha512-n1WC15MSMvTaeJ5KjWCzo0nzjydwxLyoHiMJHu1Ov0VWTZiddasmOQHekA47tFRycnt4FsQrlkSCTdgHppn6bw==} + cpu: [x64] + os: [alpine] + + '@vscode/vsce-sign-darwin-arm64@2.0.2': + resolution: {integrity: sha512-rz8F4pMcxPj8fjKAJIfkUT8ycG9CjIp888VY/6pq6cuI2qEzQ0+b5p3xb74CJnBbSC0p2eRVoe+WgNCAxCLtzQ==} + cpu: [arm64] + os: [darwin] + + '@vscode/vsce-sign-darwin-x64@2.0.2': + resolution: {integrity: sha512-MCjPrQ5MY/QVoZ6n0D92jcRb7eYvxAujG/AH2yM6lI0BspvJQxp0o9s5oiAM9r32r9tkLpiy5s2icsbwefAQIw==} + cpu: [x64] + os: [darwin] + + '@vscode/vsce-sign-linux-arm64@2.0.2': + resolution: {integrity: sha512-Ybeu7cA6+/koxszsORXX0OJk9N0GgfHq70Wqi4vv2iJCZvBrOWwcIrxKjvFtwyDgdeQzgPheH5nhLVl5eQy7WA==} + cpu: [arm64] + os: [linux] + + '@vscode/vsce-sign-linux-arm@2.0.2': + resolution: {integrity: sha512-Fkb5jpbfhZKVw3xwR6t7WYfwKZktVGNXdg1m08uEx1anO0oUPUkoQRsNm4QniL3hmfw0ijg00YA6TrxCRkPVOQ==} + cpu: [arm] + os: [linux] - '@vocab/types@1.3.6': - resolution: {integrity: sha512-fYiGiVfrwcNwBEWAxo5Lwgl4R7YfQrk81DDwTfB0fsmc9WwH9b/ePoYjReNOLa26BIUZ5f7DAUKV/7Jkick9Hw==} + '@vscode/vsce-sign-linux-x64@2.0.2': + resolution: {integrity: sha512-NsPPFVtLaTlVJKOiTnO8Cl78LZNWy0Q8iAg+LlBiCDEgC12Gt4WXOSs2pmcIjDYzj2kY4NwdeN1mBTaujYZaPg==} + cpu: [x64] + os: [linux] + + '@vscode/vsce-sign-win32-arm64@2.0.2': + resolution: {integrity: sha512-wPs848ymZ3Ny+Y1Qlyi7mcT6VSigG89FWQnp2qRYCyMhdJxOpA4lDwxzlpL8fG6xC8GjQjGDkwbkWUcCobvksQ==} + cpu: [arm64] + os: [win32] + + '@vscode/vsce-sign-win32-x64@2.0.2': + resolution: {integrity: sha512-pAiRN6qSAhDM5SVOIxgx+2xnoVUePHbRNC7OD2aOR3WltTKxxF25OfpK8h8UQ7A0BuRkSgREbB59DBlFk4iAeg==} + cpu: [x64] + os: [win32] + + '@vscode/vsce-sign@2.0.5': + resolution: {integrity: sha512-GfYWrsT/vypTMDMgWDm75iDmAOMe7F71sZECJ+Ws6/xyIfmB3ELVnVN+LwMFAvmXY+e6eWhR2EzNGF/zAhWY3Q==} '@vscode/vsce@2.26.1': resolution: {integrity: sha512-QOG6Ht7V93nhwcBxPWcG33UK0qDGEoJdg0xtVeaTN27W6PGdMJUJGTPhB/sNHUIFKwvwzv/zMAHvDgMNXbcwlA==} engines: {node: '>= 16'} hasBin: true + '@vscode/vsce@3.2.1': + resolution: {integrity: sha512-AY9vBjwExakK1c0cI/3NN2Ey0EgiKLBye/fxl/ue+o4q6RZ7N+xzd1jAD6eI6eBeMVANi617+V2rxIAkDPco2Q==} + engines: {node: '>= 20'} + hasBin: true + '@webassemblyjs/ast@1.12.1': resolution: {integrity: sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==} @@ -3199,10 +1831,21 @@ packages: resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} engines: {node: '>=12'} + anymatch@2.0.0: + resolution: {integrity: sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==} + anymatch@3.1.3: resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} engines: {node: '>= 8'} + apache-crypt@1.2.6: + resolution: {integrity: sha512-072WetlM4blL8PREJVeY+WHiUh1R5VNt2HfceGS8aKqttPHcmqE5pkKuXPz/ULmJOFkc8Hw3kfKl6vy7Qka6DA==} + engines: {node: '>=8'} + + apache-md5@1.1.8: + resolution: {integrity: sha512-FCAJojipPn0bXjuEpjOOOMN8FZDkxfWWp4JGN9mifU2IhxvKyXZYqpzPHdnTSUpmPDy+tsslB6Z1g+Vg6nVbYA==} + engines: {node: '>=8'} + archiver-utils@5.0.2: resolution: {integrity: sha512-wuLJMmIBQYCsGZgYLTy5FIB2pF6Lfb6cXMSF8Qywwk3t20zWnAi7zLcQFdKQmIB8wyZpY5ER38x08GbwtR2cLA==} engines: {node: '>= 14'} @@ -3220,6 +1863,18 @@ packages: argparse@2.0.1: resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + arr-diff@4.0.0: + resolution: {integrity: sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==} + engines: {node: '>=0.10.0'} + + arr-flatten@1.1.0: + resolution: {integrity: sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==} + engines: {node: '>=0.10.0'} + + arr-union@3.1.0: + resolution: {integrity: sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==} + engines: {node: '>=0.10.0'} + array-buffer-byte-length@1.0.1: resolution: {integrity: sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==} engines: {node: '>= 0.4'} @@ -3228,9 +1883,6 @@ packages: resolution: {integrity: sha512-zHjL5SZa68hkKHBFBK6DJCTtr9sfTCPCaph/L7tMSLcTFgy+zX7E+6q5UArbtOtMBCtxdICpfTCspRse+ywyXA==} engines: {node: '>=0.10.0'} - array-flatten@1.1.1: - resolution: {integrity: sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==} - array-slice@1.1.0: resolution: {integrity: sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==} engines: {node: '>=0.10.0'} @@ -3239,6 +1891,10 @@ packages: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} + array-unique@0.3.2: + resolution: {integrity: sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==} + engines: {node: '>=0.10.0'} + array.prototype.flat@1.3.2: resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==} engines: {node: '>= 0.4'} @@ -3260,6 +1916,13 @@ packages: assertion-error@1.1.0: resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} + assign-symbols@1.0.0: + resolution: {integrity: sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==} + engines: {node: '>=0.10.0'} + + async-each@1.0.6: + resolution: {integrity: sha512-c646jH1avxr+aVpndVMeAfYw7wAa6idufrlN3LPA4PmKS0QEGp6PIC9nwz0WQkkvBGAMEki3pFdtxaF39J9vvg==} + async-retry@1.3.3: resolution: {integrity: sha512-wfr/jstw9xNi/0teMHrRW7dsz3Lt5ARhYNZ2ewpadnhaIp5mbALhOAP+EAdsC7t4Z6wqsDVv9+W6gm1Dk9mEyw==} @@ -3269,6 +1932,11 @@ packages: asynckit@0.4.0: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} + atob@2.1.2: + resolution: {integrity: sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==} + engines: {node: '>= 4.5.0'} + hasBin: true + available-typed-arrays@1.0.5: resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} engines: {node: '>= 0.4'} @@ -3283,13 +1951,6 @@ packages: b4a@1.6.6: resolution: {integrity: sha512-5Tk1HLk6b6ctmjIkAcU/Ujv/1WqiDl0F0JdRCR80VsOcUlHcu7pWeWRlOqQLHfDEsVx9YH/aif5AG4ehoCtTmg==} - babel-plugin-macros@3.1.0: - resolution: {integrity: sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==} - engines: {node: '>=10', npm: '>=6'} - - bail@1.0.5: - resolution: {integrity: sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==} - bail@2.0.2: resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==} @@ -3302,6 +1963,20 @@ packages: base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} + base@0.11.2: + resolution: {integrity: sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==} + engines: {node: '>=0.10.0'} + + basic-auth@2.0.1: + resolution: {integrity: sha512-NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg==} + engines: {node: '>= 0.8'} + + batch@0.6.1: + resolution: {integrity: sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==} + + bcryptjs@2.4.3: + resolution: {integrity: sha512-V/Hy/X9Vt7f3BbPJEi8BdVFMByHi+jNXrYkW3huaybV/kQ0KJg0Y6PkEMbn+zeT+i+SiKZ/HMqJGIIt4LZDqNQ==} + better-path-resolve@1.0.0: resolution: {integrity: sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g==} engines: {node: '>=4'} @@ -3309,10 +1984,17 @@ packages: big.js@5.2.2: resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==} + binary-extensions@1.13.1: + resolution: {integrity: sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==} + engines: {node: '>=0.10.0'} + binary-extensions@2.3.0: resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} engines: {node: '>=8'} + bindings@1.5.0: + resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==} + bl@4.1.0: resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} @@ -3325,10 +2007,6 @@ packages: bn.js@5.2.1: resolution: {integrity: sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==} - body-parser@1.20.3: - resolution: {integrity: sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==} - engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} - boolbase@1.0.0: resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} @@ -3338,6 +2016,10 @@ packages: brace-expansion@2.0.1: resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} + braces@2.3.2: + resolution: {integrity: sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==} + engines: {node: '>=0.10.0'} + braces@3.0.2: resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} engines: {node: '>=8'} @@ -3402,18 +2084,14 @@ packages: builtin-status-codes@3.0.0: resolution: {integrity: sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==} - busboy@1.6.0: - resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} - engines: {node: '>=10.16.0'} - - bytes@3.1.2: - resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} - engines: {node: '>= 0.8'} - cac@6.7.14: resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} engines: {node: '>=8'} + cache-base@1.0.1: + resolution: {integrity: sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==} + engines: {node: '>=0.10.0'} + cacheable-lookup@7.0.0: resolution: {integrity: sha512-+qJyx4xiKra8mZrcwhjMRMUhD5NR1R8esPkzIYxX96JiecFoxAXFuz/GpR3+ev4PE1WamHip78wV0vcmPQtp8w==} engines: {node: '>=14.16'} @@ -3444,9 +2122,6 @@ packages: resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==} engines: {node: '>=6'} - caniuse-lite@1.0.30001502: - resolution: {integrity: sha512-AZ+9tFXw1sS0o0jcpJQIXvFTOB/xGiQ4OQ2t98QX3NDn2EZTSRBC801gxrsGgViuq2ak/NLkNgSNEPtCr5lfKg==} - caniuse-lite@1.0.30001620: resolution: {integrity: sha512-WJvYsOjd1/BYUY6SNGUosK9DUidBPDTnOARHp3fSmFO1ekdxaY6nKRttEVrfMmYi80ctS0kz1wiWmm14fVc3ew==} @@ -3456,9 +2131,6 @@ packages: capital-case@1.0.4: resolution: {integrity: sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A==} - ccount@1.1.0: - resolution: {integrity: sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==} - ccount@2.0.1: resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} @@ -3488,21 +2160,12 @@ packages: character-entities-html4@2.1.0: resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==} - character-entities-legacy@1.1.4: - resolution: {integrity: sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==} - character-entities-legacy@3.0.0: resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==} - character-entities@1.2.4: - resolution: {integrity: sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==} - character-entities@2.0.2: resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==} - character-reference-invalid@1.1.4: - resolution: {integrity: sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==} - character-reference-invalid@2.0.1: resolution: {integrity: sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==} @@ -3527,6 +2190,9 @@ packages: chevrotain@11.0.3: resolution: {integrity: sha512-ci2iJH6LeIkvP9eJW6gpueU8cnZhv85ELY8w8WiFtNjMHA5ad6pQLaJo9mEly/9qUyCpvqX8/POVUTf18/HFdw==} + chokidar@2.1.8: + resolution: {integrity: sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==} + chokidar@3.6.0: resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} engines: {node: '>= 8.10.0'} @@ -3556,8 +2222,9 @@ packages: cipher-base@1.0.4: resolution: {integrity: sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==} - classnames@2.5.1: - resolution: {integrity: sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==} + class-utils@0.3.6: + resolution: {integrity: sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==} + engines: {node: '>=0.10.0'} clean-stack@2.2.0: resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} @@ -3583,9 +2250,6 @@ packages: resolution: {integrity: sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==} engines: {node: '>= 10'} - client-only@0.0.1: - resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} - cliui@6.0.0: resolution: {integrity: sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==} @@ -3601,14 +2265,14 @@ packages: resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==} engines: {node: '>=0.8'} - clsx@1.2.1: - resolution: {integrity: sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==} - engines: {node: '>=6'} - cockatiel@3.1.3: resolution: {integrity: sha512-xC759TpZ69d7HhfDp8m2WkRwEUiCkxY8Ee2OQH/3H6zmy2D/5Sm+zSTbPRa+V2QyjDtpMvjOIAOVjA2gp6N1kQ==} engines: {node: '>=16'} + collection-visit@1.0.0: + resolution: {integrity: sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==} + engines: {node: '>=0.10.0'} + color-convert@1.9.3: resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} @@ -3625,13 +2289,14 @@ packages: colorette@2.0.20: resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} + colors@1.4.0: + resolution: {integrity: sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==} + engines: {node: '>=0.1.90'} + combined-stream@1.0.8: resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} engines: {node: '>= 0.8'} - comma-separated-tokens@1.0.8: - resolution: {integrity: sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==} - comma-separated-tokens@2.0.3: resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} @@ -3658,6 +2323,9 @@ packages: resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==} engines: {node: '>= 12'} + component-emitter@1.3.1: + resolution: {integrity: sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ==} + compress-commons@6.0.2: resolution: {integrity: sha512-6FqVXeETqWPoGcfzrXb37E50NP0LXT8kAMu5ooZayhWWdgEY4lBEEcbQNXtkuKQsGduxiIcI4gOTsxTmuq/bSg==} engines: {node: '>= 14'} @@ -3671,6 +2339,10 @@ packages: confbox@0.1.8: resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==} + connect@3.7.0: + resolution: {integrity: sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==} + engines: {node: '>= 0.10.0'} + console-browserify@1.2.0: resolution: {integrity: sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==} @@ -3680,26 +2352,12 @@ packages: constants-browserify@1.0.0: resolution: {integrity: sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==} - content-disposition@0.5.4: - resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==} - engines: {node: '>= 0.6'} - - content-type@1.0.5: - resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==} - engines: {node: '>= 0.6'} - - convert-source-map@1.9.0: - resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} - convert-source-map@2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - cookie-signature@1.0.6: - resolution: {integrity: sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==} - - cookie@0.6.0: - resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==} - engines: {node: '>= 0.6'} + copy-descriptor@0.1.1: + resolution: {integrity: sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==} + engines: {node: '>=0.10.0'} copy-file@11.0.0: resolution: {integrity: sha512-mFsNh/DIANLqFt5VHZoGirdg7bK5+oTWlhnGu6tgRhzBlnEKWaPX2xrFaLltii/6rmhqFMJqffUgknuRdpYlHw==} @@ -3714,16 +2372,16 @@ packages: core-util-is@1.0.3: resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} + cors@2.8.5: + resolution: {integrity: sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==} + engines: {node: '>= 0.10'} + cose-base@1.0.3: resolution: {integrity: sha512-s9whTXInMSgAp/NVXVNuVxVKzGH2qck3aQlVHxDCdAEPgtMKwc4Wq6/QKhgdEdgbLSi9rBTAcPoRa6JpiG4ksg==} cose-base@2.2.0: resolution: {integrity: sha512-AzlgcsCbUMymkADOJtQm3wO9S3ltPfYOFD5033keQn9NJzIbtnZj+UdBJe7DYml/8TdbtHJW3j58SOnKhWY/5g==} - cosmiconfig@7.1.0: - resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==} - engines: {node: '>=10'} - cpy@11.0.1: resolution: {integrity: sha512-VIvf1QNOHnIZ5QT8zWxNJq+YYIpbFhgeMwnVngX+AhhUQd3Rns3x6gcvb0fGpNxZQ0q629mX6+GvDtvbO/Hutg==} engines: {node: '>=18'} @@ -3749,9 +2407,6 @@ packages: create-require@1.1.1: resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} - crelt@1.0.5: - resolution: {integrity: sha512-+BO9wPPi+DWTDcNYhr/W90myha8ptzftZT+LwcmUbbok0rcP/fequmFYCw8NMoH7pkAZQzU78b3kYrlua5a9eA==} - cross-env@7.0.3: resolution: {integrity: sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==} engines: {node: '>=10.14', npm: '>=6', yarn: '>=1'} @@ -4019,9 +2674,17 @@ packages: resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==} engines: {node: '>=0.10.0'} + decircular@1.0.0: + resolution: {integrity: sha512-YhCtYW0jQs9+gzL2vDLxanRhMHeKa55kw5z2oheI6D+MQA7KafrqtiGKhhpKCLZQurm2a9h0LkP9T5z5gy+A0A==} + engines: {node: '>=18'} + decode-named-character-reference@1.0.2: resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==} + decode-uri-component@0.2.2: + resolution: {integrity: sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==} + engines: {node: '>=0.10'} + decompress-response@6.0.0: resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} engines: {node: '>=10'} @@ -4060,6 +2723,18 @@ packages: resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} engines: {node: '>= 0.4'} + define-property@0.2.5: + resolution: {integrity: sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==} + engines: {node: '>=0.10.0'} + + define-property@1.0.0: + resolution: {integrity: sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==} + engines: {node: '>=0.10.0'} + + define-property@2.0.2: + resolution: {integrity: sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==} + engines: {node: '>=0.10.0'} + del@6.1.1: resolution: {integrity: sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==} engines: {node: '>=10'} @@ -4071,6 +2746,10 @@ packages: resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} engines: {node: '>=0.4.0'} + depd@1.1.2: + resolution: {integrity: sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==} + engines: {node: '>= 0.6'} + depd@2.0.0: resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} engines: {node: '>= 0.8'} @@ -4109,16 +2788,9 @@ packages: resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==} engines: {node: '>=0.3.1'} - diff@5.1.0: - resolution: {integrity: sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==} - engines: {node: '>=0.3.1'} - diffie-hellman@5.0.3: resolution: {integrity: sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==} - dijkstrajs@1.0.3: - resolution: {integrity: sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA==} - dir-glob@3.0.1: resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} engines: {node: '>=8'} @@ -4338,8 +3010,8 @@ packages: resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} engines: {node: '>=4.0'} - estree-util-is-identifier-name@3.0.0: - resolution: {integrity: sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==} + estree-walker@2.0.2: + resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} estree-walker@3.0.3: resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} @@ -4352,6 +3024,9 @@ packages: resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} engines: {node: '>= 0.6'} + event-stream@3.3.4: + resolution: {integrity: sha512-QHpkERcGsR0T7Qm3HNJSyXKEEj8AHNxkY3PK8TS2KJvQ7NiSHe3DDpwVKKtoYprL/AreyzFBeIkBIWChAqn60g==} + event-target-shim@5.0.1: resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==} engines: {node: '>=6'} @@ -4371,8 +3046,9 @@ packages: resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} engines: {node: '>=16.17'} - exenv@1.2.2: - resolution: {integrity: sha512-Z+ktTxTwv9ILfgKCk32OX3n/doe+OcLTRtqK9pcL+JsP3J1/VW8Uvl4ZjLlKqeW4rzK4oesDOGMEMRIZqtP4Iw==} + expand-brackets@2.1.4: + resolution: {integrity: sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==} + engines: {node: '>=0.10.0'} expand-template@2.0.3: resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==} @@ -4382,17 +3058,14 @@ packages: resolution: {integrity: sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw==} engines: {node: '>=0.10.0'} - express-serve-static-core@0.1.1: - resolution: {integrity: sha512-phQFPo1vVwBLOjDq+EspUY6PpWZIs/s62Lvu6QuReViQ9j9ANBnMqPBRwdxs3zxNmpMJ9KBKrmMqCjMwHnGRyQ==} - - express@4.21.0: - resolution: {integrity: sha512-VqcNGcj/Id5ZT1LZ/cfihi3ttTn+NJmkli2eZADigjq29qTlWi/hAQ43t/VLPq8+UX06FCEx3ByOYet6ZFblng==} - engines: {node: '>= 0.10.0'} - extend-shallow@2.0.1: resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==} engines: {node: '>=0.10.0'} + extend-shallow@3.0.2: + resolution: {integrity: sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==} + engines: {node: '>=0.10.0'} + extend@3.0.2: resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} @@ -4403,6 +3076,10 @@ packages: resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==} engines: {node: '>=4'} + extglob@2.0.4: + resolution: {integrity: sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==} + engines: {node: '>=0.10.0'} + fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} @@ -4423,14 +3100,12 @@ packages: resolution: {integrity: sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==} engines: {node: '>= 4.9.1'} - fastest-validator@1.18.0: - resolution: {integrity: sha512-3v6UJF1U/b56GqzDZqEtgPi2g261eGI9zQWDUrmOVKHiAktFIsHklp4XViX+a4yF7S5JjPm4KKmkgCsaara03g==} - fastq@1.15.0: resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==} - fault@1.0.4: - resolution: {integrity: sha512-CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA==} + faye-websocket@0.11.4: + resolution: {integrity: sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==} + engines: {node: '>=0.8.0'} fd-slicer@1.1.0: resolution: {integrity: sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==} @@ -4449,17 +3124,21 @@ packages: peerDependencies: webpack: ^4.0.0 || ^5.0.0 + file-uri-to-path@1.0.0: + resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==} + + fill-range@4.0.0: + resolution: {integrity: sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==} + engines: {node: '>=0.10.0'} + fill-range@7.0.1: resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} engines: {node: '>=8'} - finalhandler@1.3.1: - resolution: {integrity: sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==} + finalhandler@1.1.2: + resolution: {integrity: sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==} engines: {node: '>= 0.8'} - find-root@1.1.0: - resolution: {integrity: sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==} - find-up@4.1.0: resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} engines: {node: '>=8'} @@ -4530,18 +3209,17 @@ packages: resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} engines: {node: '>= 6'} - format@0.2.2: - resolution: {integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==} - engines: {node: '>=0.4.x'} - - forwarded@0.2.0: - resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==} - engines: {node: '>= 0.6'} + fragment-cache@0.2.1: + resolution: {integrity: sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==} + engines: {node: '>=0.10.0'} fresh@0.5.2: resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==} engines: {node: '>= 0.6'} + from@0.1.7: + resolution: {integrity: sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==} + fs-constants@1.0.0: resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} @@ -4560,6 +3238,12 @@ packages: fs.realpath@1.0.0: resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + fsevents@1.2.13: + resolution: {integrity: sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==} + engines: {node: '>= 4.0'} + os: [darwin] + deprecated: Upgrade to fsevents v2 to mitigate potential security issues + fsevents@2.3.3: resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} @@ -4619,9 +3303,16 @@ packages: resolution: {integrity: sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==} engines: {node: '>= 0.4'} + get-value@2.0.6: + resolution: {integrity: sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==} + engines: {node: '>=0.10.0'} + github-from-package@0.0.0: resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==} + glob-parent@3.1.0: + resolution: {integrity: sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==} + glob-parent@5.1.2: resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} engines: {node: '>= 6'} @@ -4638,8 +3329,14 @@ packages: engines: {node: '>=16 || 14 >=14.18'} hasBin: true + glob@11.0.0: + resolution: {integrity: sha512-9UiX/Bl6J2yaBbxKoEBRm4Cipxgok8kQYcOPEhScPwebu2I0HoQOuYdIO6S3hLuWoZgpDpwQZMzTFxgpkyT76g==} + engines: {node: 20 || >=22} + hasBin: true + glob@7.2.3: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + deprecated: Glob versions prior to v9 are no longer supported global-modules@1.0.0: resolution: {integrity: sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==} @@ -4701,10 +3398,6 @@ packages: resolution: {integrity: sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==} engines: {node: '>=6.0'} - gzip-size@6.0.0: - resolution: {integrity: sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==} - engines: {node: '>=10'} - hachure-fill@0.5.2: resolution: {integrity: sha512-3GKBOn+m2LX9iq+JC1064cSFprJY4jL1jCXTcpnfER5HYE2l/4EfWSGzkPa/ZDBmYI0ZOEj5VHV/eKnPGkHuOg==} @@ -4754,6 +3447,22 @@ packages: resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} engines: {node: '>= 0.4'} + has-value@0.3.1: + resolution: {integrity: sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==} + engines: {node: '>=0.10.0'} + + has-value@1.0.0: + resolution: {integrity: sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==} + engines: {node: '>=0.10.0'} + + has-values@0.1.4: + resolution: {integrity: sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==} + engines: {node: '>=0.10.0'} + + has-values@1.0.0: + resolution: {integrity: sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==} + engines: {node: '>=0.10.0'} + has@1.0.3: resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} engines: {node: '>= 0.4.0'} @@ -4773,6 +3482,12 @@ packages: resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} engines: {node: '>= 0.4'} + hast-util-embedded@3.0.0: + resolution: {integrity: sha512-naH8sld4Pe2ep03qqULEtvYr7EjrLK2QHY8KJR6RJkTUjPGObe1vnx585uzem2hGra+s1q08DZZpfgDVYRbaXA==} + + hast-util-format@1.1.0: + resolution: {integrity: sha512-yY1UDz6bC9rDvCWHpx12aIBGRG7krurX0p0Fm6pT547LwDIZZiNr8a+IHDogorAdreULSEzP82Nlv5SZkHZcjA==} + hast-util-from-dom@5.0.0: resolution: {integrity: sha512-d6235voAp/XR3Hh5uy7aGLbM3S4KamdW0WEgOaU1YoewnuYw4HXb5eRtv9g65m/RFGEfUY1Mw4UqCc5Y8L4Stg==} @@ -4782,17 +3497,20 @@ packages: hast-util-from-html@2.0.3: resolution: {integrity: sha512-CUSRHXyKjzHov8yKsQjGOElXy/3EKpyX56ELnkHH34vDVw1N1XSQ1ZcAvTyAPtGqLTuKP/uxM+aLkSPqF/EtMw==} - hast-util-from-parse5@7.1.2: - resolution: {integrity: sha512-Nz7FfPBuljzsN3tCQ4kCBKqdNhQE2l0Tn+X1ubgKBPRoiDIu1mL08Cfw4k7q71+Duyaw7DXDN+VTAp4Vh3oCOw==} - hast-util-from-parse5@8.0.1: resolution: {integrity: sha512-Er/Iixbc7IEa7r/XLtuG52zoqn/b3Xng/w6aZQ0xGVxzhw5xUFxcRqdPzP6yFi/4HBYRaifaI5fQ1RH8n0ZeOQ==} + hast-util-has-property@3.0.0: + resolution: {integrity: sha512-MNilsvEKLFpV604hwfhVStK0usFY/QmM5zX16bo7EjnAEGofr5YyI37kzopBlZJkHD4t887i+q/C8/tr5Q94cA==} + + hast-util-is-body-ok-link@3.0.1: + resolution: {integrity: sha512-0qpnzOBLztXHbHQenVB8uNuxTnm/QBFUOmdOSsEn7GnBtyY07+ENTWVFBAnXd/zEgd9/SUG3lRY7hSIBWRgGpQ==} + hast-util-is-element@3.0.0: resolution: {integrity: sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==} - hast-util-parse-selector@2.2.5: - resolution: {integrity: sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==} + hast-util-minify-whitespace@1.0.1: + resolution: {integrity: sha512-L96fPOVpnclQE0xzdWb/D12VT5FabA7SnZOUMtL1DbXmYiHJMXZvFkIZfiMmTCNJHUeO2K9UYNXoVyfz+QHuOw==} hast-util-parse-selector@3.1.1: resolution: {integrity: sha512-jdlwBjEexy1oGz0aJ2f4GKMaVKkA9jwjr4MjAAI22E5fM/TXVZHuS5OpONtdeIkRKqAaryQ2E9xNQxijoThSZA==} @@ -4800,39 +3518,21 @@ packages: hast-util-parse-selector@4.0.0: resolution: {integrity: sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==} - hast-util-raw@7.2.3: - resolution: {integrity: sha512-RujVQfVsOrxzPOPSzZFiwofMArbQke6DJjnFfceiEbFh7S05CbPt0cYN+A5YeD3pso0JQk6O1aHBnx9+Pm2uqg==} - - hast-util-raw@9.0.3: - resolution: {integrity: sha512-ICWvVOF2fq4+7CMmtCPD5CM4QKjPbHpPotE6+8tDooV0ZuyJVUzHsrNX+O5NaRbieTf0F7FfeBOMAwi6Td0+yQ==} - - hast-util-sanitize@4.1.0: - resolution: {integrity: sha512-Hd9tU0ltknMGRDv+d6Ro/4XKzBqQnP/EZrpiTbpFYfXv/uOhWeKc+2uajcbEvAEH98VZd7eII2PiXm13RihnLw==} + hast-util-phrasing@3.0.1: + resolution: {integrity: sha512-6h60VfI3uBQUxHqTyMymMZnEbNl1XmEGtOxxKYL7stY2o601COo62AWAYBQR9lZbYXYSBoxag8UpPRXK+9fqSQ==} hast-util-to-html@9.0.3: resolution: {integrity: sha512-M17uBDzMJ9RPCqLMO92gNNUDuBSq10a25SDBI08iCCxmorf4Yy6sYHK57n9WAbRAAaU+DuR4W6GN9K4DFZesYg==} - hast-util-to-jsx-runtime@2.3.0: - resolution: {integrity: sha512-H/y0+IWPdsLLS738P8tDnrQ8Z+dj12zQQ6WC11TIM21C8WFVoIxcqWXf2H3hiTVZjF1AWqoimGwrTWecWrnmRQ==} - - hast-util-to-parse5@7.1.0: - resolution: {integrity: sha512-YNRgAJkH2Jky5ySkIqFXTQiaqcAtJyVE+D5lkN6CdtOqrnkLfGYYrEcKuHOJZlp+MwjSwuD3fZuawI+sic/RBw==} - - hast-util-to-parse5@8.0.0: - resolution: {integrity: sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==} + hast-util-to-string@3.0.1: + resolution: {integrity: sha512-XelQVTDWvqcl3axRfI0xSeoVKzyIFPwsAGSLIsKdJKQMXDYJS4WYrBNF/8J7RdhIcFI2BOHgAifggsvsxp/3+A==} hast-util-to-text@4.0.2: resolution: {integrity: sha512-KK6y/BN8lbaq654j7JgBydev7wuNMcID54lkRav1P0CaE1e47P72AWWPiGKXTJU271ooYzcvTAn/Zt0REnvc7A==} - hast-util-whitespace@2.0.1: - resolution: {integrity: sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==} - hast-util-whitespace@3.0.0: resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==} - hastscript@6.0.0: - resolution: {integrity: sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==} - hastscript@7.2.0: resolution: {integrity: sha512-TtYPq24IldU8iKoJQqvZOuhi5CyCQRAbvDOX0x1eW6rsHSxa/1i2CCiptNTotGHJ3VoHRGmqiv6/D3q113ikkw==} @@ -4842,19 +3542,9 @@ packages: header-case@2.0.4: resolution: {integrity: sha512-H/vuk5TEEVZwrR0lp2zed9OCo1uAILMlx0JEMgC26rzyJJ3N1v6XkwHHXJQdR2doSjcGPM6OKPYoJgf0plJ11Q==} - highlight.js@10.7.3: - resolution: {integrity: sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==} - - highlight.js@11.9.0: - resolution: {integrity: sha512-fJ7cW7fQGCYAkgv4CPfwFHrfd/cLS4Hau96JuJ+ZTOWhjnhoeN1ub1tFmALm/+lW5z4WCAuAV9bm05AP0mS6Gw==} - engines: {node: '>=12.0.0'} - hmac-drbg@1.0.1: resolution: {integrity: sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==} - hoist-non-react-statics@3.3.2: - resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==} - homedir-polyfill@1.0.3: resolution: {integrity: sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==} engines: {node: '>=0.10.0'} @@ -4866,22 +3556,33 @@ packages: resolution: {integrity: sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==} engines: {node: '>=10'} - html-void-elements@2.0.1: - resolution: {integrity: sha512-0quDb7s97CfemeJAnW9wC0hw78MtW7NU3hqtCD75g2vFlDLt36llsYD7uB7SUzojLMP24N5IatXf7ylGXiGG9A==} - html-void-elements@3.0.0: resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==} + html-whitespace-sensitive-tag-names@3.0.1: + resolution: {integrity: sha512-q+310vW8zmymYHALr1da4HyXUQ0zgiIwIicEfotYPWGN0OJVEN/58IJ3A4GBYcEq3LGAZqKb+ugvP0GNB9CEAA==} + htmlparser2@8.0.1: resolution: {integrity: sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA==} + http-auth@3.1.3: + resolution: {integrity: sha512-Jbx0+ejo2IOx+cRUYAGS1z6RGc6JfYUNkysZM4u4Sfk1uLlGv814F7/PIjQQAuThLdAWxb74JMGd5J8zex1VQg==} + engines: {node: '>=4.6.1'} + http-cache-semantics@4.1.1: resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==} + http-errors@1.6.3: + resolution: {integrity: sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==} + engines: {node: '>= 0.6'} + http-errors@2.0.0: resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==} engines: {node: '>= 0.8'} + http-parser-js@0.5.8: + resolution: {integrity: sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==} + http-proxy-agent@7.0.2: resolution: {integrity: sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==} engines: {node: '>= 14'} @@ -4934,15 +3635,6 @@ packages: resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==} engines: {node: '>= 4'} - immer@10.1.1: - resolution: {integrity: sha512-s2MPrmjovJcoMaHtx6K11Ra7oD05NT97w1IC5zpMkT6Atjr7H8LjaDd81iIxUYpMKSRRNMJE703M1Fhr/TctHw==} - - immer@9.0.19: - resolution: {integrity: sha512-eY+Y0qcsB4TZKwgQzLaE/lqYMlKhv5J9dyd2RhhtGhNo2njPXDqU9XPfcNfa3MIDsdtZt5KlkIsirlo4dHsWdQ==} - - immer@9.0.21: - resolution: {integrity: sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==} - immutable@4.3.6: resolution: {integrity: sha512-Ju0+lEMyzMVZarkTn/gqRpdqd5dOPaz1mCZ0SH3JV6iFw81PldE/PEB1hWVEA288HPt4WXW8O7AWxB10M+03QQ==} @@ -4972,6 +3664,10 @@ packages: inflight@1.0.6: resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} + deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. + + inherits@2.0.3: + resolution: {integrity: sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==} inherits@2.0.4: resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} @@ -4979,12 +3675,6 @@ packages: ini@1.3.8: resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} - inline-style-parser@0.1.1: - resolution: {integrity: sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==} - - inline-style-parser@0.2.3: - resolution: {integrity: sha512-qlD8YNDqyTKTyuITrDOffsl6Tdhv+UC4hcdAVuQsK4IMQ99nSgd1MIA/Q+jQYoh9r3hVUXhYh7urSRmXPkW04g==} - inquirer@8.2.5: resolution: {integrity: sha512-QAgPDQMEgrDssk1XiwwHoOGYF9BAbUcc1+j+FhEvaOt8/cKRqyLn0U5qA6F74fGhTMGxf92pOvPBeh29jQJDTQ==} engines: {node: '>=12.0.0'} @@ -5012,26 +3702,17 @@ packages: resolution: {integrity: sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ==} engines: {node: '>=10.13.0'} - intl-messageformat@10.5.14: - resolution: {integrity: sha512-IjC6sI0X7YRjjyVH9aUgdftcmZK7WXdHeil4KwbjDnRWjnVitKpAx3rr6t6di1joFp5188VqKcobOPA6mCLG/w==} - - ipaddr.js@1.9.1: - resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==} - engines: {node: '>= 0.10'} - is-absolute@1.0.0: resolution: {integrity: sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==} engines: {node: '>=0.10.0'} - is-alphabetical@1.0.4: - resolution: {integrity: sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==} + is-accessor-descriptor@1.0.1: + resolution: {integrity: sha512-YBUanLI8Yoihw923YeFUS5fs0fF2f5TSFTNiYAAzhhDscDa3lEqYuz1pDOEP5KvX94I9ey3vsqjJcLVFVU+3QA==} + engines: {node: '>= 0.10'} is-alphabetical@2.0.1: resolution: {integrity: sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==} - is-alphanumerical@1.0.4: - resolution: {integrity: sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==} - is-alphanumerical@2.0.1: resolution: {integrity: sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==} @@ -5052,6 +3733,10 @@ packages: is-bigint@1.0.4: resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} + is-binary-path@1.0.1: + resolution: {integrity: sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==} + engines: {node: '>=0.10.0'} + is-binary-path@2.1.0: resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} engines: {node: '>=8'} @@ -5060,9 +3745,8 @@ packages: resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} engines: {node: '>= 0.4'} - is-buffer@2.0.5: - resolution: {integrity: sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==} - engines: {node: '>=4'} + is-buffer@1.1.6: + resolution: {integrity: sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==} is-callable@1.2.7: resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} @@ -5078,6 +3762,10 @@ packages: is-core-module@2.13.1: resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} + is-data-descriptor@1.0.1: + resolution: {integrity: sha512-bc4NlCDiCr28U4aEsQ3Qs2491gVq4V8G7MQyws968ImqjKuYtTJXrl7Vq7jsN7Ly/C3xj5KWFrY7sHNeDkAzXw==} + engines: {node: '>= 0.4'} + is-data-view@1.0.1: resolution: {integrity: sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==} engines: {node: '>= 0.4'} @@ -5086,12 +3774,17 @@ packages: resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} engines: {node: '>= 0.4'} - is-decimal@1.0.4: - resolution: {integrity: sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==} - is-decimal@2.0.1: resolution: {integrity: sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==} + is-descriptor@0.1.7: + resolution: {integrity: sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==} + engines: {node: '>= 0.4'} + + is-descriptor@1.0.3: + resolution: {integrity: sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw==} + engines: {node: '>= 0.4'} + is-docker@2.2.1: resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} engines: {node: '>=8'} @@ -5101,6 +3794,10 @@ packages: resolution: {integrity: sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==} engines: {node: '>=0.10.0'} + is-extendable@1.0.1: + resolution: {integrity: sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==} + engines: {node: '>=0.10.0'} + is-extglob@2.1.1: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} @@ -5113,13 +3810,14 @@ packages: resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==} engines: {node: '>= 0.4'} + is-glob@3.1.0: + resolution: {integrity: sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==} + engines: {node: '>=0.10.0'} + is-glob@4.0.3: resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} engines: {node: '>=0.10.0'} - is-hexadecimal@1.0.4: - resolution: {integrity: sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==} - is-hexadecimal@2.0.1: resolution: {integrity: sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==} @@ -5147,10 +3845,18 @@ packages: resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} engines: {node: '>= 0.4'} + is-number@3.0.0: + resolution: {integrity: sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==} + engines: {node: '>=0.10.0'} + is-number@7.0.0: resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} engines: {node: '>=0.12.0'} + is-obj@3.0.0: + resolution: {integrity: sha512-IlsXEHOjtKhpN8r/tRFj2nDyTmHvcfNeu/nrRIcXE17ROeatXchkojffa1SpdqW4cr/Fj6QkEf/Gn4zf6KKvEQ==} + engines: {node: '>=12'} + is-path-cwd@2.2.0: resolution: {integrity: sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==} engines: {node: '>=6'} @@ -5241,6 +3947,10 @@ packages: resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} engines: {node: '>=0.10.0'} + is-wsl@1.1.0: + resolution: {integrity: sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==} + engines: {node: '>=4'} + is-wsl@2.2.0: resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} engines: {node: '>=8'} @@ -5258,6 +3968,10 @@ packages: isexe@2.0.0: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + isobject@2.1.0: + resolution: {integrity: sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==} + engines: {node: '>=0.10.0'} + isobject@3.0.1: resolution: {integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==} engines: {node: '>=0.10.0'} @@ -5266,6 +3980,10 @@ packages: resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==} engines: {node: '>=14'} + jackspeak@4.0.2: + resolution: {integrity: sha512-bZsjR/iRjl1Nk1UkjGpAzLNfQtzuijhn2g+pbZb98HQ1Gk8vM9hfbxeMBP+M2/UUdwj0RqGG3mlvk2MsAqwvEw==} + engines: {node: 20 || >=22} + jest-worker@27.5.1: resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==} engines: {node: '>= 10.13.0'} @@ -5358,6 +4076,14 @@ packages: khroma@2.1.0: resolution: {integrity: sha512-Ls993zuzfayK269Svk9hzpeGUKob/sIgZzyHYdjQoAdQetRKpOLj+k/QQQ/6Qi0Yz65mlROrfd+Ev+1+7dz9Kw==} + kind-of@3.2.2: + resolution: {integrity: sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==} + engines: {node: '>=0.10.0'} + + kind-of@4.0.0: + resolution: {integrity: sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==} + engines: {node: '>=0.10.0'} + kind-of@6.0.3: resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} engines: {node: '>=0.10.0'} @@ -5405,6 +4131,14 @@ packages: linkify-it@3.0.3: resolution: {integrity: sha512-ynTsyrFSdE5oZ/O9GEf00kPngmOfVwazR5GKDq6EYfhlpFug3J2zybX56a2PRRpc9P+FuSoGNAwjlbDs9jJBPQ==} + linkify-it@5.0.0: + resolution: {integrity: sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==} + + live-server@1.2.2: + resolution: {integrity: sha512-t28HXLjITRGoMSrCOv4eZ88viHaBVIjKjdI5PO92Vxlu+twbk6aE0t7dVIaz6ZWkjPilYFV6OSdMYl9ybN2B4w==} + engines: {node: '>=0.10.0'} + hasBin: true + load-json-file@4.0.0: resolution: {integrity: sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==} engines: {node: '>=4'} @@ -5484,9 +4218,6 @@ packages: resolution: {integrity: sha512-l0x2DvrW294C9uDCoQe1VSU4gf529FkSZ6leBl4TiqZH/e+0R7hSfHQBNut2mNygDgHwvYHfFLn6Oxb3VWj2rA==} engines: {node: '>=12'} - longest-streak@2.0.4: - resolution: {integrity: sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg==} - longest-streak@3.1.0: resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} @@ -5504,16 +4235,14 @@ packages: resolution: {integrity: sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - lowlight@1.20.0: - resolution: {integrity: sha512-8Ktj+prEb1RoCPkEOrPMYUN/nCggB7qAWe3a7OpMjWQkh3l2RD5wKRQ+o8Q8YuI9RG/xs95waaI/E6ym/7NsTw==} - - lowlight@3.1.0: - resolution: {integrity: sha512-CEbNVoSikAxwDMDPjXlqlFYiZLkDJHwyGu/MfOsJnF3d7f3tds5J3z8s/l9TMXhzfsJCCJEAsD78842mwmg0PQ==} - lru-cache@10.2.2: resolution: {integrity: sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==} engines: {node: 14 || >=16.14} + lru-cache@11.0.2: + resolution: {integrity: sha512-123qHRfJBmo2jXDbo/a5YOQrJoHF/GNQTLzQ5+IdK5pWpceK17yRc6ozlWd25FxvGKQbIUs91fDFkXmDHTKcyA==} + engines: {node: 20 || >=22} + lru-cache@4.1.5: resolution: {integrity: sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==} @@ -5546,12 +4275,20 @@ packages: resolution: {integrity: sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==} engines: {node: '>=8'} + map-stream@0.1.0: + resolution: {integrity: sha512-CkYQrPYZfWnu/DAmVCpTSX/xHpKZ80eKh2lAkyA6AJTef6bW+6JpbQZN5rofum7da+SyN1bi5ctTm+lTfcCW3g==} + + map-visit@1.0.0: + resolution: {integrity: sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==} + engines: {node: '>=0.10.0'} + markdown-it@12.3.2: resolution: {integrity: sha512-TchMembfxfNVpHkbtriWltGWc+m3xszaRD0CZup7GFFhzIgQqxIfn3eGj1yZpfuflzPvfkt611B2Q/Bsk1YnGg==} hasBin: true - markdown-table@2.0.0: - resolution: {integrity: sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A==} + markdown-it@14.1.0: + resolution: {integrity: sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==} + hasBin: true markdown-table@3.0.3: resolution: {integrity: sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==} @@ -5564,135 +4301,53 @@ packages: md5.js@1.3.5: resolution: {integrity: sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==} - mdast-util-definitions@4.0.0: - resolution: {integrity: sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ==} - - mdast-util-definitions@5.1.2: - resolution: {integrity: sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==} - mdast-util-directive@3.0.0: resolution: {integrity: sha512-JUpYOqKI4mM3sZcNxmF/ox04XYFFkNwr0CFlrQIkCwbvH0xzMCqkMqAde9wRd80VAhaUrwFwKm2nxretdT1h7Q==} - mdast-util-find-and-replace@1.1.1: - resolution: {integrity: sha512-9cKl33Y21lyckGzpSmEQnIDjEfeeWelN5s1kUW1LwdB0Fkuq2u+4GdqcGEygYxJE8GVqCl0741bYXHgamfWAZA==} - - mdast-util-find-and-replace@2.2.2: - resolution: {integrity: sha512-MTtdFRz/eMDHXzeK6W3dO7mXUlF82Gom4y0oOgvHhh/HXZAGvIQDUvQ0SuUx+j2tv44b8xTHOm8K/9OoRFnXKw==} - mdast-util-find-and-replace@3.0.1: resolution: {integrity: sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==} - mdast-util-from-markdown@0.8.5: - resolution: {integrity: sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==} - - mdast-util-from-markdown@1.3.1: - resolution: {integrity: sha512-4xTO/M8c82qBcnQc1tgpNtubGUW/Y1tBQ1B0i5CtSoelOLKFYlElIr3bvgREYYO5iRqbMY1YuqZng0GVOI8Qww==} - mdast-util-from-markdown@2.0.1: resolution: {integrity: sha512-aJEUyzZ6TzlsX2s5B4Of7lN7EQtAxvtradMMglCQDyaTFgse6CmtmdJ15ElnVRlCg1vpNyVtbem0PWzlNieZsA==} - mdast-util-gfm-autolink-literal@0.1.3: - resolution: {integrity: sha512-GjmLjWrXg1wqMIO9+ZsRik/s7PLwTaeCHVB7vRxUwLntZc8mzmTsLVr6HW1yLokcnhfURsn5zmSVdi3/xWWu1A==} - - mdast-util-gfm-autolink-literal@1.0.2: - resolution: {integrity: sha512-FzopkOd4xTTBeGXhXSBU0OCDDh5lUj2rd+HQqG92Ld+jL4lpUfgX2AT2OHAVP9aEeDKp7G92fuooSZcYJA3cRg==} - mdast-util-gfm-autolink-literal@2.0.0: resolution: {integrity: sha512-FyzMsduZZHSc3i0Px3PQcBT4WJY/X/RCtEJKuybiC6sjPqLv7h1yqAkmILZtuxMSsUyaLUWNp71+vQH2zqp5cg==} - mdast-util-gfm-footnote@1.0.2: - resolution: {integrity: sha512-56D19KOGbE00uKVj3sgIykpwKL179QsVFwx/DCW0u/0+URsryacI4MAdNJl0dh+u2PSsD9FtxPFbHCzJ78qJFQ==} - mdast-util-gfm-footnote@2.0.0: resolution: {integrity: sha512-5jOT2boTSVkMnQ7LTrd6n/18kqwjmuYqo7JUPe+tRCY6O7dAuTFMtTPauYYrMPpox9hlN0uOx/FL8XvEfG9/mQ==} - mdast-util-gfm-strikethrough@0.2.3: - resolution: {integrity: sha512-5OQLXpt6qdbttcDG/UxYY7Yjj3e8P7X16LzvpX8pIQPYJ/C2Z1qFGMmcw+1PZMUM3Z8wt8NRfYTvCni93mgsgA==} - - mdast-util-gfm-strikethrough@1.0.2: - resolution: {integrity: sha512-T/4DVHXcujH6jx1yqpcAYYwd+z5lAYMw4Ls6yhTfbMMtCt0PHY4gEfhW9+lKsLBtyhUGKRIzcUA2FATVqnvPDA==} - mdast-util-gfm-strikethrough@2.0.0: resolution: {integrity: sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==} - mdast-util-gfm-table@0.1.6: - resolution: {integrity: sha512-j4yDxQ66AJSBwGkbpFEp9uG/LS1tZV3P33fN1gkyRB2LoRL+RR3f76m0HPHaby6F4Z5xr9Fv1URmATlRRUIpRQ==} - - mdast-util-gfm-table@1.0.6: - resolution: {integrity: sha512-uHR+fqFq3IvB3Rd4+kzXW8dmpxUhvgCQZep6KdjsLK4O6meK5dYZEayLtIxNus1XO3gfjfcIFe8a7L0HZRGgag==} - mdast-util-gfm-table@2.0.0: resolution: {integrity: sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==} - mdast-util-gfm-task-list-item@0.1.6: - resolution: {integrity: sha512-/d51FFIfPsSmCIRNp7E6pozM9z1GYPIkSy1urQ8s/o4TC22BZ7DqfHFWiqBD23bc7J3vV1Fc9O4QIHBlfuit8A==} - - mdast-util-gfm-task-list-item@1.0.2: - resolution: {integrity: sha512-PFTA1gzfp1B1UaiJVyhJZA1rm0+Tzn690frc/L8vNX1Jop4STZgOE6bxUhnzdVSB+vm2GU1tIsuQcA9bxTQpMQ==} - mdast-util-gfm-task-list-item@2.0.0: resolution: {integrity: sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==} - mdast-util-gfm@0.1.2: - resolution: {integrity: sha512-NNkhDx/qYcuOWB7xHUGWZYVXvjPFFd6afg6/e2g+SV4r9q5XUcCbV4Wfa3DLYIiD+xAEZc6K4MGaE/m0KDcPwQ==} - - mdast-util-gfm@2.0.1: - resolution: {integrity: sha512-42yHBbfWIFisaAfV1eixlabbsa6q7vHeSPY+cg+BBjX51M8xhgMacqH9g6TftB/9+YkcI0ooV4ncfrJslzm/RQ==} - mdast-util-gfm@3.0.0: resolution: {integrity: sha512-dgQEX5Amaq+DuUqf26jJqSK9qgixgd6rYDHAv4aTBuA92cTknZlKpPfa86Z/s8Dj8xsAQpFfBmPUHWJBWqS4Bw==} mdast-util-math@3.0.0: resolution: {integrity: sha512-Tl9GBNeG/AhJnQM221bJR2HPvLOSnLE/T9cJI9tlc6zwQk2nPk/4f0cHkOdEixQPC/j8UtKDdITswvLAy1OZ1w==} - mdast-util-mdx-expression@2.0.0: - resolution: {integrity: sha512-fGCu8eWdKUKNu5mohVGkhBXCXGnOTLuFqOvGMvdikr+J1w7lDJgxThOKpwRWzzbyXAU2hhSwsmssOY4yTokluw==} - - mdast-util-mdx-jsx@3.1.2: - resolution: {integrity: sha512-eKMQDeywY2wlHc97k5eD8VC+9ASMjN8ItEZQNGwJ6E0XWKiW/Z0V5/H8pvoXUf+y+Mj0VIgeRRbujBmFn4FTyA==} - - mdast-util-mdxjs-esm@2.0.1: - resolution: {integrity: sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==} - - mdast-util-phrasing@3.0.1: - resolution: {integrity: sha512-WmI1gTXUBJo4/ZmSk79Wcb2HcjPJBzM1nlI/OUWA8yk2X9ik3ffNbBGsU+09BFmXaL1IBb9fiuvq6/KMiNycSg==} - mdast-util-phrasing@4.1.0: resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==} - mdast-util-to-hast@10.2.0: - resolution: {integrity: sha512-JoPBfJ3gBnHZ18icCwHR50orC9kNH81tiR1gs01D8Q5YpV6adHNO9nKNuFBCJQ941/32PT1a63UF/DitmS3amQ==} - - mdast-util-to-hast@12.3.0: - resolution: {integrity: sha512-pits93r8PhnIoU4Vy9bjW39M2jJ6/tdHyja9rrot9uujkN7UTU9SDnE6WNJz/IGyQk3XHX6yNNtrBH6cQzm8Hw==} - mdast-util-to-hast@13.1.0: resolution: {integrity: sha512-/e2l/6+OdGp/FB+ctrJ9Avz71AN/GRH3oi/3KAx/kMnoUsD6q0woXlDT8lLEeViVKE7oZxE7RXzvO3T8kF2/sA==} - mdast-util-to-markdown@0.6.5: - resolution: {integrity: sha512-XeV9sDE7ZlOQvs45C9UKMtfTcctcaj/pGwH8YLbMHoMOXNNCn2LsqVQOqrF1+/NU8lKDAqozme9SCXWyo9oAcQ==} - - mdast-util-to-markdown@1.5.0: - resolution: {integrity: sha512-bbv7TPv/WC49thZPg3jXuqzuvI45IL2EVAr/KxF0BSdHsU0ceFHOmwQn6evxAh1GaoK/6GQ1wp4R4oW2+LFL/A==} - mdast-util-to-markdown@2.1.0: resolution: {integrity: sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==} - mdast-util-to-string@2.0.0: - resolution: {integrity: sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==} - - mdast-util-to-string@3.2.0: - resolution: {integrity: sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==} - mdast-util-to-string@4.0.0: resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==} mdurl@1.0.1: resolution: {integrity: sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==} - media-typer@0.3.0: - resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==} - engines: {node: '>= 0.6'} + mdurl@2.0.0: + resolution: {integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==} memorystream@0.3.1: resolution: {integrity: sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==} @@ -5702,9 +4357,6 @@ packages: resolution: {integrity: sha512-3YffViIt2QWgTy6Pale5QpopX/IvU3LPL03jOTqp6pGj3VjesdO/U8CuHMKpnQr4shCNCM5fd5XFFvIIl6JBHg==} engines: {node: '>=8'} - merge-descriptors@1.0.3: - resolution: {integrity: sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==} - merge-stream@2.0.0: resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} @@ -5715,205 +4367,100 @@ packages: mermaid@11.3.0: resolution: {integrity: sha512-fFmf2gRXLtlGzug4wpIGN+rQdZ30M8IZEB1D3eZkXNqC7puhqeURBcD/9tbwXsqBO+A6Nzzo3MSSepmnw5xSeg==} - methods@1.1.2: - resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==} - engines: {node: '>= 0.6'} - - micromark-core-commonmark@1.1.0: - resolution: {integrity: sha512-BgHO1aRbolh2hcrzL2d1La37V0Aoz73ymF8rAcKnohLy93titmv62E0gP8Hrx9PKcKrqCZ1BbLGbP3bEhoXYlw==} - micromark-core-commonmark@2.0.1: resolution: {integrity: sha512-CUQyKr1e///ZODyD1U3xit6zXwy1a8q2a1S1HKtIlmgvurrEpaw/Y9y6KSIbF8P59cn/NjzHyO+Q2fAyYLQrAA==} micromark-extension-directive@3.0.2: resolution: {integrity: sha512-wjcXHgk+PPdmvR58Le9d7zQYWy+vKEU9Se44p2CrCDPiLr2FMyiT4Fyb5UFKFC66wGB3kPlgD7q3TnoqPS7SZA==} - micromark-extension-gfm-autolink-literal@0.5.7: - resolution: {integrity: sha512-ePiDGH0/lhcngCe8FtH4ARFoxKTUelMp4L7Gg2pujYD5CSMb9PbblnyL+AAMud/SNMyusbS2XDSiPIRcQoNFAw==} - - micromark-extension-gfm-autolink-literal@1.0.3: - resolution: {integrity: sha512-i3dmvU0htawfWED8aHMMAzAVp/F0Z+0bPh3YrbTPPL1v4YAlCZpy5rBO5p0LPYiZo0zFVkoYh7vDU7yQSiCMjg==} - micromark-extension-gfm-autolink-literal@2.0.0: resolution: {integrity: sha512-rTHfnpt/Q7dEAK1Y5ii0W8bhfJlVJFnJMHIPisfPK3gpVNuOP0VnRl96+YJ3RYWV/P4gFeQoGKNlT3RhuvpqAg==} - micromark-extension-gfm-footnote@1.0.4: - resolution: {integrity: sha512-E/fmPmDqLiMUP8mLJ8NbJWJ4bTw6tS+FEQS8CcuDtZpILuOb2kjLqPEeAePF1djXROHXChM/wPJw0iS4kHCcIg==} - micromark-extension-gfm-footnote@2.0.0: resolution: {integrity: sha512-6Rzu0CYRKDv3BfLAUnZsSlzx3ak6HAoI85KTiijuKIz5UxZxbUI+pD6oHgw+6UtQuiRwnGRhzMmPRv4smcz0fg==} - micromark-extension-gfm-strikethrough@0.6.5: - resolution: {integrity: sha512-PpOKlgokpQRwUesRwWEp+fHjGGkZEejj83k9gU5iXCbDG+XBA92BqnRKYJdfqfkrRcZRgGuPuXb7DaK/DmxOhw==} - - micromark-extension-gfm-strikethrough@1.0.4: - resolution: {integrity: sha512-/vjHU/lalmjZCT5xt7CcHVJGq8sYRm80z24qAKXzaHzem/xsDYb2yLL+NNVbYvmpLx3O7SYPuGL5pzusL9CLIQ==} - micromark-extension-gfm-strikethrough@2.0.0: resolution: {integrity: sha512-c3BR1ClMp5fxxmwP6AoOY2fXO9U8uFMKs4ADD66ahLTNcwzSCyRVU4k7LPV5Nxo/VJiR4TdzxRQY2v3qIUceCw==} - micromark-extension-gfm-table@0.4.3: - resolution: {integrity: sha512-hVGvESPq0fk6ALWtomcwmgLvH8ZSVpcPjzi0AjPclB9FsVRgMtGZkUcpE0zgjOCFAznKepF4z3hX8z6e3HODdA==} - - micromark-extension-gfm-table@1.0.5: - resolution: {integrity: sha512-xAZ8J1X9W9K3JTJTUL7G6wSKhp2ZYHrFk5qJgY/4B33scJzE2kpfRL6oiw/veJTbt7jiM/1rngLlOKPWr1G+vg==} - micromark-extension-gfm-table@2.0.0: resolution: {integrity: sha512-PoHlhypg1ItIucOaHmKE8fbin3vTLpDOUg8KAr8gRCF1MOZI9Nquq2i/44wFvviM4WuxJzc3demT8Y3dkfvYrw==} - micromark-extension-gfm-tagfilter@0.3.0: - resolution: {integrity: sha512-9GU0xBatryXifL//FJH+tAZ6i240xQuFrSL7mYi8f4oZSbc+NvXjkrHemeYP0+L4ZUT+Ptz3b95zhUZnMtoi/Q==} - - micromark-extension-gfm-tagfilter@1.0.1: - resolution: {integrity: sha512-Ty6psLAcAjboRa/UKUbbUcwjVAv5plxmpUTy2XC/3nJFL37eHej8jrHrRzkqcpipJliuBH30DTs7+3wqNcQUVA==} - micromark-extension-gfm-tagfilter@2.0.0: resolution: {integrity: sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==} - micromark-extension-gfm-task-list-item@0.3.3: - resolution: {integrity: sha512-0zvM5iSLKrc/NQl84pZSjGo66aTGd57C1idmlWmE87lkMcXrTxg1uXa/nXomxJytoje9trP0NDLvw4bZ/Z/XCQ==} - - micromark-extension-gfm-task-list-item@1.0.3: - resolution: {integrity: sha512-PpysK2S1Q/5VXi72IIapbi/jliaiOFzv7THH4amwXeYXLq3l1uo8/2Be0Ac1rEwK20MQEsGH2ltAZLNY2KI/0Q==} - micromark-extension-gfm-task-list-item@2.0.1: resolution: {integrity: sha512-cY5PzGcnULaN5O7T+cOzfMoHjBW7j+T9D2sucA5d/KbsBTPcYdebm9zUd9zzdgJGCwahV+/W78Z3nbulBYVbTw==} - micromark-extension-gfm@0.3.3: - resolution: {integrity: sha512-oVN4zv5/tAIA+l3GbMi7lWeYpJ14oQyJ3uEim20ktYFAcfX1x3LNlFGGlmrZHt7u9YlKExmyJdDGaTt6cMSR/A==} - - micromark-extension-gfm@2.0.1: - resolution: {integrity: sha512-p2sGjajLa0iYiGQdT0oelahRYtMWvLjy8J9LOCxzIQsllMCGLbsLW+Nc+N4vi02jcRJvedVJ68cjelKIO6bpDA==} - micromark-extension-gfm@3.0.0: resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==} micromark-extension-math@3.0.0: resolution: {integrity: sha512-iJ2Q28vBoEovLN5o3GO12CpqorQRYDPT+p4zW50tGwTfJB+iv/VnB6Ini+gqa24K97DwptMBBIvVX6Bjk49oyQ==} - micromark-factory-destination@1.1.0: - resolution: {integrity: sha512-XaNDROBgx9SgSChd69pjiGKbV+nfHGDPVYFs5dOoDd7ZnMAE+Cuu91BCpsY8RT2NP9vo/B8pds2VQNCLiu0zhg==} - micromark-factory-destination@2.0.0: resolution: {integrity: sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==} - micromark-factory-label@1.1.0: - resolution: {integrity: sha512-OLtyez4vZo/1NjxGhcpDSbHQ+m0IIGnT8BoPamh+7jVlzLJBH98zzuCoUeMxvM6WsNeh8wx8cKvqLiPHEACn0w==} - micromark-factory-label@2.0.0: resolution: {integrity: sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==} - micromark-factory-space@1.1.0: - resolution: {integrity: sha512-cRzEj7c0OL4Mw2v6nwzttyOZe8XY/Z8G0rzmWQZTBi/jjwyw/U4uqKtUORXQrR5bAZZnbTI/feRV/R7hc4jQYQ==} - micromark-factory-space@2.0.0: resolution: {integrity: sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==} - micromark-factory-title@1.1.0: - resolution: {integrity: sha512-J7n9R3vMmgjDOCY8NPw55jiyaQnH5kBdV2/UXCtZIpnHH3P6nHUKaH7XXEYuWwx/xUJcawa8plLBEjMPU24HzQ==} - micromark-factory-title@2.0.0: resolution: {integrity: sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==} - micromark-factory-whitespace@1.1.0: - resolution: {integrity: sha512-v2WlmiymVSp5oMg+1Q0N1Lxmt6pMhIHD457whWM7/GUlEks1hI9xj5w3zbc4uuMKXGisksZk8DzP2UyGbGqNsQ==} - micromark-factory-whitespace@2.0.0: resolution: {integrity: sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==} - micromark-util-character@1.2.0: - resolution: {integrity: sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==} - micromark-util-character@2.1.0: resolution: {integrity: sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==} - micromark-util-chunked@1.1.0: - resolution: {integrity: sha512-Ye01HXpkZPNcV6FiyoW2fGZDUw4Yc7vT0E9Sad83+bEDiCJ1uXu0S3mr8WLpsz3HaG3x2q0HM6CTuPdcZcluFQ==} - micromark-util-chunked@2.0.0: resolution: {integrity: sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==} - micromark-util-classify-character@1.1.0: - resolution: {integrity: sha512-SL0wLxtKSnklKSUplok1WQFoGhUdWYKggKUiqhX+Swala+BtptGCu5iPRc+xvzJ4PXE/hwM3FNXsfEVgoZsWbw==} - micromark-util-classify-character@2.0.0: resolution: {integrity: sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==} - micromark-util-combine-extensions@1.1.0: - resolution: {integrity: sha512-Q20sp4mfNf9yEqDL50WwuWZHUrCO4fEyeDCnMGmG5Pr0Cz15Uo7KBs6jq+dq0EgX4DPwwrh9m0X+zPV1ypFvUA==} - micromark-util-combine-extensions@2.0.0: resolution: {integrity: sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==} - micromark-util-decode-numeric-character-reference@1.1.0: - resolution: {integrity: sha512-m9V0ExGv0jB1OT21mrWcuf4QhP46pH1KkfWy9ZEezqHKAxkj4mPCy3nIH1rkbdMlChLHX531eOrymlwyZIf2iw==} - micromark-util-decode-numeric-character-reference@2.0.1: resolution: {integrity: sha512-bmkNc7z8Wn6kgjZmVHOX3SowGmVdhYS7yBpMnuMnPzDq/6xwVA604DuOXMZTO1lvq01g+Adfa0pE2UKGlxL1XQ==} - micromark-util-decode-string@1.1.0: - resolution: {integrity: sha512-YphLGCK8gM1tG1bd54azwyrQRjCFcmgj2S2GoJDNnh4vYtnL38JS8M4gpxzOPNyHdNEpheyWXCTnnTDY3N+NVQ==} - micromark-util-decode-string@2.0.0: resolution: {integrity: sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==} - micromark-util-encode@1.1.0: - resolution: {integrity: sha512-EuEzTWSTAj9PA5GOAs992GzNh2dGQO52UvAbtSOMvXTxv3Criqb6IOzJUBCmEqrrXSblJIJBbFFv6zPxpreiJw==} - micromark-util-encode@2.0.0: resolution: {integrity: sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==} - micromark-util-html-tag-name@1.2.0: - resolution: {integrity: sha512-VTQzcuQgFUD7yYztuQFKXT49KghjtETQ+Wv/zUjGSGBioZnkA4P1XXZPT1FHeJA6RwRXSF47yvJ1tsJdoxwO+Q==} - micromark-util-html-tag-name@2.0.0: resolution: {integrity: sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==} - micromark-util-normalize-identifier@1.1.0: - resolution: {integrity: sha512-N+w5vhqrBihhjdpM8+5Xsxy71QWqGn7HYNUvch71iV2PM7+E3uWGox1Qp90loa1ephtCxG2ftRV/Conitc6P2Q==} - micromark-util-normalize-identifier@2.0.0: resolution: {integrity: sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==} - micromark-util-resolve-all@1.1.0: - resolution: {integrity: sha512-b/G6BTMSg+bX+xVCshPTPyAu2tmA0E4X98NSR7eIbeC6ycCqCeE7wjfDIgzEbkzdEVJXRtOG4FbEm/uGbCRouA==} - micromark-util-resolve-all@2.0.0: resolution: {integrity: sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==} - micromark-util-sanitize-uri@1.2.0: - resolution: {integrity: sha512-QO4GXv0XZfWey4pYFndLUKEAktKkG5kZTdUNaTAkzbuJxn2tNBOr+QtxR2XpWaMhbImT2dPzyLrPXLlPhph34A==} - micromark-util-sanitize-uri@2.0.0: resolution: {integrity: sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==} - micromark-util-subtokenize@1.1.0: - resolution: {integrity: sha512-kUQHyzRoxvZO2PuLzMt2P/dwVsTiivCK8icYTeR+3WgbuPqfHgPPy7nFKbeqRivBvn/3N3GBiNC+JRTMSxEC7A==} - micromark-util-subtokenize@2.0.1: resolution: {integrity: sha512-jZNtiFl/1aY73yS3UGQkutD0UbhTt68qnRpw2Pifmz5wV9h8gOVsN70v+Lq/f1rKaU/W8pxRe8y8Q9FX1AOe1Q==} - micromark-util-symbol@1.1.0: - resolution: {integrity: sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==} - micromark-util-symbol@2.0.0: resolution: {integrity: sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==} - micromark-util-types@1.1.0: - resolution: {integrity: sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==} - micromark-util-types@2.0.0: resolution: {integrity: sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==} - micromark@2.11.4: - resolution: {integrity: sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==} - - micromark@3.2.0: - resolution: {integrity: sha512-uD66tJj54JLYq0De10AhWycZWGQNUvDI55xPgk2sQM5kn1JYlhbCMTtEeT27+vAhW2FBQxLlOmS3pmA7/2z4aA==} - micromark@4.0.0: resolution: {integrity: sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==} + micromatch@3.1.10: + resolution: {integrity: sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==} + engines: {node: '>=0.10.0'} + micromatch@4.0.5: resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} engines: {node: '>=8.6'} @@ -5935,6 +4482,11 @@ packages: engines: {node: '>=4'} hasBin: true + mime@4.0.4: + resolution: {integrity: sha512-v8yqInVjhXyqP6+Kw4fV3ZzeMRqEW6FotRsKXjRS5VMTNIuXsdRoAvklpoRgSqXm6o9VNH4/C0mgedko9DdLsQ==} + engines: {node: '>=16'} + hasBin: true + mimic-fn@2.1.0: resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} engines: {node: '>=6'} @@ -5961,6 +4513,10 @@ packages: minimalistic-crypto-utils@1.0.1: resolution: {integrity: sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==} + minimatch@10.0.1: + resolution: {integrity: sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==} + engines: {node: 20 || >=22} + minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} @@ -5998,10 +4554,18 @@ packages: resolution: {integrity: sha512-UZ7eQ+h8ywIRAW1hIEl2AqdwzJucU/Kp59+8kkZeSvafXhZjul247BvIJjEVFVeON6d7lM46XX1HXCduKAS8VA==} engines: {node: '>=16 || 14 >=14.17'} + minipass@7.1.2: + resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} + engines: {node: '>=16 || 14 >=14.17'} + minizlib@2.1.2: resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} engines: {node: '>= 8'} + mixin-deep@1.3.2: + resolution: {integrity: sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==} + engines: {node: '>=0.10.0'} + mixme@0.5.10: resolution: {integrity: sha512-5H76ANWinB1H3twpJ6JY8uvAtpmFvHNArpilJAjXRKXSDDLPIMoZArw5SH0q9z+lLs8IrMw7Q2VWpWimFKFT1Q==} engines: {node: '>= 8.0.0'} @@ -6020,14 +4584,14 @@ packages: mlly@1.7.2: resolution: {integrity: sha512-tN3dvVHYVz4DhSXinXIk7u9syPYaJvio118uomkovAtWBT+RdbP6Lfh/5Lvo519YMmwBafwlh20IPTXIStscpA==} + morgan@1.10.0: + resolution: {integrity: sha512-AbegBVI4sh6El+1gNwvD5YIck7nSA36weD7xvIxG4in80j/UoK8AEGaWnnz8v1GxonMCltmlNs5ZKbGvl9b1XQ==} + engines: {node: '>= 0.8.0'} + mri@1.2.0: resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} engines: {node: '>=4'} - mrmime@1.0.1: - resolution: {integrity: sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==} - engines: {node: '>=10'} - ms@2.0.0: resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==} @@ -6040,16 +4604,18 @@ packages: mute-stream@0.0.8: resolution: {integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==} - nanoid@3.3.6: - resolution: {integrity: sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==} - engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} - hasBin: true + nan@2.22.0: + resolution: {integrity: sha512-nbajikzWTMwsW+eSsNm3QwlOs7het9gGJU5dDZzRTQGk03vyBOauxgI4VakDzE0PtsGTmXPsXTbbjVhRwR5mpw==} nanoid@3.3.7: resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true + nanomatch@1.2.13: + resolution: {integrity: sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==} + engines: {node: '>=0.10.0'} + napi-build-utils@1.0.2: resolution: {integrity: sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==} @@ -6067,24 +4633,6 @@ packages: neo-async@2.6.2: resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} - next@13.4.5: - resolution: {integrity: sha512-pfNsRLVM9e5Y1/z02VakJRfD6hMQkr24FaN2xc9GbcZDBxoOgiNAViSg5cXwlWCoMhtm4U315D7XYhgOr96Q3Q==} - engines: {node: '>=16.8.0'} - hasBin: true - peerDependencies: - '@opentelemetry/api': ^1.1.0 - fibers: '>= 3.1.0' - react: ^18.2.0 - react-dom: ^18.2.0 - sass: ^1.3.0 - peerDependenciesMeta: - '@opentelemetry/api': - optional: true - fibers: - optional: true - sass: - optional: true - nice-try@1.0.5: resolution: {integrity: sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==} @@ -6126,6 +4674,10 @@ packages: normalize-package-data@2.5.0: resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} + normalize-path@2.1.1: + resolution: {integrity: sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==} + engines: {node: '>=0.10.0'} + normalize-path@3.0.0: resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} engines: {node: '>=0.10.0'} @@ -6154,9 +4706,9 @@ packages: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} engines: {node: '>=0.10.0'} - object-hash@3.0.0: - resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} - engines: {node: '>= 6'} + object-copy@0.1.0: + resolution: {integrity: sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==} + engines: {node: '>=0.10.0'} object-inspect@1.12.3: resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==} @@ -6172,6 +4724,10 @@ packages: resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} engines: {node: '>= 0.4'} + object-visit@1.0.1: + resolution: {integrity: sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==} + engines: {node: '>=0.10.0'} + object.assign@4.1.4: resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==} engines: {node: '>= 0.4'} @@ -6192,10 +4748,18 @@ packages: resolution: {integrity: sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==} engines: {node: '>=0.10.0'} + on-finished@2.3.0: + resolution: {integrity: sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==} + engines: {node: '>= 0.8'} + on-finished@2.4.1: resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} engines: {node: '>= 0.8'} + on-headers@1.0.2: + resolution: {integrity: sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==} + engines: {node: '>= 0.8'} + once@1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} @@ -6207,13 +4771,17 @@ packages: resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} engines: {node: '>=12'} + oniguruma-to-js@0.4.3: + resolution: {integrity: sha512-X0jWUcAlxORhOqqBREgPMgnshB7ZGYszBNspP+tS9hPD3l13CdaXcHbgImoHUHlrvGx/7AvFEkTRhAGYh+jzjQ==} + open@8.4.2: resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==} engines: {node: '>=12'} - opener@1.5.2: - resolution: {integrity: sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==} - hasBin: true + opn@6.0.0: + resolution: {integrity: sha512-I9PKfIZC+e4RXZ/qr1RhgyCnGgYX0UEIlXgWnCOVACIvFgaC9rz6Won7xbdhoHrd8IIhV7YEpHjreNUNkqCGkQ==} + engines: {node: '>=8'} + deprecated: The package has been renamed to `open` optionator@0.9.4: resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} @@ -6314,6 +4882,9 @@ packages: resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} engines: {node: '>=6'} + package-json-from-dist@1.0.1: + resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} + package-manager-detector@0.2.1: resolution: {integrity: sha512-/hVW2fZvAdEas+wyKh0SnlZ2mx0NIa1+j11YaQkogEJkcMErbwchHCuo8z7lEtajZJQZ6rgZNVTWMVVd71Bjng==} @@ -6334,9 +4905,6 @@ packages: resolution: {integrity: sha512-CTM5kuWR3sx9IFamcl5ErfPl6ea/N8IYwiJ+vpeB2g+1iknv7zBl5uPwbMbRVznRVbrNY6lGuDoE5b30grmbqg==} engines: {node: '>= 0.10'} - parse-entities@2.0.0: - resolution: {integrity: sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==} - parse-entities@4.0.1: resolution: {integrity: sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==} @@ -6352,6 +4920,9 @@ packages: resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} engines: {node: '>=8'} + parse-numeric-range@1.3.0: + resolution: {integrity: sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==} + parse-passwd@1.0.0: resolution: {integrity: sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==} engines: {node: '>=0.10.0'} @@ -6362,9 +4933,6 @@ packages: parse5-htmlparser2-tree-adapter@7.0.0: resolution: {integrity: sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==} - parse5@6.0.1: - resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==} - parse5@7.1.2: resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==} @@ -6375,6 +4943,10 @@ packages: pascal-case@3.1.2: resolution: {integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==} + pascalcase@0.1.1: + resolution: {integrity: sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==} + engines: {node: '>=0.10.0'} + path-browserify@1.0.1: resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} @@ -6384,6 +4956,9 @@ packages: path-data-parser@0.1.0: resolution: {integrity: sha512-NOnmBpt5Y2RWbuv0LMzsayp3lVylAHLPUTut412ZA3l+C4uw4ZVkQbjShYCQ8TCpUMdPapr4YjUqLYD6v68j+w==} + path-dirname@1.0.2: + resolution: {integrity: sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q==} + path-equal@1.2.5: resolution: {integrity: sha512-i73IctDr3F2W+bsOWDyyVm/lqsXO47aY9nsFZUjTT/aljSbkxHxxCoyZ9UUrM8jK0JVod+An+rl48RCsvWM+9g==} @@ -6426,8 +5001,9 @@ packages: resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} engines: {node: '>=16 || 14 >=14.18'} - path-to-regexp@0.1.10: - resolution: {integrity: sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==} + path-scurry@2.0.0: + resolution: {integrity: sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==} + engines: {node: 20 || >=22} path-type@3.0.0: resolution: {integrity: sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==} @@ -6447,6 +5023,9 @@ packages: pathval@1.1.1: resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==} + pause-stream@0.0.11: + resolution: {integrity: sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A==} + pbkdf2@3.1.2: resolution: {integrity: sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==} engines: {node: '>=0.12'} @@ -6468,6 +5047,10 @@ packages: resolution: {integrity: sha512-I3EurrIQMlRc9IaAZnqRR044Phh2DXY+55o7uJ0V+hYZAcQYSuFWsc9q5PvyDHUSCe1Qxn/iBz+78s86zWnGag==} engines: {node: '>=10'} + picomatch@4.0.2: + resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} + engines: {node: '>=12'} + pidtree@0.3.1: resolution: {integrity: sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==} engines: {node: '>=0.10'} @@ -6496,19 +5079,15 @@ packages: engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} hasBin: true - pngjs@5.0.0: - resolution: {integrity: sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==} - engines: {node: '>=10.13.0'} - points-on-curve@0.2.0: resolution: {integrity: sha512-0mYKnYYe9ZcqMCWhUjItv/oHjvgEsfKvnUTg8sAtnHr3GVy7rGkXCb6d5cSyqrWqL4k81b9CPg3urd+T7aop3A==} points-on-path@0.2.1: resolution: {integrity: sha512-25ClnWWuw7JbWZcgqY/gJ4FQWadKxGWk+3kR/7kD0tCaDtPPMj7oHu2ToLaVhfpnHrZzYby2w6tUA0eOIuUg8g==} - polished@4.2.2: - resolution: {integrity: sha512-Sz2Lkdxz6F2Pgnpi9U5Ng/WdWAUZxmHrNPoVlm3aAemxoy2Qy7LGjQg4uf8qKelDAUW94F4np3iH2YPf2qefcQ==} - engines: {node: '>=10'} + posix-character-classes@0.1.1: + resolution: {integrity: sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==} + engines: {node: '>=0.10.0'} possible-typed-array-names@1.0.0: resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==} @@ -6545,14 +5124,14 @@ packages: postcss-value-parser@4.2.0: resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} - postcss@8.4.14: - resolution: {integrity: sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==} - engines: {node: ^10 || ^12 || >=14} - postcss@8.4.38: resolution: {integrity: sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==} engines: {node: ^10 || ^12 || >=14} + postcss@8.4.47: + resolution: {integrity: sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==} + engines: {node: ^10 || ^12 || >=14} + prebuild-install@7.1.1: resolution: {integrity: sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==} engines: {node: '>=10'} @@ -6577,11 +5156,6 @@ packages: engines: {node: '>=10.13.0'} hasBin: true - prettier@2.8.8: - resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==} - engines: {node: '>=10.13.0'} - hasBin: true - prettier@3.2.5: resolution: {integrity: sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==} engines: {node: '>=14'} @@ -6598,14 +5172,6 @@ packages: peerDependencies: prettier: ^3.0.0 - prismjs@1.27.0: - resolution: {integrity: sha512-t13BGPUlFDR7wRB5kQDG4jjl7XeuH6jbJGt11JHPL96qwsEHNX2+68tFXqc1/k+/jALsbSWJKUOT/hcYAZ5LkA==} - engines: {node: '>=6'} - - prismjs@1.29.0: - resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==} - engines: {node: '>=6'} - process-nextick-args@2.0.1: resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} @@ -6617,21 +5183,15 @@ packages: resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} engines: {node: '>= 6'} - prop-types@15.8.1: - resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} - - property-information@5.6.0: - resolution: {integrity: sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==} - property-information@6.2.0: resolution: {integrity: sha512-kma4U7AFCTwpqq5twzC1YVIDXSqg6qQK6JN0smOw8fgRy1OkMi0CYSzFmsy6dnqSenamAtj0CyXMUJ1Mf6oROg==} property-information@6.5.0: resolution: {integrity: sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==} - proxy-addr@2.0.7: - resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==} - engines: {node: '>= 0.10'} + proxy-middleware@0.15.0: + resolution: {integrity: sha512-EGCG8SeoIRVMhsqHQUdDigB2i7qU7fCsWASwn54+nPutYO8n4q6EiwMzyfWlC+dzRFExP+kvcnDFdBDHoZBU7Q==} + engines: {node: '>=0.8.0'} pseudomap@1.0.2: resolution: {integrity: sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==} @@ -6642,6 +5202,10 @@ packages: pump@3.0.0: resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==} + punycode.js@2.3.1: + resolution: {integrity: sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==} + engines: {node: '>=6'} + punycode@1.4.1: resolution: {integrity: sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==} @@ -6653,19 +5217,14 @@ packages: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} - qrcode@1.5.4: - resolution: {integrity: sha512-1ca71Zgiu6ORjHqFBDpnSMTR2ReToX4l1Au1VFLyVeBTFavzQnv5JxMFr3ukHVKpSrSA2MCk0lNJSykjUfz7Zg==} - engines: {node: '>=10.13.0'} + qrcode-svg@1.1.0: + resolution: {integrity: sha512-XyQCIXux1zEIA3NPb0AeR8UMYvXZzWEhgdBgBjH9gO7M48H9uoHzviNz8pXw3UzrAcxRRRn9gxHewAVK7bn9qw==} hasBin: true qs@6.12.1: resolution: {integrity: sha512-zWmv4RSuB9r2mYQw3zxQuHWeU+42aKi1wWig/j4ele4ygELZ7PEO6MM7rim9oAQH2A5MWfsAVf/jPvTPgCbvUQ==} engines: {node: '>=0.6'} - qs@6.13.0: - resolution: {integrity: sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==} - engines: {node: '>=0.6'} - querystring-es3@0.2.1: resolution: {integrity: sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==} engines: {node: '>=0.4.x'} @@ -6687,9 +5246,6 @@ packages: randombytes@2.1.0: resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} - randomcolor@0.6.2: - resolution: {integrity: sha512-Mn6TbyYpFgwFuQ8KJKqf3bqqY9O1y37/0jgSK/61PUxV4QfIMv0+K2ioq8DfOjkBslcjwSzRfIDEXfzA9aCx7A==} - randomfill@1.0.4: resolution: {integrity: sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==} @@ -6697,64 +5253,17 @@ packages: resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==} engines: {node: '>= 0.6'} - raw-body@2.5.2: - resolution: {integrity: sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==} - engines: {node: '>= 0.8'} - rc@1.2.8: - resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} - hasBin: true - - react-collapsed@4.1.2: - resolution: {integrity: sha512-vusqVnW/VbFCKJx29KNTnjJrwCbV7k3bB/FiO9/0Fj7JNoNarkU1xU7yK4FZHqPW0Q2izB7o6fYzG16zgdDNMQ==} - peerDependencies: - react: ^16.9.0 || ^17 || ^18 - react-dom: ^16.9.0 || ^17 || ^18 - - react-dom@18.3.1: - resolution: {integrity: sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==} - peerDependencies: - react: ^18.3.1 - - react-hook-form@7.53.0: - resolution: {integrity: sha512-M1n3HhqCww6S2hxLxciEXy2oISPnAzxY7gvwVPrtlczTM/1dDadXgUxDpHMrMTblDOcm/AXtXxHwZ3jpg1mqKQ==} - engines: {node: '>=18.0.0'} - peerDependencies: - react: ^16.8.0 || ^17 || ^18 || ^19 - - react-is@16.13.1: - resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} - - react-is@17.0.2: - resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} - - react-is@18.2.0: - resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==} - - react-is@18.3.1: - resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==} - - react-lifecycles-compat@3.0.4: - resolution: {integrity: sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==} - - react-markdown@6.0.3: - resolution: {integrity: sha512-kQbpWiMoBHnj9myLlmZG9T1JdoT/OEyHK7hqM6CqFT14MAkgWiWBUYijLyBmxbntaN6dCDicPcUhWhci1QYodg==} - peerDependencies: - '@types/react': '>=16' - react: '>=16' + resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} + hasBin: true - react-markdown@8.0.5: - resolution: {integrity: sha512-jGJolWWmOWAvzf+xMdB9zwStViODyyFQhNB/bwCerbBKmrTmgmA599CGiOlP58OId1IMoIRsA8UdI1Lod4zb5A==} + react-dom@18.3.1: + resolution: {integrity: sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==} peerDependencies: - '@types/react': '>=16' - react: '>=16' + react: ^18.3.1 - react-modal@3.16.1: - resolution: {integrity: sha512-VStHgI3BVcGo7OXczvnJN7yT2TWHJPDXZWyI/a0ssFNhGZWsPmB8cF0z33ewDXq4VfYMO1vXgiv/g8Nj9NDyWg==} - engines: {node: '>=8'} - peerDependencies: - react: ^0.14.0 || ^15.0.0 || ^16 || ^17 || ^18 - react-dom: ^0.14.0 || ^15.0.0 || ^16 || ^17 || ^18 + react-is@18.3.1: + resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==} react-redux@9.1.2: resolution: {integrity: sha512-0OA4dhM1W48l3uzmv6B7TXPCGmokUU4p1M44DGN2/D9a1FjVPukVjER1PcPX97jIg6aUeLq1XJo1IpfbgULn0w==} @@ -6768,32 +5277,9 @@ packages: redux: optional: true - react-syntax-highlighter@15.5.0: - resolution: {integrity: sha512-+zq2myprEnQmH5yw6Gqc8lD55QHnpKaU8TOcFeC/Lg/MQSs8UknEA0JC4nTZGFAXC2J2Hyj/ijJ7NlabyPi2gg==} - peerDependencies: - react: '>= 0.14.0' - - react-tabs@5.2.0: - resolution: {integrity: sha512-F/mf56bKOySTESKNEJVcc/KrJioA+nXIc2r8AiBU9ty08AI5ZmX3Qs67D29nq6OV04SqvB7kRumTzUspfoZ4+w==} - peerDependencies: - react: ^18.0.0 - - react-tagcloud@2.3.1: - resolution: {integrity: sha512-vWnPzx1bmR2ya7WEeqCbZGO8q/x0agOjxnXQGD9jg5OAyLqaKWAfArKypaoUVXYDyjABcZg5BDu8qLC9JRGDbg==} - peerDependencies: - react: '>=16.8.0' - - react-toastify@9.1.1: - resolution: {integrity: sha512-pkFCla1z3ve045qvjEmn2xOJOy4ZciwRXm1oMPULVkELi5aJdHCN/FHnuqXq8IwGDLB7PPk2/J6uP9D8ejuiRw==} - peerDependencies: - react: '>=16' - react-dom: '>=16' - - react-transition-state@2.1.2: - resolution: {integrity: sha512-RkDYBkj1V1ZqBA5AwQPrMt2Uagwsx6b//GVJdRDhs/t0o66w2nhQiyHyFGQEI60mgtbaIdLm8yhBRCvhA+FxEg==} - peerDependencies: - react: '>=16.8.0' - react-dom: '>=16.8.0' + react-refresh@0.14.2: + resolution: {integrity: sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==} + engines: {node: '>=0.10.0'} react@18.3.1: resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==} @@ -6837,6 +5323,10 @@ packages: readdir-glob@1.1.3: resolution: {integrity: sha512-v05I2k7xN8zXvPD9N+z/uhXPaj0sUFCe2rcWZIpBsqxfP7xXFQ0tipAd/wjj1YxWyWtUS5IDJpOG82JKt2EAVA==} + readdirp@2.2.1: + resolution: {integrity: sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==} + engines: {node: '>=0.10'} + readdirp@3.6.0: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} engines: {node: '>=8.10.0'} @@ -6853,32 +5343,19 @@ packages: resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==} engines: {node: '>=8'} - redux-persist@6.0.0: - resolution: {integrity: sha512-71LLMbUq2r02ng2We9S215LtPu3fY0KgaGE0k8WRgl6RkqxtGfl7HUozz1Dftwsb0D/5mZ8dwAaPbtnzfvbEwQ==} - peerDependencies: - react: '>=16' - redux: '>4.0.0' - peerDependenciesMeta: - react: - optional: true - - redux-thunk@3.1.0: - resolution: {integrity: sha512-NW2r5T6ksUKXCabzhL9z+h206HQw/NJkcLm1GPImRQ8IzfXwRGqjVhKJGauHirT0DAuyy6hjdnMZaRoAcy0Klw==} - peerDependencies: - redux: ^5.0.0 - redux@5.0.1: resolution: {integrity: sha512-M9/ELqF6fy8FwmkpnF0S3YKOqMyoWJ4+CS5Efg2ct3oY9daQvd/Pc71FpGZsVsbl3Cpb+IIcjBDUnnyBdQbq4w==} - refractor@3.6.0: - resolution: {integrity: sha512-MY9W41IOWxxk31o+YvFCNyNzdkc9M20NoZK5vq6jkv4I/uh2zkWcfudj0Q1fovjUQJrNewS9NMzeTtqPf+n5EA==} - - regenerator-runtime@0.13.11: - resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==} - regenerator-runtime@0.14.1: resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} + regex-not@1.0.2: + resolution: {integrity: sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==} + engines: {node: '>=0.10.0'} + + regex@4.3.3: + resolution: {integrity: sha512-r/AadFO7owAq1QJVeZ/nq9jNS1vyZt+6t1p/E59B56Rn2GCya+gr1KSyOzNL/er+r+B7phv5jG2xU2Nz1YkmJg==} + regexp.prototype.flags@1.4.3: resolution: {integrity: sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==} engines: {node: '>= 0.4'} @@ -6894,8 +5371,8 @@ packages: resolution: {integrity: sha512-ZbgR5aZEdf4UKZVBPYIgaglBmSF2Hi94s2PcIHhRGFjKYu+chjJdYfHn4rt3hB6eCKLJ8giVIIfgMa1ehDfZKA==} engines: {node: '>=0.10.0'} - rehype-highlight@7.0.0: - resolution: {integrity: sha512-QtobgRgYoQaK6p1eSr2SD1i61f7bjF2kZHAQHxeCHAuJf7ZUDMvQ7owDq9YTkmar5m5TSUol+2D3bp3KfJf/oA==} + rehype-format@5.0.1: + resolution: {integrity: sha512-zvmVru9uB0josBVpr946OR8ui7nJEdzZobwLOOqHb/OOD88W0Vk2SqLwoVOj0fM6IPCCO6TaV9CvQvJMWwukFQ==} rehype-katex@7.0.1: resolution: {integrity: sha512-OiM2wrZ/wuhKkigASodFoo8wimG3H12LWQaH8qSPVJn9apWKFSH3YOCtbKpBorTVw/eI7cuT21XBbvwEswbIOA==} @@ -6903,17 +5380,11 @@ packages: rehype-parse@9.0.1: resolution: {integrity: sha512-ksCzCD0Fgfh7trPDxr2rSylbwq9iYDkSn8TCDmEJ49ljEUBxDVCzCHv7QNzZOfODanX4+bWQ4WZqLCRWYLfhag==} - rehype-raw@6.1.1: - resolution: {integrity: sha512-d6AKtisSRtDRX4aSPsJGTfnzrX2ZkHQLE5kiUuGOeEoLpbEulFF4hj0mLPbsa+7vmguDKOVVEQdHKDSwoaIDsQ==} - - rehype-raw@7.0.0: - resolution: {integrity: sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==} - - rehype-react@8.0.0: - resolution: {integrity: sha512-vzo0YxYbB2HE+36+9HWXVdxNoNDubx63r5LBzpxBGVWM8s9mdnMdbmuJBAX6TTyuGdZjZix6qU3GcSuKCIWivw==} - - rehype-sanitize@5.0.1: - resolution: {integrity: sha512-da/jIOjq8eYt/1r9GN6GwxIR3gde7OZ+WV8pheu1tL8K0D9KxM2AyMh+UEfke+FfdM3PvGHeYJU0Td5OWa7L5A==} + rehype-pretty-code@0.14.0: + resolution: {integrity: sha512-hBeKF/Wkkf3zyUS8lal9RCUuhypDWLQc+h9UrP9Pav25FUm/AQAVh4m5gdvJxh4Oz+U+xKvdsV01p1LdvsZTiQ==} + engines: {node: '>=18'} + peerDependencies: + shiki: ^1.3.0 rehype-stringify@10.0.1: resolution: {integrity: sha512-k9ecfXHmIPuFVI61B9DeLPN0qFHfawM6RsuX48hoqlaKSF61RskNjSm1lI8PhBEM0MRdLxVVm4WmTqJQccH9mA==} @@ -6928,42 +5399,31 @@ packages: remark-gemoji@8.0.0: resolution: {integrity: sha512-/fL9rc72FYwFGtOKcT+QeQdx9Q9t5v4N6KLXSDOTEgaedzK85I9judBqB2eqz+g4b0ERMejlwSOuPK+wket6aA==} - remark-gfm@1.0.0: - resolution: {integrity: sha512-KfexHJCiqvrdBZVbQ6RopMZGwaXz6wFJEfByIuEwGf0arvITHjiKKZ1dpXujjH9KZdm1//XJQwgfnJ3lmXaDPA==} - - remark-gfm@3.0.1: - resolution: {integrity: sha512-lEFDoi2PICJyNrACFOfDD3JlLkuSbOa5Wd8EPt06HUdptv8Gn0bxYTdbU/XXQ3swAPkEaGxxPN9cbnMHvVu1Ig==} - remark-gfm@4.0.0: resolution: {integrity: sha512-U92vJgBPkbw4Zfu/IiW2oTZLSL3Zpv+uI7My2eq8JxKgqraFdU8YUGicEJCEgSbeaG+QDFqIcwwfMTOEelPxuA==} remark-math@6.0.0: resolution: {integrity: sha512-MMqgnP74Igy+S3WwnhQ7kqGlEerTETXMvJhrUzDikVZ2/uogJCb+WHUg97hK9/jcfc0dkD73s3LN8zU49cTEtA==} - remark-parse@10.0.2: - resolution: {integrity: sha512-3ydxgHa/ZQzG8LvC7jTXccARYDcRld3VfcgIIFs7bI6vbRSxJJmzgLEIIoYKyrfhaY+ujuWaf/PJiMZXoiCXgw==} - remark-parse@11.0.0: resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==} - remark-parse@9.0.0: - resolution: {integrity: sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw==} - - remark-rehype@10.1.0: - resolution: {integrity: sha512-EFmR5zppdBp0WQeDVZ/b66CWJipB2q2VLNFMabzDSGR66Z2fQii83G5gTBbgGEnEEA0QRussvrFHxk1HWGJskw==} - remark-rehype@11.1.1: resolution: {integrity: sha512-g/osARvjkBXb6Wo0XvAeXQohVta8i84ACbenPpoSsxTOQH/Ae0/RGP4WZgnMH5pMLpsj4FG7OHmcIcXxpza8eQ==} - remark-rehype@8.1.0: - resolution: {integrity: sha512-EbCu9kHgAxKmW1yEYjx3QafMyGY3q8noUbNUI5xyKbaFP89wbhDrKxyIQNukNYthzjNHZu6J7hwFg7hRm1svYA==} - remark-stringify@11.0.0: resolution: {integrity: sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==} remark-unwrap-images@4.0.0: resolution: {integrity: sha512-Ilr5ZhrhZSvnjemy1rRuxlTC0I/39YyWDRiE9d5vF079APcwdYYzwcZL8RGehlCtQCiik8hWMyo4Xhz2Fq0JhA==} + remove-trailing-separator@1.1.0: + resolution: {integrity: sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==} + + repeat-element@1.1.4: + resolution: {integrity: sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==} + engines: {node: '>=0.10.0'} + repeat-string@1.6.1: resolution: {integrity: sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==} engines: {node: '>=0.10'} @@ -6979,9 +5439,6 @@ packages: require-main-filename@2.0.0: resolution: {integrity: sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==} - reselect@5.1.0: - resolution: {integrity: sha512-aw7jcGLDpSgNDyWBQLv2cedml85qd95/iszJjN988zX1t7AVRJi19d9kto5+W7oCfQ94gyo40dVbT6g2k4/kXg==} - resolve-alpn@1.2.1: resolution: {integrity: sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==} @@ -7001,6 +5458,10 @@ packages: resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} engines: {node: '>=8'} + resolve-url@0.2.1: + resolution: {integrity: sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==} + deprecated: https://github.com/lydell/resolve-url#deprecated + resolve@1.22.1: resolution: {integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==} hasBin: true @@ -7021,6 +5482,10 @@ packages: resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + ret@0.1.15: + resolution: {integrity: sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==} + engines: {node: '>=0.12'} + retry@0.13.1: resolution: {integrity: sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==} engines: {node: '>= 4'} @@ -7031,6 +5496,7 @@ packages: rimraf@3.0.2: resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} + deprecated: Rimraf versions prior to v4 are no longer supported hasBin: true rimraf@5.0.7: @@ -7049,6 +5515,11 @@ packages: engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true + rollup@4.24.3: + resolution: {integrity: sha512-HBW896xR5HGmoksbi3JBDtmVzWiPAYqp7wip50hjQ67JbDz61nyoMPdqu1DvVW9asYb2M65Z20ZHsyJCMqMyDg==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} + hasBin: true + roughjs@4.6.6: resolution: {integrity: sha512-ZUz/69+SYpFN/g/lUlo2FXcIjRkSu3nDarreVdGGndHEBJ6cXPdKguS8JGxwj5HA5xIbVKSmLgr5b3AWxtRfvQ==} @@ -7065,10 +5536,6 @@ packages: rxjs@7.8.0: resolution: {integrity: sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==} - sade@1.8.1: - resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==} - engines: {node: '>=6'} - safe-array-concat@1.1.2: resolution: {integrity: sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==} engines: {node: '>=0.4'} @@ -7086,6 +5553,9 @@ packages: resolution: {integrity: sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==} engines: {node: '>= 0.4'} + safe-regex@1.1.0: + resolution: {integrity: sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==} + safe-stable-stringify@2.4.3: resolution: {integrity: sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==} engines: {node: '>=10'} @@ -7149,9 +5619,6 @@ packages: resolution: {integrity: sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==} engines: {node: '>=4'} - seedrandom@3.0.5: - resolution: {integrity: sha512-8OwmbklUNzwezjGInmZ+2clQmExQPvomqjL7LFqOYqtmuxRgQYqOD3mHaU+MvZn5FLUeVxVfQjwLZW/n/JFuqg==} - semver@5.7.2: resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} hasBin: true @@ -7165,9 +5632,9 @@ packages: engines: {node: '>=10'} hasBin: true - send@0.19.0: - resolution: {integrity: sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==} - engines: {node: '>= 0.8.0'} + send@1.1.0: + resolution: {integrity: sha512-v67WcEouB5GxbTWL/4NeToqcZiAWEq90N888fczVArY8A79J0L4FD7vj5hm3eUMua5EpoQ59wa/oovY6TLvRUA==} + engines: {node: '>= 18'} sentence-case@3.0.4: resolution: {integrity: sha512-8LS0JInaQMCRoQ7YUytAo/xUu5W2XnQxV2HI/6uM6U7CITS1RqPElr30V6uIqyMKM9lJGRVFy5/4CuzcixNYSg==} @@ -7175,8 +5642,8 @@ packages: serialize-javascript@6.0.2: resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==} - serve-static@1.16.2: - resolution: {integrity: sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==} + serve-index@1.9.1: + resolution: {integrity: sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==} engines: {node: '>= 0.8.0'} set-blocking@2.0.0: @@ -7190,9 +5657,16 @@ packages: resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} engines: {node: '>= 0.4'} + set-value@2.0.1: + resolution: {integrity: sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==} + engines: {node: '>=0.10.0'} + setimmediate@1.0.5: resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==} + setprototypeof@1.1.0: + resolution: {integrity: sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==} + setprototypeof@1.2.0: resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} @@ -7223,8 +5697,8 @@ packages: shell-quote@1.7.4: resolution: {integrity: sha512-8o/QEhSSRb1a5i7TFR0iM4G16Z0vYB2OQVs4G3aAFXjn3T6yEx8AZxy1PgDF7I00LZHYA3WxaSYIf5e5sAX8Rw==} - shuffle-array@1.0.1: - resolution: {integrity: sha512-0TFRU8zVQaLatWKr0/czo19VyPNgb/a3sBc1GAjVfivfzEGaS54vueNgtAu/8/pW7EM/VF5fwq9zgpLdGyRmVw==} + shiki@1.22.0: + resolution: {integrity: sha512-/t5LlhNs+UOKQCYBtl5ZsH/Vclz73GIqT2yQsCBygr8L/ppTdmpL4w3kPLoZJbMKVWtoG77Ue1feOjZfDxvMkw==} side-channel@1.0.4: resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} @@ -7249,10 +5723,6 @@ packages: simple-get@4.0.1: resolution: {integrity: sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==} - sirv@1.0.19: - resolution: {integrity: sha512-JuLThK3TnZG1TAKDwNIqNq6QA2afLOCcm+iE8D1Kj3GA40pSPsxQjjJl0J8X3tsR7T+CP1GavpzLwYkgVLWrZQ==} - engines: {node: '>= 10'} - sisteransi@1.0.5: resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} @@ -7276,13 +5746,25 @@ packages: snake-case@3.0.4: resolution: {integrity: sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==} + snapdragon-node@2.1.1: + resolution: {integrity: sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==} + engines: {node: '>=0.10.0'} + + snapdragon-util@3.0.1: + resolution: {integrity: sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==} + engines: {node: '>=0.10.0'} + + snapdragon@0.8.2: + resolution: {integrity: sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==} + engines: {node: '>=0.10.0'} + sort-keys@4.2.0: resolution: {integrity: sha512-aUYIEU/UviqPgc8mHR6IW1EGxkAXpeRETYcrzg8cLAvUPZcpAlleSXHV2mY7G12GphSH6Gzv+4MMVSSkbdteHg==} engines: {node: '>=8'} - source-map-js@1.0.2: - resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} - engines: {node: '>=0.10.0'} + sort-keys@5.1.0: + resolution: {integrity: sha512-aSbHV0DaBcr7u0PVHXzM6NbZNAtrr9sF6+Qfs9UUVG7Ll3jQ6hHi8F/xqIIcn2rvIVbr0v/2zyjSdwSV47AgLQ==} + engines: {node: '>=12'} source-map-js@1.2.0: resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==} @@ -7292,9 +5774,17 @@ packages: resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} engines: {node: '>=0.10.0'} + source-map-resolve@0.5.3: + resolution: {integrity: sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==} + deprecated: See https://github.com/lydell/source-map-resolve#deprecated + source-map-support@0.5.21: resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} + source-map-url@0.4.1: + resolution: {integrity: sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==} + deprecated: See https://github.com/lydell/source-map-url#deprecated + source-map@0.5.7: resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==} engines: {node: '>=0.10.0'} @@ -7307,9 +5797,6 @@ packages: resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==} engines: {node: '>= 8'} - space-separated-tokens@1.1.5: - resolution: {integrity: sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==} - space-separated-tokens@2.0.2: resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} @@ -7328,12 +5815,27 @@ packages: spdx-license-ids@3.0.12: resolution: {integrity: sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==} + split-string@3.1.0: + resolution: {integrity: sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==} + engines: {node: '>=0.10.0'} + + split@0.3.3: + resolution: {integrity: sha512-wD2AeVmxXRBoX44wAycgjVpMhvbwdI2aZjCkvfNcH1YqHQvJVa1duWc73OyVGJUc05fhFaTZeQ/PYsrmyH0JVA==} + sprintf-js@1.0.3: resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} stackback@0.0.2: resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} + static-extend@0.1.2: + resolution: {integrity: sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==} + engines: {node: '>=0.10.0'} + + statuses@1.5.0: + resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==} + engines: {node: '>= 0.6'} + statuses@2.0.1: resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==} engines: {node: '>= 0.8'} @@ -7348,16 +5850,15 @@ packages: stream-browserify@3.0.0: resolution: {integrity: sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==} + stream-combiner@0.0.4: + resolution: {integrity: sha512-rT00SPnTVyRsaSz5zgSPma/aHSOic5U1prhYdRy5HS2kTZviFpmDgzilbtsJsxiroqACmayynDN/9VzIbX5DOw==} + stream-http@3.2.0: resolution: {integrity: sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==} stream-transform@2.1.3: resolution: {integrity: sha512-9GHUiM5hMiCi6Y03jD2ARC1ettBXkQBoQAe7nJsPknnI0ow10aXjTnew8QtYQmLjzn974BnmWEAJgCY6ZP1DeQ==} - streamsearch@1.1.0: - resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==} - engines: {node: '>=10.0.0'} - streamx@2.16.1: resolution: {integrity: sha512-m9QYj6WygWyWa3H1YY69amr4nVgy61xfjys7xO7kviL5rfIEc2naf+ewFiOA+aEJD7y0JO3h2GoiUv4TDwEGzQ==} @@ -7455,37 +5956,6 @@ packages: peerDependencies: webpack: ^5.27.0 - style-mod@4.0.0: - resolution: {integrity: sha512-OPhtyEjyyN9x3nhPsu76f52yUGXiZcgvsrFVtvTkyGRQJ0XK+GPc6ov1z+lRpbeabka+MYEQxOYRnt5nF30aMw==} - - style-to-object@0.3.0: - resolution: {integrity: sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==} - - style-to-object@0.4.1: - resolution: {integrity: sha512-HFpbb5gr2ypci7Qw+IOhnP2zOU7e77b+rzM+wTzXzfi1PrtBCX0E7Pk4wL4iTLnhzZ+JgEGAhX81ebTg/aYjQw==} - - style-to-object@1.0.6: - resolution: {integrity: sha512-khxq+Qm3xEyZfKd/y9L3oIWQimxuc4STrQKtQn8aSDRHb8mFgpukgX1hdzfrMEW6JCjyJ8p89x+IUMVnCBI1PA==} - - styled-jsx@5.1.1: - resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==} - engines: {node: '>= 12.0.0'} - peerDependencies: - '@babel/core': '*' - babel-plugin-macros: '*' - react: '>= 16.8.0 || 17.x.x || ^18.0.0-0' - peerDependenciesMeta: - '@babel/core': - optional: true - babel-plugin-macros: - optional: true - - styled-system@5.1.5: - resolution: {integrity: sha512-7VoD0o2R3RKzOzPK0jYrVnS8iJdfkKsQJNiLRDjikOpQVqQHns/DXWaPZOH4tIKkhAT7I6wIsy9FWTWh2X3q+A==} - - stylis@4.2.0: - resolution: {integrity: sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==} - stylis@4.3.4: resolution: {integrity: sha512-osIBl6BGUmSfDkyH2mB7EFvCJntXDrLhKjHTRj/rK6xLH0yuPrHULDRQzKokSOD4VoorhtKpfcfW1GAntu8now==} @@ -7563,9 +6033,6 @@ packages: resolution: {integrity: sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==} engines: {node: '>=0.6.0'} - tiny-warning@1.0.3: - resolution: {integrity: sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==} - tinybench@2.8.0: resolution: {integrity: sha512-1/eK7zUnIklz4JUUlL+658n58XO2hHLQfSk1Zf2LKieUjxidN16eKFEoDEfjHc3ohofSSqK3X5yO6VGb6iW8Lw==} @@ -7595,18 +6062,26 @@ packages: resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} engines: {node: '>=4'} + to-object-path@0.3.0: + resolution: {integrity: sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==} + engines: {node: '>=0.10.0'} + + to-regex-range@2.1.1: + resolution: {integrity: sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==} + engines: {node: '>=0.10.0'} + to-regex-range@5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} + to-regex@3.0.2: + resolution: {integrity: sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==} + engines: {node: '>=0.10.0'} + toidentifier@1.0.1: resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==} engines: {node: '>=0.6'} - totalist@1.1.0: - resolution: {integrity: sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g==} - engines: {node: '>=6'} - tr46@0.0.3: resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} @@ -7617,9 +6092,6 @@ packages: resolution: {integrity: sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==} engines: {node: '>=8'} - trough@1.0.5: - resolution: {integrity: sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==} - trough@2.2.0: resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==} @@ -7700,10 +6172,6 @@ packages: resolution: {integrity: sha512-+suCYpfJLAe4OXS6+PPXjW3urOS4IoP9waSiLuXfLgqZODKw/aWwASvzqE886wA0kQgGy0mIWyhd87VpqIy6Xg==} engines: {node: '>=16'} - type-is@1.6.18: - resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==} - engines: {node: '>= 0.6'} - typed-array-buffer@1.0.2: resolution: {integrity: sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==} engines: {node: '>= 0.4'} @@ -7743,6 +6211,9 @@ packages: uc.micro@1.0.6: resolution: {integrity: sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==} + uc.micro@2.1.0: + resolution: {integrity: sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==} + ufo@1.5.3: resolution: {integrity: sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw==} @@ -7774,75 +6245,34 @@ packages: resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} engines: {node: '>=18'} - unified@10.1.2: - resolution: {integrity: sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==} - unified@11.0.5: resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==} - unified@9.2.2: - resolution: {integrity: sha512-Sg7j110mtefBD+qunSLO1lqOEKdrwBFBrR6Qd8f4uwkhWNlbkaqwHse6e7QvD3AP/MNoJdEDLaf8OxYyoWgorQ==} - - unist-builder@2.0.3: - resolution: {integrity: sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw==} + union-value@1.0.1: + resolution: {integrity: sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==} + engines: {node: '>=0.10.0'} unist-util-find-after@5.0.0: resolution: {integrity: sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ==} - unist-util-generated@1.1.6: - resolution: {integrity: sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg==} - - unist-util-generated@2.0.1: - resolution: {integrity: sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A==} - - unist-util-is@4.1.0: - resolution: {integrity: sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==} - - unist-util-is@5.2.1: - resolution: {integrity: sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==} - unist-util-is@6.0.0: resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==} unist-util-map@3.1.3: resolution: {integrity: sha512-4/mDauoxqZ6geK97lJ6n2kDk6JK88Vh+hWMSJqyaaP/7eqN1dDhjcjnNxKNm3YU6Sw7PVJtcFMUbnmHvYzb6Vg==} - unist-util-position@3.1.0: - resolution: {integrity: sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA==} - - unist-util-position@4.0.4: - resolution: {integrity: sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==} - unist-util-position@5.0.0: resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==} unist-util-remove-position@5.0.0: resolution: {integrity: sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==} - unist-util-stringify-position@2.0.3: - resolution: {integrity: sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==} - - unist-util-stringify-position@3.0.3: - resolution: {integrity: sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==} - unist-util-stringify-position@4.0.0: resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==} - unist-util-visit-parents@3.1.1: - resolution: {integrity: sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==} - - unist-util-visit-parents@5.1.3: - resolution: {integrity: sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==} - unist-util-visit-parents@6.0.1: resolution: {integrity: sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==} - unist-util-visit@2.0.3: - resolution: {integrity: sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==} - - unist-util-visit@4.1.2: - resolution: {integrity: sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==} - unist-util-visit@5.0.0: resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==} @@ -7850,10 +6280,21 @@ packages: resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} engines: {node: '>= 4.0.0'} + unix-crypt-td-js@1.1.4: + resolution: {integrity: sha512-8rMeVYWSIyccIJscb9NdCfZKSRBKYTeVnwmiRYT2ulE3qd1RaDQ0xQDP+rI3ccIWbhu/zuo5cgN8z73belNZgw==} + unpipe@1.0.0: resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} engines: {node: '>= 0.8'} + unset-value@1.0.0: + resolution: {integrity: sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==} + engines: {node: '>=0.10.0'} + + upath@1.2.0: + resolution: {integrity: sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==} + engines: {node: '>=4'} + update-browserslist-db@1.0.16: resolution: {integrity: sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ==} hasBin: true @@ -7878,6 +6319,10 @@ packages: uri-js@4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} + urix@0.1.0: + resolution: {integrity: sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==} + deprecated: Please see https://github.com/lydell/urix#deprecated + url-join@4.0.1: resolution: {integrity: sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA==} @@ -7889,6 +6334,10 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 + use@3.1.1: + resolution: {integrity: sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==} + engines: {node: '>=0.10.0'} + util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} @@ -7899,6 +6348,11 @@ packages: resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==} engines: {node: '>= 0.4.0'} + uuid@3.4.0: + resolution: {integrity: sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==} + deprecated: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details. + hasBin: true + uuid@8.3.2: resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==} hasBin: true @@ -7907,11 +6361,6 @@ packages: resolution: {integrity: sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==} hasBin: true - uvu@0.5.6: - resolution: {integrity: sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA==} - engines: {node: '>=8'} - hasBin: true - v8-compile-cache-lib@3.0.1: resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} @@ -7926,30 +6375,12 @@ packages: resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==} engines: {node: '>= 0.8'} - vfile-location@4.1.0: - resolution: {integrity: sha512-YF23YMyASIIJXpktBa4vIGLJ5Gs88UB/XePgqPmTa7cDA+JeO3yclbpheQYCHjVHBn/yePzrXuygIL+xbvRYHw==} - vfile-location@5.0.3: resolution: {integrity: sha512-5yXvWDEgqeiYiBe1lbxYF7UMAIm/IcopxMHrMQDq3nvKcjPKIhZklUKL+AE7J7uApI4kwe2snsK+eI6UTj9EHg==} - vfile-message@2.0.4: - resolution: {integrity: sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==} - - vfile-message@3.1.4: - resolution: {integrity: sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==} - vfile-message@4.0.2: resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==} - vfile@4.2.1: - resolution: {integrity: sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==} - - vfile@5.3.7: - resolution: {integrity: sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==} - - vfile@6.0.1: - resolution: {integrity: sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==} - vfile@6.0.3: resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} @@ -7986,6 +6417,37 @@ packages: terser: optional: true + vite@5.4.10: + resolution: {integrity: sha512-1hvaPshuPUtxeQ0hsVH3Mud0ZanOLwVTneA1EgbAM5LhaZEqyPWGRQ7BtaMvUrTDeEaC8pxtj6a6jku3x4z6SQ==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + peerDependencies: + '@types/node': ^18.0.0 || >=20.0.0 + less: '*' + lightningcss: ^1.21.0 + sass: '*' + sass-embedded: '*' + stylus: '*' + sugarss: '*' + terser: ^5.4.0 + peerDependenciesMeta: + '@types/node': + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + sass-embedded: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + vitest@1.6.0: resolution: {integrity: sha512-H5r/dN06swuFnzNFhq/dnz37bPXnq8xB2xB5JOVk8K09rUtoeNN+LHWkoQ0A/i3hvbUKKcCei9KpbxqHMLhLLA==} engines: {node: ^18.0.0 || >=20.0.0} @@ -8034,26 +6496,16 @@ packages: vscode-uri@3.0.8: resolution: {integrity: sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==} - w3c-keyname@2.2.6: - resolution: {integrity: sha512-f+fciywl1SJEniZHD6H+kUO8gOnwIr7f4ijKA6+ZvJFjeGi1r4PDLl53Ayud9O/rk64RqgoQine0feoeOU0kXg==} - walkdir@0.4.1: resolution: {integrity: sha512-3eBwRyEln6E1MSzcxcVpQIhRG8Q1jLvEqRmCZqS3dsfXEDR/AhOF4d+jHg1qvDCpYaVRZjENPQyrVxAkQqxPgQ==} engines: {node: '>=6.0.0'} - warning@4.0.3: - resolution: {integrity: sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==} - - watchpack@2.4.0: - resolution: {integrity: sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==} - engines: {node: '>=10.13.0'} - watchpack@2.4.1: resolution: {integrity: sha512-8wrBCMtVhqcXP2Sup1ctSkga6uc2Bx0IIvKyT7yTFier5AXHooSI+QyQQAtTb7+E0IUCCKyTFmXqdqgum2XWGg==} engines: {node: '>=10.13.0'} - wavesurfer.js@7.8.6: - resolution: {integrity: sha512-EDexkMwkkQBTWruhfWQRkTtvRggtKFTPuJX/oZ5wbIZEfyww9EBeLr2mtkxzA1S8TlWPx6adY5WyjOlNYNyHSg==} + wavesurfer.js@7.8.8: + resolution: {integrity: sha512-FNiJ6RCAu4TijRcwdaqlN19+Y+Hhqb7Nfo2P4LudzhNnQRMKvF3QmXd9+KHlQZrSjexeK3WbY4COsxgGJkxMag==} wcwidth@1.0.1: resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} @@ -8064,11 +6516,6 @@ packages: webidl-conversions@3.0.1: resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} - webpack-bundle-analyzer@4.7.0: - resolution: {integrity: sha512-j9b8ynpJS4K+zfO5GGwsAcQX4ZHpWV+yRiHDiL+bE0XHJ8NiPYLTNVQdlFYWxtpg9lfAQNlwJg16J9AJtFSXRg==} - engines: {node: '>= 10.13.0'} - hasBin: true - webpack-cli@5.1.4: resolution: {integrity: sha512-pIDJHIEI9LR0yxHXQ+Qh95k2EvXpWzZ5l+d+jIo+RdSm9MiHfzazIxwwni/p7+x4eJZuvG1AJwgC4TNQ7NRgsg==} engines: {node: '>=14.15.0'} @@ -8104,6 +6551,14 @@ packages: webpack-cli: optional: true + websocket-driver@0.7.4: + resolution: {integrity: sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==} + engines: {node: '>=0.8.0'} + + websocket-extensions@0.1.4: + resolution: {integrity: sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==} + engines: {node: '>=0.8.0'} + whatwg-url@5.0.0: resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} @@ -8172,12 +6627,12 @@ packages: resolution: {integrity: sha512-FdNA4RyH1L43TlvGG8qOMIfcEczwA5ij+zLXUy3Z83CjxhLvcV7/Q/8pk22wnCgYw7PJhtK+7lhO+qqyT4NdvQ==} engines: {node: '>=16.14'} - ws@7.5.9: - resolution: {integrity: sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==} - engines: {node: '>=8.3.0'} + ws@8.18.0: + resolution: {integrity: sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==} + engines: {node: '>=10.0.0'} peerDependencies: bufferutil: ^4.0.1 - utf-8-validate: ^5.0.2 + utf-8-validate: '>=5.0.2' peerDependenciesMeta: bufferutil: optional: true @@ -8212,10 +6667,6 @@ packages: yallist@4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} - yaml@1.10.2: - resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} - engines: {node: '>= 6'} - yaml@2.5.1: resolution: {integrity: sha512-bLQOjaX/ADgQ20isPJRvF0iRUHIxVhYvr53Of7wGcWlO2jvtUlH5m87DsmulFVxRpNLOnI4tB6p/oh8D7kpn9Q==} engines: {node: '>= 14'} @@ -8259,18 +6710,6 @@ packages: resolution: {integrity: sha512-zK7YHHz4ZXpW89AHXUPbQVGKI7uvkd3hzusTdotCg1UxyaVtg0zFJSTfW/Dq5f7OBBVnq6cZIaC8Ti4hb6dtCA==} engines: {node: '>= 14'} - zod@3.17.3: - resolution: {integrity: sha512-4oKP5zvG6GGbMlqBkI5FESOAweldEhSOZ6LI6cG+JzUT7ofj1ZOC0PJudpQOpT1iqOFpYYtX5Pw0+o403y4bcg==} - - zod@3.21.4: - resolution: {integrity: sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==} - - zod@3.23.8: - resolution: {integrity: sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==} - - zwitch@1.0.5: - resolution: {integrity: sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==} - zwitch@2.0.4: resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} @@ -8430,6 +6869,8 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/helper-plugin-utils@7.25.9': {} + '@babel/helper-simple-access@7.25.7': dependencies: '@babel/traverse': 7.25.7 @@ -8459,15 +6900,17 @@ snapshots: dependencies: '@babel/types': 7.25.7 - '@babel/runtime@7.22.5': + '@babel/plugin-transform-react-jsx-self@7.25.9(@babel/core@7.25.7)': dependencies: - regenerator-runtime: 0.13.11 + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.9 - '@babel/runtime@7.24.5': + '@babel/plugin-transform-react-jsx-source@7.25.9(@babel/core@7.25.7)': dependencies: - regenerator-runtime: 0.14.1 + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.9 - '@babel/runtime@7.25.7': + '@babel/runtime@7.24.5': dependencies: regenerator-runtime: 0.14.1 @@ -8492,287 +6935,8 @@ snapshots: '@babel/types@7.25.7': dependencies: '@babel/helper-string-parser': 7.25.7 - '@babel/helper-validator-identifier': 7.25.7 - to-fast-properties: 2.0.0 - - '@bitflow/bits@0.2.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@types/react@18.3.2)(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1)(zod@3.23.8)': - dependencies: - '@bitflow/end-tries': 0.5.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@bitflow/input-markdown': 0.5.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@bitflow/start-simple': 0.5.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@bitflow/task-choice': 0.5.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@bitflow/task-fill-in-the-blank': 0.5.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@types/react@18.3.2)(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@bitflow/task-highlighting': 0.2.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@bitflow/task-input': 0.5.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@bitflow/task-yes-no': 0.5.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@bitflow/title-simple': 0.5.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1)(zod@3.23.8) - zod: 3.23.8 - transitivePeerDependencies: - - '@emotion/cache' - - '@emotion/react' - - '@emotion/styled' - - '@openpatch/patches' - - '@types/react' - - '@vocab/core' - - '@vocab/react' - - react - - react-dom - - react-hook-form - - supports-color - - '@bitflow/core@0.6.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.17.3)': - dependencies: - '@emotion/cache': 11.13.1 - '@emotion/react': 11.13.3(@types/react@18.3.2)(react@18.3.1) - '@emotion/styled': 11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1) - '@openpatch/patches': 6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1) - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - zod: 3.17.3 - - '@bitflow/core@0.6.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.23.8)': - dependencies: - '@emotion/cache': 11.13.1 - '@emotion/react': 11.13.3(@types/react@18.3.2)(react@18.3.1) - '@emotion/styled': 11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1) - '@openpatch/patches': 6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1) - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - zod: 3.23.8 - - '@bitflow/do-local@0.5.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(@vocab/types@1.3.6)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.23.8)': - dependencies: - '@bitflow/core': 0.6.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@bitflow/do': 0.6.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(@vocab/types@1.3.6)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@bitflow/flow-engine': 0.5.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@bitflow/provider': 0.5.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@emotion/cache': 11.13.1 - '@emotion/react': 11.13.3(@types/react@18.3.2)(react@18.3.1) - '@emotion/styled': 11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1) - '@openpatch/patches': 6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1) - '@vocab/core': 1.6.2 - '@vocab/react': 1.1.11(react@18.3.1) - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - zod: 3.23.8 - transitivePeerDependencies: - - '@vocab/types' - - '@bitflow/do@0.6.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(@vocab/types@1.3.6)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.23.8)': - dependencies: - '@bitflow/core': 0.6.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@bitflow/flow-engine': 0.5.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@bitflow/provider': 0.5.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@bitflow/shell': 0.7.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@emotion/cache': 11.13.1 - '@emotion/react': 11.13.3(@types/react@18.3.2)(react@18.3.1) - '@emotion/styled': 11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1) - '@openpatch/patches': 6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1) - '@vocab/core': 1.6.2 - '@vocab/react': 1.1.11(react@18.3.1) - '@vocab/types': 1.3.6 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - transitivePeerDependencies: - - zod - - '@bitflow/end-tries@0.5.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1)(zod@3.23.8)': - dependencies: - '@bitflow/core': 0.6.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@bitflow/icons': 0.5.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@bitflow/provider': 0.5.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@bitflow/shell': 0.7.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@emotion/cache': 11.13.1 - '@emotion/react': 11.13.3(@types/react@18.3.2)(react@18.3.1) - '@emotion/styled': 11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1) - '@openpatch/patches': 6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1) - '@vocab/core': 1.6.2 - '@vocab/react': 1.1.11(react@18.3.1) - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - react-hook-form: 7.53.0(react@18.3.1) - zod: 3.23.8 - - '@bitflow/flow-engine@0.5.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.23.8)': - dependencies: - '@bitflow/core': 0.6.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.23.8) - lodash.get: 4.4.2 - transitivePeerDependencies: - - '@emotion/cache' - - '@emotion/react' - - '@emotion/styled' - - '@openpatch/patches' - - react - - react-dom - - zod - - '@bitflow/icons@0.5.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': - dependencies: - '@emotion/cache': 11.13.1 - '@emotion/react': 11.13.3(@types/react@18.3.2)(react@18.3.1) - '@emotion/styled': 11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1) - '@openpatch/patches': 6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1) - '@vocab/core': 1.6.2 - '@vocab/react': 1.1.11(react@18.3.1) - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - - '@bitflow/input-markdown@0.5.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1)(zod@3.23.8)': - dependencies: - '@bitflow/core': 0.6.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@emotion/cache': 11.13.1 - '@emotion/react': 11.13.3(@types/react@18.3.2)(react@18.3.1) - '@emotion/styled': 11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1) - '@openpatch/patches': 6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1) - '@vocab/core': 1.6.2 - '@vocab/react': 1.1.11(react@18.3.1) - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - react-hook-form: 7.53.0(react@18.3.1) - zod: 3.23.8 - - '@bitflow/provider@0.5.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': - dependencies: - '@bitflow/core': 0.6.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.17.3) - '@emotion/cache': 11.13.1 - '@emotion/react': 11.13.3(@types/react@18.3.2)(react@18.3.1) - '@emotion/styled': 11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1) - '@openpatch/patches': 6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1) - '@vocab/core': 1.6.2 - '@vocab/react': 1.1.11(react@18.3.1) - lodash.get: 4.4.2 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - zod: 3.17.3 - - '@bitflow/shell@0.7.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.23.8)': - dependencies: - '@bitflow/core': 0.6.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@emotion/cache': 11.13.1 - '@emotion/react': 11.13.3(@types/react@18.3.2)(react@18.3.1) - '@emotion/styled': 11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1) - '@openpatch/patches': 6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1) - '@vocab/core': 1.6.2 - '@vocab/react': 1.1.11(react@18.3.1) - immer: 9.0.19 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - transitivePeerDependencies: - - zod - - '@bitflow/start-simple@0.5.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1)(zod@3.23.8)': - dependencies: - '@bitflow/core': 0.6.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@emotion/cache': 11.13.1 - '@emotion/react': 11.13.3(@types/react@18.3.2)(react@18.3.1) - '@emotion/styled': 11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1) - '@openpatch/patches': 6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1) - '@vocab/core': 1.6.2 - '@vocab/react': 1.1.11(react@18.3.1) - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - react-hook-form: 7.53.0(react@18.3.1) - zod: 3.23.8 - - '@bitflow/task-choice@0.5.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1)(zod@3.23.8)': - dependencies: - '@bitflow/core': 0.6.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@bitflow/provider': 0.5.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@emotion/cache': 11.13.1 - '@emotion/react': 11.13.3(@types/react@18.3.2)(react@18.3.1) - '@emotion/styled': 11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1) - '@hookform/resolvers': 2.9.10(react-hook-form@7.53.0(react@18.3.1)) - '@openpatch/patches': 6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1) - '@vocab/core': 1.6.2 - '@vocab/react': 1.1.11(react@18.3.1) - immer: 9.0.21 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - react-hook-form: 7.53.0(react@18.3.1) - zod: 3.23.8 - - '@bitflow/task-fill-in-the-blank@0.5.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@types/react@18.3.2)(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1)(zod@3.23.8)': - dependencies: - '@bitflow/core': 0.6.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@emotion/cache': 11.13.1 - '@emotion/react': 11.13.3(@types/react@18.3.2)(react@18.3.1) - '@emotion/styled': 11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1) - '@hookform/resolvers': 2.9.10(react-hook-form@7.53.0(react@18.3.1)) - '@openpatch/patches': 6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1) - '@vocab/core': 1.6.2 - '@vocab/react': 1.1.11(react@18.3.1) - immer: 9.0.21 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - react-hook-form: 7.53.0(react@18.3.1) - react-markdown: 6.0.3(@types/react@18.3.2)(react@18.3.1) - remark-gfm: 1.0.0 - zod: 3.23.8 - transitivePeerDependencies: - - '@types/react' - - supports-color - - '@bitflow/task-highlighting@0.2.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1)(zod@3.23.8)': - dependencies: - '@bitflow/core': 0.6.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@emotion/cache': 11.13.1 - '@emotion/react': 11.13.3(@types/react@18.3.2)(react@18.3.1) - '@emotion/styled': 11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1) - '@openpatch/patches': 6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1) - '@vocab/core': 1.6.2 - '@vocab/react': 1.1.11(react@18.3.1) - immer: 9.0.21 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - react-hook-form: 7.53.0(react@18.3.1) - zod: 3.23.8 - - '@bitflow/task-input@0.5.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1)(zod@3.23.8)': - dependencies: - '@bitflow/core': 0.6.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@bitflow/provider': 0.5.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@emotion/cache': 11.13.1 - '@emotion/react': 11.13.3(@types/react@18.3.2)(react@18.3.1) - '@emotion/styled': 11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1) - '@hookform/resolvers': 2.9.10(react-hook-form@7.53.0(react@18.3.1)) - '@openpatch/patches': 6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1) - '@vocab/core': 1.6.2 - '@vocab/react': 1.1.11(react@18.3.1) - immer: 9.0.21 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - react-hook-form: 7.53.0(react@18.3.1) - react-tagcloud: 2.3.1(react@18.3.1) - zod: 3.23.8 - - '@bitflow/task-yes-no@0.5.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1)(zod@3.23.8)': - dependencies: - '@bitflow/core': 0.6.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@emotion/cache': 11.13.1 - '@emotion/react': 11.13.3(@types/react@18.3.2)(react@18.3.1) - '@emotion/styled': 11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1) - '@openpatch/patches': 6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1) - '@vocab/core': 1.6.2 - '@vocab/react': 1.1.11(react@18.3.1) - immer: 9.0.21 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - react-hook-form: 7.53.0(react@18.3.1) - zod: 3.23.8 - - '@bitflow/title-simple@0.5.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(@vocab/core@1.6.2)(@vocab/react@1.1.11(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1)(zod@3.23.8)': - dependencies: - '@bitflow/core': 0.6.0(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zod@3.23.8) - '@emotion/cache': 11.13.1 - '@emotion/react': 11.13.3(@types/react@18.3.2)(react@18.3.1) - '@emotion/styled': 11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1) - '@openpatch/patches': 6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1) - '@vocab/core': 1.6.2 - '@vocab/react': 1.1.11(react@18.3.1) - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - react-hook-form: 7.53.0(react@18.3.1) - zod: 3.23.8 + '@babel/helper-validator-identifier': 7.25.7 + to-fast-properties: 2.0.0 '@braintree/sanitize-url@7.1.0': {} @@ -8956,181 +7120,12 @@ snapshots: '@chevrotain/utils@11.0.3': {} - '@codemirror/autocomplete@0.20.3': - dependencies: - '@codemirror/language': 0.20.2 - '@codemirror/state': 0.20.1 - '@codemirror/view': 0.20.7 - '@lezer/common': 0.16.1 - - '@codemirror/lang-css@0.20.0': - dependencies: - '@codemirror/autocomplete': 0.20.3 - '@codemirror/language': 0.20.2 - '@codemirror/state': 0.20.1 - '@lezer/css': 0.16.0 - - '@codemirror/lang-html@0.20.0': - dependencies: - '@codemirror/autocomplete': 0.20.3 - '@codemirror/lang-css': 0.20.0 - '@codemirror/lang-javascript': 0.20.1 - '@codemirror/language': 0.20.2 - '@codemirror/state': 0.20.1 - '@lezer/common': 0.16.1 - '@lezer/html': 0.16.1 - - '@codemirror/lang-java@0.20.1': - dependencies: - '@codemirror/language': 0.20.2 - '@lezer/java': 0.16.0 - - '@codemirror/lang-javascript@0.20.1': - dependencies: - '@codemirror/autocomplete': 0.20.3 - '@codemirror/language': 0.20.2 - '@codemirror/lint': 0.20.3 - '@codemirror/state': 0.20.1 - '@codemirror/view': 0.20.7 - '@lezer/common': 0.16.1 - '@lezer/javascript': 0.16.0 - - '@codemirror/lang-markdown@0.20.1': - dependencies: - '@codemirror/lang-html': 0.20.0 - '@codemirror/language': 0.20.2 - '@codemirror/state': 0.20.1 - '@codemirror/view': 0.20.7 - '@lezer/common': 0.16.1 - '@lezer/markdown': 0.16.1 - - '@codemirror/lang-python@0.20.0': - dependencies: - '@codemirror/language': 0.20.2 - '@lezer/python': 0.16.1 - - '@codemirror/lang-sql@0.20.4': - dependencies: - '@codemirror/autocomplete': 0.20.3 - '@codemirror/language': 0.20.2 - '@codemirror/state': 0.20.1 - '@lezer/highlight': 0.16.0 - '@lezer/lr': 0.16.3 - - '@codemirror/language@0.20.2': - dependencies: - '@codemirror/state': 0.20.1 - '@codemirror/view': 0.20.7 - '@lezer/common': 0.16.1 - '@lezer/highlight': 0.16.0 - '@lezer/lr': 0.16.3 - style-mod: 4.0.0 - - '@codemirror/lint@0.20.3': - dependencies: - '@codemirror/state': 0.20.1 - '@codemirror/view': 0.20.7 - crelt: 1.0.5 - - '@codemirror/state@0.20.1': {} - - '@codemirror/view@0.20.7': - dependencies: - '@codemirror/state': 0.20.1 - style-mod: 4.0.0 - w3c-keyname: 2.2.6 - '@cspotcode/source-map-support@0.8.1': dependencies: '@jridgewell/trace-mapping': 0.3.9 '@discoveryjs/json-ext@0.5.7': {} - '@emotion/babel-plugin@11.12.0': - dependencies: - '@babel/helper-module-imports': 7.25.7 - '@babel/runtime': 7.25.7 - '@emotion/hash': 0.9.2 - '@emotion/memoize': 0.9.0 - '@emotion/serialize': 1.3.2 - babel-plugin-macros: 3.1.0 - convert-source-map: 1.9.0 - escape-string-regexp: 4.0.0 - find-root: 1.1.0 - source-map: 0.5.7 - stylis: 4.2.0 - transitivePeerDependencies: - - supports-color - - '@emotion/cache@11.13.1': - dependencies: - '@emotion/memoize': 0.9.0 - '@emotion/sheet': 1.4.0 - '@emotion/utils': 1.4.1 - '@emotion/weak-memoize': 0.4.0 - stylis: 4.2.0 - - '@emotion/core@11.0.0': {} - - '@emotion/hash@0.9.2': {} - - '@emotion/is-prop-valid@1.3.1': - dependencies: - '@emotion/memoize': 0.9.0 - - '@emotion/memoize@0.9.0': {} - - '@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1)': - dependencies: - '@babel/runtime': 7.25.7 - '@emotion/babel-plugin': 11.12.0 - '@emotion/cache': 11.13.1 - '@emotion/serialize': 1.3.2 - '@emotion/use-insertion-effect-with-fallbacks': 1.1.0(react@18.3.1) - '@emotion/utils': 1.4.1 - '@emotion/weak-memoize': 0.4.0 - hoist-non-react-statics: 3.3.2 - react: 18.3.1 - optionalDependencies: - '@types/react': 18.3.2 - transitivePeerDependencies: - - supports-color - - '@emotion/serialize@1.3.2': - dependencies: - '@emotion/hash': 0.9.2 - '@emotion/memoize': 0.9.0 - '@emotion/unitless': 0.10.0 - '@emotion/utils': 1.4.1 - csstype: 3.1.3 - - '@emotion/sheet@1.4.0': {} - - '@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1)': - dependencies: - '@babel/runtime': 7.25.7 - '@emotion/babel-plugin': 11.12.0 - '@emotion/is-prop-valid': 1.3.1 - '@emotion/react': 11.13.3(@types/react@18.3.2)(react@18.3.1) - '@emotion/serialize': 1.3.2 - '@emotion/use-insertion-effect-with-fallbacks': 1.1.0(react@18.3.1) - '@emotion/utils': 1.4.1 - react: 18.3.1 - optionalDependencies: - '@types/react': 18.3.2 - transitivePeerDependencies: - - supports-color - - '@emotion/unitless@0.10.0': {} - - '@emotion/use-insertion-effect-with-fallbacks@1.1.0(react@18.3.1)': - dependencies: - react: 18.3.1 - - '@emotion/utils@1.4.1': {} - - '@emotion/weak-memoize@0.4.0': {} - '@esbuild/aix-ppc64@0.20.2': optional: true @@ -9279,7 +7274,7 @@ snapshots: '@eslint/eslintrc@3.1.0': dependencies: ajv: 6.12.6 - debug: 4.3.4 + debug: 4.3.7 espree: 10.0.1 globals: 14.0.0 ignore: 5.3.1 @@ -9297,40 +7292,12 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@formatjs/ecma402-abstract@2.0.0': - dependencies: - '@formatjs/intl-localematcher': 0.5.4 - tslib: 2.6.2 - - '@formatjs/fast-memoize@2.2.0': - dependencies: - tslib: 2.6.2 - - '@formatjs/icu-messageformat-parser@2.7.8': - dependencies: - '@formatjs/ecma402-abstract': 2.0.0 - '@formatjs/icu-skeleton-parser': 1.8.2 - tslib: 2.6.2 - - '@formatjs/icu-skeleton-parser@1.8.2': - dependencies: - '@formatjs/ecma402-abstract': 2.0.0 - tslib: 2.6.2 - - '@formatjs/intl-localematcher@0.5.4': - dependencies: - tslib: 2.6.2 - '@gwhitney/detect-indent@7.0.1': {} - '@hookform/resolvers@2.9.10(react-hook-form@7.53.0(react@18.3.1))': - dependencies: - react-hook-form: 7.53.0(react@18.3.1) - '@humanwhocodes/config-array@0.13.0': dependencies: '@humanwhocodes/object-schema': 2.0.3 - debug: 4.3.4 + debug: 4.3.7 minimatch: 3.1.2 transitivePeerDependencies: - supports-color @@ -9390,53 +7357,13 @@ snapshots: '@jridgewell/trace-mapping@0.3.25': dependencies: '@jridgewell/resolve-uri': 3.1.2 - '@jridgewell/sourcemap-codec': 1.4.15 + '@jridgewell/sourcemap-codec': 1.5.0 '@jridgewell/trace-mapping@0.3.9': dependencies: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.4.15 - '@lezer/common@0.16.1': {} - - '@lezer/css@0.16.0': - dependencies: - '@lezer/highlight': 0.16.0 - '@lezer/lr': 0.16.3 - - '@lezer/highlight@0.16.0': - dependencies: - '@lezer/common': 0.16.1 - - '@lezer/html@0.16.1': - dependencies: - '@lezer/highlight': 0.16.0 - '@lezer/lr': 0.16.3 - - '@lezer/java@0.16.0': - dependencies: - '@lezer/highlight': 0.16.0 - '@lezer/lr': 0.16.3 - - '@lezer/javascript@0.16.0': - dependencies: - '@lezer/highlight': 0.16.0 - '@lezer/lr': 0.16.3 - - '@lezer/lr@0.16.3': - dependencies: - '@lezer/common': 0.16.1 - - '@lezer/markdown@0.16.1': - dependencies: - '@lezer/common': 0.16.1 - '@lezer/highlight': 0.16.0 - - '@lezer/python@0.16.1': - dependencies: - '@lezer/highlight': 0.16.0 - '@lezer/lr': 0.16.3 - '@manypkg/find-root@1.1.0': dependencies: '@babel/runtime': 7.24.5 @@ -9457,42 +7384,6 @@ snapshots: dependencies: langium: 3.0.0 - '@next/bundle-analyzer@13.3.1': - dependencies: - webpack-bundle-analyzer: 4.7.0 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - - '@next/env@13.4.5': {} - - '@next/swc-darwin-arm64@13.4.5': - optional: true - - '@next/swc-darwin-x64@13.4.5': - optional: true - - '@next/swc-linux-arm64-gnu@13.4.5': - optional: true - - '@next/swc-linux-arm64-musl@13.4.5': - optional: true - - '@next/swc-linux-x64-gnu@13.4.5': - optional: true - - '@next/swc-linux-x64-musl@13.4.5': - optional: true - - '@next/swc-win32-arm64-msvc@13.4.5': - optional: true - - '@next/swc-win32-ia32-msvc@13.4.5': - optional: true - - '@next/swc-win32-x64-msvc@13.4.5': - optional: true - '@nodelib/fs.scandir@2.1.5': dependencies: '@nodelib/fs.stat': 2.0.5 @@ -9505,38 +7396,6 @@ snapshots: '@nodelib/fs.scandir': 2.1.5 fastq: 1.15.0 - '@openpatch/patches@6.0.1(@emotion/cache@11.13.1)(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.53.0(react@18.3.1))(react@18.3.1)': - dependencies: - '@codemirror/autocomplete': 0.20.3 - '@codemirror/lang-java': 0.20.1 - '@codemirror/lang-javascript': 0.20.1 - '@codemirror/lang-markdown': 0.20.1 - '@codemirror/lang-python': 0.20.0 - '@codemirror/lang-sql': 0.20.4 - '@codemirror/language': 0.20.2 - '@codemirror/state': 0.20.1 - '@codemirror/view': 0.20.7 - '@emotion/cache': 11.13.1 - '@emotion/react': 11.13.3(@types/react@18.3.2)(react@18.3.1) - '@emotion/styled': 11.13.0(@emotion/react@11.13.3(@types/react@18.3.2)(react@18.3.1))(@types/react@18.3.2)(react@18.3.1) - lodash: 4.17.21 - polished: 4.2.2 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - react-hook-form: 7.53.0(react@18.3.1) - react-markdown: 8.0.5(@types/react@18.3.2)(react@18.3.1) - react-modal: 3.16.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - react-syntax-highlighter: 15.5.0(react@18.3.1) - react-tabs: 5.2.0(react@18.3.1) - react-toastify: 9.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - rehype-raw: 6.1.1 - rehype-sanitize: 5.0.1 - remark-gfm: 3.0.1 - styled-system: 5.1.5 - transitivePeerDependencies: - - '@types/react' - - supports-color - '@pkgjs/parseargs@0.11.0': optional: true @@ -9591,133 +7450,167 @@ snapshots: write-file-atomic: 5.0.1 write-yaml-file: 5.0.0 - '@polka/url@1.0.0-next.21': {} + '@r2wc/core@1.1.0': {} - '@reduxjs/toolkit@2.2.5(react-redux@9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1))(react@18.3.1)': + '@r2wc/react-to-web-component@2.0.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - immer: 10.1.1 - redux: 5.0.1 - redux-thunk: 3.1.0(redux@5.0.1) - reselect: 5.1.0 - optionalDependencies: + '@r2wc/core': 1.1.0 react: 18.3.1 - react-redux: 9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1) + react-dom: 18.3.1(react@18.3.1) + + '@rehype-pretty/transformers@0.13.2': {} + + '@rollup/plugin-typescript@12.1.1(rollup@4.24.3)(tslib@2.6.2)(typescript@5.4.5)': + dependencies: + '@rollup/pluginutils': 5.1.3(rollup@4.24.3) + resolve: 1.22.8 + typescript: 5.4.5 + optionalDependencies: + rollup: 4.24.3 + tslib: 2.6.2 + + '@rollup/pluginutils@5.1.3(rollup@4.24.3)': + dependencies: + '@types/estree': 1.0.5 + estree-walker: 2.0.2 + picomatch: 4.0.2 + optionalDependencies: + rollup: 4.24.3 '@rollup/rollup-android-arm-eabi@4.17.2': optional: true + '@rollup/rollup-android-arm-eabi@4.24.3': + optional: true + '@rollup/rollup-android-arm64@4.17.2': optional: true + '@rollup/rollup-android-arm64@4.24.3': + optional: true + '@rollup/rollup-darwin-arm64@4.17.2': optional: true + '@rollup/rollup-darwin-arm64@4.24.3': + optional: true + '@rollup/rollup-darwin-x64@4.17.2': optional: true + '@rollup/rollup-darwin-x64@4.24.3': + optional: true + + '@rollup/rollup-freebsd-arm64@4.24.3': + optional: true + + '@rollup/rollup-freebsd-x64@4.24.3': + optional: true + '@rollup/rollup-linux-arm-gnueabihf@4.17.2': optional: true + '@rollup/rollup-linux-arm-gnueabihf@4.24.3': + optional: true + '@rollup/rollup-linux-arm-musleabihf@4.17.2': optional: true + '@rollup/rollup-linux-arm-musleabihf@4.24.3': + optional: true + '@rollup/rollup-linux-arm64-gnu@4.17.2': optional: true - '@rollup/rollup-linux-arm64-musl@4.17.2': + '@rollup/rollup-linux-arm64-gnu@4.24.3': optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.17.2': + '@rollup/rollup-linux-arm64-musl@4.17.2': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.17.2': + '@rollup/rollup-linux-arm64-musl@4.24.3': optional: true - '@rollup/rollup-linux-s390x-gnu@4.17.2': + '@rollup/rollup-linux-powerpc64le-gnu@4.17.2': optional: true - '@rollup/rollup-linux-x64-gnu@4.17.2': + '@rollup/rollup-linux-powerpc64le-gnu@4.24.3': optional: true - '@rollup/rollup-linux-x64-musl@4.17.2': + '@rollup/rollup-linux-riscv64-gnu@4.17.2': optional: true - '@rollup/rollup-win32-arm64-msvc@4.17.2': + '@rollup/rollup-linux-riscv64-gnu@4.24.3': optional: true - '@rollup/rollup-win32-ia32-msvc@4.17.2': + '@rollup/rollup-linux-s390x-gnu@4.17.2': optional: true - '@rollup/rollup-win32-x64-msvc@4.17.2': + '@rollup/rollup-linux-s390x-gnu@4.24.3': optional: true - '@sinclair/typebox@0.27.8': {} + '@rollup/rollup-linux-x64-gnu@4.17.2': + optional: true - '@sindresorhus/is@5.6.0': {} + '@rollup/rollup-linux-x64-gnu@4.24.3': + optional: true - '@sindresorhus/merge-streams@2.3.0': {} + '@rollup/rollup-linux-x64-musl@4.17.2': + optional: true - '@styled-system/background@5.1.2': - dependencies: - '@styled-system/core': 5.1.2 + '@rollup/rollup-linux-x64-musl@4.24.3': + optional: true - '@styled-system/border@5.1.5': - dependencies: - '@styled-system/core': 5.1.2 + '@rollup/rollup-win32-arm64-msvc@4.17.2': + optional: true - '@styled-system/color@5.1.2': - dependencies: - '@styled-system/core': 5.1.2 + '@rollup/rollup-win32-arm64-msvc@4.24.3': + optional: true - '@styled-system/core@5.1.2': - dependencies: - object-assign: 4.1.1 + '@rollup/rollup-win32-ia32-msvc@4.17.2': + optional: true - '@styled-system/css@5.1.5': {} + '@rollup/rollup-win32-ia32-msvc@4.24.3': + optional: true - '@styled-system/flexbox@5.1.2': - dependencies: - '@styled-system/core': 5.1.2 + '@rollup/rollup-win32-x64-msvc@4.17.2': + optional: true - '@styled-system/grid@5.1.2': - dependencies: - '@styled-system/core': 5.1.2 + '@rollup/rollup-win32-x64-msvc@4.24.3': + optional: true - '@styled-system/layout@5.1.2': + '@shikijs/core@1.22.0': dependencies: - '@styled-system/core': 5.1.2 + '@shikijs/engine-javascript': 1.22.0 + '@shikijs/engine-oniguruma': 1.22.0 + '@shikijs/types': 1.22.0 + '@shikijs/vscode-textmate': 9.3.0 + '@types/hast': 3.0.4 + hast-util-to-html: 9.0.3 - '@styled-system/position@5.1.2': + '@shikijs/engine-javascript@1.22.0': dependencies: - '@styled-system/core': 5.1.2 + '@shikijs/types': 1.22.0 + '@shikijs/vscode-textmate': 9.3.0 + oniguruma-to-js: 0.4.3 - '@styled-system/shadow@5.1.2': + '@shikijs/engine-oniguruma@1.22.0': dependencies: - '@styled-system/core': 5.1.2 + '@shikijs/types': 1.22.0 + '@shikijs/vscode-textmate': 9.3.0 - '@styled-system/space@5.1.2': + '@shikijs/types@1.22.0': dependencies: - '@styled-system/core': 5.1.2 + '@shikijs/vscode-textmate': 9.3.0 + '@types/hast': 3.0.4 - '@styled-system/typography@5.1.2': - dependencies: - '@styled-system/core': 5.1.2 + '@shikijs/vscode-textmate@9.3.0': {} - '@styled-system/variant@5.1.5': - dependencies: - '@styled-system/core': 5.1.2 - '@styled-system/css': 5.1.5 + '@sinclair/typebox@0.27.8': {} - '@swc/helpers@0.5.1': - dependencies: - tslib: 2.6.2 + '@sindresorhus/is@5.6.0': {} - '@szhsin/react-menu@4.2.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': - dependencies: - prop-types: 15.8.1 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - react-transition-state: 2.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@sindresorhus/merge-streams@2.3.0': {} '@szmarczak/http-timer@5.0.1': dependencies: @@ -9739,21 +7632,31 @@ snapshots: dependencies: '@types/retry': 0.12.5 - '@types/body-parser@1.19.5': + '@types/babel__core@7.20.5': dependencies: - '@types/connect': 3.4.38 - '@types/node': 20.12.12 + '@babel/parser': 7.25.7 + '@babel/types': 7.25.7 + '@types/babel__generator': 7.6.8 + '@types/babel__template': 7.4.4 + '@types/babel__traverse': 7.20.6 - '@types/connect@3.4.38': + '@types/babel__generator@7.6.8': dependencies: - '@types/node': 20.12.12 + '@babel/types': 7.25.7 + + '@types/babel__template@7.4.4': + dependencies: + '@babel/parser': 7.25.7 + '@babel/types': 7.25.7 + + '@types/babel__traverse@7.20.6': + dependencies: + '@babel/types': 7.25.7 '@types/cross-spawn@6.0.6': dependencies: '@types/node': 20.12.12 - '@types/debounce@1.2.4': {} - '@types/debug@4.1.12': dependencies: '@types/ms': 0.7.34 @@ -9768,25 +7671,9 @@ snapshots: '@types/estree': 1.0.5 '@types/json-schema': 7.0.15 - '@types/estree-jsx@1.0.5': - dependencies: - '@types/estree': 1.0.5 - '@types/estree@1.0.5': {} - '@types/express-serve-static-core@4.19.0': - dependencies: - '@types/node': 20.12.12 - '@types/qs': 6.9.15 - '@types/range-parser': 1.2.7 - '@types/send': 0.17.4 - - '@types/express@4.17.21': - dependencies: - '@types/body-parser': 1.19.5 - '@types/express-serve-static-core': 4.19.0 - '@types/qs': 6.9.15 - '@types/serve-static': 1.15.7 + '@types/estree@1.0.6': {} '@types/fined@1.1.3': {} @@ -9797,7 +7684,7 @@ snapshots: '@types/hast@2.3.10': dependencies: - '@types/unist': 2.0.10 + '@types/unist': 2.0.11 '@types/hast@3.0.4': dependencies: @@ -9805,8 +7692,6 @@ snapshots: '@types/http-cache-semantics@4.0.4': {} - '@types/http-errors@2.0.4': {} - '@types/inquirer@8.2.5': dependencies: '@types/through': 0.0.30 @@ -9822,18 +7707,12 @@ snapshots: '@types/fined': 1.1.3 '@types/node': 20.12.12 - '@types/mdast@3.0.15': - dependencies: - '@types/unist': 2.0.11 - '@types/mdast@4.0.4': dependencies: '@types/unist': 3.0.2 '@types/mime-types@2.1.4': {} - '@types/mime@1.3.5': {} - '@types/minimatch@5.1.2': {} '@types/minimist@1.2.5': {} @@ -9859,29 +7738,14 @@ snapshots: '@types/pako@2.0.3': {} - '@types/parse-json@4.0.2': {} - - '@types/parse5@6.0.3': {} - '@types/prompts@2.4.9': dependencies: '@types/node': 20.12.12 kleur: 3.0.3 - '@types/prop-types@15.7.12': {} + '@types/prop-types@15.7.13': {} - '@types/prop-types@15.7.13': - optional: true - - '@types/prop-types@15.7.5': {} - - '@types/qrcode@1.5.5': - dependencies: - '@types/node': 20.12.12 - - '@types/qs@6.9.15': {} - - '@types/range-parser@1.2.7': {} + '@types/qrcode-svg@1.1.5': {} '@types/react-dom@18.3.0': dependencies: @@ -9895,7 +7759,7 @@ snapshots: '@types/react@18.3.2': dependencies: - '@types/prop-types': 15.7.12 + '@types/prop-types': 15.7.13 csstype: 3.1.3 '@types/readdir-glob@1.1.5': @@ -9904,18 +7768,7 @@ snapshots: '@types/retry@0.12.5': {} - '@types/semver@7.5.8': {} - - '@types/send@0.17.4': - dependencies: - '@types/mime': 1.3.5 - '@types/node': 20.12.12 - - '@types/serve-static@1.15.7': - dependencies: - '@types/http-errors': 2.0.4 - '@types/node': 20.12.12 - '@types/send': 0.17.4 + '@types/semver@7.5.8': {} '@types/tar@6.1.13': dependencies: @@ -9926,8 +7779,6 @@ snapshots: dependencies: '@types/node': 20.12.12 - '@types/unist@2.0.10': {} - '@types/unist@2.0.11': {} '@types/unist@3.0.2': {} @@ -9938,9 +7789,9 @@ snapshots: '@types/vscode@1.71.0': {} - '@types/wavesurfer.js@6.0.12': + '@types/ws@8.5.12': dependencies: - '@types/debounce': 1.2.4 + '@types/node': 20.12.12 '@typescript-eslint/eslint-plugin@7.10.0(@typescript-eslint/parser@7.10.0(eslint@9.3.0)(typescript@5.4.5))(eslint@9.3.0)(typescript@5.4.5)': dependencies: @@ -9996,7 +7847,7 @@ snapshots: dependencies: '@typescript-eslint/types': 7.10.0 '@typescript-eslint/visitor-keys': 7.10.0 - debug: 4.3.4 + debug: 4.3.7 globby: 11.1.0 is-glob: 4.0.3 minimatch: 9.0.4 @@ -10027,6 +7878,17 @@ snapshots: '@vercel/ncc@0.38.1': {} + '@vitejs/plugin-react@4.3.3(vite@5.4.10(@types/node@22.7.4)(sass@1.79.4)(terser@5.34.1))': + dependencies: + '@babel/core': 7.25.7 + '@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.25.7) + '@babel/plugin-transform-react-jsx-source': 7.25.9(@babel/core@7.25.7) + '@types/babel__core': 7.20.5 + react-refresh: 0.14.2 + vite: 5.4.10(@types/node@22.7.4)(sass@1.79.4)(terser@5.34.1) + transitivePeerDependencies: + - supports-color + '@vitest/expect@1.6.0': dependencies: '@vitest/spy': 1.6.0 @@ -10056,33 +7918,44 @@ snapshots: loupe: 2.3.7 pretty-format: 29.7.0 - '@vocab/core@1.6.2': - dependencies: - '@formatjs/icu-messageformat-parser': 2.7.8 - chokidar: 3.6.0 - debug: 4.3.4 - fast-glob: 3.3.2 - fastest-validator: 1.18.0 - find-up: 5.0.0 - intl-messageformat: 10.5.14 - picocolors: 1.0.1 - prettier: 2.8.8 - transitivePeerDependencies: - - supports-color + '@vscode/vsce-sign-alpine-arm64@2.0.2': + optional: true - '@vocab/react@1.1.11(react@18.3.1)': - dependencies: - '@vocab/core': 1.6.2 - intl-messageformat: 10.5.14 - react: 18.3.1 - transitivePeerDependencies: - - supports-color + '@vscode/vsce-sign-alpine-x64@2.0.2': + optional: true - '@vocab/types@1.3.6': - dependencies: - '@vocab/core': 1.6.2 - transitivePeerDependencies: - - supports-color + '@vscode/vsce-sign-darwin-arm64@2.0.2': + optional: true + + '@vscode/vsce-sign-darwin-x64@2.0.2': + optional: true + + '@vscode/vsce-sign-linux-arm64@2.0.2': + optional: true + + '@vscode/vsce-sign-linux-arm@2.0.2': + optional: true + + '@vscode/vsce-sign-linux-x64@2.0.2': + optional: true + + '@vscode/vsce-sign-win32-arm64@2.0.2': + optional: true + + '@vscode/vsce-sign-win32-x64@2.0.2': + optional: true + + '@vscode/vsce-sign@2.0.5': + optionalDependencies: + '@vscode/vsce-sign-alpine-arm64': 2.0.2 + '@vscode/vsce-sign-alpine-x64': 2.0.2 + '@vscode/vsce-sign-darwin-arm64': 2.0.2 + '@vscode/vsce-sign-darwin-x64': 2.0.2 + '@vscode/vsce-sign-linux-arm': 2.0.2 + '@vscode/vsce-sign-linux-arm64': 2.0.2 + '@vscode/vsce-sign-linux-x64': 2.0.2 + '@vscode/vsce-sign-win32-arm64': 2.0.2 + '@vscode/vsce-sign-win32-x64': 2.0.2 '@vscode/vsce@2.26.1': dependencies: @@ -10114,6 +7987,37 @@ snapshots: transitivePeerDependencies: - supports-color + '@vscode/vsce@3.2.1': + dependencies: + '@azure/identity': 4.2.0 + '@vscode/vsce-sign': 2.0.5 + azure-devops-node-api: 12.5.0 + chalk: 2.4.2 + cheerio: 1.0.0-rc.12 + cockatiel: 3.1.3 + commander: 6.2.1 + form-data: 4.0.0 + glob: 11.0.0 + hosted-git-info: 4.1.0 + jsonc-parser: 3.2.1 + leven: 3.1.0 + markdown-it: 14.1.0 + mime: 1.6.0 + minimatch: 3.1.2 + parse-semver: 1.1.1 + read: 1.0.7 + semver: 7.6.2 + tmp: 0.2.3 + typed-rest-client: 1.8.11 + url-join: 4.0.1 + xml2js: 0.5.0 + yauzl: 2.10.0 + yazl: 2.5.1 + optionalDependencies: + keytar: 7.9.0 + transitivePeerDependencies: + - supports-color + '@webassemblyjs/ast@1.12.1': dependencies: '@webassemblyjs/helper-numbers': 1.11.6 @@ -10190,17 +8094,17 @@ snapshots: '@webassemblyjs/ast': 1.12.1 '@xtuc/long': 4.2.2 - '@webpack-cli/configtest@2.1.1(webpack-cli@5.1.4(webpack@5.91.0))(webpack@5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4))': + '@webpack-cli/configtest@2.1.1(webpack-cli@5.1.4)(webpack@5.91.0)': dependencies: webpack: 5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4) webpack-cli: 5.1.4(webpack@5.91.0) - '@webpack-cli/info@2.0.2(webpack-cli@5.1.4(webpack@5.91.0))(webpack@5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4))': + '@webpack-cli/info@2.0.2(webpack-cli@5.1.4)(webpack@5.91.0)': dependencies: webpack: 5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4) webpack-cli: 5.1.4(webpack@5.91.0) - '@webpack-cli/serve@2.0.5(webpack-cli@5.1.4(webpack@5.91.0))(webpack@5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4))': + '@webpack-cli/serve@2.0.5(webpack-cli@5.1.4)(webpack@5.91.0)': dependencies: webpack: 5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4) webpack-cli: 5.1.4(webpack@5.91.0) @@ -10297,11 +8201,24 @@ snapshots: ansi-styles@6.2.1: {} + anymatch@2.0.0: + dependencies: + micromatch: 3.1.10 + normalize-path: 2.1.1 + transitivePeerDependencies: + - supports-color + anymatch@3.1.3: dependencies: normalize-path: 3.0.0 picomatch: 2.3.1 + apache-crypt@1.2.6: + dependencies: + unix-crypt-td-js: 1.1.4 + + apache-md5@1.1.8: {} + archiver-utils@5.0.2: dependencies: glob: 10.3.15 @@ -10330,6 +8247,12 @@ snapshots: argparse@2.0.1: {} + arr-diff@4.0.0: {} + + arr-flatten@1.1.0: {} + + arr-union@3.1.0: {} + array-buffer-byte-length@1.0.1: dependencies: call-bind: 1.0.7 @@ -10337,12 +8260,12 @@ snapshots: array-each@1.0.1: {} - array-flatten@1.1.1: {} - array-slice@1.1.0: {} array-union@2.1.0: {} + array-unique@0.3.2: {} + array.prototype.flat@1.3.2: dependencies: call-bind: 1.0.7 @@ -10379,6 +8302,10 @@ snapshots: assertion-error@1.1.0: {} + assign-symbols@1.0.0: {} + + async-each@1.0.6: {} + async-retry@1.3.3: dependencies: retry: 0.13.1 @@ -10387,6 +8314,8 @@ snapshots: asynckit@0.4.0: {} + atob@2.1.2: {} + available-typed-arrays@1.0.5: {} available-typed-arrays@1.0.7: @@ -10400,14 +8329,6 @@ snapshots: b4a@1.6.6: {} - babel-plugin-macros@3.1.0: - dependencies: - '@babel/runtime': 7.25.7 - cosmiconfig: 7.1.0 - resolve: 1.22.8 - - bail@1.0.5: {} - bail@2.0.2: {} balanced-match@1.0.2: {} @@ -10417,14 +8338,39 @@ snapshots: base64-js@1.5.1: {} + base@0.11.2: + dependencies: + cache-base: 1.0.1 + class-utils: 0.3.6 + component-emitter: 1.3.1 + define-property: 1.0.0 + isobject: 3.0.1 + mixin-deep: 1.3.2 + pascalcase: 0.1.1 + + basic-auth@2.0.1: + dependencies: + safe-buffer: 5.1.2 + + batch@0.6.1: {} + + bcryptjs@2.4.3: {} + better-path-resolve@1.0.0: dependencies: is-windows: 1.0.2 big.js@5.2.2: {} + binary-extensions@1.13.1: {} + binary-extensions@2.3.0: {} + bindings@1.5.0: + dependencies: + file-uri-to-path: 1.0.0 + optional: true + bl@4.1.0: dependencies: buffer: 5.7.1 @@ -10441,23 +8387,6 @@ snapshots: bn.js@5.2.1: {} - body-parser@1.20.3: - dependencies: - bytes: 3.1.2 - content-type: 1.0.5 - debug: 2.6.9 - depd: 2.0.0 - destroy: 1.2.0 - http-errors: 2.0.0 - iconv-lite: 0.4.24 - on-finished: 2.4.1 - qs: 6.13.0 - raw-body: 2.5.2 - type-is: 1.6.18 - unpipe: 1.0.0 - transitivePeerDependencies: - - supports-color - boolbase@1.0.0: {} brace-expansion@1.1.11: @@ -10469,6 +8398,21 @@ snapshots: dependencies: balanced-match: 1.0.2 + braces@2.3.2: + dependencies: + arr-flatten: 1.1.0 + array-unique: 0.3.2 + extend-shallow: 2.0.1 + fill-range: 4.0.0 + isobject: 3.0.1 + repeat-element: 1.1.4 + snapdragon: 0.8.2 + snapdragon-node: 2.1.1 + split-string: 3.1.0 + to-regex: 3.0.2 + transitivePeerDependencies: + - supports-color + braces@3.0.2: dependencies: fill-range: 7.0.1 @@ -10559,14 +8503,20 @@ snapshots: builtin-status-codes@3.0.0: {} - busboy@1.6.0: - dependencies: - streamsearch: 1.1.0 - - bytes@3.1.2: {} - cac@6.7.14: {} + cache-base@1.0.1: + dependencies: + collection-visit: 1.0.0 + component-emitter: 1.3.1 + get-value: 2.0.6 + has-value: 1.0.0 + isobject: 3.0.1 + set-value: 2.0.1 + to-object-path: 0.3.0 + union-value: 1.0.1 + unset-value: 1.0.0 + cacheable-lookup@7.0.0: {} cacheable-request@10.2.14: @@ -10607,8 +8557,6 @@ snapshots: camelcase@5.3.1: {} - caniuse-lite@1.0.30001502: {} - caniuse-lite@1.0.30001620: {} caniuse-lite@1.0.30001667: {} @@ -10619,8 +8567,6 @@ snapshots: tslib: 2.6.2 upper-case-first: 2.0.2 - ccount@1.1.0: {} - ccount@2.0.1: {} chai@4.4.1: @@ -10665,16 +8611,10 @@ snapshots: character-entities-html4@2.1.0: {} - character-entities-legacy@1.1.4: {} - character-entities-legacy@3.0.0: {} - character-entities@1.2.4: {} - character-entities@2.0.2: {} - character-reference-invalid@1.1.4: {} - character-reference-invalid@2.0.1: {} chardet@0.7.0: {} @@ -10716,6 +8656,24 @@ snapshots: '@chevrotain/utils': 11.0.3 lodash-es: 4.17.21 + chokidar@2.1.8: + dependencies: + anymatch: 2.0.0 + async-each: 1.0.6 + braces: 2.3.2 + glob-parent: 3.1.0 + inherits: 2.0.4 + is-binary-path: 1.0.1 + is-glob: 4.0.3 + normalize-path: 3.0.0 + path-is-absolute: 1.0.1 + readdirp: 2.2.1 + upath: 1.2.0 + optionalDependencies: + fsevents: 1.2.13 + transitivePeerDependencies: + - supports-color + chokidar@3.6.0: dependencies: anymatch: 3.1.3 @@ -10749,7 +8707,12 @@ snapshots: inherits: 2.0.4 safe-buffer: 5.2.1 - classnames@2.5.1: {} + class-utils@0.3.6: + dependencies: + arr-union: 3.1.0 + define-property: 0.2.5 + isobject: 3.0.1 + static-extend: 0.1.2 clean-stack@2.2.0: {} @@ -10769,8 +8732,6 @@ snapshots: cli-width@3.0.0: {} - client-only@0.0.1: {} - cliui@6.0.0: dependencies: string-width: 4.2.3 @@ -10791,10 +8752,13 @@ snapshots: clone@1.0.4: {} - clsx@1.2.1: {} - cockatiel@3.1.3: {} + collection-visit@1.0.0: + dependencies: + map-visit: 1.0.0 + object-visit: 1.0.1 + color-convert@1.9.3: dependencies: color-name: 1.1.3 @@ -10809,12 +8773,12 @@ snapshots: colorette@2.0.20: {} + colors@1.4.0: {} + combined-stream@1.0.8: dependencies: delayed-stream: 1.0.0 - comma-separated-tokens@1.0.8: {} - comma-separated-tokens@2.0.3: {} commander@10.0.1: {} @@ -10829,6 +8793,8 @@ snapshots: commander@8.3.0: {} + component-emitter@1.3.1: {} + compress-commons@6.0.2: dependencies: crc-32: 1.2.2 @@ -10843,6 +8809,15 @@ snapshots: confbox@0.1.8: {} + connect@3.7.0: + dependencies: + debug: 2.6.9 + finalhandler: 1.1.2 + parseurl: 1.3.3 + utils-merge: 1.0.1 + transitivePeerDependencies: + - supports-color + console-browserify@1.2.0: {} constant-case@3.0.4: @@ -10853,26 +8828,16 @@ snapshots: constants-browserify@1.0.0: {} - content-disposition@0.5.4: - dependencies: - safe-buffer: 5.2.1 - - content-type@1.0.5: {} - - convert-source-map@1.9.0: {} - convert-source-map@2.0.0: {} - cookie-signature@1.0.6: {} - - cookie@0.6.0: {} + copy-descriptor@0.1.1: {} copy-file@11.0.0: dependencies: graceful-fs: 4.2.11 p-event: 6.0.1 - copy-webpack-plugin@12.0.2(webpack@5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4)): + copy-webpack-plugin@12.0.2(webpack@5.91.0): dependencies: fast-glob: 3.3.2 glob-parent: 6.0.2 @@ -10884,6 +8849,11 @@ snapshots: core-util-is@1.0.3: {} + cors@2.8.5: + dependencies: + object-assign: 4.1.1 + vary: 1.1.2 + cose-base@1.0.3: dependencies: layout-base: 1.0.2 @@ -10892,14 +8862,6 @@ snapshots: dependencies: layout-base: 2.0.1 - cosmiconfig@7.1.0: - dependencies: - '@types/parse-json': 4.0.2 - import-fresh: 3.3.0 - parse-json: 5.2.0 - path-type: 4.0.0 - yaml: 1.10.2 - cpy@11.0.1: dependencies: copy-file: 11.0.0 @@ -10940,8 +8902,6 @@ snapshots: create-require@1.1.1: {} - crelt@1.0.5: {} - cross-env@7.0.3: dependencies: cross-spawn: 7.0.3 @@ -10980,7 +8940,7 @@ snapshots: randombytes: 2.1.0 randomfill: 1.0.4 - css-loader@7.1.1(webpack@5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4)): + css-loader@7.1.1(webpack@5.91.0): dependencies: icss-utils: 5.1.0(postcss@8.4.38) postcss: 8.4.38 @@ -11245,10 +9205,14 @@ snapshots: decamelize@1.2.0: {} + decircular@1.0.0: {} + decode-named-character-reference@1.0.2: dependencies: character-entities: 2.0.2 + decode-uri-component@0.2.2: {} + decompress-response@6.0.0: dependencies: mimic-response: 3.1.0 @@ -11286,6 +9250,19 @@ snapshots: has-property-descriptors: 1.0.2 object-keys: 1.1.1 + define-property@0.2.5: + dependencies: + is-descriptor: 0.1.7 + + define-property@1.0.0: + dependencies: + is-descriptor: 1.0.3 + + define-property@2.0.2: + dependencies: + is-descriptor: 1.0.3 + isobject: 3.0.1 + del@6.1.1: dependencies: globby: 11.1.0 @@ -11303,6 +9280,8 @@ snapshots: delayed-stream@1.0.0: {} + depd@1.1.2: {} + depd@2.0.0: {} dequal@2.0.3: {} @@ -11329,16 +9308,12 @@ snapshots: diff@4.0.2: {} - diff@5.1.0: {} - diffie-hellman@5.0.3: dependencies: bn.js: 4.12.0 miller-rabin: 4.0.1 randombytes: 2.1.0 - dijkstrajs@1.0.3: {} - dir-glob@3.0.1: dependencies: path-type: 4.0.0 @@ -11691,7 +9666,7 @@ snapshots: estraverse@5.3.0: {} - estree-util-is-identifier-name@3.0.0: {} + estree-walker@2.0.2: {} estree-walker@3.0.3: dependencies: @@ -11701,6 +9676,16 @@ snapshots: etag@1.8.1: {} + event-stream@3.3.4: + dependencies: + duplexer: 0.1.2 + from: 0.1.7 + map-stream: 0.1.0 + pause-stream: 0.0.11 + split: 0.3.3 + stream-combiner: 0.0.4 + through: 2.3.8 + event-target-shim@5.0.1: {} events@3.3.0: {} @@ -11734,7 +9719,17 @@ snapshots: signal-exit: 4.1.0 strip-final-newline: 3.0.0 - exenv@1.2.2: {} + expand-brackets@2.1.4: + dependencies: + debug: 2.6.9 + define-property: 0.2.5 + extend-shallow: 2.0.1 + posix-character-classes: 0.1.1 + regex-not: 1.0.2 + snapdragon: 0.8.2 + to-regex: 3.0.2 + transitivePeerDependencies: + - supports-color expand-template@2.0.3: optional: true @@ -11743,48 +9738,15 @@ snapshots: dependencies: homedir-polyfill: 1.0.3 - express-serve-static-core@0.1.1: {} - - express@4.21.0: - dependencies: - accepts: 1.3.8 - array-flatten: 1.1.1 - body-parser: 1.20.3 - content-disposition: 0.5.4 - content-type: 1.0.5 - cookie: 0.6.0 - cookie-signature: 1.0.6 - debug: 2.6.9 - depd: 2.0.0 - encodeurl: 2.0.0 - escape-html: 1.0.3 - etag: 1.8.1 - finalhandler: 1.3.1 - fresh: 0.5.2 - http-errors: 2.0.0 - merge-descriptors: 1.0.3 - methods: 1.1.2 - on-finished: 2.4.1 - parseurl: 1.3.3 - path-to-regexp: 0.1.10 - proxy-addr: 2.0.7 - qs: 6.13.0 - range-parser: 1.2.1 - safe-buffer: 5.2.1 - send: 0.19.0 - serve-static: 1.16.2 - setprototypeof: 1.2.0 - statuses: 2.0.1 - type-is: 1.6.18 - utils-merge: 1.0.1 - vary: 1.1.2 - transitivePeerDependencies: - - supports-color - extend-shallow@2.0.1: dependencies: is-extendable: 0.1.1 + extend-shallow@3.0.2: + dependencies: + assign-symbols: 1.0.0 + is-extendable: 1.0.1 + extend@3.0.2: {} extendable-error@0.1.7: {} @@ -11795,6 +9757,19 @@ snapshots: iconv-lite: 0.4.24 tmp: 0.0.33 + extglob@2.0.4: + dependencies: + array-unique: 0.3.2 + define-property: 1.0.0 + expand-brackets: 2.1.4 + extend-shallow: 2.0.1 + fragment-cache: 0.2.1 + regex-not: 1.0.2 + snapdragon: 0.8.2 + to-regex: 3.0.2 + transitivePeerDependencies: + - supports-color + fast-deep-equal@3.1.3: {} fast-fifo@1.3.2: {} @@ -11813,15 +9788,13 @@ snapshots: fastest-levenshtein@1.0.16: {} - fastest-validator@1.18.0: {} - fastq@1.15.0: dependencies: reusify: 1.0.4 - fault@1.0.4: + faye-websocket@0.11.4: dependencies: - format: 0.2.2 + websocket-driver: 0.7.4 fd-slicer@1.1.0: dependencies: @@ -11835,30 +9808,38 @@ snapshots: dependencies: flat-cache: 4.0.1 - file-loader@6.2.0(webpack@5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4)): + file-loader@6.2.0(webpack@5.91.0): dependencies: loader-utils: 2.0.4 schema-utils: 3.1.1 webpack: 5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4) + file-uri-to-path@1.0.0: + optional: true + + fill-range@4.0.0: + dependencies: + extend-shallow: 2.0.1 + is-number: 3.0.0 + repeat-string: 1.6.1 + to-regex-range: 2.1.1 + fill-range@7.0.1: dependencies: to-regex-range: 5.0.1 - finalhandler@1.3.1: + finalhandler@1.1.2: dependencies: debug: 2.6.9 - encodeurl: 2.0.0 + encodeurl: 1.0.2 escape-html: 1.0.3 - on-finished: 2.4.1 + on-finished: 2.3.0 parseurl: 1.3.3 - statuses: 2.0.1 + statuses: 1.5.0 unpipe: 1.0.0 transitivePeerDependencies: - supports-color - find-root@1.1.0: {} - find-up@4.1.0: dependencies: locate-path: 5.0.0 @@ -11931,12 +9912,14 @@ snapshots: combined-stream: 1.0.8 mime-types: 2.1.35 - format@0.2.2: {} - - forwarded@0.2.0: {} + fragment-cache@0.2.1: + dependencies: + map-cache: 0.2.2 fresh@0.5.2: {} + from@0.1.7: {} + fs-constants@1.0.0: optional: true @@ -11958,6 +9941,12 @@ snapshots: fs.realpath@1.0.0: {} + fsevents@1.2.13: + dependencies: + bindings: 1.5.0 + nan: 2.22.0 + optional: true + fsevents@2.3.3: optional: true @@ -12018,9 +10007,16 @@ snapshots: es-errors: 1.3.0 get-intrinsic: 1.2.4 + get-value@2.0.6: {} + github-from-package@0.0.0: optional: true + glob-parent@3.1.0: + dependencies: + is-glob: 3.1.0 + path-dirname: 1.0.2 + glob-parent@5.1.2: dependencies: is-glob: 4.0.3 @@ -12039,6 +10035,15 @@ snapshots: minipass: 7.1.1 path-scurry: 1.11.1 + glob@11.0.0: + dependencies: + foreground-child: 3.1.1 + jackspeak: 4.0.2 + minimatch: 10.0.1 + minipass: 7.1.2 + package-json-from-dist: 1.0.1 + path-scurry: 2.0.0 + glob@7.2.3: dependencies: fs.realpath: 1.0.0 @@ -12140,10 +10145,6 @@ snapshots: section-matter: 1.0.0 strip-bom-string: 1.0.0 - gzip-size@6.0.0: - dependencies: - duplexer: 0.1.2 - hachure-fill@0.5.2: {} handlebars@4.7.8: @@ -12177,13 +10178,32 @@ snapshots: has-symbols@1.0.3: {} - has-tostringtag@1.0.0: + has-tostringtag@1.0.0: + dependencies: + has-symbols: 1.0.3 + + has-tostringtag@1.0.2: + dependencies: + has-symbols: 1.0.3 + + has-value@0.3.1: + dependencies: + get-value: 2.0.6 + has-values: 0.1.4 + isobject: 2.1.0 + + has-value@1.0.0: dependencies: - has-symbols: 1.0.3 + get-value: 2.0.6 + has-values: 1.0.0 + isobject: 3.0.1 - has-tostringtag@1.0.2: + has-values@0.1.4: {} + + has-values@1.0.0: dependencies: - has-symbols: 1.0.3 + is-number: 3.0.0 + kind-of: 4.0.0 has@1.0.3: dependencies: @@ -12209,6 +10229,21 @@ snapshots: dependencies: function-bind: 1.1.2 + hast-util-embedded@3.0.0: + dependencies: + '@types/hast': 3.0.4 + hast-util-is-element: 3.0.0 + + hast-util-format@1.1.0: + dependencies: + '@types/hast': 3.0.4 + hast-util-embedded: 3.0.0 + hast-util-minify-whitespace: 1.0.1 + hast-util-phrasing: 3.0.1 + hast-util-whitespace: 3.0.0 + html-whitespace-sensitive-tag-names: 3.0.1 + unist-util-visit-parents: 6.0.1 + hast-util-from-dom@5.0.0: dependencies: '@types/hast': 3.0.4 @@ -12231,20 +10266,10 @@ snapshots: vfile: 6.0.3 vfile-message: 4.0.2 - hast-util-from-parse5@7.1.2: - dependencies: - '@types/hast': 2.3.10 - '@types/unist': 2.0.11 - hastscript: 7.2.0 - property-information: 6.5.0 - vfile: 5.3.7 - vfile-location: 4.1.0 - web-namespaces: 2.0.1 - hast-util-from-parse5@8.0.1: dependencies: '@types/hast': 3.0.4 - '@types/unist': 3.0.2 + '@types/unist': 3.0.3 devlop: 1.1.0 hastscript: 8.0.0 property-information: 6.5.0 @@ -12252,53 +10277,41 @@ snapshots: vfile-location: 5.0.3 web-namespaces: 2.0.1 - hast-util-is-element@3.0.0: + hast-util-has-property@3.0.0: dependencies: '@types/hast': 3.0.4 - hast-util-parse-selector@2.2.5: {} + hast-util-is-body-ok-link@3.0.1: + dependencies: + '@types/hast': 3.0.4 - hast-util-parse-selector@3.1.1: + hast-util-is-element@3.0.0: dependencies: - '@types/hast': 2.3.10 + '@types/hast': 3.0.4 - hast-util-parse-selector@4.0.0: + hast-util-minify-whitespace@1.0.1: dependencies: '@types/hast': 3.0.4 + hast-util-embedded: 3.0.0 + hast-util-is-element: 3.0.0 + hast-util-whitespace: 3.0.0 + unist-util-is: 6.0.0 - hast-util-raw@7.2.3: + hast-util-parse-selector@3.1.1: dependencies: '@types/hast': 2.3.10 - '@types/parse5': 6.0.3 - hast-util-from-parse5: 7.1.2 - hast-util-to-parse5: 7.1.0 - html-void-elements: 2.0.1 - parse5: 6.0.1 - unist-util-position: 4.0.4 - unist-util-visit: 4.1.2 - vfile: 5.3.7 - web-namespaces: 2.0.1 - zwitch: 2.0.4 - hast-util-raw@9.0.3: + hast-util-parse-selector@4.0.0: dependencies: '@types/hast': 3.0.4 - '@types/unist': 3.0.2 - '@ungap/structured-clone': 1.2.0 - hast-util-from-parse5: 8.0.1 - hast-util-to-parse5: 8.0.0 - html-void-elements: 3.0.0 - mdast-util-to-hast: 13.1.0 - parse5: 7.1.2 - unist-util-position: 5.0.0 - unist-util-visit: 5.0.0 - vfile: 6.0.1 - web-namespaces: 2.0.1 - zwitch: 2.0.4 - hast-util-sanitize@4.1.0: + hast-util-phrasing@3.0.1: dependencies: - '@types/hast': 2.3.10 + '@types/hast': 3.0.4 + hast-util-embedded: 3.0.0 + hast-util-has-property: 3.0.0 + hast-util-is-body-ok-link: 3.0.1 + hast-util-is-element: 3.0.0 hast-util-to-html@9.0.3: dependencies: @@ -12314,44 +10327,9 @@ snapshots: stringify-entities: 4.0.4 zwitch: 2.0.4 - hast-util-to-jsx-runtime@2.3.0: - dependencies: - '@types/estree': 1.0.5 - '@types/hast': 3.0.4 - '@types/unist': 3.0.2 - comma-separated-tokens: 2.0.3 - devlop: 1.1.0 - estree-util-is-identifier-name: 3.0.0 - hast-util-whitespace: 3.0.0 - mdast-util-mdx-expression: 2.0.0 - mdast-util-mdx-jsx: 3.1.2 - mdast-util-mdxjs-esm: 2.0.1 - property-information: 6.5.0 - space-separated-tokens: 2.0.2 - style-to-object: 1.0.6 - unist-util-position: 5.0.0 - vfile-message: 4.0.2 - transitivePeerDependencies: - - supports-color - - hast-util-to-parse5@7.1.0: - dependencies: - '@types/hast': 2.3.10 - comma-separated-tokens: 2.0.3 - property-information: 6.5.0 - space-separated-tokens: 2.0.2 - web-namespaces: 2.0.1 - zwitch: 2.0.4 - - hast-util-to-parse5@8.0.0: + hast-util-to-string@3.0.1: dependencies: '@types/hast': 3.0.4 - comma-separated-tokens: 2.0.3 - devlop: 1.1.0 - property-information: 6.5.0 - space-separated-tokens: 2.0.2 - web-namespaces: 2.0.1 - zwitch: 2.0.4 hast-util-to-text@4.0.2: dependencies: @@ -12360,20 +10338,10 @@ snapshots: hast-util-is-element: 3.0.0 unist-util-find-after: 5.0.0 - hast-util-whitespace@2.0.1: {} - hast-util-whitespace@3.0.0: dependencies: '@types/hast': 3.0.4 - hastscript@6.0.0: - dependencies: - '@types/hast': 2.3.10 - comma-separated-tokens: 1.0.8 - hast-util-parse-selector: 2.2.5 - property-information: 5.6.0 - space-separated-tokens: 1.1.5 - hastscript@7.2.0: dependencies: '@types/hast': 2.3.10 @@ -12395,20 +10363,12 @@ snapshots: capital-case: 1.0.4 tslib: 2.6.2 - highlight.js@10.7.3: {} - - highlight.js@11.9.0: {} - hmac-drbg@1.0.1: dependencies: hash.js: 1.1.7 minimalistic-assert: 1.0.1 minimalistic-crypto-utils: 1.0.1 - hoist-non-react-statics@3.3.2: - dependencies: - react-is: 16.13.1 - homedir-polyfill@1.0.3: dependencies: parse-passwd: 1.0.0 @@ -12419,10 +10379,10 @@ snapshots: dependencies: lru-cache: 6.0.0 - html-void-elements@2.0.1: {} - html-void-elements@3.0.0: {} + html-whitespace-sensitive-tag-names@3.0.1: {} + htmlparser2@8.0.1: dependencies: domelementtype: 2.3.0 @@ -12430,8 +10390,22 @@ snapshots: domutils: 3.0.1 entities: 4.4.0 + http-auth@3.1.3: + dependencies: + apache-crypt: 1.2.6 + apache-md5: 1.1.8 + bcryptjs: 2.4.3 + uuid: 3.4.0 + http-cache-semantics@4.1.1: {} + http-errors@1.6.3: + dependencies: + depd: 1.1.2 + inherits: 2.0.3 + setprototypeof: 1.1.0 + statuses: 1.5.0 + http-errors@2.0.0: dependencies: depd: 2.0.0 @@ -12440,6 +10414,8 @@ snapshots: statuses: 2.0.1 toidentifier: 1.0.1 + http-parser-js@0.5.8: {} + http-proxy-agent@7.0.2: dependencies: agent-base: 7.1.1 @@ -12485,12 +10461,6 @@ snapshots: ignore@5.3.1: {} - immer@10.1.1: {} - - immer@9.0.19: {} - - immer@9.0.21: {} - immutable@4.3.6: {} immutable@4.3.7: @@ -12517,14 +10487,12 @@ snapshots: once: 1.4.0 wrappy: 1.0.2 + inherits@2.0.3: {} + inherits@2.0.4: {} ini@1.3.8: {} - inline-style-parser@0.1.1: {} - - inline-style-parser@0.2.3: {} - inquirer@8.2.5: dependencies: ansi-escapes: 4.3.2 @@ -12563,29 +10531,17 @@ snapshots: interpret@3.1.1: {} - intl-messageformat@10.5.14: - dependencies: - '@formatjs/ecma402-abstract': 2.0.0 - '@formatjs/fast-memoize': 2.2.0 - '@formatjs/icu-messageformat-parser': 2.7.8 - tslib: 2.6.2 - - ipaddr.js@1.9.1: {} - is-absolute@1.0.0: dependencies: is-relative: 1.0.0 is-windows: 1.0.2 - is-alphabetical@1.0.4: {} + is-accessor-descriptor@1.0.1: + dependencies: + hasown: 2.0.2 is-alphabetical@2.0.1: {} - is-alphanumerical@1.0.4: - dependencies: - is-alphabetical: 1.0.4 - is-decimal: 1.0.4 - is-alphanumerical@2.0.1: dependencies: is-alphabetical: 2.0.1 @@ -12613,6 +10569,10 @@ snapshots: dependencies: has-bigints: 1.0.2 + is-binary-path@1.0.1: + dependencies: + binary-extensions: 1.13.1 + is-binary-path@2.1.0: dependencies: binary-extensions: 2.3.0 @@ -12622,7 +10582,7 @@ snapshots: call-bind: 1.0.2 has-tostringtag: 1.0.0 - is-buffer@2.0.5: {} + is-buffer@1.1.6: {} is-callable@1.2.7: {} @@ -12638,6 +10598,10 @@ snapshots: dependencies: hasown: 2.0.2 + is-data-descriptor@1.0.1: + dependencies: + hasown: 2.0.2 + is-data-view@1.0.1: dependencies: is-typed-array: 1.1.13 @@ -12646,14 +10610,26 @@ snapshots: dependencies: has-tostringtag: 1.0.0 - is-decimal@1.0.4: {} - is-decimal@2.0.1: {} + is-descriptor@0.1.7: + dependencies: + is-accessor-descriptor: 1.0.1 + is-data-descriptor: 1.0.1 + + is-descriptor@1.0.3: + dependencies: + is-accessor-descriptor: 1.0.1 + is-data-descriptor: 1.0.1 + is-docker@2.2.1: {} is-extendable@0.1.1: {} + is-extendable@1.0.1: + dependencies: + is-plain-object: 2.0.4 + is-extglob@2.1.1: {} is-fullwidth-code-point@3.0.0: {} @@ -12662,11 +10638,13 @@ snapshots: dependencies: has-tostringtag: 1.0.2 - is-glob@4.0.3: + is-glob@3.1.0: dependencies: is-extglob: 2.1.1 - is-hexadecimal@1.0.4: {} + is-glob@4.0.3: + dependencies: + is-extglob: 2.1.1 is-hexadecimal@2.0.1: {} @@ -12687,8 +10665,14 @@ snapshots: dependencies: has-tostringtag: 1.0.0 + is-number@3.0.0: + dependencies: + kind-of: 3.2.2 + is-number@7.0.0: {} + is-obj@3.0.0: {} + is-path-cwd@2.2.0: {} is-path-inside@3.0.3: {} @@ -12764,6 +10748,8 @@ snapshots: is-windows@1.0.2: {} + is-wsl@1.1.0: {} + is-wsl@2.2.0: dependencies: is-docker: 2.2.1 @@ -12776,6 +10762,10 @@ snapshots: isexe@2.0.0: {} + isobject@2.1.0: + dependencies: + isarray: 1.0.0 + isobject@3.0.1: {} jackspeak@2.3.6: @@ -12784,6 +10774,10 @@ snapshots: optionalDependencies: '@pkgjs/parseargs': 0.11.0 + jackspeak@4.0.2: + dependencies: + '@isaacs/cliui': 8.0.2 + jest-worker@27.5.1: dependencies: '@types/node': 20.12.12 @@ -12884,6 +10878,14 @@ snapshots: khroma@2.1.0: {} + kind-of@3.2.2: + dependencies: + is-buffer: 1.1.6 + + kind-of@4.0.0: + dependencies: + is-buffer: 1.1.6 + kind-of@6.0.3: {} kleur@3.0.3: {} @@ -12932,6 +10934,28 @@ snapshots: dependencies: uc.micro: 1.0.6 + linkify-it@5.0.0: + dependencies: + uc.micro: 2.1.0 + + live-server@1.2.2: + dependencies: + chokidar: 2.1.8 + colors: 1.4.0 + connect: 3.7.0 + cors: 2.8.5 + event-stream: 3.3.4 + faye-websocket: 0.11.4 + http-auth: 3.1.3 + morgan: 1.10.0 + object-assign: 4.1.1 + opn: 6.0.0 + proxy-middleware: 0.15.0 + send: 1.1.0 + serve-index: 1.9.1 + transitivePeerDependencies: + - supports-color + load-json-file@4.0.0: dependencies: graceful-fs: 4.2.11 @@ -13007,8 +11031,6 @@ snapshots: chalk: 5.3.0 is-unicode-supported: 1.3.0 - longest-streak@2.0.4: {} - longest-streak@3.1.0: {} loose-envify@1.4.0: @@ -13025,19 +11047,10 @@ snapshots: lowercase-keys@3.0.0: {} - lowlight@1.20.0: - dependencies: - fault: 1.0.4 - highlight.js: 10.7.3 - - lowlight@3.1.0: - dependencies: - '@types/hast': 3.0.4 - devlop: 1.1.0 - highlight.js: 11.9.0 - lru-cache@10.2.2: {} + lru-cache@11.0.2: {} + lru-cache@4.1.5: dependencies: pseudomap: 1.0.2 @@ -13067,6 +11080,12 @@ snapshots: map-obj@4.3.0: {} + map-stream@0.1.0: {} + + map-visit@1.0.0: + dependencies: + object-visit: 1.0.1 + markdown-it@12.3.2: dependencies: argparse: 2.0.1 @@ -13075,9 +11094,14 @@ snapshots: mdurl: 1.0.1 uc.micro: 1.0.6 - markdown-table@2.0.0: + markdown-it@14.1.0: dependencies: - repeat-string: 1.6.1 + argparse: 2.0.1 + entities: 4.4.0 + linkify-it: 5.0.0 + mdurl: 2.0.0 + punycode.js: 2.3.1 + uc.micro: 2.1.0 markdown-table@3.0.3: {} @@ -13089,16 +11113,6 @@ snapshots: inherits: 2.0.4 safe-buffer: 5.2.1 - mdast-util-definitions@4.0.0: - dependencies: - unist-util-visit: 2.0.3 - - mdast-util-definitions@5.1.2: - dependencies: - '@types/mdast': 3.0.15 - '@types/unist': 2.0.10 - unist-util-visit: 4.1.2 - mdast-util-directive@3.0.0: dependencies: '@types/mdast': 4.0.4 @@ -13112,19 +11126,6 @@ snapshots: transitivePeerDependencies: - supports-color - mdast-util-find-and-replace@1.1.1: - dependencies: - escape-string-regexp: 4.0.0 - unist-util-is: 4.1.0 - unist-util-visit-parents: 3.1.1 - - mdast-util-find-and-replace@2.2.2: - dependencies: - '@types/mdast': 3.0.15 - escape-string-regexp: 5.0.0 - unist-util-is: 5.2.1 - unist-util-visit-parents: 5.1.3 - mdast-util-find-and-replace@3.0.1: dependencies: '@types/mdast': 4.0.4 @@ -13132,33 +11133,6 @@ snapshots: unist-util-is: 6.0.0 unist-util-visit-parents: 6.0.1 - mdast-util-from-markdown@0.8.5: - dependencies: - '@types/mdast': 3.0.15 - mdast-util-to-string: 2.0.0 - micromark: 2.11.4 - parse-entities: 2.0.0 - unist-util-stringify-position: 2.0.3 - transitivePeerDependencies: - - supports-color - - mdast-util-from-markdown@1.3.1: - dependencies: - '@types/mdast': 3.0.15 - '@types/unist': 2.0.10 - decode-named-character-reference: 1.0.2 - mdast-util-to-string: 3.2.0 - micromark: 3.2.0 - micromark-util-decode-numeric-character-reference: 1.1.0 - micromark-util-decode-string: 1.1.0 - micromark-util-normalize-identifier: 1.1.0 - micromark-util-symbol: 1.1.0 - micromark-util-types: 1.1.0 - unist-util-stringify-position: 3.0.3 - uvu: 0.5.6 - transitivePeerDependencies: - - supports-color - mdast-util-from-markdown@2.0.1: dependencies: '@types/mdast': 4.0.4 @@ -13176,21 +11150,6 @@ snapshots: transitivePeerDependencies: - supports-color - mdast-util-gfm-autolink-literal@0.1.3: - dependencies: - ccount: 1.1.0 - mdast-util-find-and-replace: 1.1.1 - micromark: 2.11.4 - transitivePeerDependencies: - - supports-color - - mdast-util-gfm-autolink-literal@1.0.2: - dependencies: - '@types/mdast': 3.0.15 - ccount: 2.0.1 - mdast-util-find-and-replace: 2.2.2 - micromark-util-character: 1.2.0 - mdast-util-gfm-autolink-literal@2.0.0: dependencies: '@types/mdast': 4.0.4 @@ -13199,12 +11158,6 @@ snapshots: mdast-util-find-and-replace: 3.0.1 micromark-util-character: 2.1.0 - mdast-util-gfm-footnote@1.0.2: - dependencies: - '@types/mdast': 3.0.15 - mdast-util-to-markdown: 1.5.0 - micromark-util-normalize-identifier: 1.1.0 - mdast-util-gfm-footnote@2.0.0: dependencies: '@types/mdast': 4.0.4 @@ -13215,15 +11168,6 @@ snapshots: transitivePeerDependencies: - supports-color - mdast-util-gfm-strikethrough@0.2.3: - dependencies: - mdast-util-to-markdown: 0.6.5 - - mdast-util-gfm-strikethrough@1.0.2: - dependencies: - '@types/mdast': 3.0.15 - mdast-util-to-markdown: 1.5.0 - mdast-util-gfm-strikethrough@2.0.0: dependencies: '@types/mdast': 4.0.4 @@ -13232,20 +11176,6 @@ snapshots: transitivePeerDependencies: - supports-color - mdast-util-gfm-table@0.1.6: - dependencies: - markdown-table: 2.0.0 - mdast-util-to-markdown: 0.6.5 - - mdast-util-gfm-table@1.0.6: - dependencies: - '@types/mdast': 3.0.15 - markdown-table: 3.0.3 - mdast-util-from-markdown: 1.3.1 - mdast-util-to-markdown: 1.5.0 - transitivePeerDependencies: - - supports-color - mdast-util-gfm-table@2.0.0: dependencies: '@types/mdast': 4.0.4 @@ -13256,15 +11186,6 @@ snapshots: transitivePeerDependencies: - supports-color - mdast-util-gfm-task-list-item@0.1.6: - dependencies: - mdast-util-to-markdown: 0.6.5 - - mdast-util-gfm-task-list-item@1.0.2: - dependencies: - '@types/mdast': 3.0.15 - mdast-util-to-markdown: 1.5.0 - mdast-util-gfm-task-list-item@2.0.0: dependencies: '@types/mdast': 4.0.4 @@ -13274,28 +11195,6 @@ snapshots: transitivePeerDependencies: - supports-color - mdast-util-gfm@0.1.2: - dependencies: - mdast-util-gfm-autolink-literal: 0.1.3 - mdast-util-gfm-strikethrough: 0.2.3 - mdast-util-gfm-table: 0.1.6 - mdast-util-gfm-task-list-item: 0.1.6 - mdast-util-to-markdown: 0.6.5 - transitivePeerDependencies: - - supports-color - - mdast-util-gfm@2.0.1: - dependencies: - mdast-util-from-markdown: 1.3.1 - mdast-util-gfm-autolink-literal: 1.0.2 - mdast-util-gfm-footnote: 1.0.2 - mdast-util-gfm-strikethrough: 1.0.2 - mdast-util-gfm-table: 1.0.6 - mdast-util-gfm-task-list-item: 1.0.2 - mdast-util-to-markdown: 1.5.0 - transitivePeerDependencies: - - supports-color - mdast-util-gfm@3.0.0: dependencies: mdast-util-from-markdown: 2.0.1 @@ -13320,78 +11219,11 @@ snapshots: transitivePeerDependencies: - supports-color - mdast-util-mdx-expression@2.0.0: - dependencies: - '@types/estree-jsx': 1.0.5 - '@types/hast': 3.0.4 - '@types/mdast': 4.0.4 - devlop: 1.1.0 - mdast-util-from-markdown: 2.0.1 - mdast-util-to-markdown: 2.1.0 - transitivePeerDependencies: - - supports-color - - mdast-util-mdx-jsx@3.1.2: - dependencies: - '@types/estree-jsx': 1.0.5 - '@types/hast': 3.0.4 - '@types/mdast': 4.0.4 - '@types/unist': 3.0.2 - ccount: 2.0.1 - devlop: 1.1.0 - mdast-util-from-markdown: 2.0.1 - mdast-util-to-markdown: 2.1.0 - parse-entities: 4.0.1 - stringify-entities: 4.0.4 - unist-util-remove-position: 5.0.0 - unist-util-stringify-position: 4.0.0 - vfile-message: 4.0.2 - transitivePeerDependencies: - - supports-color - - mdast-util-mdxjs-esm@2.0.1: - dependencies: - '@types/estree-jsx': 1.0.5 - '@types/hast': 3.0.4 - '@types/mdast': 4.0.4 - devlop: 1.1.0 - mdast-util-from-markdown: 2.0.1 - mdast-util-to-markdown: 2.1.0 - transitivePeerDependencies: - - supports-color - - mdast-util-phrasing@3.0.1: - dependencies: - '@types/mdast': 3.0.15 - unist-util-is: 5.2.1 - mdast-util-phrasing@4.1.0: dependencies: '@types/mdast': 4.0.4 unist-util-is: 6.0.0 - mdast-util-to-hast@10.2.0: - dependencies: - '@types/mdast': 3.0.15 - '@types/unist': 2.0.11 - mdast-util-definitions: 4.0.0 - mdurl: 1.0.1 - unist-builder: 2.0.3 - unist-util-generated: 1.1.6 - unist-util-position: 3.1.0 - unist-util-visit: 2.0.3 - - mdast-util-to-hast@12.3.0: - dependencies: - '@types/hast': 2.3.10 - '@types/mdast': 3.0.15 - mdast-util-definitions: 5.1.2 - micromark-util-sanitize-uri: 1.2.0 - trim-lines: 3.0.1 - unist-util-generated: 2.0.1 - unist-util-position: 4.0.4 - unist-util-visit: 4.1.2 - mdast-util-to-hast@13.1.0: dependencies: '@types/hast': 3.0.4 @@ -13402,27 +11234,7 @@ snapshots: trim-lines: 3.0.1 unist-util-position: 5.0.0 unist-util-visit: 5.0.0 - vfile: 6.0.1 - - mdast-util-to-markdown@0.6.5: - dependencies: - '@types/unist': 2.0.11 - longest-streak: 2.0.4 - mdast-util-to-string: 2.0.0 - parse-entities: 2.0.0 - repeat-string: 1.6.1 - zwitch: 1.0.5 - - mdast-util-to-markdown@1.5.0: - dependencies: - '@types/mdast': 3.0.15 - '@types/unist': 2.0.11 - longest-streak: 3.1.0 - mdast-util-phrasing: 3.0.1 - mdast-util-to-string: 3.2.0 - micromark-util-decode-string: 1.1.0 - unist-util-visit: 4.1.2 - zwitch: 2.0.4 + vfile: 6.0.3 mdast-util-to-markdown@2.1.0: dependencies: @@ -13435,19 +11247,13 @@ snapshots: unist-util-visit: 5.0.0 zwitch: 2.0.4 - mdast-util-to-string@2.0.0: {} - - mdast-util-to-string@3.2.0: - dependencies: - '@types/mdast': 3.0.15 - mdast-util-to-string@4.0.0: dependencies: '@types/mdast': 4.0.4 mdurl@1.0.1: {} - media-typer@0.3.0: {} + mdurl@2.0.0: {} memorystream@0.3.1: {} @@ -13465,8 +11271,6 @@ snapshots: type-fest: 0.13.1 yargs-parser: 18.1.3 - merge-descriptors@1.0.3: {} - merge-stream@2.0.0: {} merge2@1.4.1: {} @@ -13495,27 +11299,6 @@ snapshots: transitivePeerDependencies: - supports-color - methods@1.1.2: {} - - micromark-core-commonmark@1.1.0: - dependencies: - decode-named-character-reference: 1.0.2 - micromark-factory-destination: 1.1.0 - micromark-factory-label: 1.1.0 - micromark-factory-space: 1.1.0 - micromark-factory-title: 1.1.0 - micromark-factory-whitespace: 1.1.0 - micromark-util-character: 1.2.0 - micromark-util-chunked: 1.1.0 - micromark-util-classify-character: 1.1.0 - micromark-util-html-tag-name: 1.2.0 - micromark-util-normalize-identifier: 1.1.0 - micromark-util-resolve-all: 1.1.0 - micromark-util-subtokenize: 1.1.0 - micromark-util-symbol: 1.1.0 - micromark-util-types: 1.1.0 - uvu: 0.5.6 - micromark-core-commonmark@2.0.1: dependencies: decode-named-character-reference: 1.0.2 @@ -13545,20 +11328,6 @@ snapshots: micromark-util-types: 2.0.0 parse-entities: 4.0.1 - micromark-extension-gfm-autolink-literal@0.5.7: - dependencies: - micromark: 2.11.4 - transitivePeerDependencies: - - supports-color - - micromark-extension-gfm-autolink-literal@1.0.3: - dependencies: - micromark-util-character: 1.2.0 - micromark-util-sanitize-uri: 1.2.0 - micromark-util-symbol: 1.1.0 - micromark-util-types: 1.1.0 - uvu: 0.5.6 - micromark-extension-gfm-autolink-literal@2.0.0: dependencies: micromark-util-character: 2.1.0 @@ -13566,17 +11335,6 @@ snapshots: micromark-util-symbol: 2.0.0 micromark-util-types: 2.0.0 - micromark-extension-gfm-footnote@1.0.4: - dependencies: - micromark-core-commonmark: 1.1.0 - micromark-factory-space: 1.1.0 - micromark-util-character: 1.2.0 - micromark-util-normalize-identifier: 1.1.0 - micromark-util-sanitize-uri: 1.2.0 - micromark-util-symbol: 1.1.0 - micromark-util-types: 1.1.0 - uvu: 0.5.6 - micromark-extension-gfm-footnote@2.0.0: dependencies: devlop: 1.1.0 @@ -13588,21 +11346,6 @@ snapshots: micromark-util-symbol: 2.0.0 micromark-util-types: 2.0.0 - micromark-extension-gfm-strikethrough@0.6.5: - dependencies: - micromark: 2.11.4 - transitivePeerDependencies: - - supports-color - - micromark-extension-gfm-strikethrough@1.0.4: - dependencies: - micromark-util-chunked: 1.1.0 - micromark-util-classify-character: 1.1.0 - micromark-util-resolve-all: 1.1.0 - micromark-util-symbol: 1.1.0 - micromark-util-types: 1.1.0 - uvu: 0.5.6 - micromark-extension-gfm-strikethrough@2.0.0: dependencies: devlop: 1.1.0 @@ -13612,20 +11355,6 @@ snapshots: micromark-util-symbol: 2.0.0 micromark-util-types: 2.0.0 - micromark-extension-gfm-table@0.4.3: - dependencies: - micromark: 2.11.4 - transitivePeerDependencies: - - supports-color - - micromark-extension-gfm-table@1.0.5: - dependencies: - micromark-factory-space: 1.1.0 - micromark-util-character: 1.2.0 - micromark-util-symbol: 1.1.0 - micromark-util-types: 1.1.0 - uvu: 0.5.6 - micromark-extension-gfm-table@2.0.0: dependencies: devlop: 1.1.0 @@ -13634,30 +11363,10 @@ snapshots: micromark-util-symbol: 2.0.0 micromark-util-types: 2.0.0 - micromark-extension-gfm-tagfilter@0.3.0: {} - - micromark-extension-gfm-tagfilter@1.0.1: - dependencies: - micromark-util-types: 1.1.0 - micromark-extension-gfm-tagfilter@2.0.0: dependencies: micromark-util-types: 2.0.0 - micromark-extension-gfm-task-list-item@0.3.3: - dependencies: - micromark: 2.11.4 - transitivePeerDependencies: - - supports-color - - micromark-extension-gfm-task-list-item@1.0.3: - dependencies: - micromark-factory-space: 1.1.0 - micromark-util-character: 1.2.0 - micromark-util-symbol: 1.1.0 - micromark-util-types: 1.1.0 - uvu: 0.5.6 - micromark-extension-gfm-task-list-item@2.0.1: dependencies: devlop: 1.1.0 @@ -13666,28 +11375,6 @@ snapshots: micromark-util-symbol: 2.0.0 micromark-util-types: 2.0.0 - micromark-extension-gfm@0.3.3: - dependencies: - micromark: 2.11.4 - micromark-extension-gfm-autolink-literal: 0.5.7 - micromark-extension-gfm-strikethrough: 0.6.5 - micromark-extension-gfm-table: 0.4.3 - micromark-extension-gfm-tagfilter: 0.3.0 - micromark-extension-gfm-task-list-item: 0.3.3 - transitivePeerDependencies: - - supports-color - - micromark-extension-gfm@2.0.1: - dependencies: - micromark-extension-gfm-autolink-literal: 1.0.3 - micromark-extension-gfm-footnote: 1.0.4 - micromark-extension-gfm-strikethrough: 1.0.4 - micromark-extension-gfm-table: 1.0.5 - micromark-extension-gfm-tagfilter: 1.0.1 - micromark-extension-gfm-task-list-item: 1.0.3 - micromark-util-combine-extensions: 1.1.0 - micromark-util-types: 1.1.0 - micromark-extension-gfm@3.0.0: dependencies: micromark-extension-gfm-autolink-literal: 2.0.0 @@ -13709,25 +11396,12 @@ snapshots: micromark-util-symbol: 2.0.0 micromark-util-types: 2.0.0 - micromark-factory-destination@1.1.0: - dependencies: - micromark-util-character: 1.2.0 - micromark-util-symbol: 1.1.0 - micromark-util-types: 1.1.0 - micromark-factory-destination@2.0.0: dependencies: micromark-util-character: 2.1.0 micromark-util-symbol: 2.0.0 micromark-util-types: 2.0.0 - micromark-factory-label@1.1.0: - dependencies: - micromark-util-character: 1.2.0 - micromark-util-symbol: 1.1.0 - micromark-util-types: 1.1.0 - uvu: 0.5.6 - micromark-factory-label@2.0.0: dependencies: devlop: 1.1.0 @@ -13735,23 +11409,11 @@ snapshots: micromark-util-symbol: 2.0.0 micromark-util-types: 2.0.0 - micromark-factory-space@1.1.0: - dependencies: - micromark-util-character: 1.2.0 - micromark-util-types: 1.1.0 - micromark-factory-space@2.0.0: dependencies: micromark-util-character: 2.1.0 micromark-util-types: 2.0.0 - micromark-factory-title@1.1.0: - dependencies: - micromark-factory-space: 1.1.0 - micromark-util-character: 1.2.0 - micromark-util-symbol: 1.1.0 - micromark-util-types: 1.1.0 - micromark-factory-title@2.0.0: dependencies: micromark-factory-space: 2.0.0 @@ -13759,13 +11421,6 @@ snapshots: micromark-util-symbol: 2.0.0 micromark-util-types: 2.0.0 - micromark-factory-whitespace@1.1.0: - dependencies: - micromark-factory-space: 1.1.0 - micromark-util-character: 1.2.0 - micromark-util-symbol: 1.1.0 - micromark-util-types: 1.1.0 - micromark-factory-whitespace@2.0.0: dependencies: micromark-factory-space: 2.0.0 @@ -13773,61 +11428,30 @@ snapshots: micromark-util-symbol: 2.0.0 micromark-util-types: 2.0.0 - micromark-util-character@1.2.0: - dependencies: - micromark-util-symbol: 1.1.0 - micromark-util-types: 1.1.0 - micromark-util-character@2.1.0: dependencies: micromark-util-symbol: 2.0.0 micromark-util-types: 2.0.0 - micromark-util-chunked@1.1.0: - dependencies: - micromark-util-symbol: 1.1.0 - micromark-util-chunked@2.0.0: dependencies: micromark-util-symbol: 2.0.0 - micromark-util-classify-character@1.1.0: - dependencies: - micromark-util-character: 1.2.0 - micromark-util-symbol: 1.1.0 - micromark-util-types: 1.1.0 - micromark-util-classify-character@2.0.0: dependencies: micromark-util-character: 2.1.0 micromark-util-symbol: 2.0.0 micromark-util-types: 2.0.0 - micromark-util-combine-extensions@1.1.0: - dependencies: - micromark-util-chunked: 1.1.0 - micromark-util-types: 1.1.0 - micromark-util-combine-extensions@2.0.0: dependencies: micromark-util-chunked: 2.0.0 micromark-util-types: 2.0.0 - micromark-util-decode-numeric-character-reference@1.1.0: - dependencies: - micromark-util-symbol: 1.1.0 - micromark-util-decode-numeric-character-reference@2.0.1: dependencies: micromark-util-symbol: 2.0.0 - micromark-util-decode-string@1.1.0: - dependencies: - decode-named-character-reference: 1.0.2 - micromark-util-character: 1.2.0 - micromark-util-decode-numeric-character-reference: 1.1.0 - micromark-util-symbol: 1.1.0 - micromark-util-decode-string@2.0.0: dependencies: decode-named-character-reference: 1.0.2 @@ -13835,49 +11459,24 @@ snapshots: micromark-util-decode-numeric-character-reference: 2.0.1 micromark-util-symbol: 2.0.0 - micromark-util-encode@1.1.0: {} - micromark-util-encode@2.0.0: {} - micromark-util-html-tag-name@1.2.0: {} - micromark-util-html-tag-name@2.0.0: {} - micromark-util-normalize-identifier@1.1.0: - dependencies: - micromark-util-symbol: 1.1.0 - micromark-util-normalize-identifier@2.0.0: dependencies: micromark-util-symbol: 2.0.0 - micromark-util-resolve-all@1.1.0: - dependencies: - micromark-util-types: 1.1.0 - micromark-util-resolve-all@2.0.0: dependencies: micromark-util-types: 2.0.0 - micromark-util-sanitize-uri@1.2.0: - dependencies: - micromark-util-character: 1.2.0 - micromark-util-encode: 1.1.0 - micromark-util-symbol: 1.1.0 - micromark-util-sanitize-uri@2.0.0: dependencies: micromark-util-character: 2.1.0 micromark-util-encode: 2.0.0 micromark-util-symbol: 2.0.0 - micromark-util-subtokenize@1.1.0: - dependencies: - micromark-util-chunked: 1.1.0 - micromark-util-symbol: 1.1.0 - micromark-util-types: 1.1.0 - uvu: 0.5.6 - micromark-util-subtokenize@2.0.1: dependencies: devlop: 1.1.0 @@ -13885,43 +11484,10 @@ snapshots: micromark-util-symbol: 2.0.0 micromark-util-types: 2.0.0 - micromark-util-symbol@1.1.0: {} - micromark-util-symbol@2.0.0: {} - micromark-util-types@1.1.0: {} - micromark-util-types@2.0.0: {} - micromark@2.11.4: - dependencies: - debug: 4.3.7 - parse-entities: 2.0.0 - transitivePeerDependencies: - - supports-color - - micromark@3.2.0: - dependencies: - '@types/debug': 4.1.12 - debug: 4.3.7 - decode-named-character-reference: 1.0.2 - micromark-core-commonmark: 1.1.0 - micromark-factory-space: 1.1.0 - micromark-util-character: 1.2.0 - micromark-util-chunked: 1.1.0 - micromark-util-combine-extensions: 1.1.0 - micromark-util-decode-numeric-character-reference: 1.1.0 - micromark-util-encode: 1.1.0 - micromark-util-normalize-identifier: 1.1.0 - micromark-util-resolve-all: 1.1.0 - micromark-util-sanitize-uri: 1.2.0 - micromark-util-subtokenize: 1.1.0 - micromark-util-symbol: 1.1.0 - micromark-util-types: 1.1.0 - uvu: 0.5.6 - transitivePeerDependencies: - - supports-color - micromark@4.0.0: dependencies: '@types/debug': 4.1.12 @@ -13944,6 +11510,24 @@ snapshots: transitivePeerDependencies: - supports-color + micromatch@3.1.10: + dependencies: + arr-diff: 4.0.0 + array-unique: 0.3.2 + braces: 2.3.2 + define-property: 2.0.2 + extend-shallow: 3.0.2 + extglob: 2.0.4 + fragment-cache: 0.2.1 + kind-of: 6.0.3 + nanomatch: 1.2.13 + object.pick: 1.3.0 + regex-not: 1.0.2 + snapdragon: 0.8.2 + to-regex: 3.0.2 + transitivePeerDependencies: + - supports-color + micromatch@4.0.5: dependencies: braces: 3.0.2 @@ -13962,6 +11546,8 @@ snapshots: mime@1.6.0: {} + mime@4.0.4: {} + mimic-fn@2.1.0: {} mimic-fn@4.0.0: {} @@ -13976,6 +11562,10 @@ snapshots: minimalistic-crypto-utils@1.0.1: {} + minimatch@10.0.1: + dependencies: + brace-expansion: 2.0.1 + minimatch@3.1.2: dependencies: brace-expansion: 1.1.11 @@ -14008,11 +11598,18 @@ snapshots: minipass@7.1.1: {} + minipass@7.1.2: {} + minizlib@2.1.2: dependencies: minipass: 3.3.6 yallist: 4.0.0 + mixin-deep@1.3.2: + dependencies: + for-in: 1.0.2 + is-extendable: 1.0.1 + mixme@0.5.10: {} mkdirp-classic@0.5.3: @@ -14034,9 +11631,17 @@ snapshots: pkg-types: 1.2.0 ufo: 1.5.4 - mri@1.2.0: {} + morgan@1.10.0: + dependencies: + basic-auth: 2.0.1 + debug: 2.6.9 + depd: 2.0.0 + on-finished: 2.3.0 + on-headers: 1.0.2 + transitivePeerDependencies: + - supports-color - mrmime@1.0.1: {} + mri@1.2.0: {} ms@2.0.0: {} @@ -14046,10 +11651,27 @@ snapshots: mute-stream@0.0.8: {} - nanoid@3.3.6: {} + nan@2.22.0: + optional: true nanoid@3.3.7: {} + nanomatch@1.2.13: + dependencies: + arr-diff: 4.0.0 + array-unique: 0.3.2 + define-property: 2.0.2 + extend-shallow: 3.0.2 + fragment-cache: 0.2.1 + is-windows: 1.0.2 + kind-of: 6.0.3 + object.pick: 1.3.0 + regex-not: 1.0.2 + snapdragon: 0.8.2 + to-regex: 3.0.2 + transitivePeerDependencies: + - supports-color + napi-build-utils@1.0.2: optional: true @@ -14061,33 +11683,6 @@ snapshots: neo-async@2.6.2: {} - next@13.4.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.79.4): - dependencies: - '@next/env': 13.4.5 - '@swc/helpers': 0.5.1 - busboy: 1.6.0 - caniuse-lite: 1.0.30001502 - postcss: 8.4.14 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - styled-jsx: 5.1.1(react@18.3.1) - watchpack: 2.4.0 - zod: 3.21.4 - optionalDependencies: - '@next/swc-darwin-arm64': 13.4.5 - '@next/swc-darwin-x64': 13.4.5 - '@next/swc-linux-arm64-gnu': 13.4.5 - '@next/swc-linux-arm64-musl': 13.4.5 - '@next/swc-linux-x64-gnu': 13.4.5 - '@next/swc-linux-x64-musl': 13.4.5 - '@next/swc-win32-arm64-msvc': 13.4.5 - '@next/swc-win32-ia32-msvc': 13.4.5 - '@next/swc-win32-x64-msvc': 13.4.5 - sass: 1.79.4 - transitivePeerDependencies: - - '@babel/core' - - babel-plugin-macros - nice-try@1.0.5: {} no-case@3.0.4: @@ -14123,7 +11718,7 @@ snapshots: title-case: 3.0.3 upper-case: 2.0.2 - node-polyfill-webpack-plugin@3.0.0(webpack@5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4)): + node-polyfill-webpack-plugin@3.0.0(webpack@5.91.0): dependencies: assert: 2.1.0 browserify-zlib: 0.2.0 @@ -14162,6 +11757,10 @@ snapshots: semver: 5.7.2 validate-npm-package-license: 3.0.4 + normalize-path@2.1.1: + dependencies: + remove-trailing-separator: 1.1.0 + normalize-path@3.0.0: {} normalize-url@8.0.1: {} @@ -14192,7 +11791,11 @@ snapshots: object-assign@4.1.1: {} - object-hash@3.0.0: {} + object-copy@0.1.0: + dependencies: + copy-descriptor: 0.1.1 + define-property: 0.2.5 + kind-of: 3.2.2 object-inspect@1.12.3: {} @@ -14205,6 +11808,10 @@ snapshots: object-keys@1.1.1: {} + object-visit@1.0.1: + dependencies: + isobject: 3.0.1 + object.assign@4.1.4: dependencies: call-bind: 1.0.2 @@ -14235,10 +11842,16 @@ snapshots: dependencies: isobject: 3.0.1 + on-finished@2.3.0: + dependencies: + ee-first: 1.1.1 + on-finished@2.4.1: dependencies: ee-first: 1.1.1 + on-headers@1.0.2: {} + once@1.4.0: dependencies: wrappy: 1.0.2 @@ -14251,13 +11864,19 @@ snapshots: dependencies: mimic-fn: 4.0.0 + oniguruma-to-js@0.4.3: + dependencies: + regex: 4.3.3 + open@8.4.2: dependencies: define-lazy-prop: 2.0.0 is-docker: 2.2.1 is-wsl: 2.2.0 - opener@1.5.2: {} + opn@6.0.0: + dependencies: + is-wsl: 1.1.0 optionator@0.9.4: dependencies: @@ -14371,6 +11990,8 @@ snapshots: p-try@2.2.0: {} + package-json-from-dist@1.0.1: {} + package-manager-detector@0.2.1: {} pako@1.0.11: {} @@ -14395,18 +12016,9 @@ snapshots: pbkdf2: 3.1.2 safe-buffer: 5.2.1 - parse-entities@2.0.0: - dependencies: - character-entities: 1.2.4 - character-entities-legacy: 1.1.4 - character-reference-invalid: 1.1.4 - is-alphanumerical: 1.0.4 - is-decimal: 1.0.4 - is-hexadecimal: 1.0.4 - parse-entities@4.0.1: dependencies: - '@types/unist': 2.0.10 + '@types/unist': 2.0.11 character-entities: 2.0.2 character-entities-legacy: 3.0.0 character-reference-invalid: 2.0.1 @@ -14433,6 +12045,8 @@ snapshots: json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 + parse-numeric-range@1.3.0: {} + parse-passwd@1.0.0: {} parse-semver@1.1.1: @@ -14444,8 +12058,6 @@ snapshots: domhandler: 5.0.3 parse5: 7.1.2 - parse5@6.0.1: {} - parse5@7.1.2: dependencies: entities: 4.4.0 @@ -14457,6 +12069,8 @@ snapshots: no-case: 3.0.4 tslib: 2.6.2 + pascalcase@0.1.1: {} + path-browserify@1.0.1: {} path-case@3.0.4: @@ -14466,6 +12080,8 @@ snapshots: path-data-parser@0.1.0: {} + path-dirname@1.0.2: {} + path-equal@1.2.5: {} path-exists@4.0.0: {} @@ -14493,7 +12109,10 @@ snapshots: lru-cache: 10.2.2 minipass: 7.1.1 - path-to-regexp@0.1.10: {} + path-scurry@2.0.0: + dependencies: + lru-cache: 11.0.2 + minipass: 7.1.2 path-type@3.0.0: dependencies: @@ -14507,6 +12126,10 @@ snapshots: pathval@1.1.1: {} + pause-stream@0.0.11: + dependencies: + through: 2.3.8 + pbkdf2@3.1.2: dependencies: create-hash: 1.2.0 @@ -14525,6 +12148,8 @@ snapshots: picomatch@3.0.1: {} + picomatch@4.0.2: {} + pidtree@0.3.1: {} pify@3.0.0: {} @@ -14558,8 +12183,6 @@ snapshots: ora: 6.1.2 v8flags: 4.0.0 - pngjs@5.0.0: {} - points-on-curve@0.2.0: {} points-on-path@0.2.1: @@ -14567,9 +12190,7 @@ snapshots: path-data-parser: 0.1.0 points-on-curve: 0.2.0 - polished@4.2.2: - dependencies: - '@babel/runtime': 7.22.5 + posix-character-classes@0.1.1: {} possible-typed-array-names@1.0.0: {} @@ -14601,18 +12222,18 @@ snapshots: postcss-value-parser@4.2.0: {} - postcss@8.4.14: - dependencies: - nanoid: 3.3.6 - picocolors: 1.0.1 - source-map-js: 1.0.2 - postcss@8.4.38: dependencies: nanoid: 3.3.7 picocolors: 1.0.1 source-map-js: 1.2.0 + postcss@8.4.47: + dependencies: + nanoid: 3.3.7 + picocolors: 1.1.0 + source-map-js: 1.2.1 + prebuild-install@7.1.1: dependencies: detect-libc: 2.0.1 @@ -14644,8 +12265,6 @@ snapshots: prettier@2.8.7: {} - prettier@2.8.8: {} - prettier@3.2.5: {} pretty-format@29.7.0: @@ -14665,10 +12284,6 @@ snapshots: prettier: 3.2.5 tslib: 2.6.2 - prismjs@1.27.0: {} - - prismjs@1.29.0: {} - process-nextick-args@2.0.1: {} process@0.11.10: {} @@ -14678,24 +12293,11 @@ snapshots: kleur: 3.0.3 sisteransi: 1.0.5 - prop-types@15.8.1: - dependencies: - loose-envify: 1.4.0 - object-assign: 4.1.1 - react-is: 16.13.1 - - property-information@5.6.0: - dependencies: - xtend: 4.0.2 - property-information@6.2.0: {} property-information@6.5.0: {} - proxy-addr@2.0.7: - dependencies: - forwarded: 0.2.0 - ipaddr.js: 1.9.1 + proxy-middleware@0.15.0: {} pseudomap@1.0.2: {} @@ -14714,26 +12316,20 @@ snapshots: once: 1.4.0 optional: true + punycode.js@2.3.1: {} + punycode@1.4.1: {} punycode@2.3.0: {} punycode@2.3.1: {} - qrcode@1.5.4: - dependencies: - dijkstrajs: 1.0.3 - pngjs: 5.0.0 - yargs: 15.4.1 + qrcode-svg@1.1.0: {} qs@6.12.1: dependencies: side-channel: 1.0.6 - qs@6.13.0: - dependencies: - side-channel: 1.0.6 - querystring-es3@0.2.1: {} queue-microtask@1.2.3: {} @@ -14748,8 +12344,6 @@ snapshots: dependencies: safe-buffer: 5.2.1 - randomcolor@0.6.2: {} - randomfill@1.0.4: dependencies: randombytes: 2.1.0 @@ -14757,13 +12351,6 @@ snapshots: range-parser@1.2.1: {} - raw-body@2.5.2: - dependencies: - bytes: 3.1.2 - http-errors: 2.0.0 - iconv-lite: 0.4.24 - unpipe: 1.0.0 - rc@1.2.8: dependencies: deep-extend: 0.6.0 @@ -14771,83 +12358,14 @@ snapshots: minimist: 1.2.8 strip-json-comments: 2.0.1 - react-collapsed@4.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1): - dependencies: - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - tiny-warning: 1.0.3 - react-dom@18.3.1(react@18.3.1): dependencies: loose-envify: 1.4.0 react: 18.3.1 scheduler: 0.23.2 - react-hook-form@7.53.0(react@18.3.1): - dependencies: - react: 18.3.1 - - react-is@16.13.1: {} - - react-is@17.0.2: {} - - react-is@18.2.0: {} - react-is@18.3.1: {} - react-lifecycles-compat@3.0.4: {} - - react-markdown@6.0.3(@types/react@18.3.2)(react@18.3.1): - dependencies: - '@types/hast': 2.3.10 - '@types/react': 18.3.2 - '@types/unist': 2.0.11 - comma-separated-tokens: 1.0.8 - prop-types: 15.8.1 - property-information: 5.6.0 - react: 18.3.1 - react-is: 17.0.2 - remark-parse: 9.0.0 - remark-rehype: 8.1.0 - space-separated-tokens: 1.1.5 - style-to-object: 0.3.0 - unified: 9.2.2 - unist-util-visit: 2.0.3 - vfile: 4.2.1 - transitivePeerDependencies: - - supports-color - - react-markdown@8.0.5(@types/react@18.3.2)(react@18.3.1): - dependencies: - '@types/hast': 2.3.10 - '@types/prop-types': 15.7.5 - '@types/react': 18.3.2 - '@types/unist': 2.0.10 - comma-separated-tokens: 2.0.3 - hast-util-whitespace: 2.0.1 - prop-types: 15.8.1 - property-information: 6.2.0 - react: 18.3.1 - react-is: 18.2.0 - remark-parse: 10.0.2 - remark-rehype: 10.1.0 - space-separated-tokens: 2.0.2 - style-to-object: 0.4.1 - unified: 10.1.2 - unist-util-visit: 4.1.2 - vfile: 5.3.7 - transitivePeerDependencies: - - supports-color - - react-modal@3.16.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1): - dependencies: - exenv: 1.2.2 - prop-types: 15.8.1 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - react-lifecycles-compat: 3.0.4 - warning: 4.0.3 - react-redux@9.1.2(@types/react@18.3.11)(react@18.3.1)(redux@5.0.1): dependencies: '@types/use-sync-external-store': 0.0.3 @@ -14857,48 +12375,7 @@ snapshots: '@types/react': 18.3.11 redux: 5.0.1 - react-redux@9.1.2(@types/react@18.3.2)(react@18.3.1)(redux@5.0.1): - dependencies: - '@types/use-sync-external-store': 0.0.3 - react: 18.3.1 - use-sync-external-store: 1.2.2(react@18.3.1) - optionalDependencies: - '@types/react': 18.3.2 - redux: 5.0.1 - - react-syntax-highlighter@15.5.0(react@18.3.1): - dependencies: - '@babel/runtime': 7.22.5 - highlight.js: 10.7.3 - lowlight: 1.20.0 - prismjs: 1.29.0 - react: 18.3.1 - refractor: 3.6.0 - - react-tabs@5.2.0(react@18.3.1): - dependencies: - clsx: 1.2.1 - prop-types: 15.8.1 - react: 18.3.1 - - react-tagcloud@2.3.1(react@18.3.1): - dependencies: - prop-types: 15.8.1 - randomcolor: 0.6.2 - react: 18.3.1 - seedrandom: 3.0.5 - shuffle-array: 1.0.1 - - react-toastify@9.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1): - dependencies: - clsx: 1.2.1 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - - react-transition-state@2.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1): - dependencies: - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) + react-refresh@0.14.2: {} react@18.3.1: dependencies: @@ -14967,6 +12444,14 @@ snapshots: dependencies: minimatch: 5.1.6 + readdirp@2.2.1: + dependencies: + graceful-fs: 4.2.11 + micromatch: 3.1.10 + readable-stream: 2.3.8 + transitivePeerDependencies: + - supports-color + readdirp@3.6.0: dependencies: picomatch: 2.3.1 @@ -14983,27 +12468,17 @@ snapshots: indent-string: 4.0.0 strip-indent: 3.0.0 - redux-persist@6.0.0(react@18.3.1)(redux@5.0.1): - dependencies: - redux: 5.0.1 - optionalDependencies: - react: 18.3.1 - - redux-thunk@3.1.0(redux@5.0.1): - dependencies: - redux: 5.0.1 + redux@5.0.1: + optional: true - redux@5.0.1: {} + regenerator-runtime@0.14.1: {} - refractor@3.6.0: + regex-not@1.0.2: dependencies: - hastscript: 6.0.0 - parse-entities: 2.0.0 - prismjs: 1.27.0 + extend-shallow: 3.0.2 + safe-regex: 1.1.0 - regenerator-runtime@0.13.11: {} - - regenerator-runtime@0.14.1: {} + regex@4.3.3: {} regexp.prototype.flags@1.4.3: dependencies: @@ -15027,13 +12502,10 @@ snapshots: dependencies: rc: 1.2.8 - rehype-highlight@7.0.0: + rehype-format@5.0.1: dependencies: '@types/hast': 3.0.4 - hast-util-to-text: 4.0.2 - lowlight: 3.1.0 - unist-util-visit: 5.0.0 - vfile: 6.0.1 + hast-util-format: 1.1.0 rehype-katex@7.0.1: dependencies: @@ -15051,31 +12523,15 @@ snapshots: hast-util-from-html: 2.0.3 unified: 11.0.5 - rehype-raw@6.1.1: - dependencies: - '@types/hast': 2.3.10 - hast-util-raw: 7.2.3 - unified: 10.1.2 - - rehype-raw@7.0.0: - dependencies: - '@types/hast': 3.0.4 - hast-util-raw: 9.0.3 - vfile: 6.0.1 - - rehype-react@8.0.0: + rehype-pretty-code@0.14.0(shiki@1.22.0): dependencies: '@types/hast': 3.0.4 - hast-util-to-jsx-runtime: 2.3.0 + hast-util-to-string: 3.0.1 + parse-numeric-range: 1.3.0 + rehype-parse: 9.0.1 + shiki: 1.22.0 unified: 11.0.5 - transitivePeerDependencies: - - supports-color - - rehype-sanitize@5.0.1: - dependencies: - '@types/hast': 2.3.10 - hast-util-sanitize: 4.1.0 - unified: 10.1.2 + unist-util-visit: 5.0.0 rehype-stringify@10.0.1: dependencies: @@ -15103,22 +12559,6 @@ snapshots: gemoji: 8.1.0 mdast-util-find-and-replace: 3.0.1 - remark-gfm@1.0.0: - dependencies: - mdast-util-gfm: 0.1.2 - micromark-extension-gfm: 0.3.3 - transitivePeerDependencies: - - supports-color - - remark-gfm@3.0.1: - dependencies: - '@types/mdast': 3.0.15 - mdast-util-gfm: 2.0.1 - micromark-extension-gfm: 2.0.1 - unified: 10.1.2 - transitivePeerDependencies: - - supports-color - remark-gfm@4.0.0: dependencies: '@types/mdast': 4.0.4 @@ -15139,14 +12579,6 @@ snapshots: transitivePeerDependencies: - supports-color - remark-parse@10.0.2: - dependencies: - '@types/mdast': 3.0.15 - mdast-util-from-markdown: 1.3.1 - unified: 10.1.2 - transitivePeerDependencies: - - supports-color - remark-parse@11.0.0: dependencies: '@types/mdast': 4.0.4 @@ -15156,19 +12588,6 @@ snapshots: transitivePeerDependencies: - supports-color - remark-parse@9.0.0: - dependencies: - mdast-util-from-markdown: 0.8.5 - transitivePeerDependencies: - - supports-color - - remark-rehype@10.1.0: - dependencies: - '@types/hast': 2.3.10 - '@types/mdast': 3.0.15 - mdast-util-to-hast: 12.3.0 - unified: 10.1.2 - remark-rehype@11.1.1: dependencies: '@types/hast': 3.0.4 @@ -15177,10 +12596,6 @@ snapshots: unified: 11.0.5 vfile: 6.0.3 - remark-rehype@8.1.0: - dependencies: - mdast-util-to-hast: 10.2.0 - remark-stringify@11.0.0: dependencies: '@types/mdast': 4.0.4 @@ -15193,6 +12608,10 @@ snapshots: hast-util-whitespace: 3.0.0 unist-util-visit: 5.0.0 + remove-trailing-separator@1.1.0: {} + + repeat-element@1.1.4: {} + repeat-string@1.6.1: {} require-directory@2.1.1: {} @@ -15201,8 +12620,6 @@ snapshots: require-main-filename@2.0.0: {} - reselect@5.1.0: {} - resolve-alpn@1.2.1: {} resolve-cwd@3.0.0: @@ -15218,6 +12635,8 @@ snapshots: resolve-from@5.0.0: {} + resolve-url@0.2.1: {} + resolve@1.22.1: dependencies: is-core-module: 2.11.0 @@ -15244,6 +12663,8 @@ snapshots: onetime: 5.1.2 signal-exit: 3.0.7 + ret@0.1.15: {} + retry@0.13.1: {} reusify@1.0.4: {} @@ -15285,6 +12706,30 @@ snapshots: '@rollup/rollup-win32-x64-msvc': 4.17.2 fsevents: 2.3.3 + rollup@4.24.3: + dependencies: + '@types/estree': 1.0.6 + optionalDependencies: + '@rollup/rollup-android-arm-eabi': 4.24.3 + '@rollup/rollup-android-arm64': 4.24.3 + '@rollup/rollup-darwin-arm64': 4.24.3 + '@rollup/rollup-darwin-x64': 4.24.3 + '@rollup/rollup-freebsd-arm64': 4.24.3 + '@rollup/rollup-freebsd-x64': 4.24.3 + '@rollup/rollup-linux-arm-gnueabihf': 4.24.3 + '@rollup/rollup-linux-arm-musleabihf': 4.24.3 + '@rollup/rollup-linux-arm64-gnu': 4.24.3 + '@rollup/rollup-linux-arm64-musl': 4.24.3 + '@rollup/rollup-linux-powerpc64le-gnu': 4.24.3 + '@rollup/rollup-linux-riscv64-gnu': 4.24.3 + '@rollup/rollup-linux-s390x-gnu': 4.24.3 + '@rollup/rollup-linux-x64-gnu': 4.24.3 + '@rollup/rollup-linux-x64-musl': 4.24.3 + '@rollup/rollup-win32-arm64-msvc': 4.24.3 + '@rollup/rollup-win32-ia32-msvc': 4.24.3 + '@rollup/rollup-win32-x64-msvc': 4.24.3 + fsevents: 2.3.3 + roughjs@4.6.6: dependencies: hachure-fill: 0.5.2 @@ -15304,10 +12749,6 @@ snapshots: dependencies: tslib: 2.6.2 - sade@1.8.1: - dependencies: - mri: 1.2.0 - safe-array-concat@1.1.2: dependencies: call-bind: 1.0.7 @@ -15331,11 +12772,15 @@ snapshots: es-errors: 1.3.0 is-regex: 1.1.4 + safe-regex@1.1.0: + dependencies: + ret: 0.1.15 + safe-stable-stringify@2.4.3: {} safer-buffer@2.1.2: {} - sass-loader@14.2.1(sass@1.77.2)(webpack@5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4)): + sass-loader@14.2.1(sass@1.77.2)(webpack@5.91.0): dependencies: neo-async: 2.6.2 optionalDependencies: @@ -15387,25 +12832,22 @@ snapshots: extend-shallow: 2.0.1 kind-of: 6.0.3 - seedrandom@3.0.5: {} - semver@5.7.2: {} semver@6.3.1: {} semver@7.6.2: {} - send@0.19.0: + send@1.1.0: dependencies: - debug: 2.6.9 - depd: 2.0.0 + debug: 4.3.7 destroy: 1.2.0 - encodeurl: 1.0.2 + encodeurl: 2.0.0 escape-html: 1.0.3 etag: 1.8.1 fresh: 0.5.2 http-errors: 2.0.0 - mime: 1.6.0 + mime-types: 2.1.35 ms: 2.1.3 on-finished: 2.4.1 range-parser: 1.2.1 @@ -15423,12 +12865,15 @@ snapshots: dependencies: randombytes: 2.1.0 - serve-static@1.16.2: + serve-index@1.9.1: dependencies: - encodeurl: 2.0.0 + accepts: 1.3.8 + batch: 0.6.1 + debug: 2.6.9 escape-html: 1.0.3 + http-errors: 1.6.3 + mime-types: 2.1.35 parseurl: 1.3.3 - send: 0.19.0 transitivePeerDependencies: - supports-color @@ -15450,8 +12895,17 @@ snapshots: functions-have-names: 1.2.3 has-property-descriptors: 1.0.2 + set-value@2.0.1: + dependencies: + extend-shallow: 2.0.1 + is-extendable: 0.1.1 + is-plain-object: 2.0.4 + split-string: 3.1.0 + setimmediate@1.0.5: {} + setprototypeof@1.1.0: {} + setprototypeof@1.2.0: {} sha.js@2.4.11: @@ -15477,7 +12931,14 @@ snapshots: shell-quote@1.7.4: {} - shuffle-array@1.0.1: {} + shiki@1.22.0: + dependencies: + '@shikijs/core': 1.22.0 + '@shikijs/engine-javascript': 1.22.0 + '@shikijs/engine-oniguruma': 1.22.0 + '@shikijs/types': 1.22.0 + '@shikijs/vscode-textmate': 9.3.0 + '@types/hast': 3.0.4 side-channel@1.0.4: dependencies: @@ -15508,12 +12969,6 @@ snapshots: simple-concat: 1.0.1 optional: true - sirv@1.0.19: - dependencies: - '@polka/url': 1.0.0-next.21 - mrmime: 1.0.1 - totalist: 1.1.0 - sisteransi@1.0.5: {} slash@3.0.0: {} @@ -15536,30 +12991,62 @@ snapshots: dot-case: 3.0.4 tslib: 2.6.2 + snapdragon-node@2.1.1: + dependencies: + define-property: 1.0.0 + isobject: 3.0.1 + snapdragon-util: 3.0.1 + + snapdragon-util@3.0.1: + dependencies: + kind-of: 3.2.2 + + snapdragon@0.8.2: + dependencies: + base: 0.11.2 + debug: 2.6.9 + define-property: 0.2.5 + extend-shallow: 2.0.1 + map-cache: 0.2.2 + source-map: 0.5.7 + source-map-resolve: 0.5.3 + use: 3.1.1 + transitivePeerDependencies: + - supports-color + sort-keys@4.2.0: dependencies: is-plain-obj: 2.1.0 - source-map-js@1.0.2: {} + sort-keys@5.1.0: + dependencies: + is-plain-obj: 4.1.0 source-map-js@1.2.0: {} - source-map-js@1.2.1: - optional: true + source-map-js@1.2.1: {} + + source-map-resolve@0.5.3: + dependencies: + atob: 2.1.2 + decode-uri-component: 0.2.2 + resolve-url: 0.2.1 + source-map-url: 0.4.1 + urix: 0.1.0 source-map-support@0.5.21: dependencies: buffer-from: 1.1.2 source-map: 0.6.1 + source-map-url@0.4.1: {} + source-map@0.5.7: {} source-map@0.6.1: {} source-map@0.7.4: {} - space-separated-tokens@1.1.5: {} - space-separated-tokens@2.0.2: {} spawndamnit@2.0.0: @@ -15581,10 +13068,25 @@ snapshots: spdx-license-ids@3.0.12: {} + split-string@3.1.0: + dependencies: + extend-shallow: 3.0.2 + + split@0.3.3: + dependencies: + through: 2.3.8 + sprintf-js@1.0.3: {} stackback@0.0.2: {} + static-extend@0.1.2: + dependencies: + define-property: 0.2.5 + object-copy: 0.1.0 + + statuses@1.5.0: {} + statuses@2.0.1: {} std-env@3.7.0: {} @@ -15596,6 +13098,10 @@ snapshots: inherits: 2.0.4 readable-stream: 3.6.2 + stream-combiner@0.0.4: + dependencies: + duplexer: 0.1.2 + stream-http@3.2.0: dependencies: builtin-status-codes: 3.0.0 @@ -15607,8 +13113,6 @@ snapshots: dependencies: mixme: 0.5.10 - streamsearch@1.1.0: {} - streamx@2.16.1: dependencies: fast-fifo: 1.3.2 @@ -15714,47 +13218,10 @@ snapshots: dependencies: js-tokens: 9.0.0 - style-loader@4.0.0(webpack@5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4)): + style-loader@4.0.0(webpack@5.91.0): dependencies: webpack: 5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4) - style-mod@4.0.0: {} - - style-to-object@0.3.0: - dependencies: - inline-style-parser: 0.1.1 - - style-to-object@0.4.1: - dependencies: - inline-style-parser: 0.1.1 - - style-to-object@1.0.6: - dependencies: - inline-style-parser: 0.2.3 - - styled-jsx@5.1.1(react@18.3.1): - dependencies: - client-only: 0.0.1 - react: 18.3.1 - - styled-system@5.1.5: - dependencies: - '@styled-system/background': 5.1.2 - '@styled-system/border': 5.1.5 - '@styled-system/color': 5.1.2 - '@styled-system/core': 5.1.2 - '@styled-system/flexbox': 5.1.2 - '@styled-system/grid': 5.1.2 - '@styled-system/layout': 5.1.2 - '@styled-system/position': 5.1.2 - '@styled-system/shadow': 5.1.2 - '@styled-system/space': 5.1.2 - '@styled-system/typography': 5.1.2 - '@styled-system/variant': 5.1.5 - object-assign: 4.1.1 - - stylis@4.2.0: {} - stylis@4.3.4: {} supports-color@5.5.0: @@ -15807,25 +13274,25 @@ snapshots: term-size@2.2.1: {} - terser-webpack-plugin@5.3.10(esbuild@0.21.3)(webpack@5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4)): + terser-webpack-plugin@5.3.10(esbuild@0.21.3)(webpack@5.91.0(esbuild@0.21.3)): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.2 terser: 5.31.0 - webpack: 5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4) + webpack: 5.91.0(esbuild@0.21.3) optionalDependencies: esbuild: 0.21.3 - terser-webpack-plugin@5.3.10(esbuild@0.21.3)(webpack@5.91.0(esbuild@0.21.3)): + terser-webpack-plugin@5.3.10(esbuild@0.21.3)(webpack@5.91.0): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.2 terser: 5.31.0 - webpack: 5.91.0(esbuild@0.21.3) + webpack: 5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4) optionalDependencies: esbuild: 0.21.3 @@ -15852,8 +13319,6 @@ snapshots: dependencies: setimmediate: 1.0.5 - tiny-warning@1.0.3: {} - tinybench@2.8.0: {} tinyexec@0.3.0: {} @@ -15874,13 +13339,27 @@ snapshots: to-fast-properties@2.0.0: {} + to-object-path@0.3.0: + dependencies: + kind-of: 3.2.2 + + to-regex-range@2.1.1: + dependencies: + is-number: 3.0.0 + repeat-string: 1.6.1 + to-regex-range@5.0.1: dependencies: is-number: 7.0.0 - toidentifier@1.0.1: {} + to-regex@3.0.2: + dependencies: + define-property: 2.0.2 + extend-shallow: 3.0.2 + regex-not: 1.0.2 + safe-regex: 1.1.0 - totalist@1.1.0: {} + toidentifier@1.0.1: {} tr46@0.0.3: {} @@ -15888,8 +13367,6 @@ snapshots: trim-newlines@3.0.1: {} - trough@1.0.5: {} - trough@2.2.0: {} ts-api-utils@1.3.0(typescript@5.4.5): @@ -15898,7 +13375,7 @@ snapshots: ts-dedent@2.2.0: {} - ts-loader@9.5.1(typescript@5.4.5)(webpack@5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4)): + ts-loader@9.5.1(typescript@5.4.5)(webpack@5.91.0): dependencies: chalk: 4.1.2 enhanced-resolve: 5.16.1 @@ -15981,11 +13458,6 @@ snapshots: type-fest@4.18.2: {} - type-is@1.6.18: - dependencies: - media-typer: 0.3.0 - mime-types: 2.1.35 - typed-array-buffer@1.0.2: dependencies: call-bind: 1.0.7 @@ -16050,6 +13522,8 @@ snapshots: uc.micro@1.0.6: {} + uc.micro@2.1.0: {} + ufo@1.5.3: {} ufo@1.5.4: {} @@ -16075,16 +13549,6 @@ snapshots: unicorn-magic@0.1.0: {} - unified@10.1.2: - dependencies: - '@types/unist': 2.0.10 - bail: 2.0.2 - extend: 3.0.2 - is-buffer: 2.0.5 - is-plain-obj: 4.1.0 - trough: 2.2.0 - vfile: 5.3.7 - unified@11.0.5: dependencies: '@types/unist': 3.0.2 @@ -16095,44 +13559,23 @@ snapshots: trough: 2.2.0 vfile: 6.0.3 - unified@9.2.2: + union-value@1.0.1: dependencies: - '@types/unist': 2.0.11 - bail: 1.0.5 - extend: 3.0.2 - is-buffer: 2.0.5 - is-plain-obj: 2.1.0 - trough: 1.0.5 - vfile: 4.2.1 - - unist-builder@2.0.3: {} + arr-union: 3.1.0 + get-value: 2.0.6 + is-extendable: 0.1.1 + set-value: 2.0.1 unist-util-find-after@5.0.0: dependencies: - '@types/unist': 3.0.2 + '@types/unist': 3.0.3 unist-util-is: 6.0.0 - unist-util-generated@1.1.6: {} - - unist-util-generated@2.0.1: {} - - unist-util-is@4.1.0: {} - - unist-util-is@5.2.1: - dependencies: - '@types/unist': 2.0.10 - unist-util-is@6.0.0: dependencies: '@types/unist': 3.0.2 unist-util-map@3.1.3: - dependencies: - '@types/unist': 2.0.10 - - unist-util-position@3.1.0: {} - - unist-util-position@4.0.4: dependencies: '@types/unist': 2.0.11 @@ -16142,48 +13585,18 @@ snapshots: unist-util-remove-position@5.0.0: dependencies: - '@types/unist': 3.0.2 + '@types/unist': 3.0.3 unist-util-visit: 5.0.0 - unist-util-stringify-position@2.0.3: - dependencies: - '@types/unist': 2.0.11 - - unist-util-stringify-position@3.0.3: - dependencies: - '@types/unist': 2.0.10 - unist-util-stringify-position@4.0.0: dependencies: '@types/unist': 3.0.3 - unist-util-visit-parents@3.1.1: - dependencies: - '@types/unist': 2.0.11 - unist-util-is: 4.1.0 - - unist-util-visit-parents@5.1.3: - dependencies: - '@types/unist': 2.0.10 - unist-util-is: 5.2.1 - unist-util-visit-parents@6.0.1: dependencies: - '@types/unist': 3.0.2 + '@types/unist': 3.0.3 unist-util-is: 6.0.0 - unist-util-visit@2.0.3: - dependencies: - '@types/unist': 2.0.11 - unist-util-is: 4.1.0 - unist-util-visit-parents: 3.1.1 - - unist-util-visit@4.1.2: - dependencies: - '@types/unist': 2.0.10 - unist-util-is: 5.2.1 - unist-util-visit-parents: 5.1.3 - unist-util-visit@5.0.0: dependencies: '@types/unist': 3.0.2 @@ -16192,8 +13605,17 @@ snapshots: universalify@0.1.2: {} + unix-crypt-td-js@1.1.4: {} + unpipe@1.0.0: {} + unset-value@1.0.0: + dependencies: + has-value: 0.3.1 + isobject: 3.0.1 + + upath@1.2.0: {} + update-browserslist-db@1.0.16(browserslist@4.23.0): dependencies: browserslist: 4.23.0 @@ -16223,6 +13645,8 @@ snapshots: dependencies: punycode: 2.3.0 + urix@0.1.0: {} + url-join@4.0.1: {} url@0.11.3: @@ -16234,6 +13658,8 @@ snapshots: dependencies: react: 18.3.1 + use@3.1.1: {} + util-deprecate@1.0.2: {} util@0.12.5: @@ -16246,17 +13672,12 @@ snapshots: utils-merge@1.0.1: {} + uuid@3.4.0: {} + uuid@8.3.2: {} uuid@9.0.1: {} - uvu@0.5.6: - dependencies: - dequal: 2.0.3 - diff: 5.1.0 - kleur: 4.1.5 - sade: 1.8.1 - v8-compile-cache-lib@3.0.1: {} v8flags@4.0.0: {} @@ -16268,51 +13689,16 @@ snapshots: vary@1.1.2: {} - vfile-location@4.1.0: - dependencies: - '@types/unist': 2.0.11 - vfile: 5.3.7 - vfile-location@5.0.3: dependencies: - '@types/unist': 3.0.2 + '@types/unist': 3.0.3 vfile: 6.0.3 - vfile-message@2.0.4: - dependencies: - '@types/unist': 2.0.11 - unist-util-stringify-position: 2.0.3 - - vfile-message@3.1.4: - dependencies: - '@types/unist': 2.0.10 - unist-util-stringify-position: 3.0.3 - vfile-message@4.0.2: dependencies: '@types/unist': 3.0.2 unist-util-stringify-position: 4.0.0 - vfile@4.2.1: - dependencies: - '@types/unist': 2.0.11 - is-buffer: 2.0.5 - unist-util-stringify-position: 2.0.3 - vfile-message: 2.0.4 - - vfile@5.3.7: - dependencies: - '@types/unist': 2.0.10 - is-buffer: 2.0.5 - unist-util-stringify-position: 3.0.3 - vfile-message: 3.1.4 - - vfile@6.0.1: - dependencies: - '@types/unist': 3.0.2 - unist-util-stringify-position: 4.0.0 - vfile-message: 4.0.2 - vfile@6.0.3: dependencies: '@types/unist': 3.0.2 @@ -16346,6 +13732,17 @@ snapshots: sass: 1.79.4 terser: 5.34.1 + vite@5.4.10(@types/node@22.7.4)(sass@1.79.4)(terser@5.34.1): + dependencies: + esbuild: 0.21.3 + postcss: 8.4.47 + rollup: 4.24.3 + optionalDependencies: + '@types/node': 22.7.4 + fsevents: 2.3.3 + sass: 1.79.4 + terser: 5.34.1 + vitest@1.6.0(@types/node@22.7.4)(sass@1.79.4)(terser@5.34.1): dependencies: '@vitest/expect': 1.6.0 @@ -16398,25 +13795,14 @@ snapshots: vscode-uri@3.0.8: {} - w3c-keyname@2.2.6: {} - walkdir@0.4.1: {} - warning@4.0.3: - dependencies: - loose-envify: 1.4.0 - - watchpack@2.4.0: - dependencies: - glob-to-regexp: 0.4.1 - graceful-fs: 4.2.11 - watchpack@2.4.1: dependencies: glob-to-regexp: 0.4.1 graceful-fs: 4.2.11 - wavesurfer.js@7.8.6: {} + wavesurfer.js@7.8.8: {} wcwidth@1.0.1: dependencies: @@ -16426,27 +13812,12 @@ snapshots: webidl-conversions@3.0.1: {} - webpack-bundle-analyzer@4.7.0: - dependencies: - acorn: 8.11.3 - acorn-walk: 8.3.2 - chalk: 4.1.2 - commander: 7.2.0 - gzip-size: 6.0.0 - lodash: 4.17.21 - opener: 1.5.2 - sirv: 1.0.19 - ws: 7.5.9 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - webpack-cli@5.1.4(webpack@5.91.0): dependencies: '@discoveryjs/json-ext': 0.5.7 - '@webpack-cli/configtest': 2.1.1(webpack-cli@5.1.4(webpack@5.91.0))(webpack@5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4)) - '@webpack-cli/info': 2.0.2(webpack-cli@5.1.4(webpack@5.91.0))(webpack@5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4)) - '@webpack-cli/serve': 2.0.5(webpack-cli@5.1.4(webpack@5.91.0))(webpack@5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4)) + '@webpack-cli/configtest': 2.1.1(webpack-cli@5.1.4)(webpack@5.91.0) + '@webpack-cli/info': 2.0.2(webpack-cli@5.1.4)(webpack@5.91.0) + '@webpack-cli/serve': 2.0.5(webpack-cli@5.1.4)(webpack@5.91.0) colorette: 2.0.20 commander: 10.0.1 cross-spawn: 7.0.3 @@ -16520,7 +13891,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(esbuild@0.21.3)(webpack@5.91.0(esbuild@0.21.3)(webpack-cli@5.1.4)) + terser-webpack-plugin: 5.3.10(esbuild@0.21.3)(webpack@5.91.0) watchpack: 2.4.1 webpack-sources: 3.2.3 optionalDependencies: @@ -16530,6 +13901,14 @@ snapshots: - esbuild - uglify-js + websocket-driver@0.7.4: + dependencies: + http-parser-js: 0.5.8 + safe-buffer: 5.2.1 + websocket-extensions: 0.1.4 + + websocket-extensions@0.1.4: {} + whatwg-url@5.0.0: dependencies: tr46: 0.0.3 @@ -16616,7 +13995,7 @@ snapshots: js-yaml: 4.1.0 write-file-atomic: 5.0.1 - ws@7.5.9: {} + ws@8.18.0: {} xml2js@0.5.0: dependencies: @@ -16637,8 +14016,6 @@ snapshots: yallist@4.0.0: {} - yaml@1.10.2: {} - yaml@2.5.1: {} yargs-parser@18.1.3: @@ -16693,12 +14070,4 @@ snapshots: compress-commons: 6.0.2 readable-stream: 4.5.2 - zod@3.17.3: {} - - zod@3.21.4: {} - - zod@3.23.8: {} - - zwitch@1.0.5: {} - zwitch@2.0.4: {} diff --git a/prettier.config.js b/prettier.config.js deleted file mode 100644 index 2c63c085..00000000 --- a/prettier.config.js +++ /dev/null @@ -1,2 +0,0 @@ -{ -} diff --git a/prettier.config.json b/prettier.config.json new file mode 100644 index 00000000..70d9ff7e --- /dev/null +++ b/prettier.config.json @@ -0,0 +1,5 @@ +{ + "trailingComma": "es5", + "singleQuote": "true", + "semi": true +} diff --git a/scripts/buildPackage.mjs b/scripts/buildPackage.mjs index 9fe7c31e..722f323a 100644 --- a/scripts/buildPackage.mjs +++ b/scripts/buildPackage.mjs @@ -32,27 +32,33 @@ export const buildPackage = async (path) => { entries.push(entry); const bundle = JSON.parse(packageJSON).bundle || []; - - const external = [ - ...Object.keys(JSON.parse(packageJSON)?.dependencies || {}).filter( - (p) => !bundle.includes(p) - ), - ...Object.keys(JSON.parse(packageJSON)?.devDependencies || {}).filter( - (p) => !bundle.includes(p) - ), - ...Object.keys(JSON.parse(packageJSON)?.peerDependencies || {}), - ]; + const external = []; + if (bundle !== "all") { + external.push( + ...[ + ...Object.keys(JSON.parse(packageJSON)?.dependencies || {}).filter( + (p) => !bundle.includes(p), + ), + ...Object.keys(JSON.parse(packageJSON)?.devDependencies || {}).filter( + (p) => !bundle.includes(p), + ), + ...Object.keys(JSON.parse(packageJSON)?.peerDependencies || {}), + ], + ); + } external.push("path"); external.push("fs"); + const platform = JSON.parse(packageJSON)?.platform || "browser"; + const commonConfig = { entryPoints: entries, outbase: path + "/src", outdir: `${path}/dist`, - jsx: "automatic", sourcemap: true, minify: false, bundle: true, + platform, external, }; diff --git a/scripts/react-shim.js b/scripts/react-shim.js deleted file mode 100644 index 7d6551af..00000000 --- a/scripts/react-shim.js +++ /dev/null @@ -1,3 +0,0 @@ -// react-shim.js -import * as React from "react"; -export { React }; diff --git a/scripts/setup.mjs b/scripts/setup.mjs deleted file mode 100644 index 29d8c4f4..00000000 --- a/scripts/setup.mjs +++ /dev/null @@ -1,68 +0,0 @@ -import fs from "fs"; -import path from "path"; -import os from "os"; -import { rimraf } from "rimraf"; - -async function makeSymlink(src, dst) { - const type = os.platform() == "win32" ? "junction" : null; - return new Promise((resolve, reject) => { - if (os.platform() == "win32" && fs.statSync(src).isFile()) { - fs.link(src, dst, (err) => { - if (err) { - console.log(err); - reject(); - } else { - resolve(); - } - }); - } else { - fs.symlink(src, dst, type, (err) => { - if (err) { - reject(); - } else { - resolve(); - } - }); - } - }); -} - -async function setup() { - rimraf.sync(path.join(process.cwd(), "platforms", "web", "book")); - await makeSymlink( - path.join(process.cwd(), "website", "en", "book"), - path.join(process.cwd(), "platforms", "web", "book"), - ); - rimraf.sync(path.join(process.cwd(), "platforms", "web", "glossary")); - await makeSymlink( - path.join(process.cwd(), "website", "en", "glossary"), - path.join(process.cwd(), "platforms", "web", "glossary"), - ); - rimraf.sync(path.join(process.cwd(), "platforms", "web", "snippets")); - await makeSymlink( - path.join(process.cwd(), "website", "en", "snippets"), - path.join(process.cwd(), "platforms", "web", "snippets"), - ); - rimraf.sync(path.join(process.cwd(), "platforms", "web", "templates")); - await makeSymlink( - path.join(process.cwd(), "website", "en", "templates"), - path.join(process.cwd(), "platforms", "web", "templates"), - ); - rimraf.sync(path.join(process.cwd(), "platforms", "web", "archives")); - await makeSymlink( - path.join(process.cwd(), "website", "en", "archives"), - path.join(process.cwd(), "platforms", "web", "archives"), - ); - rimraf.sync(path.join(process.cwd(), "platforms", "web", "public")); - await makeSymlink( - path.join(process.cwd(), "website", "en", "public"), - path.join(process.cwd(), "platforms", "web", "public"), - ); - rimraf.sync(path.join(process.cwd(), "platforms", "web", "hyperbook.json")); - await makeSymlink( - path.join(process.cwd(), "website", "en", "hyperbook.json"), - path.join(process.cwd(), "platforms", "web", "hyperbook.json"), - ); -} - -setup(); diff --git a/scripts/watcher.mjs b/scripts/watcher.mjs index 1cfcb769..1a1a420c 100644 --- a/scripts/watcher.mjs +++ b/scripts/watcher.mjs @@ -11,6 +11,7 @@ const watcher = chokidar.watch( "packages/**/*.ts", "packages/**/*.tsx", "packages/**/*.css", + "packages/markdown/assets/**/*", "platforms/**/*.ts", "platforms/**/*.css", "platforms/**/*.tsx", @@ -22,7 +23,7 @@ const watcher = chokidar.watch( persistent: true, usePolling: true, interval: 500, - } + }, ); log(chalk.yellow.bold("Watching all files... 👀")); diff --git a/scripts/websiteDev.mjs b/scripts/websiteDev.mjs deleted file mode 100644 index de4e7958..00000000 --- a/scripts/websiteDev.mjs +++ /dev/null @@ -1,25 +0,0 @@ -import path from "path"; -import { spawn } from "child_process"; -import { dirname } from "path"; -import { fileURLToPath } from "url"; - -const __dirname = dirname(fileURLToPath(import.meta.url)); - -const hyperbook = path.join( - __dirname, - "..", - "packages", - "hyperbook", - "dist", - "index.js" -); -const lang = process.argv[2]; - -spawn(`node`, [hyperbook, "dev"], { - stdio: "inherit", - cwd: path.join(__dirname, "..", "website"), - env: { - ...process.env, - HYPERBOOK_LOCAL_DEV: true, - }, -}); diff --git a/website/de/archives/project-1/main.c b/website/de/archives/project-1/main.c index e69de29b..0cee53ff 100644 --- a/website/de/archives/project-1/main.c +++ b/website/de/archives/project-1/main.c @@ -0,0 +1,6 @@ +#include + +int main() { + printf("Hello World\n"); + return 0; +} \ No newline at end of file diff --git a/website/de/book/advanced/custom-scripts.md b/website/de/book/advanced/custom-scripts.md new file mode 100644 index 00000000..cee822ed --- /dev/null +++ b/website/de/book/advanced/custom-scripts.md @@ -0,0 +1,30 @@ +--- +name: Benutzerdefinierte Skripte +scripts: + - /custom_script.js +lang: de +--- + +# Benutzerdefinierte Skripte + +:::alert{warn} +Benutzerdefinierte Skripte sollten am besten mit aktivierter Option `allowDangerousHtml` verwendet werden. Es wird dringend empfohlen, keine Hyperbook-Elemente anzusprechen und nur benutzerdefinierte Elemente zu targeten. Die Klassen, die wir für das Hyperbook verwenden, gelten nicht als stabil und könnten sich in der Zukunft ändern. Daher sollten Hyperbook-Elemente nur mit Vorsicht angesprochen werden. +::: + +```md title="Frontmatter" +scripts: + - /custom_script.js +``` + +```js title="custom_script.js" +const colors = ["red", "blue", "yellow", "green", "pink"]; +const els = document.getElementsByClassName("random-color"); +for (let el of els) { + setInterval(() => { + const color = colors[Math.floor(Math.random() * colors.length)]; + el.style.color = color; + }, 500); +} +``` + +
    Am I a Chameleon?
    diff --git a/website/de/book/advanced/custom-styles.md b/website/de/book/advanced/custom-styles.md new file mode 100644 index 00000000..c6c00870 --- /dev/null +++ b/website/de/book/advanced/custom-styles.md @@ -0,0 +1,26 @@ +--- +name: Benutzerdefinierte Stile +styles: + - /custom_style.css +lang: de +--- + +# Benutzerdefinierte Stile + +:::alert{warn} +Benutzerdefinierte Stile sollten am besten mit aktivierter Option `allowDangerousHtml` verwendet werden. Es wird dringend empfohlen, keine Hyperbook-Elemente zu stylen und nur benutzerdefinierte Elemente zu stylen. Die Klassen, die wir für das Hyperbook verwenden, gelten nicht als stabil und könnten sich in der Zukunft ändern. Daher sollten Hyperbook-Elemente nur mit Vorsicht gestylt werden. +::: + +```md title="Frontmatter" +styles: + - /custom_style.css +``` + +```css title="custom_style.css +.custom { + color: red; + font-size: 3rem; +} +``` + +
    I am styled!
    diff --git a/website/de/book/configuration/book.md b/website/de/book/configuration/book.md index 61a88398..939ca42e 100644 --- a/website/de/book/configuration/book.md +++ b/website/de/book/configuration/book.md @@ -32,7 +32,9 @@ von Optionen, die du definieren kannst. Optionen mit einem "\*" müssen gesetzt | repo.label | Der Bezeichner für den Repository-Link. | | elements | Hier können einzelne Elemente konfiguriert werden. Schaue dazu auf die Elementseiten. | | links | Hier können Links hinzugefügt werden, welche in der rechten oberen Ecke angezeigt werden. Schaue dir dazu das untere Beispiel an. | -| trailingSlash | Exportiert alle Datei in eigene Verzeichnisse und erzeugt nur index.html Dateien. | +| styles | Hier können Links zu eigenen CSS-Styles gesetzt werden. | +| scripts | Hier können Links zu eigenen JavaScript-Dateien gesetzt werden. | +| allowDangerousHtml | Erlaube HTML im Hyperbook. Dies kann zu inkompatibilität in zukünftigen Versionen führen. | Hier ist eine Beispielkonfiguration: diff --git a/website/de/book/configuration/page.md b/website/de/book/configuration/page.md index 60e6662e..91d68bae 100644 --- a/website/de/book/configuration/page.md +++ b/website/de/book/configuration/page.md @@ -41,3 +41,5 @@ Hier sind die Eigenschaften, die im Frontmatter gesetzt werden können: | next | Ein absoluter Pfad zur nächsten Seite. Dies überschreibt index und hide. Du kannst außerdem nichts setzen, sodass der Button versteckt wird. | | hide | Verstecke die Seite von der Navigation. | | toc | Zeige ein Inhaltsverzeichnis. Diese ist standardmäßig aktiviert für Seiten und deaktiviert für Begriffe im Glossar. | +| styles | Hier können Links zu eigenen CSS-Styles gesetzt werden. | +| scripts | Hier können Links zu eigenen JavaScript-Dateien gesetzt werden. | diff --git a/website/de/book/elements/bitflow.md b/website/de/book/elements/bitflow.md deleted file mode 100644 index 666d4dff..00000000 --- a/website/de/book/elements/bitflow.md +++ /dev/null @@ -1,42 +0,0 @@ ---- -name: Bitflow -lang: de ---- - -# Bitflow - -[Bitflow](https://bitflow.openpatch.org/) ist eine gute Möglichkeit um -dynamische flow-basierte Tests durchzuführen. Es kann zum Beispiel am Ende -eines Kapitels eingesetzt werden, als ein Check up. - -## Flow - -```md -::flow{src="/flow.json"} -``` - -::flow{src="/flow.json"} - -Die Höhe eines Flows ist standardmäßig 400px. Sie kann aber überschreiben werden. - -```md -::flow{src="/flow.json" height="800px"} -``` - -::flow{src="/flow.json" height="800px"} - -## Task - -```md -::task{src="/task.json"} -``` - -::task{src="/task.json"} - -Die Höhe einer Aufgabe ist standardmäßig 400px. Sie kann aber überschreiben werden. - -```md -::task{src="/task.json" height="800px"} -``` - -::task{src="/task.json" height="800px"} diff --git a/website/de/book/elements/excalidraw.md b/website/de/book/elements/excalidraw.md index a60e6a50..28c9558e 100644 --- a/website/de/book/elements/excalidraw.md +++ b/website/de/book/elements/excalidraw.md @@ -15,7 +15,7 @@ Excalidraw Element erstellen (siehe unten). Das Excalidraw Element akzeptiert drei Argumente: -- **file**: Der Pfad zur Excalidraw-Datei. +- **src**: Der Pfad zur Excalidraw-Datei. - **aspectRatio**: Um dein Excalidraw auf jedem Gerät schön anzeigen zu lassen, musst du ein Seitenverhältnis definieren. Zum Beispiel: "16/9", "4/3", "1/1". - **autoZoom**: Standardmäßig wird dein Excalidraw so anzeigt, dass alles zu sehen ist, damit auch auf kleinen Geräten dein Excalidraw gut funktioniert. Diese Verhalten kannst du hier deaktivieren. - **edit**: Erlaubt das Bearbeiten des Excalidraw. diff --git a/website/de/book/elements/math.md b/website/de/book/elements/math.md index aa2f3369..f18e27a3 100644 --- a/website/de/book/elements/math.md +++ b/website/de/book/elements/math.md @@ -1,5 +1,5 @@ --- -name: Mathmathik +name: Mathmatik lang: de --- diff --git a/website/de/book/elements/pagelist.md b/website/de/book/elements/pagelist.md new file mode 100644 index 00000000..8fa2efb7 --- /dev/null +++ b/website/de/book/elements/pagelist.md @@ -0,0 +1,81 @@ +--- +name: Seitenverzeichnis +lang: de +--- + +# Seitenverzeichnis + +Das ::pagelist-Element ermöglicht es, ein dynamisches Seitenverzeichnis zu erstellen, das eine Liste von Seiten auf einer Webseite anzeigt. Dabei können verschiedene Optionen verwendet werden, um die angezeigten Seiten zu filtern, das Format der Liste zu wählen und die Reihenfolge zu bestimmen. + +```md +::pagelist{format="" source="" orderBy=""} +``` + +## Parameter + +- format + - ol: Erzeugt eine geordnete Liste + - ul: Erzeugt eine ungeordnete Liste + - glossary: Erzeugt einen gruppierte Liste + - #: Nutzt das Snippet zum Erstellen der Liste. Dabei bekommt das Snippet `pages` übergeben, welches alle Seiten enthält. Diese können dann verarbeitet werden. +- source + - href: Der Link der Seite + - name: Der Name der Seite + - keyword: Die Keywords der Seite +- orderBy + - name: Sortiert nach dem Namen der Seite + - index: Sortiert nach dem Index der Seite + - href: Sortiert nach der URL + - asc: Aufsteigend + - desc: Absteigend + +## Beispiel + +### Glossar + +```md +::pagelist{format="glossary" source="href(/glossary/.*)"} +``` + +::pagelist{format="glossary" source="href(/glossary/.*)"} + +### Ein Glossar aller Elemente + +```md +::pagelist{format="glossary" source="href(/elements/.*)"} +``` + +::pagelist{format="glossary" source="href(/elements/.*)"} + +### Ungeordnete Liste nach dem href + +```md +::pagelist{format="ul" source="href(/elements/.*)" orderBy="name:desc"} +``` + +::pagelist{format="ul" source="href(/elements/.*)" orderBy="name:desc"} + +### Geordnete Liste mit IDE im Namen und einmal zusätzlich mit SQL in der URL + +```md +::pagelist{format="ol" source="name(.*IDE.*)"} +::pagelist{format="ol" source="href(.*SQL.*) AND name(.*IDE.*)"} +``` + +::pagelist{format="ol" source="name(.*IDE.*)"} +::pagelist{format="ol" source="href(.*sql.*) AND name(.*IDE.*)"} + +### Eigenes Snippet + +Das Snippet liegt im Ordner `snippets` mit dem Namen `list.md.hbs` +```hbs +{{#each pages}} +- {{{ name }}}: [{{ href }}]({{ href }}) +{{/each}} +``` + +```md +::pagelist{format="#list" source="name(^V.*)"} +``` + +::pagelist{format="#list" source="name(^V.*)"} diff --git a/website/de/book/hosting/custom.md b/website/de/book/hosting/custom.md index 82dd8013..7e3ce819 100644 --- a/website/de/book/hosting/custom.md +++ b/website/de/book/hosting/custom.md @@ -5,10 +5,9 @@ lang: de # Auf eigenen Server bereitstellen -Du muss nur den Ausgabeordner auf deinen Server kopieren, nachdem du den setup und build Befehl ausgeführt hast. +Du muss nur den Ausgabeordner auf deinen Server kopieren, nachdem du den build Befehl ausgeführt hast. ``` -npx hyperbook setup npx hyperbook build cp -R .hyperbook/out /var/www/my-website diff --git a/website/de/book/hosting/edugitpages.md b/website/de/book/hosting/edugitpages.md index 3baac01a..bd0b43b1 100644 --- a/website/de/book/hosting/edugitpages.md +++ b/website/de/book/hosting/edugitpages.md @@ -27,7 +27,6 @@ image: node:latest pages: stage: deploy script: - - npx hyperbook setup - npx hyperbook build - mkdir .public - cp -r ./.hyperbook/out/* .public diff --git a/website/de/book/hosting/ghpages.md b/website/de/book/hosting/ghpages.md index 5e2974b6..94861ba2 100644 --- a/website/de/book/hosting/ghpages.md +++ b/website/de/book/hosting/ghpages.md @@ -29,9 +29,8 @@ jobs: steps: - uses: actions/checkout@v2 - - name: Setup and Build + - name: Build run: | - npx hyperbook setup npx hyperbook build - name: Deploy diff --git a/website/de/book/hosting/glpages.md b/website/de/book/hosting/glpages.md index 4a06e434..fba15f97 100644 --- a/website/de/book/hosting/glpages.md +++ b/website/de/book/hosting/glpages.md @@ -16,7 +16,6 @@ image: node:latest pages: stage: deploy script: - - npx hyperbook setup - npx hyperbook build - mkdir .public - cp -r ./.hyperbook/out/* .public diff --git a/website/de/book/hosting/vercel.md b/website/de/book/hosting/vercel.md index 081c43cf..db82b99f 100644 --- a/website/de/book/hosting/vercel.md +++ b/website/de/book/hosting/vercel.md @@ -29,10 +29,4 @@ Für den `output directory` benutze: .hyperbook/out ``` -Für den `install command` benutze: - -``` -npx hyperbook setup -``` - Jetzt ist alles eingerichtet. Viel Spaß mit deinem Hyperbook! diff --git a/website/de/book/index.md b/website/de/book/index.md index 694ad8ff..2c38b7a2 100644 --- a/website/de/book/index.md +++ b/website/de/book/index.md @@ -29,7 +29,7 @@ Du kannst mit der Erstellung deines Hyperbook auf drei Arten starten. Wähle die :::tab{title="CLI" id="cli"} -Du benötigst [Node](https://nodejs.org/) version 16 oder höherer auf deinen System. +Du benötigst [Node](https://nodejs.org/) version 16 oder höherer auf deinem System. 1. Führe `npx hyperbook new my-new-hyperbook` aus und folge den Anweisungen, um dein erstes Hyperbook zu erstellen. 1. Führe `npx hyperbook dev` aus, um den Entwicklungsserver zu starten. @@ -98,12 +98,6 @@ Um die neuste Version des Hyperbook CLI zu bekommen, benutzte den folgenden Befe npm update hyperbook --global ``` -Danach update dein Hyperbook mit dem Befehl: - -```bash -hyperbook setup -``` - ::: :::tab{title="Web IDE" id="web-ide"} diff --git a/website/de/book/markdown/code.md b/website/de/book/markdown/code.md index 963597d4..55e7fe02 100644 --- a/website/de/book/markdown/code.md +++ b/website/de/book/markdown/code.md @@ -13,28 +13,42 @@ Inzeiliger `Quelltext` ist von `rückwärts geneigten Hochkommata` umschlossen. Mehrzeilige Quelltextblöcke sind von Zeilen mit drei rückwärts geneigten Hochkommata ``` umschlossen. -```` -```python +````md +```python showLineNumbers title="MyPython.py" {1} /test/#r /Python/#y /syntax/#l s = "Python syntax highlighting" -print s +print s # test ``` ``` Wenn keine Sprache angegeben ist, -dann wird versucht die Sprache zu erkennen. -Wenn du kein Syntaxhighlighting möchtest, -kannst du als Sprache `plain` angeben. +dann wir `plain` gesetzt. ``` ```` -```python +```python showLineNumbers title="MyPython.py" {1} /test/#r /Python/#y /syntax/#l /print/ s = "Python syntax highlighting" -print s +print s # test ``` ``` Wenn keine Sprache angegeben ist, -dann wird versucht die Sprache zu erkennen. -Wenn du kein Syntaxhighlighting möchtest, -kannst du als Sprache `plain` angeben. +dann wir `plain` gesetzt. +``` + +## Konfiguration + +Du kannst die Standardwerte der Quelltextblöcke in der `hyperbook.json` ändern. Gültige Werte für die Themes findest du hier: https://shiki.style/themes#themes. + +```json +{ + "elements": { + "code": { + "showLineNumbers": true, + "theme": { + "dark": "dracula", + "light": "evergreen" + } + } + } +} ``` diff --git a/website/de/hyperbook.json b/website/de/hyperbook.json index b62859f2..65de4258 100644 --- a/website/de/hyperbook.json +++ b/website/de/hyperbook.json @@ -5,6 +5,7 @@ "name": "OpenPatch", "url": "https://openpatch.org" }, + "allowDangerousHtml": true, "fonts": { "heading": "/fonts/Montserrat-VariableFont_wght.ttf", "body": "/fonts/Montserrat-VariableFont_wght.ttf", diff --git a/website/de/public/custom_script.js b/website/de/public/custom_script.js new file mode 100644 index 00000000..de07574d --- /dev/null +++ b/website/de/public/custom_script.js @@ -0,0 +1,8 @@ +const colors = ["red", "blue", "yellow", "green", "pink"]; +const els = document.getElementsByClassName("random-color"); +for (let el of els) { + setInterval(() => { + const color = colors[Math.floor(Math.random() * colors.length)]; + el.style.color = color; + }, 500); +} diff --git a/website/de/public/custom_style.css b/website/de/public/custom_style.css new file mode 100644 index 00000000..7aced7fd --- /dev/null +++ b/website/de/public/custom_style.css @@ -0,0 +1,4 @@ +.custom { + color: red; + font-size: 3rem; +} diff --git a/website/de/public/flow.json b/website/de/public/flow.json deleted file mode 100644 index 5b3d6d9f..00000000 --- a/website/de/public/flow.json +++ /dev/null @@ -1,99 +0,0 @@ -{ - "draft": false, - "description": "", - "language": "en", - "visibility": "public", - "edges": [ - { - "id": "edge-1", - "source": "start-node", - "target": "task-node" - }, - { - "id": "edge-2", - "source": "task-node", - "target": "end-node" - } - ], - "name": "Example", - "nodes": [ - { - "id": "start-node", - "position": { - "x": 0, - "y": 0 - }, - "type": "start", - "data": { - "subtype": "simple", - "description": "", - "name": "Start", - "view": { - "markdown": "This is a demo assessment. It just consists of one choice bit. Enjoy :)", - "title": "Welcome!" - } - } - }, - { - "type": "task", - "id": "task-node", - "position": { - "x": 0, - "y": 0 - }, - "data": { - "description": "", - "evaluation": { - "correct": ["b"], - "enableRetry": true, - "mode": "auto", - "showFeedback": true - }, - "feedback": { - "patterns": {}, - "choices": { - "c": { - "checkedFeedback": { - "message": "It is a trap!", - "severity": "warning" - } - } - } - }, - "name": "Definition Bitflow", - "subtype": "choice", - "view": { - "instruction": "What is Bitflow?", - "variant": "single", - "choices": [ - { - "markdown": "Ice Cream" - }, - { - "markdown": "Assessment Library" - }, - { - "markdown": "**Click me**" - } - ] - } - } - }, - { - "id": "end-node", - "position": { - "x": 0, - "y": 0 - }, - "type": "end", - "data": { - "subtype": "tries", - "description": "", - "name": "End", - "view": { - "markdown": "# Your results" - } - } - } - ] -} diff --git a/website/de/public/task.json b/website/de/public/task.json deleted file mode 100644 index 4d2baf52..00000000 --- a/website/de/public/task.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "description": "", - "evaluation": { - "correct": ["b"], - "enableRetry": true, - "mode": "auto", - "showFeedback": true - }, - "feedback": { - "patterns": {}, - "choices": { - "c": { - "checkedFeedback": { - "message": "It is a trap!", - "severity": "warning" - } - } - } - }, - "name": "Definition Bitflow", - "subtype": "choice", - "view": { - "instruction": "What is Bitflow?", - "variant": "single", - "choices": [ - { - "markdown": "Ice Cream" - }, - { - "markdown": "Assessment Library" - }, - { - "markdown": "**Click me**" - } - ] - } -} diff --git a/website/de/snippets/list.md.hbs b/website/de/snippets/list.md.hbs new file mode 100644 index 00000000..dedb011c --- /dev/null +++ b/website/de/snippets/list.md.hbs @@ -0,0 +1,3 @@ +{{#each pages}} +- {{{ name }}}: [{{ href }}]({{ href }}) +{{/each}} diff --git a/website/de/snippets/password.md.hbs b/website/de/snippets/password.md.hbs index 51bd57a1..1763f909 100644 --- a/website/de/snippets/password.md.hbs +++ b/website/de/snippets/password.md.hbs @@ -6,9 +6,10 @@ {{#if hint}} + :::alert{info} -Hyperbook is the password. +Hyperbook is the password. ::: diff --git a/website/en/book/advanced/custom-scripts.md b/website/en/book/advanced/custom-scripts.md new file mode 100644 index 00000000..e1712a1a --- /dev/null +++ b/website/en/book/advanced/custom-scripts.md @@ -0,0 +1,29 @@ +--- +name: Custom Scripts +scripts: + - /custom_script.js +--- + +# Custom Scripts + +:::alert{warn} +Custom scripts are best used with `allowDangerousHtml` enabled. It is highly recommended to not target hyperbook elements and to only target custom elements. The classes we use for the hyperbook are not considered stable and might change in the future. Therefore, target hyperbook elements only with caution. +::: + +```md title="Frontmatter" +scripts: + - /custom_script.js +``` + +```js title="custom_script.js" +const colors = ["red", "blue", "yellow", "green", "pink"]; +const els = document.getElementsByClassName("random-color"); +for (let el of els) { + setInterval(() => { + const color = colors[Math.floor(Math.random() * colors.length)]; + el.style.color = color; + }, 500); +} +``` + +
    Am I a Chameleon?
    diff --git a/website/en/book/advanced/custom-styles.md b/website/en/book/advanced/custom-styles.md new file mode 100644 index 00000000..d11bba59 --- /dev/null +++ b/website/en/book/advanced/custom-styles.md @@ -0,0 +1,25 @@ +--- +name: Custom Styles +styles: + - /custom_style.css +--- + +# Custom Styles + +:::alert{warn} +Custom styles are best used with `allowDangerousHtml` enabled. It is highly recommanded to not style hyperbook elements and to only style custom elements. The classes we use for the hyperbook are not considered stable and might change in the future. Therefore, style hyperbook elements only with caution. +::: + +```md title="Frontmatter" +styles: + - /custom_style.css +``` + +```css title="custom_style.css +.custom { + color: red; + font-size: 3rem; +} +``` + +
    I am styled!
    diff --git a/website/en/book/configuration/book.md b/website/en/book/configuration/book.md index c13d903f..c9e523fd 100644 --- a/website/en/book/configuration/book.md +++ b/website/en/book/configuration/book.md @@ -31,7 +31,9 @@ can and part wise must set (indicated by a \*). | repo.label | The label for the repo link. | | elements | Here you can configure the elements. See the element pages for configuration options. | | links | Here you can add custom links, which will be shown in the top right corner. See the example below on how to use them. | -| trailingSlash | Outputs all files into ther own folders and produces only index.html files. | +| styles | Here you can add Links to custom CSS files. | +| scripts | Here you can add links to custom JavaScript files. | +| allowDangerousHtml | Allow HTML. This can lead to incompatibilities in future versions. | Here is an example configuration: diff --git a/website/en/book/configuration/page.md b/website/en/book/configuration/page.md index 31ecb0c5..f3ac6870 100644 --- a/website/en/book/configuration/page.md +++ b/website/en/book/configuration/page.md @@ -32,3 +32,5 @@ Here are the properties you can set in the frontmatter: | next | The absoulte path to the next page. This overrides index and hide. You can also set it to nothing and it will hide the next button. | | hide | Hides the page from the navigation | | toc | Show or hide a table of content for the page. This is on for pages and off for glossary entries by default | +| styles | Here you can add Links to custom CSS files. | +| scripts | Here you can add links to custom JavaScript files. | diff --git a/website/en/book/elements/bitflow.md b/website/en/book/elements/bitflow.md deleted file mode 100644 index b9069276..00000000 --- a/website/en/book/elements/bitflow.md +++ /dev/null @@ -1,40 +0,0 @@ ---- -name: Bitflow ---- - -# Bitflow - -[Bitflow](https://bitflow.openpatch.org/) is a great way for conducting dynamic flow-based -assessments. It can, for example, be used at the end of a chapter as a check-up. - -## Flow - -```md -::flow{src="/flow.json"} -``` - -::flow{src="/flow.json"} - -The height of a flow defaults to 400px, but you can set a custom one like so: - -```md -::flow{src="/flow.json" height="800px"} -``` - -::flow{src="/flow.json" height="800px"} - -## Task - -```md -::task{src="/task.json"} -``` - -::task{src="/task.json"} - -The height of a task defaults to 400px, but you can set a custom one like so: - -```md -::task{src="/task.json" height="800px"} -``` - -::task{src="/task.json" height="800px"} diff --git a/website/en/book/elements/excalidraw.md b/website/en/book/elements/excalidraw.md index 9666f91c..62040733 100644 --- a/website/en/book/elements/excalidraw.md +++ b/website/en/book/elements/excalidraw.md @@ -17,7 +17,7 @@ hit save. The Excalidraw will be saved at the place which you have defined. The Excalidraw element accepts these arguments: -- **file**: A path to an Excalidraw file, if it does not exists it will be created, when using the editor in development mode. +- **src**: A path to an Excalidraw file, if it does not exists it will be created, when using the editor in development mode. - **aspectRatio**: To keep your Excalidraw nice on every device you need to provide an aspect-ratio, e.g.: "16/9", "4/3", "1/1". - **autoZoom**: By default your Excalidraw will auto zoom to look the same even when viewed on a smaller device. You can disable it by passing false to autoZoom. - **edit**: Allows to edit the Excalidraw. diff --git a/website/en/book/elements/pagelist.md b/website/en/book/elements/pagelist.md new file mode 100644 index 00000000..f6b534c3 --- /dev/null +++ b/website/en/book/elements/pagelist.md @@ -0,0 +1,81 @@ +--- +name: Pagelist +lang: en +--- + +# Pagelist + +The ::pagelist element allows you to create a dynamic page directory that displays a list of pages on a website. Various options can be used to filter the displayed pages, choose the format of the list, and determine the order. + +```md +::pagelist{format="" source="" orderBy=""} +``` + +## Parameter + +- format + - ol: Creates an ordered list + - ul: Creates an unordered list + - glossary: Creates a grouped list + - #: Uses the snippet to generate the list. The snippet receives pages, which contains all pages, and can then process them. +- source + - href: The page link + - name: The page name + - keyword: The page keywords +- orderBy + - name: Sorts by the page name + - index: Sorts by the page index + - href: Sorts by the URL + - asc: Ascending + - desc: Descending + +## Examples + +### Glossary + +```md +::pagelist{format="glossary" source="href(/glossary/.*)"} +``` + +::pagelist{format="glossary" source="href(/glossary/.*)"} + +### A Glossary of all Elements + +```md +::pagelist{format="glossary" source="href(/elements/.*)"} +``` + +::pagelist{format="glossary" source="href(/elements/.*)"} + +### Unordered List by href + +```md +::pagelist{format="ul" source="href(/elements/.*)" orderBy="name:desc"} +``` + +::pagelist{format="ul" source="href(/elements/.*)" orderBy="name:desc"} + +### Ordered List with IDE in the namen and additionally with SQL in the URL + +```md +::pagelist{format="ol" source="name(.*IDE.*)"} +::pagelist{format="ol" source="href(.*SQL.*) AND name(.*IDE.*)"} +``` + +::pagelist{format="ol" source="name(.*IDE.*)"} +::pagelist{format="ol" source="href(.*sql.*) AND name(.*IDE.*)"} + +### Custom snippet + +The snippet is located in the `snippets` folger with the name `list.md.hbs` +```hbs +{{#each pages}} +- {{{ name }}}: [{{ href }}]({{ href }}) +{{/each}} +``` + +```md +::pagelist{format="#list" source="name(^V.*)"} +``` + +::pagelist{format="#list" source="name(^V.*)"} diff --git a/website/en/book/hosting/custom.md b/website/en/book/hosting/custom.md index 45e6e1a8..2259a9d2 100644 --- a/website/en/book/hosting/custom.md +++ b/website/en/book/hosting/custom.md @@ -4,10 +4,9 @@ name: Custom # Deploy on Your Server -You just need to copy the output folder after running the setup and build command. +You just need to copy the output folder after running build command. ``` -npx hyperbook setup npx hyperbook build cp -R .hyperbook/out /var/www/my-website diff --git a/website/en/book/hosting/edugitpages.md b/website/en/book/hosting/edugitpages.md index 876e2b6a..0b41890c 100644 --- a/website/en/book/hosting/edugitpages.md +++ b/website/en/book/hosting/edugitpages.md @@ -22,7 +22,6 @@ image: node:latest pages: stage: deploy script: - - npx hyperbook setup - npx hyperbook build - mkdir .public - cp -r ./.hyperbook/out/* .public diff --git a/website/en/book/hosting/ghpages.md b/website/en/book/hosting/ghpages.md index 8599d1b0..f6f64c43 100644 --- a/website/en/book/hosting/ghpages.md +++ b/website/en/book/hosting/ghpages.md @@ -27,9 +27,8 @@ jobs: steps: - uses: actions/checkout@v2 - - name: Setup and Build + - name: Build run: | - npx hyperbook setup npx hyperbook build - name: Deploy diff --git a/website/en/book/hosting/glpages.md b/website/en/book/hosting/glpages.md index aae78080..05795c03 100644 --- a/website/en/book/hosting/glpages.md +++ b/website/en/book/hosting/glpages.md @@ -14,7 +14,6 @@ image: node:latest pages: stage: deploy script: - - npx hyperbook setup - npx hyperbook build - mkdir .public - cp -r ./.hyperbook/out/* .public diff --git a/website/en/book/hosting/vercel.md b/website/en/book/hosting/vercel.md index 1a35e15e..7c1fad80 100644 --- a/website/en/book/hosting/vercel.md +++ b/website/en/book/hosting/vercel.md @@ -29,10 +29,4 @@ For the `output directory` you should use: .hyperbook/out ``` -For the `install command` you should use: - -``` -npx hyperbook setup -``` - Now you have everything setup. Enjoy your Hyperbook! diff --git a/website/en/book/index.md b/website/en/book/index.md index 4ce4322f..8b613a82 100644 --- a/website/en/book/index.md +++ b/website/en/book/index.md @@ -102,12 +102,6 @@ Update to the latest release of Hyperbook CLI using the following command. npm update hyperbook --global ``` -The Hyperbook template can be updated by running the setup command: - -```bash -hyperbook setup -``` - ::: :::tab{title="Web IDE" id="web-ide"} diff --git a/website/en/book/markdown/code.md b/website/en/book/markdown/code.md index 341bdff6..b1ce0b8d 100644 --- a/website/en/book/markdown/code.md +++ b/website/en/book/markdown/code.md @@ -13,7 +13,7 @@ Inline `code` has `back-ticks around` it. Multiline code block are fenced by lines with three back-ticks ```. ````md -```python +```python showLineNumbers title="MyPython.py" {1} /test/#r /Python/#y /syntax/#l /print/ s = "Python syntax highlighting" print s ``` @@ -26,14 +26,30 @@ uses the language `plain`. ``` ```` -```python +```python showLineNumbers title="MyPython.py" {1} /test/#r /Python/#y /syntax/#l /print/ s = "Python syntax highlighting" print s ``` ``` If no language is indicated, -the language will be guessed. -If you do not want syntax-highlighting, -uses the language `plain`. +plain will be used. +``` + +## Configuration + +You can define default values for code blocks in your `hyperbook.json`. You can find valid values for themes here: https://shiki.style/themes#themes. + +```json +{ + "elements": { + "code": { + "showLineNumbers": true, + "theme": { + "dark": "dracula", + "light": "evergreen" + } + } + } +} ``` diff --git a/website/en/hyperbook.json b/website/en/hyperbook.json index 3a53665d..cb4e0638 100644 --- a/website/en/hyperbook.json +++ b/website/en/hyperbook.json @@ -5,6 +5,7 @@ "name": "OpenPatch", "url": "https://openpatch.org" }, + "allowDangerousHtml": true, "fonts": { "heading": "/fonts/Montserrat-VariableFont_wght.ttf", "body": "/fonts/Montserrat-VariableFont_wght.ttf", diff --git a/website/en/public/custom_script.js b/website/en/public/custom_script.js new file mode 100644 index 00000000..de07574d --- /dev/null +++ b/website/en/public/custom_script.js @@ -0,0 +1,8 @@ +const colors = ["red", "blue", "yellow", "green", "pink"]; +const els = document.getElementsByClassName("random-color"); +for (let el of els) { + setInterval(() => { + const color = colors[Math.floor(Math.random() * colors.length)]; + el.style.color = color; + }, 500); +} diff --git a/website/en/public/custom_style.css b/website/en/public/custom_style.css new file mode 100644 index 00000000..7aced7fd --- /dev/null +++ b/website/en/public/custom_style.css @@ -0,0 +1,4 @@ +.custom { + color: red; + font-size: 3rem; +} diff --git a/website/en/public/flow.json b/website/en/public/flow.json deleted file mode 100644 index 5b3d6d9f..00000000 --- a/website/en/public/flow.json +++ /dev/null @@ -1,99 +0,0 @@ -{ - "draft": false, - "description": "", - "language": "en", - "visibility": "public", - "edges": [ - { - "id": "edge-1", - "source": "start-node", - "target": "task-node" - }, - { - "id": "edge-2", - "source": "task-node", - "target": "end-node" - } - ], - "name": "Example", - "nodes": [ - { - "id": "start-node", - "position": { - "x": 0, - "y": 0 - }, - "type": "start", - "data": { - "subtype": "simple", - "description": "", - "name": "Start", - "view": { - "markdown": "This is a demo assessment. It just consists of one choice bit. Enjoy :)", - "title": "Welcome!" - } - } - }, - { - "type": "task", - "id": "task-node", - "position": { - "x": 0, - "y": 0 - }, - "data": { - "description": "", - "evaluation": { - "correct": ["b"], - "enableRetry": true, - "mode": "auto", - "showFeedback": true - }, - "feedback": { - "patterns": {}, - "choices": { - "c": { - "checkedFeedback": { - "message": "It is a trap!", - "severity": "warning" - } - } - } - }, - "name": "Definition Bitflow", - "subtype": "choice", - "view": { - "instruction": "What is Bitflow?", - "variant": "single", - "choices": [ - { - "markdown": "Ice Cream" - }, - { - "markdown": "Assessment Library" - }, - { - "markdown": "**Click me**" - } - ] - } - } - }, - { - "id": "end-node", - "position": { - "x": 0, - "y": 0 - }, - "type": "end", - "data": { - "subtype": "tries", - "description": "", - "name": "End", - "view": { - "markdown": "# Your results" - } - } - } - ] -} diff --git a/website/en/public/task.json b/website/en/public/task.json deleted file mode 100644 index 4d2baf52..00000000 --- a/website/en/public/task.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "description": "", - "evaluation": { - "correct": ["b"], - "enableRetry": true, - "mode": "auto", - "showFeedback": true - }, - "feedback": { - "patterns": {}, - "choices": { - "c": { - "checkedFeedback": { - "message": "It is a trap!", - "severity": "warning" - } - } - } - }, - "name": "Definition Bitflow", - "subtype": "choice", - "view": { - "instruction": "What is Bitflow?", - "variant": "single", - "choices": [ - { - "markdown": "Ice Cream" - }, - { - "markdown": "Assessment Library" - }, - { - "markdown": "**Click me**" - } - ] - } -} diff --git a/website/en/snippets/list.md.hbs b/website/en/snippets/list.md.hbs new file mode 100644 index 00000000..dedb011c --- /dev/null +++ b/website/en/snippets/list.md.hbs @@ -0,0 +1,3 @@ +{{#each pages}} +- {{{ name }}}: [{{ href }}]({{ href }}) +{{/each}}