From a5d930b01eac8cde107b373bb43567a8ab19e150 Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 2 Jul 2026 13:54:59 +0000 Subject: [PATCH 1/2] fix(admin-app): update AppOverlay.svelte for upstream codec/lucide renames MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit SLASHED's SL-016 (codec.ts's `fa` → `generateCSS`) and SL-022 (lucide-svelte → @lucide/svelte) landed in main via #474. AppOverlay.svelte is plugin-specific and not vendored, so it kept referencing the old names and broke `vite build` as soon as CI's prebuild sync pulled the renamed exports from slashed@main — failing on every open plugin PR, not just the one that triggered it. Swaps the import/call site to generateCSS and updates package.json/ package-lock.json to depend on @lucide/svelte instead of the deprecated lucide-svelte package. --- SLASHED-for-WP/admin-app/package-lock.json | 21 +++++++++---------- SLASHED-for-WP/admin-app/package.json | 2 +- .../admin-app/src/AppOverlay.svelte | 6 +++--- 3 files changed, 14 insertions(+), 15 deletions(-) diff --git a/SLASHED-for-WP/admin-app/package-lock.json b/SLASHED-for-WP/admin-app/package-lock.json index a76c5a4f..34a3e9df 100644 --- a/SLASHED-for-WP/admin-app/package-lock.json +++ b/SLASHED-for-WP/admin-app/package-lock.json @@ -8,8 +8,8 @@ "name": "slashed-admin-app", "version": "0.1.0", "dependencies": { + "@lucide/svelte": "^1.23.0", "fflate": "^0.8.3", - "lucide-svelte": "^1.0.1", "motion": "^12.23.24" }, "devDependencies": { @@ -102,6 +102,15 @@ "@jridgewell/sourcemap-codec": "^1.4.14" } }, + "node_modules/@lucide/svelte": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@lucide/svelte/-/svelte-1.23.0.tgz", + "integrity": "sha512-3LQbKXx9vId6Nx4E2Nu2qwgJfdmr5+CVeVJbxe5cy+HcnCRd9QVVtZXqvgBYAV1OJrPmQAf9/3gJWLCpASC/Ng==", + "license": "ISC", + "peerDependencies": { + "svelte": "^5" + } + }, "node_modules/@napi-rs/wasm-runtime": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.1.6.tgz", @@ -1216,16 +1225,6 @@ "integrity": "sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==", "license": "MIT" }, - "node_modules/lucide-svelte": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lucide-svelte/-/lucide-svelte-1.0.1.tgz", - "integrity": "sha512-WvzZgk0pqzgda+AErLvgWxHkfg/+GgUwqKMRHvzt0IqyMdmyEDzDCk3Z+Wo/3y753oIgx8u9Q4eUbWkghFa8Jg==", - "deprecated": "Package deprecated. Please use @lucide/svelte instead.", - "license": "ISC", - "peerDependencies": { - "svelte": "^3 || ^4 || ^5.0.0-next.42" - } - }, "node_modules/magic-string": { "version": "0.30.21", "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", diff --git a/SLASHED-for-WP/admin-app/package.json b/SLASHED-for-WP/admin-app/package.json index f5c18787..4a2d8c71 100644 --- a/SLASHED-for-WP/admin-app/package.json +++ b/SLASHED-for-WP/admin-app/package.json @@ -13,8 +13,8 @@ "check": "svelte-check --tsconfig ./tsconfig.json" }, "dependencies": { + "@lucide/svelte": "^1.23.0", "fflate": "^0.8.3", - "lucide-svelte": "^1.0.1", "motion": "^12.23.24" }, "devDependencies": { diff --git a/SLASHED-for-WP/admin-app/src/AppOverlay.svelte b/SLASHED-for-WP/admin-app/src/AppOverlay.svelte index 12264494..2bdd3dc8 100644 --- a/SLASHED-for-WP/admin-app/src/AppOverlay.svelte +++ b/SLASHED-for-WP/admin-app/src/AppOverlay.svelte @@ -4,14 +4,14 @@ import SidebarNav from './components/shell/SidebarNav.svelte'; import DomainPanel from './components/DomainPanel.svelte'; import CommandPalette from './components/CommandPalette.svelte'; - import { fa } from './lib/codec'; + import { generateCSS } from './lib/codec'; import { loadInitialOverrides, injectLivePreview, saveOverrides } from './lib/persistence'; import { registerPreviewDoc } from './lib/previewResolver.svelte'; import { domainOf } from './lib/domains'; import tokensRaw from './data/api-index.generated.json'; import { ChevronRight, Undo2, Redo2, Trash2, FolderOpen, Download, Save, Check, Loader2, - } from 'lucide-svelte'; + } from '@lucide/svelte'; const ALL_TOKENS = ((tokensRaw as any).tokens ?? tokensRaw) as SlashedToken[]; @@ -200,7 +200,7 @@ } function handleExport() { - const css = fa(overrides, { mode: 'layer', banner: true }); + const css = generateCSS(overrides, { mode: 'layer', banner: true }); const blob = new Blob([css], { type: 'text/css' }); const url = URL.createObjectURL(blob); const a = document.createElement('a'); From 3a93aed268a64bc9799a20c77fd5bb0be6ea37cb Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 2 Jul 2026 14:03:06 +0000 Subject: [PATCH 2/2] fix(admin-app): run sync before svelte-check via a precheck hook npm run check (svelte-check) had no equivalent of dev/build's predev/prebuild sync hook, so it type-checked whatever was already on disk. On a fresh checkout with the committed vendored src/ still predating the lucide-svelte rename, that meant a stale module-resolution error instead of an accurate check against the current framework source. --- SLASHED-for-WP/admin-app/package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/SLASHED-for-WP/admin-app/package.json b/SLASHED-for-WP/admin-app/package.json index 4a2d8c71..9b225418 100644 --- a/SLASHED-for-WP/admin-app/package.json +++ b/SLASHED-for-WP/admin-app/package.json @@ -10,6 +10,7 @@ "dev": "vite", "prebuild": "node scripts/sync-core.mjs", "build": "vite build", + "precheck": "node scripts/sync-core.mjs", "check": "svelte-check --tsconfig ./tsconfig.json" }, "dependencies": {