From 55eab106ac6828816ced57833c2baf4e0b43df2e Mon Sep 17 00:00:00 2001 From: Vincent Koc Date: Sat, 21 Feb 2026 02:05:41 -0500 Subject: [PATCH] chore: remove root long and rolldown deps (#22481) * chore(deadcode): add deadcode scanning and remove unused lockfile deps * chore(changelog): mention deadcode CI scan pass * ci: disable deadcode job temporarily * docs(changelog): add PR ref and thanks for deadcode scan entry * ci: comment out deadcode job condition while keeping it disabled * Deps: remove dead root dependency from package manifest * Changelog: reference PR for deadcode dependency cleanup * Deps: remove unused root signal-utils * Chore: remove unused lit context deps * Chore: remove unused root lit dependency * Chore: remove root long and rolldown deps * Chore: add changelog for root long/rolldown removal * Chore: fix a2ui bundling after root lit dependency removal * Chore: simplify a2ui bundle script dependencies --- CHANGELOG.md | 6 + .../Tools/CanvasA2UI/rolldown.config.mjs | 25 ++- package.json | 6 - pnpm-lock.yaml | 209 ++---------------- scripts/bundle-a2ui.sh | 6 +- ui/package.json | 4 + 6 files changed, 58 insertions(+), 198 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 08db2c9d2..e3e5cd629 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,12 @@ Docs: https://docs.openclaw.ai - Dev tooling: add dead-code scans to CI via Knip/ts-prune/ts-unused-exports and report unused dependencies/exports in non-blocking checks. (#22468) Thanks @vincentkoc. - Dev tooling: move `@larksuiteoapi/node-sdk` out of root `package.json` and keep it scoped to `extensions/feishu` where it is used. (#22471) Thanks @vincentkoc. - Dev tooling: remove unused root dependency `signal-utils` from core manifest after confirming it was only used by extension-only paths. (#22471) Thanks @vincentkoc. +- Dev tooling: remove unused root devDependency `ollama` now that native Ollama support uses local HTTP transport code paths only. (#22471) Thanks @vincentkoc. +- Dev tooling: remove unused root devDependencies `@lit/context` and `@lit-labs/signals` flagged as unused by Knip dead-code reports. (#22471) Thanks @vincentkoc. +- Dev tooling: remove unused root dependency `lit` that is now scoped to `ui/` package dependencies. (#22471) Thanks @vincentkoc. +- Dev tooling: remove unused root dependencies `long` and `rolldown`; keep A2UI bundling functional by falling back to `pnpm dlx rolldown` when the binary is not locally installed. (#22481) Thanks @vincentkoc. +- Dev tooling: fix A2UI bundle resolution for removed root `lit` deps by resolving `lit`, `@lit/context`, `@lit-labs/signals`, and `signal-utils` from UI workspace dependencies in `rolldown.config.mjs` during bundling. (#22481) Thanks @vincentkoc. +- Dev tooling: simplify `canvas-a2ui` bundling script by removing temporary vendored `node_modules` symlink logic now that `ui` workspace dependencies are explicit. (#22481) Thanks @vincentkoc. - Telegram: dedupe sent-message cache storage by removing redundant per-chat Set tracking and using the timestamp map as the single source of truth. (#22127) thanks @TaKO8Ki. - Agents/Subagents: default subagent spawn depth now uses shared `maxSpawnDepth=2`, enabling depth-1 orchestrator spawning by default while keeping depth policy checks consistent across spawn and prompt paths. (#22223) Thanks @tyler6204. - Channels/CLI: add per-account/channel `defaultTo` outbound routing fallback so `openclaw agent --deliver` can send without explicit `--reply-to` when a default target is configured. (#16985) Thanks @KirillShchetinin. diff --git a/apps/shared/OpenClawKit/Tools/CanvasA2UI/rolldown.config.mjs b/apps/shared/OpenClawKit/Tools/CanvasA2UI/rolldown.config.mjs index dbd4b86ff..bd8677d5f 100644 --- a/apps/shared/OpenClawKit/Tools/CanvasA2UI/rolldown.config.mjs +++ b/apps/shared/OpenClawKit/Tools/CanvasA2UI/rolldown.config.mjs @@ -1,4 +1,5 @@ import path from "node:path"; +import { existsSync } from "node:fs"; import { fileURLToPath } from "node:url"; import { defineConfig } from "rolldown"; @@ -16,6 +17,17 @@ const outputFile = path.resolve( const a2uiLitDist = path.resolve(repoRoot, "vendor/a2ui/renderers/lit/dist/src"); const a2uiThemeContext = path.resolve(a2uiLitDist, "0.8/ui/context/theme.js"); +const a2uiNodeModules = path.resolve(repoRoot, "ui/node_modules"); +const rootNodeModules = path.resolve(repoRoot, "node_modules"); + +const resolveA2uiDep = (pkg, rel = "") => { + const uiPath = path.resolve(a2uiNodeModules, pkg, rel); + if (existsSync(uiPath)) { + return uiPath; + } + + return path.resolve(rootNodeModules, pkg, rel); +}; export default defineConfig({ input: fromHere("bootstrap.js"), @@ -28,12 +40,13 @@ export default defineConfig({ "@a2ui/lit": path.resolve(a2uiLitDist, "index.js"), "@a2ui/lit/ui": path.resolve(a2uiLitDist, "0.8/ui/ui.js"), "@openclaw/a2ui-theme-context": a2uiThemeContext, - "@lit/context": path.resolve(repoRoot, "node_modules/@lit/context/index.js"), - "@lit/context/": path.resolve(repoRoot, "node_modules/@lit/context/"), - "@lit-labs/signals": path.resolve(repoRoot, "node_modules/@lit-labs/signals/index.js"), - "@lit-labs/signals/": path.resolve(repoRoot, "node_modules/@lit-labs/signals/"), - lit: path.resolve(repoRoot, "node_modules/lit/index.js"), - "lit/": path.resolve(repoRoot, "node_modules/lit/"), + "@lit/context": resolveA2uiDep("@lit/context", "index.js"), + "@lit/context/": resolveA2uiDep("@lit/context"), + "@lit-labs/signals": resolveA2uiDep("@lit-labs/signals", "index.js"), + "@lit-labs/signals/": resolveA2uiDep("@lit-labs/signals"), + lit: resolveA2uiDep("lit", "index.js"), + "lit/": resolveA2uiDep("lit"), + "signal-utils/": resolveA2uiDep("signal-utils"), }, }, output: { diff --git a/package.json b/package.json index 68031a1d5..41f7a3bd1 100644 --- a/package.json +++ b/package.json @@ -174,7 +174,6 @@ "json5": "^2.2.3", "jszip": "^3.10.1", "linkedom": "^0.18.12", - "long": "^5.3.2", "markdown-it": "^14.1.1", "node-edge-tts": "^1.2.10", "opusscript": "^0.0.8", @@ -193,8 +192,6 @@ }, "devDependencies": { "@grammyjs/types": "^3.24.0", - "@lit-labs/signals": "^0.2.0", - "@lit/context": "^1.1.6", "@types/express": "^5.0.6", "@types/markdown-it": "^14.1.2", "@types/node": "^25.3.0", @@ -202,12 +199,9 @@ "@types/ws": "^8.18.1", "@typescript/native-preview": "7.0.0-dev.20260219.1", "@vitest/coverage-v8": "^4.0.18", - "lit": "^3.3.2", - "ollama": "^0.6.3", "oxfmt": "0.33.0", "oxlint": "^1.48.0", "oxlint-tsgolint": "^0.14.1", - "rolldown": "1.0.0-rc.5", "tsdown": "^0.20.3", "tsx": "^4.21.0", "typescript": "^5.9.3", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 84d6011d0..e704fec7a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -131,9 +131,6 @@ importers: linkedom: specifier: ^0.18.12 version: 0.18.12 - long: - specifier: ^5.3.2 - version: 5.3.2 markdown-it: specifier: ^14.1.1 version: 14.1.1 @@ -186,12 +183,6 @@ importers: '@grammyjs/types': specifier: ^3.24.0 version: 3.24.0 - '@lit-labs/signals': - specifier: ^0.2.0 - version: 0.2.0 - '@lit/context': - specifier: ^1.1.6 - version: 1.1.6 '@types/express': specifier: ^5.0.6 version: 5.0.6 @@ -213,12 +204,6 @@ importers: '@vitest/coverage-v8': specifier: ^4.0.18 version: 4.0.18(@vitest/browser@4.0.18(vite@7.3.1(@types/node@25.3.0)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2))(vitest@4.0.18))(vitest@4.0.18) - lit: - specifier: ^3.3.2 - version: 3.3.2 - ollama: - specifier: ^0.6.3 - version: 0.6.3 oxfmt: specifier: 0.33.0 version: 0.33.0 @@ -228,9 +213,6 @@ importers: oxlint-tsgolint: specifier: ^0.14.1 version: 0.14.1 - rolldown: - specifier: 1.0.0-rc.5 - version: 1.0.0-rc.5 tsdown: specifier: ^0.20.3 version: 0.20.3(@typescript/native-preview@7.0.0-dev.20260219.1)(typescript@5.9.3) @@ -573,6 +555,12 @@ importers: ui: dependencies: + '@lit-labs/signals': + specifier: ^0.1.3 + version: 0.1.3 + '@lit/context': + specifier: ^1.1.4 + version: 1.1.6 '@noble/ed25519': specifier: 3.0.0 version: 3.0.0 @@ -585,6 +573,12 @@ importers: marked: specifier: ^17.0.3 version: 17.0.3 + signal-polyfill: + specifier: ^0.2.2 + version: 0.2.2 + signal-utils: + specifier: ^0.21.1 + version: 0.21.1(signal-polyfill@0.2.2) vite: specifier: 7.3.1 version: 7.3.1(@types/node@25.3.0)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2) @@ -1441,8 +1435,8 @@ packages: resolution: {integrity: sha512-4hSpglL/G/cW2JCcohaYz/BS0uOSJNV9IEYdMm0EiPEvDLayoI2hGq2D86uYPQFD2gvgkyhmzdShpWLG3P5r3w==} engines: {node: '>=20'} - '@lit-labs/signals@0.2.0': - resolution: {integrity: sha512-68plyIbciumbwKaiilhLNyhz4Vg6/+nJwDufG2xxWA9r/fUw58jxLHCAlKs+q1CE5Lmh3cZ3ShyYKnOCebEpVA==} + '@lit-labs/signals@0.1.3': + resolution: {integrity: sha512-P0yWgH5blwVyEwBg+WFspLzeu1i0ypJP1QB0l1Omr9qZLIPsUu0p4Fy2jshOg7oQyha5n163K3GJGeUhQQ682Q==} '@lit-labs/ssr-dom-shim@1.5.1': resolution: {integrity: sha512-Aou5UdlSpr5whQe8AA/bZG0jMj96CoJIWbGfZ91qieWu5AWUMKw8VR/pAkQkJYvBNhmCcWnZlyyk5oze8JIqYA==} @@ -2112,9 +2106,6 @@ packages: '@oxc-project/types@0.112.0': resolution: {integrity: sha512-m6RebKHIRsax2iCwVpYW2ErQwa4ywHJrE4sCK3/8JK8ZZAWOKXaRJFl/uP51gaVyyXlaS4+chU1nSCdzYf6QqQ==} - '@oxc-project/types@0.114.0': - resolution: {integrity: sha512-//nBfbzHQHvJs8oFIjv6coZ6uxQ4alLfiPe6D5vit6c4pmxATHHlVwgB1k+Hv4yoAMyncdxgRBF5K4BYWUCzvA==} - '@oxfmt/binding-android-arm-eabi@0.33.0': resolution: {integrity: sha512-ML6qRW8/HiBANteqfyFAR1Zu0VrJu+6o4gkPLsssq74hQ7wDMkufBYJXI16PGSERxEYNwKxO5fesCuMssgTv9w==} engines: {node: ^20.19.0 || >=22.12.0} @@ -2474,160 +2465,80 @@ packages: cpu: [arm64] os: [android] - '@rolldown/binding-android-arm64@1.0.0-rc.5': - resolution: {integrity: sha512-zCEmUrt1bggwgBgeKLxNj217J1OrChrp3jJt24VK9jAharSTeVaHODNL+LpcQVhRz+FktYWfT9cjo5oZ99ZLpg==} - engines: {node: ^20.19.0 || >=22.12.0} - cpu: [arm64] - os: [android] - '@rolldown/binding-darwin-arm64@1.0.0-rc.3': resolution: {integrity: sha512-JWWLzvcmc/3pe7qdJqPpuPk91SoE/N+f3PcWx/6ZwuyDVyungAEJPvKm/eEldiDdwTmaEzWfIR+HORxYWrCi1A==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [darwin] - '@rolldown/binding-darwin-arm64@1.0.0-rc.5': - resolution: {integrity: sha512-ZP9xb9lPAex36pvkNWCjSEJW/Gfdm9I3ssiqOFLmpZ/vosPXgpoGxCmh+dX1Qs+/bWQE6toNFXWWL8vYoKoK9Q==} - engines: {node: ^20.19.0 || >=22.12.0} - cpu: [arm64] - os: [darwin] - '@rolldown/binding-darwin-x64@1.0.0-rc.3': resolution: {integrity: sha512-MTakBxfx3tde5WSmbHxuqlDsIW0EzQym+PJYGF4P6lG2NmKzi128OGynoFUqoD5ryCySEY85dug4v+LWGBElIw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [darwin] - '@rolldown/binding-darwin-x64@1.0.0-rc.5': - resolution: {integrity: sha512-7IdrPunf6dp9mywMgTOKMMGDnMHQ6+h5gRl6LW8rhD8WK2kXX0IwzcM5Zc0B5J7xQs8QWOlKjv8BJsU/1CD3pg==} - engines: {node: ^20.19.0 || >=22.12.0} - cpu: [x64] - os: [darwin] - '@rolldown/binding-freebsd-x64@1.0.0-rc.3': resolution: {integrity: sha512-jje3oopyOLs7IwfvXoS6Lxnmie5JJO7vW29fdGFu5YGY1EDbVDhD+P9vDihqS5X6fFiqL3ZQZCMBg6jyHkSVww==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [freebsd] - '@rolldown/binding-freebsd-x64@1.0.0-rc.5': - resolution: {integrity: sha512-o/JCk+dL0IN68EBhZ4DqfsfvxPfMeoM6cJtxORC1YYoxGHZyth2Kb2maXDb4oddw2wu8iIbnYXYPEzBtAF5CAg==} - engines: {node: ^20.19.0 || >=22.12.0} - cpu: [x64] - os: [freebsd] - '@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.3': resolution: {integrity: sha512-A0n8P3hdLAaqzSFrQoA42p23ZKBYQOw+8EH5r15Sa9X1kD9/JXe0YT2gph2QTWvdr0CVK2BOXiK6ENfy6DXOag==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [linux] - '@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.5': - resolution: {integrity: sha512-IIBwTtA6VwxQLcEgq2mfrUgam7VvPZjhd/jxmeS1npM+edWsrrpRLHUdze+sk4rhb8/xpP3flemgcZXXUW6ukw==} - engines: {node: ^20.19.0 || >=22.12.0} - cpu: [arm] - os: [linux] - '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.3': resolution: {integrity: sha512-kWXkoxxarYISBJ4bLNf5vFkEbb4JvccOwxWDxuK9yee8lg5XA7OpvlTptfRuwEvYcOZf+7VS69Uenpmpyo5Bjw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] - '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.5': - resolution: {integrity: sha512-KSol1De1spMZL+Xg7K5IBWXIvRWv7+pveaxFWXpezezAG7CS6ojzRjtCGCiLxQricutTAi/LkNWKMsd2wNhMKQ==} - engines: {node: ^20.19.0 || >=22.12.0} - cpu: [arm64] - os: [linux] - '@rolldown/binding-linux-arm64-musl@1.0.0-rc.3': resolution: {integrity: sha512-Z03/wrqau9Bicfgb3Dbs6SYTHliELk2PM2LpG2nFd+cGupTMF5kanLEcj2vuuJLLhptNyS61rtk7SOZ+lPsTUA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] - '@rolldown/binding-linux-arm64-musl@1.0.0-rc.5': - resolution: {integrity: sha512-WFljyDkxtXRlWxMjxeegf7xMYXxUr8u7JdXlOEWKYgDqEgxUnSEsVDxBiNWQ1D5kQKwf8Wo4sVKEYPRhCdsjwA==} - engines: {node: ^20.19.0 || >=22.12.0} - cpu: [arm64] - os: [linux] - '@rolldown/binding-linux-x64-gnu@1.0.0-rc.3': resolution: {integrity: sha512-iSXXZsQp08CSilff/DCTFZHSVEpEwdicV3W8idHyrByrcsRDVh9sGC3sev6d8BygSGj3vt8GvUKBPCoyMA4tgQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] - '@rolldown/binding-linux-x64-gnu@1.0.0-rc.5': - resolution: {integrity: sha512-CUlplTujmbDWp2gamvrqVKi2Or8lmngXT1WxsizJfts7JrvfGhZObciaY/+CbdbS9qNnskvwMZNEhTPrn7b+WA==} - engines: {node: ^20.19.0 || >=22.12.0} - cpu: [x64] - os: [linux] - '@rolldown/binding-linux-x64-musl@1.0.0-rc.3': resolution: {integrity: sha512-qaj+MFudtdCv9xZo9znFvkgoajLdc+vwf0Kz5N44g+LU5XMe+IsACgn3UG7uTRlCCvhMAGXm1XlpEA5bZBrOcw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] - '@rolldown/binding-linux-x64-musl@1.0.0-rc.5': - resolution: {integrity: sha512-wdf7g9NbVZCeAo2iGhsjJb7I8ZFfs6X8bumfrWg82VK+8P6AlLXwk48a1ASiJQDTS7Svq2xVzZg3sGO2aXpHRA==} - engines: {node: ^20.19.0 || >=22.12.0} - cpu: [x64] - os: [linux] - '@rolldown/binding-openharmony-arm64@1.0.0-rc.3': resolution: {integrity: sha512-U662UnMETyjT65gFmG9ma+XziENrs7BBnENi/27swZPYagubfHRirXHG2oMl+pEax2WvO7Kb9gHZmMakpYqBHQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [openharmony] - '@rolldown/binding-openharmony-arm64@1.0.0-rc.5': - resolution: {integrity: sha512-0CWY7ubu12nhzz+tkpHjoG3IRSTlWYe0wrfJRf4qqjqQSGtAYgoL9kwzdvlhaFdZ5ffVeyYw9qLsChcjUMEloQ==} - engines: {node: ^20.19.0 || >=22.12.0} - cpu: [arm64] - os: [openharmony] - '@rolldown/binding-wasm32-wasi@1.0.0-rc.3': resolution: {integrity: sha512-gekrQ3Q2HiC1T5njGyuUJoGpK/l6B/TNXKed3fZXNf9YRTJn3L5MOZsFBn4bN2+UX+8+7hgdlTcEsexX988G4g==} engines: {node: '>=14.0.0'} cpu: [wasm32] - '@rolldown/binding-wasm32-wasi@1.0.0-rc.5': - resolution: {integrity: sha512-LztXnGzv6t2u830mnZrFLRVqT/DPJ9DL4ZTz/y93rqUVkeHjMMYIYaFj+BUthiYxbVH9dH0SZYufETspKY/NhA==} - engines: {node: '>=14.0.0'} - cpu: [wasm32] - '@rolldown/binding-win32-arm64-msvc@1.0.0-rc.3': resolution: {integrity: sha512-85y5JifyMgs8m5K2XzR/VDsapKbiFiohl7s5lEj7nmNGO0pkTXE7q6TQScei96BNAsoK7JC3pA7ukA8WRHVJpg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [win32] - '@rolldown/binding-win32-arm64-msvc@1.0.0-rc.5': - resolution: {integrity: sha512-jUct1XVeGtyjqJXEAfvdFa8xoigYZ2rge7nYEm70ppQxpfH9ze2fbIrpHmP2tNM2vL/F6Dd0CpXhpjPbC6bSxQ==} - engines: {node: ^20.19.0 || >=22.12.0} - cpu: [arm64] - os: [win32] - '@rolldown/binding-win32-x64-msvc@1.0.0-rc.3': resolution: {integrity: sha512-a4VUQZH7LxGbUJ3qJ/TzQG8HxdHvf+jOnqf7B7oFx1TEBm+j2KNL2zr5SQ7wHkNAcaPevF6gf9tQnVBnC4mD+A==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [win32] - '@rolldown/binding-win32-x64-msvc@1.0.0-rc.5': - resolution: {integrity: sha512-VQ8F9ld5gw29epjnVGdrx8ugiLTe8BMqmhDYy7nGbdeDo4HAt4bgdZvLbViEhg7DZyHLpiEUlO5/jPSUrIuxRQ==} - engines: {node: ^20.19.0 || >=22.12.0} - cpu: [x64] - os: [win32] - '@rolldown/pluginutils@1.0.0-rc.3': resolution: {integrity: sha512-eybk3TjzzzV97Dlj5c+XrBFW57eTNhzod66y9HrBlzJ6NsCrWCp/2kaPS3K9wJmurBC0Tdw4yPjXKZqlznim3Q==} - '@rolldown/pluginutils@1.0.0-rc.5': - resolution: {integrity: sha512-RxlLX/DPoarZ9PtxVrQgZhPoor987YtKQqCo5zkjX+0S0yLJ7Vv515Wk6+xtTL67VONKJKxETWZwuZjss2idYw==} - '@rollup/rollup-android-arm-eabi@4.57.1': resolution: {integrity: sha512-A6ehUVSiSaaliTxai040ZpZ2zTevHYbvu/lDoeAteHI8QnaosIzm4qwtezfRg1jOYaUmnzLX1AOD6Z+UJjtifg==} cpu: [arm] @@ -4846,9 +4757,6 @@ packages: ogg-opus-decoder@1.7.3: resolution: {integrity: sha512-w47tiZpkLgdkpa+34VzYD8mHUj8I9kfWVZa82mBbNwDvB1byfLXSSzW/HxA4fI3e9kVlICSpXGFwMLV1LPdjwg==} - ollama@0.6.3: - resolution: {integrity: sha512-KEWEhIqE5wtfzEIZbDCLH51VFZ6Z3ZSa6sIOg/E/tBV8S51flyqBOXi+bRxlOYKDf8i327zG9eSTb8IJxvm3Zg==} - on-exit-leak-free@2.1.2: resolution: {integrity: sha512-0eJJY6hXLGf1udHwfNftBqH+g73EU4B504nZeKpz1sYRKafAghwxEJunB2O7rDZkL4PGfsMVnTXZ2EjibbqcsA==} engines: {node: '>=14.0.0'} @@ -5282,11 +5190,6 @@ packages: engines: {node: ^20.19.0 || >=22.12.0} hasBin: true - rolldown@1.0.0-rc.5: - resolution: {integrity: sha512-0AdalTs6hNTioaCYIkAa7+xsmHBfU5hCNclZnM/lp7lGGDuUOb6N4BVNtwiomybbencDjq/waKjTImqiGCs5sw==} - engines: {node: ^20.19.0 || >=22.12.0} - hasBin: true - rollup@4.57.1: resolution: {integrity: sha512-oQL6lgK3e2QZeQ7gcgIkS2YZPg5slw37hYufJ3edKlfQSGGm8ICoxswK15ntSzF/a8+h7ekRy7k7oWc3BQ7y8A==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} @@ -5390,6 +5293,11 @@ packages: signal-polyfill@0.2.2: resolution: {integrity: sha512-p63Y4Er5/eMQ9RHg0M0Y64NlsQKpiu6MDdhBXpyywRuWiPywhJTpKJ1iB5K2hJEbFZ0BnDS7ZkJ+0AfTuL37Rg==} + signal-utils@0.21.1: + resolution: {integrity: sha512-i9cdLSvVH4j8ql8mz2lyrA93xL499P8wEbIev3ldSriXeUwqh+wM4Q5VPhIZ19gPtIS4BOopJuKB8l1+wH9LCg==} + peerDependencies: + signal-polyfill: ^0.2.0 + simple-git@3.31.1: resolution: {integrity: sha512-oiWP4Q9+kO8q9hHqkX35uuHmxiEbZNTrZ5IPxgMGrJwN76pzjm/jabkZO0ItEcqxAincqGAzL3QHSaHt4+knBg==} @@ -5847,9 +5755,6 @@ packages: webidl-conversions@3.0.1: resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} - whatwg-fetch@3.6.20: - resolution: {integrity: sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg==} - whatwg-url@5.0.0: resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} @@ -7329,7 +7234,7 @@ snapshots: transitivePeerDependencies: - debug - '@lit-labs/signals@0.2.0': + '@lit-labs/signals@0.1.3': dependencies: lit: 3.3.2 signal-polyfill: 0.2.2 @@ -8081,8 +7986,6 @@ snapshots: '@oxc-project/types@0.112.0': {} - '@oxc-project/types@0.114.0': {} - '@oxfmt/binding-android-arm-eabi@0.33.0': optional: true @@ -8288,89 +8191,46 @@ snapshots: '@rolldown/binding-android-arm64@1.0.0-rc.3': optional: true - '@rolldown/binding-android-arm64@1.0.0-rc.5': - optional: true - '@rolldown/binding-darwin-arm64@1.0.0-rc.3': optional: true - '@rolldown/binding-darwin-arm64@1.0.0-rc.5': - optional: true - '@rolldown/binding-darwin-x64@1.0.0-rc.3': optional: true - '@rolldown/binding-darwin-x64@1.0.0-rc.5': - optional: true - '@rolldown/binding-freebsd-x64@1.0.0-rc.3': optional: true - '@rolldown/binding-freebsd-x64@1.0.0-rc.5': - optional: true - '@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.3': optional: true - '@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.5': - optional: true - '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.3': optional: true - '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.5': - optional: true - '@rolldown/binding-linux-arm64-musl@1.0.0-rc.3': optional: true - '@rolldown/binding-linux-arm64-musl@1.0.0-rc.5': - optional: true - '@rolldown/binding-linux-x64-gnu@1.0.0-rc.3': optional: true - '@rolldown/binding-linux-x64-gnu@1.0.0-rc.5': - optional: true - '@rolldown/binding-linux-x64-musl@1.0.0-rc.3': optional: true - '@rolldown/binding-linux-x64-musl@1.0.0-rc.5': - optional: true - '@rolldown/binding-openharmony-arm64@1.0.0-rc.3': optional: true - '@rolldown/binding-openharmony-arm64@1.0.0-rc.5': - optional: true - '@rolldown/binding-wasm32-wasi@1.0.0-rc.3': dependencies: '@napi-rs/wasm-runtime': 1.1.1 optional: true - '@rolldown/binding-wasm32-wasi@1.0.0-rc.5': - dependencies: - '@napi-rs/wasm-runtime': 1.1.1 - optional: true - '@rolldown/binding-win32-arm64-msvc@1.0.0-rc.3': optional: true - '@rolldown/binding-win32-arm64-msvc@1.0.0-rc.5': - optional: true - '@rolldown/binding-win32-x64-msvc@1.0.0-rc.3': optional: true - '@rolldown/binding-win32-x64-msvc@1.0.0-rc.5': - optional: true - '@rolldown/pluginutils@1.0.0-rc.3': {} - '@rolldown/pluginutils@1.0.0-rc.5': {} - '@rollup/rollup-android-arm-eabi@4.57.1': optional: true @@ -10934,10 +10794,6 @@ snapshots: opus-decoder: 0.7.11 optional: true - ollama@0.6.3: - dependencies: - whatwg-fetch: 3.6.20 - on-exit-leak-free@2.1.2: {} on-finished@2.3.0: @@ -11433,25 +11289,6 @@ snapshots: '@rolldown/binding-win32-arm64-msvc': 1.0.0-rc.3 '@rolldown/binding-win32-x64-msvc': 1.0.0-rc.3 - rolldown@1.0.0-rc.5: - dependencies: - '@oxc-project/types': 0.114.0 - '@rolldown/pluginutils': 1.0.0-rc.5 - optionalDependencies: - '@rolldown/binding-android-arm64': 1.0.0-rc.5 - '@rolldown/binding-darwin-arm64': 1.0.0-rc.5 - '@rolldown/binding-darwin-x64': 1.0.0-rc.5 - '@rolldown/binding-freebsd-x64': 1.0.0-rc.5 - '@rolldown/binding-linux-arm-gnueabihf': 1.0.0-rc.5 - '@rolldown/binding-linux-arm64-gnu': 1.0.0-rc.5 - '@rolldown/binding-linux-arm64-musl': 1.0.0-rc.5 - '@rolldown/binding-linux-x64-gnu': 1.0.0-rc.5 - '@rolldown/binding-linux-x64-musl': 1.0.0-rc.5 - '@rolldown/binding-openharmony-arm64': 1.0.0-rc.5 - '@rolldown/binding-wasm32-wasi': 1.0.0-rc.5 - '@rolldown/binding-win32-arm64-msvc': 1.0.0-rc.5 - '@rolldown/binding-win32-x64-msvc': 1.0.0-rc.5 - rollup@4.57.1: dependencies: '@types/estree': 1.0.8 @@ -11649,6 +11486,10 @@ snapshots: signal-polyfill@0.2.2: {} + signal-utils@0.21.1(signal-polyfill@0.2.2): + dependencies: + signal-polyfill: 0.2.2 + simple-git@3.31.1: dependencies: '@kwsites/file-exists': 1.1.1 @@ -12052,8 +11893,6 @@ snapshots: webidl-conversions@3.0.1: {} - whatwg-fetch@3.6.20: {} - whatwg-url@5.0.0: dependencies: tr46: 0.0.3 diff --git a/scripts/bundle-a2ui.sh b/scripts/bundle-a2ui.sh index aeade1b06..ff85dd044 100755 --- a/scripts/bundle-a2ui.sh +++ b/scripts/bundle-a2ui.sh @@ -86,6 +86,10 @@ if [[ -f "$HASH_FILE" ]]; then fi pnpm -s exec tsc -p "$A2UI_RENDERER_DIR/tsconfig.json" -rolldown -c "$A2UI_APP_DIR/rolldown.config.mjs" +if command -v rolldown >/dev/null 2>&1; then + rolldown -c "$A2UI_APP_DIR/rolldown.config.mjs" +else + pnpm dlx "rolldown@1.0.0-rc.5" -c "$A2UI_APP_DIR/rolldown.config.mjs" +fi echo "$current_hash" > "$HASH_FILE" diff --git a/ui/package.json b/ui/package.json index 14b4d4221..bac33ae24 100644 --- a/ui/package.json +++ b/ui/package.json @@ -9,10 +9,14 @@ "test": "vitest run --config vitest.config.ts" }, "dependencies": { + "@lit-labs/signals": "^0.1.3", + "@lit/context": "^1.1.4", "@noble/ed25519": "3.0.0", "dompurify": "^3.3.1", "lit": "^3.3.2", "marked": "^17.0.3", + "signal-polyfill": "^0.2.2", + "signal-utils": "^0.21.1", "vite": "7.3.1" }, "devDependencies": {