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

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 (92) hide show
  1. package/README.md +4 -4
  2. package/dist/cdn/core.global.js +1 -1
  3. package/dist/fluixi.d.ts +1 -1
  4. package/dist/src/cdn/chunk-RN7C7HNS.mjs +1 -0
  5. package/dist/src/cdn/core.cjs +1 -1
  6. package/dist/src/cdn/core.d.ts +2 -2
  7. package/dist/src/cdn/core.d.ts.map +1 -1
  8. package/dist/src/cdn/core.js +2 -2
  9. package/dist/src/cdn/core.mjs +1 -1
  10. package/dist/src/cdn/router-QB3W43UQ.mjs +1 -0
  11. package/dist/src/index.cjs +1 -1
  12. package/dist/src/index.js +1 -7
  13. package/dist/src/index.mjs +1 -1
  14. package/dist/src/jsx-runtime.d.ts +1 -1
  15. package/dist/src/jsx-runtime.js +1 -1
  16. package/dist/src/lib/client/chunk-FT22BLCQ.mjs +1 -0
  17. package/dist/src/lib/client/index.cjs +1 -1
  18. package/dist/src/lib/client/index.d.ts.map +1 -1
  19. package/dist/src/lib/client/index.js +1 -3
  20. package/dist/src/lib/client/index.mjs +1 -1
  21. package/dist/src/lib/client/router-IH7JYMRU.mjs +1 -0
  22. package/dist/src/lib/context/context.cjs +1 -1
  23. package/dist/src/lib/context/context.d.ts.map +1 -1
  24. package/dist/src/lib/context/context.js +0 -2
  25. package/dist/src/lib/context/context.mjs +1 -1
  26. package/dist/src/lib/context/index.cjs +1 -1
  27. package/dist/src/lib/context/index.mjs +1 -1
  28. package/dist/src/lib/core.cjs +1 -1
  29. package/dist/src/lib/core.d.ts +4 -4
  30. package/dist/src/lib/core.d.ts.map +1 -1
  31. package/dist/src/lib/core.js +5 -8
  32. package/dist/src/lib/core.mjs +1 -1
  33. package/dist/src/lib/index.cjs +1 -1
  34. package/dist/src/lib/index.d.ts +1 -1
  35. package/dist/src/lib/index.d.ts.map +1 -1
  36. package/dist/src/lib/index.js +2 -4
  37. package/dist/src/lib/index.mjs +1 -1
  38. package/dist/src/lib/jsx-runtime/index.d.ts +1 -1
  39. package/dist/src/lib/jsx-runtime/index.js +1 -1
  40. package/dist/src/lib/plugins/fluixi-routes-plugin.cjs +2 -2
  41. package/dist/src/lib/plugins/fluixi-routes-plugin.mjs +2 -2
  42. package/dist/src/lib/plugins/index.cjs +3 -3
  43. package/dist/src/lib/plugins/index.mjs +3 -3
  44. package/dist/src/lib/plugins/route-codegen.cjs +1 -1
  45. package/dist/src/lib/plugins/route-codegen.js +3 -3
  46. package/dist/src/lib/plugins/route-codegen.mjs +1 -1
  47. package/dist/src/lib/render/component.cjs +1 -1
  48. package/dist/src/lib/render/component.d.ts +10 -1
  49. package/dist/src/lib/render/component.d.ts.map +1 -1
  50. package/dist/src/lib/render/component.js +12 -10
  51. package/dist/src/lib/render/component.mjs +1 -1
  52. package/dist/src/lib/render/index.cjs +1 -1
  53. package/dist/src/lib/render/index.d.ts.map +1 -1
  54. package/dist/src/lib/render/index.js +0 -2
  55. package/dist/src/lib/render/index.mjs +1 -1
  56. package/dist/src/lib/render/versions.cjs +1 -1
  57. package/dist/src/lib/render/versions.mjs +1 -1
  58. package/dist/src/lib/router/data.cjs +1 -0
  59. package/dist/src/lib/router/data.d.ts.map +1 -0
  60. package/dist/src/lib/router/data.mjs +1 -0
  61. package/dist/src/lib/router/index.cjs +1 -0
  62. package/dist/src/lib/router/index.d.ts.map +1 -0
  63. package/dist/src/lib/{router-next → router}/index.js +3 -3
  64. package/dist/src/lib/router/index.mjs +1 -0
  65. package/dist/src/routes.d.ts +1 -1
  66. package/dist/src/routes.d.ts.map +1 -1
  67. package/dist/src/version.generated.cjs +1 -1
  68. package/dist/src/version.generated.d.ts +1 -1
  69. package/dist/src/version.generated.js +1 -1
  70. package/dist/src/version.generated.mjs +1 -1
  71. package/dist/tsconfig.lib.tsbuildinfo +1 -1
  72. package/package.json +16 -22
  73. package/src/index.ts +2 -3
  74. package/types/fluixi.d.ts +1 -1
  75. package/dist/src/cdn/chunk-3IZZ7QBW.mjs +0 -1
  76. package/dist/src/cdn/router-next-W2YUEGIJ.mjs +0 -1
  77. package/dist/src/lib/client/chunk-7CZ3YHHR.mjs +0 -1
  78. package/dist/src/lib/client/router-next-G4DNKAF2.mjs +0 -1
  79. package/dist/src/lib/router-next/data.cjs +0 -1
  80. package/dist/src/lib/router-next/data.d.ts.map +0 -1
  81. package/dist/src/lib/router-next/data.mjs +0 -1
  82. package/dist/src/lib/router-next/index.cjs +0 -1
  83. package/dist/src/lib/router-next/index.d.ts.map +0 -1
  84. package/dist/src/lib/router-next/index.mjs +0 -1
  85. package/dist/src/rx.cjs +0 -1
  86. package/dist/src/rx.d.ts +0 -2
  87. package/dist/src/rx.d.ts.map +0 -1
  88. package/dist/src/rx.js +0 -101
  89. package/dist/src/rx.mjs +0 -0
  90. /package/dist/src/lib/{router-next → router}/data.d.ts +0 -0
  91. /package/dist/src/lib/{router-next → router}/data.js +0 -0
  92. /package/dist/src/lib/{router-next → router}/index.d.ts +0 -0
@@ -1 +1 @@
1
- "use strict";var ge=Object.defineProperty;var Lt=Object.getOwnPropertyDescriptor;var _t=Object.getOwnPropertyNames;var Mt=Object.prototype.hasOwnProperty;var L=(e,t)=>()=>(e&&(t=e(e=0)),t);var He=(e,t)=>{for(var n in t)ge(e,n,{get:t[n],enumerable:!0})},me=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of _t(t))!Mt.call(e,o)&&o!==n&&ge(e,o,{get:()=>t[o],enumerable:!(r=Lt(t,o))||r.enumerable});return e},je=(e,t,n)=>(me(e,t,"default"),n&&me(n,t,"default"));var Dt=e=>me(ge({},"__esModule",{value:!0}),e);function xe(){return It}function Ue(){let e=(0,c.getOwner)();if(!e)return null;if(!e[he]){let t={mounts:[],effects:[],scheduled:!1};e[he]=t}return e[he]}function $e(e){if(e.scheduled)return;e.scheduled=!0;let t=(0,c.getOwner)();queueMicrotask(()=>{if((0,c.isOwnerDisposed)(t)){e.mounts=[],e.effects=[];return}(0,c.runWithOwner)(t,()=>{for(let n of e.mounts)try{let r=n();typeof r=="function"&&(0,c.onCleanup)(r)}catch(r){console.error("Error in onMount callback:",r)}for(let n of e.effects){let r;(0,c.createEffect)(()=>{r&&r(),r=n()}),(0,c.onCleanup)(()=>{r&&r()})}e.mounts=[],e.effects=[]})})}function b(e){(0,Y.registerCreateComponent)(K)}function K(e,t){return G(e,t)}function G(e,t){let n=typeof e=="function"?(0,c.untrack)(()=>e(t)):e;if(n!=null&&(typeof n=="function"||typeof n=="object")&&!(0,c.isSignal)(n)){try{n.$name=e.name}catch{}return(0,Y.asComponent)(n)}return n}function Q(e,t=!0){let n=Ue();if(n){if(!t){n.scheduled||e();return}n.mounts.push(e),$e(n)}else{if(!t){e();return}(0,c.createEffect)(()=>{let r=(0,c.untrack)(e);typeof r=="function"&&(0,c.onCleanup)(r)})}}function Z(e){(0,c.onCleanup)(e)}function U(e){let t=Ue();if(t)t.effects.push(e),$e(t);else{let n;(0,c.createEffect)(()=>{n&&n(),n=e()}),(0,c.onCleanup)(()=>{n&&n()})}}function ee(e){return(0,c.createMemo)(e)}function te(e){let t={current:e};return(0,c.onCleanup)(()=>{t.current=null}),t}function ne(e,t){let[n,r]=(0,c.createSignal)(t);return[n,s=>{r(e(n(),s))}]}function re(e,t,n,r){U(()=>{let o=e&&"current"in e?e.current:e;if(o)return o.addEventListener(t,n,r),()=>{o.removeEventListener(t,n,r)}})}function oe(e){return e}function ve(){return V}function Te(e){V&&e()}var Y,c,It,V,he,_=L(()=>{"use strict";Y=require("@fluixi/dom"),c=require("@fluixi/reactive/signal"),It={context:null,owner:null};V=typeof process<"u"&&!1,he=Symbol.for("fluixi-lifecycle")});function M(e,t){let n,r,o;function s(){return r||(r=e().then(i=>n=i.default)),r}t?.preload&&s();let a=(i=>{if(n){let d=n;return(0,E.untrack)(()=>d(i))}if(!o){let[d]=(0,E.createResource)(()=>s(),{transport:!1});if(o=d,d.error)throw d.error}return(0,E.createMemo)(()=>{let d=o();return d?(0,E.untrack)(()=>d(i)):void 0},void 0,{name:"lazy"})});return a.preload=()=>s().then(()=>{}),a.$lazy=!0,a.loader=e,a}var E,se=L(()=>{"use strict";E=require("@fluixi/reactive/signal")});function Kt(){Ge||(Ge=!0,!(typeof process<"u")&&console.warn("[fluixi] createProvider({ context, value, children }) reads `children` eagerly: the object literal materialises `children` BEFORE the context is stamped, so a routed <Outlet/> that has siblings inside the provider renders detached and its descendants see no context under SSR. Use the lazy form instead:\n createProvider(Context, value, props) // children stays a getter\n // or JSX: <Context.Provider value={…}>{props.children}</Context.Provider>"))}function ie(e,t,n){let r=!!e?.Provider,o=r?e:e.context,s=r?t:e.value,a=r?!1:e.debug??!1;r||Kt();let i=typeof s=="function"?s():s,d=r?n:e;return o.Provider({value:i,get children(){return d?.children},debug:a})}function et(e){let t=I(e);return[t,r=>ie(t,r.value,r)]}function be(e,t){if(e.length===0)return(0,Ze.readChildren)(()=>t);let[n,r]=e[0],o=e.slice(1);return ie(n,r,{get children(){return be(o,t)}})}function tt(e){return t=>{let n=N(e);return t.children(n)}}function nt(e,t){let n=N(e);return n===e.defaultValue?t():n}function I(e){let t=(0,ae.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,Qe.asProvider)(n),defaultValue:e}}function N(e){let t=(0,ae.useContext)(e);return t!==void 0?t:e.defaultValue}var Qe,ae,Ze,Ge,Se=L(()=>{"use strict";Qe=require("@fluixi/dom"),ae=require("@fluixi/reactive/signal"),Ze=require("@fluixi/reactive/signal");_();b("index");Ge=!1});function ct(){return it}function Pe(e){it=e}function ut(e,t){fe.set(e,t)}function dt(e){return fe.get(e)}function qt(){fe.clear()}function ft(){if(typeof window>"u")return!1;let e=document.getElementById("__FLUIXI_HYDRATION__");if(!e||e.getAttribute("type")!=="application/json")return!1;try{let t=e.textContent||"{}",n=JSON.parse(t);for(let[r,o]of Object.entries(n))fe.set(r,o);return!0}catch(t){return console.error("Failed to deserialize hydration data:",t),!1}}function Re(){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,s=o.nodeValue||"";(s.startsWith("#")||s.startsWith("/"))&&n.push(o)}n.forEach(o=>o.remove()),qt()}function lt(){return typeof window>"u"}var it,fe,Ae=L(()=>{"use strict";it=!1,fe=new Map;typeof window<"u"&&window.addEventListener("load",()=>{setTimeout(Re,100)})});function pt(e,t){return async(...n)=>{let r=t+":"+JSON.stringify(n);if(ct()||typeof window<"u"){let s=dt(r);if(s!==void 0)return s}if(W.has(r))return W.get(r);if(z.has(r))return z.get(r);let o=Promise.resolve(e(...n)).then(s=>(W.set(r,s),z.delete(r),lt()&&ut(r,s),s),s=>{throw z.delete(r),s});return z.set(r,o),o}}function yt(e){let t=typeof e=="string"?n=>n.startsWith(e):e;for(let n of W.keys())t(n)&&(W.delete(n),Jt.add(n));Bt(n=>n+1)}function mt(e,t){let[n]=(0,X.createResource)(t||(()=>!0),e);return n}function gt(e){return Ee.has(e)||Ee.set(e,(0,X.createSignal)(void 0)),Ee.get(e)}function ke(e,t){let n=t||e.name||"action",r=async o=>{let[,s]=gt(n),a=()=>s(void 0),i=()=>r(o);s({input:o,pending:!0,clear:a,retry:i});try{let d=await e(o);return s({input:o,result:d,pending:!1,clear:a,retry:i}),d}catch(d){throw s({input:o,error:d,pending:!1,clear:a,retry:i}),d}};return r.url=n,r.with=o=>ke((...s)=>e(o,...s),t),r}function ht(e){let[t]=gt(e.url);return t}function xt(e){return e}var X,W,z,mr,Bt,Jt,Ee,Yt,gr,vt=L(()=>{"use strict";X=require("@fluixi/reactive/signal");Ae();Se();W=new Map,z=new Map;[mr,Bt]=(0,X.createSignal)(0),Jt=new Set;Ee=new Map;Yt=I(),gr=Yt.Provider});var Rt={};He(Rt,{A:()=>Ne,Form:()=>cn,Link:()=>pe,Outlet:()=>Le,Redirect:()=>_e,Router:()=>Oe,action:()=>ke,cache:()=>pt,createAsync:()=>mt,createBrowserHistory:()=>v.createBrowserHistory,createMemoryHistory:()=>v.createMemoryHistory,lazy:()=>M,matchPath:()=>v.matchPath,matchRoutes:()=>v.matchRoutes,preloadRoutes:()=>un,revalidate:()=>yt,runWithOwner:()=>At.runWithOwner,select:()=>rn,useAction:()=>xt,useLevelParams:()=>tn,useLinkNavigation:()=>on,useLocation:()=>J,useMatch:()=>De,useNavigate:()=>le,useParam:()=>Me,useParamSelector:()=>nn,useParams:()=>B,useRouteData:()=>sn,useRouter:()=>H,useSearchParams:()=>Ie,useSubmission:()=>ht});function Gt(e,t,n){let r,o=e.route.data;if(typeof o=="function"){let R=!1;(0,u.onCleanup)(()=>{R=!0});let m=(0,u.getOwner)(),[j]=(0,u.createResource)(()=>o({params:n.params,location:n.location},m,()=>R));r=j}let s=()=>wt.Provider({value:r,get children(){return St.Provider({value:e.params,get children(){return bt.Provider({value:{depth:t,...n},get children(){return(0,l.createComponent)(e.component,{})}})}})}});if(!r)return s();let a=r,i=()=>a.loading,[d,x]=(0,u.createSignal)((0,u.untrack)(()=>!i()));return(0,u.createEffect)(()=>x(!i())),(0,u.createMemo)(()=>d()?s():null)}function Pt(e){let t=e.depth+1,[n,r]=(0,u.createSignal)((0,u.untrack)(()=>e.matched()[t]?.component));return(0,u.createEffect)(()=>{let o=e.matched()[t]?.component;r(()=>o)}),(0,u.createMemo)(()=>{if(!n())return e.notFound?e.notFound():null;let s=(0,u.untrack)(()=>e.matched())[t];return Gt(s,t,{matched:e.matched,params:e.params,location:e.location})})}function Qt(e){return e==null?Zt():typeof e=="function"?(0,l.createComponent)(e,{}):e}function Zt(){let e=(0,l.createNativeElement)("div");(0,l.setAttribute)(e,"class","fx-not-found"),(0,l.setAttribute)(e,"role","main"),(0,l.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 t=(0,l.createNativeElement)("h1");(0,l.setAttribute)(t,"style","margin:0;font-size:2.5rem;font-weight:700"),(0,l.insert)(t,"404");let n=(0,l.createNativeElement)("p");return(0,l.setAttribute)(n,"style","margin:0;opacity:.7"),(0,l.insert)(n,"This page could not be found."),e.appendChild(t),e.appendChild(n),e}function Oe(e){let t=e.history??(0,w.createBrowserHistory)(),n=(0,w.createRouter)({routes:e.routes,base:e.base,history:t}),[r,o]=(0,u.createSignal)(n.state()),s=n.subscribe(o);(0,u.onCleanup)(()=>{s(),n.destroy()});let a=(0,u.createMemo)(()=>(r().match?.matched??[]).filter(R=>R.component)),i={router:n,location:(0,u.createMemo)(()=>r().location),params:(0,u.createMemo)(()=>r().match?.params??{})},d={depth:-1,matched:a,params:i.params,location:i.location,notFound:()=>Qt(e.notFound)},x;return q.Provider({value:i,get children(){return x??=Pt(d)}})}function Le(){let e=(0,h.useContext)(bt);return e?Pt(e):null}function _e(e){let t=(0,h.useContext)(q);if(t&&typeof window<"u"){let n=!1;(0,u.onCleanup)(()=>n=!0),queueMicrotask(()=>{n||t.router.navigate(e.to,{replace:e.replace!==!1})})}return null}function H(){let e=(0,h.useContext)(q);if(e)return e;if(typeof window>"u")return en;throw new Error("[router-next] useRouter must be used within <Router>")}function B(){let e=H().params;return(0,u.createMemo)(()=>e(),{},{equals:(t,n)=>JSON.stringify(t)===JSON.stringify(n)})}function tn(){return(0,h.useContext)(St)??{}}function Me(e){let t=B();return(0,u.createMemo)(()=>t()[e])}function nn(e,t){let n=B();return(0,u.createMemo)(()=>e(n()),void 0,t?{equals:t}:void 0)}function De(e){let t=J();return(0,u.createMemo)(()=>(0,w.matchPath)(typeof e=="function"?e():e,t.pathname))}function Ie(){let e=J(),t=le();return[(0,u.createMemo)(()=>e.query),(o,s)=>{let a=new URLSearchParams(e.search);for(let[d,x]of Object.entries(o))x===null?a.delete(d):a.set(d,x);let i=a.toString();t(e.pathname+(i?`?${i}`:""),s)}]}function rn(e,t){let n=(r,o)=>(0,Ct.deepEqual)(r,o);return t!==void 0?(0,u.createMemo)(()=>(0,Tt.get)(e(),t),void 0,{equals:n}):(0,u.createMemo)(e,void 0,{equals:n})}function J(){let{location:e}=H();return new Proxy({},{get:(t,n)=>e()[n],has:(t,n)=>n in e(),ownKeys:()=>Reflect.ownKeys(e()),getOwnPropertyDescriptor:(t,n)=>Object.getOwnPropertyDescriptor(e(),n)})}function on(e={}){let t=(0,h.useContext)(q);return n=>{if(!t||n.defaultPrevented||n.button!==0||n.metaKey||n.ctrlKey||n.shiftKey||n.altKey)return;let o=n.target?.closest?.("a");if(!o||!o.getAttribute("href")||o.target&&o.target!=="_self"||o.hasAttribute("download")||/(^|\s)external(\s|$)/.test(o.getAttribute("rel")??""))return;let s=new URL(o.href);s.protocol!=="http:"&&s.protocol!=="https:"||s.origin===window.location.origin&&(s.hash&&s.pathname===window.location.pathname&&s.search===window.location.search||e.shouldNavigate&&!e.shouldNavigate(s,o)||(n.preventDefault(),t.router.navigate(s.pathname+s.search+s.hash,{replace:e.replace})))}}function le(){let{router:e}=H();return(t,n)=>e.navigate(t,n)}function sn(){return(0,h.useContext)(wt)??(()=>{})}function pe(e){let t=(0,h.useContext)(q),n=typeof document>"u",r=()=>t?.router.navigate(C(e.href)??"",{replace:C(e.replace)}),o=(0,l.createNativeElement)("a");(0,l.setAttribute)(o,"href",C(e.href)??""),e.slot&&(0,l.setAttribute)(o,"slot",C(e.slot));for(let a of Object.keys(e)){if(an.has(a))continue;let i=e[a];i!=null&&typeof i!="function"&&(0,l.setAttribute)(o,a,String(i))}if(typeof o.addEventListener=="function")o.addEventListener("click",a=>{a.metaKey||a.ctrlKey||a.shiftKey||a.altKey||(a.preventDefault(),r())});else{let a=C(e.className??e.class)??"";a&&(0,l.setAttribute)(o,"class",a)}typeof o.addEventListener=="function"&&(0,u.createEffect)(()=>{let a=C(e.href)??"";o.setAttribute("href",a);let i=C(e.className??e.class)??"",d=C(e.activeClass)??"",x=C(e.active)??t?.location().pathname===a;o.className=[i,x?d:""].filter(Boolean).join(" ")});let s=e.children;return s!=null&&(0,l.insert)(o,s),o}function cn(e){let t=e.action,n=e.className??e.class,r=t.url??"",o=(0,l.createNativeElement)("form");(0,l.setAttribute)(o,"method","post"),r&&(0,l.setAttribute)(o,"action",r),n&&(0,l.setAttribute)(o,"class",n);for(let a of Object.keys(e)){if(a==="action"||a==="children"||a==="class"||a==="className")continue;let i=e[a];i!=null&&typeof i!="function"&&(0,l.setAttribute)(o,a,String(i))}typeof o.addEventListener=="function"&&o.addEventListener("submit",a=>{a.preventDefault();let i={};new FormData(o).forEach((d,x)=>{i[x]=d}),Promise.resolve(t(i)).catch(()=>{})});let s=e.children;return s!=null&&(0,l.insert)(o,s),o}async function un(e,t){let n=(0,w.matchRoutes)(e,t);if(!n)return;let r=[];for(let o of n.matched){let s=o.component;s&&typeof s.preload=="function"&&r.push(s.preload())}await Promise.all(r)}var u,l,h,Tt,Ct,w,v,At,q,bt,St,wt,en,C,an,Ne,Fe=L(()=>{"use strict";u=require("@fluixi/reactive/signal"),l=require("@fluixi/dom"),h=require("@fluixi/reactive/signal"),Tt=require("@fluixi/utils/object"),Ct=require("@fluixi/utils/compare"),w=require("@fluixi/router"),v=require("@fluixi/router");vt();se();At=require("@fluixi/reactive/signal"),q=(0,h.createContext)(),bt=(0,h.createContext)(),St=(0,h.createContext)(),wt=(0,h.createContext)();en={router:{navigate:()=>{}},location:()=>({pathname:"",search:"",hash:"",query:{}}),params:()=>({})};C=e=>typeof e=="function"?e():e,an=new Set(["href","slot","class","className","active","activeClass","replace","children"]);Ne=pe});var ln={};He(ln,{$component:()=>G,A:()=>Ne,ClientOnly:()=>g.ClientOnly,DEV:()=>V,Dynamic:()=>g.Dynamic,ErrorBoundary:()=>g.ErrorBoundary,FRAMEWORK_NAME:()=>at,For:()=>g.For,Fragment:()=>T.Fragment,Index:()=>g.Index,Link:()=>pe,Match:()=>g.Match,NoSsr:()=>g.NoSsr,Outlet:()=>Le,Portal:()=>g.Portal,Redirect:()=>_e,Router:()=>Oe,Show:()=>g.Show,Store:()=>F.Store,Suspense:()=>$,Switch:()=>g.Switch,VERSION:()=>st,addClass:()=>p.addClass,batch:()=>f.batch,classMap:()=>de.classMap,cleanupDelegation:()=>Ye,composeProviders:()=>be,createBrowserHistory:()=>v.createBrowserHistory,createComponent:()=>K,createComputed:()=>f.createComputed,createConsumer:()=>tt,createContext:()=>I,createContextWithProvider:()=>et,createDebounce:()=>ce.createDebounce,createDeferred:()=>f.createDeferred,createEffect:()=>f.createEffect,createIsomorphicState:()=>ot,createMemo:()=>f.createMemo,createMemoryHistory:()=>v.createMemoryHistory,createProvider:()=>ie,createRenderEffect:()=>f.createRenderEffect,createResource:()=>f.createResource,createRoot:()=>f.createRoot,createSelector:()=>ce.createSelector,createSignal:()=>f.createSignal,createStore:()=>F.createStore,delegateEvents:()=>p.delegateEvents,devOnly:()=>Te,getFrameworkInfo:()=>Xt,getOwner:()=>f.getOwner,getSharedConfig:()=>xe,hydrate:()=>p.hydrate,initDelegation:()=>Je,insert:()=>p.insert,isDOMNode:()=>p.isDOMNode,isDev:()=>ve,isLitTemplateResult:()=>p.isLitTemplateResult,isRenderable:()=>Be,jsx:()=>T.jsx,jsxs:()=>T.jsxs,lazy:()=>M,mount:()=>Et,onCleanup:()=>f.onCleanup,onMount:()=>Q,onUnmount:()=>Z,portal:()=>qe,read:()=>ue.readSignal,reduce:()=>ue.reduceSignal,removeClass:()=>p.removeClass,render:()=>D,runWithOwner:()=>f.runWithOwner,setAttribute:()=>p.setAttribute,setOwner:()=>f.setOwner,setProperty:()=>p.setProperty,spread:()=>p.spread,startClient:()=>kt,styleMap:()=>de.styleMap,toggleClass:()=>p.toggleClass,untrack:()=>f.untrack,untrackStore:()=>F.untrackStore,useCallback:()=>oe,useContext:()=>N,useEffect:()=>U,useEventListener:()=>re,useLocation:()=>J,useMatch:()=>De,useMemo:()=>ee,useNavigate:()=>le,useParam:()=>Me,useParams:()=>B,useProvide:()=>nt,useReducer:()=>ne,useRef:()=>te,useRouter:()=>H,useSearchParams:()=>Ie});module.exports=Dt(ln);var f=require("@fluixi/reactive/signal"),ce=require("@fluixi/reactive/signal"),ue=require("@fluixi/reactive/operators"),F=require("@fluixi/reactive/store");var Xe=require("@fluixi/reactive/signal");var Ke=require("@fluixi/dom");var Ve="1.0.0-alpha.78";var A=require("@fluixi/dom");(0,Ke.registerCoreVersion)(Ve);var k=require("@fluixi/dom");_();_();var y=require("@fluixi/reactive/signal"),S=require("@fluixi/dom");function ze(e){return!!(e&&typeof e=="object"&&typeof e.then=="function"||e instanceof Promise)}var Nt=(0,y.createContext)();function $(e){return(0,S.createComponent)(Ft,e)}function Ft(e){let t=(0,y.createSuspenseBoundary)(),n=(0,y.useContext)(Nt),r=n?n.register(t.inFallback):void 0;function o(m){return m==null||typeof m=="boolean"?null:typeof m=="function"&&(0,S.isComponent)(m)&&!(0,y.isSignal)(m)?m():m}let s=(0,S.runWithoutHydration)(()=>o(e.fallback??null)),a=(0,y.provideSuspense)(t,()=>(0,y.readChildren)(()=>e.children)),i=(m,j)=>{if(!(j>8))if(Array.isArray(m))for(let Ot of m)i(Ot,j+1);else typeof m=="function"&&(0,y.isSignal)(m)&&i(m(),j+1)};(0,y.provideSuspense)(t,()=>{(0,y.createRenderEffect)(()=>i(a,0))});let[d,x]=(0,y.createSignal)(void 0),R=ze(a);return R&&(t.increment(),a.then(m=>{x(()=>m),t.decrement()},()=>t.decrement())),(0,y.createMemo)(()=>{let m=r?r.showFallback():t.inFallback();return process.env.FX_DEBUG&&console.log("[s] output; showFallback:",m),m?s:R?d():a})}(0,S.asSuspense)($);Object.defineProperty($,"__suspense",{value:!0,enumerable:!0});se();var We=require("@fluixi/reactive/signal"),Ht=require("@fluixi/dom/utils");se();var jt=require("@fluixi/reactive/signal");var Ce=typeof window>"u";function D(e,t,n={}){if(b("render"),(0,k.delegateEvents)(["click","input","change","submit"]),Ce)throw new Error("render() is for client-side only. Use renderToString() on server.");if(!t)throw new Error("Container element is required");let r;return(0,Xe.createRoot)(o=>{r=o;let s=typeof e=="function"?e():e;t.textContent="",(0,A.stampVersions)(t),(0,A.warnOnVersionSkew)(),(0,k.insert)(t,()=>s)}),()=>{r&&(r(),r=void 0)}}function Vt(e){return e&&typeof e=="object"&&(e._$litType$!==void 0||e._$litDirective$!==void 0)}function qe(e,t,n={}){let r=document.createElement("div");r.setAttribute("data-portal","true"),t.appendChild(r);let o=D(e,r,n);return()=>{o(),t.contains(r)&&t.removeChild(r)}}function Be(e){return!!(e==null||typeof e=="function"||(0,k.isDOMNode)(e)||Vt(e)||Array.isArray(e)||typeof e=="string"||typeof e=="number"||typeof e=="boolean")}function Je(){Ce||(0,k.delegateEvents)(["click","input","change","submit"])}function Ye(){}Se();var we=require("@fluixi/reactive/signal"),rt=require("@fluixi/dom"),Ut="__fluixi_iso_states__",$t="__iso:";function zt(){return globalThis[Ut]??=new Map}function Wt(e){if(typeof window>"u")return;let t=(0,rt.getServerData)();return t?t[$t+e]:void 0}function ot(e,t){let n=Wt(e),r=n!==void 0?n:typeof window<"u"&&t.client?t.client():t.fallback,[o,s]=(0,we.createSignal)(r);return zt().set(e,{server:t.server,set:s}),{value:o,set:s,key:e}}var de=require("@fluixi/dom");var g=require("@fluixi/dom");var p=require("@fluixi/dom");var T={};je(T,require("@fluixi/jsx/jsx-runtime"));var O=require("@fluixi/reactive/signal");_();var st="0.0.1",at="Fluixi";function Xt(){return{name:at,version:st,features:{ssr:!0,hydration:!0,jsx:!0,litHtml:!0,signals:!0,fineGrained:!0,lazy:!0,hooks:!0,devMode:!0}}}b("index");var ye=require("@fluixi/dom");Ae();_();var P=require("@fluixi/head"),fn=require("@fluixi/dom");b("client index");function Et(e,t){if(!t)throw new Error("Container element not found for mount()");(0,ye.render)(()=>e(),t)}async function kt(e,t={}){let n=typeof t.root=="string"?document.querySelector(t.root):t.root??document.querySelector("#app");if(!n)throw new Error(`[Fluixi] Mount container not found: ${t.root??"#app"}`);let r=!!document.getElementById("__FLUIXI_HYDRATION__")||!!t.routes&&n.firstElementChild!=null,o=t.hydrate??r,s=(0,P.createHead)();if((0,P.setActiveHead)(s),(0,P.stripHeadMarker)(n),o){if(t.routes&&t.routes.length){let{preloadRoutes:a}=await Promise.resolve().then(()=>(Fe(),Rt));await a(t.routes,window.location.pathname)}ft(),Pe(!0),(0,ye.hydrate)(()=>e(),n),dn(),setTimeout(()=>{Pe(!1),Re()},100)}else D(()=>e(),n);(0,P.mountHead)(s)}function dn(){if(typeof window>"u")return;let e=window;typeof e.__FX_REPLAY_STOP__=="function"&&e.__FX_REPLAY_STOP__();let t=e.__FX_REPLAY__;if(e.__FX_REPLAY__=void 0,e.__FX_REPLAY_STOP__=void 0,!(!Array.isArray(t)||t.length===0))for(let n of t){let r=n&&n.target;if(!r||r.isConnected===!1||typeof r.dispatchEvent!="function")continue;let o=n.type,s=o==="click"?new MouseEvent(o,{bubbles:!0,cancelable:!0}):new Event(o,{bubbles:!0,cancelable:!0});r.dispatchEvent(s)}}Fe();
1
+ "use strict";var pe=Object.defineProperty;var kt=Object.getOwnPropertyDescriptor;var Ot=Object.getOwnPropertyNames;var Lt=Object.prototype.hasOwnProperty;var F=(e,t)=>()=>(e&&(t=e(e=0)),t);var Ne=(e,t)=>{for(var n in t)pe(e,n,{get:t[n],enumerable:!0})},le=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Ot(t))!Lt.call(e,o)&&o!==n&&pe(e,o,{get:()=>t[o],enumerable:!(r=kt(t,o))||r.enumerable});return e},Fe=(e,t,n)=>(le(e,t,"default"),n&&le(n,t,"default"));var _t=e=>le(pe({},"__esModule",{value:!0}),e);function O(e,t){let n,r,o;function s(){return r||(r=e().then(i=>n=i.default)),r}t?.preload&&s();let a=(i=>{if(n){let d=n;return(0,A.untrack)(()=>d(i))}if(!o){let[d]=(0,A.createResource)(()=>s(),{transport:!1});if(o=d,d.error)throw d.error}return(0,A.createMemo)(()=>{let d=o();return d?(0,A.untrack)(()=>d(i)):void 0},void 0,{name:"lazy"})});return a.preload=()=>s().then(()=>{}),a.$lazy=!0,a.loader=e,a}var A,ne=F(()=>{"use strict";A=require("@fluixi/reactive/signal")});function jt(){Je||(Je=!0,!(typeof process<"u")&&console.warn("[fluixi] createProvider({ context, value, children }) reads `children` eagerly: the object literal materialises `children` BEFORE the context is stamped, so a routed <Outlet/> that has siblings inside the provider renders detached and its descendants see no context under SSR. Use the lazy form instead:\n createProvider(Context, value, props) // children stays a getter\n // or JSX: <Context.Provider value={…}>{props.children}</Context.Provider>"))}function oe(e,t,n){let r=!!e?.Provider,o=r?e:e.context,s=r?t:e.value,a=r?!1:e.debug??!1;r||jt();let i=typeof s=="function"?s():s,d=r?n:e;return o.Provider({value:i,get children(){return d?.children},debug:a})}function Qe(e){let t=_(e);return[t,r=>oe(t,r.value,r)]}function Te(e,t){if(e.length===0)return(0,Ge.readChildren)(()=>t);let[n,r]=e[0],o=e.slice(1);return oe(n,r,{get children(){return Te(o,t)}})}function Ze(e){return t=>{let n=M(e);return t.children(n)}}function et(e,t){let n=M(e);return n===e.defaultValue?t():n}function _(e){let t=(0,re.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,Ye.asProvider)(n),defaultValue:e}}function M(e){let t=(0,re.useContext)(e);return t!==void 0?t:e.defaultValue}var Ye,re,Ge,Je,Ce=F(()=>{"use strict";Ye=require("@fluixi/dom"),re=require("@fluixi/reactive/signal"),Ge=require("@fluixi/reactive/signal"),Je=!1});function at(){return st}function Se(e){st=e}function it(e,t){ce.set(e,t)}function ct(e){return ce.get(e)}function Wt(){ce.clear()}function ut(){if(typeof window>"u")return!1;let e=document.getElementById("__FLUIXI_HYDRATION__");if(!e||e.getAttribute("type")!=="application/json")return!1;try{let t=e.textContent||"{}",n=JSON.parse(t);for(let[r,o]of Object.entries(n))ce.set(r,o);return!0}catch(t){return console.error("Failed to deserialize hydration data:",t),!1}}function we(){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,s=o.nodeValue||"";(s.startsWith("#")||s.startsWith("/"))&&n.push(o)}n.forEach(o=>o.remove()),Wt()}function dt(){return typeof window>"u"}var st,ce,Re=F(()=>{"use strict";st=!1,ce=new Map;typeof window<"u"&&window.addEventListener("load",()=>{setTimeout(we,100)})});function ft(e,t){return async(...n)=>{let r=t+":"+JSON.stringify(n);if(at()||typeof window<"u"){let s=ct(r);if(s!==void 0)return s}if(K.has(r))return K.get(r);if(U.has(r))return U.get(r);let o=Promise.resolve(e(...n)).then(s=>(K.set(r,s),U.delete(r),dt()&&it(r,s),s),s=>{throw U.delete(r),s});return U.set(r,o),o}}function lt(e){let t=typeof e=="string"?n=>n.startsWith(e):e;for(let n of K.keys())t(n)&&(K.delete(n),qt.add(n));Xt(n=>n+1)}function pt(e,t){let[n]=(0,$.createResource)(t||(()=>!0),e);return n}function mt(e){return Pe.has(e)||Pe.set(e,(0,$.createSignal)(void 0)),Pe.get(e)}function Ae(e,t){let n=t||e.name||"action",r=async o=>{let[,s]=mt(n),a=()=>s(void 0),i=()=>r(o);s({input:o,pending:!0,clear:a,retry:i});try{let d=await e(o);return s({input:o,result:d,pending:!1,clear:a,retry:i}),d}catch(d){throw s({input:o,error:d,pending:!1,clear:a,retry:i}),d}};return r.url=n,r.with=o=>Ae((...s)=>e(o,...s),t),r}function yt(e){let[t]=mt(e.url);return t}function gt(e){return e}var $,K,U,pr,Xt,qt,Pe,Bt,mr,ht=F(()=>{"use strict";$=require("@fluixi/reactive/signal");Re();Ce();K=new Map,U=new Map;[pr,Xt]=(0,$.createSignal)(0),qt=new Set;Pe=new Map;Bt=_(),mr=Bt.Provider});var wt={};Ne(wt,{A:()=>De,Form:()=>sn,Link:()=>de,Outlet:()=>ke,Redirect:()=>Oe,Router:()=>Ee,action:()=>Ae,cache:()=>ft,createAsync:()=>pt,createBrowserHistory:()=>v.createBrowserHistory,createMemoryHistory:()=>v.createMemoryHistory,lazy:()=>O,matchPath:()=>v.matchPath,matchRoutes:()=>v.matchRoutes,preloadRoutes:()=>an,revalidate:()=>lt,runWithOwner:()=>Rt.runWithOwner,select:()=>tn,useAction:()=>gt,useLevelParams:()=>Zt,useLinkNavigation:()=>nn,useLocation:()=>X,useMatch:()=>_e,useNavigate:()=>ue,useParam:()=>Le,useParamSelector:()=>en,useParams:()=>W,useRouteData:()=>rn,useRouter:()=>I,useSearchParams:()=>Me,useSubmission:()=>yt});function Jt(e,t,n){let r,o=e.route.data;if(typeof o=="function"){let R=!1;(0,u.onCleanup)(()=>{R=!0});let y=(0,u.getOwner)(),[N]=(0,u.createResource)(()=>o({params:n.params,location:n.location},y,()=>R));r=N}let s=()=>bt.Provider({value:r,get children(){return Ct.Provider({value:e.params,get children(){return Tt.Provider({value:{depth:t,...n},get children(){return(0,l.createComponent)(e.component,{})}})}})}});if(!r)return s();let a=r,i=()=>a.loading,[d,x]=(0,u.createSignal)((0,u.untrack)(()=>!i()));return(0,u.createEffect)(()=>x(!i())),(0,u.createMemo)(()=>d()?s():null)}function St(e){let t=e.depth+1,[n,r]=(0,u.createSignal)((0,u.untrack)(()=>e.matched()[t]?.component));return(0,u.createEffect)(()=>{let o=e.matched()[t]?.component;r(()=>o)}),(0,u.createMemo)(()=>{if(!n())return e.notFound?e.notFound():null;let s=(0,u.untrack)(()=>e.matched())[t];return Jt(s,t,{matched:e.matched,params:e.params,location:e.location})})}function Yt(e){return e==null?Gt():typeof e=="function"?(0,l.createComponent)(e,{}):e}function Gt(){let e=(0,l.createNativeElement)("div");(0,l.setAttribute)(e,"class","fx-not-found"),(0,l.setAttribute)(e,"role","main"),(0,l.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 t=(0,l.createNativeElement)("h1");(0,l.setAttribute)(t,"style","margin:0;font-size:2.5rem;font-weight:700"),(0,l.insert)(t,"404");let n=(0,l.createNativeElement)("p");return(0,l.setAttribute)(n,"style","margin:0;opacity:.7"),(0,l.insert)(n,"This page could not be found."),e.appendChild(t),e.appendChild(n),e}function Ee(e){let t=e.history??(0,S.createBrowserHistory)(),n=(0,S.createRouter)({routes:e.routes,base:e.base,history:t}),[r,o]=(0,u.createSignal)(n.state()),s=n.subscribe(o);(0,u.onCleanup)(()=>{s(),n.destroy()});let a=(0,u.createMemo)(()=>(r().match?.matched??[]).filter(R=>R.component)),i={router:n,location:(0,u.createMemo)(()=>r().location),params:(0,u.createMemo)(()=>r().match?.params??{})},d={depth:-1,matched:a,params:i.params,location:i.location,notFound:()=>Yt(e.notFound)},x;return z.Provider({value:i,get children(){return x??=St(d)}})}function ke(){let e=(0,h.useContext)(Tt);return e?St(e):null}function Oe(e){let t=(0,h.useContext)(z);if(t&&typeof window<"u"){let n=!1;(0,u.onCleanup)(()=>n=!0),queueMicrotask(()=>{n||t.router.navigate(e.to,{replace:e.replace!==!1})})}return null}function I(){let e=(0,h.useContext)(z);if(e)return e;if(typeof window>"u")return Qt;throw new Error("[router] useRouter must be used within <Router>")}function W(){let e=I().params;return(0,u.createMemo)(()=>e(),{},{equals:(t,n)=>JSON.stringify(t)===JSON.stringify(n)})}function Zt(){return(0,h.useContext)(Ct)??{}}function Le(e){let t=W();return(0,u.createMemo)(()=>t()[e])}function en(e,t){let n=W();return(0,u.createMemo)(()=>e(n()),void 0,t?{equals:t}:void 0)}function _e(e){let t=X();return(0,u.createMemo)(()=>(0,S.matchPath)(typeof e=="function"?e():e,t.pathname))}function Me(){let e=X(),t=ue();return[(0,u.createMemo)(()=>e.query),(o,s)=>{let a=new URLSearchParams(e.search);for(let[d,x]of Object.entries(o))x===null?a.delete(d):a.set(d,x);let i=a.toString();t(e.pathname+(i?`?${i}`:""),s)}]}function tn(e,t){let n=(r,o)=>(0,vt.deepEqual)(r,o);return t!==void 0?(0,u.createMemo)(()=>(0,xt.get)(e(),t),void 0,{equals:n}):(0,u.createMemo)(e,void 0,{equals:n})}function X(){let{location:e}=I();return new Proxy({},{get:(t,n)=>e()[n],has:(t,n)=>n in e(),ownKeys:()=>Reflect.ownKeys(e()),getOwnPropertyDescriptor:(t,n)=>Object.getOwnPropertyDescriptor(e(),n)})}function nn(e={}){let t=(0,h.useContext)(z);return n=>{if(!t||n.defaultPrevented||n.button!==0||n.metaKey||n.ctrlKey||n.shiftKey||n.altKey)return;let o=n.target?.closest?.("a");if(!o||!o.getAttribute("href")||o.target&&o.target!=="_self"||o.hasAttribute("download")||/(^|\s)external(\s|$)/.test(o.getAttribute("rel")??""))return;let s=new URL(o.href);s.protocol!=="http:"&&s.protocol!=="https:"||s.origin===window.location.origin&&(s.hash&&s.pathname===window.location.pathname&&s.search===window.location.search||e.shouldNavigate&&!e.shouldNavigate(s,o)||(n.preventDefault(),t.router.navigate(s.pathname+s.search+s.hash,{replace:e.replace})))}}function ue(){let{router:e}=I();return(t,n)=>e.navigate(t,n)}function rn(){return(0,h.useContext)(bt)??(()=>{})}function de(e){let t=(0,h.useContext)(z),n=typeof document>"u",r=()=>t?.router.navigate(C(e.href)??"",{replace:C(e.replace)}),o=(0,l.createNativeElement)("a");(0,l.setAttribute)(o,"href",C(e.href)??""),e.slot&&(0,l.setAttribute)(o,"slot",C(e.slot));for(let a of Object.keys(e)){if(on.has(a))continue;let i=e[a];i!=null&&typeof i!="function"&&(0,l.setAttribute)(o,a,String(i))}if(typeof o.addEventListener=="function")o.addEventListener("click",a=>{a.metaKey||a.ctrlKey||a.shiftKey||a.altKey||(a.preventDefault(),r())});else{let a=C(e.className??e.class)??"";a&&(0,l.setAttribute)(o,"class",a)}typeof o.addEventListener=="function"&&(0,u.createEffect)(()=>{let a=C(e.href)??"";o.setAttribute("href",a);let i=C(e.className??e.class)??"",d=C(e.activeClass)??"",x=C(e.active)??t?.location().pathname===a;o.className=[i,x?d:""].filter(Boolean).join(" ")});let s=e.children;return s!=null&&(0,l.insert)(o,s),o}function sn(e){let t=e.action,n=e.className??e.class,r=t.url??"",o=(0,l.createNativeElement)("form");(0,l.setAttribute)(o,"method","post"),r&&(0,l.setAttribute)(o,"action",r),n&&(0,l.setAttribute)(o,"class",n);for(let a of Object.keys(e)){if(a==="action"||a==="children"||a==="class"||a==="className")continue;let i=e[a];i!=null&&typeof i!="function"&&(0,l.setAttribute)(o,a,String(i))}typeof o.addEventListener=="function"&&o.addEventListener("submit",a=>{a.preventDefault();let i={};new FormData(o).forEach((d,x)=>{i[x]=d}),Promise.resolve(t(i)).catch(()=>{})});let s=e.children;return s!=null&&(0,l.insert)(o,s),o}async function an(e,t){let n=(0,S.matchRoutes)(e,t);if(!n)return;let r=[];for(let o of n.matched){let s=o.component;s&&typeof s.preload=="function"&&r.push(s.preload())}await Promise.all(r)}var u,l,h,xt,vt,S,v,Rt,z,Tt,Ct,bt,Qt,C,on,De,Ie=F(()=>{"use strict";u=require("@fluixi/reactive/signal"),l=require("@fluixi/dom"),h=require("@fluixi/reactive/signal"),xt=require("@fluixi/utils/object"),vt=require("@fluixi/utils/compare"),S=require("@fluixi/router"),v=require("@fluixi/router");ht();ne();Rt=require("@fluixi/reactive/signal"),z=(0,h.createContext)(),Tt=(0,h.createContext)(),Ct=(0,h.createContext)(),bt=(0,h.createContext)();Qt={router:{navigate:()=>{}},location:()=>({pathname:"",search:"",hash:"",query:{}}),params:()=>({})};C=e=>typeof e=="function"?e():e,on=new Set(["href","slot","class","className","active","activeClass","replace","children"]);De=de});var dn={};Ne(dn,{$component:()=>ge,A:()=>De,ClientOnly:()=>g.ClientOnly,DEV:()=>H,Dynamic:()=>g.Dynamic,ErrorBoundary:()=>g.ErrorBoundary,FRAMEWORK_NAME:()=>ot,For:()=>g.For,Fragment:()=>T.Fragment,Index:()=>g.Index,Link:()=>de,Match:()=>g.Match,NoSsr:()=>g.NoSsr,Outlet:()=>ke,Portal:()=>g.Portal,Redirect:()=>Oe,Router:()=>Ee,Show:()=>g.Show,Store:()=>D.Store,Suspense:()=>V,Switch:()=>g.Switch,VERSION:()=>rt,addClass:()=>p.addClass,batch:()=>f.batch,classMap:()=>ie.classMap,cleanupDelegation:()=>Be,composeProviders:()=>Te,createBrowserHistory:()=>v.createBrowserHistory,createComponent:()=>B,createComputed:()=>f.createComputed,createConsumer:()=>Ze,createContext:()=>_,createContextWithProvider:()=>Qe,createDebounce:()=>se.createDebounce,createDeferred:()=>f.createDeferred,createEffect:()=>f.createEffect,createIsomorphicState:()=>nt,createMemo:()=>f.createMemo,createMemoryHistory:()=>v.createMemoryHistory,createProvider:()=>oe,createRenderEffect:()=>f.createRenderEffect,createResource:()=>f.createResource,createRoot:()=>f.createRoot,createSelector:()=>se.createSelector,createSignal:()=>f.createSignal,createStore:()=>D.createStore,delegateEvents:()=>p.delegateEvents,devOnly:()=>xe,getFrameworkInfo:()=>zt,getOwner:()=>f.getOwner,getSharedConfig:()=>ye,hydrate:()=>p.hydrate,initDelegation:()=>qe,insert:()=>p.insert,isDOMNode:()=>p.isDOMNode,isDev:()=>he,isLitTemplateResult:()=>p.isLitTemplateResult,isRenderable:()=>Xe,jsx:()=>T.jsx,jsxs:()=>T.jsxs,lazy:()=>O,mount:()=>Pt,onCleanup:()=>f.onCleanup,onMount:()=>J,onUnmount:()=>Y,portal:()=>We,read:()=>ae.readSignal,reduce:()=>ae.reduceSignal,removeClass:()=>p.removeClass,render:()=>L,runWithOwner:()=>f.runWithOwner,setAttribute:()=>p.setAttribute,setOwner:()=>f.setOwner,setProperty:()=>p.setProperty,spread:()=>p.spread,startClient:()=>At,styleMap:()=>ie.styleMap,toggleClass:()=>p.toggleClass,untrack:()=>f.untrack,untrackStore:()=>D.untrackStore,useCallback:()=>te,useContext:()=>M,useEffect:()=>j,useEventListener:()=>ee,useLocation:()=>X,useMatch:()=>_e,useMemo:()=>G,useNavigate:()=>ue,useParam:()=>Le,useParams:()=>W,useProvide:()=>et,useReducer:()=>Z,useRef:()=>Q,useRouter:()=>I,useSearchParams:()=>Me});module.exports=_t(dn);var f=require("@fluixi/reactive/signal"),se=require("@fluixi/reactive/signal"),ae=require("@fluixi/reactive/operators"),D=require("@fluixi/reactive/store");var ze=require("@fluixi/reactive/signal");var je=require("@fluixi/dom");var He="1.0.0-alpha.81";var P=require("@fluixi/dom");(0,je.registerCoreVersion)(He);var E=require("@fluixi/dom");var q=require("@fluixi/dom"),c=require("@fluixi/reactive/signal"),Mt={context:null,owner:null};function ye(){return Mt}var H=typeof process<"u"&&!1,me=Symbol.for("fluixi-lifecycle");function Ve(){let e=(0,c.getOwner)();if(!e)return null;if(!e[me]){let t={mounts:[],effects:[],scheduled:!1};e[me]=t}return e[me]}function Ue(e){if(e.scheduled)return;e.scheduled=!0;let t=(0,c.getOwner)();queueMicrotask(()=>{if((0,c.isOwnerDisposed)(t)){e.mounts=[],e.effects=[];return}(0,c.runWithOwner)(t,()=>{for(let n of e.mounts)try{let r=n();typeof r=="function"&&(0,c.onCleanup)(r)}catch(r){console.error("Error in onMount callback:",r)}for(let n of e.effects){let r;(0,c.createEffect)(()=>{r&&r(),r=n()}),(0,c.onCleanup)(()=>{r&&r()})}e.mounts=[],e.effects=[]})})}function B(e,t){return(0,q.createComponent)(e,t)}function ge(e,t){let n=typeof e=="function"?(0,c.untrack)(()=>e(t)):e;if(n!=null&&(typeof n=="function"||typeof n=="object")&&!(0,c.isSignal)(n)){try{n.$name=e.name}catch{}return(0,q.asComponent)(n)}return n}function J(e,t=!0){let n=Ve();if(n){if(!t){n.scheduled||e();return}n.mounts.push(e),Ue(n)}else{if(!t){e();return}(0,c.createEffect)(()=>{let r=(0,c.untrack)(e);typeof r=="function"&&(0,c.onCleanup)(r)})}}function Y(e){(0,c.onCleanup)(e)}function j(e){let t=Ve();if(t)t.effects.push(e),Ue(t);else{let n;(0,c.createEffect)(()=>{n&&n(),n=e()}),(0,c.onCleanup)(()=>{n&&n()})}}function G(e){return(0,c.createMemo)(e)}function Q(e){let t={current:e};return(0,c.onCleanup)(()=>{t.current=null}),t}function Z(e,t){let[n,r]=(0,c.createSignal)(t);return[n,s=>{r(e(n(),s))}]}function ee(e,t,n,r){j(()=>{let o=e&&"current"in e?e.current:e;if(o)return o.addEventListener(t,n,r),()=>{o.removeEventListener(t,n,r)}})}function te(e){return e}function he(){return H}function xe(e){H&&e()}var m=require("@fluixi/reactive/signal"),b=require("@fluixi/dom");function Ke(e){return!!(e&&typeof e=="object"&&typeof e.then=="function"||e instanceof Promise)}var Dt=(0,m.createContext)();function V(e){return(0,b.createComponent)(It,e)}function It(e){let t=(0,m.createSuspenseBoundary)(),n=(0,m.useContext)(Dt),r=n?n.register(t.inFallback):void 0;function o(y){return y==null||typeof y=="boolean"?null:typeof y=="function"&&(0,b.isComponent)(y)&&!(0,m.isSignal)(y)?y():y}let s=(0,b.runWithoutHydration)(()=>o(e.fallback??null)),a=(0,m.provideSuspense)(t,()=>(0,m.readChildren)(()=>e.children)),i=(y,N)=>{if(!(N>8))if(Array.isArray(y))for(let Et of y)i(Et,N+1);else typeof y=="function"&&(0,m.isSignal)(y)&&i(y(),N+1)};(0,m.provideSuspense)(t,()=>{(0,m.createRenderEffect)(()=>i(a,0))});let[d,x]=(0,m.createSignal)(void 0),R=Ke(a);return R&&(t.increment(),a.then(y=>{x(()=>y),t.decrement()},()=>t.decrement())),(0,m.createMemo)(()=>{let y=r?r.showFallback():t.inFallback();return process.env.FX_DEBUG&&console.log("[s] output; showFallback:",y),y?s:R?d():a})}(0,b.asSuspense)(V);Object.defineProperty(V,"__suspense",{value:!0,enumerable:!0});ne();var $e=require("@fluixi/reactive/signal"),Nt=require("@fluixi/dom/utils");ne();var Ft=require("@fluixi/reactive/signal");var ve=typeof window>"u";function L(e,t,n={}){if((0,E.delegateEvents)(["click","input","change","submit"]),ve)throw new Error("render() is for client-side only. Use renderToString() on server.");if(!t)throw new Error("Container element is required");let r;return(0,ze.createRoot)(o=>{r=o;let s=typeof e=="function"?e():e;t.textContent="",(0,P.stampVersions)(t),(0,P.warnOnVersionSkew)(),(0,E.insert)(t,()=>s)}),()=>{r&&(r(),r=void 0)}}function Ht(e){return e&&typeof e=="object"&&(e._$litType$!==void 0||e._$litDirective$!==void 0)}function We(e,t,n={}){let r=document.createElement("div");r.setAttribute("data-portal","true"),t.appendChild(r);let o=L(e,r,n);return()=>{o(),t.contains(r)&&t.removeChild(r)}}function Xe(e){return!!(e==null||typeof e=="function"||(0,E.isDOMNode)(e)||Ht(e)||Array.isArray(e)||typeof e=="string"||typeof e=="number"||typeof e=="boolean")}function qe(){ve||(0,E.delegateEvents)(["click","input","change","submit"])}function Be(){}Ce();var be=require("@fluixi/reactive/signal"),tt=require("@fluixi/dom"),Vt="__fluixi_iso_states__",Ut="__iso:";function Kt(){return globalThis[Vt]??=new Map}function $t(e){if(typeof window>"u")return;let t=(0,tt.getServerData)();return t?t[Ut+e]:void 0}function nt(e,t){let n=$t(e),r=n!==void 0?n:typeof window<"u"&&t.client?t.client():t.fallback,[o,s]=(0,be.createSignal)(r);return Kt().set(e,{server:t.server,set:s}),{value:o,set:s,key:e}}var ie=require("@fluixi/dom");var g=require("@fluixi/dom");var p=require("@fluixi/dom");var T={};Fe(T,require("@fluixi/jsx/jsx-runtime"));var k=require("@fluixi/reactive/signal");var rt="0.0.1",ot="Fluixi";function zt(){return{name:ot,version:rt,features:{ssr:!0,hydration:!0,jsx:!0,litHtml:!0,signals:!0,fineGrained:!0,lazy:!0,hooks:!0,devMode:!0}}}var fe=require("@fluixi/dom");Re();var w=require("@fluixi/head"),un=require("@fluixi/dom");function Pt(e,t){if(!t)throw new Error("Container element not found for mount()");(0,fe.render)(()=>e(),t)}async function At(e,t={}){let n=typeof t.root=="string"?document.querySelector(t.root):t.root??document.querySelector("#app");if(!n)throw new Error(`[Fluixi] Mount container not found: ${t.root??"#app"}`);let r=!!document.getElementById("__FLUIXI_HYDRATION__")||!!t.routes&&n.firstElementChild!=null,o=t.hydrate??r,s=(0,w.createHead)();if((0,w.setActiveHead)(s),(0,w.stripHeadMarker)(n),o){if(t.routes&&t.routes.length){let{preloadRoutes:a}=await Promise.resolve().then(()=>(Ie(),wt));await a(t.routes,window.location.pathname)}ut(),Se(!0),(0,fe.hydrate)(()=>e(),n),cn(),setTimeout(()=>{Se(!1),we()},100)}else L(()=>e(),n);(0,w.mountHead)(s)}function cn(){if(typeof window>"u")return;let e=window;typeof e.__FX_REPLAY_STOP__=="function"&&e.__FX_REPLAY_STOP__();let t=e.__FX_REPLAY__;if(e.__FX_REPLAY__=void 0,e.__FX_REPLAY_STOP__=void 0,!(!Array.isArray(t)||t.length===0))for(let n of t){let r=n&&n.target;if(!r||r.isConnected===!1||typeof r.dispatchEvent!="function")continue;let o=n.type,s=o==="click"?new MouseEvent(o,{bubbles:!0,cancelable:!0}):new Event(o,{bubbles:!0,cancelable:!0});r.dispatchEvent(s)}}Ie();
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * CDN entry: the Fluixi framework runtime as a browser global.
3
3
  *
4
- * <script src="https://.../@fluixi/core/core.global.js"></script>
4
+ * <script src="https://.../fluixi/core.global.js"></script>
5
5
  * const [count, setCount] = Fluixi.createSignal(0);
6
6
  * Fluixi.startClient(App); // or Fluixi.mount(App, root)
7
7
  *
@@ -12,5 +12,5 @@
12
12
  */
13
13
  export * from '../lib/index.js';
14
14
  export { startClient, mount } from '../lib/client/index.js';
15
- export { Router, Outlet, Redirect, Link, A, useRouter, useNavigate, useLocation, useParams, useParam, useMatch, useSearchParams, createMemoryHistory, createBrowserHistory, } from '../lib/router-next/index.js';
15
+ export { Router, Outlet, Redirect, Link, A, useRouter, useNavigate, useLocation, useParams, useParam, useMatch, useSearchParams, createMemoryHistory, createBrowserHistory, } from '../lib/router/index.js';
16
16
  //# sourceMappingURL=core.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/cdn/core.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EACL,MAAM,EACN,MAAM,EACN,QAAQ,EACR,IAAI,EACJ,CAAC,EACD,SAAS,EACT,WAAW,EACX,WAAW,EACX,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,eAAe,EACf,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,6BAA6B,CAAC"}
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/cdn/core.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EACL,MAAM,EACN,MAAM,EACN,QAAQ,EACR,IAAI,EACJ,CAAC,EACD,SAAS,EACT,WAAW,EACX,WAAW,EACX,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,eAAe,EACf,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,wBAAwB,CAAC"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * CDN entry: the Fluixi framework runtime as a browser global.
3
3
  *
4
- * <script src="https://.../@fluixi/core/core.global.js"></script>
4
+ * <script src="https://.../fluixi/core.global.js"></script>
5
5
  * const [count, setCount] = Fluixi.createSignal(0);
6
6
  * Fluixi.startClient(App); // or Fluixi.mount(App, root)
7
7
  *
@@ -12,4 +12,4 @@
12
12
  */
13
13
  export * from '../lib/index.js';
14
14
  export { startClient, mount } from '../lib/client/index.js';
15
- export { Router, Outlet, Redirect, Link, A, useRouter, useNavigate, useLocation, useParams, useParam, useMatch, useSearchParams, createMemoryHistory, createBrowserHistory, } from '../lib/router-next/index.js';
15
+ export { Router, Outlet, Redirect, Link, A, useRouter, useNavigate, useLocation, useParams, useParam, useMatch, useSearchParams, createMemoryHistory, createBrowserHistory, } from '../lib/router/index.js';
@@ -1 +1 @@
1
- import{$ as de,A as D,H as Q,I as Z,J as ee,K as te,L as re,N as ne,P as oe,Q as se,S as ie,U as ae,W as ce,X as ue,_ as fe,a as P,b as _,c as R,d as u,e as m,f as L,g as y,h as S,i as h,j as x,k as b,l as v,m as g,n as w,o as M,p as O,q as k,r as B,s as J,t as Y,u as W,v as G,w as A,x as I,y as C,z as F}from"./chunk-3IZZ7QBW.mjs";import{createEffect as br,createMemo as vr,createSignal as gr,createResource as wr,createRoot as kr,createComputed as Cr,createRenderEffect as Tr,onCleanup as Er,getOwner as Pr,runWithOwner as _r,batch as Rr,untrack as Lr,createDeferred as Mr,setOwner as Or}from"@fluixi/reactive/signal";import{createDebounce as Ir,createSelector as Fr}from"@fluixi/reactive/signal";import{readSignal as jr,reduceSignal as Hr}from"@fluixi/reactive/operators";import{createStore as Xr,untrackStore as $r,Store as Kr}from"@fluixi/reactive/store";import{createRoot as Ee}from"@fluixi/reactive/signal";import{registerCoreVersion as le}from"@fluixi/dom";var j="1.0.0-alpha.78";import{stampVersions as H,warnOnVersionSkew as N,versions as nt}from"@fluixi/dom";le(j);import{isDOMNode as Pe,delegateEvents as V,insert as _e}from"@fluixi/dom";import{createSignal as pe,createMemo as me,createEffect as st,createRenderEffect as ye,isSignal as X,readChildren as Se,useContext as he,createContext as xe,createSuspenseBoundary as be,provideSuspense as $}from"@fluixi/reactive/signal";import{asSuspense as ve,isComponent as ge,createComponent as we,runWithoutHydration as ke}from"@fluixi/dom";function K(e){return!!(e&&typeof e=="object"&&typeof e.then=="function"||e instanceof Promise)}var Ce=xe();function d(e){return we(Te,e)}function Te(e){let t=be(),n=he(Ce),r=n?n.register(t.inFallback):void 0;function s(o){return o==null||typeof o=="boolean"?null:typeof o=="function"&&ge(o)&&!X(o)?o():o}let i=ke(()=>s(e.fallback??null)),c=$(t,()=>Se(()=>e.children)),l=(o,p)=>{if(!(p>8))if(Array.isArray(o))for(let q of o)l(q,p+1);else typeof o=="function"&&X(o)&&l(o(),p+1)};$(t,()=>{ye(()=>l(c,0))});let[z,U]=pe(void 0),E=K(c);return E&&(t.increment(),c.then(o=>{U(()=>o),t.decrement()},()=>t.decrement())),me(()=>{let o=r?r.showFallback():t.inFallback();return process.env.FX_DEBUG&&console.log("[s] output; showFallback:",o),o?i:E?z():c})}ve(d);Object.defineProperty(d,"__suspense",{value:!0,enumerable:!0});import{createMemo as ut,createSignal as ft}from"@fluixi/reactive/signal";import{observeIntersection as lt}from"@fluixi/dom/utils";import{createResource as St}from"@fluixi/reactive/signal";var T=typeof window>"u";function f(e,t,n={}){if(u("render"),V(["click","input","change","submit"]),T)throw new Error("render() is for client-side only. Use renderToString() on server.");if(!t)throw new Error("Container element is required");let r;return Ee(s=>{r=s;let i=typeof e=="function"?e():e;t.textContent="",H(t),N(),_e(t,()=>i)}),()=>{r&&(r(),r=void 0)}}function Re(e){return e&&typeof e=="object"&&(e._$litType$!==void 0||e._$litDirective$!==void 0)}function Le(e,t,n={}){let r=document.createElement("div");r.setAttribute("data-portal","true"),t.appendChild(r);let s=f(e,r,n);return()=>{s(),t.contains(r)&&t.removeChild(r)}}function Me(e){return!!(e==null||typeof e=="function"||Pe(e)||Re(e)||Array.isArray(e)||typeof e=="string"||typeof e=="number"||typeof e=="boolean")}function Oe(){T||V(["click","input","change","submit"])}function Ae(){}import{createSignal as Ie,createMemo as Vt}from"@fluixi/reactive/signal";import{getServerData as Fe}from"@fluixi/dom";var De="__fluixi_iso_states__",je="__iso:";function He(){return globalThis[De]??=new Map}function Ne(e){if(typeof window>"u")return;let t=Fe();return t?t[je+e]:void 0}function Xe(e,t){let n=Ne(e),r=n!==void 0?n:typeof window<"u"&&t.client?t.client():t.fallback,[s,i]=Ie(r);return He().set(e,{server:t.server,set:i}),{value:s,set:i,key:e}}import{classMap as Br,styleMap as Jr}from"@fluixi/dom";import{Show as Jt,For as Yt,Index as Wt,Switch as Gt,Match as Qt,Dynamic as Zt,ErrorBoundary as er,Portal as tr,ClientOnly as rr,NoSsr as nr}from"@fluixi/dom";import{insert as Gr,spread as Qr,setAttribute as Zr,setProperty as en,addClass as tn,removeClass as rn,toggleClass as nn,delegateEvents as on,isDOMNode as sn,isLitTemplateResult as an,hydrate as cn}from"@fluixi/dom";var a={};P(a,or);import*as or from"@fluixi/jsx/jsx-runtime";import{createSignal as ar,createEffect as cr,createMemo as ur,createRoot as fr,batch as dr,untrack as lr,onCleanup as pr}from"@fluixi/reactive/signal";var $e="0.0.1",Ke="Fluixi";function sr(){return{name:Ke,version:$e,features:{ssr:!0,hydration:!0,jsx:!0,litHtml:!0,signals:!0,fineGrained:!0,lazy:!0,hooks:!0,devMode:!0}}}u("index");import{render as Ve,hydrate as ze}from"@fluixi/dom";import{createHead as Ue,setActiveHead as qe,mountHead as Be,stripHeadMarker as Je}from"@fluixi/head";import{hydrate as xn}from"@fluixi/dom";u("client index");function Ye(e,t){if(!t)throw new Error("Container element not found for mount()");Ve(()=>e(),t)}async function We(e,t={}){let n=typeof t.root=="string"?document.querySelector(t.root):t.root??document.querySelector("#app");if(!n)throw new Error(`[Fluixi] Mount container not found: ${t.root??"#app"}`);let r=!!document.getElementById("__FLUIXI_HYDRATION__")||!!t.routes&&n.firstElementChild!=null,s=t.hydrate??r,i=Ue();if(qe(i),Je(n),s){if(t.routes&&t.routes.length){let{preloadRoutes:c}=await import("./router-next-W2YUEGIJ.mjs");await c(t.routes,window.location.pathname)}F(),C(!0),ze(()=>e(),n),Ge(),setTimeout(()=>{C(!1),D()},100)}else f(()=>e(),n);Be(i)}function Ge(){if(typeof window>"u")return;let e=window;typeof e.__FX_REPLAY_STOP__=="function"&&e.__FX_REPLAY_STOP__();let t=e.__FX_REPLAY__;if(e.__FX_REPLAY__=void 0,e.__FX_REPLAY_STOP__=void 0,!(!Array.isArray(t)||t.length===0))for(let n of t){let r=n&&n.target;if(!r||r.isConnected===!1||typeof r.dispatchEvent!="function")continue;let s=n.type,i=s==="click"?new MouseEvent(s,{bubbles:!0,cancelable:!0}):new Event(s,{bubbles:!0,cancelable:!0});r.dispatchEvent(i)}}var export_Fragment=a.Fragment;var export_jsx=a.jsx;var export_jsxs=a.jsxs;export{L as $component,ue as A,rr as ClientOnly,R as DEV,Zt as Dynamic,er as ErrorBoundary,Ke as FRAMEWORK_NAME,Yt as For,export_Fragment as Fragment,Wt as Index,ce as Link,Qt as Match,nr as NoSsr,Z as Outlet,tr as Portal,ee as Redirect,Q as Router,Jt as Show,Kr as Store,d as Suspense,Gt as Switch,$e as VERSION,tn as addClass,Rr as batch,Br as classMap,Ae as cleanupDelegation,Y as composeProviders,de as createBrowserHistory,m as createComponent,Cr as createComputed,W as createConsumer,A as createContext,J as createContextWithProvider,Ir as createDebounce,Mr as createDeferred,br as createEffect,Xe as createIsomorphicState,vr as createMemo,fe as createMemoryHistory,B as createProvider,Tr as createRenderEffect,wr as createResource,kr as createRoot,Fr as createSelector,gr as createSignal,Xr as createStore,on as delegateEvents,O as devOnly,sr as getFrameworkInfo,Pr as getOwner,_ as getSharedConfig,cn as hydrate,Oe as initDelegation,Gr as insert,sn as isDOMNode,M as isDev,an as isLitTemplateResult,Me as isRenderable,export_jsx as jsx,export_jsxs as jsxs,k as lazy,Ye as mount,Er as onCleanup,y as onMount,S as onUnmount,Le as portal,jr as read,Hr as reduce,rn as removeClass,f as render,_r as runWithOwner,Zr as setAttribute,Or as setOwner,en as setProperty,Qr as spread,We as startClient,Jr as styleMap,nn as toggleClass,Lr as untrack,$r as untrackStore,w as useCallback,I as useContext,h as useEffect,g as useEventListener,ie as useLocation,oe as useMatch,x as useMemo,ae as useNavigate,ne as useParam,re as useParams,G as useProvide,v as useReducer,b as useRef,te as useRouter,se as useSearchParams};
1
+ import{A as de,B as le,D as me,F as ye,H as xe,I as ve,L as he,M as Se,a as L,b as v,c as te,d as ne,e as re,f as oe,g as se,h as M,i as A,j as h,k as I,l as F,s as ie,t as ae,u as ce,v as ue,w as fe,y as pe}from"./chunk-RN7C7HNS.mjs";import{createEffect as $n,createMemo as Vn,createSignal as Xn,createResource as zn,createRoot as Wn,createComputed as qn,createRenderEffect as Yn,onCleanup as Bn,getOwner as Jn,runWithOwner as Gn,batch as Qn,untrack as Zn,createDeferred as er,setOwner as tr}from"@fluixi/reactive/signal";import{createDebounce as rr,createSelector as or}from"@fluixi/reactive/signal";import{readSignal as ir,reduceSignal as ar}from"@fluixi/reactive/operators";import{createStore as ur,untrackStore as fr,Store as pr}from"@fluixi/reactive/store";import{createRoot as Ke}from"@fluixi/reactive/signal";import{registerCoreVersion as be}from"@fluixi/dom";var D="1.0.0-alpha.81";import{stampVersions as j,warnOnVersionSkew as H,versions as ht}from"@fluixi/dom";be(D);import{isDOMNode as $e,delegateEvents as G,insert as Ve}from"@fluixi/dom";import{createComponent as Ce,asComponent as ge}from"@fluixi/dom";import{untrack as N,onCleanup as a,getOwner as b,createEffect as p,createMemo as U,createSignal as we,isSignal as Te,batch as Ee,runWithOwner as K,isOwnerDisposed as ke}from"@fluixi/reactive/signal";var Re={context:null,owner:null};function $(){return Re}var d=typeof process<"u"&&!1,S=Symbol.for("fluixi-lifecycle");function V(){let e=b();if(!e)return null;if(!e[S]){let t={mounts:[],effects:[],scheduled:!1};e[S]=t}return e[S]}function X(e){if(e.scheduled)return;e.scheduled=!0;let t=b();queueMicrotask(()=>{if(ke(t)){e.mounts=[],e.effects=[];return}K(t,()=>{for(let n of e.mounts)try{let r=n();typeof r=="function"&&a(r)}catch(r){console.error("Error in onMount callback:",r)}for(let n of e.effects){let r;p(()=>{r&&r(),r=n()}),a(()=>{r&&r()})}e.mounts=[],e.effects=[]})})}function C(e,t){return Ce(e,t)}function z(e,t){let n=typeof e=="function"?N(()=>e(t)):e;if(n!=null&&(typeof n=="function"||typeof n=="object")&&!Te(n)){try{n.$name=e.name}catch{}return ge(n)}return n}function g(e,t=!0){let n=V();if(n){if(!t){n.scheduled||e();return}n.mounts.push(e),X(n)}else{if(!t){e();return}p(()=>{let r=N(e);typeof r=="function"&&a(r)})}}function w(e){a(e)}function l(e){let t=V();if(t)t.effects.push(e),X(t);else{let n;p(()=>{n&&n(),n=e()}),a(()=>{n&&n()})}}function T(e){return U(e)}function E(e){let t={current:e};return a(()=>{t.current=null}),t}function k(e,t){let[n,r]=we(t);return[n,i=>{r(e(n(),i))}]}function R(e,t,n,r){l(()=>{let o=e&&"current"in e?e.current:e;if(o)return o.addEventListener(t,n,r),()=>{o.removeEventListener(t,n,r)}})}function P(e){return e}function W(){return d}function q(e){d&&e()}import{createSignal as Pe,createMemo as _e,createEffect as At,createRenderEffect as Oe,isSignal as Y,readChildren as Le,useContext as Me,createContext as Ae,createSuspenseBoundary as Ie,provideSuspense as B}from"@fluixi/reactive/signal";import{asSuspense as Fe,isComponent as De,createComponent as je,runWithoutHydration as He}from"@fluixi/dom";function J(e){return!!(e&&typeof e=="object"&&typeof e.then=="function"||e instanceof Promise)}var Ne=Ae();function m(e){return je(Ue,e)}function Ue(e){let t=Ie(),n=Me(Ne),r=n?n.register(t.inFallback):void 0;function o(s){return s==null||typeof s=="boolean"?null:typeof s=="function"&&De(s)&&!Y(s)?s():s}let i=He(()=>o(e.fallback??null)),u=B(t,()=>Le(()=>e.children)),y=(s,x)=>{if(!(x>8))if(Array.isArray(s))for(let ee of s)y(ee,x+1);else typeof s=="function"&&Y(s)&&y(s(),x+1)};B(t,()=>{Oe(()=>y(u,0))});let[Q,Z]=Pe(void 0),O=J(u);return O&&(t.increment(),u.then(s=>{Z(()=>s),t.decrement()},()=>t.decrement())),_e(()=>{let s=r?r.showFallback():t.inFallback();return process.env.FX_DEBUG&&console.log("[s] output; showFallback:",s),s?i:O?Q():u})}Fe(m);Object.defineProperty(m,"__suspense",{value:!0,enumerable:!0});import{createMemo as jt,createSignal as Ht}from"@fluixi/reactive/signal";import{observeIntersection as Ut}from"@fluixi/dom/utils";import{createResource as Xt}from"@fluixi/reactive/signal";var _=typeof window>"u";function f(e,t,n={}){if(G(["click","input","change","submit"]),_)throw new Error("render() is for client-side only. Use renderToString() on server.");if(!t)throw new Error("Container element is required");let r;return Ke(o=>{r=o;let i=typeof e=="function"?e():e;t.textContent="",j(t),H(),Ve(t,()=>i)}),()=>{r&&(r(),r=void 0)}}function Xe(e){return e&&typeof e=="object"&&(e._$litType$!==void 0||e._$litDirective$!==void 0)}function ze(e,t,n={}){let r=document.createElement("div");r.setAttribute("data-portal","true"),t.appendChild(r);let o=f(e,r,n);return()=>{o(),t.contains(r)&&t.removeChild(r)}}function We(e){return!!(e==null||typeof e=="function"||$e(e)||Xe(e)||Array.isArray(e)||typeof e=="string"||typeof e=="number"||typeof e=="boolean")}function qe(){_||G(["click","input","change","submit"])}function Ye(){}import{createSignal as Be,createMemo as pn}from"@fluixi/reactive/signal";import{getServerData as Je}from"@fluixi/dom";var Ge="__fluixi_iso_states__",Qe="__iso:";function Ze(){return globalThis[Ge]??=new Map}function et(e){if(typeof window>"u")return;let t=Je();return t?t[Qe+e]:void 0}function tt(e,t){let n=et(e),r=n!==void 0?n:typeof window<"u"&&t.client?t.client():t.fallback,[o,i]=Be(r);return Ze().set(e,{server:t.server,set:i}),{value:o,set:i,key:e}}import{classMap as xr,styleMap as vr}from"@fluixi/dom";import{Show as xn,For as vn,Index as hn,Switch as Sn,Match as bn,Dynamic as Cn,ErrorBoundary as gn,Portal as wn,ClientOnly as Tn,NoSsr as En}from"@fluixi/dom";import{insert as br,spread as Cr,setAttribute as gr,setProperty as wr,addClass as Tr,removeClass as Er,toggleClass as kr,delegateEvents as Rr,isDOMNode as Pr,isLitTemplateResult as _r,hydrate as Or}from"@fluixi/dom";var c={};L(c,kn);import*as kn from"@fluixi/jsx/jsx-runtime";import{createSignal as _n,createEffect as On,createMemo as Ln,createRoot as Mn,batch as An,untrack as In,onCleanup as Fn}from"@fluixi/reactive/signal";var nt="0.0.1",rt="Fluixi";function Rn(){return{name:rt,version:nt,features:{ssr:!0,hydration:!0,jsx:!0,litHtml:!0,signals:!0,fineGrained:!0,lazy:!0,hooks:!0,devMode:!0}}}import{render as ot,hydrate as st}from"@fluixi/dom";import{createHead as it,setActiveHead as at,mountHead as ct,stripHeadMarker as ut}from"@fluixi/head";import{hydrate as Nr}from"@fluixi/dom";function ft(e,t){if(!t)throw new Error("Container element not found for mount()");ot(()=>e(),t)}async function pt(e,t={}){let n=typeof t.root=="string"?document.querySelector(t.root):t.root??document.querySelector("#app");if(!n)throw new Error(`[Fluixi] Mount container not found: ${t.root??"#app"}`);let r=!!document.getElementById("__FLUIXI_HYDRATION__")||!!t.routes&&n.firstElementChild!=null,o=t.hydrate??r,i=it();if(at(i),ut(n),o){if(t.routes&&t.routes.length){let{preloadRoutes:u}=await import("./router-QB3W43UQ.mjs");await u(t.routes,window.location.pathname)}I(),h(!0),st(()=>e(),n),dt(),setTimeout(()=>{h(!1),F()},100)}else f(()=>e(),n);ct(i)}function dt(){if(typeof window>"u")return;let e=window;typeof e.__FX_REPLAY_STOP__=="function"&&e.__FX_REPLAY_STOP__();let t=e.__FX_REPLAY__;if(e.__FX_REPLAY__=void 0,e.__FX_REPLAY_STOP__=void 0,!(!Array.isArray(t)||t.length===0))for(let n of t){let r=n&&n.target;if(!r||r.isConnected===!1||typeof r.dispatchEvent!="function")continue;let o=n.type,i=o==="click"?new MouseEvent(o,{bubbles:!0,cancelable:!0}):new Event(o,{bubbles:!0,cancelable:!0});r.dispatchEvent(i)}}var export_Fragment=c.Fragment;var export_jsx=c.jsx;var export_jsxs=c.jsxs;export{z as $component,ve as A,Tn as ClientOnly,d as DEV,Cn as Dynamic,gn as ErrorBoundary,rt as FRAMEWORK_NAME,vn as For,export_Fragment as Fragment,hn as Index,xe as Link,bn as Match,En as NoSsr,ae as Outlet,wn as Portal,ce as Redirect,ie as Router,xn as Show,pr as Store,m as Suspense,Sn as Switch,nt as VERSION,Tr as addClass,Qn as batch,xr as classMap,Ye as cleanupDelegation,re as composeProviders,Se as createBrowserHistory,C as createComponent,qn as createComputed,oe as createConsumer,M as createContext,ne as createContextWithProvider,rr as createDebounce,er as createDeferred,$n as createEffect,tt as createIsomorphicState,Vn as createMemo,he as createMemoryHistory,te as createProvider,Yn as createRenderEffect,zn as createResource,Wn as createRoot,or as createSelector,Xn as createSignal,ur as createStore,Rr as delegateEvents,q as devOnly,Rn as getFrameworkInfo,Jn as getOwner,$ as getSharedConfig,Or as hydrate,qe as initDelegation,br as insert,Pr as isDOMNode,W as isDev,_r as isLitTemplateResult,We as isRenderable,export_jsx as jsx,export_jsxs as jsxs,v as lazy,ft as mount,Bn as onCleanup,g as onMount,w as onUnmount,ze as portal,ir as read,ar as reduce,Er as removeClass,f as render,Gn as runWithOwner,gr as setAttribute,tr as setOwner,wr as setProperty,Cr as spread,pt as startClient,vr as styleMap,kr as toggleClass,Zn as untrack,fr as untrackStore,P as useCallback,A as useContext,l as useEffect,R as useEventListener,me as useLocation,de as useMatch,T as useMemo,ye as useNavigate,pe as useParam,fe as useParams,se as useProvide,k as useReducer,E as useRef,ue as useRouter,le as useSearchParams};
@@ -0,0 +1 @@
1
+ import{A as p,B as q,C as r,D as s,E as t,F as u,G as v,H as w,I as x,J as y,K as z,L as A,M as B,N as C,O as D,P as E,b as a,m as b,n as c,o as d,p as e,q as f,r as g,s as h,t as i,u as j,v as k,w as l,x as m,y as n,z as o}from"./chunk-RN7C7HNS.mjs";export{x as A,y as Form,w as Link,i as Outlet,j as Redirect,h as Router,e as action,b as cache,d as createAsync,B as createBrowserHistory,A as createMemoryHistory,a as lazy,D as matchPath,C as matchRoutes,z as preloadRoutes,c as revalidate,E as runWithOwner,r as select,g as useAction,m as useLevelParams,t as useLinkNavigation,s as useLocation,p as useMatch,u as useNavigate,n as useParam,o as useParamSelector,l as useParams,v as useRouteData,k as useRouter,q as useSearchParams,f as useSubmission};
@@ -1 +1 @@
1
- "use strict";var ne=Object.defineProperty;var tt=Object.getOwnPropertyDescriptor;var nt=Object.getOwnPropertyNames;var rt=Object.prototype.hasOwnProperty;var ot=(e,t)=>{for(var n in t)ne(e,n,{get:t[n],enumerable:!0})},it=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of nt(t))!rt.call(e,o)&&o!==n&&ne(e,o,{get:()=>t[o],enumerable:!(r=tt(t,o))||r.enumerable});return e};var st=e=>it(ne({},"__esModule",{value:!0}),e);var It={};ot(It,{$component:()=>W,Await:()=>me,ClientOnly:()=>h.ClientOnly,Dynamic:()=>h.Dynamic,ErrorBoundary:()=>h.ErrorBoundary,FRAMEWORK_NAME:()=>Qe,For:()=>h.For,Index:()=>h.Index,Island:()=>T.Island,Link:()=>Z,Match:()=>h.Match,NoSsr:()=>h.NoSsr,Portal:()=>h.Portal,Router:()=>G,Show:()=>h.Show,Store:()=>A.Store,Suspense:()=>K,SuspenseList:()=>fe,Switch:()=>h.Switch,VERSION:()=>$,addClass:()=>c.addClass,appendChildren:()=>c.appendChildren,batch:()=>a.batch,classMap:()=>T.classMap,cleanupDelegation:()=>Ve,clientOnly:()=>Je,closest:()=>c.closest,composeProviders:()=>he,createComponent:()=>I,createComputed:()=>a.createComputed,createConsumer:()=>$e,createContext:()=>L,createContextWithProvider:()=>Ue,createDebounce:()=>S.createDebounce,createDebouncedResource:()=>S.createDebouncedResource,createDebouncedSignal:()=>S.createDebouncedSignal,createDeferred:()=>a.createDeferred,createEffect:()=>a.createEffect,createIsomorphicState:()=>xe,createIsomorphicStore:()=>Be,createMemo:()=>a.createMemo,createMemoryStorage:()=>Ce,createProvider:()=>X,createRenderEffect:()=>a.createRenderEffect,createResource:()=>a.createResource,createRoot:()=>a.createRoot,createSelector:()=>S.createSelector,createSignal:()=>a.createSignal,createStore:()=>A.createStore,createTheme:()=>Xe,default:()=>Ze,deferred:()=>pe,delegate:()=>c.delegate,domCreateElement:()=>c.createElement,effect:()=>a.effect,env:()=>U,getAttribute:()=>c.getAttribute,getOffset:()=>c.getOffset,getOwner:()=>a.getOwner,getStyle:()=>c.getStyle,hasClass:()=>c.hasClass,html:()=>te.html,hydrateIslands:()=>T.hydrateIslands,initDelegation:()=>_e,isClient:()=>Te,isJSXElement:()=>le,isLitResult:()=>de,isNode:()=>ue,isRenderable:()=>Fe,isServer:()=>ve,isVisible:()=>c.isVisible,lazy:()=>N,memo:()=>a.memo,mergeProps:()=>T.mergeProps,observeIntersection:()=>c.observeIntersection,observeResize:()=>c.observeResize,onCleanup:()=>a.onCleanup,onMount:()=>V,onUnmount:()=>j,portal:()=>Ne,query:()=>c.query,queryAll:()=>c.queryAll,read:()=>_.readSignal,reduce:()=>_.reduceSignal,removeAttribute:()=>c.removeAttribute,removeChildren:()=>c.removeChildren,removeClass:()=>c.removeClass,render:()=>ge,resource:()=>a.resource,runWithOwner:()=>a.runWithOwner,scrollIntoView:()=>c.scrollIntoView,setAttribute:()=>c.setAttribute,setOwner:()=>a.setOwner,setStyles:()=>c.setStyles,signal:()=>a.signal,splitProps:()=>T.splitProps,storage:()=>H,styleMap:()=>T.styleMap,svg:()=>te.svg,toggleClass:()=>c.toggleClass,untrack:()=>a.untrack,untrackStore:()=>A.untrackStore,unwrap:()=>A.unwrap,useCallback:()=>ce,useContext:()=>M,useEffect:()=>q,useEventListener:()=>ae,useLocation:()=>Ge,useMemo:()=>oe,useNavigate:()=>Q,useParams:()=>Ye,useProvide:()=>ze,useReducer:()=>se,useRef:()=>ie,useRouter:()=>D,waitForElement:()=>c.waitForElement});module.exports=st(It);var $="1.0.0-alpha.78";var z=require("@fluixi/dom"),f=require("@fluixi/reactive/signal");var re=Symbol.for("fluixi-lifecycle");function Re(){let e=(0,f.getOwner)();if(!e)return null;if(!e[re]){let t={mounts:[],effects:[],scheduled:!1};e[re]=t}return e[re]}function Ae(e){if(e.scheduled)return;e.scheduled=!0;let t=(0,f.getOwner)();queueMicrotask(()=>{if((0,f.isOwnerDisposed)(t)){e.mounts=[],e.effects=[];return}(0,f.runWithOwner)(t,()=>{for(let n of e.mounts)try{let r=n();typeof r=="function"&&(0,f.onCleanup)(r)}catch(r){console.error("Error in onMount callback:",r)}for(let n of e.effects){let r;(0,f.createEffect)(()=>{r&&r(),r=n()}),(0,f.onCleanup)(()=>{r&&r()})}e.mounts=[],e.effects=[]})})}function P(e){(0,z.registerCreateComponent)(I)}function I(e,t){return W(e,t)}function W(e,t){let n=typeof e=="function"?(0,f.untrack)(()=>e(t)):e;if(n!=null&&(typeof n=="function"||typeof n=="object")&&!(0,f.isSignal)(n)){try{n.$name=e.name}catch{}return(0,z.asComponent)(n)}return n}function V(e,t=!0){let n=Re();if(n){if(!t){n.scheduled||e();return}n.mounts.push(e),Ae(n)}else{if(!t){e();return}(0,f.createEffect)(()=>{let r=(0,f.untrack)(e);typeof r=="function"&&(0,f.onCleanup)(r)})}}function j(e){(0,f.onCleanup)(e)}function q(e){let t=Re();if(t)t.effects.push(e),Ae(t);else{let n;(0,f.createEffect)(()=>{n&&n(),n=e()}),(0,f.onCleanup)(()=>{n&&n()})}}function oe(e){return(0,f.createMemo)(e)}function ie(e){let t={current:e};return(0,f.onCleanup)(()=>{t.current=null}),t}function se(e,t){let[n,r]=(0,f.createSignal)(t);return[n,s=>{r(e(n(),s))}]}function ae(e,t,n,r){q(()=>{let o=e&&"current"in e?e.current:e;if(o)return o.addEventListener(t,n,r),()=>{o.removeEventListener(t,n,r)}})}function ce(e){return e}var a=require("@fluixi/reactive/signal"),S=require("@fluixi/reactive/signal"),_=require("@fluixi/reactive/operators");var Ie=require("@fluixi/reactive/signal");var ke=require("@fluixi/dom");var k=require("@fluixi/dom");(0,ke.registerCoreVersion)($);var E=require("@fluixi/dom");var m=require("@fluixi/reactive/signal"),C=require("@fluixi/dom");function ue(e){return typeof window>"u"?!1:typeof Node=="function"&&e instanceof Node?!0:!!(e&&typeof e=="object"&&typeof e.nodeType=="number")}function de(e){return!e||typeof e!="object"?!1:!!(typeof e._$litType$<"u"||typeof e._$litDirective$<"u"||Array.isArray(e.strings)&&Array.isArray(e.values))}function Oe(e){return!!(e&&typeof e=="object"&&typeof e.then=="function"||e instanceof Promise)}function le(e){return!!(e&&typeof e=="object"&&"type"in e&&"props"in e)}var Ee=(0,m.createContext)();function K(e){return(0,C.createComponent)(at,e)}function at(e){let t=(0,m.createSuspenseBoundary)(),n=(0,m.useContext)(Ee),r=n?n.register(t.inFallback):void 0;function o(d){return d==null||typeof d=="boolean"?null:typeof d=="function"&&(0,C.isComponent)(d)&&!(0,m.isSignal)(d)?d():d}let s=(0,C.runWithoutHydration)(()=>o(e.fallback??null)),i=(0,m.provideSuspense)(t,()=>(0,m.readChildren)(()=>e.children)),u=(d,w)=>{if(!(w>8))if(Array.isArray(d))for(let Pe of d)u(Pe,w+1);else typeof d=="function"&&(0,m.isSignal)(d)&&u(d(),w+1)};(0,m.provideSuspense)(t,()=>{(0,m.createRenderEffect)(()=>u(i,0))});let[l,g]=(0,m.createSignal)(void 0),v=Oe(i);return v&&(t.increment(),i.then(d=>{g(()=>d),t.decrement()},()=>t.decrement())),(0,m.createMemo)(()=>{let d=r?r.showFallback():t.inFallback();return process.env.FX_DEBUG&&console.log("[s] output; showFallback:",d),d?s:v?l():i})}function fe(e){return(0,C.createComponent)(ct,e)}function ct(e){let{revealOrder:t="together",tail:n}=e,r=[];function o(){if(t==="together"){let i=r.every(u=>!u.inFallback());r.forEach(u=>{u.setShowContent(i),u.setShowFallback(!i)})}else{let i=t==="backwards"?[...r].reverse():r,u=!1;for(let l of i)u||l.inFallback()?(u=!0,l.setShowContent(!1),l.setShowFallback(n!=="hidden")):(l.setShowContent(!0),l.setShowFallback(!1))}}let s={register:i=>{let[u,l]=(0,m.createSignal)(!0),[g,v]=(0,m.createSignal)(!1);return r.push({inFallback:i,setShowContent:l,setShowFallback:v}),(0,m.createEffect)(()=>{i(),o()}),{showContent:u,showFallback:g}}};return Ee.Provider({value:s,children:e.children})}(0,C.asSuspense)(K);Object.defineProperty(K,"__suspense",{value:!0,enumerable:!0});var O=require("@fluixi/reactive/signal");function N(e,t){let n,r,o;function s(){return r||(r=e().then(u=>n=u.default)),r}t?.preload&&s();let i=(u=>{if(n){let l=n;return(0,O.untrack)(()=>l(u))}if(!o){let[l]=(0,O.createResource)(()=>s(),{transport:!1});if(o=l,l.error)throw l.error}return(0,O.createMemo)(()=>{let l=o();return l?(0,O.untrack)(()=>l(u)):void 0},void 0,{name:"lazy"})});return i.preload=()=>s().then(()=>{}),i.$lazy=!0,i.loader=e,i}var B=require("@fluixi/reactive/signal"),Me=require("@fluixi/dom/utils");var Le=typeof window>"u";function pe(e,t){let n=t.export??"default",r=N(()=>e().then(s=>{let i=s[n];if(typeof i!="function")throw new Error(`deferred(): module has no '${n}' export (got ${typeof i}).`);return{default:i}}),{fallback:t.fallback});function o(s){if(t.strategy.kind==="never")return Le?r(s):null;if(Le||t.strategy.kind==="eager")return r(s);let[i,u]=(0,B.createSignal)(!1),l=()=>{r.preload().then(()=>u(!0))},g=t.strategy.kind==="visible"?ut():void 0;return dt(t.strategy,l,g),(0,B.createMemo)(()=>i()?r(s):g??t.fallback??null,void 0,{name:"deferred"})}return o.preload=r.preload,o}function ut(){let e=document.createElement("span");return e.setAttribute("data-fx-load","visible"),e.style.display="block",e}function dt(e,t,n){let r=!1,o=()=>{r||(r=!0,t())};switch(e.kind){case"idle":{let s=globalThis.requestIdleCallback;s?s(o):setTimeout(o,1);return}case"visible":{if(!n||typeof IntersectionObserver>"u"){o();return}let s=(0,Me.observeIntersection)(n,i=>{i&&(s(),o())},{rootMargin:e.rootMargin??"0px"});return}case"interaction":{let s=()=>{for(let i of e.events)document.removeEventListener(i,s,!0);o()};for(let i of e.events)document.addEventListener(i,s,{capture:!0,passive:!0});return}case"media":{if(typeof matchMedia>"u"){o();return}let s=matchMedia(e.query);if(s.matches){o();return}let i=u=>{u.matches&&(s.removeEventListener("change",i),o())};s.addEventListener("change",i);return}default:o()}}var De=require("@fluixi/reactive/signal");function me(e){let t=()=>{let r=e.value;return typeof r=="function"?r():r},[n]=(0,De.createResource)(t);return()=>{if(n.loading)return e.fallback;let r=e.children;return typeof r=="function"?r(n()):r}}var ye=typeof window>"u";function ge(e,t,n={}){if(P("render"),(0,E.delegateEvents)(["click","input","change","submit"]),ye)throw new Error("render() is for client-side only. Use renderToString() on server.");if(!t)throw new Error("Container element is required");let r;return(0,Ie.createRoot)(o=>{r=o;let s=typeof e=="function"?e():e;t.textContent="",(0,k.stampVersions)(t),(0,k.warnOnVersionSkew)(),(0,E.insert)(t,()=>s)}),()=>{r&&(r(),r=void 0)}}function lt(e){return e&&typeof e=="object"&&(e._$litType$!==void 0||e._$litDirective$!==void 0)}function Ne(e,t,n={}){let r=document.createElement("div");r.setAttribute("data-portal","true"),t.appendChild(r);let o=ge(e,r,n);return()=>{o(),t.contains(r)&&t.removeChild(r)}}function Fe(e){return!!(e==null||typeof e=="function"||(0,E.isDOMNode)(e)||lt(e)||Array.isArray(e)||typeof e=="string"||typeof e=="number"||typeof e=="boolean")}function _e(){ye||(0,E.delegateEvents)(["click","input","change","submit"])}function Ve(){}var Ke=require("@fluixi/dom"),J=require("@fluixi/reactive/signal"),He=require("@fluixi/reactive/signal");P("index");var je=!1;function ft(){je||(je=!0,!(typeof process<"u")&&console.warn("[fluixi] createProvider({ context, value, children }) reads `children` eagerly: the object literal materialises `children` BEFORE the context is stamped, so a routed <Outlet/> that has siblings inside the provider renders detached and its descendants see no context under SSR. Use the lazy form instead:\n createProvider(Context, value, props) // children stays a getter\n // or JSX: <Context.Provider value={…}>{props.children}</Context.Provider>"))}function X(e,t,n){let r=!!e?.Provider,o=r?e:e.context,s=r?t:e.value,i=r?!1:e.debug??!1;r||ft();let u=typeof s=="function"?s():s,l=r?n:e;return o.Provider({value:u,get children(){return l?.children},debug:i})}function Ue(e){let t=L(e);return[t,r=>X(t,r.value,r)]}function he(e,t){if(e.length===0)return(0,He.readChildren)(()=>t);let[n,r]=e[0],o=e.slice(1);return X(n,r,{get children(){return he(o,t)}})}function $e(e){return t=>{let n=M(e);return t.children(n)}}function ze(e,t){let n=M(e);return n===e.defaultValue?t():n}function L(e){let t=(0,J.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,Ke.asProvider)(n),defaultValue:e}}function M(e){let t=(0,J.useContext)(e);return t!==void 0?t:e.defaultValue}var Y=require("@fluixi/reactive/signal"),We=require("@fluixi/dom"),pt="__fluixi_iso_states__",mt="__iso:";function yt(){return globalThis[pt]??=new Map}function qe(e){if(typeof window>"u")return;let t=(0,We.getServerData)();return t?t[mt+e]:void 0}function xe(e,t){let n=qe(e),r=n!==void 0?n:typeof window<"u"&&t.client?t.client():t.fallback,[o,s]=(0,Y.createSignal)(r);return yt().set(e,{server:t.server,set:s}),{value:o,set:s,key:e}}function Be(e,t){let n=qe(e)!==void 0,r=xe(e,{server:t.server,fallback:t.fallback}),o=()=>r.value()??t.fallback,s=d=>{if(!(!t.persist||typeof localStorage>"u"))try{localStorage.setItem(t.persist,JSON.stringify(d))}catch{}},i=d=>{r.set(d),s(d)},u=(d,w)=>{i({...o(),[d]:w})},l={};for(let d of Object.keys(t.fallback))l[d]=(0,Y.createMemo)(()=>o()[d]);let g=null;return{value:o,fields:l,set:i,setField:u,ensureInit:()=>n||!t.client?Promise.resolve():(g||(g=Promise.resolve(t.client()).then(d=>{i(d)}).catch(d=>{throw g=null,d})),g),key:e}}var ve=typeof document>"u",Te=!ve;function Ce(){let e=new Map;return{getItem:t=>e.has(t)?e.get(t):null,setItem:(t,n)=>{e.set(t,String(n))},removeItem:t=>{e.delete(t)},clear:()=>e.clear(),key:t=>Array.from(e.keys())[t]??null,get length(){return e.size}}}var H=typeof localStorage<"u"?localStorage:Ce(),U={get window(){return typeof window<"u"?window:void 0},get document(){return typeof document<"u"?document:void 0}};function Je(e,t){return Te?e():t}var be=require("@fluixi/reactive/signal");function gt(e){return e?e===!0?{dark:"dark",light:"light"}:e:null}function Xe(e){let t=e.storageKey??"theme",n=e.attribute??"data-theme",r=gt(e.system),o=()=>{let x=H.getItem(t);return x&&e.themes.includes(x)?x:r&&U.window?.matchMedia?.("(prefers-color-scheme: dark)")?.matches?r.dark:r?r.light:e.default},[s,i]=(0,be.createSignal)(o()),[u,l]=(0,be.createSignal)(!1),g=x=>{U.document?.documentElement.setAttribute(n,x);try{H.setItem(t,x)}catch{}},v=x=>{if(!e.themes.includes(x))return;let et=s();i(()=>x),g(x),e.onChange?.(x,et),e.load&&(l(!0),e.onLoading?.(x),Promise.resolve(e.load(x)).finally(()=>{l(!1),e.onLoaded?.(x)}))};return{value:s,isLoading:u,set:v,toggle:()=>{let x=e.themes.indexOf(s());v(e.themes[(x+1)%e.themes.length])},init:()=>g(s()),headScript:()=>`<script>(function(){try{var c=${JSON.stringify({k:t,a:n,d:e.default,sys:r})},t=localStorage.getItem(c.k);if(!t&&c.sys)t=matchMedia('(prefers-color-scheme: dark)').matches?c.sys.dark:c.sys.light;if(!t)t=c.d;document.documentElement.setAttribute(c.a,t);}catch(e){}})();<\/script>`}}var p=require("@fluixi/reactive/signal"),y=require("@fluixi/dom"),R=require("@fluixi/reactive/signal"),Ct=require("@fluixi/utils/object"),bt=require("@fluixi/utils/compare"),F=require("@fluixi/router"),ee=require("@fluixi/router");var Se=require("@fluixi/reactive/signal");var ht=new Map;function xt(){ht.clear()}function vt(){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,s=o.nodeValue||"";(s.startsWith("#")||s.startsWith("/"))&&n.push(o)}n.forEach(o=>o.remove()),xt()}typeof window<"u"&&window.addEventListener("load",()=>{setTimeout(vt,100)});var[Mn,Dn]=(0,Se.createSignal)(0);var Tt=L(),In=Tt.Provider;var Mt=require("@fluixi/reactive/signal"),we=(0,R.createContext)(),St=(0,R.createContext)(),wt=(0,R.createContext)(),Pt=(0,R.createContext)();function Rt(e,t,n){let r,o=e.route.data;if(typeof o=="function"){let v=!1;(0,p.onCleanup)(()=>{v=!0});let d=(0,p.getOwner)(),[w]=(0,p.createResource)(()=>o({params:n.params,location:n.location},d,()=>v));r=w}let s=()=>Pt.Provider({value:r,get children(){return wt.Provider({value:e.params,get children(){return St.Provider({value:{depth:t,...n},get children(){return(0,y.createComponent)(e.component,{})}})}})}});if(!r)return s();let i=r,u=()=>i.loading,[l,g]=(0,p.createSignal)((0,p.untrack)(()=>!u()));return(0,p.createEffect)(()=>g(!u())),(0,p.createMemo)(()=>l()?s():null)}function At(e){let t=e.depth+1,[n,r]=(0,p.createSignal)((0,p.untrack)(()=>e.matched()[t]?.component));return(0,p.createEffect)(()=>{let o=e.matched()[t]?.component;r(()=>o)}),(0,p.createMemo)(()=>{if(!n())return e.notFound?e.notFound():null;let s=(0,p.untrack)(()=>e.matched())[t];return Rt(s,t,{matched:e.matched,params:e.params,location:e.location})})}function kt(e){return e==null?Ot():typeof e=="function"?(0,y.createComponent)(e,{}):e}function Ot(){let e=(0,y.createNativeElement)("div");(0,y.setAttribute)(e,"class","fx-not-found"),(0,y.setAttribute)(e,"role","main"),(0,y.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 t=(0,y.createNativeElement)("h1");(0,y.setAttribute)(t,"style","margin:0;font-size:2.5rem;font-weight:700"),(0,y.insert)(t,"404");let n=(0,y.createNativeElement)("p");return(0,y.setAttribute)(n,"style","margin:0;opacity:.7"),(0,y.insert)(n,"This page could not be found."),e.appendChild(t),e.appendChild(n),e}function G(e){let t=e.history??(0,F.createBrowserHistory)(),n=(0,F.createRouter)({routes:e.routes,base:e.base,history:t}),[r,o]=(0,p.createSignal)(n.state()),s=n.subscribe(o);(0,p.onCleanup)(()=>{s(),n.destroy()});let i=(0,p.createMemo)(()=>(r().match?.matched??[]).filter(v=>v.component)),u={router:n,location:(0,p.createMemo)(()=>r().location),params:(0,p.createMemo)(()=>r().match?.params??{})},l={depth:-1,matched:i,params:u.params,location:u.location,notFound:()=>kt(e.notFound)},g;return we.Provider({value:u,get children(){return g??=At(l)}})}var Et={router:{navigate:()=>{}},location:()=>({pathname:"",search:"",hash:"",query:{}}),params:()=>({})};function D(){let e=(0,R.useContext)(we);if(e)return e;if(typeof window>"u")return Et;throw new Error("[router-next] useRouter must be used within <Router>")}function Ye(){let e=D().params;return(0,p.createMemo)(()=>e(),{},{equals:(t,n)=>JSON.stringify(t)===JSON.stringify(n)})}function Ge(){let{location:e}=D();return new Proxy({},{get:(t,n)=>e()[n],has:(t,n)=>n in e(),ownKeys:()=>Reflect.ownKeys(e()),getOwnPropertyDescriptor:(t,n)=>Object.getOwnPropertyDescriptor(e(),n)})}function Q(){let{router:e}=D();return(t,n)=>e.navigate(t,n)}var b=e=>typeof e=="function"?e():e,Lt=new Set(["href","slot","class","className","active","activeClass","replace","children"]);function Z(e){let t=(0,R.useContext)(we),n=typeof document>"u",r=()=>t?.router.navigate(b(e.href)??"",{replace:b(e.replace)}),o=(0,y.createNativeElement)("a");(0,y.setAttribute)(o,"href",b(e.href)??""),e.slot&&(0,y.setAttribute)(o,"slot",b(e.slot));for(let i of Object.keys(e)){if(Lt.has(i))continue;let u=e[i];u!=null&&typeof u!="function"&&(0,y.setAttribute)(o,i,String(u))}if(typeof o.addEventListener=="function")o.addEventListener("click",i=>{i.metaKey||i.ctrlKey||i.shiftKey||i.altKey||(i.preventDefault(),r())});else{let i=b(e.className??e.class)??"";i&&(0,y.setAttribute)(o,"class",i)}typeof o.addEventListener=="function"&&(0,p.createEffect)(()=>{let i=b(e.href)??"";o.setAttribute("href",i);let u=b(e.className??e.class)??"",l=b(e.activeClass)??"",g=b(e.active)??t?.location().pathname===i;o.className=[u,g?l:""].filter(Boolean).join(" ")});let s=e.children;return s!=null&&(0,y.insert)(o,s),o}var te=require("@fluixi/dom"),c=require("@fluixi/dom"),T=require("@fluixi/dom");var h=require("@fluixi/dom");var A=require("@fluixi/reactive/store"),Dt="0.0.1",Qe="Fluixi";var Ze={createComponent:I,onMount:V,onUnmount:j,createEffect:a.createEffect,createMemo:a.createMemo,createSignal:a.createSignal,createContext:L,createRoot:a.createRoot,createDeferred:a.createDeferred,createComputed:a.createComputed,createRenderEffect:a.createRenderEffect,createSelector:S.createSelector,onCleanup:a.onCleanup,getOwner:a.getOwner,runWithOwner:a.runWithOwner,batch:a.batch,untrack:a.untrack,useContext:M,setOwner:a.setOwner,Router:G,Link:Z,useRouter:D,useNavigate:Q,read:_.readSignal,reduce:_.reduceSignal,VERSION:Dt,FRAMEWORK_NAME:Qe};P("fluixi element main");P("fluixi index");
1
+ "use strict";var ee=Object.defineProperty;var et=Object.getOwnPropertyDescriptor;var tt=Object.getOwnPropertyNames;var nt=Object.prototype.hasOwnProperty;var rt=(e,t)=>{for(var n in t)ee(e,n,{get:t[n],enumerable:!0})},ot=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of tt(t))!nt.call(e,o)&&o!==n&&ee(e,o,{get:()=>t[o],enumerable:!(r=et(t,o))||r.enumerable});return e};var it=e=>ot(ee({},"__esModule",{value:!0}),e);var Dt={};rt(Dt,{$component:()=>ne,Await:()=>pe,ClientOnly:()=>h.ClientOnly,Dynamic:()=>h.Dynamic,ErrorBoundary:()=>h.ErrorBoundary,FRAMEWORK_NAME:()=>Ge,For:()=>h.For,Index:()=>h.Index,Island:()=>T.Island,Link:()=>G,Match:()=>h.Match,NoSsr:()=>h.NoSsr,Portal:()=>h.Portal,Router:()=>X,Show:()=>h.Show,Store:()=>R.Store,Suspense:()=>j,SuspenseList:()=>le,Switch:()=>h.Switch,VERSION:()=>U,addClass:()=>c.addClass,appendChildren:()=>c.appendChildren,batch:()=>a.batch,classMap:()=>T.classMap,cleanupDelegation:()=>_e,clientOnly:()=>Be,closest:()=>c.closest,composeProviders:()=>ge,createComponent:()=>F,createComputed:()=>a.createComputed,createConsumer:()=>Ue,createContext:()=>E,createContextWithProvider:()=>He,createDebounce:()=>S.createDebounce,createDebouncedResource:()=>S.createDebouncedResource,createDebouncedSignal:()=>S.createDebouncedSignal,createDeferred:()=>a.createDeferred,createEffect:()=>a.createEffect,createIsomorphicState:()=>he,createIsomorphicStore:()=>qe,createMemo:()=>a.createMemo,createMemoryStorage:()=>Te,createProvider:()=>B,createRenderEffect:()=>a.createRenderEffect,createResource:()=>a.createResource,createRoot:()=>a.createRoot,createSelector:()=>S.createSelector,createSignal:()=>a.createSignal,createStore:()=>R.createStore,createTheme:()=>Je,default:()=>Qe,deferred:()=>fe,delegate:()=>c.delegate,domCreateElement:()=>c.createElement,effect:()=>a.effect,env:()=>H,getAttribute:()=>c.getAttribute,getOffset:()=>c.getOffset,getOwner:()=>a.getOwner,getStyle:()=>c.getStyle,hasClass:()=>c.hasClass,html:()=>Z.html,hydrateIslands:()=>T.hydrateIslands,initDelegation:()=>Fe,isClient:()=>ve,isJSXElement:()=>de,isLitResult:()=>ue,isNode:()=>ce,isRenderable:()=>Ne,isServer:()=>xe,isVisible:()=>c.isVisible,lazy:()=>D,memo:()=>a.memo,mergeProps:()=>T.mergeProps,observeIntersection:()=>c.observeIntersection,observeResize:()=>c.observeResize,onCleanup:()=>a.onCleanup,onMount:()=>_,onUnmount:()=>V,portal:()=>Ie,query:()=>c.query,queryAll:()=>c.queryAll,read:()=>N.readSignal,reduce:()=>N.reduceSignal,removeAttribute:()=>c.removeAttribute,removeChildren:()=>c.removeChildren,removeClass:()=>c.removeClass,render:()=>ye,resource:()=>a.resource,runWithOwner:()=>a.runWithOwner,scrollIntoView:()=>c.scrollIntoView,setAttribute:()=>c.setAttribute,setOwner:()=>a.setOwner,setStyles:()=>c.setStyles,signal:()=>a.signal,splitProps:()=>T.splitProps,storage:()=>K,styleMap:()=>T.styleMap,svg:()=>Z.svg,toggleClass:()=>c.toggleClass,untrack:()=>a.untrack,untrackStore:()=>R.untrackStore,unwrap:()=>R.unwrap,useCallback:()=>ae,useContext:()=>L,useEffect:()=>z,useEventListener:()=>se,useLocation:()=>Ye,useMemo:()=>re,useNavigate:()=>Y,useParams:()=>Xe,useProvide:()=>$e,useReducer:()=>ie,useRef:()=>oe,useRouter:()=>M,waitForElement:()=>c.waitForElement});module.exports=it(Dt);var U="1.0.0-alpha.81";var a=require("@fluixi/reactive/signal"),S=require("@fluixi/reactive/signal"),N=require("@fluixi/reactive/operators");var De=require("@fluixi/reactive/signal");var Pe=require("@fluixi/dom");var A=require("@fluixi/dom");(0,Pe.registerCoreVersion)(U);var O=require("@fluixi/dom");var $=require("@fluixi/dom"),f=require("@fluixi/reactive/signal");var te=Symbol.for("fluixi-lifecycle");function Re(){let e=(0,f.getOwner)();if(!e)return null;if(!e[te]){let t={mounts:[],effects:[],scheduled:!1};e[te]=t}return e[te]}function Ae(e){if(e.scheduled)return;e.scheduled=!0;let t=(0,f.getOwner)();queueMicrotask(()=>{if((0,f.isOwnerDisposed)(t)){e.mounts=[],e.effects=[];return}(0,f.runWithOwner)(t,()=>{for(let n of e.mounts)try{let r=n();typeof r=="function"&&(0,f.onCleanup)(r)}catch(r){console.error("Error in onMount callback:",r)}for(let n of e.effects){let r;(0,f.createEffect)(()=>{r&&r(),r=n()}),(0,f.onCleanup)(()=>{r&&r()})}e.mounts=[],e.effects=[]})})}function F(e,t){return(0,$.createComponent)(e,t)}function ne(e,t){let n=typeof e=="function"?(0,f.untrack)(()=>e(t)):e;if(n!=null&&(typeof n=="function"||typeof n=="object")&&!(0,f.isSignal)(n)){try{n.$name=e.name}catch{}return(0,$.asComponent)(n)}return n}function _(e,t=!0){let n=Re();if(n){if(!t){n.scheduled||e();return}n.mounts.push(e),Ae(n)}else{if(!t){e();return}(0,f.createEffect)(()=>{let r=(0,f.untrack)(e);typeof r=="function"&&(0,f.onCleanup)(r)})}}function V(e){(0,f.onCleanup)(e)}function z(e){let t=Re();if(t)t.effects.push(e),Ae(t);else{let n;(0,f.createEffect)(()=>{n&&n(),n=e()}),(0,f.onCleanup)(()=>{n&&n()})}}function re(e){return(0,f.createMemo)(e)}function oe(e){let t={current:e};return(0,f.onCleanup)(()=>{t.current=null}),t}function ie(e,t){let[n,r]=(0,f.createSignal)(t);return[n,s=>{r(e(n(),s))}]}function se(e,t,n,r){z(()=>{let o=e&&"current"in e?e.current:e;if(o)return o.addEventListener(t,n,r),()=>{o.removeEventListener(t,n,r)}})}function ae(e){return e}var m=require("@fluixi/reactive/signal"),C=require("@fluixi/dom");function ce(e){return typeof window>"u"?!1:typeof Node=="function"&&e instanceof Node?!0:!!(e&&typeof e=="object"&&typeof e.nodeType=="number")}function ue(e){return!e||typeof e!="object"?!1:!!(typeof e._$litType$<"u"||typeof e._$litDirective$<"u"||Array.isArray(e.strings)&&Array.isArray(e.values))}function ke(e){return!!(e&&typeof e=="object"&&typeof e.then=="function"||e instanceof Promise)}function de(e){return!!(e&&typeof e=="object"&&"type"in e&&"props"in e)}var Oe=(0,m.createContext)();function j(e){return(0,C.createComponent)(st,e)}function st(e){let t=(0,m.createSuspenseBoundary)(),n=(0,m.useContext)(Oe),r=n?n.register(t.inFallback):void 0;function o(d){return d==null||typeof d=="boolean"?null:typeof d=="function"&&(0,C.isComponent)(d)&&!(0,m.isSignal)(d)?d():d}let s=(0,C.runWithoutHydration)(()=>o(e.fallback??null)),i=(0,m.provideSuspense)(t,()=>(0,m.readChildren)(()=>e.children)),u=(d,w)=>{if(!(w>8))if(Array.isArray(d))for(let we of d)u(we,w+1);else typeof d=="function"&&(0,m.isSignal)(d)&&u(d(),w+1)};(0,m.provideSuspense)(t,()=>{(0,m.createRenderEffect)(()=>u(i,0))});let[l,g]=(0,m.createSignal)(void 0),v=ke(i);return v&&(t.increment(),i.then(d=>{g(()=>d),t.decrement()},()=>t.decrement())),(0,m.createMemo)(()=>{let d=r?r.showFallback():t.inFallback();return process.env.FX_DEBUG&&console.log("[s] output; showFallback:",d),d?s:v?l():i})}function le(e){return(0,C.createComponent)(at,e)}function at(e){let{revealOrder:t="together",tail:n}=e,r=[];function o(){if(t==="together"){let i=r.every(u=>!u.inFallback());r.forEach(u=>{u.setShowContent(i),u.setShowFallback(!i)})}else{let i=t==="backwards"?[...r].reverse():r,u=!1;for(let l of i)u||l.inFallback()?(u=!0,l.setShowContent(!1),l.setShowFallback(n!=="hidden")):(l.setShowContent(!0),l.setShowFallback(!1))}}let s={register:i=>{let[u,l]=(0,m.createSignal)(!0),[g,v]=(0,m.createSignal)(!1);return r.push({inFallback:i,setShowContent:l,setShowFallback:v}),(0,m.createEffect)(()=>{i(),o()}),{showContent:u,showFallback:g}}};return Oe.Provider({value:s,children:e.children})}(0,C.asSuspense)(j);Object.defineProperty(j,"__suspense",{value:!0,enumerable:!0});var k=require("@fluixi/reactive/signal");function D(e,t){let n,r,o;function s(){return r||(r=e().then(u=>n=u.default)),r}t?.preload&&s();let i=(u=>{if(n){let l=n;return(0,k.untrack)(()=>l(u))}if(!o){let[l]=(0,k.createResource)(()=>s(),{transport:!1});if(o=l,l.error)throw l.error}return(0,k.createMemo)(()=>{let l=o();return l?(0,k.untrack)(()=>l(u)):void 0},void 0,{name:"lazy"})});return i.preload=()=>s().then(()=>{}),i.$lazy=!0,i.loader=e,i}var W=require("@fluixi/reactive/signal"),Le=require("@fluixi/dom/utils");var Ee=typeof window>"u";function fe(e,t){let n=t.export??"default",r=D(()=>e().then(s=>{let i=s[n];if(typeof i!="function")throw new Error(`deferred(): module has no '${n}' export (got ${typeof i}).`);return{default:i}}),{fallback:t.fallback});function o(s){if(t.strategy.kind==="never")return Ee?r(s):null;if(Ee||t.strategy.kind==="eager")return r(s);let[i,u]=(0,W.createSignal)(!1),l=()=>{r.preload().then(()=>u(!0))},g=t.strategy.kind==="visible"?ct():void 0;return ut(t.strategy,l,g),(0,W.createMemo)(()=>i()?r(s):g??t.fallback??null,void 0,{name:"deferred"})}return o.preload=r.preload,o}function ct(){let e=document.createElement("span");return e.setAttribute("data-fx-load","visible"),e.style.display="block",e}function ut(e,t,n){let r=!1,o=()=>{r||(r=!0,t())};switch(e.kind){case"idle":{let s=globalThis.requestIdleCallback;s?s(o):setTimeout(o,1);return}case"visible":{if(!n||typeof IntersectionObserver>"u"){o();return}let s=(0,Le.observeIntersection)(n,i=>{i&&(s(),o())},{rootMargin:e.rootMargin??"0px"});return}case"interaction":{let s=()=>{for(let i of e.events)document.removeEventListener(i,s,!0);o()};for(let i of e.events)document.addEventListener(i,s,{capture:!0,passive:!0});return}case"media":{if(typeof matchMedia>"u"){o();return}let s=matchMedia(e.query);if(s.matches){o();return}let i=u=>{u.matches&&(s.removeEventListener("change",i),o())};s.addEventListener("change",i);return}default:o()}}var Me=require("@fluixi/reactive/signal");function pe(e){let t=()=>{let r=e.value;return typeof r=="function"?r():r},[n]=(0,Me.createResource)(t);return()=>{if(n.loading)return e.fallback;let r=e.children;return typeof r=="function"?r(n()):r}}var me=typeof window>"u";function ye(e,t,n={}){if((0,O.delegateEvents)(["click","input","change","submit"]),me)throw new Error("render() is for client-side only. Use renderToString() on server.");if(!t)throw new Error("Container element is required");let r;return(0,De.createRoot)(o=>{r=o;let s=typeof e=="function"?e():e;t.textContent="",(0,A.stampVersions)(t),(0,A.warnOnVersionSkew)(),(0,O.insert)(t,()=>s)}),()=>{r&&(r(),r=void 0)}}function dt(e){return e&&typeof e=="object"&&(e._$litType$!==void 0||e._$litDirective$!==void 0)}function Ie(e,t,n={}){let r=document.createElement("div");r.setAttribute("data-portal","true"),t.appendChild(r);let o=ye(e,r,n);return()=>{o(),t.contains(r)&&t.removeChild(r)}}function Ne(e){return!!(e==null||typeof e=="function"||(0,O.isDOMNode)(e)||dt(e)||Array.isArray(e)||typeof e=="string"||typeof e=="number"||typeof e=="boolean")}function Fe(){me||(0,O.delegateEvents)(["click","input","change","submit"])}function _e(){}var je=require("@fluixi/dom"),q=require("@fluixi/reactive/signal"),Ke=require("@fluixi/reactive/signal"),Ve=!1;function lt(){Ve||(Ve=!0,!(typeof process<"u")&&console.warn("[fluixi] createProvider({ context, value, children }) reads `children` eagerly: the object literal materialises `children` BEFORE the context is stamped, so a routed <Outlet/> that has siblings inside the provider renders detached and its descendants see no context under SSR. Use the lazy form instead:\n createProvider(Context, value, props) // children stays a getter\n // or JSX: <Context.Provider value={…}>{props.children}</Context.Provider>"))}function B(e,t,n){let r=!!e?.Provider,o=r?e:e.context,s=r?t:e.value,i=r?!1:e.debug??!1;r||lt();let u=typeof s=="function"?s():s,l=r?n:e;return o.Provider({value:u,get children(){return l?.children},debug:i})}function He(e){let t=E(e);return[t,r=>B(t,r.value,r)]}function ge(e,t){if(e.length===0)return(0,Ke.readChildren)(()=>t);let[n,r]=e[0],o=e.slice(1);return B(n,r,{get children(){return ge(o,t)}})}function Ue(e){return t=>{let n=L(e);return t.children(n)}}function $e(e,t){let n=L(e);return n===e.defaultValue?t():n}function E(e){let t=(0,q.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,je.asProvider)(n),defaultValue:e}}function L(e){let t=(0,q.useContext)(e);return t!==void 0?t:e.defaultValue}var J=require("@fluixi/reactive/signal"),ze=require("@fluixi/dom"),ft="__fluixi_iso_states__",pt="__iso:";function mt(){return globalThis[ft]??=new Map}function We(e){if(typeof window>"u")return;let t=(0,ze.getServerData)();return t?t[pt+e]:void 0}function he(e,t){let n=We(e),r=n!==void 0?n:typeof window<"u"&&t.client?t.client():t.fallback,[o,s]=(0,J.createSignal)(r);return mt().set(e,{server:t.server,set:s}),{value:o,set:s,key:e}}function qe(e,t){let n=We(e)!==void 0,r=he(e,{server:t.server,fallback:t.fallback}),o=()=>r.value()??t.fallback,s=d=>{if(!(!t.persist||typeof localStorage>"u"))try{localStorage.setItem(t.persist,JSON.stringify(d))}catch{}},i=d=>{r.set(d),s(d)},u=(d,w)=>{i({...o(),[d]:w})},l={};for(let d of Object.keys(t.fallback))l[d]=(0,J.createMemo)(()=>o()[d]);let g=null;return{value:o,fields:l,set:i,setField:u,ensureInit:()=>n||!t.client?Promise.resolve():(g||(g=Promise.resolve(t.client()).then(d=>{i(d)}).catch(d=>{throw g=null,d})),g),key:e}}var xe=typeof document>"u",ve=!xe;function Te(){let e=new Map;return{getItem:t=>e.has(t)?e.get(t):null,setItem:(t,n)=>{e.set(t,String(n))},removeItem:t=>{e.delete(t)},clear:()=>e.clear(),key:t=>Array.from(e.keys())[t]??null,get length(){return e.size}}}var K=typeof localStorage<"u"?localStorage:Te(),H={get window(){return typeof window<"u"?window:void 0},get document(){return typeof document<"u"?document:void 0}};function Be(e,t){return ve?e():t}var Ce=require("@fluixi/reactive/signal");function yt(e){return e?e===!0?{dark:"dark",light:"light"}:e:null}function Je(e){let t=e.storageKey??"theme",n=e.attribute??"data-theme",r=yt(e.system),o=()=>{let x=K.getItem(t);return x&&e.themes.includes(x)?x:r&&H.window?.matchMedia?.("(prefers-color-scheme: dark)")?.matches?r.dark:r?r.light:e.default},[s,i]=(0,Ce.createSignal)(o()),[u,l]=(0,Ce.createSignal)(!1),g=x=>{H.document?.documentElement.setAttribute(n,x);try{K.setItem(t,x)}catch{}},v=x=>{if(!e.themes.includes(x))return;let Ze=s();i(()=>x),g(x),e.onChange?.(x,Ze),e.load&&(l(!0),e.onLoading?.(x),Promise.resolve(e.load(x)).finally(()=>{l(!1),e.onLoaded?.(x)}))};return{value:s,isLoading:u,set:v,toggle:()=>{let x=e.themes.indexOf(s());v(e.themes[(x+1)%e.themes.length])},init:()=>g(s()),headScript:()=>`<script>(function(){try{var c=${JSON.stringify({k:t,a:n,d:e.default,sys:r})},t=localStorage.getItem(c.k);if(!t&&c.sys)t=matchMedia('(prefers-color-scheme: dark)').matches?c.sys.dark:c.sys.light;if(!t)t=c.d;document.documentElement.setAttribute(c.a,t);}catch(e){}})();<\/script>`}}var p=require("@fluixi/reactive/signal"),y=require("@fluixi/dom"),P=require("@fluixi/reactive/signal"),Tt=require("@fluixi/utils/object"),Ct=require("@fluixi/utils/compare"),I=require("@fluixi/router"),Q=require("@fluixi/router");var be=require("@fluixi/reactive/signal");var gt=new Map;function ht(){gt.clear()}function xt(){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,s=o.nodeValue||"";(s.startsWith("#")||s.startsWith("/"))&&n.push(o)}n.forEach(o=>o.remove()),ht()}typeof window<"u"&&window.addEventListener("load",()=>{setTimeout(xt,100)});var[En,Ln]=(0,be.createSignal)(0);var vt=E(),Mn=vt.Provider;var Lt=require("@fluixi/reactive/signal"),Se=(0,P.createContext)(),bt=(0,P.createContext)(),St=(0,P.createContext)(),wt=(0,P.createContext)();function Pt(e,t,n){let r,o=e.route.data;if(typeof o=="function"){let v=!1;(0,p.onCleanup)(()=>{v=!0});let d=(0,p.getOwner)(),[w]=(0,p.createResource)(()=>o({params:n.params,location:n.location},d,()=>v));r=w}let s=()=>wt.Provider({value:r,get children(){return St.Provider({value:e.params,get children(){return bt.Provider({value:{depth:t,...n},get children(){return(0,y.createComponent)(e.component,{})}})}})}});if(!r)return s();let i=r,u=()=>i.loading,[l,g]=(0,p.createSignal)((0,p.untrack)(()=>!u()));return(0,p.createEffect)(()=>g(!u())),(0,p.createMemo)(()=>l()?s():null)}function Rt(e){let t=e.depth+1,[n,r]=(0,p.createSignal)((0,p.untrack)(()=>e.matched()[t]?.component));return(0,p.createEffect)(()=>{let o=e.matched()[t]?.component;r(()=>o)}),(0,p.createMemo)(()=>{if(!n())return e.notFound?e.notFound():null;let s=(0,p.untrack)(()=>e.matched())[t];return Pt(s,t,{matched:e.matched,params:e.params,location:e.location})})}function At(e){return e==null?kt():typeof e=="function"?(0,y.createComponent)(e,{}):e}function kt(){let e=(0,y.createNativeElement)("div");(0,y.setAttribute)(e,"class","fx-not-found"),(0,y.setAttribute)(e,"role","main"),(0,y.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 t=(0,y.createNativeElement)("h1");(0,y.setAttribute)(t,"style","margin:0;font-size:2.5rem;font-weight:700"),(0,y.insert)(t,"404");let n=(0,y.createNativeElement)("p");return(0,y.setAttribute)(n,"style","margin:0;opacity:.7"),(0,y.insert)(n,"This page could not be found."),e.appendChild(t),e.appendChild(n),e}function X(e){let t=e.history??(0,I.createBrowserHistory)(),n=(0,I.createRouter)({routes:e.routes,base:e.base,history:t}),[r,o]=(0,p.createSignal)(n.state()),s=n.subscribe(o);(0,p.onCleanup)(()=>{s(),n.destroy()});let i=(0,p.createMemo)(()=>(r().match?.matched??[]).filter(v=>v.component)),u={router:n,location:(0,p.createMemo)(()=>r().location),params:(0,p.createMemo)(()=>r().match?.params??{})},l={depth:-1,matched:i,params:u.params,location:u.location,notFound:()=>At(e.notFound)},g;return Se.Provider({value:u,get children(){return g??=Rt(l)}})}var Ot={router:{navigate:()=>{}},location:()=>({pathname:"",search:"",hash:"",query:{}}),params:()=>({})};function M(){let e=(0,P.useContext)(Se);if(e)return e;if(typeof window>"u")return Ot;throw new Error("[router] useRouter must be used within <Router>")}function Xe(){let e=M().params;return(0,p.createMemo)(()=>e(),{},{equals:(t,n)=>JSON.stringify(t)===JSON.stringify(n)})}function Ye(){let{location:e}=M();return new Proxy({},{get:(t,n)=>e()[n],has:(t,n)=>n in e(),ownKeys:()=>Reflect.ownKeys(e()),getOwnPropertyDescriptor:(t,n)=>Object.getOwnPropertyDescriptor(e(),n)})}function Y(){let{router:e}=M();return(t,n)=>e.navigate(t,n)}var b=e=>typeof e=="function"?e():e,Et=new Set(["href","slot","class","className","active","activeClass","replace","children"]);function G(e){let t=(0,P.useContext)(Se),n=typeof document>"u",r=()=>t?.router.navigate(b(e.href)??"",{replace:b(e.replace)}),o=(0,y.createNativeElement)("a");(0,y.setAttribute)(o,"href",b(e.href)??""),e.slot&&(0,y.setAttribute)(o,"slot",b(e.slot));for(let i of Object.keys(e)){if(Et.has(i))continue;let u=e[i];u!=null&&typeof u!="function"&&(0,y.setAttribute)(o,i,String(u))}if(typeof o.addEventListener=="function")o.addEventListener("click",i=>{i.metaKey||i.ctrlKey||i.shiftKey||i.altKey||(i.preventDefault(),r())});else{let i=b(e.className??e.class)??"";i&&(0,y.setAttribute)(o,"class",i)}typeof o.addEventListener=="function"&&(0,p.createEffect)(()=>{let i=b(e.href)??"";o.setAttribute("href",i);let u=b(e.className??e.class)??"",l=b(e.activeClass)??"",g=b(e.active)??t?.location().pathname===i;o.className=[u,g?l:""].filter(Boolean).join(" ")});let s=e.children;return s!=null&&(0,y.insert)(o,s),o}var Z=require("@fluixi/dom"),c=require("@fluixi/dom"),T=require("@fluixi/dom");var h=require("@fluixi/dom");var R=require("@fluixi/reactive/store"),Mt="0.0.1",Ge="Fluixi";var Qe={createComponent:F,onMount:_,onUnmount:V,createEffect:a.createEffect,createMemo:a.createMemo,createSignal:a.createSignal,createContext:E,createRoot:a.createRoot,createDeferred:a.createDeferred,createComputed:a.createComputed,createRenderEffect:a.createRenderEffect,createSelector:S.createSelector,onCleanup:a.onCleanup,getOwner:a.getOwner,runWithOwner:a.runWithOwner,batch:a.batch,untrack:a.untrack,useContext:L,setOwner:a.setOwner,Router:X,Link:G,useRouter:M,useNavigate:Y,read:N.readSignal,reduce:N.reduceSignal,VERSION:Mt,FRAMEWORK_NAME:Ge};
package/dist/src/index.js CHANGED
@@ -1,16 +1,10 @@
1
1
  export { VERSION } from './version.generated.js';
2
- /**
3
- * @fileoverview Main entry point for Fluixi framework
4
- * @module @fluixi/core
5
- */
6
- import { ensureIntegration } from './lib/render/component.js';
7
2
  // import type { JSX as FluixiJSX } from '@fluixi/jsx';
8
3
  export * from './lib/core.js';
9
4
  export { default } from './lib/core.js';
10
- ensureIntegration('fluixi index');
11
5
  // /**
12
6
  // * Global JSX namespace for "jsx": "preserve" mode.
13
- // * Applied automatically when any file imports from @fluixi/core.
7
+ // * Applied automatically when any file imports from fluixi.
14
8
  // * Pattern: same as SolidJS — the framework main entry carries the global augmentation.
15
9
  // */
16
10
  // declare global {
@@ -1 +1 @@
1
- var M="1.0.0-alpha.78";import{registerCreateComponent as Ie,asComponent as Ne}from"@fluixi/dom";import{untrack as X,onCleanup as h,getOwner as I,createEffect as w,createMemo as Y,createSignal as Fe,isSignal as _e,batch as Ve,runWithOwner as G,isOwnerDisposed as je}from"@fluixi/reactive/signal";var D=Symbol.for("fluixi-lifecycle");function Q(){let e=I();if(!e)return null;if(!e[D]){let t={mounts:[],effects:[],scheduled:!1};e[D]=t}return e[D]}function Z(e){if(e.scheduled)return;e.scheduled=!0;let t=I();queueMicrotask(()=>{if(je(t)){e.mounts=[],e.effects=[];return}G(t,()=>{for(let n of e.mounts)try{let r=n();typeof r=="function"&&h(r)}catch(r){console.error("Error in onMount callback:",r)}for(let n of e.effects){let r;w(()=>{r&&r(),r=n()}),h(()=>{r&&r()})}e.mounts=[],e.effects=[]})})}function g(e){Ie(b)}function b(e,t){return N(e,t)}function N(e,t){let n=typeof e=="function"?X(()=>e(t)):e;if(n!=null&&(typeof n=="function"||typeof n=="object")&&!_e(n)){try{n.$name=e.name}catch{}return Ne(n)}return n}function P(e,t=!0){let n=Q();if(n){if(!t){n.scheduled||e();return}n.mounts.push(e),Z(n)}else{if(!t){e();return}w(()=>{let r=X(e);typeof r=="function"&&h(r)})}}function R(e){h(e)}function F(e){let t=Q();if(t)t.effects.push(e),Z(t);else{let n;w(()=>{n&&n(),n=e()}),h(()=>{n&&n()})}}function ee(e){return Y(e)}function te(e){let t={current:e};return h(()=>{t.current=null}),t}function ne(e,t){let[n,r]=Fe(t);return[n,s=>{r(e(n(),s))}]}function re(e,t,n,r){F(()=>{let o=e&&"current"in e?e.current:e;if(o)return o.addEventListener(t,n,r),()=>{o.removeEventListener(t,n,r)}})}function oe(e){return e}import{signal as Po,memo as Ro,effect as Ao,resource as ko,createEffect as Zt,createMemo as en,createSignal as tn,createResource as Oo,createRoot as nn,createComputed as rn,createRenderEffect as on,onCleanup as sn,getOwner as an,runWithOwner as cn,batch as un,untrack as dn,createDeferred as ln,setOwner as fn}from"@fluixi/reactive/signal";import{createDebounce as Lo,createDebouncedResource as Mo,createDebouncedSignal as Do,createSelector as pn}from"@fluixi/reactive/signal";import{readSignal as mn,reduceSignal as yn}from"@fluixi/reactive/operators";import{createRoot as at}from"@fluixi/reactive/signal";import{registerCoreVersion as Ke}from"@fluixi/dom";import{stampVersions as ie,warnOnVersionSkew as se,versions as Fn}from"@fluixi/dom";Ke(M);import{isDOMNode as ct,delegateEvents as Te,insert as ut}from"@fluixi/dom";import{createSignal as _,createMemo as He,createEffect as Ue,createRenderEffect as $e,isSignal as ae,readChildren as ze,useContext as We,createContext as qe,createSuspenseBoundary as Be,provideSuspense as ce}from"@fluixi/reactive/signal";import{asSuspense as Je,isComponent as Xe,createComponent as ue,runWithoutHydration as Ye}from"@fluixi/dom";function de(e){return typeof window>"u"?!1:typeof Node=="function"&&e instanceof Node?!0:!!(e&&typeof e=="object"&&typeof e.nodeType=="number")}function le(e){return!e||typeof e!="object"?!1:!!(typeof e._$litType$<"u"||typeof e._$litDirective$<"u"||Array.isArray(e.strings)&&Array.isArray(e.values))}function fe(e){return!!(e&&typeof e=="object"&&typeof e.then=="function"||e instanceof Promise)}function pe(e){return!!(e&&typeof e=="object"&&"type"in e&&"props"in e)}var me=qe();function A(e){return ue(Ge,e)}function Ge(e){let t=Be(),n=We(me),r=n?n.register(t.inFallback):void 0;function o(c){return c==null||typeof c=="boolean"?null:typeof c=="function"&&Xe(c)&&!ae(c)?c():c}let s=Ye(()=>o(e.fallback??null)),i=ce(t,()=>ze(()=>e.children)),a=(c,y)=>{if(!(y>8))if(Array.isArray(c))for(let J of c)a(J,y+1);else typeof c=="function"&&ae(c)&&a(c(),y+1)};ce(t,()=>{$e(()=>a(i,0))});let[u,d]=_(void 0),f=fe(i);return f&&(t.increment(),i.then(c=>{d(()=>c),t.decrement()},()=>t.decrement())),He(()=>{let c=r?r.showFallback():t.inFallback();return process.env.FX_DEBUG&&console.log("[s] output; showFallback:",c),c?s:f?u():i})}function ye(e){return ue(Qe,e)}function Qe(e){let{revealOrder:t="together",tail:n}=e,r=[];function o(){if(t==="together"){let i=r.every(a=>!a.inFallback());r.forEach(a=>{a.setShowContent(i),a.setShowFallback(!i)})}else{let i=t==="backwards"?[...r].reverse():r,a=!1;for(let u of i)a||u.inFallback()?(a=!0,u.setShowContent(!1),u.setShowFallback(n!=="hidden")):(u.setShowContent(!0),u.setShowFallback(!1))}}let s={register:i=>{let[a,u]=_(!0),[d,f]=_(!1);return r.push({inFallback:i,setShowContent:u,setShowFallback:f}),Ue(()=>{i(),o()}),{showContent:a,showFallback:d}}};return me.Provider({value:s,children:e.children})}Je(A);Object.defineProperty(A,"__suspense",{value:!0,enumerable:!0});import{untrack as ge,createMemo as Ze,createResource as et}from"@fluixi/reactive/signal";function S(e,t){let n,r,o;function s(){return r||(r=e().then(a=>n=a.default)),r}t?.preload&&s();let i=(a=>{if(n){let u=n;return ge(()=>u(a))}if(!o){let[u]=et(()=>s(),{transport:!1});if(o=u,u.error)throw u.error}return Ze(()=>{let u=o();return u?ge(()=>u(a)):void 0},void 0,{name:"lazy"})});return i.preload=()=>s().then(()=>{}),i.$lazy=!0,i.loader=e,i}import{createMemo as tt,createSignal as nt}from"@fluixi/reactive/signal";import{observeIntersection as rt}from"@fluixi/dom/utils";var he=typeof window>"u";function xe(e,t){let n=t.export??"default",r=S(()=>e().then(s=>{let i=s[n];if(typeof i!="function")throw new Error(`deferred(): module has no '${n}' export (got ${typeof i}).`);return{default:i}}),{fallback:t.fallback});function o(s){if(t.strategy.kind==="never")return he?r(s):null;if(he||t.strategy.kind==="eager")return r(s);let[i,a]=nt(!1),u=()=>{r.preload().then(()=>a(!0))},d=t.strategy.kind==="visible"?ot():void 0;return it(t.strategy,u,d),tt(()=>i()?r(s):d??t.fallback??null,void 0,{name:"deferred"})}return o.preload=r.preload,o}function ot(){let e=document.createElement("span");return e.setAttribute("data-fx-load","visible"),e.style.display="block",e}function it(e,t,n){let r=!1,o=()=>{r||(r=!0,t())};switch(e.kind){case"idle":{let s=globalThis.requestIdleCallback;s?s(o):setTimeout(o,1);return}case"visible":{if(!n||typeof IntersectionObserver>"u"){o();return}let s=rt(n,i=>{i&&(s(),o())},{rootMargin:e.rootMargin??"0px"});return}case"interaction":{let s=()=>{for(let i of e.events)document.removeEventListener(i,s,!0);o()};for(let i of e.events)document.addEventListener(i,s,{capture:!0,passive:!0});return}case"media":{if(typeof matchMedia>"u"){o();return}let s=matchMedia(e.query);if(s.matches){o();return}let i=a=>{a.matches&&(s.removeEventListener("change",i),o())};s.addEventListener("change",i);return}default:o()}}import{createResource as st}from"@fluixi/reactive/signal";function ve(e){let t=()=>{let r=e.value;return typeof r=="function"?r():r},[n]=st(t);return()=>{if(n.loading)return e.fallback;let r=e.children;return typeof r=="function"?r(n()):r}}var V=typeof window>"u";function Ce(e,t,n={}){if(g("render"),Te(["click","input","change","submit"]),V)throw new Error("render() is for client-side only. Use renderToString() on server.");if(!t)throw new Error("Container element is required");let r;return at(o=>{r=o;let s=typeof e=="function"?e():e;t.textContent="",ie(t),se(),ut(t,()=>s)}),()=>{r&&(r(),r=void 0)}}function dt(e){return e&&typeof e=="object"&&(e._$litType$!==void 0||e._$litDirective$!==void 0)}function lt(e,t,n={}){let r=document.createElement("div");r.setAttribute("data-portal","true"),t.appendChild(r);let o=Ce(e,r,n);return()=>{o(),t.contains(r)&&t.removeChild(r)}}function ft(e){return!!(e==null||typeof e=="function"||ct(e)||dt(e)||Array.isArray(e)||typeof e=="string"||typeof e=="number"||typeof e=="boolean")}function pt(){V||Te(["click","input","change","submit"])}function mt(){}import{asProvider as yt}from"@fluixi/dom";import{createContext as gt,useContext as ht}from"@fluixi/reactive/signal";import{readChildren as xt}from"@fluixi/reactive/signal";g("index");var be=!1;function vt(){be||(be=!0,!(typeof process<"u")&&console.warn("[fluixi] createProvider({ context, value, children }) reads `children` eagerly: the object literal materialises `children` BEFORE the context is stamped, so a routed <Outlet/> that has siblings inside the provider renders detached and its descendants see no context under SSR. Use the lazy form instead:\n createProvider(Context, value, props) // children stays a getter\n // or JSX: <Context.Provider value={…}>{props.children}</Context.Provider>"))}function j(e,t,n){let r=!!e?.Provider,o=r?e:e.context,s=r?t:e.value,i=r?!1:e.debug??!1;r||vt();let a=typeof s=="function"?s():s,u=r?n:e;return o.Provider({value:a,get children(){return u?.children},debug:i})}function Tt(e){let t=x(e);return[t,r=>j(t,r.value,r)]}function Se(e,t){if(e.length===0)return xt(()=>t);let[n,r]=e[0],o=e.slice(1);return j(n,r,{get children(){return Se(o,t)}})}function Ct(e){return t=>{let n=v(e);return t.children(n)}}function bt(e,t){let n=v(e);return n===e.defaultValue?t():n}function x(e){let t=gt(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:yt(n),defaultValue:e}}function v(e){let t=ht(e);return t!==void 0?t:e.defaultValue}import{createSignal as St,createMemo as wt}from"@fluixi/reactive/signal";import{getServerData as Pt}from"@fluixi/dom";var Rt="__fluixi_iso_states__",At="__iso:";function kt(){return globalThis[Rt]??=new Map}function we(e){if(typeof window>"u")return;let t=Pt();return t?t[At+e]:void 0}function Pe(e,t){let n=we(e),r=n!==void 0?n:typeof window<"u"&&t.client?t.client():t.fallback,[o,s]=St(r);return kt().set(e,{server:t.server,set:s}),{value:o,set:s,key:e}}function Ot(e,t){let n=we(e)!==void 0,r=Pe(e,{server:t.server,fallback:t.fallback}),o=()=>r.value()??t.fallback,s=c=>{if(!(!t.persist||typeof localStorage>"u"))try{localStorage.setItem(t.persist,JSON.stringify(c))}catch{}},i=c=>{r.set(c),s(c)},a=(c,y)=>{i({...o(),[c]:y})},u={};for(let c of Object.keys(t.fallback))u[c]=wt(()=>o()[c]);let d=null;return{value:o,fields:u,set:i,setField:a,ensureInit:()=>n||!t.client?Promise.resolve():(d||(d=Promise.resolve(t.client()).then(c=>{i(c)}).catch(c=>{throw d=null,c})),d),key:e}}var Re=typeof document>"u",Ae=!Re;function ke(){let e=new Map;return{getItem:t=>e.has(t)?e.get(t):null,setItem:(t,n)=>{e.set(t,String(n))},removeItem:t=>{e.delete(t)},clear:()=>e.clear(),key:t=>Array.from(e.keys())[t]??null,get length(){return e.size}}}var k=typeof localStorage<"u"?localStorage:ke(),O={get window(){return typeof window<"u"?window:void 0},get document(){return typeof document<"u"?document:void 0}};function Et(e,t){return Ae?e():t}import{createSignal as Oe}from"@fluixi/reactive/signal";function Lt(e){return e?e===!0?{dark:"dark",light:"light"}:e:null}function Mt(e){let t=e.storageKey??"theme",n=e.attribute??"data-theme",r=Lt(e.system),o=()=>{let l=k.getItem(t);return l&&e.themes.includes(l)?l:r&&O.window?.matchMedia?.("(prefers-color-scheme: dark)")?.matches?r.dark:r?r.light:e.default},[s,i]=Oe(o()),[a,u]=Oe(!1),d=l=>{O.document?.documentElement.setAttribute(n,l);try{k.setItem(t,l)}catch{}},f=l=>{if(!e.themes.includes(l))return;let De=s();i(()=>l),d(l),e.onChange?.(l,De),e.load&&(u(!0),e.onLoading?.(l),Promise.resolve(e.load(l)).finally(()=>{u(!1),e.onLoaded?.(l)}))};return{value:s,isLoading:a,set:f,toggle:()=>{let l=e.themes.indexOf(s());f(e.themes[(l+1)%e.themes.length])},init:()=>d(s()),headScript:()=>`<script>(function(){try{var c=${JSON.stringify({k:t,a:n,d:e.default,sys:r})},t=localStorage.getItem(c.k);if(!t&&c.sys)t=matchMedia('(prefers-color-scheme: dark)').matches?c.sys.dark:c.sys.light;if(!t)t=c.d;document.documentElement.setAttribute(c.a,t);}catch(e){}})();<\/script>`}}import{createSignal as U,createMemo as T,createResource as Vt,createEffect as $,getOwner as jt,onCleanup as Ee,untrack as K}from"@fluixi/reactive/signal";import{insert as H,createComponent as Le,createNativeElement as E,setAttribute as m}from"@fluixi/dom";import{createContext as L,useContext as Me}from"@fluixi/reactive/signal";import{get as Xr}from"@fluixi/utils/object";import{deepEqual as Gr}from"@fluixi/utils/compare";import{createRouter as Kt,createBrowserHistory as Ht,matchRoutes as Zr,matchPath as eo}from"@fluixi/router";import{createMemoryHistory as ro,createBrowserHistory as oo,matchRoutes as io,matchPath as so}from"@fluixi/router";import{createResource as Lr,createSignal as Ft}from"@fluixi/reactive/signal";var Dt=new Map;function It(){Dt.clear()}function Nt(){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,s=o.nodeValue||"";(s.startsWith("#")||s.startsWith("/"))&&n.push(o)}n.forEach(o=>o.remove()),It()}typeof window<"u"&&window.addEventListener("load",()=>{setTimeout(Nt,100)});var[Nr,Fr]=Ft(0);var _t=x(),_r=_t.Provider;import{runWithOwner as lo}from"@fluixi/reactive/signal";var z=L(),Ut=L(),$t=L(),zt=L();function Wt(e,t,n){let r,o=e.route.data;if(typeof o=="function"){let f=!1;Ee(()=>{f=!0});let c=jt(),[y]=Vt(()=>o({params:n.params,location:n.location},c,()=>f));r=y}let s=()=>zt.Provider({value:r,get children(){return $t.Provider({value:e.params,get children(){return Ut.Provider({value:{depth:t,...n},get children(){return Le(e.component,{})}})}})}});if(!r)return s();let i=r,a=()=>i.loading,[u,d]=U(K(()=>!a()));return $(()=>d(!a())),T(()=>u()?s():null)}function qt(e){let t=e.depth+1,[n,r]=U(K(()=>e.matched()[t]?.component));return $(()=>{let o=e.matched()[t]?.component;r(()=>o)}),T(()=>{if(!n())return e.notFound?e.notFound():null;let s=K(()=>e.matched())[t];return Wt(s,t,{matched:e.matched,params:e.params,location:e.location})})}function Bt(e){return e==null?Jt():typeof e=="function"?Le(e,{}):e}function Jt(){let e=E("div");m(e,"class","fx-not-found"),m(e,"role","main"),m(e,"style","min-height:60vh;display:grid;place-content:center;gap:.25rem;text-align:center;font-family:system-ui,-apple-system,sans-serif");let t=E("h1");m(t,"style","margin:0;font-size:2.5rem;font-weight:700"),H(t,"404");let n=E("p");return m(n,"style","margin:0;opacity:.7"),H(n,"This page could not be found."),e.appendChild(t),e.appendChild(n),e}function W(e){let t=e.history??Ht(),n=Kt({routes:e.routes,base:e.base,history:t}),[r,o]=U(n.state()),s=n.subscribe(o);Ee(()=>{s(),n.destroy()});let i=T(()=>(r().match?.matched??[]).filter(f=>f.component)),a={router:n,location:T(()=>r().location),params:T(()=>r().match?.params??{})},u={depth:-1,matched:i,params:a.params,location:a.location,notFound:()=>Bt(e.notFound)},d;return z.Provider({value:a,get children(){return d??=qt(u)}})}var Xt={router:{navigate:()=>{}},location:()=>({pathname:"",search:"",hash:"",query:{}}),params:()=>({})};function C(){let e=Me(z);if(e)return e;if(typeof window>"u")return Xt;throw new Error("[router-next] useRouter must be used within <Router>")}function Yt(){let e=C().params;return T(()=>e(),{},{equals:(t,n)=>JSON.stringify(t)===JSON.stringify(n)})}function Gt(){let{location:e}=C();return new Proxy({},{get:(t,n)=>e()[n],has:(t,n)=>n in e(),ownKeys:()=>Reflect.ownKeys(e()),getOwnPropertyDescriptor:(t,n)=>Object.getOwnPropertyDescriptor(e(),n)})}function q(){let{router:e}=C();return(t,n)=>e.navigate(t,n)}var p=e=>typeof e=="function"?e():e,Qt=new Set(["href","slot","class","className","active","activeClass","replace","children"]);function B(e){let t=Me(z),n=typeof document>"u",r=()=>t?.router.navigate(p(e.href)??"",{replace:p(e.replace)}),o=E("a");m(o,"href",p(e.href)??""),e.slot&&m(o,"slot",p(e.slot));for(let i of Object.keys(e)){if(Qt.has(i))continue;let a=e[i];a!=null&&typeof a!="function"&&m(o,i,String(a))}if(typeof o.addEventListener=="function")o.addEventListener("click",i=>{i.metaKey||i.ctrlKey||i.shiftKey||i.altKey||(i.preventDefault(),r())});else{let i=p(e.className??e.class)??"";i&&m(o,"class",i)}typeof o.addEventListener=="function"&&$(()=>{let i=p(e.href)??"";o.setAttribute("href",i);let a=p(e.className??e.class)??"",u=p(e.activeClass)??"",d=p(e.active)??t?.location().pathname===i;o.className=[a,d?u:""].filter(Boolean).join(" ")});let s=e.children;return s!=null&&H(o,s),o}import{html as Wo,svg as qo}from"@fluixi/dom";import{query as Jo,queryAll as Xo,closest as Yo,addClass as Go,removeClass as Qo,toggleClass as Zo,hasClass as ei,setAttribute as ti,getAttribute as ni,removeAttribute as ri,setStyles as oi,getStyle as ii,createElement as si,removeChildren as ai,appendChildren as ci,isVisible as ui,scrollIntoView as di,getOffset as li,delegate as fi,waitForElement as pi,observeIntersection as mi,observeResize as yi}from"@fluixi/dom";import{classMap as hi,styleMap as xi,Island as vi,hydrateIslands as Ti,mergeProps as Ci,splitProps as bi}from"@fluixi/dom";import{Show as mo,For as yo,Index as go,Switch as ho,Match as xo,Dynamic as vo,ErrorBoundary as To,Portal as Co,ClientOnly as bo,NoSsr as So}from"@fluixi/dom";import{createStore as Pi,untrackStore as Ri,unwrap as Ai,Store as ki}from"@fluixi/reactive/store";var gn="0.0.1",hn="Fluixi";var xn={createComponent:b,onMount:P,onUnmount:R,createEffect:Zt,createMemo:en,createSignal:tn,createContext:x,createRoot:nn,createDeferred:ln,createComputed:rn,createRenderEffect:on,createSelector:pn,onCleanup:sn,getOwner:an,runWithOwner:cn,batch:un,untrack:dn,useContext:v,setOwner:fn,Router:W,Link:B,useRouter:C,useNavigate:q,read:mn,reduce:yn,VERSION:gn,FRAMEWORK_NAME:hn};g("fluixi element main");g("fluixi index");export{N as $component,ve as Await,bo as ClientOnly,vo as Dynamic,To as ErrorBoundary,hn as FRAMEWORK_NAME,yo as For,go as Index,vi as Island,B as Link,xo as Match,So as NoSsr,Co as Portal,W as Router,mo as Show,ki as Store,A as Suspense,ye as SuspenseList,ho as Switch,M as VERSION,Go as addClass,ci as appendChildren,un as batch,hi as classMap,mt as cleanupDelegation,Et as clientOnly,Yo as closest,Se as composeProviders,b as createComponent,rn as createComputed,Ct as createConsumer,x as createContext,Tt as createContextWithProvider,Lo as createDebounce,Mo as createDebouncedResource,Do as createDebouncedSignal,ln as createDeferred,Zt as createEffect,Pe as createIsomorphicState,Ot as createIsomorphicStore,en as createMemo,ke as createMemoryStorage,j as createProvider,on as createRenderEffect,Oo as createResource,nn as createRoot,pn as createSelector,tn as createSignal,Pi as createStore,Mt as createTheme,xn as default,xe as deferred,fi as delegate,si as domCreateElement,Ao as effect,O as env,ni as getAttribute,li as getOffset,an as getOwner,ii as getStyle,ei as hasClass,Wo as html,Ti as hydrateIslands,pt as initDelegation,Ae as isClient,pe as isJSXElement,le as isLitResult,de as isNode,ft as isRenderable,Re as isServer,ui as isVisible,S as lazy,Ro as memo,Ci as mergeProps,mi as observeIntersection,yi as observeResize,sn as onCleanup,P as onMount,R as onUnmount,lt as portal,Jo as query,Xo as queryAll,mn as read,yn as reduce,ri as removeAttribute,ai as removeChildren,Qo as removeClass,Ce as render,ko as resource,cn as runWithOwner,di as scrollIntoView,ti as setAttribute,fn as setOwner,oi as setStyles,Po as signal,bi as splitProps,k as storage,xi as styleMap,qo as svg,Zo as toggleClass,dn as untrack,Ri as untrackStore,Ai as unwrap,oe as useCallback,v as useContext,F as useEffect,re as useEventListener,Gt as useLocation,ee as useMemo,q as useNavigate,Yt as useParams,bt as useProvide,ne as useReducer,te as useRef,C as useRouter,pi as waitForElement};
1
+ var L="1.0.0-alpha.81";import{signal as So,memo as wo,effect as Po,resource as Ro,createEffect as Qt,createMemo as Zt,createSignal as en,createResource as Ao,createRoot as tn,createComputed as nn,createRenderEffect as rn,onCleanup as on,getOwner as sn,runWithOwner as an,batch as cn,untrack as un,createDeferred as dn,setOwner as ln}from"@fluixi/reactive/signal";import{createDebounce as Oo,createDebouncedResource as Eo,createDebouncedSignal as Lo,createSelector as fn}from"@fluixi/reactive/signal";import{readSignal as pn,reduceSignal as mn}from"@fluixi/reactive/operators";import{createRoot as st}from"@fluixi/reactive/signal";import{registerCoreVersion as De}from"@fluixi/dom";import{stampVersions as B,warnOnVersionSkew as J,versions as Sn}from"@fluixi/dom";De(L);import{isDOMNode as at,delegateEvents as ve,insert as ct}from"@fluixi/dom";import{createComponent as Ie,asComponent as Ne}from"@fluixi/dom";import{untrack as X,onCleanup as g,getOwner as D,createEffect as b,createMemo as Y,createSignal as Fe,isSignal as _e,batch as Ve,runWithOwner as G,isOwnerDisposed as je}from"@fluixi/reactive/signal";var M=Symbol.for("fluixi-lifecycle");function Q(){let e=D();if(!e)return null;if(!e[M]){let t={mounts:[],effects:[],scheduled:!1};e[M]=t}return e[M]}function Z(e){if(e.scheduled)return;e.scheduled=!0;let t=D();queueMicrotask(()=>{if(je(t)){e.mounts=[],e.effects=[];return}G(t,()=>{for(let n of e.mounts)try{let r=n();typeof r=="function"&&g(r)}catch(r){console.error("Error in onMount callback:",r)}for(let n of e.effects){let r;b(()=>{r&&r(),r=n()}),g(()=>{r&&r()})}e.mounts=[],e.effects=[]})})}function S(e,t){return Ie(e,t)}function ee(e,t){let n=typeof e=="function"?X(()=>e(t)):e;if(n!=null&&(typeof n=="function"||typeof n=="object")&&!_e(n)){try{n.$name=e.name}catch{}return Ne(n)}return n}function w(e,t=!0){let n=Q();if(n){if(!t){n.scheduled||e();return}n.mounts.push(e),Z(n)}else{if(!t){e();return}b(()=>{let r=X(e);typeof r=="function"&&g(r)})}}function P(e){g(e)}function I(e){let t=Q();if(t)t.effects.push(e),Z(t);else{let n;b(()=>{n&&n(),n=e()}),g(()=>{n&&n()})}}function te(e){return Y(e)}function ne(e){let t={current:e};return g(()=>{t.current=null}),t}function re(e,t){let[n,r]=Fe(t);return[n,s=>{r(e(n(),s))}]}function oe(e,t,n,r){I(()=>{let o=e&&"current"in e?e.current:e;if(o)return o.addEventListener(t,n,r),()=>{o.removeEventListener(t,n,r)}})}function ie(e){return e}import{createSignal as N,createMemo as Ke,createEffect as He,createRenderEffect as Ue,isSignal as se,readChildren as $e,useContext as ze,createContext as We,createSuspenseBoundary as qe,provideSuspense as ae}from"@fluixi/reactive/signal";import{asSuspense as Be,isComponent as Je,createComponent as ce,runWithoutHydration as Xe}from"@fluixi/dom";function ue(e){return typeof window>"u"?!1:typeof Node=="function"&&e instanceof Node?!0:!!(e&&typeof e=="object"&&typeof e.nodeType=="number")}function de(e){return!e||typeof e!="object"?!1:!!(typeof e._$litType$<"u"||typeof e._$litDirective$<"u"||Array.isArray(e.strings)&&Array.isArray(e.values))}function le(e){return!!(e&&typeof e=="object"&&typeof e.then=="function"||e instanceof Promise)}function fe(e){return!!(e&&typeof e=="object"&&"type"in e&&"props"in e)}var pe=We();function R(e){return ce(Ye,e)}function Ye(e){let t=qe(),n=ze(pe),r=n?n.register(t.inFallback):void 0;function o(c){return c==null||typeof c=="boolean"?null:typeof c=="function"&&Je(c)&&!se(c)?c():c}let s=Xe(()=>o(e.fallback??null)),i=ae(t,()=>$e(()=>e.children)),a=(c,y)=>{if(!(y>8))if(Array.isArray(c))for(let q of c)a(q,y+1);else typeof c=="function"&&se(c)&&a(c(),y+1)};ae(t,()=>{Ue(()=>a(i,0))});let[u,d]=N(void 0),f=le(i);return f&&(t.increment(),i.then(c=>{d(()=>c),t.decrement()},()=>t.decrement())),Ke(()=>{let c=r?r.showFallback():t.inFallback();return process.env.FX_DEBUG&&console.log("[s] output; showFallback:",c),c?s:f?u():i})}function me(e){return ce(Ge,e)}function Ge(e){let{revealOrder:t="together",tail:n}=e,r=[];function o(){if(t==="together"){let i=r.every(a=>!a.inFallback());r.forEach(a=>{a.setShowContent(i),a.setShowFallback(!i)})}else{let i=t==="backwards"?[...r].reverse():r,a=!1;for(let u of i)a||u.inFallback()?(a=!0,u.setShowContent(!1),u.setShowFallback(n!=="hidden")):(u.setShowContent(!0),u.setShowFallback(!1))}}let s={register:i=>{let[a,u]=N(!0),[d,f]=N(!1);return r.push({inFallback:i,setShowContent:u,setShowFallback:f}),He(()=>{i(),o()}),{showContent:a,showFallback:d}}};return pe.Provider({value:s,children:e.children})}Be(R);Object.defineProperty(R,"__suspense",{value:!0,enumerable:!0});import{untrack as ye,createMemo as Qe,createResource as Ze}from"@fluixi/reactive/signal";function C(e,t){let n,r,o;function s(){return r||(r=e().then(a=>n=a.default)),r}t?.preload&&s();let i=(a=>{if(n){let u=n;return ye(()=>u(a))}if(!o){let[u]=Ze(()=>s(),{transport:!1});if(o=u,u.error)throw u.error}return Qe(()=>{let u=o();return u?ye(()=>u(a)):void 0},void 0,{name:"lazy"})});return i.preload=()=>s().then(()=>{}),i.$lazy=!0,i.loader=e,i}import{createMemo as et,createSignal as tt}from"@fluixi/reactive/signal";import{observeIntersection as nt}from"@fluixi/dom/utils";var ge=typeof window>"u";function he(e,t){let n=t.export??"default",r=C(()=>e().then(s=>{let i=s[n];if(typeof i!="function")throw new Error(`deferred(): module has no '${n}' export (got ${typeof i}).`);return{default:i}}),{fallback:t.fallback});function o(s){if(t.strategy.kind==="never")return ge?r(s):null;if(ge||t.strategy.kind==="eager")return r(s);let[i,a]=tt(!1),u=()=>{r.preload().then(()=>a(!0))},d=t.strategy.kind==="visible"?rt():void 0;return ot(t.strategy,u,d),et(()=>i()?r(s):d??t.fallback??null,void 0,{name:"deferred"})}return o.preload=r.preload,o}function rt(){let e=document.createElement("span");return e.setAttribute("data-fx-load","visible"),e.style.display="block",e}function ot(e,t,n){let r=!1,o=()=>{r||(r=!0,t())};switch(e.kind){case"idle":{let s=globalThis.requestIdleCallback;s?s(o):setTimeout(o,1);return}case"visible":{if(!n||typeof IntersectionObserver>"u"){o();return}let s=nt(n,i=>{i&&(s(),o())},{rootMargin:e.rootMargin??"0px"});return}case"interaction":{let s=()=>{for(let i of e.events)document.removeEventListener(i,s,!0);o()};for(let i of e.events)document.addEventListener(i,s,{capture:!0,passive:!0});return}case"media":{if(typeof matchMedia>"u"){o();return}let s=matchMedia(e.query);if(s.matches){o();return}let i=a=>{a.matches&&(s.removeEventListener("change",i),o())};s.addEventListener("change",i);return}default:o()}}import{createResource as it}from"@fluixi/reactive/signal";function xe(e){let t=()=>{let r=e.value;return typeof r=="function"?r():r},[n]=it(t);return()=>{if(n.loading)return e.fallback;let r=e.children;return typeof r=="function"?r(n()):r}}var F=typeof window>"u";function Te(e,t,n={}){if(ve(["click","input","change","submit"]),F)throw new Error("render() is for client-side only. Use renderToString() on server.");if(!t)throw new Error("Container element is required");let r;return st(o=>{r=o;let s=typeof e=="function"?e():e;t.textContent="",B(t),J(),ct(t,()=>s)}),()=>{r&&(r(),r=void 0)}}function ut(e){return e&&typeof e=="object"&&(e._$litType$!==void 0||e._$litDirective$!==void 0)}function dt(e,t,n={}){let r=document.createElement("div");r.setAttribute("data-portal","true"),t.appendChild(r);let o=Te(e,r,n);return()=>{o(),t.contains(r)&&t.removeChild(r)}}function lt(e){return!!(e==null||typeof e=="function"||at(e)||ut(e)||Array.isArray(e)||typeof e=="string"||typeof e=="number"||typeof e=="boolean")}function ft(){F||ve(["click","input","change","submit"])}function pt(){}import{asProvider as mt}from"@fluixi/dom";import{createContext as yt,useContext as gt}from"@fluixi/reactive/signal";import{readChildren as ht}from"@fluixi/reactive/signal";var Ce=!1;function xt(){Ce||(Ce=!0,!(typeof process<"u")&&console.warn("[fluixi] createProvider({ context, value, children }) reads `children` eagerly: the object literal materialises `children` BEFORE the context is stamped, so a routed <Outlet/> that has siblings inside the provider renders detached and its descendants see no context under SSR. Use the lazy form instead:\n createProvider(Context, value, props) // children stays a getter\n // or JSX: <Context.Provider value={…}>{props.children}</Context.Provider>"))}function _(e,t,n){let r=!!e?.Provider,o=r?e:e.context,s=r?t:e.value,i=r?!1:e.debug??!1;r||xt();let a=typeof s=="function"?s():s,u=r?n:e;return o.Provider({value:a,get children(){return u?.children},debug:i})}function vt(e){let t=h(e);return[t,r=>_(t,r.value,r)]}function be(e,t){if(e.length===0)return ht(()=>t);let[n,r]=e[0],o=e.slice(1);return _(n,r,{get children(){return be(o,t)}})}function Tt(e){return t=>{let n=x(e);return t.children(n)}}function Ct(e,t){let n=x(e);return n===e.defaultValue?t():n}function h(e){let t=yt(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:mt(n),defaultValue:e}}function x(e){let t=gt(e);return t!==void 0?t:e.defaultValue}import{createSignal as bt,createMemo as St}from"@fluixi/reactive/signal";import{getServerData as wt}from"@fluixi/dom";var Pt="__fluixi_iso_states__",Rt="__iso:";function At(){return globalThis[Pt]??=new Map}function Se(e){if(typeof window>"u")return;let t=wt();return t?t[Rt+e]:void 0}function we(e,t){let n=Se(e),r=n!==void 0?n:typeof window<"u"&&t.client?t.client():t.fallback,[o,s]=bt(r);return At().set(e,{server:t.server,set:s}),{value:o,set:s,key:e}}function kt(e,t){let n=Se(e)!==void 0,r=we(e,{server:t.server,fallback:t.fallback}),o=()=>r.value()??t.fallback,s=c=>{if(!(!t.persist||typeof localStorage>"u"))try{localStorage.setItem(t.persist,JSON.stringify(c))}catch{}},i=c=>{r.set(c),s(c)},a=(c,y)=>{i({...o(),[c]:y})},u={};for(let c of Object.keys(t.fallback))u[c]=St(()=>o()[c]);let d=null;return{value:o,fields:u,set:i,setField:a,ensureInit:()=>n||!t.client?Promise.resolve():(d||(d=Promise.resolve(t.client()).then(c=>{i(c)}).catch(c=>{throw d=null,c})),d),key:e}}var Pe=typeof document>"u",Re=!Pe;function Ae(){let e=new Map;return{getItem:t=>e.has(t)?e.get(t):null,setItem:(t,n)=>{e.set(t,String(n))},removeItem:t=>{e.delete(t)},clear:()=>e.clear(),key:t=>Array.from(e.keys())[t]??null,get length(){return e.size}}}var A=typeof localStorage<"u"?localStorage:Ae(),k={get window(){return typeof window<"u"?window:void 0},get document(){return typeof document<"u"?document:void 0}};function Ot(e,t){return Re?e():t}import{createSignal as ke}from"@fluixi/reactive/signal";function Et(e){return e?e===!0?{dark:"dark",light:"light"}:e:null}function Lt(e){let t=e.storageKey??"theme",n=e.attribute??"data-theme",r=Et(e.system),o=()=>{let l=A.getItem(t);return l&&e.themes.includes(l)?l:r&&k.window?.matchMedia?.("(prefers-color-scheme: dark)")?.matches?r.dark:r?r.light:e.default},[s,i]=ke(o()),[a,u]=ke(!1),d=l=>{k.document?.documentElement.setAttribute(n,l);try{A.setItem(t,l)}catch{}},f=l=>{if(!e.themes.includes(l))return;let Me=s();i(()=>l),d(l),e.onChange?.(l,Me),e.load&&(u(!0),e.onLoading?.(l),Promise.resolve(e.load(l)).finally(()=>{u(!1),e.onLoaded?.(l)}))};return{value:s,isLoading:a,set:f,toggle:()=>{let l=e.themes.indexOf(s());f(e.themes[(l+1)%e.themes.length])},init:()=>d(s()),headScript:()=>`<script>(function(){try{var c=${JSON.stringify({k:t,a:n,d:e.default,sys:r})},t=localStorage.getItem(c.k);if(!t&&c.sys)t=matchMedia('(prefers-color-scheme: dark)').matches?c.sys.dark:c.sys.light;if(!t)t=c.d;document.documentElement.setAttribute(c.a,t);}catch(e){}})();<\/script>`}}import{createSignal as K,createMemo as v,createResource as _t,createEffect as H,getOwner as Vt,onCleanup as Oe,untrack as V}from"@fluixi/reactive/signal";import{insert as j,createComponent as Ee,createNativeElement as O,setAttribute as m}from"@fluixi/dom";import{createContext as E,useContext as Le}from"@fluixi/reactive/signal";import{get as Br}from"@fluixi/utils/object";import{deepEqual as Xr}from"@fluixi/utils/compare";import{createRouter as jt,createBrowserHistory as Kt,matchRoutes as Gr,matchPath as Qr}from"@fluixi/router";import{createMemoryHistory as to,createBrowserHistory as no,matchRoutes as ro,matchPath as oo}from"@fluixi/router";import{createResource as Or,createSignal as Nt}from"@fluixi/reactive/signal";var Mt=new Map;function Dt(){Mt.clear()}function It(){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,s=o.nodeValue||"";(s.startsWith("#")||s.startsWith("/"))&&n.push(o)}n.forEach(o=>o.remove()),Dt()}typeof window<"u"&&window.addEventListener("load",()=>{setTimeout(It,100)});var[Dr,Ir]=Nt(0);var Ft=h(),Nr=Ft.Provider;import{runWithOwner as co}from"@fluixi/reactive/signal";var U=E(),Ht=E(),Ut=E(),$t=E();function zt(e,t,n){let r,o=e.route.data;if(typeof o=="function"){let f=!1;Oe(()=>{f=!0});let c=Vt(),[y]=_t(()=>o({params:n.params,location:n.location},c,()=>f));r=y}let s=()=>$t.Provider({value:r,get children(){return Ut.Provider({value:e.params,get children(){return Ht.Provider({value:{depth:t,...n},get children(){return Ee(e.component,{})}})}})}});if(!r)return s();let i=r,a=()=>i.loading,[u,d]=K(V(()=>!a()));return H(()=>d(!a())),v(()=>u()?s():null)}function Wt(e){let t=e.depth+1,[n,r]=K(V(()=>e.matched()[t]?.component));return H(()=>{let o=e.matched()[t]?.component;r(()=>o)}),v(()=>{if(!n())return e.notFound?e.notFound():null;let s=V(()=>e.matched())[t];return zt(s,t,{matched:e.matched,params:e.params,location:e.location})})}function qt(e){return e==null?Bt():typeof e=="function"?Ee(e,{}):e}function Bt(){let e=O("div");m(e,"class","fx-not-found"),m(e,"role","main"),m(e,"style","min-height:60vh;display:grid;place-content:center;gap:.25rem;text-align:center;font-family:system-ui,-apple-system,sans-serif");let t=O("h1");m(t,"style","margin:0;font-size:2.5rem;font-weight:700"),j(t,"404");let n=O("p");return m(n,"style","margin:0;opacity:.7"),j(n,"This page could not be found."),e.appendChild(t),e.appendChild(n),e}function $(e){let t=e.history??Kt(),n=jt({routes:e.routes,base:e.base,history:t}),[r,o]=K(n.state()),s=n.subscribe(o);Oe(()=>{s(),n.destroy()});let i=v(()=>(r().match?.matched??[]).filter(f=>f.component)),a={router:n,location:v(()=>r().location),params:v(()=>r().match?.params??{})},u={depth:-1,matched:i,params:a.params,location:a.location,notFound:()=>qt(e.notFound)},d;return U.Provider({value:a,get children(){return d??=Wt(u)}})}var Jt={router:{navigate:()=>{}},location:()=>({pathname:"",search:"",hash:"",query:{}}),params:()=>({})};function T(){let e=Le(U);if(e)return e;if(typeof window>"u")return Jt;throw new Error("[router] useRouter must be used within <Router>")}function Xt(){let e=T().params;return v(()=>e(),{},{equals:(t,n)=>JSON.stringify(t)===JSON.stringify(n)})}function Yt(){let{location:e}=T();return new Proxy({},{get:(t,n)=>e()[n],has:(t,n)=>n in e(),ownKeys:()=>Reflect.ownKeys(e()),getOwnPropertyDescriptor:(t,n)=>Object.getOwnPropertyDescriptor(e(),n)})}function z(){let{router:e}=T();return(t,n)=>e.navigate(t,n)}var p=e=>typeof e=="function"?e():e,Gt=new Set(["href","slot","class","className","active","activeClass","replace","children"]);function W(e){let t=Le(U),n=typeof document>"u",r=()=>t?.router.navigate(p(e.href)??"",{replace:p(e.replace)}),o=O("a");m(o,"href",p(e.href)??""),e.slot&&m(o,"slot",p(e.slot));for(let i of Object.keys(e)){if(Gt.has(i))continue;let a=e[i];a!=null&&typeof a!="function"&&m(o,i,String(a))}if(typeof o.addEventListener=="function")o.addEventListener("click",i=>{i.metaKey||i.ctrlKey||i.shiftKey||i.altKey||(i.preventDefault(),r())});else{let i=p(e.className??e.class)??"";i&&m(o,"class",i)}typeof o.addEventListener=="function"&&H(()=>{let i=p(e.href)??"";o.setAttribute("href",i);let a=p(e.className??e.class)??"",u=p(e.activeClass)??"",d=p(e.active)??t?.location().pathname===i;o.className=[a,d?u:""].filter(Boolean).join(" ")});let s=e.children;return s!=null&&j(o,s),o}import{html as Uo,svg as $o}from"@fluixi/dom";import{query as Wo,queryAll as qo,closest as Bo,addClass as Jo,removeClass as Xo,toggleClass as Yo,hasClass as Go,setAttribute as Qo,getAttribute as Zo,removeAttribute as ei,setStyles as ti,getStyle as ni,createElement as ri,removeChildren as oi,appendChildren as ii,isVisible as si,scrollIntoView as ai,getOffset as ci,delegate as ui,waitForElement as di,observeIntersection as li,observeResize as fi}from"@fluixi/dom";import{classMap as mi,styleMap as yi,Island as gi,hydrateIslands as hi,mergeProps as xi,splitProps as vi}from"@fluixi/dom";import{Show as fo,For as po,Index as mo,Switch as yo,Match as go,Dynamic as ho,ErrorBoundary as xo,Portal as vo,ClientOnly as To,NoSsr as Co}from"@fluixi/dom";import{createStore as bi,untrackStore as Si,unwrap as wi,Store as Pi}from"@fluixi/reactive/store";var yn="0.0.1",gn="Fluixi";var hn={createComponent:S,onMount:w,onUnmount:P,createEffect:Qt,createMemo:Zt,createSignal:en,createContext:h,createRoot:tn,createDeferred:dn,createComputed:nn,createRenderEffect:rn,createSelector:fn,onCleanup:on,getOwner:sn,runWithOwner:an,batch:cn,untrack:un,useContext:x,setOwner:ln,Router:$,Link:W,useRouter:T,useNavigate:z,read:pn,reduce:mn,VERSION:yn,FRAMEWORK_NAME:gn};export{ee as $component,xe as Await,To as ClientOnly,ho as Dynamic,xo as ErrorBoundary,gn as FRAMEWORK_NAME,po as For,mo as Index,gi as Island,W as Link,go as Match,Co as NoSsr,vo as Portal,$ as Router,fo as Show,Pi as Store,R as Suspense,me as SuspenseList,yo as Switch,L as VERSION,Jo as addClass,ii as appendChildren,cn as batch,mi as classMap,pt as cleanupDelegation,Ot as clientOnly,Bo as closest,be as composeProviders,S as createComponent,nn as createComputed,Tt as createConsumer,h as createContext,vt as createContextWithProvider,Oo as createDebounce,Eo as createDebouncedResource,Lo as createDebouncedSignal,dn as createDeferred,Qt as createEffect,we as createIsomorphicState,kt as createIsomorphicStore,Zt as createMemo,Ae as createMemoryStorage,_ as createProvider,rn as createRenderEffect,Ao as createResource,tn as createRoot,fn as createSelector,en as createSignal,bi as createStore,Lt as createTheme,hn as default,he as deferred,ui as delegate,ri as domCreateElement,Po as effect,k as env,Zo as getAttribute,ci as getOffset,sn as getOwner,ni as getStyle,Go as hasClass,Uo as html,hi as hydrateIslands,ft as initDelegation,Re as isClient,fe as isJSXElement,de as isLitResult,ue as isNode,lt as isRenderable,Pe as isServer,si as isVisible,C as lazy,wo as memo,xi as mergeProps,li as observeIntersection,fi as observeResize,on as onCleanup,w as onMount,P as onUnmount,dt as portal,Wo as query,qo as queryAll,pn as read,mn as reduce,ei as removeAttribute,oi as removeChildren,Xo as removeClass,Te as render,Ro as resource,an as runWithOwner,ai as scrollIntoView,Qo as setAttribute,ln as setOwner,ti as setStyles,So as signal,vi as splitProps,A as storage,yi as styleMap,$o as svg,Yo as toggleClass,un as untrack,Si as untrackStore,wi as unwrap,ie as useCallback,x as useContext,I as useEffect,oe as useEventListener,Yt as useLocation,te as useMemo,z as useNavigate,Xt as useParams,Ct as useProvide,re as useReducer,ne as useRef,T as useRouter,di as waitForElement};
@@ -2,6 +2,6 @@ export * from './lib/jsx-runtime/index.js';
2
2
  export type { JSX } from "@fluixi/jsx";
3
3
  /**
4
4
  * Global JSX namespace for "jsx": "preserve" mode.
5
- * Applied automatically when any file imports from @fluixi/core.
5
+ * Applied automatically when any file imports from fluixi.
6
6
  */
7
7
  //# sourceMappingURL=jsx-runtime.d.ts.map
@@ -1,7 +1,7 @@
1
1
  export * from './lib/jsx-runtime/index.js';
2
2
  /**
3
3
  * Global JSX namespace for "jsx": "preserve" mode.
4
- * Applied automatically when any file imports from @fluixi/core.
4
+ * Applied automatically when any file imports from fluixi.
5
5
  */
6
6
  // declare global {
7
7
  // namespace JSX {
@@ -0,0 +1 @@
1
+ var c=!1,u=new Map;function g(){return c}function x(e){c=e}function w(e,t){u.set(e,t)}function h(e){return u.get(e)}function p(){u.clear()}function T(){if(typeof window>"u")return!1;let e=document.getElementById("__FLUIXI_HYDRATION__");if(!e||e.getAttribute("type")!=="application/json")return!1;try{let t=e.textContent||"{}",o=JSON.parse(t);for(let[r,n]of Object.entries(o))u.set(r,n);return!0}catch(t){return console.error("Failed to deserialize hydration data:",t),!1}}function l(){if(typeof window>"u")return;let e=document.getElementById("__FLUIXI_HYDRATION__");e&&e.remove();let t=document.createTreeWalker(document.body,NodeFilter.SHOW_COMMENT,null),o=[],r;for(;r=t.nextNode();){let n=r,a=n.nodeValue||"";(a.startsWith("#")||a.startsWith("/"))&&o.push(n)}o.forEach(n=>n.remove()),p()}typeof window<"u"&&window.addEventListener("load",()=>{setTimeout(l,100)});function C(){return typeof window>"u"}import{untrack as f,createMemo as y,createResource as m}from"@fluixi/reactive/signal";function b(e,t){let o,r,n;function a(){return r||(r=e().then(d=>o=d.default)),r}t?.preload&&a();let s=(d=>{if(o){let i=o;return f(()=>i(d))}if(!n){let[i]=m(()=>a(),{transport:!1});if(n=i,i.error)throw i.error}return y(()=>{let i=n();return i?f(()=>i(d)):void 0},void 0,{name:"lazy"})});return s.preload=()=>a().then(()=>{}),s.$lazy=!0,s.loader=e,s}export{g as a,x as b,w as c,h as d,T as e,l as f,C as g,b as h};
@@ -1 +1 @@
1
- "use strict";var I=Object.defineProperty;var Me=Object.getOwnPropertyDescriptor;var De=Object.getOwnPropertyNames;var Ne=Object.prototype.hasOwnProperty;var S=(e,t)=>()=>(e&&(t=e(e=0)),t);var Y=(e,t)=>{for(var n in t)I(e,n,{get:t[n],enumerable:!0})},Fe=(e,t,n,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of De(t))!Ne.call(e,r)&&r!==n&&I(e,r,{get:()=>t[r],enumerable:!(o=Me(t,r))||o.enumerable});return e};var He=e=>Fe(I({},"__esModule",{value:!0}),e);function Z(){return Q}function V(e){Q=e}function ee(e,t){M.set(e,t)}function te(e){return M.get(e)}function je(){M.clear()}function ne(){if(typeof window>"u")return!1;let e=document.getElementById("__FLUIXI_HYDRATION__");if(!e||e.getAttribute("type")!=="application/json")return!1;try{let t=e.textContent||"{}",n=JSON.parse(t);for(let[o,r]of Object.entries(n))M.set(o,r);return!0}catch(t){return console.error("Failed to deserialize hydration data:",t),!1}}function U(){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()),je()}function re(){return typeof window>"u"}var Q,M,$=S(()=>{"use strict";Q=!1,M=new Map;typeof window<"u"&&window.addEventListener("load",()=>{setTimeout(U,100)})});function R(e){(0,D.registerCreateComponent)(oe)}function oe(e,t){return ie(e,t)}function ie(e,t){let n=typeof e=="function"?(0,p.untrack)(()=>e(t)):e;if(n!=null&&(typeof n=="function"||typeof n=="object")&&!(0,p.isSignal)(n)){try{n.$name=e.name}catch{}return(0,D.asComponent)(n)}return n}var D,p,A=S(()=>{"use strict";D=require("@fluixi/dom"),p=require("@fluixi/reactive/signal")});function N(e,t){let n,o,r;function i(){return o||(o=e().then(s=>n=s.default)),o}t?.preload&&i();let a=(s=>{if(n){let d=n;return(0,w.untrack)(()=>d(s))}if(!r){let[d]=(0,w.createResource)(()=>i(),{transport:!1});if(r=d,d.error)throw d.error}return(0,w.createMemo)(()=>{let d=r();return d?(0,w.untrack)(()=>d(s)):void 0},void 0,{name:"lazy"})});return a.preload=()=>i().then(()=>{}),a.$lazy=!0,a.loader=e,a}var w,F=S(()=>{"use strict";w=require("@fluixi/reactive/signal")});function fe(e){let t=(0,K.createContext)(e),n=o=>(o.debug,t.Provider({value:o.value,get children(){return o.children},debug:o.debug}));return typeof Symbol<"u"&&Symbol.for&&(n.$$typeof=Symbol.for("react.provider")),n.$$typeof=Symbol.for("react.provider"),{id:t.id,Provider:(0,de.asProvider)(n),defaultValue:e}}var de,K,Ke,le=S(()=>{"use strict";de=require("@fluixi/dom"),K=require("@fluixi/reactive/signal"),Ke=require("@fluixi/reactive/signal");A();R("index")});function pe(e,t){return async(...n)=>{let o=t+":"+JSON.stringify(n);if(Z()||typeof window<"u"){let i=te(o);if(i!==void 0)return i}if(L.has(o))return L.get(o);if(k.has(o))return k.get(o);let r=Promise.resolve(e(...n)).then(i=>(L.set(o,i),k.delete(o),re()&&ee(o,i),i),i=>{throw k.delete(o),i});return k.set(o,r),r}}function ye(e){let t=typeof e=="string"?n=>n.startsWith(e):e;for(let n of L.keys())t(n)&&(L.delete(n),We.add(n));qe(n=>n+1)}function me(e,t){let[n]=(0,O.createResource)(t||(()=>!0),e);return n}function ge(e){return q.has(e)||q.set(e,(0,O.createSignal)(void 0)),q.get(e)}function W(e,t){let n=t||e.name||"action",o=async r=>{let[,i]=ge(n),a=()=>i(void 0),s=()=>o(r);i({input:r,pending:!0,clear:a,retry:s});try{let d=await e(r);return i({input:r,result:d,pending:!1,clear:a,retry:s}),d}catch(d){throw i({input:r,error:d,pending:!1,clear:a,retry:s}),d}};return o.url=n,o.with=r=>W((...i)=>e(r,...i),t),o}function he(e){let[t]=ge(e.url);return t}function xe(e){return e}var O,L,k,vn,qe,We,q,Xe,Tn,ve=S(()=>{"use strict";O=require("@fluixi/reactive/signal");$();le();L=new Map,k=new Map;[vn,qe]=(0,O.createSignal)(0),We=new Set;q=new Map;Xe=fe(),Tn=Xe.Provider});var Ee={};Y(Ee,{A:()=>dt,Form:()=>ft,Link:()=>Ae,Outlet:()=>Qe,Redirect:()=>Ze,Router:()=>Ge,action:()=>W,cache:()=>pe,createAsync:()=>me,createBrowserHistory:()=>v.createBrowserHistory,createMemoryHistory:()=>v.createMemoryHistory,lazy:()=>N,matchPath:()=>v.matchPath,matchRoutes:()=>v.matchRoutes,preloadRoutes:()=>lt,revalidate:()=>ye,runWithOwner:()=>ke.runWithOwner,select:()=>at,useAction:()=>xe,useLevelParams:()=>tt,useLinkNavigation:()=>st,useLocation:()=>B,useMatch:()=>ot,useNavigate:()=>Pe,useParam:()=>nt,useParamSelector:()=>rt,useParams:()=>X,useRouteData:()=>ct,useRouter:()=>H,useSearchParams:()=>it,useSubmission:()=>he});function Be(e,t,n){let o,r=e.route.data;if(typeof r=="function"){let C=!1;(0,c.onCleanup)(()=>{C=!0});let l=(0,c.getOwner)(),[P]=(0,c.createResource)(()=>r({params:n.params,location:n.location},l,()=>C));o=P}let i=()=>Se.Provider({value:o,get children(){return we.Provider({value:e.params,get children(){return be.Provider({value:{depth:t,...n},get children(){return(0,u.createComponent)(e.component,{})}})}})}});if(!o)return i();let a=o,s=()=>a.loading,[d,m]=(0,c.createSignal)((0,c.untrack)(()=>!s()));return(0,c.createEffect)(()=>m(!s())),(0,c.createMemo)(()=>d()?i():null)}function Re(e){let t=e.depth+1,[n,o]=(0,c.createSignal)((0,c.untrack)(()=>e.matched()[t]?.component));return(0,c.createEffect)(()=>{let r=e.matched()[t]?.component;o(()=>r)}),(0,c.createMemo)(()=>{if(!n())return e.notFound?e.notFound():null;let i=(0,c.untrack)(()=>e.matched())[t];return Be(i,t,{matched:e.matched,params:e.params,location:e.location})})}function Ye(e){return e==null?Je():typeof e=="function"?(0,u.createComponent)(e,{}):e}function Je(){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 t=(0,u.createNativeElement)("h1");(0,u.setAttribute)(t,"style","margin:0;font-size:2.5rem;font-weight:700"),(0,u.insert)(t,"404");let n=(0,u.createNativeElement)("p");return(0,u.setAttribute)(n,"style","margin:0;opacity:.7"),(0,u.insert)(n,"This page could not be found."),e.appendChild(t),e.appendChild(n),e}function Ge(e){let t=e.history??(0,x.createBrowserHistory)(),n=(0,x.createRouter)({routes:e.routes,base:e.base,history:t}),[o,r]=(0,c.createSignal)(n.state()),i=n.subscribe(r);(0,c.onCleanup)(()=>{i(),n.destroy()});let a=(0,c.createMemo)(()=>(o().match?.matched??[]).filter(C=>C.component)),s={router:n,location:(0,c.createMemo)(()=>o().location),params:(0,c.createMemo)(()=>o().match?.params??{})},d={depth:-1,matched:a,params:s.params,location:s.location,notFound:()=>Ye(e.notFound)},m;return _.Provider({value:s,get children(){return m??=Re(d)}})}function Qe(){let e=(0,y.useContext)(be);return e?Re(e):null}function Ze(e){let t=(0,y.useContext)(_);if(t&&typeof window<"u"){let n=!1;(0,c.onCleanup)(()=>n=!0),queueMicrotask(()=>{n||t.router.navigate(e.to,{replace:e.replace!==!1})})}return null}function H(){let e=(0,y.useContext)(_);if(e)return e;if(typeof window>"u")return et;throw new Error("[router-next] useRouter must be used within <Router>")}function X(){let e=H().params;return(0,c.createMemo)(()=>e(),{},{equals:(t,n)=>JSON.stringify(t)===JSON.stringify(n)})}function tt(){return(0,y.useContext)(we)??{}}function nt(e){let t=X();return(0,c.createMemo)(()=>t()[e])}function rt(e,t){let n=X();return(0,c.createMemo)(()=>e(n()),void 0,t?{equals:t}:void 0)}function ot(e){let t=B();return(0,c.createMemo)(()=>(0,x.matchPath)(typeof e=="function"?e():e,t.pathname))}function it(){let e=B(),t=Pe();return[(0,c.createMemo)(()=>e.query),(r,i)=>{let a=new URLSearchParams(e.search);for(let[d,m]of Object.entries(r))m===null?a.delete(d):a.set(d,m);let s=a.toString();t(e.pathname+(s?`?${s}`:""),i)}]}function at(e,t){let n=(o,r)=>(0,Ce.deepEqual)(o,r);return t!==void 0?(0,c.createMemo)(()=>(0,Te.get)(e(),t),void 0,{equals:n}):(0,c.createMemo)(e,void 0,{equals:n})}function B(){let{location:e}=H();return new Proxy({},{get:(t,n)=>e()[n],has:(t,n)=>n in e(),ownKeys:()=>Reflect.ownKeys(e()),getOwnPropertyDescriptor:(t,n)=>Object.getOwnPropertyDescriptor(e(),n)})}function st(e={}){let t=(0,y.useContext)(_);return n=>{if(!t||n.defaultPrevented||n.button!==0||n.metaKey||n.ctrlKey||n.shiftKey||n.altKey)return;let r=n.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 i=new URL(r.href);i.protocol!=="http:"&&i.protocol!=="https:"||i.origin===window.location.origin&&(i.hash&&i.pathname===window.location.pathname&&i.search===window.location.search||e.shouldNavigate&&!e.shouldNavigate(i,r)||(n.preventDefault(),t.router.navigate(i.pathname+i.search+i.hash,{replace:e.replace})))}}function Pe(){let{router:e}=H();return(t,n)=>e.navigate(t,n)}function ct(){return(0,y.useContext)(Se)??(()=>{})}function Ae(e){let t=(0,y.useContext)(_),n=typeof document>"u",o=()=>t?.router.navigate(g(e.href)??"",{replace:g(e.replace)}),r=(0,u.createNativeElement)("a");(0,u.setAttribute)(r,"href",g(e.href)??""),e.slot&&(0,u.setAttribute)(r,"slot",g(e.slot));for(let a of Object.keys(e)){if(ut.has(a))continue;let s=e[a];s!=null&&typeof s!="function"&&(0,u.setAttribute)(r,a,String(s))}if(typeof r.addEventListener=="function")r.addEventListener("click",a=>{a.metaKey||a.ctrlKey||a.shiftKey||a.altKey||(a.preventDefault(),o())});else{let a=g(e.className??e.class)??"";a&&(0,u.setAttribute)(r,"class",a)}typeof r.addEventListener=="function"&&(0,c.createEffect)(()=>{let a=g(e.href)??"";r.setAttribute("href",a);let s=g(e.className??e.class)??"",d=g(e.activeClass)??"",m=g(e.active)??t?.location().pathname===a;r.className=[s,m?d:""].filter(Boolean).join(" ")});let i=e.children;return i!=null&&(0,u.insert)(r,i),r}function ft(e){let t=e.action,n=e.className??e.class,o=t.url??"",r=(0,u.createNativeElement)("form");(0,u.setAttribute)(r,"method","post"),o&&(0,u.setAttribute)(r,"action",o),n&&(0,u.setAttribute)(r,"class",n);for(let a of Object.keys(e)){if(a==="action"||a==="children"||a==="class"||a==="className")continue;let s=e[a];s!=null&&typeof s!="function"&&(0,u.setAttribute)(r,a,String(s))}typeof r.addEventListener=="function"&&r.addEventListener("submit",a=>{a.preventDefault();let s={};new FormData(r).forEach((d,m)=>{s[m]=d}),Promise.resolve(t(s)).catch(()=>{})});let i=e.children;return i!=null&&(0,u.insert)(r,i),r}async function lt(e,t){let n=(0,x.matchRoutes)(e,t);if(!n)return;let o=[];for(let r of n.matched){let i=r.component;i&&typeof i.preload=="function"&&o.push(i.preload())}await Promise.all(o)}var c,u,y,Te,Ce,x,v,ke,_,be,we,Se,et,g,ut,dt,Le=S(()=>{"use strict";c=require("@fluixi/reactive/signal"),u=require("@fluixi/dom"),y=require("@fluixi/reactive/signal"),Te=require("@fluixi/utils/object"),Ce=require("@fluixi/utils/compare"),x=require("@fluixi/router"),v=require("@fluixi/router");ve();F();ke=require("@fluixi/reactive/signal"),_=(0,y.createContext)(),be=(0,y.createContext)(),we=(0,y.createContext)(),Se=(0,y.createContext)();et={router:{navigate:()=>{}},location:()=>({pathname:"",search:"",hash:"",query:{}}),params:()=>({})};g=e=>typeof e=="function"?e():e,ut=new Set(["href","slot","class","className","active","activeClass","replace","children"]);dt=Ae});var gt={};Y(gt,{hydrate:()=>Oe.hydrate,mount:()=>pt,startClient:()=>yt});module.exports=He(gt);var j=require("@fluixi/dom");var G=require("@fluixi/dom");var J="1.0.0-alpha.78";var b=require("@fluixi/dom");(0,G.registerCoreVersion)(J);$();var ce=require("@fluixi/reactive/signal");var E=require("@fluixi/dom");A();A();var f=require("@fluixi/reactive/signal"),h=require("@fluixi/dom");function ae(e){return!!(e&&typeof e=="object"&&typeof e.then=="function"||e instanceof Promise)}var Ie=(0,f.createContext)();function z(e){return(0,h.createComponent)(Ve,e)}function Ve(e){let t=(0,f.createSuspenseBoundary)(),n=(0,f.useContext)(Ie),o=n?n.register(t.inFallback):void 0;function r(l){return l==null||typeof l=="boolean"?null:typeof l=="function"&&(0,h.isComponent)(l)&&!(0,f.isSignal)(l)?l():l}let i=(0,h.runWithoutHydration)(()=>r(e.fallback??null)),a=(0,f.provideSuspense)(t,()=>(0,f.readChildren)(()=>e.children)),s=(l,P)=>{if(!(P>8))if(Array.isArray(l))for(let _e of l)s(_e,P+1);else typeof l=="function"&&(0,f.isSignal)(l)&&s(l(),P+1)};(0,f.provideSuspense)(t,()=>{(0,f.createRenderEffect)(()=>s(a,0))});let[d,m]=(0,f.createSignal)(void 0),C=ae(a);return C&&(t.increment(),a.then(l=>{m(()=>l),t.decrement()},()=>t.decrement())),(0,f.createMemo)(()=>{let l=o?o.showFallback():t.inFallback();return process.env.FX_DEBUG&&console.log("[s] output; showFallback:",l),l?i:C?d():a})}(0,h.asSuspense)(z);Object.defineProperty(z,"__suspense",{value:!0,enumerable:!0});F();var se=require("@fluixi/reactive/signal"),Ue=require("@fluixi/dom/utils");F();var $e=require("@fluixi/reactive/signal");var ze=typeof window>"u";function ue(e,t,n={}){if(R("render"),(0,E.delegateEvents)(["click","input","change","submit"]),ze)throw new Error("render() is for client-side only. Use renderToString() on server.");if(!t)throw new Error("Container element is required");let o;return(0,ce.createRoot)(r=>{o=r;let i=typeof e=="function"?e():e;t.textContent="",(0,b.stampVersions)(t),(0,b.warnOnVersionSkew)(),(0,E.insert)(t,()=>i)}),()=>{o&&(o(),o=void 0)}}A();var T=require("@fluixi/head"),Oe=require("@fluixi/dom");R("client index");function pt(e,t){if(!t)throw new Error("Container element not found for mount()");(0,j.render)(()=>e(),t)}async function yt(e,t={}){let n=typeof t.root=="string"?document.querySelector(t.root):t.root??document.querySelector("#app");if(!n)throw new Error(`[Fluixi] Mount container not found: ${t.root??"#app"}`);let o=!!document.getElementById("__FLUIXI_HYDRATION__")||!!t.routes&&n.firstElementChild!=null,r=t.hydrate??o,i=(0,T.createHead)();if((0,T.setActiveHead)(i),(0,T.stripHeadMarker)(n),r){if(t.routes&&t.routes.length){let{preloadRoutes:a}=await Promise.resolve().then(()=>(Le(),Ee));await a(t.routes,window.location.pathname)}ne(),V(!0),(0,j.hydrate)(()=>e(),n),mt(),setTimeout(()=>{V(!1),U()},100)}else ue(()=>e(),n);(0,T.mountHead)(i)}function mt(){if(typeof window>"u")return;let e=window;typeof e.__FX_REPLAY_STOP__=="function"&&e.__FX_REPLAY_STOP__();let t=e.__FX_REPLAY__;if(e.__FX_REPLAY__=void 0,e.__FX_REPLAY_STOP__=void 0,!(!Array.isArray(t)||t.length===0))for(let n of t){let o=n&&n.target;if(!o||o.isConnected===!1||typeof o.dispatchEvent!="function")continue;let r=n.type,i=r==="click"?new MouseEvent(r,{bubbles:!0,cancelable:!0}):new Event(r,{bubbles:!0,cancelable:!0});o.dispatchEvent(i)}}
1
+ "use strict";var F=Object.defineProperty;var ke=Object.getOwnPropertyDescriptor;var Le=Object.getOwnPropertyNames;var Oe=Object.prototype.hasOwnProperty;var S=(e,t)=>()=>(e&&(t=e(e=0)),t);var W=(e,t)=>{for(var n in t)F(e,n,{get:t[n],enumerable:!0})},_e=(e,t,n,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of Le(t))!Oe.call(e,r)&&r!==n&&F(e,r,{get:()=>t[r],enumerable:!(o=ke(t,r))||o.enumerable});return e};var Me=e=>_e(F({},"__esModule",{value:!0}),e);function J(){return Y}function H(e){Y=e}function G(e,t){O.set(e,t)}function Q(e){return O.get(e)}function De(){O.clear()}function Z(){if(typeof window>"u")return!1;let e=document.getElementById("__FLUIXI_HYDRATION__");if(!e||e.getAttribute("type")!=="application/json")return!1;try{let t=e.textContent||"{}",n=JSON.parse(t);for(let[o,r]of Object.entries(n))O.set(o,r);return!0}catch(t){return console.error("Failed to deserialize hydration data:",t),!1}}function j(){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()),De()}function ee(){return typeof window>"u"}var Y,O,I=S(()=>{"use strict";Y=!1,O=new Map;typeof window<"u"&&window.addEventListener("load",()=>{setTimeout(j,100)})});function _(e,t){let n,o,r;function i(){return o||(o=e().then(s=>n=s.default)),o}t?.preload&&i();let a=(s=>{if(n){let d=n;return(0,w.untrack)(()=>d(s))}if(!r){let[d]=(0,w.createResource)(()=>i(),{transport:!1});if(r=d,d.error)throw d.error}return(0,w.createMemo)(()=>{let d=r();return d?(0,w.untrack)(()=>d(s)):void 0},void 0,{name:"lazy"})});return a.preload=()=>i().then(()=>{}),a.$lazy=!0,a.loader=e,a}var w,M=S(()=>{"use strict";w=require("@fluixi/reactive/signal")});function se(e){let t=(0,U.createContext)(e),n=o=>(o.debug,t.Provider({value:o.value,get children(){return o.children},debug:o.debug}));return typeof Symbol<"u"&&Symbol.for&&(n.$$typeof=Symbol.for("react.provider")),n.$$typeof=Symbol.for("react.provider"),{id:t.id,Provider:(0,ae.asProvider)(n),defaultValue:e}}var ae,U,Ve,ce=S(()=>{"use strict";ae=require("@fluixi/dom"),U=require("@fluixi/reactive/signal"),Ve=require("@fluixi/reactive/signal")});function ue(e,t){return async(...n)=>{let o=t+":"+JSON.stringify(n);if(J()||typeof window<"u"){let i=Q(o);if(i!==void 0)return i}if(E.has(o))return E.get(o);if(A.has(o))return A.get(o);let r=Promise.resolve(e(...n)).then(i=>(E.set(o,i),A.delete(o),ee()&&G(o,i),i),i=>{throw A.delete(o),i});return A.set(o,r),r}}function de(e){let t=typeof e=="string"?n=>n.startsWith(e):e;for(let n of E.keys())t(n)&&(E.delete(n),$e.add(n));Ue(n=>n+1)}function fe(e,t){let[n]=(0,k.createResource)(t||(()=>!0),e);return n}function le(e){return $.has(e)||$.set(e,(0,k.createSignal)(void 0)),$.get(e)}function z(e,t){let n=t||e.name||"action",o=async r=>{let[,i]=le(n),a=()=>i(void 0),s=()=>o(r);i({input:r,pending:!0,clear:a,retry:s});try{let d=await e(r);return i({input:r,result:d,pending:!1,clear:a,retry:s}),d}catch(d){throw i({input:r,error:d,pending:!1,clear:a,retry:s}),d}};return o.url=n,o.with=r=>z((...i)=>e(r,...i),t),o}function pe(e){let[t]=le(e.url);return t}function ye(e){return e}var k,E,A,gn,Ue,$e,$,ze,hn,me=S(()=>{"use strict";k=require("@fluixi/reactive/signal");I();ce();E=new Map,A=new Map;[gn,Ue]=(0,k.createSignal)(0),$e=new Set;$=new Map;ze=se(),hn=ze.Provider});var Re={};W(Re,{A:()=>at,Form:()=>st,Link:()=>we,Outlet:()=>Be,Redirect:()=>Ye,Router:()=>Xe,action:()=>z,cache:()=>ue,createAsync:()=>fe,createBrowserHistory:()=>v.createBrowserHistory,createMemoryHistory:()=>v.createMemoryHistory,lazy:()=>_,matchPath:()=>v.matchPath,matchRoutes:()=>v.matchRoutes,preloadRoutes:()=>ct,revalidate:()=>de,runWithOwner:()=>Se.runWithOwner,select:()=>nt,useAction:()=>ye,useLevelParams:()=>Ge,useLinkNavigation:()=>rt,useLocation:()=>q,useMatch:()=>et,useNavigate:()=>be,useParam:()=>Qe,useParamSelector:()=>Ze,useParams:()=>K,useRouteData:()=>ot,useRouter:()=>D,useSearchParams:()=>tt,useSubmission:()=>pe});function Ke(e,t,n){let o,r=e.route.data;if(typeof r=="function"){let T=!1;(0,c.onCleanup)(()=>{T=!0});let l=(0,c.getOwner)(),[R]=(0,c.createResource)(()=>r({params:n.params,location:n.location},l,()=>T));o=R}let i=()=>Ce.Provider({value:o,get children(){return ve.Provider({value:e.params,get children(){return xe.Provider({value:{depth:t,...n},get children(){return(0,u.createComponent)(e.component,{})}})}})}});if(!o)return i();let a=o,s=()=>a.loading,[d,m]=(0,c.createSignal)((0,c.untrack)(()=>!s()));return(0,c.createEffect)(()=>m(!s())),(0,c.createMemo)(()=>d()?i():null)}function Te(e){let t=e.depth+1,[n,o]=(0,c.createSignal)((0,c.untrack)(()=>e.matched()[t]?.component));return(0,c.createEffect)(()=>{let r=e.matched()[t]?.component;o(()=>r)}),(0,c.createMemo)(()=>{if(!n())return e.notFound?e.notFound():null;let i=(0,c.untrack)(()=>e.matched())[t];return Ke(i,t,{matched:e.matched,params:e.params,location:e.location})})}function qe(e){return e==null?We():typeof e=="function"?(0,u.createComponent)(e,{}):e}function We(){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 t=(0,u.createNativeElement)("h1");(0,u.setAttribute)(t,"style","margin:0;font-size:2.5rem;font-weight:700"),(0,u.insert)(t,"404");let n=(0,u.createNativeElement)("p");return(0,u.setAttribute)(n,"style","margin:0;opacity:.7"),(0,u.insert)(n,"This page could not be found."),e.appendChild(t),e.appendChild(n),e}function Xe(e){let t=e.history??(0,x.createBrowserHistory)(),n=(0,x.createRouter)({routes:e.routes,base:e.base,history:t}),[o,r]=(0,c.createSignal)(n.state()),i=n.subscribe(r);(0,c.onCleanup)(()=>{i(),n.destroy()});let a=(0,c.createMemo)(()=>(o().match?.matched??[]).filter(T=>T.component)),s={router:n,location:(0,c.createMemo)(()=>o().location),params:(0,c.createMemo)(()=>o().match?.params??{})},d={depth:-1,matched:a,params:s.params,location:s.location,notFound:()=>qe(e.notFound)},m;return L.Provider({value:s,get children(){return m??=Te(d)}})}function Be(){let e=(0,y.useContext)(xe);return e?Te(e):null}function Ye(e){let t=(0,y.useContext)(L);if(t&&typeof window<"u"){let n=!1;(0,c.onCleanup)(()=>n=!0),queueMicrotask(()=>{n||t.router.navigate(e.to,{replace:e.replace!==!1})})}return null}function D(){let e=(0,y.useContext)(L);if(e)return e;if(typeof window>"u")return Je;throw new Error("[router] useRouter must be used within <Router>")}function K(){let e=D().params;return(0,c.createMemo)(()=>e(),{},{equals:(t,n)=>JSON.stringify(t)===JSON.stringify(n)})}function Ge(){return(0,y.useContext)(ve)??{}}function Qe(e){let t=K();return(0,c.createMemo)(()=>t()[e])}function Ze(e,t){let n=K();return(0,c.createMemo)(()=>e(n()),void 0,t?{equals:t}:void 0)}function et(e){let t=q();return(0,c.createMemo)(()=>(0,x.matchPath)(typeof e=="function"?e():e,t.pathname))}function tt(){let e=q(),t=be();return[(0,c.createMemo)(()=>e.query),(r,i)=>{let a=new URLSearchParams(e.search);for(let[d,m]of Object.entries(r))m===null?a.delete(d):a.set(d,m);let s=a.toString();t(e.pathname+(s?`?${s}`:""),i)}]}function nt(e,t){let n=(o,r)=>(0,he.deepEqual)(o,r);return t!==void 0?(0,c.createMemo)(()=>(0,ge.get)(e(),t),void 0,{equals:n}):(0,c.createMemo)(e,void 0,{equals:n})}function q(){let{location:e}=D();return new Proxy({},{get:(t,n)=>e()[n],has:(t,n)=>n in e(),ownKeys:()=>Reflect.ownKeys(e()),getOwnPropertyDescriptor:(t,n)=>Object.getOwnPropertyDescriptor(e(),n)})}function rt(e={}){let t=(0,y.useContext)(L);return n=>{if(!t||n.defaultPrevented||n.button!==0||n.metaKey||n.ctrlKey||n.shiftKey||n.altKey)return;let r=n.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 i=new URL(r.href);i.protocol!=="http:"&&i.protocol!=="https:"||i.origin===window.location.origin&&(i.hash&&i.pathname===window.location.pathname&&i.search===window.location.search||e.shouldNavigate&&!e.shouldNavigate(i,r)||(n.preventDefault(),t.router.navigate(i.pathname+i.search+i.hash,{replace:e.replace})))}}function be(){let{router:e}=D();return(t,n)=>e.navigate(t,n)}function ot(){return(0,y.useContext)(Ce)??(()=>{})}function we(e){let t=(0,y.useContext)(L),n=typeof document>"u",o=()=>t?.router.navigate(g(e.href)??"",{replace:g(e.replace)}),r=(0,u.createNativeElement)("a");(0,u.setAttribute)(r,"href",g(e.href)??""),e.slot&&(0,u.setAttribute)(r,"slot",g(e.slot));for(let a of Object.keys(e)){if(it.has(a))continue;let s=e[a];s!=null&&typeof s!="function"&&(0,u.setAttribute)(r,a,String(s))}if(typeof r.addEventListener=="function")r.addEventListener("click",a=>{a.metaKey||a.ctrlKey||a.shiftKey||a.altKey||(a.preventDefault(),o())});else{let a=g(e.className??e.class)??"";a&&(0,u.setAttribute)(r,"class",a)}typeof r.addEventListener=="function"&&(0,c.createEffect)(()=>{let a=g(e.href)??"";r.setAttribute("href",a);let s=g(e.className??e.class)??"",d=g(e.activeClass)??"",m=g(e.active)??t?.location().pathname===a;r.className=[s,m?d:""].filter(Boolean).join(" ")});let i=e.children;return i!=null&&(0,u.insert)(r,i),r}function st(e){let t=e.action,n=e.className??e.class,o=t.url??"",r=(0,u.createNativeElement)("form");(0,u.setAttribute)(r,"method","post"),o&&(0,u.setAttribute)(r,"action",o),n&&(0,u.setAttribute)(r,"class",n);for(let a of Object.keys(e)){if(a==="action"||a==="children"||a==="class"||a==="className")continue;let s=e[a];s!=null&&typeof s!="function"&&(0,u.setAttribute)(r,a,String(s))}typeof r.addEventListener=="function"&&r.addEventListener("submit",a=>{a.preventDefault();let s={};new FormData(r).forEach((d,m)=>{s[m]=d}),Promise.resolve(t(s)).catch(()=>{})});let i=e.children;return i!=null&&(0,u.insert)(r,i),r}async function ct(e,t){let n=(0,x.matchRoutes)(e,t);if(!n)return;let o=[];for(let r of n.matched){let i=r.component;i&&typeof i.preload=="function"&&o.push(i.preload())}await Promise.all(o)}var c,u,y,ge,he,x,v,Se,L,xe,ve,Ce,Je,g,it,at,Pe=S(()=>{"use strict";c=require("@fluixi/reactive/signal"),u=require("@fluixi/dom"),y=require("@fluixi/reactive/signal"),ge=require("@fluixi/utils/object"),he=require("@fluixi/utils/compare"),x=require("@fluixi/router"),v=require("@fluixi/router");me();M();Se=require("@fluixi/reactive/signal"),L=(0,y.createContext)(),xe=(0,y.createContext)(),ve=(0,y.createContext)(),Ce=(0,y.createContext)();Je={router:{navigate:()=>{}},location:()=>({pathname:"",search:"",hash:"",query:{}}),params:()=>({})};g=e=>typeof e=="function"?e():e,it=new Set(["href","slot","class","className","active","activeClass","replace","children"]);at=we});var lt={};W(lt,{hydrate:()=>Ae.hydrate,mount:()=>ut,startClient:()=>dt});module.exports=Me(lt);var N=require("@fluixi/dom");var B=require("@fluixi/dom");var X="1.0.0-alpha.81";var b=require("@fluixi/dom");(0,B.registerCoreVersion)(X);I();var oe=require("@fluixi/reactive/signal");var P=require("@fluixi/dom");var te=require("@fluixi/dom"),p=require("@fluixi/reactive/signal");var f=require("@fluixi/reactive/signal"),h=require("@fluixi/dom");function ne(e){return!!(e&&typeof e=="object"&&typeof e.then=="function"||e instanceof Promise)}var Ne=(0,f.createContext)();function V(e){return(0,h.createComponent)(Fe,e)}function Fe(e){let t=(0,f.createSuspenseBoundary)(),n=(0,f.useContext)(Ne),o=n?n.register(t.inFallback):void 0;function r(l){return l==null||typeof l=="boolean"?null:typeof l=="function"&&(0,h.isComponent)(l)&&!(0,f.isSignal)(l)?l():l}let i=(0,h.runWithoutHydration)(()=>r(e.fallback??null)),a=(0,f.provideSuspense)(t,()=>(0,f.readChildren)(()=>e.children)),s=(l,R)=>{if(!(R>8))if(Array.isArray(l))for(let Ee of l)s(Ee,R+1);else typeof l=="function"&&(0,f.isSignal)(l)&&s(l(),R+1)};(0,f.provideSuspense)(t,()=>{(0,f.createRenderEffect)(()=>s(a,0))});let[d,m]=(0,f.createSignal)(void 0),T=ne(a);return T&&(t.increment(),a.then(l=>{m(()=>l),t.decrement()},()=>t.decrement())),(0,f.createMemo)(()=>{let l=o?o.showFallback():t.inFallback();return process.env.FX_DEBUG&&console.log("[s] output; showFallback:",l),l?i:T?d():a})}(0,h.asSuspense)(V);Object.defineProperty(V,"__suspense",{value:!0,enumerable:!0});M();var re=require("@fluixi/reactive/signal"),He=require("@fluixi/dom/utils");M();var je=require("@fluixi/reactive/signal");var Ie=typeof window>"u";function ie(e,t,n={}){if((0,P.delegateEvents)(["click","input","change","submit"]),Ie)throw new Error("render() is for client-side only. Use renderToString() on server.");if(!t)throw new Error("Container element is required");let o;return(0,oe.createRoot)(r=>{o=r;let i=typeof e=="function"?e():e;t.textContent="",(0,b.stampVersions)(t),(0,b.warnOnVersionSkew)(),(0,P.insert)(t,()=>i)}),()=>{o&&(o(),o=void 0)}}var C=require("@fluixi/head"),Ae=require("@fluixi/dom");function ut(e,t){if(!t)throw new Error("Container element not found for mount()");(0,N.render)(()=>e(),t)}async function dt(e,t={}){let n=typeof t.root=="string"?document.querySelector(t.root):t.root??document.querySelector("#app");if(!n)throw new Error(`[Fluixi] Mount container not found: ${t.root??"#app"}`);let o=!!document.getElementById("__FLUIXI_HYDRATION__")||!!t.routes&&n.firstElementChild!=null,r=t.hydrate??o,i=(0,C.createHead)();if((0,C.setActiveHead)(i),(0,C.stripHeadMarker)(n),r){if(t.routes&&t.routes.length){let{preloadRoutes:a}=await Promise.resolve().then(()=>(Pe(),Re));await a(t.routes,window.location.pathname)}Z(),H(!0),(0,N.hydrate)(()=>e(),n),ft(),setTimeout(()=>{H(!1),j()},100)}else ie(()=>e(),n);(0,C.mountHead)(i)}function ft(){if(typeof window>"u")return;let e=window;typeof e.__FX_REPLAY_STOP__=="function"&&e.__FX_REPLAY_STOP__();let t=e.__FX_REPLAY__;if(e.__FX_REPLAY__=void 0,e.__FX_REPLAY_STOP__=void 0,!(!Array.isArray(t)||t.length===0))for(let n of t){let o=n&&n.target;if(!o||o.isConnected===!1||typeof o.dispatchEvent!="function")continue;let r=n.type,i=r==="click"?new MouseEvent(r,{bubbles:!0,cancelable:!0}):new Event(r,{bubbles:!0,cancelable:!0});o.dispatchEvent(i)}}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/client/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAaH,OAAO,uBAAuB,CAAC;AAgB/B;;;;;;;;;;;;;GAaG;AACH,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,EAAE,SAAS,EAAE,WAAW,GAAG,IAAI,QAOlE;AAED,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,MAAM,WAAW,kBAAkB;IACjC,oEAAoE;IACpE,IAAI,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;IAC5B,kFAAkF;IAClF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC;CAChB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,WAAW,CAC/B,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,GAAG,EACzB,OAAO,GAAE,kBAAuB,iBA4DjC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/client/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAaH,OAAO,uBAAuB,CAAC;AAe/B;;;;;;;;;;;;;GAaG;AACH,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,EAAE,SAAS,EAAE,WAAW,GAAG,IAAI,QAOlE;AAED,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,MAAM,WAAW,kBAAkB;IACjC,oEAAoE;IACpE,IAAI,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;IAC5B,kFAAkF;IAClF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC;CAChB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,WAAW,CAC/B,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,GAAG,EACzB,OAAO,GAAE,kBAAuB,iBA4DjC"}
@@ -16,9 +16,7 @@ import { render as domRender, hydrate as domHydrate, } from '@fluixi/dom';
16
16
  import '../render/versions.js';
17
17
  import { deserializeHydrationData, setHydrating, cleanupHydration, } from '../server/hydration.js';
18
18
  import { render } from '../render/index.js';
19
- import { ensureIntegration } from '../render/component.js';
20
19
  import { createHead, setActiveHead, mountHead, stripHeadMarker } from '@fluixi/head';
21
- ensureIntegration('client index');
22
20
  // Connect the reactive system (signals, effects, batch) to the DOM runtime.
23
21
  // Without this, createRenderEffect in @fluixi/dom is a one-shot call that never
24
22
  // re-runs when signals change — breaking all JSX reactive updates.
@@ -92,7 +90,7 @@ export async function startClient(App, options = {}) {
92
90
  // resolving a tick later and rebuilding a duplicate. Dynamic import keeps the router out of
93
91
  // client-only bundles that never pass `routes`.
94
92
  if (options.routes && options.routes.length) {
95
- const { preloadRoutes } = await import('../router-next/index.js');
93
+ const { preloadRoutes } = await import('../router/index.js');
96
94
  await preloadRoutes(options.routes, window.location.pathname);
97
95
  }
98
96
  deserializeHydrationData();