You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(vr): lower Lit decorators via esbuild pre-transform under vite 8
Vite 8 transforms with Oxc, not esbuild, so the original D-VR-01
`esbuild.tsconfigRaw` decorator config was ignored and Lit's
`@customElement`/`@property`/`@queryAssignedElements` decorators leaked
raw → `SyntaxError` at load → blank Lit cells (the bulk of the failed
Linux VR run). Other 5 targets emit no decorators, so were unaffected.
Oxc's `decorator.legacy` path is NOT a faithful substitute: it fixes the
simple cells but DROPS the getter for `@queryAssignedElements({slot})`
initializer-less fields, so the Rozie-emitted `_armListeners()` slot
wiring reads `undefined.length` and the heavy Lit cells (code-mirror,
chart, tiptap, command-palette, data-table grids, *-virtual) crash at
`firstUpdated`.
Instead, lower the Lit `.rozie.ts` virtual modules with esbuild — the
exact, proven Vite ≤7 path — via an `enforce:'pre'` plugin, before Oxc
sees them. esbuild emits decorator-free JS so Oxc's pass is a no-op.
Scoped to the Lit sub-build's decorator-bearing modules only.
Verified: fresh dist/lit has zero raw-decorator leak; Card, Counter,
CodeMirror, Chart, TipTap, CommandPalette all mount with populated
shadow DOM and no console errors.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KSYH6VBAJwa7nYy4AksuNH
0 commit comments