diff --git a/.dvmrc b/.dvmrc new file mode 100644 index 000000000..be1bd4184 --- /dev/null +++ b/.dvmrc @@ -0,0 +1 @@ +canary diff --git a/.github/actions/setup-deno-workspace/action.yml b/.github/actions/setup-deno-workspace/action.yml index 926a51153..5df4e2f51 100644 --- a/.github/actions/setup-deno-workspace/action.yml +++ b/.github/actions/setup-deno-workspace/action.yml @@ -6,12 +6,15 @@ runs: steps: - uses: denoland/setup-deno@v2 with: - deno-version: '2.8.3' + deno-version-file: .dvmrc - name: Cache dependencies uses: actions/cache@v4 with: path: node_modules key: ${{ runner.os }}-deno-${{ hashFiles('deno.lock') }} + - name: Generate UI manifest + shell: bash + run: deno run --allow-read --allow-write tools/generate-ui-manifest.ts - name: Install dependencies shell: bash run: deno install --node-modules-dir diff --git a/.github/workflows/autoflow-ci.yml b/.github/workflows/autoflow-ci.yml index 8a28f03c8..f9ed0b7f0 100644 --- a/.github/workflows/autoflow-ci.yml +++ b/.github/workflows/autoflow-ci.yml @@ -15,6 +15,6 @@ jobs: - uses: actions/checkout@v4 - uses: ./.github/actions/setup-deno-workspace - name: Install Playwright browsers - run: deno run -A npm:playwright@1.59.1 install --with-deps chromium + run: ./node_modules/.bin/playwright install --with-deps chromium - name: AutoFlow3 CI gate run: deno task autoflow:ci diff --git a/.github/workflows/autoflow-release.yml b/.github/workflows/autoflow-release.yml index bd9c52112..05283523e 100644 --- a/.github/workflows/autoflow-release.yml +++ b/.github/workflows/autoflow-release.yml @@ -43,7 +43,7 @@ jobs: node-version: '22' registry-url: 'https://registry.npmjs.org' - name: Install Playwright browsers - run: deno run -A npm:playwright@1.59.1 install --with-deps chromium + run: ./node_modules/.bin/playwright install --with-deps chromium - name: Configure Git run: | git config user.name "github-actions[bot]" diff --git a/.gitignore b/.gitignore index 9433e51c7..34c096dec 100644 --- a/.gitignore +++ b/.gitignore @@ -76,6 +76,7 @@ packages/*/*.tgz # Root-level logo source files (design originals, keep local) /open-logo*.svg /open-favicon.svg +/brand/exports/ www/dist/ dist/ diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 1459f0283..e737ed67d 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -8,14 +8,22 @@ release-document impact before it is merged. ## Development Setup +openElement is developed with Deno. The repository pins the Deno version in +`.dvmrc` so that local formatting, linting, and type-checking match CI. + ```bash git clone https://github.com/open-element/openelement.git cd openelement +# Install the Deno version listed in .dvmrc (e.g. via dvm, mise, or asdf) deno task dev deno task build deno task test ``` +Published packages are pure ESM and runtime-agnostic: consumers can run them +under Deno, Node, Bun, or edge runtimes. Deno is used only as the development, +build, and release toolchain. + ## Project Structure ```text diff --git a/brand/concepts/A_single_geometric_logo_mark_t_2026-06-26T16-24-51.png b/brand/concepts/A_single_geometric_logo_mark_t_2026-06-26T16-24-51.png new file mode 100644 index 000000000..712cf76da Binary files /dev/null and b/brand/concepts/A_single_geometric_logo_mark_t_2026-06-26T16-24-51.png differ diff --git a/brand/concepts/Abstract_minimalist_logo_mark__2026-06-26T16-26-13.png b/brand/concepts/Abstract_minimalist_logo_mark__2026-06-26T16-26-13.png new file mode 100644 index 000000000..b05ed5a45 Binary files /dev/null and b/brand/concepts/Abstract_minimalist_logo_mark__2026-06-26T16-26-13.png differ diff --git a/brand/concepts/Minimalist_logo_mark_for_an_op_2026-06-26T16-23-49.png b/brand/concepts/Minimalist_logo_mark_for_an_op_2026-06-26T16-23-49.png new file mode 100644 index 000000000..09d3d4d90 Binary files /dev/null and b/brand/concepts/Minimalist_logo_mark_for_an_op_2026-06-26T16-23-49.png differ diff --git a/brand/logo-horizontal.svg b/brand/logo-horizontal.svg new file mode 100644 index 000000000..1cf8f0d27 --- /dev/null +++ b/brand/logo-horizontal.svg @@ -0,0 +1,23 @@ + + + openElement — Horizontal + + + + + open + Element + + diff --git a/brand/logo-mark-inverted.svg b/brand/logo-mark-inverted.svg new file mode 100644 index 000000000..e597756e1 --- /dev/null +++ b/brand/logo-mark-inverted.svg @@ -0,0 +1,10 @@ + + + openElement — Inverted + + diff --git a/brand/logo-mark.svg b/brand/logo-mark.svg new file mode 100644 index 000000000..7082f2401 --- /dev/null +++ b/brand/logo-mark.svg @@ -0,0 +1,10 @@ + + + openElement + + diff --git a/brand/logo-vertical.svg b/brand/logo-vertical.svg new file mode 100644 index 000000000..4b11f495b --- /dev/null +++ b/brand/logo-vertical.svg @@ -0,0 +1,33 @@ + + + openElement — Vertical + + + + + open + Element + + WEB COMPONENTS · FULL-STACK + diff --git a/brand/preview.html b/brand/preview.html new file mode 100644 index 000000000..6313fdf70 --- /dev/null +++ b/brand/preview.html @@ -0,0 +1,500 @@ + + + + + + openElement — Brand + + + + + +
+
+ + + +

openElement

+ web components · full-stack +
+
+ +
+
+ Mark +

One circle, one subtraction.

+

+ Solid circle (R=50, center 64,64). Subtract an offset circle (R=44, center 78,50). The + result is a crescent — asymmetric, directional, alive. No letters, no decoration, one + geometric operation. +

+
+
+ +
+
+ Lockups +

Horizontal & vertical.

+
+ + + + + + open + Element + + +
+

HORIZONTAL · 520 × 128

+
+ + + + + + open + Element + + +
+

INVERTED · DARK

+
+
+
+ + + + + + open + Element + + + WEB COMPONENTS · FULL-STACK + + +
+

VERTICAL · LIGHT

+
+
+
+ + + + + + open + Element + + + WEB COMPONENTS · FULL-STACK + + +
+

VERTICAL · INVERTED

+
+
+
+
+ +
+
+ Merch +

One form. Every surface.

+
+
+
+
+ + + +
+
+
T-shirtSCREEN
+
+
+
+ + + +
+
StickerVINYL
+
+
+
+ + + +
+
StickerDARK
+
+
+
+ + + +
+
PinENAMEL
+
+
+
+
+ + + + diff --git a/deno.json b/deno.json index 9bc7800ad..ddc48a52a 100644 --- a/deno.json +++ b/deno.json @@ -12,10 +12,24 @@ "./packages/app", "./packages/router", "./packages/protocol", - "./www" + "./www", + "./examples/deno-desktop-reader" ], "imports": { "@std/fs/walk": "jsr:@std/fs@^1.0.0/walk", + "@std/assert": "jsr:@std/assert@^1.0.0", + "@openelement/adapter-vite": "./packages/adapter-vite/src/index.ts", + "@openelement/app": "./packages/app/src/index.ts", + "@openelement/app/preact": "./packages/app/src/preact.ts", + "@openelement/app/spa": "./packages/app/src/spa.ts", + "@openelement/core": "./packages/core/src/index.ts", + "@openelement/core/hydrate": "./packages/core/src/hydrate.ts", + "@openelement/element": "./packages/element/src/index.ts", + "@openelement/protocol": "./packages/protocol/src/index.ts", + "@openelement/router": "./packages/router/src/data-context.ts", + "@openelement/router/client-router": "./packages/router/src/client-router.ts", + "@openelement/router/data-context": "./packages/router/src/data-context.ts", + "@openelement/ui": "./packages/ui/src/index.ts", "hono": "npm:hono@^4.12", "@hono/vite-dev-server": "npm:@hono/vite-dev-server@^0.25.3", "vite": "npm:vite@8.0.10", @@ -26,7 +40,10 @@ "preact": "npm:preact@^10.28.0", "preact-render-to-string": "npm:preact-render-to-string@^6.5.0", "@preact/signals-core": "npm:@preact/signals-core@^1.12.1", - "flexsearch": "npm:flexsearch@^0.7" + "@preact/signals": "npm:@preact/signals@^2.9.0", + "flexsearch": "npm:flexsearch@^0.7", + "@shoelace-style/shoelace": "npm:@shoelace-style/shoelace@^2.19.0", + "@material/web/checkbox/checkbox.js": "npm:@material/web@^2.0.0/checkbox/checkbox.js" }, "vendor": true, "nodeModulesDir": "manual", @@ -53,6 +70,7 @@ "consumer:local": "deno run --allow-read --allow-write --allow-run --allow-env --allow-net tools/consumer-local.ts", "consumer:packaged": "deno run --allow-read --allow-write --allow-run --allow-env --allow-net tools/consumer-local.ts --packaged-import-map-check", "third-party-wc:smoke": "deno run --allow-read --allow-write --allow-run --allow-env --allow-net --allow-sys tools/third-party-wc-smoke.ts", + "desktop-reader:smoke": "cd examples/deno-desktop-reader && deno test -A --no-check app/__tests__/", "package-artifacts:check": "deno run --allow-read --allow-write --allow-run --allow-net --allow-env tools/check-package-artifacts.ts", "publish:jsr:core": "cd packages/core && deno publish", "pack": "deno task generate:ui-manifest && deno run --allow-read --allow-write --allow-run tools/publish-npm.ts pack", @@ -76,6 +94,7 @@ "test:coverage": "deno test --coverage=.coverage --allow-read --allow-write --allow-env --allow-net --allow-run && deno coverage .coverage --lcov > .coverage/lcov.info", "test:watch": "deno test --allow-read --allow-write --allow-env --allow-net --allow-run --watch", "test:e2e": "deno run -A npm:@playwright/test@1.59.1 test --config www/e2e/playwright.config.ts --project=chromium", + "test:visual-smoke": "deno task build && cd examples/deno-desktop-reader && deno run -A --config ../../deno.json npm:vite build && cd ../.. && deno run -A --unsafe-proto tools/visual-smoke.ts", "test:e2e:browsers": "deno run -A npm:@playwright/test@1.59.1 test --config www/e2e/playwright.config.ts", "test:e2e:install": "deno run -A npm:playwright@1.59.1 install chromium", "test:e2e:browsers:install": "deno run -A npm:playwright@1.59.1 install chromium firefox webkit", @@ -85,8 +104,8 @@ "consumer:core-smoke": "deno run -A tools/consumer-smoke.ts --local", "typecheck": "deno task generate:ui-manifest && deno run --allow-read --allow-run tools/run-package-graph-task.ts typecheck", "lint": "deno lint", - "fmt": "deno fmt --ignore=deliverables/,www/content/blog/,www/app/routes/,www/app/data/,custom-dist/,dist-test-ssg-render/,dist-test-ssg-package-render/,.deno_cache/", - "fmt:check": "deno fmt --check --ignore=deliverables/,www/content/blog/,www/app/routes/,www/app/data/,custom-dist/,dist-test-ssg-render/,dist-test-ssg-package-render/,.deno_cache/", + "fmt": "deno fmt --ignore=deliverables/,www/content/blog/,www/app/routes/,www/app/data/,www/design/mockups/,brand/,www/public/assets/,custom-dist/,dist-test-ssg-render/,dist-test-ssg-package-render/,.deno_cache/", + "fmt:check": "deno fmt --check --ignore=deliverables/,www/content/blog/,www/app/routes/,www/app/data/,www/design/mockups/,brand/,www/public/assets/,custom-dist/,dist-test-ssg-render/,dist-test-ssg-package-render/,.deno_cache/", "clean": "rm -rf packages/*/dist www/dist", "hooks:install": "git config core.hooksPath .githooks", "hooks:uninstall": "git config core.hooksPath", @@ -113,6 +132,9 @@ "www/content/blog/", "www/app/routes/", "www/app/data/", + "www/design/mockups/", + "brand/", + "www/public/assets/", "custom-dist/", "dist-test-ssg-render/", ".deno_cache/" diff --git a/deno.lock b/deno.lock index fe55f557c..d0793dffd 100644 --- a/deno.lock +++ b/deno.lock @@ -9,10 +9,13 @@ "jsr:@std/path@1": "1.1.5", "jsr:@std/path@^1.1.5": "1.1.5", "npm:@hono/vite-dev-server@~0.25.3": "0.25.3_hono@4.12.25", + "npm:@material/web@2": "2.4.1", "npm:@mdx-js/mdx@^3.1.1": "3.1.1", "npm:@mdx-js/rollup@^3.1.1": "3.1.1_rollup@4.62.0", "npm:@playwright/test@1.59.1": "1.59.1", - "npm:@preact/signals-core@^1.12.1": "1.14.2", + "npm:@preact/signals-core@^1.12.1": "1.14.3", + "npm:@preact/signals@^2.9.0": "2.9.2_preact@10.29.2", + "npm:@shoelace-style/shoelace@^2.19.0": "2.20.1_@floating-ui+utils@0.2.11_@types+react@19.2.17", "npm:@types/sanitize-html@2": "2.16.1", "npm:create-fresh@latest": "0.1.4", "npm:flexsearch@0.7": "0.7.43", @@ -21,8 +24,11 @@ "npm:hono@^4.12.0": "4.12.25", "npm:marked@15": "15.0.12", "npm:nitro@*": "3.0.260610-beta_vite@8.0.10__@types+node@22.19.21__esbuild@0.25.12", + "npm:pdf-parse@^1.1.1": "1.1.4", + "npm:pdfjs-dist@4.8.69": "4.8.69", "npm:preact-render-to-string@^6.5.0": "6.7.0_preact@10.29.2", "npm:preact@^10.28.0": "10.29.2", + "npm:preact@^10.29.1": "10.29.2", "npm:sanitize-html@^2.17.4": "2.17.5", "npm:typescript@^5.9.0": "5.9.3", "npm:vite@8.0.10": "8.0.10_@types+node@22.19.21_esbuild@0.25.12" @@ -66,6 +72,9 @@ "sisteransi" ] }, + "@ctrl/tinycolor@4.2.0": { + "integrity": "sha512-kzyuwOAQnXJNLS9PSyrk0CWk35nWJW/zl/6KvnTBMFK65gm7U1/Z5BqjxeapjZCIhQcM/DsrEmcbRwDyXyXK4A==" + }, "@emnapi/core@1.10.0": { "integrity": "sha512-yq6OkJ4p82CAfPl0u9mQebQHKPJkY7WrIuk205cTYnYe+k2Z8YBh11FrbRG/H6ihirqcacOgl2BIO8oyMQLeXw==", "dependencies": [ @@ -234,6 +243,22 @@ "os": ["win32"], "cpu": ["x64"] }, + "@floating-ui/core@1.7.5": { + "integrity": "sha512-1Ih4WTWyw0+lKyFMcBHGbb5U5FtuHJuujoyyr5zTaWS5EYMeT6Jb2AuDeftsCsEuchO+mM2ij5+q9crhydzLhQ==", + "dependencies": [ + "@floating-ui/utils" + ] + }, + "@floating-ui/dom@1.7.6": { + "integrity": "sha512-9gZSAI5XM36880PPMm//9dfiEngYoC6Am2izES1FF406YFsjvyBMmeJ2g4SAju3xWwtuynNRFL2s9hgxpLI5SQ==", + "dependencies": [ + "@floating-ui/core", + "@floating-ui/utils" + ] + }, + "@floating-ui/utils@0.2.11": { + "integrity": "sha512-RiB/yIh78pcIxl6lLMG0CgBXAZ2Y0eVHqMPYugu+9U0AeT6YBeiJpf7lbdJNIugFP5SIjwNRgo4DhR1Qxi26Gg==" + }, "@hono/node-server@1.19.14_hono@4.12.25": { "integrity": "sha512-GwtvgtXxnWsucXvbQXkRgqksiH2Qed37H9xHZocE5sA3N8O8O8/8FA3uclQXxXVzc9XBZuEOMK7+r02FmSpHtw==", "dependencies": [ @@ -248,6 +273,28 @@ "minimatch" ] }, + "@lit-labs/ssr-dom-shim@1.6.0": { + "integrity": "sha512-VHb0ALPMTlgKjM6yIxxoQNnpKyUKLD04VzeQdsiXkMqkvYlAHxq9glGLmgbb889/1GsohSOAjvQYoiBppXFqrQ==" + }, + "@lit/react@1.0.8_@types+react@19.2.17": { + "integrity": "sha512-p2+YcF+JE67SRX3mMlJ1TKCSTsgyOVdAwd/nxp3NuV1+Cb6MWALbN6nT7Ld4tpmYofcE5kcaSY1YBB9erY+6fw==", + "dependencies": [ + "@types/react" + ] + }, + "@lit/reactive-element@2.1.2": { + "integrity": "sha512-pbCDiVMnne1lYUIaYNN5wrwQXDtHaYtg7YEFPeW+hws6U47WeFvISGUWekPGKWOP1ygrs0ef0o1VJMk1exos5A==", + "dependencies": [ + "@lit-labs/ssr-dom-shim" + ] + }, + "@material/web@2.4.1": { + "integrity": "sha512-0sk9t25acJ72Qv3r0n9r0lgDbPaAKnpm0p+QmEAAwYyZomHxuVbgrrAdtNXaRm7jFyGh+WsTr8bhtvCnpPRFjw==", + "dependencies": [ + "lit", + "tslib" + ] + }, "@mdx-js/mdx@3.1.1": { "integrity": "sha512-f6ZO2ifpwAQIpzGWaBQT2TXxPv6z3RBzQKpVftEWN78Vl/YweF1uwussDx8ECAXVtr3Rs89fKyG9YlzUs9DyGQ==", "dependencies": [ @@ -315,8 +362,15 @@ ], "bin": true }, - "@preact/signals-core@1.14.2": { - "integrity": "sha512-RZHdBj9ZF4n40Rp4jS052EHHjBWf96P9oNdXPfhQTovCuWY9iQn3Gq+gOTJSgBO9A/JBuPfMOWsSX/lIU9Pc/A==" + "@preact/signals-core@1.14.3": { + "integrity": "sha512-m0K3vnbSLC5rHs2ZVfeAMvBtT1zIyq4mxx5OlNncSgMj5Iz6W5Rn3kPrDxAC+iIKmiVe0lSl6U37t5ZkEWoVAw==" + }, + "@preact/signals@2.9.2_preact@10.29.2": { + "integrity": "sha512-DvFPISNMSh3vPqRwPa1tAVAHl85aDq4pTyNu1bTGfrKr64F3EOCHjdUl9aUdohKBf1v9PRGLYuGFcJpfztkdoQ==", + "dependencies": [ + "@preact/signals-core", + "preact" + ] }, "@rolldown/binding-android-arm64@1.0.0-rc.17": { "integrity": "sha512-s70pVGhw4zqGeFnXWvAzJDlvxhlRollagdCCKRgOsgUOH3N1l0LIxf83AtGzmb5SiVM4Hjl5HyarMRfdfj3DaQ==", @@ -619,6 +673,25 @@ "os": ["win32"], "cpu": ["x64"] }, + "@shoelace-style/animations@1.2.0": { + "integrity": "sha512-avvo1xxkLbv2dgtabdewBbqcJfV0e0zCwFqkPMnHFGbJbBHorRFfMAHh1NG9ymmXn0jW95ibUVH03E1NYXD6Gw==" + }, + "@shoelace-style/localize@3.2.2": { + "integrity": "sha512-h3+2/cFWGaw3KQUwintkP4Cy3PtrVW//ysr9DM5nOfIXYekgrHwsELk/nyxc8hmjVP/Kcon7KCzvUtSwUBipfQ==" + }, + "@shoelace-style/shoelace@2.20.1_@floating-ui+utils@0.2.11_@types+react@19.2.17": { + "integrity": "sha512-FSghU95jZPGbwr/mybVvk66qRZYpx5FkXL+vLNpy1Vp8UsdwSxXjIHE3fsvMbKWTKi9UFfewHTkc5e7jAqRYoQ==", + "dependencies": [ + "@ctrl/tinycolor", + "@floating-ui/dom", + "@lit/react", + "@shoelace-style/animations", + "@shoelace-style/localize", + "composed-offset-position", + "lit", + "qr-creator" + ] + }, "@tybys/wasm-util@0.10.2": { "integrity": "sha512-RoBvJ2X0wuKlWFIjrwffGw1IqZHKQqzIchKaadZZfnNpsAYp2mM0h36JtPCjNDAHGgYez/15uMBpfGwchhiMgg==", "dependencies": [ @@ -664,12 +737,21 @@ "undici-types" ] }, + "@types/react@19.2.17": { + "integrity": "sha512-MXfmqaVPEVgkBT/aY0aGCkRWWtByiYQXo3xdQ8r5RzuFrPiRn8Gar2tQdXSUQ2GKV3bkXckek89V8wQBY2Q/Aw==", + "dependencies": [ + "csstype" + ] + }, "@types/sanitize-html@2.16.1": { "integrity": "sha512-n9wjs8bCOTyN/ynwD8s/nTcTreIHB1vf31vhLMGqUPNHaweKC4/fAl4Dj+hUlCTKYgm4P3k83fmiFfzkZ6sgMA==", "dependencies": [ "htmlparser2" ] }, + "@types/trusted-types@2.0.7": { + "integrity": "sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==" + }, "@types/unist@2.0.11": { "integrity": "sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==" }, @@ -705,12 +787,38 @@ "balanced-match@1.0.2": { "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, + "base64-js@1.5.1": { + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" + }, + "bl@4.1.0": { + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dependencies": [ + "buffer", + "inherits", + "readable-stream" + ] + }, "brace-expansion@2.1.1": { "integrity": "sha512-WR1cURNjuvBLMZBMbqM0UoE+WAfdUcEV1ccD8PVBVOI+Z3ND4+SZbN8RsfT2bMuG1qwz5RFvPukSZm5fF2D5eA==", "dependencies": [ "balanced-match" ] }, + "buffer@5.7.1": { + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dependencies": [ + "base64-js", + "ieee754" + ] + }, + "canvas@3.2.3": { + "integrity": "sha512-PzE5nJZPz72YUAfo8oTp0u3fqqY7IzlTubneAihqDYAUcBk7ryeCmBbdJBEdaH0bptSOe2VT2Zwcb3UaFyaSWw==", + "dependencies": [ + "node-addon-api", + "prebuild-install" + ], + "scripts": true + }, "ccount@2.0.1": { "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==" }, @@ -726,12 +834,21 @@ "character-reference-invalid@2.0.1": { "integrity": "sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==" }, + "chownr@1.1.4": { + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" + }, "collapse-white-space@2.1.0": { "integrity": "sha512-loKTxY1zCOuG4j9f6EPnuyyYkf58RnhhWTvRoZEokgB+WbdXehfjFviyOVYkqzEWz1Q5kRiZdBYS5SwxbQYwzw==" }, "comma-separated-tokens@2.0.3": { "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==" }, + "composed-offset-position@0.0.6_@floating-ui+utils@0.2.11": { + "integrity": "sha512-Q7dLompI6lUwd7LWyIcP66r4WcS9u7AL2h8HaeipiRfCRPLMWqRx8fYsjb4OHi6UQFifO7XtNC2IlEJ1ozIFxw==", + "dependencies": [ + "@floating-ui/utils" + ] + }, "consola@3.4.2": { "integrity": "sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==" }, @@ -753,6 +870,9 @@ "srvx" ] }, + "csstype@3.2.3": { + "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==" + }, "dayjs@1.11.21": { "integrity": "sha512-98IT+HOahAisibz/yjKbzuOBwYcjJ7BCLPzARyHiyEBmRz4fatF+KPJszEHXsGYjUG234aH/cOjW1wwTbKUZlA==" }, @@ -771,6 +891,15 @@ "character-entities" ] }, + "decompress-response@6.0.0": { + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "dependencies": [ + "mimic-response" + ] + }, + "deep-extend@0.6.0": { + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==" + }, "deepmerge@4.3.1": { "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==" }, @@ -811,6 +940,12 @@ "domhandler" ] }, + "end-of-stream@1.4.5": { + "integrity": "sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==", + "dependencies": [ + "once" + ] + }, "entities@4.5.0": { "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==" }, @@ -934,6 +1069,9 @@ "@types/estree" ] }, + "expand-template@2.0.3": { + "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==" + }, "exsolve@1.0.8": { "integrity": "sha512-LmDxfWXwcTArk8fUEnOfSZpHOJ6zOMUJKOtFLFqJLoKJetuQG874Uc7/Kki7zFLzYybmZhp1M7+98pfMqeX8yA==" }, @@ -958,6 +1096,9 @@ "flexsearch@0.7.43": { "integrity": "sha512-c5o/+Um8aqCSOXGcZoqZOm+NqtVwNsvVpWv6lfmSclU954O3wvQKxxK8zj74fPaSJbXpSLTs4PRhh+wnoCXnKg==" }, + "fs-constants@1.0.0": { + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" + }, "fsevents@2.3.2": { "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", "os": ["darwin"], @@ -968,6 +1109,9 @@ "os": ["darwin"], "scripts": true }, + "github-from-package@0.0.0": { + "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==" + }, "gray-matter@4.0.3": { "integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==", "dependencies": [ @@ -1054,6 +1198,15 @@ "httpxy@0.5.3": { "integrity": "sha512-SMS9V6Sn7VWaS11lYhoAr0ceoaiolTWf4jYdJn0NJhCdKMu9R2H9Fh0LBDWBHQF6HRLI1PmaePYsjanSpE5PEw==" }, + "ieee754@1.2.1": { + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" + }, + "inherits@2.0.4": { + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "ini@1.3.8": { + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, "inline-style-parser@0.2.7": { "integrity": "sha512-Nb2ctOyNR8DqQoR0OwRG95uNWIC0C1lCgf5Naz5H6Ji72KZ8OcFZLz2P5sNgwlyoJ8Yif11oMuYs5pBQa86csA==" }, @@ -1173,6 +1326,28 @@ "lightningcss-win32-x64-msvc" ] }, + "lit-element@4.2.2": { + "integrity": "sha512-aFKhNToWxoyhkNDmWZwEva2SlQia+jfG0fjIWV//YeTaWrVnOxD89dPKfigCUspXFmjzOEUQpOkejH5Ly6sG0w==", + "dependencies": [ + "@lit-labs/ssr-dom-shim", + "@lit/reactive-element", + "lit-html" + ] + }, + "lit-html@3.3.3": { + "integrity": "sha512-el8M6jK2o3RXBnrSHX3ZKrsN8zEV63pSExTO1wYJz7QndGYZ8353e2a5PPX+qHe2aGayfnchQmkAojaWAREOIA==", + "dependencies": [ + "@types/trusted-types" + ] + }, + "lit@3.3.3": { + "integrity": "sha512-fycuvZg/hkpozL00lm1pEJH5nN/lr9ZXd6mJI2HSN4+Bzc+LDNdEApJ6HFbPkdFNHLvOplIIuJvxkS4XUxqirw==", + "dependencies": [ + "@lit/reactive-element", + "lit-element", + "lit-html" + ] + }, "longest-streak@3.1.0": { "integrity": "sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==" }, @@ -1546,6 +1721,9 @@ "micromark-util-types" ] }, + "mimic-response@3.1.0": { + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==" + }, "minimatch@9.0.9": { "integrity": "sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==", "dependencies": [ @@ -1555,6 +1733,9 @@ "minimist@1.2.8": { "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==" }, + "mkdirp-classic@0.5.3": { + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==" + }, "ms@2.1.3": { "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" }, @@ -1562,6 +1743,9 @@ "integrity": "sha512-ZB9RH/39qpq5Vu6Y+NmUaFhQR6pp+M2Xt76XBnEwDaGcVAqhlvxrl3B2bKS5D3NH3QR76v3aSrKaF/Kiy7lEtQ==", "bin": true }, + "napi-build-utils@2.0.0": { + "integrity": "sha512-GEbrYkbfF7MoNaoh2iGG84Mnf/WZfB0GdGEsM8wz7Expx/LlWf5U8t9nvJKXSp3qr5IsEbK04cBGhol/KwOsWA==" + }, "nf3@0.3.17": { "integrity": "sha512-N9zEWySuJFw+gR0lhS5863YsvNeudOdqRyFvNb+jMXbeTJOdrjDqkCpDginIZfUm0LzT1t1nCRiDeqQm/8kirQ==" }, @@ -1589,6 +1773,18 @@ ], "bin": true }, + "node-abi@3.92.0": { + "integrity": "sha512-KdHvFWZjEKDf0cakgFjebl371GPsISX2oZHcuyKqM7DtogIsHrqKeLTo8wBHxaXRAQlY2PsPlZmfo+9ZCxEREQ==", + "dependencies": [ + "semver" + ] + }, + "node-addon-api@7.1.1": { + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==" + }, + "node-ensure@0.0.0": { + "integrity": "sha512-DRI60hzo2oKN1ma0ckc6nQWlHU69RH6xN0sjQTjMpChPfTYvKZdcQFfdYK2RWbJcKyUizSIy/l8OTGxMAM1QDw==" + }, "ocache@0.1.5": { "integrity": "sha512-kNNnkkVQup/QDvmTz8Q84wc2ntiyoVHDxa6eHWKt5qdGAmFRBIxy83rxgCYEjW0x06UJ9E3P6VgM2yY4rOBH4w==", "dependencies": [ @@ -1601,6 +1797,12 @@ "ohash@2.0.11": { "integrity": "sha512-RdR9FQrFwNBNXAr4GixM8YaRZRJ5PUWbKYbE5eOsrwAjJW0q2REGcf79oYPsLyskQCZG1PLN+S/K1V00joZAoQ==" }, + "once@1.4.0": { + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dependencies": [ + "wrappy" + ] + }, "parse-entities@4.0.2": { "integrity": "sha512-GG2AQYWoLgL877gQIKeRPGO1xF9+eG1ujIb5soS5gPvLQ1y2o8FL90w2QWNdf9I361Mpp7726c+lj3U0qK1uGw==", "dependencies": [ @@ -1616,9 +1818,25 @@ "parse-srcset@1.0.2": { "integrity": "sha512-/2qh0lav6CmI15FzA3i/2Bzk2zCgQhGMkvhOhKNcBVQ1ldgpbfiNTVslmooUmWJcADi1f1kIeynbDRVzNlfR6Q==" }, + "path2d@0.2.2": { + "integrity": "sha512-+vnG6S4dYcYxZd+CZxzXCNKdELYZSKfohrk98yajCo1PtRoDgCTrrwOvK1GT0UoAdVszagDVllQc0U1vaX4NUQ==" + }, "pathe@2.0.3": { "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==" }, + "pdf-parse@1.1.4": { + "integrity": "sha512-XRIRcLgk6ZnUbsHsYXExMw+krrPE81hJ6FQPLdBNhhBefqIQKXu/WeTgNBGSwPrfU0v+UCEwn7AoAUOsVKHFvQ==", + "dependencies": [ + "node-ensure" + ] + }, + "pdfjs-dist@4.8.69": { + "integrity": "sha512-IHZsA4T7YElCKNNXtiLgqScw4zPd3pG9do8UrznC757gMd7UPeHSL2qwNNMJo4r79fl8oj1Xx+1nh2YkzdMpLQ==", + "optionalDependencies": [ + "canvas", + "path2d" + ] + }, "picocolors@1.1.1": { "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" }, @@ -1656,9 +1874,56 @@ "preact@10.29.2": { "integrity": "sha512-7tNmwg/7mzzAoB/8kSg6Hl37JraAZw3Z3A0JSY7VXlZwo82Xn0G7wKbNNs2qoF4ZEEsQGTwDAroNdqKs1ofJxQ==" }, + "prebuild-install@7.1.3": { + "integrity": "sha512-8Mf2cbV7x1cXPUILADGI3wuhfqWvtiLA1iclTDbFRZkgRQS0NqsPZphna9V+HyTEadheuPmjaJMsbzKQFOzLug==", + "dependencies": [ + "detect-libc", + "expand-template", + "github-from-package", + "minimist", + "mkdirp-classic", + "napi-build-utils", + "node-abi", + "pump", + "rc", + "simple-get", + "tar-fs", + "tunnel-agent" + ], + "deprecated": true, + "bin": true + }, "property-information@7.2.0": { "integrity": "sha512-IAtzIB6sUiWaJYrX9smp3V46pBGbBeLFRGdh25kg1334VcBlD8HzhPeNIWQH9zhGmo2itIe25EHt9dQP7G5hmg==" }, + "pump@3.0.4": { + "integrity": "sha512-VS7sjc6KR7e1ukRFhQSY5LM2uBWAUPiOPa/A3mkKmiMwSmRFUITt0xuj+/lesgnCv+dPIEYlkzrcyXgquIHMcA==", + "dependencies": [ + "end-of-stream", + "once" + ] + }, + "qr-creator@1.0.0": { + "integrity": "sha512-C0cqfbS1P5hfqN4NhsYsUXePlk9BO+a45bAQ3xLYjBL3bOIFzoVEjs79Fado9u9BPBD3buHi3+vY+C8tHh4qMQ==" + }, + "rc@1.2.8": { + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dependencies": [ + "deep-extend", + "ini", + "minimist", + "strip-json-comments" + ], + "bin": true + }, + "readable-stream@3.6.2": { + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dependencies": [ + "inherits", + "string_decoder", + "util-deprecate" + ] + }, "recma-build-jsx@1.0.0": { "integrity": "sha512-8GtdyqaBcDfva+GUKDr3nev3VpKAhup1+RvkMvUxURHpW7QyIvk9F5wz7Vzo06CEMSilw6uArgRqhpiUcWp8ew==", "dependencies": [ @@ -1818,6 +2083,9 @@ "rou3@0.8.1": { "integrity": "sha512-ePa+XGk00/3HuCqrEnK3LxJW7I0SdNg6EFzKUJG73hMAdDcOUC/i/aSz7LSDwLrGr33kal/rqOGydzwl6U7zBA==" }, + "safe-buffer@5.2.1": { + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + }, "sanitize-html@2.17.5": { "integrity": "sha512-ZmU1joGRrvoyctKIiuwUxqR6moLoU2Wk+2bMccN6f7UwhAmwYDvWziqPxRDDN2Qip62NqnIrVrT9akbL6Wretg==", "dependencies": [ @@ -1837,6 +2105,21 @@ "kind-of" ] }, + "semver@7.8.5": { + "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==", + "bin": true + }, + "simple-concat@1.0.1": { + "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==" + }, + "simple-get@4.0.1": { + "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", + "dependencies": [ + "decompress-response", + "once", + "simple-concat" + ] + }, "sisteransi@1.0.5": { "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==" }, @@ -1856,6 +2139,12 @@ "integrity": "sha512-43yM4luKfCJamyCMhrUeHUPOrf8TdZe7kN8s5zayZCH5OeprYqi49Aso5ZvHXR4aB+DHaRNO/diNFgZSMNG8Xw==", "bin": true }, + "string_decoder@1.3.0": { + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dependencies": [ + "safe-buffer" + ] + }, "stringify-entities@4.0.4": { "integrity": "sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==", "dependencies": [ @@ -1866,6 +2155,9 @@ "strip-bom-string@1.0.0": { "integrity": "sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==" }, + "strip-json-comments@2.0.1": { + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==" + }, "style-to-js@1.1.21": { "integrity": "sha512-RjQetxJrrUJLQPHbLku6U/ocGtzyjbJMP9lCNK7Ag0CNh690nSH8woqWH9u16nMjYBAok+i7JO1NP2pOy8IsPQ==", "dependencies": [ @@ -1878,6 +2170,25 @@ "inline-style-parser" ] }, + "tar-fs@2.1.4": { + "integrity": "sha512-mDAjwmZdh7LTT6pNleZ05Yt65HC3E+NiQzl672vQG38jIrehtJk/J3mNwIg+vShQPcLF/LV7CMnDW6vjj6sfYQ==", + "dependencies": [ + "chownr", + "mkdirp-classic", + "pump", + "tar-stream" + ] + }, + "tar-stream@2.2.0": { + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "dependencies": [ + "bl", + "end-of-stream", + "fs-constants", + "inherits", + "readable-stream" + ] + }, "tinyglobby@0.2.17": { "integrity": "sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==", "dependencies": [ @@ -1894,6 +2205,12 @@ "tslib@2.8.1": { "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==" }, + "tunnel-agent@0.6.0": { + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", + "dependencies": [ + "safe-buffer" + ] + }, "typescript@5.9.3": { "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", "bin": true @@ -1969,6 +2286,9 @@ "ofetch" ] }, + "util-deprecate@1.0.2": { + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, "vfile-message@4.0.3": { "integrity": "sha512-QTHzsGd1EhbZs4AsQ20JX1rC3cOlt/IWJruk893DfLRr57lcnOeMaWG4K0JrRta4mIJZKth2Au3mM3u03/JWKw==", "dependencies": [ @@ -2003,18 +2323,25 @@ ], "bin": true }, + "wrappy@1.0.2": { + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, "zwitch@2.0.4": { "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==" } }, "workspace": { "dependencies": [ + "jsr:@std/assert@1", "jsr:@std/fs@1", "npm:@hono/vite-dev-server@~0.25.3", + "npm:@material/web@2", "npm:@mdx-js/mdx@^3.1.1", "npm:@mdx-js/rollup@^3.1.1", "npm:@playwright/test@1.59.1", "npm:@preact/signals-core@^1.12.1", + "npm:@preact/signals@^2.9.0", + "npm:@shoelace-style/shoelace@^2.19.0", "npm:flexsearch@0.7", "npm:hono@^4.12.0", "npm:preact-render-to-string@^6.5.0", @@ -2023,6 +2350,17 @@ "npm:vite@8.0.10" ], "members": { + "examples/deno-desktop-reader": { + "dependencies": [ + "jsr:@std/assert@1", + "npm:@preact/signals@^2.9.0", + "npm:@shoelace-style/shoelace@^2.19.0", + "npm:pdf-parse@^1.1.1", + "npm:pdfjs-dist@4.8.69", + "npm:preact@^10.29.1", + "npm:vite@8.0.10" + ] + }, "packages/adapter-vite": { "dependencies": [ "npm:@hono/vite-dev-server@~0.25.3", diff --git a/docs/adr/0031-hub-v2-component-browser-workflow.md b/docs/adr/0031-hub-v2-component-browser-workflow.md index c199660e3..dad50db62 100644 --- a/docs/adr/0031-hub-v2-component-browser-workflow.md +++ b/docs/adr/0031-hub-v2-component-browser-workflow.md @@ -173,7 +173,7 @@ Auto-generated from CEM manifest: ```html