@stacksjs/stx 0.2.83 → 0.2.84
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app-shell.js +6 -6
- package/dist/build-assets.js +6 -6
- package/dist/build-mode-detector.js +6 -6
- package/dist/build-views.js +6 -6
- package/dist/build.js +6 -6
- package/dist/caching.js +6 -6
- package/dist/cli.js +7 -7
- package/dist/component-processing.js +6 -6
- package/dist/component-renderer.js +6 -6
- package/dist/components.js +6 -6
- package/dist/dev-server/index.js +6 -6
- package/dist/dev-server/serve-app.js +6 -6
- package/dist/dev-server/serve-file.js +6 -6
- package/dist/dev-server/serve-markdown.js +6 -6
- package/dist/dev-server/serve-multi.js +6 -6
- package/dist/dev-server.js +6 -6
- package/dist/docs.js +6 -6
- package/dist/dynamic-components.js +6 -6
- package/dist/includes.js +6 -6
- package/dist/index.js +6 -6
- package/dist/interactive.js +6 -6
- package/dist/lazy-loader.js +6 -6
- package/dist/plugin.js +6 -6
- package/dist/process.js +6 -6
- package/dist/production-builder.js +6 -6
- package/dist/production-server.js +6 -6
- package/dist/pwa/index.js +6 -6
- package/dist/pwa/offline.js +6 -6
- package/dist/pwa.js +6 -6
- package/dist/render.js +6 -6
- package/dist/runtime-injection.js +6 -6
- package/dist/serve.js +6 -6
- package/dist/signal-processing.js +6 -6
- package/dist/signals.js +6 -6
- package/dist/site-builder/build.js +6 -6
- package/dist/site-builder/index.js +6 -6
- package/dist/ssg.js +6 -6
- package/dist/ssr.js +6 -6
- package/dist/story/cli.js +6 -6
- package/dist/story/commands/dev.js +6 -6
- package/dist/story/commands/index.js +6 -6
- package/dist/story/index.js +6 -6
- package/dist/story/renderer.js +6 -6
- package/dist/story/server.js +6 -6
- package/dist/story/visual-testing.js +6 -6
- package/dist/streaming.js +6 -6
- package/dist/template-compiler.js +6 -6
- package/dist/template-hydrator.js +6 -6
- package/dist/testing.js +6 -6
- package/dist/utils.js +6 -6
- package/dist/web-components.js +6 -6
- package/package.json +5 -5
|
@@ -8806,10 +8806,10 @@ else {
|
|
|
8806
8806
|
var root = scriptEl ? scriptEl.nextElementSibling : null;
|
|
8807
8807
|
if (!root && scriptEl) root = scriptEl.previousElementSibling || scriptEl.parentElement;
|
|
8808
8808
|
|
|
8809
|
-
// SPA fallback: during router navigation, script is appended to
|
|
8809
|
+
// SPA fallback: during router navigation, script is appended to body>
|
|
8810
8810
|
// (not inside the content container), so nextElementSibling won't find the page content.
|
|
8811
8811
|
// Only use fallback when we genuinely couldn't find a suitable root element.
|
|
8812
|
-
// Do NOT fallback just because the script is in
|
|
8812
|
+
// Do NOT fallback just because the script is in body> \u2014 layout scripts in body>
|
|
8813
8813
|
// with valid siblings (e.g. sidebar <aside>) should use those siblings as root.
|
|
8814
8814
|
var needsFallback = !root || root === document.body
|
|
8815
8815
|
|| (root && root.tagName === 'SCRIPT');
|
|
@@ -9128,7 +9128,7 @@ else {
|
|
|
9128
9128
|
mountCallbacks.forEach(fn => fn());
|
|
9129
9129
|
});
|
|
9130
9130
|
|
|
9131
|
-
// Multi-root fragment fix: a no
|
|
9131
|
+
// Multi-root fragment fix: a no-body> setup page tags only the FIRST
|
|
9132
9132
|
// top-level element with data-stx (signal-processing.ts marks one element),
|
|
9133
9133
|
// so sibling root elements were orphaned \u2014 their :if / :for / {{ }} / x-text
|
|
9134
9134
|
// never hydrated, which read as "{{ }} doesn't work under :if/:for". The
|
|
@@ -9225,7 +9225,7 @@ else {
|
|
|
9225
9225
|
el.querySelectorAll('[x-cloak]').forEach(function(c) { c.removeAttribute('x-cloak'); });
|
|
9226
9226
|
});
|
|
9227
9227
|
|
|
9228
|
-
// Process
|
|
9228
|
+
// Process head> elements (title, meta) that may contain {{ }} expressions
|
|
9229
9229
|
// Use componentScope which now contains variables from processed components
|
|
9230
9230
|
const headElements = document.querySelectorAll('head title, head meta[content]');
|
|
9231
9231
|
headElements.forEach(el => {
|
|
@@ -9421,7 +9421,7 @@ catch (e) { console.warn('[stx] destroy callback error:', e); }
|
|
|
9421
9421
|
|
|
9422
9422
|
// Apply new page's SFC setup function. During SPA navigation, re-executed page
|
|
9423
9423
|
// scripts set window.stx._latestSetup to the new setup function. This takes priority
|
|
9424
|
-
// over the stale data-stx attribute on
|
|
9424
|
+
// over the stale data-stx attribute on body> (which has the PREVIOUS page's function name).
|
|
9425
9425
|
var usedLatestSetup = false;
|
|
9426
9426
|
if (window.stx._latestSetup && typeof window.stx._latestSetup === 'function') {
|
|
9427
9427
|
try {
|
|
@@ -9505,7 +9505,7 @@ catch (e) { console.warn('[stx] destroy callback error:', e); }
|
|
|
9505
9505
|
|
|
9506
9506
|
// Process the container content \u2014 bind {{ }}, :attr, @event directives.
|
|
9507
9507
|
// Run synchronously (not in setTimeout) so componentScope is captured correctly.
|
|
9508
|
-
// The DOMContentLoaded path processes
|
|
9508
|
+
// The DOMContentLoaded path processes body> synchronously \u2014 the SPA path must match.
|
|
9509
9509
|
console.log('[stx:load] container:', container.tagName, '__stx_scope:', !!container.__stx_scope, 'scope keys:', Object.keys(componentScope).slice(0, 10));
|
|
9510
9510
|
if (!container.__stx_scope) {
|
|
9511
9511
|
// Dispose previous effects on the container (from prior navigation)
|
|
@@ -8736,10 +8736,10 @@ else {
|
|
|
8736
8736
|
var root = scriptEl ? scriptEl.nextElementSibling : null;
|
|
8737
8737
|
if (!root && scriptEl) root = scriptEl.previousElementSibling || scriptEl.parentElement;
|
|
8738
8738
|
|
|
8739
|
-
// SPA fallback: during router navigation, script is appended to
|
|
8739
|
+
// SPA fallback: during router navigation, script is appended to body>
|
|
8740
8740
|
// (not inside the content container), so nextElementSibling won't find the page content.
|
|
8741
8741
|
// Only use fallback when we genuinely couldn't find a suitable root element.
|
|
8742
|
-
// Do NOT fallback just because the script is in
|
|
8742
|
+
// Do NOT fallback just because the script is in body> \u2014 layout scripts in body>
|
|
8743
8743
|
// with valid siblings (e.g. sidebar <aside>) should use those siblings as root.
|
|
8744
8744
|
var needsFallback = !root || root === document.body
|
|
8745
8745
|
|| (root && root.tagName === 'SCRIPT');
|
|
@@ -9058,7 +9058,7 @@ else {
|
|
|
9058
9058
|
mountCallbacks.forEach(fn => fn());
|
|
9059
9059
|
});
|
|
9060
9060
|
|
|
9061
|
-
// Multi-root fragment fix: a no
|
|
9061
|
+
// Multi-root fragment fix: a no-body> setup page tags only the FIRST
|
|
9062
9062
|
// top-level element with data-stx (signal-processing.ts marks one element),
|
|
9063
9063
|
// so sibling root elements were orphaned \u2014 their :if / :for / {{ }} / x-text
|
|
9064
9064
|
// never hydrated, which read as "{{ }} doesn't work under :if/:for". The
|
|
@@ -9155,7 +9155,7 @@ else {
|
|
|
9155
9155
|
el.querySelectorAll('[x-cloak]').forEach(function(c) { c.removeAttribute('x-cloak'); });
|
|
9156
9156
|
});
|
|
9157
9157
|
|
|
9158
|
-
// Process
|
|
9158
|
+
// Process head> elements (title, meta) that may contain {{ }} expressions
|
|
9159
9159
|
// Use componentScope which now contains variables from processed components
|
|
9160
9160
|
const headElements = document.querySelectorAll('head title, head meta[content]');
|
|
9161
9161
|
headElements.forEach(el => {
|
|
@@ -9351,7 +9351,7 @@ catch (e) { console.warn('[stx] destroy callback error:', e); }
|
|
|
9351
9351
|
|
|
9352
9352
|
// Apply new page's SFC setup function. During SPA navigation, re-executed page
|
|
9353
9353
|
// scripts set window.stx._latestSetup to the new setup function. This takes priority
|
|
9354
|
-
// over the stale data-stx attribute on
|
|
9354
|
+
// over the stale data-stx attribute on body> (which has the PREVIOUS page's function name).
|
|
9355
9355
|
var usedLatestSetup = false;
|
|
9356
9356
|
if (window.stx._latestSetup && typeof window.stx._latestSetup === 'function') {
|
|
9357
9357
|
try {
|
|
@@ -9435,7 +9435,7 @@ catch (e) { console.warn('[stx] destroy callback error:', e); }
|
|
|
9435
9435
|
|
|
9436
9436
|
// Process the container content \u2014 bind {{ }}, :attr, @event directives.
|
|
9437
9437
|
// Run synchronously (not in setTimeout) so componentScope is captured correctly.
|
|
9438
|
-
// The DOMContentLoaded path processes
|
|
9438
|
+
// The DOMContentLoaded path processes body> synchronously \u2014 the SPA path must match.
|
|
9439
9439
|
console.log('[stx:load] container:', container.tagName, '__stx_scope:', !!container.__stx_scope, 'scope keys:', Object.keys(componentScope).slice(0, 10));
|
|
9440
9440
|
if (!container.__stx_scope) {
|
|
9441
9441
|
// Dispose previous effects on the container (from prior navigation)
|
package/dist/testing.js
CHANGED
|
@@ -8736,10 +8736,10 @@ else {
|
|
|
8736
8736
|
var root = scriptEl ? scriptEl.nextElementSibling : null;
|
|
8737
8737
|
if (!root && scriptEl) root = scriptEl.previousElementSibling || scriptEl.parentElement;
|
|
8738
8738
|
|
|
8739
|
-
// SPA fallback: during router navigation, script is appended to
|
|
8739
|
+
// SPA fallback: during router navigation, script is appended to body>
|
|
8740
8740
|
// (not inside the content container), so nextElementSibling won't find the page content.
|
|
8741
8741
|
// Only use fallback when we genuinely couldn't find a suitable root element.
|
|
8742
|
-
// Do NOT fallback just because the script is in
|
|
8742
|
+
// Do NOT fallback just because the script is in body> \u2014 layout scripts in body>
|
|
8743
8743
|
// with valid siblings (e.g. sidebar <aside>) should use those siblings as root.
|
|
8744
8744
|
var needsFallback = !root || root === document.body
|
|
8745
8745
|
|| (root && root.tagName === 'SCRIPT');
|
|
@@ -9058,7 +9058,7 @@ else {
|
|
|
9058
9058
|
mountCallbacks.forEach(fn => fn());
|
|
9059
9059
|
});
|
|
9060
9060
|
|
|
9061
|
-
// Multi-root fragment fix: a no
|
|
9061
|
+
// Multi-root fragment fix: a no-body> setup page tags only the FIRST
|
|
9062
9062
|
// top-level element with data-stx (signal-processing.ts marks one element),
|
|
9063
9063
|
// so sibling root elements were orphaned \u2014 their :if / :for / {{ }} / x-text
|
|
9064
9064
|
// never hydrated, which read as "{{ }} doesn't work under :if/:for". The
|
|
@@ -9155,7 +9155,7 @@ else {
|
|
|
9155
9155
|
el.querySelectorAll('[x-cloak]').forEach(function(c) { c.removeAttribute('x-cloak'); });
|
|
9156
9156
|
});
|
|
9157
9157
|
|
|
9158
|
-
// Process
|
|
9158
|
+
// Process head> elements (title, meta) that may contain {{ }} expressions
|
|
9159
9159
|
// Use componentScope which now contains variables from processed components
|
|
9160
9160
|
const headElements = document.querySelectorAll('head title, head meta[content]');
|
|
9161
9161
|
headElements.forEach(el => {
|
|
@@ -9351,7 +9351,7 @@ catch (e) { console.warn('[stx] destroy callback error:', e); }
|
|
|
9351
9351
|
|
|
9352
9352
|
// Apply new page's SFC setup function. During SPA navigation, re-executed page
|
|
9353
9353
|
// scripts set window.stx._latestSetup to the new setup function. This takes priority
|
|
9354
|
-
// over the stale data-stx attribute on
|
|
9354
|
+
// over the stale data-stx attribute on body> (which has the PREVIOUS page's function name).
|
|
9355
9355
|
var usedLatestSetup = false;
|
|
9356
9356
|
if (window.stx._latestSetup && typeof window.stx._latestSetup === 'function') {
|
|
9357
9357
|
try {
|
|
@@ -9435,7 +9435,7 @@ catch (e) { console.warn('[stx] destroy callback error:', e); }
|
|
|
9435
9435
|
|
|
9436
9436
|
// Process the container content \u2014 bind {{ }}, :attr, @event directives.
|
|
9437
9437
|
// Run synchronously (not in setTimeout) so componentScope is captured correctly.
|
|
9438
|
-
// The DOMContentLoaded path processes
|
|
9438
|
+
// The DOMContentLoaded path processes body> synchronously \u2014 the SPA path must match.
|
|
9439
9439
|
console.log('[stx:load] container:', container.tagName, '__stx_scope:', !!container.__stx_scope, 'scope keys:', Object.keys(componentScope).slice(0, 10));
|
|
9440
9440
|
if (!container.__stx_scope) {
|
|
9441
9441
|
// Dispose previous effects on the container (from prior navigation)
|
package/dist/utils.js
CHANGED
|
@@ -7235,10 +7235,10 @@ else {
|
|
|
7235
7235
|
var root = scriptEl ? scriptEl.nextElementSibling : null;
|
|
7236
7236
|
if (!root && scriptEl) root = scriptEl.previousElementSibling || scriptEl.parentElement;
|
|
7237
7237
|
|
|
7238
|
-
// SPA fallback: during router navigation, script is appended to
|
|
7238
|
+
// SPA fallback: during router navigation, script is appended to body>
|
|
7239
7239
|
// (not inside the content container), so nextElementSibling won't find the page content.
|
|
7240
7240
|
// Only use fallback when we genuinely couldn't find a suitable root element.
|
|
7241
|
-
// Do NOT fallback just because the script is in
|
|
7241
|
+
// Do NOT fallback just because the script is in body> \u2014 layout scripts in body>
|
|
7242
7242
|
// with valid siblings (e.g. sidebar <aside>) should use those siblings as root.
|
|
7243
7243
|
var needsFallback = !root || root === document.body
|
|
7244
7244
|
|| (root && root.tagName === 'SCRIPT');
|
|
@@ -7557,7 +7557,7 @@ else {
|
|
|
7557
7557
|
mountCallbacks.forEach(fn => fn());
|
|
7558
7558
|
});
|
|
7559
7559
|
|
|
7560
|
-
// Multi-root fragment fix: a no
|
|
7560
|
+
// Multi-root fragment fix: a no-body> setup page tags only the FIRST
|
|
7561
7561
|
// top-level element with data-stx (signal-processing.ts marks one element),
|
|
7562
7562
|
// so sibling root elements were orphaned \u2014 their :if / :for / {{ }} / x-text
|
|
7563
7563
|
// never hydrated, which read as "{{ }} doesn't work under :if/:for". The
|
|
@@ -7654,7 +7654,7 @@ else {
|
|
|
7654
7654
|
el.querySelectorAll('[x-cloak]').forEach(function(c) { c.removeAttribute('x-cloak'); });
|
|
7655
7655
|
});
|
|
7656
7656
|
|
|
7657
|
-
// Process
|
|
7657
|
+
// Process head> elements (title, meta) that may contain {{ }} expressions
|
|
7658
7658
|
// Use componentScope which now contains variables from processed components
|
|
7659
7659
|
const headElements = document.querySelectorAll('head title, head meta[content]');
|
|
7660
7660
|
headElements.forEach(el => {
|
|
@@ -7850,7 +7850,7 @@ catch (e) { console.warn('[stx] destroy callback error:', e); }
|
|
|
7850
7850
|
|
|
7851
7851
|
// Apply new page's SFC setup function. During SPA navigation, re-executed page
|
|
7852
7852
|
// scripts set window.stx._latestSetup to the new setup function. This takes priority
|
|
7853
|
-
// over the stale data-stx attribute on
|
|
7853
|
+
// over the stale data-stx attribute on body> (which has the PREVIOUS page's function name).
|
|
7854
7854
|
var usedLatestSetup = false;
|
|
7855
7855
|
if (window.stx._latestSetup && typeof window.stx._latestSetup === 'function') {
|
|
7856
7856
|
try {
|
|
@@ -7934,7 +7934,7 @@ catch (e) { console.warn('[stx] destroy callback error:', e); }
|
|
|
7934
7934
|
|
|
7935
7935
|
// Process the container content \u2014 bind {{ }}, :attr, @event directives.
|
|
7936
7936
|
// Run synchronously (not in setTimeout) so componentScope is captured correctly.
|
|
7937
|
-
// The DOMContentLoaded path processes
|
|
7937
|
+
// The DOMContentLoaded path processes body> synchronously \u2014 the SPA path must match.
|
|
7938
7938
|
console.log('[stx:load] container:', container.tagName, '__stx_scope:', !!container.__stx_scope, 'scope keys:', Object.keys(componentScope).slice(0, 10));
|
|
7939
7939
|
if (!container.__stx_scope) {
|
|
7940
7940
|
// Dispose previous effects on the container (from prior navigation)
|
package/dist/web-components.js
CHANGED
|
@@ -8736,10 +8736,10 @@ else {
|
|
|
8736
8736
|
var root = scriptEl ? scriptEl.nextElementSibling : null;
|
|
8737
8737
|
if (!root && scriptEl) root = scriptEl.previousElementSibling || scriptEl.parentElement;
|
|
8738
8738
|
|
|
8739
|
-
// SPA fallback: during router navigation, script is appended to
|
|
8739
|
+
// SPA fallback: during router navigation, script is appended to body>
|
|
8740
8740
|
// (not inside the content container), so nextElementSibling won't find the page content.
|
|
8741
8741
|
// Only use fallback when we genuinely couldn't find a suitable root element.
|
|
8742
|
-
// Do NOT fallback just because the script is in
|
|
8742
|
+
// Do NOT fallback just because the script is in body> \u2014 layout scripts in body>
|
|
8743
8743
|
// with valid siblings (e.g. sidebar <aside>) should use those siblings as root.
|
|
8744
8744
|
var needsFallback = !root || root === document.body
|
|
8745
8745
|
|| (root && root.tagName === 'SCRIPT');
|
|
@@ -9058,7 +9058,7 @@ else {
|
|
|
9058
9058
|
mountCallbacks.forEach(fn => fn());
|
|
9059
9059
|
});
|
|
9060
9060
|
|
|
9061
|
-
// Multi-root fragment fix: a no
|
|
9061
|
+
// Multi-root fragment fix: a no-body> setup page tags only the FIRST
|
|
9062
9062
|
// top-level element with data-stx (signal-processing.ts marks one element),
|
|
9063
9063
|
// so sibling root elements were orphaned \u2014 their :if / :for / {{ }} / x-text
|
|
9064
9064
|
// never hydrated, which read as "{{ }} doesn't work under :if/:for". The
|
|
@@ -9155,7 +9155,7 @@ else {
|
|
|
9155
9155
|
el.querySelectorAll('[x-cloak]').forEach(function(c) { c.removeAttribute('x-cloak'); });
|
|
9156
9156
|
});
|
|
9157
9157
|
|
|
9158
|
-
// Process
|
|
9158
|
+
// Process head> elements (title, meta) that may contain {{ }} expressions
|
|
9159
9159
|
// Use componentScope which now contains variables from processed components
|
|
9160
9160
|
const headElements = document.querySelectorAll('head title, head meta[content]');
|
|
9161
9161
|
headElements.forEach(el => {
|
|
@@ -9351,7 +9351,7 @@ catch (e) { console.warn('[stx] destroy callback error:', e); }
|
|
|
9351
9351
|
|
|
9352
9352
|
// Apply new page's SFC setup function. During SPA navigation, re-executed page
|
|
9353
9353
|
// scripts set window.stx._latestSetup to the new setup function. This takes priority
|
|
9354
|
-
// over the stale data-stx attribute on
|
|
9354
|
+
// over the stale data-stx attribute on body> (which has the PREVIOUS page's function name).
|
|
9355
9355
|
var usedLatestSetup = false;
|
|
9356
9356
|
if (window.stx._latestSetup && typeof window.stx._latestSetup === 'function') {
|
|
9357
9357
|
try {
|
|
@@ -9435,7 +9435,7 @@ catch (e) { console.warn('[stx] destroy callback error:', e); }
|
|
|
9435
9435
|
|
|
9436
9436
|
// Process the container content \u2014 bind {{ }}, :attr, @event directives.
|
|
9437
9437
|
// Run synchronously (not in setTimeout) so componentScope is captured correctly.
|
|
9438
|
-
// The DOMContentLoaded path processes
|
|
9438
|
+
// The DOMContentLoaded path processes body> synchronously \u2014 the SPA path must match.
|
|
9439
9439
|
console.log('[stx:load] container:', container.tagName, '__stx_scope:', !!container.__stx_scope, 'scope keys:', Object.keys(componentScope).slice(0, 10));
|
|
9440
9440
|
if (!container.__stx_scope) {
|
|
9441
9441
|
// Dispose previous effects on the container (from prior navigation)
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stacksjs/stx",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.2.
|
|
4
|
+
"version": "0.2.84",
|
|
5
5
|
"description": "A performant UI Framework. Powered by Bun.",
|
|
6
6
|
"author": "Chris Breuer <chris@stacksjs.org>",
|
|
7
7
|
"license": "MIT",
|
|
@@ -117,13 +117,13 @@
|
|
|
117
117
|
"dependencies": {
|
|
118
118
|
"@cwcss/crosswind": "^0.2.6",
|
|
119
119
|
"@stacksjs/clapp": "^0.2.0",
|
|
120
|
-
"@stacksjs/desktop": "0.2.
|
|
121
|
-
"@stacksjs/sanitizer": "0.2.
|
|
120
|
+
"@stacksjs/desktop": "0.2.84",
|
|
121
|
+
"@stacksjs/sanitizer": "0.2.84",
|
|
122
122
|
"@stacksjs/ts-craft": "^0.0.2",
|
|
123
123
|
"@stacksjs/ts-i18n": "^0.1.11",
|
|
124
|
-
"bun-plugin-stx": "0.2.
|
|
124
|
+
"bun-plugin-stx": "0.2.84",
|
|
125
125
|
"bunfig": "^0.15.6",
|
|
126
|
-
"stx-router": "0.2.
|
|
126
|
+
"stx-router": "0.2.84",
|
|
127
127
|
"ts-broadcasting": "^0.0.4",
|
|
128
128
|
"ts-images": "^0.1.8",
|
|
129
129
|
"ts-syntax-highlighter": "^0.2.1"
|