Resolves #11.
stx 0.2.72 fixes the long-standing bug where rendered as literal text inside client-reactive subtrees (stacksjs/stx#1748 + multi-root setup hydration). The x-text workaround is no longer needed, and is the cleaner, idiomatic form.
Changes
- 124
x-text/:textbindings →across 13 pages/components. Every site sits in a clientx-data/x-for/x-showscope. I verified in a real browser (headless Chrome) thatreacts inside an Alpinex-datascope — full parity withx-text(renders, matches, updates on state change) — since the framework's CDP verify only covered the signals path. - Bumps
@stacksjs/stxfrom 0.2.48 to^0.2.72andbun-plugin-stxto^0.2.72(the migration depends on it; this is a 24-version jump — I render-verified the touched pages still process cleanly).
Not touched (12 sites kept as x-text)
- Elements pairing a reactive value with a static SSR fallback child and no inline default (
…(<span x-text='selected.length'>0</span>),loading ? '…' : xwith a…placeholder) —x-textpreserves the fallback;would blank it until hydration. DiskPanelrows that deliberately dual-render (x-textoverride +SSR fallback content).- Two SVG
<text>nodes — a wrapping<span>is invalid inside SVG<text>(same reason<option>/<textarea>/<title>are excluded).
Verification
Rendered updates/system/DiskPanel/CleanupPanel/TopProcesses/ExtensionsPanel through processDirectives after the version bump: all process cleanly, with zero invalid <span> inside option/text/textarea/title and pre-existing untouched.
🤖 Generated with Claude Code