@fluixi/core 1.0.0-alpha.81 → 1.0.0-alpha.83

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.
Files changed (71) hide show
  1. package/dist/cdn/core.global.js +1 -1
  2. package/dist/src/cdn/chunk-55BT3H6E.mjs +1 -0
  3. package/dist/src/cdn/core.cjs +1 -1
  4. package/dist/src/cdn/core.mjs +1 -1
  5. package/dist/src/cdn/{router-QB3W43UQ.mjs → router-5JJZBK4E.mjs} +1 -1
  6. package/dist/src/index.cjs +1 -1
  7. package/dist/src/index.mjs +1 -1
  8. package/dist/src/lib/client/chunk-SM4WHBOP.mjs +1 -0
  9. package/dist/src/lib/client/index.cjs +1 -1
  10. package/dist/src/lib/client/index.d.ts +0 -15
  11. package/dist/src/lib/client/index.d.ts.map +1 -1
  12. package/dist/src/lib/client/index.js +10 -2
  13. package/dist/src/lib/client/index.mjs +1 -1
  14. package/dist/src/lib/client/router-IBD4WPQT.mjs +1 -0
  15. package/dist/src/lib/context/context.cjs +1 -1
  16. package/dist/src/lib/context/context.d.ts +1 -1
  17. package/dist/src/lib/context/context.d.ts.map +1 -1
  18. package/dist/src/lib/context/context.js +2 -2
  19. package/dist/src/lib/context/context.mjs +1 -1
  20. package/dist/src/lib/context/index.cjs +1 -1
  21. package/dist/src/lib/context/index.mjs +1 -1
  22. package/dist/src/lib/core.cjs +1 -1
  23. package/dist/src/lib/core.mjs +1 -1
  24. package/dist/src/lib/env/index.cjs +1 -1
  25. package/dist/src/lib/env/index.d.ts +2 -3
  26. package/dist/src/lib/env/index.d.ts.map +1 -1
  27. package/dist/src/lib/env/index.js +9 -4
  28. package/dist/src/lib/env/index.mjs +1 -1
  29. package/dist/src/lib/index.cjs +1 -1
  30. package/dist/src/lib/index.mjs +1 -1
  31. package/dist/src/lib/render/component.cjs +1 -1
  32. package/dist/src/lib/render/component.d.ts.map +1 -1
  33. package/dist/src/lib/render/component.js +16 -1
  34. package/dist/src/lib/render/component.mjs +1 -1
  35. package/dist/src/lib/render/deferred.cjs +1 -1
  36. package/dist/src/lib/render/deferred.d.ts.map +1 -1
  37. package/dist/src/lib/render/deferred.js +3 -3
  38. package/dist/src/lib/render/deferred.mjs +1 -1
  39. package/dist/src/lib/render/index.cjs +1 -1
  40. package/dist/src/lib/render/index.d.ts.map +1 -1
  41. package/dist/src/lib/render/index.js +4 -4
  42. package/dist/src/lib/render/index.mjs +1 -1
  43. package/dist/src/lib/render/lazy.cjs +1 -1
  44. package/dist/src/lib/render/lazy.d.ts.map +1 -1
  45. package/dist/src/lib/render/lazy.js +21 -3
  46. package/dist/src/lib/render/lazy.mjs +1 -1
  47. package/dist/src/lib/render/suspense.cjs +1 -1
  48. package/dist/src/lib/render/suspense.d.ts.map +1 -1
  49. package/dist/src/lib/render/suspense.js +1 -3
  50. package/dist/src/lib/render/suspense.mjs +1 -1
  51. package/dist/src/lib/render/versions.cjs +1 -1
  52. package/dist/src/lib/render/versions.mjs +1 -1
  53. package/dist/src/lib/router/data.cjs +1 -1
  54. package/dist/src/lib/router/data.d.ts.map +1 -1
  55. package/dist/src/lib/router/data.js +1 -1
  56. package/dist/src/lib/router/data.mjs +1 -1
  57. package/dist/src/lib/router/index.cjs +1 -1
  58. package/dist/src/lib/router/index.d.ts.map +1 -1
  59. package/dist/src/lib/router/index.js +6 -7
  60. package/dist/src/lib/router/index.mjs +1 -1
  61. package/dist/src/lib/theme/index.cjs +1 -1
  62. package/dist/src/lib/theme/index.mjs +1 -1
  63. package/dist/src/version.generated.cjs +1 -1
  64. package/dist/src/version.generated.d.ts +1 -1
  65. package/dist/src/version.generated.js +1 -1
  66. package/dist/src/version.generated.mjs +1 -1
  67. package/dist/tsconfig.lib.tsbuildinfo +1 -1
  68. package/package.json +11 -11
  69. package/dist/src/cdn/chunk-RN7C7HNS.mjs +0 -1
  70. package/dist/src/lib/client/chunk-FT22BLCQ.mjs +0 -1
  71. package/dist/src/lib/client/router-IH7JYMRU.mjs +0 -1
@@ -2,6 +2,7 @@
2
2
  * Component creation for Fluixi. Component-creation logic only — context lives in
3
3
  * the reactive system, rendering in render/index.ts, and SSR in server/.
4
4
  */
5
+ import { isServer } from '@fluixi/dom';
5
6
  import { createComponent as domCreateComponent, asComponent, } from '@fluixi/dom';
6
7
  import { untrack, onCleanup, getOwner, createEffect, createMemo, createSignal, isSignal, batch, runWithOwner, isOwnerDisposed, } from '@fluixi/reactive/signal';
7
8
  const sharedConfig = {
@@ -70,6 +71,13 @@ function getOwnerLifecycle() {
70
71
  function scheduleLifecycleFlush(lc) {
71
72
  if (lc.scheduled)
72
73
  return;
74
+ // The flush is a microtask, so on the server it lands after renderToString has
75
+ // returned and reaches for a DOM that is not there.
76
+ if (isServer()) {
77
+ lc.mounts = [];
78
+ lc.effects = [];
79
+ return;
80
+ }
73
81
  lc.scheduled = true;
74
82
  // Capture the owner now; by microtask time it will have been restored.
75
83
  const owner = getOwner();
@@ -176,11 +184,16 @@ export function $component(value, props) {
176
184
  // cannot have properties added in strict mode and would throw TypeError.
177
185
  // Also skip stamping reactive values (signals/memos) with $COMPONENT so the DOM
178
186
  // runtime doesn't misidentify them as static component thunks and cache them.
179
- if (component != null && (typeof component === 'function' || typeof component === 'object') && !isSignal(component)) {
187
+ const nameable = component != null && (typeof component === 'function' || typeof component === 'object');
188
+ // As in the dom integration: the name goes on a reactive return value too, since only
189
+ // `asComponent` has to avoid one.
190
+ if (nameable) {
180
191
  try {
181
192
  component['$name'] = value.name;
182
193
  }
183
194
  catch { }
195
+ }
196
+ if (nameable && !isSignal(component)) {
184
197
  // Always mark with asComponent so isComponent() works reliably in both dev and
185
198
  // production browser environments.
186
199
  return asComponent(component);
@@ -212,6 +225,8 @@ export function $component(value, props) {
212
225
  * ```
213
226
  */
214
227
  export function onMount(fn, reactive = true) {
228
+ if (isServer())
229
+ return;
215
230
  const lc = getOwnerLifecycle();
216
231
  if (lc) {
217
232
  if (!reactive) {
@@ -1 +1 @@
1
- import{createComponent as y,asComponent as m}from"@fluixi/dom";import{untrack as a,onCleanup as r,getOwner as f,createEffect as s,createMemo as x,createSignal as C,isSignal as T,batch as R,runWithOwner as E,isOwnerDisposed as O}from"@fluixi/reactive/signal";var c={context:null,owner:null};function W(){return c}function K(e){c.owner=e,c.context=e}function V(){return c.context||c.owner}var p=typeof process<"u"&&!1,u=Symbol.for("fluixi-lifecycle");function d(){let e=f();if(!e)return null;if(!e[u]){let t={mounts:[],effects:[],scheduled:!1};e[u]=t}return e[u]}function l(e){if(e.scheduled)return;e.scheduled=!0;let t=f();queueMicrotask(()=>{if(O(t)){e.mounts=[],e.effects=[];return}E(t,()=>{for(let n of e.mounts)try{let o=n();typeof o=="function"&&r(o)}catch(o){console.error("Error in onMount callback:",o)}for(let n of e.effects){let o;s(()=>{o&&o(),o=n()}),r(()=>{o&&o()})}e.mounts=[],e.effects=[]})})}function F(e){}function I(e,t){return y(e,t)}function N(e,t){let n=typeof e=="function"?a(()=>e(t)):e;if(n!=null&&(typeof n=="function"||typeof n=="object")&&!T(n)){try{n.$name=e.name}catch{}return m(n)}return n}function $(e,t=!0){let n=d();if(n){if(!t){n.scheduled||e();return}n.mounts.push(e),l(n)}else{if(!t){e();return}s(()=>{let o=a(e);typeof o=="function"&&r(o)})}}function q(e){r(e)}function w(e){let t=d();if(t)t.effects.push(e),l(t);else{let n;s(()=>{n&&n(),n=e()}),r(()=>{n&&n()})}}function P(e){return x(e)}function Y(e){let t={current:e};return r(()=>{t.current=null}),t}function z(e,t){let[n,o]=C(t);return[n,v=>{o(e(n(),v))}]}function B(e,t,n,o){w(()=>{let i=e&&"current"in e?e.current:e;if(i)return i.addEventListener(t,n,o),()=>{i.removeEventListener(t,n,o)}})}function G(e){return e}function H(){return f()!==null}function J(){return p}function Q(e){p&&e()}export{N as $component,p as DEV,R as batch,I as createComponent,s as createEffect,x as createMemo,Q as devOnly,F as ensureIntegration,V as getContextOwner,f as getOwner,W as getSharedConfig,H as hasLifecycleContext,J as isDev,r as onCleanup,$ as onMount,q as onUnmount,E as runWithOwner,K as setOwner,G as useCallback,w as useEffect,B as useEventListener,P as useMemo,z as useReducer,Y as useRef};
1
+ import{isServer as a}from"@fluixi/dom";import{createComponent as y,asComponent as x}from"@fluixi/dom";import{untrack as p,onCleanup as r,getOwner as f,createEffect as s,createMemo as C,createSignal as T,isSignal as E,batch as U,runWithOwner as O,isOwnerDisposed as w}from"@fluixi/reactive/signal";var c={context:null,owner:null};function V(){return c}function F(e){c.owner=e,c.context=e}function I(){return c.context||c.owner}var d=typeof process<"u"&&!1,u=Symbol.for("fluixi-lifecycle");function l(){let e=f();if(!e)return null;if(!e[u]){let t={mounts:[],effects:[],scheduled:!1};e[u]=t}return e[u]}function v(e){if(e.scheduled)return;if(a()){e.mounts=[],e.effects=[];return}e.scheduled=!0;let t=f();queueMicrotask(()=>{if(w(t)){e.mounts=[],e.effects=[];return}O(t,()=>{for(let n of e.mounts)try{let o=n();typeof o=="function"&&r(o)}catch(o){console.error("Error in onMount callback:",o)}for(let n of e.effects){let o;s(()=>{o&&o(),o=n()}),r(()=>{o&&o()})}e.mounts=[],e.effects=[]})})}function N(e){}function $(e,t){return y(e,t)}function q(e,t){let n=typeof e=="function"?p(()=>e(t)):e,o=n!=null&&(typeof n=="function"||typeof n=="object");if(o)try{n.$name=e.name}catch{}return o&&!E(n)?x(n):n}function P(e,t=!0){if(a())return;let n=l();if(n){if(!t){n.scheduled||e();return}n.mounts.push(e),v(n)}else{if(!t){e();return}s(()=>{let o=p(e);typeof o=="function"&&r(o)})}}function Y(e){r(e)}function h(e){let t=l();if(t)t.effects.push(e),v(t);else{let n;s(()=>{n&&n(),n=e()}),r(()=>{n&&n()})}}function z(e){return C(e)}function B(e){let t={current:e};return r(()=>{t.current=null}),t}function G(e,t){let[n,o]=T(t);return[n,m=>{o(e(n(),m))}]}function H(e,t,n,o){h(()=>{let i=e&&"current"in e?e.current:e;if(i)return i.addEventListener(t,n,o),()=>{i.removeEventListener(t,n,o)}})}function J(e){return e}function Q(){return f()!==null}function X(){return d}function Z(e){d&&e()}export{q as $component,d as DEV,U as batch,$ as createComponent,s as createEffect,C as createMemo,Z as devOnly,N as ensureIntegration,I as getContextOwner,f as getOwner,V as getSharedConfig,Q as hasLifecycleContext,X as isDev,r as onCleanup,P as onMount,Y as onUnmount,O as runWithOwner,F as setOwner,J as useCallback,h as useEffect,H as useEventListener,z as useMemo,G as useReducer,B as useRef};
@@ -1 +1 @@
1
- "use strict";var f=Object.defineProperty;var v=Object.getOwnPropertyDescriptor;var k=Object.getOwnPropertyNames;var g=Object.prototype.hasOwnProperty;var h=(e,t)=>{for(var i in t)f(e,i,{get:t[i],enumerable:!0})},b=(e,t,i,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of k(t))!g.call(e,n)&&n!==i&&f(e,n,{get:()=>t[n],enumerable:!(a=v(t,n))||a.enumerable});return e};var C=e=>b(f({},"__esModule",{value:!0}),e);var w={};h(w,{deferred:()=>L});module.exports=C(w);var u=require("@fluixi/reactive/signal"),y=require("@fluixi/dom/utils");var c=require("@fluixi/reactive/signal");function m(e,t){let i,a,n;function r(){return a||(a=e().then(s=>i=s.default)),a}t?.preload&&r();let o=(s=>{if(i){let d=i;return(0,c.untrack)(()=>d(s))}if(!n){let[d]=(0,c.createResource)(()=>r(),{transport:!1});if(n=d,d.error)throw d.error}return(0,c.createMemo)(()=>{let d=n();return d?(0,c.untrack)(()=>d(s)):void 0},void 0,{name:"lazy"})});return o.preload=()=>r().then(()=>{}),o.$lazy=!0,o.loader=e,o}var p=typeof window>"u";function L(e,t){let i=t.export??"default",a=m(()=>e().then(r=>{let o=r[i];if(typeof o!="function")throw new Error(`deferred(): module has no '${i}' export (got ${typeof o}).`);return{default:o}}),{fallback:t.fallback});function n(r){if(t.strategy.kind==="never")return p?a(r):null;if(p||t.strategy.kind==="eager")return a(r);let[o,s]=(0,u.createSignal)(!1),d=()=>{a.preload().then(()=>s(!0))},l=t.strategy.kind==="visible"?x():void 0;return P(t.strategy,d,l),(0,u.createMemo)(()=>o()?a(r):l??t.fallback??null,void 0,{name:"deferred"})}return n.preload=a.preload,n}function x(){let e=document.createElement("span");return e.setAttribute("data-fx-load","visible"),e.style.display="block",e}function P(e,t,i){let a=!1,n=()=>{a||(a=!0,t())};switch(e.kind){case"idle":{let r=globalThis.requestIdleCallback;r?r(n):setTimeout(n,1);return}case"visible":{if(!i||typeof IntersectionObserver>"u"){n();return}let r=(0,y.observeIntersection)(i,o=>{o&&(r(),n())},{rootMargin:e.rootMargin??"0px"});return}case"interaction":{let r=()=>{for(let o of e.events)document.removeEventListener(o,r,!0);n()};for(let o of e.events)document.addEventListener(o,r,{capture:!0,passive:!0});return}case"media":{if(typeof matchMedia>"u"){n();return}let r=matchMedia(e.query);if(r.matches){n();return}let o=s=>{s.matches&&(r.removeEventListener("change",o),n())};r.addEventListener("change",o);return}default:n()}}
1
+ "use strict";var f=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var h=Object.getOwnPropertyNames;var b=Object.prototype.hasOwnProperty;var C=(e,t)=>{for(var a in t)f(e,a,{get:t[a],enumerable:!0})},L=(e,t,a,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of h(t))!b.call(e,n)&&n!==a&&f(e,n,{get:()=>t[n],enumerable:!(i=g(t,n))||i.enumerable});return e};var x=e=>L(f({},"__esModule",{value:!0}),e);var M={};C(M,{deferred:()=>P});module.exports=x(M);var l=require("@fluixi/dom"),u=require("@fluixi/reactive/signal"),k=require("@fluixi/dom/utils");var y=require("@fluixi/dom"),c=require("@fluixi/reactive/signal");function p(e){if(e!=null&&(typeof e=="object"||typeof e=="function"))try{e.$lazy=!0}catch{}return e}function v(e,t){let a,i,n;function r(){return i||(i=e().then(s=>a=s.default)),i}t?.preload&&r();let o=(s=>{if(a){let d=a;return p((0,c.untrack)(()=>d(s)))}if(!n){let[d]=(0,c.createResource)(()=>r(),{transport:!1});if(n=d,d.error)throw d.error}return(0,c.createMemo)(()=>{let d=n();return d?p((0,y.createComponent)(d,s)):void 0})});return o.preload=()=>r().then(()=>{}),o.$lazy=!0,o.loader=e,o}function P(e,t){let a=t.export??"default",i=v(()=>e().then(r=>{let o=r[a];if(typeof o!="function")throw new Error(`deferred(): module has no '${a}' export (got ${typeof o}).`);return{default:o}}),{fallback:t.fallback});function n(r){if(t.strategy.kind==="never")return(0,l.isServer)()?i(r):null;if((0,l.isServer)()||t.strategy.kind==="eager")return i(r);let[o,s]=(0,u.createSignal)(!1),d=()=>{i.preload().then(()=>s(!0))},m=t.strategy.kind==="visible"?T():void 0;return w(t.strategy,d,m),(0,u.createMemo)(()=>o()?i(r):m??t.fallback??null,void 0,{name:"deferred"})}return n.preload=i.preload,n}function T(){let e=document.createElement("span");return e.setAttribute("data-fx-load","visible"),e.style.display="block",e}function w(e,t,a){let i=!1,n=()=>{i||(i=!0,t())};switch(e.kind){case"idle":{let r=globalThis.requestIdleCallback;r?r(n):setTimeout(n,1);return}case"visible":{if(!a||typeof IntersectionObserver>"u"){n();return}let r=(0,k.observeIntersection)(a,o=>{o&&(r(),n())},{rootMargin:e.rootMargin??"0px"});return}case"interaction":{let r=()=>{for(let o of e.events)document.removeEventListener(o,r,!0);n()};for(let o of e.events)document.addEventListener(o,r,{capture:!0,passive:!0});return}case"media":{if(typeof matchMedia>"u"){n();return}let r=matchMedia(e.query);if(r.matches){n();return}let o=s=>{s.matches&&(r.removeEventListener("change",o),n())};r.addEventListener("change",o);return}default:n()}}
@@ -1 +1 @@
1
- {"version":3,"file":"deferred.d.ts","sourceRoot":"","sources":["../../../../src/lib/render/deferred.ts"],"names":[],"mappings":"AAkBA,8DAA8D;AAC9D,MAAM,MAAM,YAAY,GACpB;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjB;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GACxC;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,GACzC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAChC;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC;AAEtB,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,YAAY,CAAC;IACvB,mEAAmE;IACnE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yCAAyC;IACzC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,KAAK,YAAY,GAAG,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC;AAExC;;;;;GAKG;AACH,wBAAgB,QAAQ,CACtB,MAAM,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAC9C,OAAO,EAAE,eAAe,GACvB,YAAY,GAAG;IAAE,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAAE,CA4CjD"}
1
+ {"version":3,"file":"deferred.d.ts","sourceRoot":"","sources":["../../../../src/lib/render/deferred.ts"],"names":[],"mappings":"AAmBA,8DAA8D;AAC9D,MAAM,MAAM,YAAY,GACpB;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjB;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GACxC;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,GACzC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAChC;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC;AAEtB,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,YAAY,CAAC;IACvB,mEAAmE;IACnE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yCAAyC;IACzC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,KAAK,YAAY,GAAG,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC;AAExC;;;;;GAKG;AACH,wBAAgB,QAAQ,CACtB,MAAM,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAC9C,OAAO,EAAE,eAAe,GACvB,YAAY,GAAG;IAAE,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAAE,CA4CjD"}
@@ -10,10 +10,10 @@
10
10
  * literal `import()`, which is what lets the bundler do chunking, hashing and
11
11
  * tree-shaking as ordinary behaviour rather than as an integration.
12
12
  */
13
+ import { isServer } from '@fluixi/dom';
13
14
  import { createMemo, createSignal } from '@fluixi/reactive/signal';
14
15
  import { observeIntersection } from '@fluixi/dom/utils';
15
16
  import { lazy } from './lazy.js';
16
- const isServer = typeof window === 'undefined';
17
17
  /**
18
18
  * Wrap a dynamic import so the component loads when its strategy says to.
19
19
  *
@@ -36,8 +36,8 @@ export function deferred(loader, options) {
36
36
  // stay out of the client bundle entirely. The compiler is what actually drops it —
37
37
  // this guard only stops the client from fetching it if one slips through.
38
38
  if (options.strategy.kind === 'never')
39
- return isServer ? Lazy(props) : null;
40
- if (isServer || options.strategy.kind === 'eager')
39
+ return isServer() ? Lazy(props) : null;
40
+ if (isServer() || options.strategy.kind === 'eager')
41
41
  return Lazy(props);
42
42
  const [ready, setReady] = createSignal(false);
43
43
  const start = () => {
@@ -1 +1 @@
1
- import{createMemo as y,createSignal as v}from"@fluixi/reactive/signal";import{observeIntersection as k}from"@fluixi/dom/utils";import{untrack as u,createMemo as m,createResource as p}from"@fluixi/reactive/signal";function f(r,a){let d,o,t;function e(){return o||(o=r().then(s=>d=s.default)),o}a?.preload&&e();let n=(s=>{if(d){let i=d;return u(()=>i(s))}if(!t){let[i]=p(()=>e(),{transport:!1});if(t=i,i.error)throw i.error}return m(()=>{let i=t();return i?u(()=>i(s)):void 0},void 0,{name:"lazy"})});return n.preload=()=>e().then(()=>{}),n.$lazy=!0,n.loader=r,n}var l=typeof window>"u";function M(r,a){let d=a.export??"default",o=f(()=>r().then(e=>{let n=e[d];if(typeof n!="function")throw new Error(`deferred(): module has no '${d}' export (got ${typeof n}).`);return{default:n}}),{fallback:a.fallback});function t(e){if(a.strategy.kind==="never")return l?o(e):null;if(l||a.strategy.kind==="eager")return o(e);let[n,s]=v(!1),i=()=>{o.preload().then(()=>s(!0))},c=a.strategy.kind==="visible"?g():void 0;return h(a.strategy,i,c),y(()=>n()?o(e):c??a.fallback??null,void 0,{name:"deferred"})}return t.preload=o.preload,t}function g(){let r=document.createElement("span");return r.setAttribute("data-fx-load","visible"),r.style.display="block",r}function h(r,a,d){let o=!1,t=()=>{o||(o=!0,a())};switch(r.kind){case"idle":{let e=globalThis.requestIdleCallback;e?e(t):setTimeout(t,1);return}case"visible":{if(!d||typeof IntersectionObserver>"u"){t();return}let e=k(d,n=>{n&&(e(),t())},{rootMargin:r.rootMargin??"0px"});return}case"interaction":{let e=()=>{for(let n of r.events)document.removeEventListener(n,e,!0);t()};for(let n of r.events)document.addEventListener(n,e,{capture:!0,passive:!0});return}case"media":{if(typeof matchMedia>"u"){t();return}let e=matchMedia(r.query);if(e.matches){t();return}let n=s=>{s.matches&&(e.removeEventListener("change",n),t())};e.addEventListener("change",n);return}default:t()}}export{M as deferred};
1
+ import{isServer as l}from"@fluixi/dom";import{createMemo as k,createSignal as g}from"@fluixi/reactive/signal";import{observeIntersection as h}from"@fluixi/dom/utils";import{createComponent as m}from"@fluixi/dom";import{untrack as p,createMemo as y,createResource as v}from"@fluixi/reactive/signal";function u(n){if(n!=null&&(typeof n=="object"||typeof n=="function"))try{n.$lazy=!0}catch{}return n}function f(n,i){let d,o,r;function e(){return o||(o=n().then(s=>d=s.default)),o}i?.preload&&e();let t=(s=>{if(d){let a=d;return u(p(()=>a(s)))}if(!r){let[a]=v(()=>e(),{transport:!1});if(r=a,a.error)throw a.error}return y(()=>{let a=r();return a?u(m(a,s)):void 0})});return t.preload=()=>e().then(()=>{}),t.$lazy=!0,t.loader=n,t}function O(n,i){let d=i.export??"default",o=f(()=>n().then(e=>{let t=e[d];if(typeof t!="function")throw new Error(`deferred(): module has no '${d}' export (got ${typeof t}).`);return{default:t}}),{fallback:i.fallback});function r(e){if(i.strategy.kind==="never")return l()?o(e):null;if(l()||i.strategy.kind==="eager")return o(e);let[t,s]=g(!1),a=()=>{o.preload().then(()=>s(!0))},c=i.strategy.kind==="visible"?b():void 0;return C(i.strategy,a,c),k(()=>t()?o(e):c??i.fallback??null,void 0,{name:"deferred"})}return r.preload=o.preload,r}function b(){let n=document.createElement("span");return n.setAttribute("data-fx-load","visible"),n.style.display="block",n}function C(n,i,d){let o=!1,r=()=>{o||(o=!0,i())};switch(n.kind){case"idle":{let e=globalThis.requestIdleCallback;e?e(r):setTimeout(r,1);return}case"visible":{if(!d||typeof IntersectionObserver>"u"){r();return}let e=h(d,t=>{t&&(e(),r())},{rootMargin:n.rootMargin??"0px"});return}case"interaction":{let e=()=>{for(let t of n.events)document.removeEventListener(t,e,!0);r()};for(let t of n.events)document.addEventListener(t,e,{capture:!0,passive:!0});return}case"media":{if(typeof matchMedia>"u"){r();return}let e=matchMedia(n.query);if(e.matches){r();return}let t=s=>{s.matches&&(e.removeEventListener("change",t),r())};e.addEventListener("change",t);return}default:r()}}export{O as deferred};
@@ -1 +1 @@
1
- "use strict";var k=Object.defineProperty;var re=Object.getOwnPropertyDescriptor;var ie=Object.getOwnPropertyNames;var se=Object.prototype.hasOwnProperty;var ae=(e,n)=>{for(var o in n)k(e,o,{get:n[o],enumerable:!0})},ce=(e,n,o,t)=>{if(n&&typeof n=="object"||typeof n=="function")for(let i of ie(n))!se.call(e,i)&&i!==o&&k(e,i,{get:()=>n[i],enumerable:!(t=re(n,i))||t.enumerable});return e};var ue=e=>ce(k({},"__esModule",{value:!0}),e);var Ce={};ae(Ce,{$component:()=>j,Await:()=>ee,DEV:()=>x,Suspense:()=>C,SuspenseList:()=>J,batch:()=>r.batch,cleanupDelegation:()=>xe,createComponent:()=>F,createEffect:()=>r.createEffect,createMemo:()=>r.createMemo,deferred:()=>Y,devOnly:()=>q,getOwner:()=>r.getOwner,getSharedConfig:()=>A,initDelegation:()=>he,isDev:()=>W,isJSXElement:()=>K,isLitResult:()=>B,isNode:()=>H,isPromise:()=>L,isRenderable:()=>ve,lazy:()=>w,onCleanup:()=>r.onCleanup,onMount:()=>$,onUnmount:()=>_,portal:()=>be,render:()=>te,runWithOwner:()=>r.runWithOwner,useCallback:()=>V,useEffect:()=>E,useEventListener:()=>I,useMemo:()=>z,useReducer:()=>U,useRef:()=>N});module.exports=ue(Ce);var ne=require("@fluixi/reactive/signal");var P=require("@fluixi/dom");var R="1.0.0-alpha.81";var l=require("@fluixi/dom");(0,P.registerCoreVersion)(R);var y=require("@fluixi/dom");var h=require("@fluixi/dom"),r=require("@fluixi/reactive/signal"),fe={context:null,owner:null};function A(){return fe}var x=typeof process<"u"&&!1,T=Symbol.for("fluixi-lifecycle");function M(){let e=(0,r.getOwner)();if(!e)return null;if(!e[T]){let n={mounts:[],effects:[],scheduled:!1};e[T]=n}return e[T]}function D(e){if(e.scheduled)return;e.scheduled=!0;let n=(0,r.getOwner)();queueMicrotask(()=>{if((0,r.isOwnerDisposed)(n)){e.mounts=[],e.effects=[];return}(0,r.runWithOwner)(n,()=>{for(let o of e.mounts)try{let t=o();typeof t=="function"&&(0,r.onCleanup)(t)}catch(t){console.error("Error in onMount callback:",t)}for(let o of e.effects){let t;(0,r.createEffect)(()=>{t&&t(),t=o()}),(0,r.onCleanup)(()=>{t&&t()})}e.mounts=[],e.effects=[]})})}function F(e,n){return(0,h.createComponent)(e,n)}function j(e,n){let o=typeof e=="function"?(0,r.untrack)(()=>e(n)):e;if(o!=null&&(typeof o=="function"||typeof o=="object")&&!(0,r.isSignal)(o)){try{o.$name=e.name}catch{}return(0,h.asComponent)(o)}return o}function $(e,n=!0){let o=M();if(o){if(!n){o.scheduled||e();return}o.mounts.push(e),D(o)}else{if(!n){e();return}(0,r.createEffect)(()=>{let t=(0,r.untrack)(e);typeof t=="function"&&(0,r.onCleanup)(t)})}}function _(e){(0,r.onCleanup)(e)}function E(e){let n=M();if(n)n.effects.push(e),D(n);else{let o;(0,r.createEffect)(()=>{o&&o(),o=e()}),(0,r.onCleanup)(()=>{o&&o()})}}function z(e){return(0,r.createMemo)(e)}function N(e){let n={current:e};return(0,r.onCleanup)(()=>{n.current=null}),n}function U(e,n){let[o,t]=(0,r.createSignal)(n);return[o,a=>{t(e(o(),a))}]}function I(e,n,o,t){E(()=>{let i=e&&"current"in e?e.current:e;if(i)return i.addEventListener(n,o,t),()=>{i.removeEventListener(n,o,t)}})}function V(e){return e}function W(){return x}function q(e){x&&e()}var c=require("@fluixi/reactive/signal"),p=require("@fluixi/dom");function H(e){return typeof window>"u"?!1:typeof Node=="function"&&e instanceof Node?!0:!!(e&&typeof e=="object"&&typeof e.nodeType=="number")}function B(e){return!e||typeof e!="object"?!1:!!(typeof e._$litType$<"u"||typeof e._$litDirective$<"u"||Array.isArray(e.strings)&&Array.isArray(e.values))}function L(e){return!!(e&&typeof e=="object"&&typeof e.then=="function"||e instanceof Promise)}function K(e){return!!(e&&typeof e=="object"&&"type"in e&&"props"in e)}var X=(0,c.createContext)();function C(e){return(0,p.createComponent)(de,e)}function de(e){let n=(0,c.createSuspenseBoundary)(),o=(0,c.useContext)(X),t=o?o.register(n.inFallback):void 0;function i(d){return d==null||typeof d=="boolean"?null:typeof d=="function"&&(0,p.isComponent)(d)&&!(0,c.isSignal)(d)?d():d}let a=(0,p.runWithoutHydration)(()=>i(e.fallback??null)),s=(0,c.provideSuspense)(n,()=>(0,c.readChildren)(()=>e.children)),u=(d,g)=>{if(!(g>8))if(Array.isArray(d))for(let oe of d)u(oe,g+1);else typeof d=="function"&&(0,c.isSignal)(d)&&u(d(),g+1)};(0,c.provideSuspense)(n,()=>{(0,c.createRenderEffect)(()=>u(s,0))});let[f,b]=(0,c.createSignal)(void 0),v=L(s);return v&&(n.increment(),s.then(d=>{b(()=>d),n.decrement()},()=>n.decrement())),(0,c.createMemo)(()=>{let d=t?t.showFallback():n.inFallback();return process.env.FX_DEBUG&&console.log("[s] output; showFallback:",d),d?a:v?f():s})}function J(e){return(0,p.createComponent)(pe,e)}function pe(e){let{revealOrder:n="together",tail:o}=e,t=[];function i(){if(n==="together"){let s=t.every(u=>!u.inFallback());t.forEach(u=>{u.setShowContent(s),u.setShowFallback(!s)})}else{let s=n==="backwards"?[...t].reverse():t,u=!1;for(let f of s)u||f.inFallback()?(u=!0,f.setShowContent(!1),f.setShowFallback(o!=="hidden")):(f.setShowContent(!0),f.setShowFallback(!1))}}let a={register:s=>{let[u,f]=(0,c.createSignal)(!0),[b,v]=(0,c.createSignal)(!1);return t.push({inFallback:s,setShowContent:f,setShowFallback:v}),(0,c.createEffect)(()=>{s(),i()}),{showContent:u,showFallback:b}}};return X.Provider({value:a,children:e.children})}(0,p.asSuspense)(C);Object.defineProperty(C,"__suspense",{value:!0,enumerable:!0});var m=require("@fluixi/reactive/signal");function w(e,n){let o,t,i;function a(){return t||(t=e().then(u=>o=u.default)),t}n?.preload&&a();let s=(u=>{if(o){let f=o;return(0,m.untrack)(()=>f(u))}if(!i){let[f]=(0,m.createResource)(()=>a(),{transport:!1});if(i=f,f.error)throw f.error}return(0,m.createMemo)(()=>{let f=i();return f?(0,m.untrack)(()=>f(u)):void 0},void 0,{name:"lazy"})});return s.preload=()=>a().then(()=>{}),s.$lazy=!0,s.loader=e,s}var S=require("@fluixi/reactive/signal"),Q=require("@fluixi/dom/utils");var G=typeof window>"u";function Y(e,n){let o=n.export??"default",t=w(()=>e().then(a=>{let s=a[o];if(typeof s!="function")throw new Error(`deferred(): module has no '${o}' export (got ${typeof s}).`);return{default:s}}),{fallback:n.fallback});function i(a){if(n.strategy.kind==="never")return G?t(a):null;if(G||n.strategy.kind==="eager")return t(a);let[s,u]=(0,S.createSignal)(!1),f=()=>{t.preload().then(()=>u(!0))},b=n.strategy.kind==="visible"?le():void 0;return me(n.strategy,f,b),(0,S.createMemo)(()=>s()?t(a):b??n.fallback??null,void 0,{name:"deferred"})}return i.preload=t.preload,i}function le(){let e=document.createElement("span");return e.setAttribute("data-fx-load","visible"),e.style.display="block",e}function me(e,n,o){let t=!1,i=()=>{t||(t=!0,n())};switch(e.kind){case"idle":{let a=globalThis.requestIdleCallback;a?a(i):setTimeout(i,1);return}case"visible":{if(!o||typeof IntersectionObserver>"u"){i();return}let a=(0,Q.observeIntersection)(o,s=>{s&&(a(),i())},{rootMargin:e.rootMargin??"0px"});return}case"interaction":{let a=()=>{for(let s of e.events)document.removeEventListener(s,a,!0);i()};for(let s of e.events)document.addEventListener(s,a,{capture:!0,passive:!0});return}case"media":{if(typeof matchMedia>"u"){i();return}let a=matchMedia(e.query);if(a.matches){i();return}let s=u=>{u.matches&&(a.removeEventListener("change",s),i())};a.addEventListener("change",s);return}default:i()}}var Z=require("@fluixi/reactive/signal");function ee(e){let n=()=>{let t=e.value;return typeof t=="function"?t():t},[o]=(0,Z.createResource)(n);return()=>{if(o.loading)return e.fallback;let t=e.children;return typeof t=="function"?t(o()):t}}var O=typeof window>"u";function te(e,n,o={}){if((0,y.delegateEvents)(["click","input","change","submit"]),O)throw new Error("render() is for client-side only. Use renderToString() on server.");if(!n)throw new Error("Container element is required");let t;return(0,ne.createRoot)(i=>{t=i;let a=typeof e=="function"?e():e;n.textContent="",(0,l.stampVersions)(n),(0,l.warnOnVersionSkew)(),(0,y.insert)(n,()=>a)}),()=>{t&&(t(),t=void 0)}}function ye(e){return e&&typeof e=="object"&&(e._$litType$!==void 0||e._$litDirective$!==void 0)}function be(e,n,o={}){let t=document.createElement("div");t.setAttribute("data-portal","true"),n.appendChild(t);let i=te(e,t,o);return()=>{i(),n.contains(t)&&n.removeChild(t)}}function ve(e){return!!(e==null||typeof e=="function"||(0,y.isDOMNode)(e)||ye(e)||Array.isArray(e)||typeof e=="string"||typeof e=="number"||typeof e=="boolean")}function he(){O||(0,y.delegateEvents)(["click","input","change","submit"])}function xe(){}
1
+ "use strict";var T=Object.defineProperty;var ae=Object.getOwnPropertyDescriptor;var ce=Object.getOwnPropertyNames;var fe=Object.prototype.hasOwnProperty;var ue=(e,n)=>{for(var o in n)T(e,o,{get:n[o],enumerable:!0})},de=(e,n,o,t)=>{if(n&&typeof n=="object"||typeof n=="function")for(let i of ce(n))!fe.call(e,i)&&i!==o&&T(e,i,{get:()=>n[i],enumerable:!(t=ae(n,i))||t.enumerable});return e};var pe=e=>de(T({},"__esModule",{value:!0}),e);var ke={};ue(ke,{$component:()=>z,Await:()=>oe,DEV:()=>v,Suspense:()=>C,SuspenseList:()=>Y,batch:()=>r.batch,cleanupDelegation:()=>Se,createComponent:()=>$,createEffect:()=>r.createEffect,createMemo:()=>r.createMemo,deferred:()=>ne,devOnly:()=>B,getOwner:()=>r.getOwner,getSharedConfig:()=>j,initDelegation:()=>we,isDev:()=>H,isJSXElement:()=>X,isLitResult:()=>J,isNode:()=>K,isPromise:()=>R,isRenderable:()=>Ce,lazy:()=>w,onCleanup:()=>r.onCleanup,onMount:()=>N,onUnmount:()=>_,portal:()=>ve,render:()=>ie,runWithOwner:()=>r.runWithOwner,useCallback:()=>q,useEffect:()=>O,useEventListener:()=>W,useMemo:()=>I,useReducer:()=>V,useRef:()=>U});module.exports=pe(ke);var k=require("@fluixi/dom"),re=require("@fluixi/reactive/signal");var M=require("@fluixi/dom");var A="1.0.0-alpha.83";var l=require("@fluixi/dom");(0,M.registerCoreVersion)(A);var m=require("@fluixi/dom");var E=require("@fluixi/dom"),x=require("@fluixi/dom"),r=require("@fluixi/reactive/signal"),le={context:null,owner:null};function j(){return le}var v=typeof process<"u"&&!1,L=Symbol.for("fluixi-lifecycle");function D(){let e=(0,r.getOwner)();if(!e)return null;if(!e[L]){let n={mounts:[],effects:[],scheduled:!1};e[L]=n}return e[L]}function F(e){if(e.scheduled)return;if((0,E.isServer)()){e.mounts=[],e.effects=[];return}e.scheduled=!0;let n=(0,r.getOwner)();queueMicrotask(()=>{if((0,r.isOwnerDisposed)(n)){e.mounts=[],e.effects=[];return}(0,r.runWithOwner)(n,()=>{for(let o of e.mounts)try{let t=o();typeof t=="function"&&(0,r.onCleanup)(t)}catch(t){console.error("Error in onMount callback:",t)}for(let o of e.effects){let t;(0,r.createEffect)(()=>{t&&t(),t=o()}),(0,r.onCleanup)(()=>{t&&t()})}e.mounts=[],e.effects=[]})})}function $(e,n){return(0,x.createComponent)(e,n)}function z(e,n){let o=typeof e=="function"?(0,r.untrack)(()=>e(n)):e,t=o!=null&&(typeof o=="function"||typeof o=="object");if(t)try{o.$name=e.name}catch{}return t&&!(0,r.isSignal)(o)?(0,x.asComponent)(o):o}function N(e,n=!0){if((0,E.isServer)())return;let o=D();if(o){if(!n){o.scheduled||e();return}o.mounts.push(e),F(o)}else{if(!n){e();return}(0,r.createEffect)(()=>{let t=(0,r.untrack)(e);typeof t=="function"&&(0,r.onCleanup)(t)})}}function _(e){(0,r.onCleanup)(e)}function O(e){let n=D();if(n)n.effects.push(e),F(n);else{let o;(0,r.createEffect)(()=>{o&&o(),o=e()}),(0,r.onCleanup)(()=>{o&&o()})}}function I(e){return(0,r.createMemo)(e)}function U(e){let n={current:e};return(0,r.onCleanup)(()=>{n.current=null}),n}function V(e,n){let[o,t]=(0,r.createSignal)(n);return[o,a=>{t(e(o(),a))}]}function W(e,n,o,t){O(()=>{let i=e&&"current"in e?e.current:e;if(i)return i.addEventListener(n,o,t),()=>{i.removeEventListener(n,o,t)}})}function q(e){return e}function H(){return v}function B(e){v&&e()}var c=require("@fluixi/reactive/signal"),p=require("@fluixi/dom");function K(e){return typeof window>"u"?!1:typeof Node=="function"&&e instanceof Node?!0:!!(e&&typeof e=="object"&&typeof e.nodeType=="number")}function J(e){return!e||typeof e!="object"?!1:!!(typeof e._$litType$<"u"||typeof e._$litDirective$<"u"||Array.isArray(e.strings)&&Array.isArray(e.values))}function R(e){return!!(e&&typeof e=="object"&&typeof e.then=="function"||e instanceof Promise)}function X(e){return!!(e&&typeof e=="object"&&"type"in e&&"props"in e)}var Q=(0,c.createContext)(void 0,"suspense-list");function C(e){return(0,p.createComponent)(me,e)}function me(e){let n=(0,c.createSuspenseBoundary)(),o=(0,c.useContext)(Q),t=o?o.register(n.inFallback):void 0;function i(d){return d==null||typeof d=="boolean"?null:typeof d=="function"&&(0,p.isComponent)(d)&&!(0,c.isSignal)(d)?d():d}let a=(0,p.runWithoutHydration)(()=>i(e.fallback??null)),s=(0,c.provideSuspense)(n,()=>(0,c.readChildren)(()=>e.children)),f=(d,g)=>{if(!(g>8))if(Array.isArray(d))for(let se of d)f(se,g+1);else typeof d=="function"&&(0,c.isSignal)(d)&&f(d(),g+1)};(0,c.provideSuspense)(n,()=>{(0,c.createRenderEffect)(()=>f(s,0))});let[u,y]=(0,c.createSignal)(void 0),h=R(s);return h&&(n.increment(),s.then(d=>{y(()=>d),n.decrement()},()=>n.decrement())),(0,c.createMemo)(()=>(t?t.showFallback():n.inFallback())?a:h?u():s)}function Y(e){return(0,p.createComponent)(ye,e)}function ye(e){let{revealOrder:n="together",tail:o}=e,t=[];function i(){if(n==="together"){let s=t.every(f=>!f.inFallback());t.forEach(f=>{f.setShowContent(s),f.setShowFallback(!s)})}else{let s=n==="backwards"?[...t].reverse():t,f=!1;for(let u of s)f||u.inFallback()?(f=!0,u.setShowContent(!1),u.setShowFallback(o!=="hidden")):(u.setShowContent(!0),u.setShowFallback(!1))}}let a={register:s=>{let[f,u]=(0,c.createSignal)(!0),[y,h]=(0,c.createSignal)(!1);return t.push({inFallback:s,setShowContent:u,setShowFallback:h}),(0,c.createEffect)(()=>{s(),i()}),{showContent:f,showFallback:y}}};return Q.Provider({value:a,children:e.children})}(0,p.asSuspense)(C);Object.defineProperty(C,"__suspense",{value:!0,enumerable:!0});var Z=require("@fluixi/dom"),b=require("@fluixi/reactive/signal");function G(e){if(e!=null&&(typeof e=="object"||typeof e=="function"))try{e.$lazy=!0}catch{}return e}function w(e,n){let o,t,i;function a(){return t||(t=e().then(f=>o=f.default)),t}n?.preload&&a();let s=(f=>{if(o){let u=o;return G((0,b.untrack)(()=>u(f)))}if(!i){let[u]=(0,b.createResource)(()=>a(),{transport:!1});if(i=u,u.error)throw u.error}return(0,b.createMemo)(()=>{let u=i();return u?G((0,Z.createComponent)(u,f)):void 0})});return s.preload=()=>a().then(()=>{}),s.$lazy=!0,s.loader=e,s}var P=require("@fluixi/dom"),S=require("@fluixi/reactive/signal"),ee=require("@fluixi/dom/utils");function ne(e,n){let o=n.export??"default",t=w(()=>e().then(a=>{let s=a[o];if(typeof s!="function")throw new Error(`deferred(): module has no '${o}' export (got ${typeof s}).`);return{default:s}}),{fallback:n.fallback});function i(a){if(n.strategy.kind==="never")return(0,P.isServer)()?t(a):null;if((0,P.isServer)()||n.strategy.kind==="eager")return t(a);let[s,f]=(0,S.createSignal)(!1),u=()=>{t.preload().then(()=>f(!0))},y=n.strategy.kind==="visible"?be():void 0;return he(n.strategy,u,y),(0,S.createMemo)(()=>s()?t(a):y??n.fallback??null,void 0,{name:"deferred"})}return i.preload=t.preload,i}function be(){let e=document.createElement("span");return e.setAttribute("data-fx-load","visible"),e.style.display="block",e}function he(e,n,o){let t=!1,i=()=>{t||(t=!0,n())};switch(e.kind){case"idle":{let a=globalThis.requestIdleCallback;a?a(i):setTimeout(i,1);return}case"visible":{if(!o||typeof IntersectionObserver>"u"){i();return}let a=(0,ee.observeIntersection)(o,s=>{s&&(a(),i())},{rootMargin:e.rootMargin??"0px"});return}case"interaction":{let a=()=>{for(let s of e.events)document.removeEventListener(s,a,!0);i()};for(let s of e.events)document.addEventListener(s,a,{capture:!0,passive:!0});return}case"media":{if(typeof matchMedia>"u"){i();return}let a=matchMedia(e.query);if(a.matches){i();return}let s=f=>{f.matches&&(a.removeEventListener("change",s),i())};a.addEventListener("change",s);return}default:i()}}var te=require("@fluixi/reactive/signal");function oe(e){let n=()=>{let t=e.value;return typeof t=="function"?t():t},[o]=(0,te.createResource)(n);return()=>{if(o.loading)return e.fallback;let t=e.children;return typeof t=="function"?t(o()):t}}function ie(e,n,o={}){if((0,m.delegateEvents)(["click","input","change","submit"]),(0,k.isServer)())throw new Error("render() is for client-side only. Use renderToString() on server.");if(!n)throw new Error("Container element is required");let t;return(0,re.createRoot)(i=>{t=i;let a=typeof e=="function"?e():e;n.textContent="",(0,l.stampVersions)(n),(0,l.warnOnVersionSkew)(),(0,m.insert)(n,()=>a)}),()=>{t&&(t(),t=void 0)}}function xe(e){return e&&typeof e=="object"&&(e._$litType$!==void 0||e._$litDirective$!==void 0)}function ve(e,n,o={}){let t=document.createElement("div");t.setAttribute("data-portal","true"),n.appendChild(t);let i=ie(e,t,o);return()=>{i(),n.contains(t)&&n.removeChild(t)}}function Ce(e){return!!(e==null||typeof e=="function"||(0,m.isDOMNode)(e)||xe(e)||Array.isArray(e)||typeof e=="string"||typeof e=="number"||typeof e=="boolean")}function we(){(0,k.isServer)()||(0,m.delegateEvents)(["click","input","change","submit"])}function Se(){(0,k.isServer)()}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/render/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAmBH;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;OAEG;IACH,MAAM,CAAC,EAAE,IAAI,CAAC;IAEd;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;CACxB;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,MAAM,CACpB,IAAI,EAAE,MAAM,GAAG,EACf,SAAS,EAAE,WAAW,EACtB,OAAO,GAAE,aAAkB,GAC1B,MAAM,IAAI,CA8CZ;AAmBD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,MAAM,CACpB,IAAI,EAAE,MAAM,GAAG,EACf,MAAM,EAAE,WAAW,EACnB,OAAO,GAAE,aAAkB,GAC1B,MAAM,IAAI,CAaZ;AAMD;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAchD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAGrC;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAGxC;AAOD,OAAO,EACL,eAAe,EACf,OAAO,EACP,SAAS,EACT,SAAS,EACT,MAAM,EACN,UAAU,EACV,OAAO,EACP,gBAAgB,EAChB,WAAW,EACX,SAAS,EACT,KAAK,EACL,UAAU,EACV,YAAY,EACZ,QAAQ,EACR,YAAY,EACZ,KAAK,EACL,OAAO,EACP,GAAG,EACH,eAAe,EACf,UAAU,GACX,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,QAAQ,EACR,YAAY,EAEZ,KAAK,aAAa,EAClB,KAAK,iBAAiB,EAEtB,MAAM,EACN,WAAW,EACX,SAAS,EACT,YAAY,GACb,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAC,IAAI,EAAC,MAAM,WAAW,CAAA;AAC9B,YAAY,EAAC,WAAW,EAAE,aAAa,EAAC,MAAM,WAAW,CAAA;AACzD,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAA;AACtC,YAAY,EAAC,eAAe,EAAE,YAAY,EAAC,MAAM,eAAe,CAAA;AAEhE,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,YAAY,EACV,SAAS,EACT,cAAc,EACd,iBAAiB,EACjB,SAAS,GACV,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/render/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAoBH;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;OAEG;IACH,MAAM,CAAC,EAAE,IAAI,CAAC;IAEd;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;CACxB;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,MAAM,CACpB,IAAI,EAAE,MAAM,GAAG,EACf,SAAS,EAAE,WAAW,EACtB,OAAO,GAAE,aAAkB,GAC1B,MAAM,IAAI,CA8CZ;AAmBD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,MAAM,CACpB,IAAI,EAAE,MAAM,GAAG,EACf,MAAM,EAAE,WAAW,EACnB,OAAO,GAAE,aAAkB,GAC1B,MAAM,IAAI,CAaZ;AAMD;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAchD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAGrC;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAGxC;AAOD,OAAO,EACL,eAAe,EACf,OAAO,EACP,SAAS,EACT,SAAS,EACT,MAAM,EACN,UAAU,EACV,OAAO,EACP,gBAAgB,EAChB,WAAW,EACX,SAAS,EACT,KAAK,EACL,UAAU,EACV,YAAY,EACZ,QAAQ,EACR,YAAY,EACZ,KAAK,EACL,OAAO,EACP,GAAG,EACH,eAAe,EACf,UAAU,GACX,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,QAAQ,EACR,YAAY,EAEZ,KAAK,aAAa,EAClB,KAAK,iBAAiB,EAEtB,MAAM,EACN,WAAW,EACX,SAAS,EACT,YAAY,GACb,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAC,IAAI,EAAC,MAAM,WAAW,CAAA;AAC9B,YAAY,EAAC,WAAW,EAAE,aAAa,EAAC,MAAM,WAAW,CAAA;AACzD,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAA;AACtC,YAAY,EAAC,eAAe,EAAE,YAAY,EAAC,MAAM,eAAe,CAAA;AAEhE,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,YAAY,EACV,SAAS,EACT,cAAc,EACd,iBAAiB,EACjB,SAAS,GACV,MAAM,gBAAgB,CAAC"}
@@ -8,10 +8,10 @@
8
8
  *
9
9
  * Following SolidJS structure: render logic separated from component creation
10
10
  */
11
+ import { isServer } from '@fluixi/dom';
11
12
  import { createRoot } from '@fluixi/reactive/signal';
12
13
  import { stampVersions, warnOnVersionSkew } from './versions.js';
13
14
  import { isDOMNode, delegateEvents, insert, } from '@fluixi/dom';
14
- const isServer = typeof window === 'undefined';
15
15
  // ============================================================================
16
16
  // SECTION 7 — RENDERING (CLIENT)
17
17
  // ============================================================================
@@ -45,7 +45,7 @@ const isServer = typeof window === 'undefined';
45
45
  */
46
46
  export function render(code, container, options = {}) {
47
47
  delegateEvents(['click', 'input', 'change', 'submit']);
48
- if (isServer) {
48
+ if (isServer()) {
49
49
  throw new Error('render() is for client-side only. Use renderToString() on server.');
50
50
  }
51
51
  if (!container) {
@@ -168,7 +168,7 @@ export function isRenderable(value) {
168
168
  * ```
169
169
  */
170
170
  export function initDelegation() {
171
- if (isServer)
171
+ if (isServer())
172
172
  return;
173
173
  delegateEvents(['click', 'input', 'change', 'submit']);
174
174
  }
@@ -177,7 +177,7 @@ export function initDelegation() {
177
177
  * Should be called when app unmounts
178
178
  */
179
179
  export function cleanupDelegation() {
180
- if (isServer)
180
+ if (isServer())
181
181
  return;
182
182
  // Clear delegated events manually if needed
183
183
  }
@@ -1 +1 @@
1
- import{createRoot as Me}from"@fluixi/reactive/signal";import{registerCoreVersion as U}from"@fluixi/dom";var S="1.0.0-alpha.81";import{stampVersions as g,warnOnVersionSkew as k,versions as Ve}from"@fluixi/dom";U(S);import{isDOMNode as De,delegateEvents as z,insert as Fe}from"@fluixi/dom";import{createComponent as I,asComponent as V}from"@fluixi/dom";import{untrack as T,onCleanup as f,getOwner as b,createEffect as l,createMemo as E,createSignal as W,isSignal as q,batch as H,runWithOwner as L,isOwnerDisposed as B}from"@fluixi/reactive/signal";var K={context:null,owner:null};function X(){return K}var v=typeof process<"u"&&!1,y=Symbol.for("fluixi-lifecycle");function O(){let e=b();if(!e)return null;if(!e[y]){let t={mounts:[],effects:[],scheduled:!1};e[y]=t}return e[y]}function R(e){if(e.scheduled)return;e.scheduled=!0;let t=b();queueMicrotask(()=>{if(B(t)){e.mounts=[],e.effects=[];return}L(t,()=>{for(let o of e.mounts)try{let n=o();typeof n=="function"&&f(n)}catch(n){console.error("Error in onMount callback:",n)}for(let o of e.effects){let n;l(()=>{n&&n(),n=o()}),f(()=>{n&&n()})}e.mounts=[],e.effects=[]})})}function J(e,t){return I(e,t)}function G(e,t){let o=typeof e=="function"?T(()=>e(t)):e;if(o!=null&&(typeof o=="function"||typeof o=="object")&&!q(o)){try{o.$name=e.name}catch{}return V(o)}return o}function Q(e,t=!0){let o=O();if(o){if(!t){o.scheduled||e();return}o.mounts.push(e),R(o)}else{if(!t){e();return}l(()=>{let n=T(e);typeof n=="function"&&f(n)})}}function Y(e){f(e)}function P(e){let t=O();if(t)t.effects.push(e),R(t);else{let o;l(()=>{o&&o(),o=e()}),f(()=>{o&&o()})}}function Z(e){return E(e)}function ee(e){let t={current:e};return f(()=>{t.current=null}),t}function ne(e,t){let[o,n]=W(t);return[o,s=>{n(e(o(),s))}]}function te(e,t,o,n){P(()=>{let i=e&&"current"in e?e.current:e;if(i)return i.addEventListener(t,o,n),()=>{i.removeEventListener(t,o,n)}})}function oe(e){return e}function re(){return v}function ie(e){v&&e()}import{createSignal as h,createMemo as se,createEffect as ae,createRenderEffect as ce,isSignal as A,readChildren as ue,useContext as fe,createContext as de,createSuspenseBoundary as pe,provideSuspense as M}from"@fluixi/reactive/signal";import{asSuspense as le,isComponent as me,createComponent as D,runWithoutHydration as ye}from"@fluixi/dom";function be(e){return typeof window>"u"?!1:typeof Node=="function"&&e instanceof Node?!0:!!(e&&typeof e=="object"&&typeof e.nodeType=="number")}function ve(e){return!e||typeof e!="object"?!1:!!(typeof e._$litType$<"u"||typeof e._$litDirective$<"u"||Array.isArray(e.strings)&&Array.isArray(e.values))}function F(e){return!!(e&&typeof e=="object"&&typeof e.then=="function"||e instanceof Promise)}function he(e){return!!(e&&typeof e=="object"&&"type"in e&&"props"in e)}var j=de();function x(e){return D(xe,e)}function xe(e){let t=pe(),o=fe(j),n=o?o.register(t.inFallback):void 0;function i(u){return u==null||typeof u=="boolean"?null:typeof u=="function"&&me(u)&&!A(u)?u():u}let s=ye(()=>i(e.fallback??null)),r=M(t,()=>ue(()=>e.children)),a=(u,m)=>{if(!(m>8))if(Array.isArray(u))for(let N of u)a(N,m+1);else typeof u=="function"&&A(u)&&a(u(),m+1)};M(t,()=>{ce(()=>a(r,0))});let[c,d]=h(void 0),p=F(r);return p&&(t.increment(),r.then(u=>{d(()=>u),t.decrement()},()=>t.decrement())),se(()=>{let u=n?n.showFallback():t.inFallback();return process.env.FX_DEBUG&&console.log("[s] output; showFallback:",u),u?s:p?c():r})}function Ce(e){return D(we,e)}function we(e){let{revealOrder:t="together",tail:o}=e,n=[];function i(){if(t==="together"){let r=n.every(a=>!a.inFallback());n.forEach(a=>{a.setShowContent(r),a.setShowFallback(!r)})}else{let r=t==="backwards"?[...n].reverse():n,a=!1;for(let c of r)a||c.inFallback()?(a=!0,c.setShowContent(!1),c.setShowFallback(o!=="hidden")):(c.setShowContent(!0),c.setShowFallback(!1))}}let s={register:r=>{let[a,c]=h(!0),[d,p]=h(!1);return n.push({inFallback:r,setShowContent:c,setShowFallback:p}),ae(()=>{r(),i()}),{showContent:a,showFallback:d}}};return j.Provider({value:s,children:e.children})}le(x);Object.defineProperty(x,"__suspense",{value:!0,enumerable:!0});import{untrack as $,createMemo as Se,createResource as ge}from"@fluixi/reactive/signal";function C(e,t){let o,n,i;function s(){return n||(n=e().then(a=>o=a.default)),n}t?.preload&&s();let r=(a=>{if(o){let c=o;return $(()=>c(a))}if(!i){let[c]=ge(()=>s(),{transport:!1});if(i=c,c.error)throw c.error}return Se(()=>{let c=i();return c?$(()=>c(a)):void 0},void 0,{name:"lazy"})});return r.preload=()=>s().then(()=>{}),r.$lazy=!0,r.loader=e,r}import{createMemo as ke,createSignal as Te}from"@fluixi/reactive/signal";import{observeIntersection as Ee}from"@fluixi/dom/utils";var _=typeof window>"u";function Le(e,t){let o=t.export??"default",n=C(()=>e().then(s=>{let r=s[o];if(typeof r!="function")throw new Error(`deferred(): module has no '${o}' export (got ${typeof r}).`);return{default:r}}),{fallback:t.fallback});function i(s){if(t.strategy.kind==="never")return _?n(s):null;if(_||t.strategy.kind==="eager")return n(s);let[r,a]=Te(!1),c=()=>{n.preload().then(()=>a(!0))},d=t.strategy.kind==="visible"?Oe():void 0;return Re(t.strategy,c,d),ke(()=>r()?n(s):d??t.fallback??null,void 0,{name:"deferred"})}return i.preload=n.preload,i}function Oe(){let e=document.createElement("span");return e.setAttribute("data-fx-load","visible"),e.style.display="block",e}function Re(e,t,o){let n=!1,i=()=>{n||(n=!0,t())};switch(e.kind){case"idle":{let s=globalThis.requestIdleCallback;s?s(i):setTimeout(i,1);return}case"visible":{if(!o||typeof IntersectionObserver>"u"){i();return}let s=Ee(o,r=>{r&&(s(),i())},{rootMargin:e.rootMargin??"0px"});return}case"interaction":{let s=()=>{for(let r of e.events)document.removeEventListener(r,s,!0);i()};for(let r of e.events)document.addEventListener(r,s,{capture:!0,passive:!0});return}case"media":{if(typeof matchMedia>"u"){i();return}let s=matchMedia(e.query);if(s.matches){i();return}let r=a=>{a.matches&&(s.removeEventListener("change",r),i())};s.addEventListener("change",r);return}default:i()}}import{createResource as Pe}from"@fluixi/reactive/signal";function Ae(e){let t=()=>{let n=e.value;return typeof n=="function"?n():n},[o]=Pe(t);return()=>{if(o.loading)return e.fallback;let n=e.children;return typeof n=="function"?n(o()):n}}var w=typeof window>"u";function je(e,t,o={}){if(z(["click","input","change","submit"]),w)throw new Error("render() is for client-side only. Use renderToString() on server.");if(!t)throw new Error("Container element is required");let n;return Me(i=>{n=i;let s=typeof e=="function"?e():e;t.textContent="",g(t),k(),Fe(t,()=>s)}),()=>{n&&(n(),n=void 0)}}function $e(e){return e&&typeof e=="object"&&(e._$litType$!==void 0||e._$litDirective$!==void 0)}function hn(e,t,o={}){let n=document.createElement("div");n.setAttribute("data-portal","true"),t.appendChild(n);let i=je(e,n,o);return()=>{i(),t.contains(n)&&t.removeChild(n)}}function xn(e){return!!(e==null||typeof e=="function"||De(e)||$e(e)||Array.isArray(e)||typeof e=="string"||typeof e=="number"||typeof e=="boolean")}function Cn(){w||z(["click","input","change","submit"])}function wn(){}export{G as $component,Ae as Await,v as DEV,x as Suspense,Ce as SuspenseList,H as batch,wn as cleanupDelegation,J as createComponent,l as createEffect,E as createMemo,Le as deferred,ie as devOnly,b as getOwner,X as getSharedConfig,Cn as initDelegation,re as isDev,he as isJSXElement,ve as isLitResult,be as isNode,F as isPromise,xn as isRenderable,C as lazy,f as onCleanup,Q as onMount,Y as onUnmount,hn as portal,je as render,L as runWithOwner,oe as useCallback,P as useEffect,te as useEventListener,Z as useMemo,ne as useReducer,ee as useRef};
1
+ import{isServer as w}from"@fluixi/dom";import{createRoot as Fe}from"@fluixi/reactive/signal";import{registerCoreVersion as U}from"@fluixi/dom";var S="1.0.0-alpha.83";import{stampVersions as k,warnOnVersionSkew as g,versions as He}from"@fluixi/dom";U(S);import{isDOMNode as $e,delegateEvents as _,insert as ze}from"@fluixi/dom";import{isServer as T}from"@fluixi/dom";import{createComponent as V,asComponent as W}from"@fluixi/dom";import{untrack as L,onCleanup as u,getOwner as b,createEffect as l,createMemo as E,createSignal as q,isSignal as H,batch as B,runWithOwner as O,isOwnerDisposed as K}from"@fluixi/reactive/signal";var J={context:null,owner:null};function X(){return J}var h=typeof process<"u"&&!1,y=Symbol.for("fluixi-lifecycle");function R(){let e=b();if(!e)return null;if(!e[y]){let t={mounts:[],effects:[],scheduled:!1};e[y]=t}return e[y]}function P(e){if(e.scheduled)return;if(T()){e.mounts=[],e.effects=[];return}e.scheduled=!0;let t=b();queueMicrotask(()=>{if(K(t)){e.mounts=[],e.effects=[];return}O(t,()=>{for(let o of e.mounts)try{let n=o();typeof n=="function"&&u(n)}catch(n){console.error("Error in onMount callback:",n)}for(let o of e.effects){let n;l(()=>{n&&n(),n=o()}),u(()=>{n&&n()})}e.mounts=[],e.effects=[]})})}function Q(e,t){return V(e,t)}function Y(e,t){let o=typeof e=="function"?L(()=>e(t)):e,n=o!=null&&(typeof o=="function"||typeof o=="object");if(n)try{o.$name=e.name}catch{}return n&&!H(o)?W(o):o}function G(e,t=!0){if(T())return;let o=R();if(o){if(!t){o.scheduled||e();return}o.mounts.push(e),P(o)}else{if(!t){e();return}l(()=>{let n=L(e);typeof n=="function"&&u(n)})}}function Z(e){u(e)}function A(e){let t=R();if(t)t.effects.push(e),P(t);else{let o;l(()=>{o&&o(),o=e()}),u(()=>{o&&o()})}}function ee(e){return E(e)}function ne(e){let t={current:e};return u(()=>{t.current=null}),t}function te(e,t){let[o,n]=q(t);return[o,s=>{n(e(o(),s))}]}function oe(e,t,o,n){A(()=>{let i=e&&"current"in e?e.current:e;if(i)return i.addEventListener(t,o,n),()=>{i.removeEventListener(t,o,n)}})}function re(e){return e}function ie(){return h}function se(e){h&&e()}import{createSignal as x,createMemo as ae,createEffect as ce,createRenderEffect as fe,isSignal as M,readChildren as ue,useContext as de,createContext as pe,createSuspenseBoundary as le,provideSuspense as j}from"@fluixi/reactive/signal";import{asSuspense as me,isComponent as ye,createComponent as D,runWithoutHydration as be}from"@fluixi/dom";function he(e){return typeof window>"u"?!1:typeof Node=="function"&&e instanceof Node?!0:!!(e&&typeof e=="object"&&typeof e.nodeType=="number")}function xe(e){return!e||typeof e!="object"?!1:!!(typeof e._$litType$<"u"||typeof e._$litDirective$<"u"||Array.isArray(e.strings)&&Array.isArray(e.values))}function F(e){return!!(e&&typeof e=="object"&&typeof e.then=="function"||e instanceof Promise)}function ve(e){return!!(e&&typeof e=="object"&&"type"in e&&"props"in e)}var $=pe(void 0,"suspense-list");function v(e){return D(Ce,e)}function Ce(e){let t=le(),o=de($),n=o?o.register(t.inFallback):void 0;function i(f){return f==null||typeof f=="boolean"?null:typeof f=="function"&&ye(f)&&!M(f)?f():f}let s=be(()=>i(e.fallback??null)),r=j(t,()=>ue(()=>e.children)),a=(f,m)=>{if(!(m>8))if(Array.isArray(f))for(let I of f)a(I,m+1);else typeof f=="function"&&M(f)&&a(f(),m+1)};j(t,()=>{fe(()=>a(r,0))});let[c,d]=x(void 0),p=F(r);return p&&(t.increment(),r.then(f=>{d(()=>f),t.decrement()},()=>t.decrement())),ae(()=>(n?n.showFallback():t.inFallback())?s:p?c():r)}function we(e){return D(Se,e)}function Se(e){let{revealOrder:t="together",tail:o}=e,n=[];function i(){if(t==="together"){let r=n.every(a=>!a.inFallback());n.forEach(a=>{a.setShowContent(r),a.setShowFallback(!r)})}else{let r=t==="backwards"?[...n].reverse():n,a=!1;for(let c of r)a||c.inFallback()?(a=!0,c.setShowContent(!1),c.setShowFallback(o!=="hidden")):(c.setShowContent(!0),c.setShowFallback(!1))}}let s={register:r=>{let[a,c]=x(!0),[d,p]=x(!1);return n.push({inFallback:r,setShowContent:c,setShowFallback:p}),ce(()=>{r(),i()}),{showContent:a,showFallback:d}}};return $.Provider({value:s,children:e.children})}me(v);Object.defineProperty(v,"__suspense",{value:!0,enumerable:!0});import{createComponent as ke}from"@fluixi/dom";import{untrack as ge,createMemo as Te,createResource as Le}from"@fluixi/reactive/signal";function z(e){if(e!=null&&(typeof e=="object"||typeof e=="function"))try{e.$lazy=!0}catch{}return e}function C(e,t){let o,n,i;function s(){return n||(n=e().then(a=>o=a.default)),n}t?.preload&&s();let r=(a=>{if(o){let c=o;return z(ge(()=>c(a)))}if(!i){let[c]=Le(()=>s(),{transport:!1});if(i=c,c.error)throw c.error}return Te(()=>{let c=i();return c?z(ke(c,a)):void 0})});return r.preload=()=>s().then(()=>{}),r.$lazy=!0,r.loader=e,r}import{isServer as N}from"@fluixi/dom";import{createMemo as Ee,createSignal as Oe}from"@fluixi/reactive/signal";import{observeIntersection as Re}from"@fluixi/dom/utils";function Pe(e,t){let o=t.export??"default",n=C(()=>e().then(s=>{let r=s[o];if(typeof r!="function")throw new Error(`deferred(): module has no '${o}' export (got ${typeof r}).`);return{default:r}}),{fallback:t.fallback});function i(s){if(t.strategy.kind==="never")return N()?n(s):null;if(N()||t.strategy.kind==="eager")return n(s);let[r,a]=Oe(!1),c=()=>{n.preload().then(()=>a(!0))},d=t.strategy.kind==="visible"?Ae():void 0;return Me(t.strategy,c,d),Ee(()=>r()?n(s):d??t.fallback??null,void 0,{name:"deferred"})}return i.preload=n.preload,i}function Ae(){let e=document.createElement("span");return e.setAttribute("data-fx-load","visible"),e.style.display="block",e}function Me(e,t,o){let n=!1,i=()=>{n||(n=!0,t())};switch(e.kind){case"idle":{let s=globalThis.requestIdleCallback;s?s(i):setTimeout(i,1);return}case"visible":{if(!o||typeof IntersectionObserver>"u"){i();return}let s=Re(o,r=>{r&&(s(),i())},{rootMargin:e.rootMargin??"0px"});return}case"interaction":{let s=()=>{for(let r of e.events)document.removeEventListener(r,s,!0);i()};for(let r of e.events)document.addEventListener(r,s,{capture:!0,passive:!0});return}case"media":{if(typeof matchMedia>"u"){i();return}let s=matchMedia(e.query);if(s.matches){i();return}let r=a=>{a.matches&&(s.removeEventListener("change",r),i())};s.addEventListener("change",r);return}default:i()}}import{createResource as je}from"@fluixi/reactive/signal";function De(e){let t=()=>{let n=e.value;return typeof n=="function"?n():n},[o]=je(t);return()=>{if(o.loading)return e.fallback;let n=e.children;return typeof n=="function"?n(o()):n}}function Ne(e,t,o={}){if(_(["click","input","change","submit"]),w())throw new Error("render() is for client-side only. Use renderToString() on server.");if(!t)throw new Error("Container element is required");let n;return Fe(i=>{n=i;let s=typeof e=="function"?e():e;t.textContent="",k(t),g(),ze(t,()=>s)}),()=>{n&&(n(),n=void 0)}}function _e(e){return e&&typeof e=="object"&&(e._$litType$!==void 0||e._$litDirective$!==void 0)}function En(e,t,o={}){let n=document.createElement("div");n.setAttribute("data-portal","true"),t.appendChild(n);let i=Ne(e,n,o);return()=>{i(),t.contains(n)&&t.removeChild(n)}}function On(e){return!!(e==null||typeof e=="function"||$e(e)||_e(e)||Array.isArray(e)||typeof e=="string"||typeof e=="number"||typeof e=="boolean")}function Rn(){w()||_(["click","input","change","submit"])}function Pn(){w()}export{Y as $component,De as Await,h as DEV,v as Suspense,we as SuspenseList,B as batch,Pn as cleanupDelegation,Q as createComponent,l as createEffect,E as createMemo,Pe as deferred,se as devOnly,b as getOwner,X as getSharedConfig,Rn as initDelegation,ie as isDev,ve as isJSXElement,xe as isLitResult,he as isNode,F as isPromise,On as isRenderable,C as lazy,u as onCleanup,G as onMount,Z as onUnmount,En as portal,Ne as render,O as runWithOwner,re as useCallback,A as useEffect,oe as useEventListener,ee as useMemo,te as useReducer,ne as useRef};
@@ -1 +1 @@
1
- "use strict";var m=Object.defineProperty;var f=Object.getOwnPropertyDescriptor;var u=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var c=(n,e)=>{for(var r in e)m(n,r,{get:e[r],enumerable:!0})},y=(n,e,r,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of u(e))!l.call(n,o)&&o!==r&&m(n,o,{get:()=>e[o],enumerable:!(s=f(e,o))||s.enumerable});return n};var C=n=>y(m({},"__esModule",{value:!0}),n);var z={};c(z,{lazy:()=>P});module.exports=C(z);var a=require("@fluixi/reactive/signal");function P(n,e){let r,s,o;function p(){return s||(s=n().then(d=>r=d.default)),s}e?.preload&&p();let i=(d=>{if(r){let t=r;return(0,a.untrack)(()=>t(d))}if(!o){let[t]=(0,a.createResource)(()=>p(),{transport:!1});if(o=t,t.error)throw t.error}return(0,a.createMemo)(()=>{let t=o();return t?(0,a.untrack)(()=>t(d)):void 0},void 0,{name:"lazy"})});return i.preload=()=>p().then(()=>{}),i.$lazy=!0,i.loader=n,i}
1
+ "use strict";var d=Object.defineProperty;var u=Object.getOwnPropertyDescriptor;var l=Object.getOwnPropertyNames;var y=Object.prototype.hasOwnProperty;var C=(e,n)=>{for(var r in n)d(e,r,{get:n[r],enumerable:!0})},P=(e,n,r,a)=>{if(n&&typeof n=="object"||typeof n=="function")for(let o of l(n))!y.call(e,o)&&o!==r&&d(e,o,{get:()=>n[o],enumerable:!(a=u(n,o))||a.enumerable});return e};var z=e=>P(d({},"__esModule",{value:!0}),e);var h={};C(h,{lazy:()=>T});module.exports=z(h);var m=require("@fluixi/dom"),i=require("@fluixi/reactive/signal");function c(e){if(e!=null&&(typeof e=="object"||typeof e=="function"))try{e.$lazy=!0}catch{}return e}function T(e,n){let r,a,o;function f(){return a||(a=e().then(p=>r=p.default)),a}n?.preload&&f();let s=(p=>{if(r){let t=r;return c((0,i.untrack)(()=>t(p)))}if(!o){let[t]=(0,i.createResource)(()=>f(),{transport:!1});if(o=t,t.error)throw t.error}return(0,i.createMemo)(()=>{let t=o();return t?c((0,m.createComponent)(t,p)):void 0})});return s.preload=()=>f().then(()=>{}),s.$lazy=!0,s.loader=e,s}
@@ -1 +1 @@
1
- {"version":3,"file":"lazy.d.ts","sourceRoot":"","sources":["../../../../src/lib/render/lazy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAUxD,MAAM,MAAM,aAAa,CAAC,CAAC,GAAG,cAAc,IAAI,MAAM,OAAO,CAAC;IAC5D,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;CACvB,CAAC,CAAC;AAEH,MAAM,WAAW,WAAW;IAC1B,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,+DAA+D;IAC/D,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAID,wBAAgB,IAAI,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EACpD,MAAM,EAAE,MAAM,OAAO,CAAC;IAAE,OAAO,EAAE,CAAC,CAAA;CAAE,CAAC,EACrC,OAAO,CAAC,EAAE,WAAW,GACpB,CAAC,GAAG;IAAE,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAAE,CAyDtC"}
1
+ {"version":3,"file":"lazy.d.ts","sourceRoot":"","sources":["../../../../src/lib/render/lazy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,SAAS,EAAE,cAAc,EAAmB,MAAM,aAAa,CAAC;AAUzE,MAAM,MAAM,aAAa,CAAC,CAAC,GAAG,cAAc,IAAI,MAAM,OAAO,CAAC;IAC5D,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;CACvB,CAAC,CAAC;AAEH,MAAM,WAAW,WAAW;IAC1B,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,+DAA+D;IAC/D,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAmBD,wBAAgB,IAAI,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EACpD,MAAM,EAAE,MAAM,OAAO,CAAC;IAAE,OAAO,EAAE,CAAC,CAAA;CAAE,CAAC,EACrC,OAAO,CAAC,EAAE,WAAW,GACpB,CAAC,GAAG;IAAE,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAAE,CA2DtC"}
@@ -10,7 +10,23 @@
10
10
  * 4. `preload()` is exposed so routes / link hover handlers can start the download
11
11
  * before the component is rendered.
12
12
  */
13
+ import { createComponent } from '@fluixi/dom';
13
14
  import { untrack, createMemo, createResource, } from '@fluixi/reactive/signal';
15
+ /**
16
+ * Say that this came out of a chunk of its own, so devtools can tell a routed component apart
17
+ * from one that shipped in the first bundle. Nothing but a watcher reads it.
18
+ */
19
+ function fromChunk(value) {
20
+ if (value != null && (typeof value === 'object' || typeof value === 'function')) {
21
+ try {
22
+ value['$lazy'] = true;
23
+ }
24
+ catch {
25
+ /* frozen or exotic */
26
+ }
27
+ }
28
+ return value;
29
+ }
14
30
  // ─── Implementation ──────────────────────────────────────────────────────────
15
31
  export function lazy(loader, options) {
16
32
  // The resolved component, set once the module loads. The whole hydration story turns on
@@ -37,7 +53,7 @@ export function lazy(loader, options) {
37
53
  // Render straight through — under hydration this consumes the cursor in place.
38
54
  if (resolved) {
39
55
  const C = resolved;
40
- return untrack(() => C(props));
56
+ return fromChunk(untrack(() => C(props)));
41
57
  }
42
58
  // Cold path: not loaded yet (client-side navigation to a route whose chunk hasn't been
43
59
  // fetched). Register the import with the nearest Suspense via createResource so the
@@ -52,10 +68,12 @@ export function lazy(loader, options) {
52
68
  if (resource.error)
53
69
  throw resource.error;
54
70
  }
71
+ // Left unnamed: this memo is the routed component's wrapper, so it should end up carrying
72
+ // that component's name rather than a label of its own.
55
73
  return createMemo(() => {
56
74
  const C = component();
57
- return C ? untrack(() => C(props)) : undefined;
58
- }, undefined, { name: 'lazy' });
75
+ return C ? fromChunk(createComponent(C, props)) : undefined;
76
+ });
59
77
  });
60
78
  // Callers (link hover, router prefetch, the hydration preload pass) start the download
61
79
  // before the component enters the view: <a onMouseEnter={() => LazyFoo.preload()}>.
@@ -1 +1 @@
1
- import{untrack as d,createMemo as m,createResource as f}from"@fluixi/reactive/signal";function c(i,p){let r,t,a;function s(){return t||(t=i().then(o=>r=o.default)),t}p?.preload&&s();let n=(o=>{if(r){let e=r;return d(()=>e(o))}if(!a){let[e]=f(()=>s(),{transport:!1});if(a=e,e.error)throw e.error}return m(()=>{let e=a();return e?d(()=>e(o)):void 0},void 0,{name:"lazy"})});return n.preload=()=>s().then(()=>{}),n.$lazy=!0,n.loader=i,n}export{c as lazy};
1
+ import{createComponent as d}from"@fluixi/dom";import{untrack as c,createMemo as m,createResource as u}from"@fluixi/reactive/signal";function p(e){if(e!=null&&(typeof e=="object"||typeof e=="function"))try{e.$lazy=!0}catch{}return e}function T(e,f){let t,a,i;function s(){return a||(a=e().then(r=>t=r.default)),a}f?.preload&&s();let o=(r=>{if(t){let n=t;return p(c(()=>n(r)))}if(!i){let[n]=u(()=>s(),{transport:!1});if(i=n,n.error)throw n.error}return m(()=>{let n=i();return n?p(d(n,r)):void 0})});return o.preload=()=>s().then(()=>{}),o.$lazy=!0,o.loader=e,o}export{T as lazy};
@@ -1 +1 @@
1
- "use strict";var b=Object.defineProperty;var w=Object.getOwnPropertyDescriptor;var C=Object.getOwnPropertyNames;var F=Object.prototype.hasOwnProperty;var g=(e,t)=>{for(var a in t)b(e,a,{get:t[a],enumerable:!0})},P=(e,t,a,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let c of C(t))!F.call(e,c)&&c!==a&&b(e,c,{get:()=>t[c],enumerable:!(i=w(t,c))||i.enumerable});return e};var A=e=>P(b({},"__esModule",{value:!0}),e);var $={};g($,{$SUSPENSE:()=>L,Suspense:()=>S,SuspenseList:()=>N,isJSXElement:()=>R,isLitResult:()=>E,isNode:()=>x,isPromise:()=>h});module.exports=A($);var n=require("@fluixi/reactive/signal"),f=require("@fluixi/dom"),L=Symbol.for("suspense");function x(e){return typeof window>"u"?!1:typeof Node=="function"&&e instanceof Node?!0:!!(e&&typeof e=="object"&&typeof e.nodeType=="number")}function E(e){return!e||typeof e!="object"?!1:!!(typeof e._$litType$<"u"||typeof e._$litDirective$<"u"||Array.isArray(e.strings)&&Array.isArray(e.values))}function h(e){return!!(e&&typeof e=="object"&&typeof e.then=="function"||e instanceof Promise)}function R(e){return!!(e&&typeof e=="object"&&"type"in e&&"props"in e)}var m=(0,n.createContext)();function S(e){return(0,f.createComponent)(j,e)}function j(e){let t=(0,n.createSuspenseBoundary)(),a=(0,n.useContext)(m),i=a?a.register(t.inFallback):void 0;function c(o){return o==null||typeof o=="boolean"?null:typeof o=="function"&&(0,f.isComponent)(o)&&!(0,n.isSignal)(o)?o():o}let p=(0,f.runWithoutHydration)(()=>c(e.fallback??null)),r=(0,n.provideSuspense)(t,()=>(0,n.readChildren)(()=>e.children)),s=(o,y)=>{if(!(y>8))if(Array.isArray(o))for(let k of o)s(k,y+1);else typeof o=="function"&&(0,n.isSignal)(o)&&s(o(),y+1)};(0,n.provideSuspense)(t,()=>{(0,n.createRenderEffect)(()=>s(r,0))});let[l,d]=(0,n.createSignal)(void 0),u=h(r);return u&&(t.increment(),r.then(o=>{d(()=>o),t.decrement()},()=>t.decrement())),(0,n.createMemo)(()=>{let o=i?i.showFallback():t.inFallback();return process.env.FX_DEBUG&&console.log("[s] output; showFallback:",o),o?p:u?l():r})}function N(e){return(0,f.createComponent)(_,e)}function _(e){let{revealOrder:t="together",tail:a}=e,i=[];function c(){if(t==="together"){let r=i.every(s=>!s.inFallback());i.forEach(s=>{s.setShowContent(r),s.setShowFallback(!r)})}else{let r=t==="backwards"?[...i].reverse():i,s=!1;for(let l of r)s||l.inFallback()?(s=!0,l.setShowContent(!1),l.setShowFallback(a!=="hidden")):(l.setShowContent(!0),l.setShowFallback(!1))}}let p={register:r=>{let[s,l]=(0,n.createSignal)(!0),[d,u]=(0,n.createSignal)(!1);return i.push({inFallback:r,setShowContent:l,setShowFallback:u}),(0,n.createEffect)(()=>{r(),c()}),{showContent:s,showFallback:d}}};return m.Provider({value:p,children:e.children})}(0,f.asSuspense)(S);Object.defineProperty(S,"__suspense",{value:!0,enumerable:!0});
1
+ "use strict";var b=Object.defineProperty;var w=Object.getOwnPropertyDescriptor;var C=Object.getOwnPropertyNames;var F=Object.prototype.hasOwnProperty;var P=(e,t)=>{for(var a in t)b(e,a,{get:t[a],enumerable:!0})},g=(e,t,a,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let c of C(t))!F.call(e,c)&&c!==a&&b(e,c,{get:()=>t[c],enumerable:!(i=w(t,c))||i.enumerable});return e};var A=e=>g(b({},"__esModule",{value:!0}),e);var O={};P(O,{$SUSPENSE:()=>L,Suspense:()=>S,SuspenseList:()=>N,isJSXElement:()=>E,isLitResult:()=>R,isNode:()=>x,isPromise:()=>h});module.exports=A(O);var n=require("@fluixi/reactive/signal"),l=require("@fluixi/dom"),L=Symbol.for("suspense");function x(e){return typeof window>"u"?!1:typeof Node=="function"&&e instanceof Node?!0:!!(e&&typeof e=="object"&&typeof e.nodeType=="number")}function R(e){return!e||typeof e!="object"?!1:!!(typeof e._$litType$<"u"||typeof e._$litDirective$<"u"||Array.isArray(e.strings)&&Array.isArray(e.values))}function h(e){return!!(e&&typeof e=="object"&&typeof e.then=="function"||e instanceof Promise)}function E(e){return!!(e&&typeof e=="object"&&"type"in e&&"props"in e)}var m=(0,n.createContext)(void 0,"suspense-list");function S(e){return(0,l.createComponent)(j,e)}function j(e){let t=(0,n.createSuspenseBoundary)(),a=(0,n.useContext)(m),i=a?a.register(t.inFallback):void 0;function c(o){return o==null||typeof o=="boolean"?null:typeof o=="function"&&(0,l.isComponent)(o)&&!(0,n.isSignal)(o)?o():o}let d=(0,l.runWithoutHydration)(()=>c(e.fallback??null)),r=(0,n.provideSuspense)(t,()=>(0,n.readChildren)(()=>e.children)),s=(o,y)=>{if(!(y>8))if(Array.isArray(o))for(let k of o)s(k,y+1);else typeof o=="function"&&(0,n.isSignal)(o)&&s(o(),y+1)};(0,n.provideSuspense)(t,()=>{(0,n.createRenderEffect)(()=>s(r,0))});let[f,p]=(0,n.createSignal)(void 0),u=h(r);return u&&(t.increment(),r.then(o=>{p(()=>o),t.decrement()},()=>t.decrement())),(0,n.createMemo)(()=>(i?i.showFallback():t.inFallback())?d:u?f():r)}function N(e){return(0,l.createComponent)($,e)}function $(e){let{revealOrder:t="together",tail:a}=e,i=[];function c(){if(t==="together"){let r=i.every(s=>!s.inFallback());i.forEach(s=>{s.setShowContent(r),s.setShowFallback(!r)})}else{let r=t==="backwards"?[...i].reverse():i,s=!1;for(let f of r)s||f.inFallback()?(s=!0,f.setShowContent(!1),f.setShowFallback(a!=="hidden")):(f.setShowContent(!0),f.setShowFallback(!1))}}let d={register:r=>{let[s,f]=(0,n.createSignal)(!0),[p,u]=(0,n.createSignal)(!1);return i.push({inFallback:r,setShowContent:f,setShowFallback:u}),(0,n.createEffect)(()=>{r(),c()}),{showContent:s,showFallback:p}}};return m.Provider({value:d,children:e.children})}(0,l.asSuspense)(S);Object.defineProperty(S,"__suspense",{value:!0,enumerable:!0});
@@ -1 +1 @@
1
- {"version":3,"file":"suspense.d.ts","sourceRoot":"","sources":["../../../../src/lib/render/suspense.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAuBH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,GAAG,CAAC;IACd,WAAW,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,UAAU,CAAC;IACpD,IAAI,CAAC,EAAE,WAAW,GAAG,QAAQ,CAAC;CAC/B;AAED,eAAO,MAAM,SAAS,eAAyB,CAAC;AAEhD,iBAAS,MAAM,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,IAAI,CAIzC;AAED,iBAAS,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAOxC;AAED,iBAAS,SAAS,CAAC,CAAC,GAAG,GAAG,EAAE,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,OAAO,CAAC,CAAC,CAAC,CAK3D;AAED,iBAAS,YAAY,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAEzC;AAYD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,GAAG,CAElD;AAgFD,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,GAAG,CAE1D;AAwDD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"suspense.d.ts","sourceRoot":"","sources":["../../../../src/lib/render/suspense.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAuBH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,GAAG,CAAC;IACd,WAAW,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,UAAU,CAAC;IACpD,IAAI,CAAC,EAAE,WAAW,GAAG,QAAQ,CAAC;CAC/B;AAED,eAAO,MAAM,SAAS,eAAyB,CAAC;AAEhD,iBAAS,MAAM,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,IAAI,CAIzC;AAED,iBAAS,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAOxC;AAED,iBAAS,SAAS,CAAC,CAAC,GAAG,GAAG,EAAE,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,OAAO,CAAC,CAAC,CAAC,CAK3D;AAED,iBAAS,YAAY,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAEzC;AAYD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,GAAG,CAElD;AA+ED,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,GAAG,CAE1D;AAwDD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC"}
@@ -28,7 +28,7 @@ function isPromise(value) {
28
28
  function isJSXElement(value) {
29
29
  return !!(value && typeof value === 'object' && 'type' in value && 'props' in value);
30
30
  }
31
- const SuspenseListContext = createContext();
31
+ const SuspenseListContext = createContext(undefined, 'suspense-list');
32
32
  export function Suspense(props) {
33
33
  return createComponent(SuspenseImpl, props);
34
34
  }
@@ -97,8 +97,6 @@ function SuspenseImpl(props) {
97
97
  }
98
98
  return createMemo(() => {
99
99
  const showFallback = listState ? listState.showFallback() : boundary.inFallback();
100
- if (process.env.FX_DEBUG)
101
- console.log('[s] output; showFallback:', showFallback);
102
100
  if (showFallback)
103
101
  return fallback;
104
102
  if (childIsPromise)
@@ -1 +1 @@
1
- import{createSignal as d,createMemo as w,createEffect as C,createRenderEffect as F,isSignal as y,readChildren as g,useContext as P,createContext as A,createSuspenseBoundary as L,provideSuspense as b}from"@fluixi/reactive/signal";import{asSuspense as x,isComponent as E,createComponent as S,runWithoutHydration as R}from"@fluixi/dom";var O=Symbol.for("suspense");function T(e){return typeof window>"u"?!1:typeof Node=="function"&&e instanceof Node?!0:!!(e&&typeof e=="object"&&typeof e.nodeType=="number")}function I(e){return!e||typeof e!="object"?!1:!!(typeof e._$litType$<"u"||typeof e._$litDirective$<"u"||Array.isArray(e.strings)&&Array.isArray(e.values))}function j(e){return!!(e&&typeof e=="object"&&typeof e.then=="function"||e instanceof Promise)}function D(e){return!!(e&&typeof e=="object"&&"type"in e&&"props"in e)}var h=A();function m(e){return S(N,e)}function N(e){let s=L(),a=P(h),i=a?a.register(s.inFallback):void 0;function l(n){return n==null||typeof n=="boolean"?null:typeof n=="function"&&E(n)&&!y(n)?n():n}let f=R(()=>l(e.fallback??null)),o=b(s,()=>g(()=>e.children)),t=(n,p)=>{if(!(p>8))if(Array.isArray(n))for(let k of n)t(k,p+1);else typeof n=="function"&&y(n)&&t(n(),p+1)};b(s,()=>{F(()=>t(o,0))});let[r,u]=d(void 0),c=j(o);return c&&(s.increment(),o.then(n=>{u(()=>n),s.decrement()},()=>s.decrement())),w(()=>{let n=i?i.showFallback():s.inFallback();return process.env.FX_DEBUG&&console.log("[s] output; showFallback:",n),n?f:c?r():o})}function U(e){return S(_,e)}function _(e){let{revealOrder:s="together",tail:a}=e,i=[];function l(){if(s==="together"){let o=i.every(t=>!t.inFallback());i.forEach(t=>{t.setShowContent(o),t.setShowFallback(!o)})}else{let o=s==="backwards"?[...i].reverse():i,t=!1;for(let r of o)t||r.inFallback()?(t=!0,r.setShowContent(!1),r.setShowFallback(a!=="hidden")):(r.setShowContent(!0),r.setShowFallback(!1))}}let f={register:o=>{let[t,r]=d(!0),[u,c]=d(!1);return i.push({inFallback:o,setShowContent:r,setShowFallback:c}),C(()=>{o(),l()}),{showContent:t,showFallback:u}}};return h.Provider({value:f,children:e.children})}x(m);Object.defineProperty(m,"__suspense",{value:!0,enumerable:!0});export{O as $SUSPENSE,m as Suspense,U as SuspenseList,D as isJSXElement,I as isLitResult,T as isNode,j as isPromise};
1
+ import{createSignal as p,createMemo as w,createEffect as C,createRenderEffect as F,isSignal as y,readChildren as P,useContext as g,createContext as A,createSuspenseBoundary as L,provideSuspense as b}from"@fluixi/reactive/signal";import{asSuspense as x,isComponent as R,createComponent as S,runWithoutHydration as E}from"@fluixi/dom";var _=Symbol.for("suspense");function B(e){return typeof window>"u"?!1:typeof Node=="function"&&e instanceof Node?!0:!!(e&&typeof e=="object"&&typeof e.nodeType=="number")}function I(e){return!e||typeof e!="object"?!1:!!(typeof e._$litType$<"u"||typeof e._$litDirective$<"u"||Array.isArray(e.strings)&&Array.isArray(e.values))}function j(e){return!!(e&&typeof e=="object"&&typeof e.then=="function"||e instanceof Promise)}function D(e){return!!(e&&typeof e=="object"&&"type"in e&&"props"in e)}var h=A(void 0,"suspense-list");function m(e){return S(N,e)}function N(e){let s=L(),a=g(h),i=a?a.register(s.inFallback):void 0;function f(n){return n==null||typeof n=="boolean"?null:typeof n=="function"&&R(n)&&!y(n)?n():n}let l=E(()=>f(e.fallback??null)),o=b(s,()=>P(()=>e.children)),t=(n,d)=>{if(!(d>8))if(Array.isArray(n))for(let k of n)t(k,d+1);else typeof n=="function"&&y(n)&&t(n(),d+1)};b(s,()=>{F(()=>t(o,0))});let[r,u]=p(void 0),c=j(o);return c&&(s.increment(),o.then(n=>{u(()=>n),s.decrement()},()=>s.decrement())),w(()=>(i?i.showFallback():s.inFallback())?l:c?r():o)}function H(e){return S($,e)}function $(e){let{revealOrder:s="together",tail:a}=e,i=[];function f(){if(s==="together"){let o=i.every(t=>!t.inFallback());i.forEach(t=>{t.setShowContent(o),t.setShowFallback(!o)})}else{let o=s==="backwards"?[...i].reverse():i,t=!1;for(let r of o)t||r.inFallback()?(t=!0,r.setShowContent(!1),r.setShowFallback(a!=="hidden")):(r.setShowContent(!0),r.setShowFallback(!1))}}let l={register:o=>{let[t,r]=p(!0),[u,c]=p(!1);return i.push({inFallback:o,setShowContent:r,setShowFallback:c}),C(()=>{o(),f()}),{showContent:t,showFallback:u}}};return h.Provider({value:l,children:e.children})}x(m);Object.defineProperty(m,"__suspense",{value:!0,enumerable:!0});export{_ as $SUSPENSE,m as Suspense,H as SuspenseList,D as isJSXElement,I as isLitResult,B as isNode,j as isPromise};
@@ -1 +1 @@
1
- "use strict";var n=Object.defineProperty;var V=Object.getOwnPropertyDescriptor;var a=Object.getOwnPropertyNames;var O=Object.prototype.hasOwnProperty;var f=(o,r)=>{for(var i in r)n(o,i,{get:r[i],enumerable:!0})},x=(o,r,i,t)=>{if(r&&typeof r=="object"||typeof r=="function")for(let s of a(r))!O.call(o,s)&&s!==i&&n(o,s,{get:()=>r[s],enumerable:!(t=V(r,s))||t.enumerable});return o};var E=o=>x(n({},"__esModule",{value:!0}),o);var R={};f(R,{stampVersions:()=>e.stampVersions,versions:()=>e.versions,warnOnVersionSkew:()=>e.warnOnVersionSkew});module.exports=E(R);var m=require("@fluixi/dom");var p="1.0.0-alpha.81";var e=require("@fluixi/dom");(0,m.registerCoreVersion)(p);
1
+ "use strict";var n=Object.defineProperty;var V=Object.getOwnPropertyDescriptor;var a=Object.getOwnPropertyNames;var O=Object.prototype.hasOwnProperty;var f=(o,r)=>{for(var i in r)n(o,i,{get:r[i],enumerable:!0})},x=(o,r,i,t)=>{if(r&&typeof r=="object"||typeof r=="function")for(let s of a(r))!O.call(o,s)&&s!==i&&n(o,s,{get:()=>r[s],enumerable:!(t=V(r,s))||t.enumerable});return o};var E=o=>x(n({},"__esModule",{value:!0}),o);var R={};f(R,{stampVersions:()=>e.stampVersions,versions:()=>e.versions,warnOnVersionSkew:()=>e.warnOnVersionSkew});module.exports=E(R);var m=require("@fluixi/dom");var p="1.0.0-alpha.83";var e=require("@fluixi/dom");(0,m.registerCoreVersion)(p);
@@ -1 +1 @@
1
- import{registerCoreVersion as o}from"@fluixi/dom";var r="1.0.0-alpha.81";import{stampVersions as p,warnOnVersionSkew as m,versions as V}from"@fluixi/dom";o(r);export{p as stampVersions,V as versions,m as warnOnVersionSkew};
1
+ import{registerCoreVersion as o}from"@fluixi/dom";var r="1.0.0-alpha.83";import{stampVersions as p,warnOnVersionSkew as m,versions as V}from"@fluixi/dom";o(r);export{p as stampVersions,V as versions,m as warnOnVersionSkew};
@@ -1 +1 @@
1
- "use strict";var y=Object.defineProperty;var w=Object.getOwnPropertyDescriptor;var R=Object.getOwnPropertyNames;var D=Object.prototype.hasOwnProperty;var H=(e,t)=>{for(var n in t)y(e,n,{get:t[n],enumerable:!0})},_=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of R(t))!D.call(e,o)&&o!==n&&y(e,o,{get:()=>t[o],enumerable:!(r=w(t,o))||r.enumerable});return e};var E=e=>_(y({},"__esModule",{value:!0}),e);var J={};H(J,{RouteDataContext:()=>T,RouteDataProvider:()=>L,action:()=>b,cache:()=>M,createAsync:()=>$,revalidate:()=>U,useAction:()=>z,useRouteData:()=>W,useSubmission:()=>j});module.exports=E(J);var c=require("@fluixi/reactive/signal");var k=!1,p=new Map;function x(){return k}function m(e,t){p.set(e,t)}function h(e){return p.get(e)}function O(){p.clear()}function I(){if(typeof window>"u")return;let e=document.getElementById("__FLUIXI_HYDRATION__");e&&e.remove();let t=document.createTreeWalker(document.body,NodeFilter.SHOW_COMMENT,null),n=[],r;for(;r=t.nextNode();){let o=r,i=o.nodeValue||"";(i.startsWith("#")||i.startsWith("/"))&&n.push(o)}n.forEach(o=>o.remove()),O()}typeof window<"u"&&window.addEventListener("load",()=>{setTimeout(I,100)});function v(){return typeof window>"u"}var C=require("@fluixi/dom"),u=require("@fluixi/reactive/signal"),N=require("@fluixi/reactive/signal");function A(e){let t=(0,u.createContext)(e),n=r=>(r.debug,t.Provider({value:r.value,get children(){return r.children},debug:r.debug}));return typeof Symbol<"u"&&Symbol.for&&(n.$$typeof=Symbol.for("react.provider")),n.$$typeof=Symbol.for("react.provider"),{id:t.id,Provider:(0,C.asProvider)(n),defaultValue:e}}function P(e){let t=(0,u.useContext)(e);return t!==void 0?t:e.defaultValue}var d=new Map,a=new Map;function M(e,t){return async(...n)=>{let r=t+":"+JSON.stringify(n);if(x()||typeof window<"u"){let i=h(r);if(i!==void 0)return i}if(d.has(r))return d.get(r);if(a.has(r))return a.get(r);let o=Promise.resolve(e(...n)).then(i=>(d.set(r,i),a.delete(r),v()&&m(r,i),i),i=>{throw a.delete(r),i});return a.set(r,o),o}}var[ee,V]=(0,c.createSignal)(0),F=new Set;function U(e){let t=typeof e=="string"?n=>n.startsWith(e):e;for(let n of d.keys())t(n)&&(d.delete(n),F.add(n));V(n=>n+1)}function $(e,t){let[n]=(0,c.createResource)(t||(()=>!0),e);return n}var g=new Map;function S(e){return g.has(e)||g.set(e,(0,c.createSignal)(void 0)),g.get(e)}function b(e,t){let n=t||e.name||"action",r=async o=>{let[,i]=S(n),l=()=>i(void 0),f=()=>r(o);i({input:o,pending:!0,clear:l,retry:f});try{let s=await e(o);return i({input:o,result:s,pending:!1,clear:l,retry:f}),s}catch(s){throw i({input:o,error:s,pending:!1,clear:l,retry:f}),s}};return r.url=n,r.with=o=>b((...i)=>e(o,...i),t),r}function j(e){let[t]=S(e.url);return t}function z(e){return e}var T=A(),L=T.Provider;function W(){let e=P(T);return typeof e=="function"?e:()=>e}
1
+ "use strict";var y=Object.defineProperty;var w=Object.getOwnPropertyDescriptor;var R=Object.getOwnPropertyNames;var D=Object.prototype.hasOwnProperty;var H=(e,t)=>{for(var n in t)y(e,n,{get:t[n],enumerable:!0})},_=(e,t,n,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of R(t))!D.call(e,r)&&r!==n&&y(e,r,{get:()=>t[r],enumerable:!(o=w(t,r))||o.enumerable});return e};var E=e=>_(y({},"__esModule",{value:!0}),e);var J={};H(J,{RouteDataContext:()=>T,RouteDataProvider:()=>L,action:()=>b,cache:()=>M,createAsync:()=>$,revalidate:()=>U,useAction:()=>z,useRouteData:()=>W,useSubmission:()=>j});module.exports=E(J);var c=require("@fluixi/reactive/signal");var k=!1,p=new Map;function x(){return k}function m(e,t){p.set(e,t)}function h(e){return p.get(e)}function O(){p.clear()}function I(){if(typeof window>"u")return;let e=document.getElementById("__FLUIXI_HYDRATION__");e&&e.remove();let t=document.createTreeWalker(document.body,NodeFilter.SHOW_COMMENT,null),n=[],o;for(;o=t.nextNode();){let r=o,i=r.nodeValue||"";(i.startsWith("#")||i.startsWith("/"))&&n.push(r)}n.forEach(r=>r.remove()),O()}typeof window<"u"&&window.addEventListener("load",()=>{setTimeout(I,100)});function v(){return typeof window>"u"}var C=require("@fluixi/dom"),u=require("@fluixi/reactive/signal"),N=require("@fluixi/reactive/signal");function A(e,t){let n=(0,u.createContext)(e,t),o=r=>(r.debug,n.Provider({value:r.value,get children(){return r.children},debug:r.debug}));return typeof Symbol<"u"&&Symbol.for&&(o.$$typeof=Symbol.for("react.provider")),o.$$typeof=Symbol.for("react.provider"),{id:n.id,Provider:(0,C.asProvider)(o),defaultValue:e}}function P(e){let t=(0,u.useContext)(e);return t!==void 0?t:e.defaultValue}var d=new Map,a=new Map;function M(e,t){return async(...n)=>{let o=t+":"+JSON.stringify(n);if(x()||typeof window<"u"){let i=h(o);if(i!==void 0)return i}if(d.has(o))return d.get(o);if(a.has(o))return a.get(o);let r=Promise.resolve(e(...n)).then(i=>(d.set(o,i),a.delete(o),v()&&m(o,i),i),i=>{throw a.delete(o),i});return a.set(o,r),r}}var[ee,V]=(0,c.createSignal)(0),F=new Set;function U(e){let t=typeof e=="string"?n=>n.startsWith(e):e;for(let n of d.keys())t(n)&&(d.delete(n),F.add(n));V(n=>n+1)}function $(e,t){let[n]=(0,c.createResource)(t||(()=>!0),e);return n}var g=new Map;function S(e){return g.has(e)||g.set(e,(0,c.createSignal)(void 0)),g.get(e)}function b(e,t){let n=t||e.name||"action",o=async r=>{let[,i]=S(n),l=()=>i(void 0),f=()=>o(r);i({input:r,pending:!0,clear:l,retry:f});try{let s=await e(r);return i({input:r,result:s,pending:!1,clear:l,retry:f}),s}catch(s){throw i({input:r,error:s,pending:!1,clear:l,retry:f}),s}};return o.url=n,o.with=r=>b((...i)=>e(r,...i),t),o}function j(e){let[t]=S(e.url);return t}function z(e){return e}var T=A(void 0,"route-data"),L=T.Provider;function W(){let e=P(T);return typeof e=="function"?e:()=>e}
@@ -1 +1 @@
1
- {"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../../../src/lib/router/data.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAGL,KAAK,QAAQ,EAEb,QAAQ,EACT,MAAM,yBAAyB,CAAC;AAejC,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,IAAI,SAAS,GAAG,EAAE,IAAI,CAC3C,GAAG,IAAI,EAAE,IAAI,KACV,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;AAEhC,MAAM,WAAW,MAAM,CAAC,CAAC,EAAE,IAAI,SAAS,GAAG,EAAE;IAE3C,CAAC,GAAG,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAI,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;CACtC;AAED,MAAM,WAAW,UAAU,CAAC,CAAC,EAAE,IAAI,SAAS,GAAG,EAAE;IAC/C,KAAK,EAAE,IAAI,CAAC;IACZ,MAAM,CAAC,EAAE,CAAC,CAAC;IACX,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AASD;;;;;;;;;;GAUG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,IAAI,SAAS,GAAG,EAAE,EACzC,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,EACrC,IAAI,EAAE,MAAM,GACX,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,CA4C/B;AASD;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,QAalE;AAMD;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,CAAC,SAAS,GAAG,GAAG,IAAI,EACjD,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,EACtC,MAAM,CAAC,EAAE,MAAM,CAAC,GACd,QAAQ,CAAC,CAAC,CAAC,CAId;AA2BD;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,IAAI,SAAS,GAAG,EAAE,EAC1C,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,EACrC,IAAI,CAAC,EAAE,MAAM,GACZ,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,CAgDjB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,IAAI,SAAS,GAAG,EAAE,EACjD,QAAQ,EAAE,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,GACxB,QAAQ,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,SAAS,CAAC,CAG3C;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,IAAI,SAAS,GAAG,EAAE,EAC7C,QAAQ,EAAE,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,GACxB,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,CAE/B;AAMD,MAAM,WAAW,aAAa;IAC5B;;;;;OAKG;IACH,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAChE,QAAQ,EACJ;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GACpC,CAAC,MAAM;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAClD;AAED,MAAM,MAAM,aAAa,GAAG,CAC1B,IAAI,EAAE,aAAa,EACnB,KAAK,CAAC,EAAE,GAAG,EACX,WAAW,CAAC,EAAE,MAAM,OAAO,KACxB,GAAG,CAAC;AAET,eAAO,MAAM,gBAAgB;;;;;;;;CAAuB,CAAC;AAErD,eAAO,MAAM,iBAAiB;;;;SAA4B,CAAC;AAE3D;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,CAAC,KAAK,MAAM,CAAC,GAAG,SAAS,CAGrD"}
1
+ {"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../../../src/lib/router/data.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAGL,KAAK,QAAQ,EAEb,QAAQ,EACT,MAAM,yBAAyB,CAAC;AAejC,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,IAAI,SAAS,GAAG,EAAE,IAAI,CAC3C,GAAG,IAAI,EAAE,IAAI,KACV,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;AAEhC,MAAM,WAAW,MAAM,CAAC,CAAC,EAAE,IAAI,SAAS,GAAG,EAAE;IAE3C,CAAC,GAAG,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAI,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;CACtC;AAED,MAAM,WAAW,UAAU,CAAC,CAAC,EAAE,IAAI,SAAS,GAAG,EAAE;IAC/C,KAAK,EAAE,IAAI,CAAC;IACZ,MAAM,CAAC,EAAE,CAAC,CAAC;IACX,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AASD;;;;;;;;;;GAUG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,IAAI,SAAS,GAAG,EAAE,EACzC,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,EACrC,IAAI,EAAE,MAAM,GACX,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,CA4C/B;AASD;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,QAalE;AAMD;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,CAAC,SAAS,GAAG,GAAG,IAAI,EACjD,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,EACtC,MAAM,CAAC,EAAE,MAAM,CAAC,GACd,QAAQ,CAAC,CAAC,CAAC,CAId;AA2BD;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,IAAI,SAAS,GAAG,EAAE,EAC1C,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,EACrC,IAAI,CAAC,EAAE,MAAM,GACZ,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,CAgDjB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,IAAI,SAAS,GAAG,EAAE,EACjD,QAAQ,EAAE,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,GACxB,QAAQ,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,SAAS,CAAC,CAG3C;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,IAAI,SAAS,GAAG,EAAE,EAC7C,QAAQ,EAAE,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,GACxB,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,CAE/B;AAMD,MAAM,WAAW,aAAa;IAC5B;;;;;OAKG;IACH,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAChE,QAAQ,EACJ;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GACpC,CAAC,MAAM;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAClD;AAED,MAAM,MAAM,aAAa,GAAG,CAC1B,IAAI,EAAE,aAAa,EACnB,KAAK,CAAC,EAAE,GAAG,EACX,WAAW,CAAC,EAAE,MAAM,OAAO,KACxB,GAAG,CAAC;AAET,eAAO,MAAM,gBAAgB;;;;;;;;CAA8C,CAAC;AAE5E,eAAO,MAAM,iBAAiB;;;;SAA4B,CAAC;AAE3D;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,CAAC,KAAK,MAAM,CAAC,GAAG,SAAS,CAGrD"}
@@ -163,7 +163,7 @@ export function useSubmission(actionFn) {
163
163
  export function useAction(actionFn) {
164
164
  return actionFn;
165
165
  }
166
- export const RouteDataContext = createContext();
166
+ export const RouteDataContext = createContext(undefined, 'route-data');
167
167
  export const RouteDataProvider = RouteDataContext.Provider;
168
168
  /**
169
169
  * Access the data returned by the nearest ancestor route's `routeData` export.
@@ -1 +1 @@
1
- import{createResource as D,createSignal as h}from"@fluixi/reactive/signal";var A=!1,l=new Map;function y(){return A}function p(e,r){l.set(e,r)}function g(e){return l.get(e)}function P(){l.clear()}function S(){if(typeof window>"u")return;let e=document.getElementById("__FLUIXI_HYDRATION__");e&&e.remove();let r=document.createTreeWalker(document.body,NodeFilter.SHOW_COMMENT,null),n=[],t;for(;t=r.nextNode();){let i=t,o=i.nodeValue||"";(o.startsWith("#")||o.startsWith("/"))&&n.push(i)}n.forEach(i=>i.remove()),P()}typeof window<"u"&&window.addEventListener("load",()=>{setTimeout(S,100)});function T(){return typeof window>"u"}import{asProvider as b}from"@fluixi/dom";import{createContext as w,useContext as R}from"@fluixi/reactive/signal";import{readChildren as F}from"@fluixi/reactive/signal";function x(e){let r=w(e),n=t=>(t.debug,r.Provider({value:t.value,get children(){return t.children},debug:t.debug}));return typeof Symbol<"u"&&Symbol.for&&(n.$$typeof=Symbol.for("react.provider")),n.$$typeof=Symbol.for("react.provider"),{id:r.id,Provider:b(n),defaultValue:e}}function m(e){let r=R(e);return r!==void 0?r:e.defaultValue}var d=new Map,a=new Map;function W(e,r){return async(...n)=>{let t=r+":"+JSON.stringify(n);if(y()||typeof window<"u"){let o=g(t);if(o!==void 0)return o}if(d.has(t))return d.get(t);if(a.has(t))return a.get(t);let i=Promise.resolve(e(...n)).then(o=>(d.set(t,o),a.delete(t),T()&&p(t,o),o),o=>{throw a.delete(t),o});return a.set(t,i),i}}var[J,H]=h(0),_=new Set;function X(e){let r=typeof e=="string"?n=>n.startsWith(e):e;for(let n of d.keys())r(n)&&(d.delete(n),_.add(n));H(n=>n+1)}function B(e,r){let[n]=D(r||(()=>!0),e);return n}var f=new Map;function v(e){return f.has(e)||f.set(e,h(void 0)),f.get(e)}function E(e,r){let n=r||e.name||"action",t=async i=>{let[,o]=v(n),c=()=>o(void 0),u=()=>t(i);o({input:i,pending:!0,clear:c,retry:u});try{let s=await e(i);return o({input:i,result:s,pending:!1,clear:c,retry:u}),s}catch(s){throw o({input:i,error:s,pending:!1,clear:c,retry:u}),s}};return t.url=n,t.with=i=>E((...o)=>e(i,...o),r),t}function Y(e){let[r]=v(e.url);return r}function K(e){return e}var C=x(),q=C.Provider;function G(){let e=m(C);return typeof e=="function"?e:()=>e}export{C as RouteDataContext,q as RouteDataProvider,E as action,W as cache,B as createAsync,X as revalidate,K as useAction,G as useRouteData,Y as useSubmission};
1
+ import{createResource as D,createSignal as h}from"@fluixi/reactive/signal";var A=!1,l=new Map;function y(){return A}function p(e,o){l.set(e,o)}function g(e){return l.get(e)}function P(){l.clear()}function S(){if(typeof window>"u")return;let e=document.getElementById("__FLUIXI_HYDRATION__");e&&e.remove();let o=document.createTreeWalker(document.body,NodeFilter.SHOW_COMMENT,null),n=[],t;for(;t=o.nextNode();){let r=t,i=r.nodeValue||"";(i.startsWith("#")||i.startsWith("/"))&&n.push(r)}n.forEach(r=>r.remove()),P()}typeof window<"u"&&window.addEventListener("load",()=>{setTimeout(S,100)});function T(){return typeof window>"u"}import{asProvider as b}from"@fluixi/dom";import{createContext as w,useContext as R}from"@fluixi/reactive/signal";import{readChildren as F}from"@fluixi/reactive/signal";function x(e,o){let n=w(e,o),t=r=>(r.debug,n.Provider({value:r.value,get children(){return r.children},debug:r.debug}));return typeof Symbol<"u"&&Symbol.for&&(t.$$typeof=Symbol.for("react.provider")),t.$$typeof=Symbol.for("react.provider"),{id:n.id,Provider:b(t),defaultValue:e}}function m(e){let o=R(e);return o!==void 0?o:e.defaultValue}var d=new Map,a=new Map;function W(e,o){return async(...n)=>{let t=o+":"+JSON.stringify(n);if(y()||typeof window<"u"){let i=g(t);if(i!==void 0)return i}if(d.has(t))return d.get(t);if(a.has(t))return a.get(t);let r=Promise.resolve(e(...n)).then(i=>(d.set(t,i),a.delete(t),T()&&p(t,i),i),i=>{throw a.delete(t),i});return a.set(t,r),r}}var[J,H]=h(0),_=new Set;function X(e){let o=typeof e=="string"?n=>n.startsWith(e):e;for(let n of d.keys())o(n)&&(d.delete(n),_.add(n));H(n=>n+1)}function B(e,o){let[n]=D(o||(()=>!0),e);return n}var f=new Map;function v(e){return f.has(e)||f.set(e,h(void 0)),f.get(e)}function E(e,o){let n=o||e.name||"action",t=async r=>{let[,i]=v(n),c=()=>i(void 0),u=()=>t(r);i({input:r,pending:!0,clear:c,retry:u});try{let s=await e(r);return i({input:r,result:s,pending:!1,clear:c,retry:u}),s}catch(s){throw i({input:r,error:s,pending:!1,clear:c,retry:u}),s}};return t.url=n,t.with=r=>E((...i)=>e(r,...i),o),t}function Y(e){let[o]=v(e.url);return o}function K(e){return e}var C=x(void 0,"route-data"),q=C.Provider;function G(){let e=m(C);return typeof e=="function"?e:()=>e}export{C as RouteDataContext,q as RouteDataProvider,E as action,W as cache,B as createAsync,X as revalidate,K as useAction,G as useRouteData,Y as useSubmission};
@@ -1 +1 @@
1
- "use strict";var R=Object.defineProperty;var ee=Object.getOwnPropertyDescriptor;var te=Object.getOwnPropertyNames;var ne=Object.prototype.hasOwnProperty;var re=(e,n)=>{for(var t in n)R(e,t,{get:n[t],enumerable:!0})},oe=(e,n,t,o)=>{if(n&&typeof n=="object"||typeof n=="function")for(let r of te(n))!ne.call(e,r)&&r!==t&&R(e,r,{get:()=>n[r],enumerable:!(o=ee(n,r))||o.enumerable});return e};var ae=e=>oe(R({},"__esModule",{value:!0}),e);var Ne={};re(Ne,{A:()=>Le,Form:()=>ke,Link:()=>Y,Outlet:()=>he,Redirect:()=>xe,Router:()=>ge,action:()=>S,cache:()=>_,createAsync:()=>F,createBrowserHistory:()=>m.createBrowserHistory,createMemoryHistory:()=>m.createMemoryHistory,lazy:()=>z,matchPath:()=>m.matchPath,matchRoutes:()=>m.matchRoutes,preloadRoutes:()=>De,revalidate:()=>V,runWithOwner:()=>G.runWithOwner,select:()=>Ae,useAction:()=>j,useLevelParams:()=>ve,useLinkNavigation:()=>we,useLocation:()=>L,useMatch:()=>Re,useNavigate:()=>X,useParam:()=>Ce,useParamSelector:()=>Pe,useParams:()=>O,useRouteData:()=>Se,useRouter:()=>P,useSearchParams:()=>be,useSubmission:()=>K});module.exports=ae(Ne);var s=require("@fluixi/reactive/signal"),u=require("@fluixi/dom"),l=require("@fluixi/reactive/signal"),U=require("@fluixi/utils/object"),$=require("@fluixi/utils/compare"),y=require("@fluixi/router"),m=require("@fluixi/router");var T=require("@fluixi/reactive/signal");var ie=!1,b=new Map;function k(){return ie}function D(e,n){b.set(e,n)}function N(e){return b.get(e)}function se(){b.clear()}function ce(){if(typeof window>"u")return;let e=document.getElementById("__FLUIXI_HYDRATION__");e&&e.remove();let n=document.createTreeWalker(document.body,NodeFilter.SHOW_COMMENT,null),t=[],o;for(;o=n.nextNode();){let r=o,a=r.nodeValue||"";(a.startsWith("#")||a.startsWith("/"))&&t.push(r)}t.forEach(r=>r.remove()),se()}typeof window<"u"&&window.addEventListener("load",()=>{setTimeout(ce,100)});function M(){return typeof window>"u"}var E=require("@fluixi/dom"),A=require("@fluixi/reactive/signal"),ue=require("@fluixi/reactive/signal");function H(e){let n=(0,A.createContext)(e),t=o=>(o.debug,n.Provider({value:o.value,get children(){return o.children},debug:o.debug}));return typeof Symbol<"u"&&Symbol.for&&(t.$$typeof=Symbol.for("react.provider")),t.$$typeof=Symbol.for("react.provider"),{id:n.id,Provider:(0,E.asProvider)(t),defaultValue:e}}var x=new Map,h=new Map;function _(e,n){return async(...t)=>{let o=n+":"+JSON.stringify(t);if(k()||typeof window<"u"){let a=N(o);if(a!==void 0)return a}if(x.has(o))return x.get(o);if(h.has(o))return h.get(o);let r=Promise.resolve(e(...t)).then(a=>(x.set(o,a),h.delete(o),M()&&D(o,a),a),a=>{throw h.delete(o),a});return h.set(o,r),r}}var[ze,de]=(0,T.createSignal)(0),le=new Set;function V(e){let n=typeof e=="string"?t=>t.startsWith(e):e;for(let t of x.keys())n(t)&&(x.delete(t),le.add(t));de(t=>t+1)}function F(e,n){let[t]=(0,T.createResource)(n||(()=>!0),e);return t}var w=new Map;function I(e){return w.has(e)||w.set(e,(0,T.createSignal)(void 0)),w.get(e)}function S(e,n){let t=n||e.name||"action",o=async r=>{let[,a]=I(t),i=()=>a(void 0),c=()=>o(r);a({input:r,pending:!0,clear:i,retry:c});try{let d=await e(r);return a({input:r,result:d,pending:!1,clear:i,retry:c}),d}catch(d){throw a({input:r,error:d,pending:!1,clear:i,retry:c}),d}};return o.url=t,o.with=r=>S((...a)=>e(r,...a),n),o}function K(e){let[n]=I(e.url);return n}function j(e){return e}var fe=H(),Ue=fe.Provider;var g=require("@fluixi/reactive/signal");function z(e,n){let t,o,r;function a(){return o||(o=e().then(c=>t=c.default)),o}n?.preload&&a();let i=(c=>{if(t){let d=t;return(0,g.untrack)(()=>d(c))}if(!r){let[d]=(0,g.createResource)(()=>a(),{transport:!1});if(r=d,d.error)throw d.error}return(0,g.createMemo)(()=>{let d=r();return d?(0,g.untrack)(()=>d(c)):void 0},void 0,{name:"lazy"})});return i.preload=()=>a().then(()=>{}),i.$lazy=!0,i.loader=e,i}var G=require("@fluixi/reactive/signal"),v=(0,l.createContext)(),W=(0,l.createContext)(),q=(0,l.createContext)(),B=(0,l.createContext)();function pe(e,n,t){let o,r=e.route.data;if(typeof r=="function"){let C=!1;(0,s.onCleanup)(()=>{C=!0});let Q=(0,s.getOwner)(),[Z]=(0,s.createResource)(()=>r({params:t.params,location:t.location},Q,()=>C));o=Z}let a=()=>B.Provider({value:o,get children(){return q.Provider({value:e.params,get children(){return W.Provider({value:{depth:n,...t},get children(){return(0,u.createComponent)(e.component,{})}})}})}});if(!o)return a();let i=o,c=()=>i.loading,[d,f]=(0,s.createSignal)((0,s.untrack)(()=>!c()));return(0,s.createEffect)(()=>f(!c())),(0,s.createMemo)(()=>d()?a():null)}function J(e){let n=e.depth+1,[t,o]=(0,s.createSignal)((0,s.untrack)(()=>e.matched()[n]?.component));return(0,s.createEffect)(()=>{let r=e.matched()[n]?.component;o(()=>r)}),(0,s.createMemo)(()=>{if(!t())return e.notFound?e.notFound():null;let a=(0,s.untrack)(()=>e.matched())[n];return pe(a,n,{matched:e.matched,params:e.params,location:e.location})})}function ye(e){return e==null?me():typeof e=="function"?(0,u.createComponent)(e,{}):e}function me(){let e=(0,u.createNativeElement)("div");(0,u.setAttribute)(e,"class","fx-not-found"),(0,u.setAttribute)(e,"role","main"),(0,u.setAttribute)(e,"style","min-height:60vh;display:grid;place-content:center;gap:.25rem;text-align:center;font-family:system-ui,-apple-system,sans-serif");let n=(0,u.createNativeElement)("h1");(0,u.setAttribute)(n,"style","margin:0;font-size:2.5rem;font-weight:700"),(0,u.insert)(n,"404");let t=(0,u.createNativeElement)("p");return(0,u.setAttribute)(t,"style","margin:0;opacity:.7"),(0,u.insert)(t,"This page could not be found."),e.appendChild(n),e.appendChild(t),e}function ge(e){let n=e.history??(0,y.createBrowserHistory)(),t=(0,y.createRouter)({routes:e.routes,base:e.base,history:n}),[o,r]=(0,s.createSignal)(t.state()),a=t.subscribe(r);(0,s.onCleanup)(()=>{a(),t.destroy()});let i=(0,s.createMemo)(()=>(o().match?.matched??[]).filter(C=>C.component)),c={router:t,location:(0,s.createMemo)(()=>o().location),params:(0,s.createMemo)(()=>o().match?.params??{})},d={depth:-1,matched:i,params:c.params,location:c.location,notFound:()=>ye(e.notFound)},f;return v.Provider({value:c,get children(){return f??=J(d)}})}function he(){let e=(0,l.useContext)(W);return e?J(e):null}function xe(e){let n=(0,l.useContext)(v);if(n&&typeof window<"u"){let t=!1;(0,s.onCleanup)(()=>t=!0),queueMicrotask(()=>{t||n.router.navigate(e.to,{replace:e.replace!==!1})})}return null}var Te={router:{navigate:()=>{}},location:()=>({pathname:"",search:"",hash:"",query:{}}),params:()=>({})};function P(){let e=(0,l.useContext)(v);if(e)return e;if(typeof window>"u")return Te;throw new Error("[router] useRouter must be used within <Router>")}function O(){let e=P().params;return(0,s.createMemo)(()=>e(),{},{equals:(n,t)=>JSON.stringify(n)===JSON.stringify(t)})}function ve(){return(0,l.useContext)(q)??{}}function Ce(e){let n=O();return(0,s.createMemo)(()=>n()[e])}function Pe(e,n){let t=O();return(0,s.createMemo)(()=>e(t()),void 0,n?{equals:n}:void 0)}function Re(e){let n=L();return(0,s.createMemo)(()=>(0,y.matchPath)(typeof e=="function"?e():e,n.pathname))}function be(){let e=L(),n=X();return[(0,s.createMemo)(()=>e.query),(r,a)=>{let i=new URLSearchParams(e.search);for(let[d,f]of Object.entries(r))f===null?i.delete(d):i.set(d,f);let c=i.toString();n(e.pathname+(c?`?${c}`:""),a)}]}function Ae(e,n){let t=(o,r)=>(0,$.deepEqual)(o,r);return n!==void 0?(0,s.createMemo)(()=>(0,U.get)(e(),n),void 0,{equals:t}):(0,s.createMemo)(e,void 0,{equals:t})}function L(){let{location:e}=P();return new Proxy({},{get:(n,t)=>e()[t],has:(n,t)=>t in e(),ownKeys:()=>Reflect.ownKeys(e()),getOwnPropertyDescriptor:(n,t)=>Object.getOwnPropertyDescriptor(e(),t)})}function we(e={}){let n=(0,l.useContext)(v);return t=>{if(!n||t.defaultPrevented||t.button!==0||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey)return;let r=t.target?.closest?.("a");if(!r||!r.getAttribute("href")||r.target&&r.target!=="_self"||r.hasAttribute("download")||/(^|\s)external(\s|$)/.test(r.getAttribute("rel")??""))return;let a=new URL(r.href);a.protocol!=="http:"&&a.protocol!=="https:"||a.origin===window.location.origin&&(a.hash&&a.pathname===window.location.pathname&&a.search===window.location.search||e.shouldNavigate&&!e.shouldNavigate(a,r)||(t.preventDefault(),n.router.navigate(a.pathname+a.search+a.hash,{replace:e.replace})))}}function X(){let{router:e}=P();return(n,t)=>e.navigate(n,t)}function Se(){return(0,l.useContext)(B)??(()=>{})}var p=e=>typeof e=="function"?e():e,Oe=new Set(["href","slot","class","className","active","activeClass","replace","children"]);function Y(e){let n=(0,l.useContext)(v),t=typeof document>"u",o=()=>n?.router.navigate(p(e.href)??"",{replace:p(e.replace)}),r=(0,u.createNativeElement)("a");(0,u.setAttribute)(r,"href",p(e.href)??""),e.slot&&(0,u.setAttribute)(r,"slot",p(e.slot));for(let i of Object.keys(e)){if(Oe.has(i))continue;let c=e[i];c!=null&&typeof c!="function"&&(0,u.setAttribute)(r,i,String(c))}if(typeof r.addEventListener=="function")r.addEventListener("click",i=>{i.metaKey||i.ctrlKey||i.shiftKey||i.altKey||(i.preventDefault(),o())});else{let i=p(e.className??e.class)??"";i&&(0,u.setAttribute)(r,"class",i)}typeof r.addEventListener=="function"&&(0,s.createEffect)(()=>{let i=p(e.href)??"";r.setAttribute("href",i);let c=p(e.className??e.class)??"",d=p(e.activeClass)??"",f=p(e.active)??n?.location().pathname===i;r.className=[c,f?d:""].filter(Boolean).join(" ")});let a=e.children;return a!=null&&(0,u.insert)(r,a),r}var Le=Y;function ke(e){let n=e.action,t=e.className??e.class,o=n.url??"",r=(0,u.createNativeElement)("form");(0,u.setAttribute)(r,"method","post"),o&&(0,u.setAttribute)(r,"action",o),t&&(0,u.setAttribute)(r,"class",t);for(let i of Object.keys(e)){if(i==="action"||i==="children"||i==="class"||i==="className")continue;let c=e[i];c!=null&&typeof c!="function"&&(0,u.setAttribute)(r,i,String(c))}typeof r.addEventListener=="function"&&r.addEventListener("submit",i=>{i.preventDefault();let c={};new FormData(r).forEach((d,f)=>{c[f]=d}),Promise.resolve(n(c)).catch(()=>{})});let a=e.children;return a!=null&&(0,u.insert)(r,a),r}async function De(e,n){let t=(0,y.matchRoutes)(e,n);if(!t)return;let o=[];for(let r of t.matched){let a=r.component;a&&typeof a.preload=="function"&&o.push(a.preload())}await Promise.all(o)}
1
+ "use strict";var P=Object.defineProperty;var ne=Object.getOwnPropertyDescriptor;var re=Object.getOwnPropertyNames;var oe=Object.prototype.hasOwnProperty;var ae=(e,n)=>{for(var t in n)P(e,t,{get:n[t],enumerable:!0})},ie=(e,n,t,a)=>{if(n&&typeof n=="object"||typeof n=="function")for(let r of re(n))!oe.call(e,r)&&r!==t&&P(e,r,{get:()=>n[r],enumerable:!(a=ne(n,r))||a.enumerable});return e};var se=e=>ie(P({},"__esModule",{value:!0}),e);var Ee={};ae(Ee,{A:()=>De,Form:()=>Ne,Link:()=>Q,Outlet:()=>Te,Redirect:()=>ve,Router:()=>xe,action:()=>S,cache:()=>_,createAsync:()=>F,createBrowserHistory:()=>m.createBrowserHistory,createMemoryHistory:()=>m.createMemoryHistory,lazy:()=>$,matchPath:()=>m.matchPath,matchRoutes:()=>m.matchRoutes,preloadRoutes:()=>Me,revalidate:()=>V,runWithOwner:()=>Z.runWithOwner,select:()=>Se,useAction:()=>K,useLevelParams:()=>Re,useLinkNavigation:()=>ke,useLocation:()=>O,useMatch:()=>Ae,useNavigate:()=>G,useParam:()=>Pe,useParamSelector:()=>be,useParams:()=>k,useRouteData:()=>Oe,useRouter:()=>R,useSearchParams:()=>we,useSubmission:()=>I});module.exports=se(Ee);var i=require("@fluixi/reactive/signal"),c=require("@fluixi/dom"),l=require("@fluixi/reactive/signal"),W=require("@fluixi/utils/object"),q=require("@fluixi/utils/compare"),y=require("@fluixi/router"),m=require("@fluixi/router");var T=require("@fluixi/reactive/signal");var ce=!1,b=new Map;function L(){return ce}function D(e,n){b.set(e,n)}function N(e){return b.get(e)}function ue(){b.clear()}function de(){if(typeof window>"u")return;let e=document.getElementById("__FLUIXI_HYDRATION__");e&&e.remove();let n=document.createTreeWalker(document.body,NodeFilter.SHOW_COMMENT,null),t=[],a;for(;a=n.nextNode();){let r=a,o=r.nodeValue||"";(o.startsWith("#")||o.startsWith("/"))&&t.push(r)}t.forEach(r=>r.remove()),ue()}typeof window<"u"&&window.addEventListener("load",()=>{setTimeout(de,100)});function M(){return typeof window>"u"}var E=require("@fluixi/dom"),A=require("@fluixi/reactive/signal"),le=require("@fluixi/reactive/signal");function H(e,n){let t=(0,A.createContext)(e,n),a=r=>(r.debug,t.Provider({value:r.value,get children(){return r.children},debug:r.debug}));return typeof Symbol<"u"&&Symbol.for&&(a.$$typeof=Symbol.for("react.provider")),a.$$typeof=Symbol.for("react.provider"),{id:t.id,Provider:(0,E.asProvider)(a),defaultValue:e}}var x=new Map,h=new Map;function _(e,n){return async(...t)=>{let a=n+":"+JSON.stringify(t);if(L()||typeof window<"u"){let o=N(a);if(o!==void 0)return o}if(x.has(a))return x.get(a);if(h.has(a))return h.get(a);let r=Promise.resolve(e(...t)).then(o=>(x.set(a,o),h.delete(a),M()&&D(a,o),o),o=>{throw h.delete(a),o});return h.set(a,r),r}}var[$e,fe]=(0,T.createSignal)(0),pe=new Set;function V(e){let n=typeof e=="string"?t=>t.startsWith(e):e;for(let t of x.keys())n(t)&&(x.delete(t),pe.add(t));fe(t=>t+1)}function F(e,n){let[t]=(0,T.createResource)(n||(()=>!0),e);return t}var w=new Map;function j(e){return w.has(e)||w.set(e,(0,T.createSignal)(void 0)),w.get(e)}function S(e,n){let t=n||e.name||"action",a=async r=>{let[,o]=j(t),s=()=>o(void 0),u=()=>a(r);o({input:r,pending:!0,clear:s,retry:u});try{let d=await e(r);return o({input:r,result:d,pending:!1,clear:s,retry:u}),d}catch(d){throw o({input:r,error:d,pending:!1,clear:s,retry:u}),d}};return a.url=t,a.with=r=>S((...o)=>e(r,...o),n),a}function I(e){let[n]=j(e.url);return n}function K(e){return e}var ye=H(void 0,"route-data"),We=ye.Provider;var U=require("@fluixi/dom"),g=require("@fluixi/reactive/signal");function z(e){if(e!=null&&(typeof e=="object"||typeof e=="function"))try{e.$lazy=!0}catch{}return e}function $(e,n){let t,a,r;function o(){return a||(a=e().then(u=>t=u.default)),a}n?.preload&&o();let s=(u=>{if(t){let d=t;return z((0,g.untrack)(()=>d(u)))}if(!r){let[d]=(0,g.createResource)(()=>o(),{transport:!1});if(r=d,d.error)throw d.error}return(0,g.createMemo)(()=>{let d=r();return d?z((0,U.createComponent)(d,u)):void 0})});return s.preload=()=>o().then(()=>{}),s.$lazy=!0,s.loader=e,s}var Z=require("@fluixi/reactive/signal"),v=(0,l.createContext)(void 0,"router"),B=(0,l.createContext)(void 0,"outlet"),J=(0,l.createContext)(void 0,"route-params"),X=(0,l.createContext)(void 0,"route-data");function me(e,n,t){let a,r=e.route.data;if(typeof r=="function"){let C=!1;(0,i.onCleanup)(()=>{C=!0});let ee=(0,i.getOwner)(),[te]=(0,i.createResource)(()=>r({params:t.params,location:t.location},ee,()=>C));a=te}let o=()=>X.Provider({value:a,get children(){return J.Provider({value:e.params,get children(){return B.Provider({value:{depth:n,...t},get children(){return(0,c.createComponent)(e.component,{})}})}})}});if(!a)return o();let s=a,u=()=>s.loading,[d,p]=(0,i.createSignal)((0,i.untrack)(()=>!u()));return(0,i.createEffect)(()=>p(!u())),(0,i.createMemo)(()=>d()?o():null)}function Y(e){let n=e.depth+1,[t,a]=(0,i.createSignal)((0,i.untrack)(()=>e.matched()[n]?.component));return(0,i.createEffect)(()=>{let r=e.matched()[n]?.component;a(()=>r)}),(0,i.createMemo)(()=>{if(!t())return e.notFound?e.notFound():null;let o=(0,i.untrack)(()=>e.matched())[n];return me(o,n,{matched:e.matched,params:e.params,location:e.location})})}function ge(e){return e==null?he():typeof e=="function"?(0,c.createComponent)(e,{}):e}function he(){let e=(0,c.createNativeElement)("div");(0,c.setAttribute)(e,"class","fx-not-found"),(0,c.setAttribute)(e,"role","main"),(0,c.setAttribute)(e,"style","min-height:60vh;display:grid;place-content:center;gap:.25rem;text-align:center;font-family:system-ui,-apple-system,sans-serif");let n=(0,c.createNativeElement)("h1");(0,c.setAttribute)(n,"style","margin:0;font-size:2.5rem;font-weight:700"),(0,c.insert)(n,"404");let t=(0,c.createNativeElement)("p");return(0,c.setAttribute)(t,"style","margin:0;opacity:.7"),(0,c.insert)(t,"This page could not be found."),e.appendChild(n),e.appendChild(t),e}function xe(e){let n=e.history??(0,y.createBrowserHistory)(),t=(0,y.createRouter)({routes:e.routes,base:e.base,history:n}),[a,r]=(0,i.createSignal)(t.state()),o=t.subscribe(r);(0,i.onCleanup)(()=>{o(),t.destroy()});let s=(0,i.createMemo)(()=>(a().match?.matched??[]).filter(C=>C.component)),u={router:t,location:(0,i.createMemo)(()=>a().location),params:(0,i.createMemo)(()=>a().match?.params??{})},d={depth:-1,matched:s,params:u.params,location:u.location,notFound:()=>ge(e.notFound)},p;return v.Provider({value:u,get children(){return p??=Y(d)}})}function Te(){let e=(0,l.useContext)(B);return e?Y(e):null}function ve(e){let n=(0,l.useContext)(v);if(n&&typeof window<"u"){let t=!1;(0,i.onCleanup)(()=>t=!0),queueMicrotask(()=>{t||n.router.navigate(e.to,{replace:e.replace!==!1})})}return null}var Ce={router:{navigate:()=>{}},location:()=>({pathname:"",search:"",hash:"",query:{}}),params:()=>({})};function R(){let e=(0,l.useContext)(v);if(e)return e;if(typeof window>"u")return Ce;throw new Error("[router] useRouter must be used within <Router>")}function k(){let e=R().params;return(0,i.createMemo)(()=>e(),{},{equals:(n,t)=>JSON.stringify(n)===JSON.stringify(t)})}function Re(){return(0,l.useContext)(J)??{}}function Pe(e){let n=k();return(0,i.createMemo)(()=>n()[e])}function be(e,n){let t=k();return(0,i.createMemo)(()=>e(t()),void 0,n?{equals:n}:void 0)}function Ae(e){let n=O();return(0,i.createMemo)(()=>(0,y.matchPath)(typeof e=="function"?e():e,n.pathname))}function we(){let e=O(),n=G();return[(0,i.createMemo)(()=>e.query),(r,o)=>{let s=new URLSearchParams(e.search);for(let[d,p]of Object.entries(r))p===null?s.delete(d):s.set(d,p);let u=s.toString();n(e.pathname+(u?`?${u}`:""),o)}]}function Se(e,n){let t=(a,r)=>(0,q.deepEqual)(a,r);return n!==void 0?(0,i.createMemo)(()=>(0,W.get)(e(),n),void 0,{equals:t}):(0,i.createMemo)(e,void 0,{equals:t})}function O(){let{location:e}=R();return new Proxy({},{get:(n,t)=>e()[t],has:(n,t)=>t in e(),ownKeys:()=>Reflect.ownKeys(e()),getOwnPropertyDescriptor:(n,t)=>Object.getOwnPropertyDescriptor(e(),t)})}function ke(e={}){let n=(0,l.useContext)(v);return t=>{if(!n||t.defaultPrevented||t.button!==0||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey)return;let r=t.target?.closest?.("a");if(!r||!r.getAttribute("href")||r.target&&r.target!=="_self"||r.hasAttribute("download")||/(^|\s)external(\s|$)/.test(r.getAttribute("rel")??""))return;let o=new URL(r.href);o.protocol!=="http:"&&o.protocol!=="https:"||o.origin===window.location.origin&&(o.hash&&o.pathname===window.location.pathname&&o.search===window.location.search||e.shouldNavigate&&!e.shouldNavigate(o,r)||(t.preventDefault(),n.router.navigate(o.pathname+o.search+o.hash,{replace:e.replace})))}}function G(){let{router:e}=R();return(n,t)=>e.navigate(n,t)}function Oe(){return(0,l.useContext)(X)??(()=>{})}var f=e=>typeof e=="function"?e():e,Le=new Set(["href","slot","class","className","active","activeClass","replace","children"]);function Q(e){let n=(0,l.useContext)(v),t=()=>n?.router.navigate(f(e.href)??"",{replace:f(e.replace)}),a=(0,c.createNativeElement)("a");(0,c.setAttribute)(a,"href",f(e.href)??""),e.slot&&(0,c.setAttribute)(a,"slot",f(e.slot));for(let o of Object.keys(e)){if(Le.has(o))continue;let s=e[o];s!=null&&typeof s!="function"&&(0,c.setAttribute)(a,o,String(s))}if(typeof a.addEventListener=="function")a.addEventListener("click",o=>{o.metaKey||o.ctrlKey||o.shiftKey||o.altKey||(o.preventDefault(),t())});else{let o=f(e.className??e.class)??"";o&&(0,c.setAttribute)(a,"class",o)}typeof a.addEventListener=="function"&&(0,i.createEffect)(()=>{let o=f(e.href)??"";a.setAttribute("href",o);let s=f(e.className??e.class)??"",u=f(e.activeClass)??"",d=f(e.active)??n?.location().pathname===o;a.className=[s,d?u:""].filter(Boolean).join(" ")});let r=e.children;return r!=null&&(0,c.insert)(a,r),a}var De=Q;function Ne(e){let n=e.action,t=e.className??e.class,a=n.url??"",r=(0,c.createNativeElement)("form");(0,c.setAttribute)(r,"method","post"),a&&(0,c.setAttribute)(r,"action",a),t&&(0,c.setAttribute)(r,"class",t);for(let s of Object.keys(e)){if(s==="action"||s==="children"||s==="class"||s==="className")continue;let u=e[s];u!=null&&typeof u!="function"&&(0,c.setAttribute)(r,s,String(u))}typeof r.addEventListener=="function"&&r.addEventListener("submit",s=>{s.preventDefault();let u={};new FormData(r).forEach((d,p)=>{u[p]=d}),Promise.resolve(n(u)).catch(()=>{})});let o=e.children;return o!=null&&(0,c.insert)(r,o),r}async function Me(e,n){let t=(0,y.matchRoutes)(e,n);if(!t)return;let a=[];for(let r of t.matched){let o=r.component;o&&typeof o.preload=="function"&&a.push(o.preload())}await Promise.all(a)}