@fluixi/core 1.0.0-alpha.55 → 1.0.0-alpha.57
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cdn/core.global.js +1 -3
- package/dist/src/cdn/{chunk-PFM5O5UE.mjs → chunk-DYBLT5DZ.mjs} +1 -1
- package/dist/src/cdn/core.cjs +1 -1
- package/dist/src/cdn/core.mjs +1 -1
- package/dist/src/cdn/{router-next-WNWCFVC2.mjs → router-next-2MKUMMEE.mjs} +1 -1
- package/dist/src/index.cjs +1 -1
- package/dist/src/index.mjs +1 -1
- package/dist/src/lib/client/{chunk-D3VTWVNJ.mjs → chunk-45GBRHE6.mjs} +1 -1
- package/dist/src/lib/client/index.cjs +1 -1
- package/dist/src/lib/client/index.d.ts.map +1 -1
- package/dist/src/lib/client/index.js +0 -3
- package/dist/src/lib/client/index.mjs +1 -1
- package/dist/src/lib/client/{router-next-UYIYMRJL.mjs → router-next-F5ZKD3JR.mjs} +1 -1
- package/dist/src/lib/context/context.mjs +1 -1
- package/dist/src/lib/context/index.cjs +1 -1
- package/dist/src/lib/context/index.mjs +1 -1
- package/dist/src/lib/core.cjs +1 -1
- package/dist/src/lib/core.d.ts +3 -2
- package/dist/src/lib/core.d.ts.map +1 -1
- package/dist/src/lib/core.js +12 -6
- package/dist/src/lib/core.mjs +1 -1
- package/dist/src/lib/index.cjs +1 -1
- package/dist/src/lib/index.d.ts.map +1 -1
- package/dist/src/lib/index.js +1 -10
- package/dist/src/lib/index.mjs +1 -1
- package/dist/src/lib/render/await.cjs +1 -0
- package/dist/src/lib/render/await.d.ts +8 -0
- package/dist/src/lib/render/await.d.ts.map +1 -0
- package/dist/src/lib/render/await.js +27 -0
- package/dist/src/lib/render/await.mjs +1 -0
- package/dist/src/lib/render/component.cjs +1 -1
- package/dist/src/lib/render/component.d.ts.map +1 -1
- package/dist/src/lib/render/component.js +10 -1
- package/dist/src/lib/render/component.mjs +1 -1
- package/dist/src/lib/render/index.cjs +1 -1
- package/dist/src/lib/render/index.d.ts +3 -6
- package/dist/src/lib/render/index.d.ts.map +1 -1
- package/dist/src/lib/render/index.js +3 -13
- package/dist/src/lib/render/index.mjs +1 -1
- package/dist/src/lib/router-next/data.cjs +1 -1
- package/dist/src/lib/router-next/data.mjs +1 -1
- package/dist/src/lib/router-next/index.cjs +1 -1
- package/dist/src/lib/router-next/index.mjs +1 -1
- package/dist/tsconfig.lib.tsbuildinfo +1 -1
- package/package.json +10 -13
- package/dist/src/lib/directives/lit.cjs +0 -1
- package/dist/src/lib/directives/lit.d.ts +0 -2
- package/dist/src/lib/directives/lit.d.ts.map +0 -1
- package/dist/src/lib/directives/lit.js +0 -31
- package/dist/src/lib/directives/lit.mjs +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{registerCreateComponent as y,asComponent as x}from"@fluixi/dom";import{untrack as a,onCleanup as r,getOwner as f,createEffect as s,createMemo as m,createSignal as C,isSignal as T,batch as
|
|
1
|
+
import{registerCreateComponent as y,asComponent as x}from"@fluixi/dom";import{untrack as a,onCleanup as r,getOwner as f,createEffect as s,createMemo as m,createSignal as C,isSignal as T,batch as S,runWithOwner as E,isOwnerDisposed as O}from"@fluixi/reactive/signal";var c={context:null,owner:null};function K(){return c}function V(e){c.owner=e,c.context=e}function F(){return c.context||c.owner}var p=typeof process<"u"&&!1,u=Symbol.for("fluixi-lifecycle");function d(){let e=f();if(!e)return null;if(!e[u]){let t={mounts:[],effects:[],scheduled:!1};e[u]=t}return e[u]}function l(e){if(e.scheduled)return;e.scheduled=!0;let t=f();queueMicrotask(()=>{if(O(t)){e.mounts=[],e.effects=[];return}E(t,()=>{for(let n of e.mounts)try{let o=n();typeof o=="function"&&r(o)}catch(o){console.error("Error in onMount callback:",o)}for(let n of e.effects){let o;s(()=>{o&&o(),o=n()}),r(()=>{o&&o()})}e.mounts=[],e.effects=[]})})}function I(e){y(w)}function w(e,t){return h(e,t)}function h(e,t){let n=typeof e=="function"?a(()=>e(t)):e;if(n!=null&&(typeof n=="function"||typeof n=="object")&&!T(n)){try{n.$name=e.name}catch{}return x(n)}return n}function N(e,t=!0){let n=d();if(n){if(!t){n.scheduled||e();return}n.mounts.push(e),l(n)}else{if(!t){e();return}s(()=>{let o=a(e);typeof o=="function"&&r(o)})}}function $(e){r(e)}function g(e){let t=d();if(t)t.effects.push(e),l(t);else{let n;s(()=>{n&&n(),n=e()}),r(()=>{n&&n()})}}function q(e){return m(e)}function P(e){let t={current:e};return r(()=>{t.current=null}),t}function Y(e,t){let[n,o]=C(t);return[n,v=>{o(e(n(),v))}]}function z(e,t,n,o){g(()=>{let i=e&&"current"in e?e.current:e;if(i)return i.addEventListener(t,n,o),()=>{i.removeEventListener(t,n,o)}})}function B(e){return e}function G(){return f()!==null}function H(){return p}function J(e){p&&e()}export{h as $component,p as DEV,S as batch,w as createComponent,s as createEffect,m as createMemo,J as devOnly,I as ensureIntegration,F as getContextOwner,f as getOwner,K as getSharedConfig,G as hasLifecycleContext,H as isDev,r as onCleanup,N as onMount,$ as onUnmount,E as runWithOwner,V as setOwner,B as useCallback,g as useEffect,z as useEventListener,q as useMemo,Y as useReducer,P as useRef};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var C=Object.defineProperty;var Y=Object.getOwnPropertyDescriptor;var G=Object.getOwnPropertyNames;var Q=Object.prototype.hasOwnProperty;var Z=(e,n)=>{for(var o in n)C(e,o,{get:n[o],enumerable:!0})},ee=(e,n,o,t)=>{if(n&&typeof n=="object"||typeof n=="function")for(let s of G(n))!Q.call(e,s)&&s!==o&&C(e,s,{get:()=>n[s],enumerable:!(t=Y(n,s))||t.enumerable});return e};var ne=e=>ee(C({},"__esModule",{value:!0}),e);var fe={};Z(fe,{$component:()=>T,Await:()=>q,DEV:()=>x,Suspense:()=>h,SuspenseList:()=>B,batch:()=>r.batch,cleanupDelegation:()=>ue,createComponent:()=>v,createEffect:()=>r.createEffect,createMemo:()=>r.createMemo,devOnly:()=>U,getOwner:()=>r.getOwner,getSharedConfig:()=>k,initDelegation:()=>ae,isDev:()=>z,isJSXElement:()=>I,isLitResult:()=>W,isNode:()=>N,isPromise:()=>g,isRenderable:()=>ce,lazy:()=>H,onCleanup:()=>r.onCleanup,onMount:()=>A,onUnmount:()=>j,portal:()=>se,render:()=>X,runWithOwner:()=>r.runWithOwner,useCallback:()=>_,useEffect:()=>L,useEventListener:()=>$,useMemo:()=>F,useReducer:()=>D,useRef:()=>M});module.exports=ne(fe);var J=require("@fluixi/reactive/signal"),y=require("@fluixi/dom");var b=require("@fluixi/dom"),r=require("@fluixi/reactive/signal"),te={context:null,owner:null};function k(){return te}var x=typeof process<"u"&&!1,S=Symbol.for("fluixi-lifecycle");function O(){let e=(0,r.getOwner)();if(!e)return null;if(!e[S]){let n={mounts:[],effects:[],scheduled:!1};e[S]=n}return e[S]}function P(e){if(e.scheduled)return;e.scheduled=!0;let n=(0,r.getOwner)();queueMicrotask(()=>{if((0,r.isOwnerDisposed)(n)){e.mounts=[],e.effects=[];return}(0,r.runWithOwner)(n,()=>{for(let o of e.mounts)try{let t=o();typeof t=="function"&&(0,r.onCleanup)(t)}catch(t){console.error("Error in onMount callback:",t)}for(let o of e.effects){let t;(0,r.createEffect)(()=>{t&&t(),t=o()}),(0,r.onCleanup)(()=>{t&&t()})}e.mounts=[],e.effects=[]})})}function R(e){(0,b.registerCreateComponent)(v)}function v(e,n){return T(e,n)}function T(e,n){let o=typeof e=="function"?(0,r.untrack)(()=>e(n)):e;if(o!=null&&(typeof o=="function"||typeof o=="object")&&!(0,r.isSignal)(o)){try{o.$name=e.name}catch{}return(0,b.asComponent)(o)}return o}function A(e,n=!0){let o=O();if(o){if(!n){o.scheduled||e();return}o.mounts.push(e),P(o)}else{if(!n){e();return}(0,r.createEffect)(()=>{let t=(0,r.untrack)(e);typeof t=="function"&&(0,r.onCleanup)(t)})}}function j(e){(0,r.onCleanup)(e)}function L(e){let n=O();if(n)n.effects.push(e),P(n);else{let o;(0,r.createEffect)(()=>{o&&o(),o=e()}),(0,r.onCleanup)(()=>{o&&o()})}}function F(e){return(0,r.createMemo)(e)}function M(e){let n={current:e};return(0,r.onCleanup)(()=>{n.current=null}),n}function D(e,n){let[o,t]=(0,r.createSignal)(n);return[o,p=>{t(e(o(),p))}]}function $(e,n,o,t){L(()=>{let s=e&&"current"in e?e.current:e;if(s)return s.addEventListener(n,o,t),()=>{s.removeEventListener(n,o,t)}})}function _(e){return e}function z(){return x}function U(e){x&&e()}var i=require("@fluixi/reactive/signal"),l=require("@fluixi/dom");function N(e){return typeof window>"u"?!1:typeof Node=="function"&&e instanceof Node?!0:!!(e&&typeof e=="object"&&typeof e.nodeType=="number")}function W(e){return!e||typeof e!="object"?!1:!!(typeof e._$litType$<"u"||typeof e._$litDirective$<"u"||Array.isArray(e.strings)&&Array.isArray(e.values))}function g(e){return!!(e&&typeof e=="object"&&typeof e.then=="function"||e instanceof Promise)}function I(e){return!!(e&&typeof e=="object"&&"type"in e&&"props"in e)}var V=(0,i.createContext)();function h(e){return(0,l.createComponent)(oe,e)}function oe(e){let n=(0,i.createSuspenseBoundary)(),o=(0,i.useContext)(V),t=o?o.register(n.inFallback):void 0;function s(a){return a==null||typeof a=="boolean"?null:typeof a=="function"&&(0,l.isComponent)(a)&&!(0,i.isSignal)(a)?a():a}let p=(0,l.runWithoutHydration)(()=>s(e.fallback??null)),u=(0,i.provideSuspense)(n,()=>e.children);(0,i.provideSuspense)(n,()=>{(0,i.createRenderEffect)(()=>{let a=u;if(Array.isArray(a))for(let w of a)typeof w=="function"&&(0,i.isSignal)(w)&&w();else typeof a=="function"&&(0,i.isSignal)(a)&&a()})});let[f,c]=(0,i.createSignal)(void 0),m=g(u);return m&&(n.increment(),u.then(a=>{c(()=>a),n.decrement()},()=>n.decrement())),(0,i.createMemo)(()=>(t?t.showFallback():n.inFallback())?p:m?f():u)}function B(e){return(0,l.createComponent)(re,e)}function re(e){let{revealOrder:n="together",tail:o}=e,t=[];function s(){if(n==="together"){let u=t.every(f=>!f.inFallback());t.forEach(f=>{f.setShowContent(u),f.setShowFallback(!u)})}else{let u=n==="backwards"?[...t].reverse():t,f=!1;for(let c of u)f||c.inFallback()?(f=!0,c.setShowContent(!1),c.setShowFallback(o!=="hidden")):(c.setShowContent(!0),c.setShowFallback(!1))}}let p={register:u=>{let[f,c]=(0,i.createSignal)(!0),[m,a]=(0,i.createSignal)(!1);return t.push({inFallback:u,setShowContent:c,setShowFallback:a}),(0,i.createEffect)(()=>{u(),s()}),{showContent:f,showFallback:m}}};return V.Provider({value:p,children:e.children})}(0,l.asSuspense)(h);Object.defineProperty(h,"__suspense",{value:!0,enumerable:!0});var d=require("@fluixi/reactive/signal");function H(e,n){let o,t,s;function p(){return t||(t=e().then(f=>o=f.default)),t}n?.preload&&p();let u=(f=>{if(o){let c=o;return(0,d.untrack)(()=>c(f))}if(!s){let[c]=(0,d.createResource)(()=>p());if(s=c,c.error)throw c.error}return(0,d.createMemo)(()=>{let c=s();return c?(0,d.untrack)(()=>c(f)):void 0},void 0,{name:"lazy"})});return u.preload=()=>p().then(()=>{}),u.$lazy=!0,u.loader=e,u}var K=require("@fluixi/reactive/signal");function q(e){let n=()=>{let t=e.value;return typeof t=="function"?t():t},[o]=(0,K.createResource)(n);return()=>{if(o.loading)return e.fallback;let t=e.children;return typeof t=="function"?t(o()):t}}var E=typeof window>"u";function X(e,n,o={}){if(R("render"),(0,y.delegateEvents)(["click","input","change","submit"]),E)throw new Error("render() is for client-side only. Use renderToString() on server.");if(!n)throw new Error("Container element is required");let t;return(0,J.createRoot)(s=>{t=s;let p=typeof e=="function"?e():e;n.textContent="",n.setAttribute("fluixi-js","v1"),(0,y.insert)(n,()=>p)}),()=>{t&&(t(),t=void 0)}}function ie(e){return e&&typeof e=="object"&&(e._$litType$!==void 0||e._$litDirective$!==void 0)}function se(e,n,o={}){let t=document.createElement("div");t.setAttribute("data-portal","true"),n.appendChild(t);let s=X(e,t,o);return()=>{s(),n.contains(t)&&n.removeChild(t)}}function ce(e){return!!(e==null||typeof e=="function"||(0,y.isDOMNode)(e)||ie(e)||Array.isArray(e)||typeof e=="string"||typeof e=="number"||typeof e=="boolean")}function ae(){E||(0,y.delegateEvents)(["click","input","change","submit"])}function ue(){}
|
|
@@ -44,15 +44,10 @@ export interface RenderOptions {
|
|
|
44
44
|
* ```typescript
|
|
45
45
|
* import { render } from '@fluixi/core';
|
|
46
46
|
* import { createSignal } from '@fluixi/reactive';
|
|
47
|
-
* import { html } from 'lit';
|
|
48
47
|
*
|
|
49
48
|
* const App = () => {
|
|
50
49
|
* const [count, setCount] = createSignal(0);
|
|
51
|
-
* return
|
|
52
|
-
* <button @click=${() => setCount(count() + 1)}>
|
|
53
|
-
* Count: ${count()}
|
|
54
|
-
* </button>
|
|
55
|
-
* `;
|
|
50
|
+
* return <button onClick={() => setCount(count() + 1)}>Count: {count()}</button>;
|
|
56
51
|
* };
|
|
57
52
|
*
|
|
58
53
|
* const dispose = render(App, document.getElementById('app'));
|
|
@@ -109,5 +104,7 @@ export { createComponent, onMount, onUnmount, useEffect, useRef, useReducer, use
|
|
|
109
104
|
export { Suspense, SuspenseList, type SuspenseProps, type SuspenseListProps, isNode, isLitResult, isPromise, isJSXElement, } from './suspense.js';
|
|
110
105
|
export { lazy } from "./lazy.js";
|
|
111
106
|
export type { LazyOptions, LazyComponent } from "./lazy.js";
|
|
107
|
+
export { Await } from './await.js';
|
|
108
|
+
export type { AwaitProps } from './await.js';
|
|
112
109
|
export type { Component, ComponentProps, LifecycleCallback, RefObject, } from './component.js';
|
|
113
110
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/render/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/render/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAkBH;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;OAEG;IACH,MAAM,CAAC,EAAE,IAAI,CAAC;IAEd;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;CACxB;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,MAAM,CACpB,IAAI,EAAE,MAAM,GAAG,EACf,SAAS,EAAE,WAAW,EACtB,OAAO,GAAE,aAAkB,GAC1B,MAAM,IAAI,CA4CZ;AAmBD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,MAAM,CACpB,IAAI,EAAE,MAAM,GAAG,EACf,MAAM,EAAE,WAAW,EACnB,OAAO,GAAE,aAAkB,GAC1B,MAAM,IAAI,CAaZ;AAMD;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAchD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAGrC;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAGxC;AAOD,OAAO,EACL,eAAe,EACf,OAAO,EACP,SAAS,EACT,SAAS,EACT,MAAM,EACN,UAAU,EACV,OAAO,EACP,gBAAgB,EAChB,WAAW,EACX,SAAS,EACT,KAAK,EACL,UAAU,EACV,YAAY,EACZ,QAAQ,EACR,YAAY,EACZ,KAAK,EACL,OAAO,EACP,GAAG,EACH,eAAe,EACf,UAAU,GACX,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,QAAQ,EACR,YAAY,EAEZ,KAAK,aAAa,EAClB,KAAK,iBAAiB,EAEtB,MAAM,EACN,WAAW,EACX,SAAS,EACT,YAAY,GACb,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAC,IAAI,EAAC,MAAM,WAAW,CAAA;AAC9B,YAAY,EAAC,WAAW,EAAE,aAAa,EAAC,MAAM,WAAW,CAAA;AAEzD,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,YAAY,EACV,SAAS,EACT,cAAc,EACd,iBAAiB,EACjB,SAAS,GACV,MAAM,gBAAgB,CAAC"}
|
|
@@ -9,14 +9,8 @@
|
|
|
9
9
|
* Following SolidJS structure: render logic separated from component creation
|
|
10
10
|
*/
|
|
11
11
|
import { createRoot } from '@fluixi/reactive/signal';
|
|
12
|
-
import { isDOMNode, delegateEvents,
|
|
12
|
+
import { isDOMNode, delegateEvents, insert, } from '@fluixi/dom';
|
|
13
13
|
import { ensureIntegration, } from './component.js';
|
|
14
|
-
// Register Lit's render function with the DOM runtime so reactive updates can render
|
|
15
|
-
// Lit templates. CLIENT-ONLY and lazily imported: lit extends HTMLElement at module
|
|
16
|
-
// init, so a static import would crash SSR — this keeps lit out of server bundles.
|
|
17
|
-
if (typeof window !== 'undefined') {
|
|
18
|
-
import('lit').then((lit) => registerLitRender(lit.render));
|
|
19
|
-
}
|
|
20
14
|
const isServer = typeof window === 'undefined';
|
|
21
15
|
// ============================================================================
|
|
22
16
|
// SECTION 7 — RENDERING (CLIENT)
|
|
@@ -40,15 +34,10 @@ const isServer = typeof window === 'undefined';
|
|
|
40
34
|
* ```typescript
|
|
41
35
|
* import { render } from '@fluixi/core';
|
|
42
36
|
* import { createSignal } from '@fluixi/reactive';
|
|
43
|
-
* import { html } from 'lit';
|
|
44
37
|
*
|
|
45
38
|
* const App = () => {
|
|
46
39
|
* const [count, setCount] = createSignal(0);
|
|
47
|
-
* return
|
|
48
|
-
* <button @click=${() => setCount(count() + 1)}>
|
|
49
|
-
* Count: ${count()}
|
|
50
|
-
* </button>
|
|
51
|
-
* `;
|
|
40
|
+
* return <button onClick={() => setCount(count() + 1)}>Count: {count()}</button>;
|
|
52
41
|
* };
|
|
53
42
|
*
|
|
54
43
|
* const dispose = render(App, document.getElementById('app'));
|
|
@@ -199,3 +188,4 @@ export { Suspense, SuspenseList,
|
|
|
199
188
|
// type ShowProps,
|
|
200
189
|
isNode, isLitResult, isPromise, isJSXElement, } from './suspense.js';
|
|
201
190
|
export { lazy } from "./lazy.js";
|
|
191
|
+
export { Await } from './await.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{createRoot as
|
|
1
|
+
import{createRoot as we}from"@fluixi/reactive/signal";import{isDOMNode as Ce,delegateEvents as D,insert as Se}from"@fluixi/dom";import{registerCreateComponent as $,asComponent as _}from"@fluixi/dom";import{untrack as S,onCleanup as f,getOwner as m,createEffect as l,createMemo as v,createSignal as z,isSignal as U,batch as N,runWithOwner as T,isOwnerDisposed as W}from"@fluixi/reactive/signal";var I={context:null,owner:null};function V(){return I}var b=typeof process<"u"&&!1,y=Symbol.for("fluixi-lifecycle");function L(){let e=m();if(!e)return null;if(!e[y]){let t={mounts:[],effects:[],scheduled:!1};e[y]=t}return e[y]}function g(e){if(e.scheduled)return;e.scheduled=!0;let t=m();queueMicrotask(()=>{if(W(t)){e.mounts=[],e.effects=[];return}T(t,()=>{for(let o of e.mounts)try{let n=o();typeof n=="function"&&f(n)}catch(n){console.error("Error in onMount callback:",n)}for(let o of e.effects){let n;l(()=>{n&&n(),n=o()}),f(()=>{n&&n()})}e.mounts=[],e.effects=[]})})}function E(e){$(k)}function k(e,t){return O(e,t)}function O(e,t){let o=typeof e=="function"?S(()=>e(t)):e;if(o!=null&&(typeof o=="function"||typeof o=="object")&&!U(o)){try{o.$name=e.name}catch{}return _(o)}return o}function B(e,t=!0){let o=L();if(o){if(!t){o.scheduled||e();return}o.mounts.push(e),g(o)}else{if(!t){e();return}l(()=>{let n=S(e);typeof n=="function"&&f(n)})}}function H(e){f(e)}function P(e){let t=L();if(t)t.effects.push(e),g(t);else{let o;l(()=>{o&&o(),o=e()}),f(()=>{o&&o()})}}function K(e){return v(e)}function q(e){let t={current:e};return f(()=>{t.current=null}),t}function J(e,t){let[o,n]=z(t);return[o,u=>{n(e(o(),u))}]}function X(e,t,o,n){P(()=>{let c=e&&"current"in e?e.current:e;if(c)return c.addEventListener(t,o,n),()=>{c.removeEventListener(t,o,n)}})}function Y(e){return e}function G(){return b}function Q(e){b&&e()}import{createSignal as h,createMemo as Z,createEffect as ee,createRenderEffect as ne,isSignal as x,useContext as te,createContext as oe,createSuspenseBoundary as re,provideSuspense as R}from"@fluixi/reactive/signal";import{asSuspense as ie,isComponent as se,createComponent as A,runWithoutHydration as ce}from"@fluixi/dom";function ae(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 j(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 F=oe();function w(e){return A(pe,e)}function pe(e){let t=re(),o=te(F),n=o?o.register(t.inFallback):void 0;function c(i){return i==null||typeof i=="boolean"?null:typeof i=="function"&&se(i)&&!x(i)?i():i}let u=ce(()=>c(e.fallback??null)),s=R(t,()=>e.children);R(t,()=>{ne(()=>{let i=s;if(Array.isArray(i))for(let d of i)typeof d=="function"&&x(d)&&d();else typeof i=="function"&&x(i)&&i()})});let[a,r]=h(void 0),p=j(s);return p&&(t.increment(),s.then(i=>{r(()=>i),t.decrement()},()=>t.decrement())),Z(()=>(n?n.showFallback():t.inFallback())?u:p?a():s)}function le(e){return A(de,e)}function de(e){let{revealOrder:t="together",tail:o}=e,n=[];function c(){if(t==="together"){let s=n.every(a=>!a.inFallback());n.forEach(a=>{a.setShowContent(s),a.setShowFallback(!s)})}else{let s=t==="backwards"?[...n].reverse():n,a=!1;for(let r of s)a||r.inFallback()?(a=!0,r.setShowContent(!1),r.setShowFallback(o!=="hidden")):(r.setShowContent(!0),r.setShowFallback(!1))}}let u={register:s=>{let[a,r]=h(!0),[p,i]=h(!1);return n.push({inFallback:s,setShowContent:r,setShowFallback:i}),ee(()=>{s(),c()}),{showContent:a,showFallback:p}}};return F.Provider({value:u,children:e.children})}ie(w);Object.defineProperty(w,"__suspense",{value:!0,enumerable:!0});import{untrack as M,createMemo as ye,createResource as me}from"@fluixi/reactive/signal";function be(e,t){let o,n,c;function u(){return n||(n=e().then(a=>o=a.default)),n}t?.preload&&u();let s=(a=>{if(o){let r=o;return M(()=>r(a))}if(!c){let[r]=me(()=>u());if(c=r,r.error)throw r.error}return ye(()=>{let r=c();return r?M(()=>r(a)):void 0},void 0,{name:"lazy"})});return s.preload=()=>u().then(()=>{}),s.$lazy=!0,s.loader=e,s}import{createResource as xe}from"@fluixi/reactive/signal";function he(e){let t=()=>{let n=e.value;return typeof n=="function"?n():n},[o]=xe(t);return()=>{if(o.loading)return e.fallback;let n=e.children;return typeof n=="function"?n(o()):n}}var C=typeof window>"u";function ve(e,t,o={}){if(E("render"),D(["click","input","change","submit"]),C)throw new Error("render() is for client-side only. Use renderToString() on server.");if(!t)throw new Error("Container element is required");let n;return we(c=>{n=c;let u=typeof e=="function"?e():e;t.textContent="",t.setAttribute("fluixi-js","v1"),Se(t,()=>u)}),()=>{n&&(n(),n=void 0)}}function Te(e){return e&&typeof e=="object"&&(e._$litType$!==void 0||e._$litDirective$!==void 0)}function qe(e,t,o={}){let n=document.createElement("div");n.setAttribute("data-portal","true"),t.appendChild(n);let c=ve(e,n,o);return()=>{c(),t.contains(n)&&t.removeChild(n)}}function Je(e){return!!(e==null||typeof e=="function"||Ce(e)||Te(e)||Array.isArray(e)||typeof e=="string"||typeof e=="number"||typeof e=="boolean")}function Xe(){C||D(["click","input","change","submit"])}function Ye(){}export{O as $component,he as Await,b as DEV,w as Suspense,le as SuspenseList,N as batch,Ye as cleanupDelegation,k as createComponent,l as createEffect,v as createMemo,Q as devOnly,m as getOwner,V as getSharedConfig,Xe as initDelegation,G as isDev,fe as isJSXElement,ue as isLitResult,ae as isNode,j as isPromise,Je as isRenderable,be as lazy,f as onCleanup,B as onMount,H as onUnmount,qe as portal,ve as render,T as runWithOwner,Y as useCallback,P as useEffect,X as useEventListener,K as useMemo,J as useReducer,q as useRef};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var x=Object.defineProperty;var
|
|
1
|
+
"use strict";var x=Object.defineProperty;var R=Object.getOwnPropertyDescriptor;var D=Object.getOwnPropertyNames;var L=Object.prototype.hasOwnProperty;var _=(e,t)=>{for(var n in t)x(e,n,{get:t[n],enumerable:!0})},k=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of D(t))!L.call(e,o)&&o!==n&&x(e,o,{get:()=>t[o],enumerable:!(r=R(t,o))||r.enumerable});return e};var H=e=>k(x({},"__esModule",{value:!0}),e);var q={};_(q,{RouteDataContext:()=>m,RouteDataProvider:()=>Y,action:()=>O,cache:()=>F,createAsync:()=>K,revalidate:()=>z,useAction:()=>X,useRouteData:()=>B,useSubmission:()=>J});module.exports=H(q);var u=require("@fluixi/reactive/signal");var M=!1,T=new Map;function v(){return M}function h(e,t){T.set(e,t)}function C(e){return T.get(e)}function U(){T.clear()}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=[],r;for(;r=t.nextNode();){let o=r,i=o.nodeValue||"";(i.startsWith("#")||i.startsWith("/"))&&n.push(o)}n.forEach(o=>o.remove()),U()}typeof window<"u"&&window.addEventListener("load",()=>{setTimeout(j,100)});function b(){return typeof window>"u"}var w=require("@fluixi/dom"),l=require("@fluixi/reactive/signal"),V=require("@fluixi/reactive/signal");var f=require("@fluixi/dom"),s=require("@fluixi/reactive/signal");function A(e){(0,f.registerCreateComponent)(I)}function I(e,t){return N(e,t)}function N(e,t){let n=typeof e=="function"?(0,s.untrack)(()=>e(t)):e;if(n!=null&&(typeof n=="function"||typeof n=="object")&&!(0,s.isSignal)(n)){try{n.$name=e.name}catch{}return(0,f.asComponent)(n)}return n}A("index");function S(e){let t=(0,l.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,w.asProvider)(n),defaultValue:e}}function P(e){let t=(0,l.useContext)(e);return t!==void 0?t:e.defaultValue}var d=new Map,c=new Map;function F(e,t){return async(...n)=>{let r=t+":"+JSON.stringify(n);if(v()||typeof window<"u"){let i=C(r);if(i!==void 0)return i}if(d.has(r))return d.get(r);if(c.has(r))return c.get(r);let o=Promise.resolve(e(...n)).then(i=>(d.set(r,i),c.delete(r),b()&&h(r,i),i),i=>{throw c.delete(r),i});return c.set(r,o),o}}var[Te,W]=(0,u.createSignal)(0),$=new Set;function z(e){let t=typeof e=="string"?n=>n.startsWith(e):e;for(let n of d.keys())t(n)&&(d.delete(n),$.add(n));W(n=>n+1)}function K(e,t){let[n]=(0,u.createResource)(t||(()=>!0),e);return n}var g=new Map;function E(e){return g.has(e)||g.set(e,(0,u.createSignal)(void 0)),g.get(e)}function O(e,t){let n=t||e.name||"action",r=async o=>{let[,i]=E(n),p=()=>i(void 0),y=()=>r(o);i({input:o,pending:!0,clear:p,retry:y});try{let a=await e(o);return i({input:o,result:a,pending:!1,clear:p,retry:y}),a}catch(a){throw i({input:o,error:a,pending:!1,clear:p,retry:y}),a}};return r.url=n,r.with=o=>O((...i)=>e(o,...i),t),r}function J(e){let[t]=E(e.url);return t}function X(e){return e}var m=S(),Y=m.Provider;function B(){let e=P(m);return typeof e=="function"?e:()=>e}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{createResource as M,createSignal as h}from"@fluixi/reactive/signal";var A=!1,f=new Map;function p(){return A}function y(e,t){f.set(e,t)}function x(e){return f.get(e)}function
|
|
1
|
+
import{createResource as M,createSignal as h}from"@fluixi/reactive/signal";var A=!1,f=new Map;function p(){return A}function y(e,t){f.set(e,t)}function x(e){return f.get(e)}function w(){f.clear()}function S(){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 i=r,o=i.nodeValue||"";(o.startsWith("#")||o.startsWith("/"))&&n.push(i)}n.forEach(i=>i.remove()),w()}typeof window<"u"&&window.addEventListener("load",()=>{setTimeout(S,100)});function T(){return typeof window>"u"}import{asProvider as _}from"@fluixi/dom";import{createContext as k,useContext as H}from"@fluixi/reactive/signal";import{readChildren as fe}from"@fluixi/reactive/signal";import{registerCreateComponent as P,asComponent as E}from"@fluixi/dom";import{untrack as O,onCleanup as $,getOwner as z,createEffect as K,createMemo as J,createSignal as X,isSignal as R,batch as Y,runWithOwner as q,isOwnerDisposed as G}from"@fluixi/reactive/signal";function g(e){P(D)}function D(e,t){return L(e,t)}function L(e,t){let n=typeof e=="function"?O(()=>e(t)):e;if(n!=null&&(typeof n=="function"||typeof n=="object")&&!R(n)){try{n.$name=e.name}catch{}return E(n)}return n}g("index");function m(e){let t=k(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:_(n),defaultValue:e}}function v(e){let t=H(e);return t!==void 0?t:e.defaultValue}var c=new Map,a=new Map;function me(e,t){return async(...n)=>{let r=t+":"+JSON.stringify(n);if(p()||typeof window<"u"){let o=x(r);if(o!==void 0)return o}if(c.has(r))return c.get(r);if(a.has(r))return a.get(r);let i=Promise.resolve(e(...n)).then(o=>(c.set(r,o),a.delete(r),T()&&y(r,o),o),o=>{throw a.delete(r),o});return a.set(r,i),i}}var[ve,U]=h(0),j=new Set;function he(e){let t=typeof e=="string"?n=>n.startsWith(e):e;for(let n of c.keys())t(n)&&(c.delete(n),j.add(n));U(n=>n+1)}function Ce(e,t){let[n]=M(t||(()=>!0),e);return n}var l=new Map;function C(e){return l.has(e)||l.set(e,h(void 0)),l.get(e)}function I(e,t){let n=t||e.name||"action",r=async i=>{let[,o]=C(n),d=()=>o(void 0),u=()=>r(i);o({input:i,pending:!0,clear:d,retry:u});try{let s=await e(i);return o({input:i,result:s,pending:!1,clear:d,retry:u}),s}catch(s){throw o({input:i,error:s,pending:!1,clear:d,retry:u}),s}};return r.url=n,r.with=i=>I((...o)=>e(i,...o),t),r}function be(e){let[t]=C(e.url);return t}function Ae(e){return e}var b=m(),we=b.Provider;function Se(){let e=v(b);return typeof e=="function"?e:()=>e}export{b as RouteDataContext,we as RouteDataProvider,I as action,me as cache,Ce as createAsync,he as revalidate,Ae as useAction,Se as useRouteData,be as useSubmission};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var w=Object.defineProperty;var re=Object.getOwnPropertyDescriptor;var oe=Object.getOwnPropertyNames;var ae=Object.prototype.hasOwnProperty;var ie=(e,n)=>{for(var t in n)w(e,t,{get:n[t],enumerable:!0})},se=(e,n,t,o)=>{if(n&&typeof n=="object"||typeof n=="function")for(let r of oe(n))!ae.call(e,r)&&r!==t&&w(e,r,{get:()=>n[r],enumerable:!(o=re(n,r))||o.enumerable});return e};var ce=e=>se(w({},"__esModule",{value:!0}),e);var _e={};ie(_e,{A:()=>ke,Form:()=>Me,Link:()=>Z,Outlet:()=>be,Redirect:()=>Re,Router:()=>Ce,action:()=>E,cache:()=>j,createAsync:()=>I,createBrowserHistory:()=>g.createBrowserHistory,createMemoryHistory:()=>g.createMemoryHistory,lazy:()=>$,matchPath:()=>g.matchPath,matchRoutes:()=>g.matchRoutes,preloadRoutes:()=>Ne,revalidate:()=>U,runWithOwner:()=>ee.runWithOwner,select:()=>Le,useAction:()=>W,useLevelParams:()=>we,useLocation:()=>D,useMatch:()=>Oe,useNavigate:()=>Q,useParam:()=>Ae,useParamSelector:()=>Se,useParams:()=>L,useRouteData:()=>De,useRouter:()=>P,useSearchParams:()=>Ee,useSubmission:()=>K});module.exports=ce(_e);var s=require("@fluixi/reactive/signal"),u=require("@fluixi/dom"),
|
|
1
|
+
"use strict";var w=Object.defineProperty;var re=Object.getOwnPropertyDescriptor;var oe=Object.getOwnPropertyNames;var ae=Object.prototype.hasOwnProperty;var ie=(e,n)=>{for(var t in n)w(e,t,{get:n[t],enumerable:!0})},se=(e,n,t,o)=>{if(n&&typeof n=="object"||typeof n=="function")for(let r of oe(n))!ae.call(e,r)&&r!==t&&w(e,r,{get:()=>n[r],enumerable:!(o=re(n,r))||o.enumerable});return e};var ce=e=>se(w({},"__esModule",{value:!0}),e);var _e={};ie(_e,{A:()=>ke,Form:()=>Me,Link:()=>Z,Outlet:()=>be,Redirect:()=>Re,Router:()=>Ce,action:()=>E,cache:()=>j,createAsync:()=>I,createBrowserHistory:()=>g.createBrowserHistory,createMemoryHistory:()=>g.createMemoryHistory,lazy:()=>$,matchPath:()=>g.matchPath,matchRoutes:()=>g.matchRoutes,preloadRoutes:()=>Ne,revalidate:()=>U,runWithOwner:()=>ee.runWithOwner,select:()=>Le,useAction:()=>W,useLevelParams:()=>we,useLocation:()=>D,useMatch:()=>Oe,useNavigate:()=>Q,useParam:()=>Ae,useParamSelector:()=>Se,useParams:()=>L,useRouteData:()=>De,useRouter:()=>P,useSearchParams:()=>Ee,useSubmission:()=>K});module.exports=ce(_e);var s=require("@fluixi/reactive/signal"),u=require("@fluixi/dom"),l=require("@fluixi/reactive/signal"),q=require("@fluixi/utils/object"),B=require("@fluixi/utils/compare"),m=require("@fluixi/router"),g=require("@fluixi/router");var T=require("@fluixi/reactive/signal");var ue=!1,A=new Map;function k(){return ue}function M(e,n){A.set(e,n)}function N(e){return A.get(e)}function de(){A.clear()}function fe(){if(typeof window>"u")return;let e=document.getElementById("__FLUIXI_HYDRATION__");e&&e.remove();let n=document.createTreeWalker(document.body,NodeFilter.SHOW_COMMENT,null),t=[],o;for(;o=n.nextNode();){let r=o,a=r.nodeValue||"";(a.startsWith("#")||a.startsWith("/"))&&t.push(r)}t.forEach(r=>r.remove()),de()}typeof window<"u"&&window.addEventListener("load",()=>{setTimeout(fe,100)});function _(){return typeof window>"u"}var V=require("@fluixi/dom"),S=require("@fluixi/reactive/signal"),ye=require("@fluixi/reactive/signal");var b=require("@fluixi/dom"),f=require("@fluixi/reactive/signal");function H(e){(0,b.registerCreateComponent)(le)}function le(e,n){return pe(e,n)}function pe(e,n){let t=typeof e=="function"?(0,f.untrack)(()=>e(n)):e;if(t!=null&&(typeof t=="function"||typeof t=="object")&&!(0,f.isSignal)(t)){try{t.$name=e.name}catch{}return(0,b.asComponent)(t)}return t}H("index");function F(e){let n=(0,S.createContext)(e),t=o=>(o.debug,n.Provider({value:o.value,get children(){return o.children},debug:o.debug}));return typeof Symbol<"u"&&Symbol.for&&(t.$$typeof=Symbol.for("react.provider")),t.$$typeof=Symbol.for("react.provider"),{id:n.id,Provider:(0,V.asProvider)(t),defaultValue:e}}var v=new Map,h=new Map;function j(e,n){return async(...t)=>{let o=n+":"+JSON.stringify(t);if(k()||typeof window<"u"){let a=N(o);if(a!==void 0)return a}if(v.has(o))return v.get(o);if(h.has(o))return h.get(o);let r=Promise.resolve(e(...t)).then(a=>(v.set(o,a),h.delete(o),_()&&M(o,a),a),a=>{throw h.delete(o),a});return h.set(o,r),r}}var[nt,me]=(0,T.createSignal)(0),ge=new Set;function U(e){let n=typeof e=="string"?t=>t.startsWith(e):e;for(let t of v.keys())n(t)&&(v.delete(t),ge.add(t));me(t=>t+1)}function I(e,n){let[t]=(0,T.createResource)(n||(()=>!0),e);return t}var O=new Map;function z(e){return O.has(e)||O.set(e,(0,T.createSignal)(void 0)),O.get(e)}function E(e,n){let t=n||e.name||"action",o=async r=>{let[,a]=z(t),i=()=>a(void 0),c=()=>o(r);a({input:r,pending:!0,clear:i,retry:c});try{let d=await e(r);return a({input:r,result:d,pending:!1,clear:i,retry:c}),d}catch(d){throw a({input:r,error:d,pending:!1,clear:i,retry:c}),d}};return o.url=t,o.with=r=>E((...a)=>e(r,...a),n),o}function K(e){let[n]=z(e.url);return n}function W(e){return e}var xe=F(),rt=xe.Provider;var x=require("@fluixi/reactive/signal");function $(e,n){let t,o,r;function a(){return o||(o=e().then(c=>t=c.default)),o}n?.preload&&a();let i=(c=>{if(t){let d=t;return(0,x.untrack)(()=>d(c))}if(!r){let[d]=(0,x.createResource)(()=>a());if(r=d,d.error)throw d.error}return(0,x.createMemo)(()=>{let d=r();return d?(0,x.untrack)(()=>d(c)):void 0},void 0,{name:"lazy"})});return i.preload=()=>a().then(()=>{}),i.$lazy=!0,i.loader=e,i}var ee=require("@fluixi/reactive/signal"),R=(0,l.createContext)(),J=(0,l.createContext)(),X=(0,l.createContext)(),Y=(0,l.createContext)();function he(e,n,t){let o,r=e.route.data;if(typeof r=="function"){let C=!1;(0,s.onCleanup)(()=>{C=!0});let te=(0,s.getOwner)(),[ne]=(0,s.createResource)(()=>r({params:t.params,location:t.location},te,()=>C));o=ne}let a=()=>Y.Provider({value:o,get children(){return X.Provider({value:e.params,get children(){return J.Provider({value:{depth:n,...t},get children(){return(0,u.createComponent)(e.component,{})}})}})}});if(!o)return a();let i=o,c=()=>i.loading,[d,p]=(0,s.createSignal)((0,s.untrack)(()=>!c()));return(0,s.createEffect)(()=>p(!c())),(0,s.createMemo)(()=>d()?a():null)}function G(e){let n=e.depth+1,[t,o]=(0,s.createSignal)((0,s.untrack)(()=>e.matched()[n]?.component));return(0,s.createEffect)(()=>{let r=e.matched()[n]?.component;o(()=>r)}),(0,s.createMemo)(()=>{if(!t())return e.notFound?e.notFound():null;let a=(0,s.untrack)(()=>e.matched())[n];return he(a,n,{matched:e.matched,params:e.params,location:e.location})})}function ve(e){return e==null?Te():typeof e=="function"?(0,u.createComponent)(e,{}):e}function Te(){let e=(0,u.createNativeElement)("div");(0,u.setAttribute)(e,"class","fx-not-found"),(0,u.setAttribute)(e,"role","main"),(0,u.setAttribute)(e,"style","min-height:60vh;display:grid;place-content:center;gap:.25rem;text-align:center;font-family:system-ui,-apple-system,sans-serif");let n=(0,u.createNativeElement)("h1");(0,u.setAttribute)(n,"style","margin:0;font-size:2.5rem;font-weight:700"),(0,u.insert)(n,"404");let t=(0,u.createNativeElement)("p");return(0,u.setAttribute)(t,"style","margin:0;opacity:.7"),(0,u.insert)(t,"This page could not be found."),e.appendChild(n),e.appendChild(t),e}function Ce(e){let n=e.history??(0,m.createBrowserHistory)(),t=(0,m.createRouter)({routes:e.routes,base:e.base,history:n}),[o,r]=(0,s.createSignal)(t.state()),a=t.subscribe(r);(0,s.onCleanup)(()=>{a(),t.destroy()});let i=(0,s.createMemo)(()=>(o().match?.matched??[]).filter(C=>C.component)),c={router:t,location:(0,s.createMemo)(()=>o().location),params:(0,s.createMemo)(()=>o().match?.params??{})},d={depth:-1,matched:i,params:c.params,location:c.location,notFound:()=>ve(e.notFound)},p;return R.Provider({value:c,get children(){return p??=G(d)}})}function be(){let e=(0,l.useContext)(J);return e?G(e):null}function Re(e){let n=(0,l.useContext)(R);if(!n||typeof window>"u")return null;let t=!1;return(0,s.onCleanup)(()=>t=!0),queueMicrotask(()=>{t||n.router.navigate(e.to,{replace:e.replace!==!1})}),null}var Pe={router:{navigate:()=>{}},location:()=>({pathname:"",search:"",hash:"",query:{}}),params:()=>({})};function P(){let e=(0,l.useContext)(R);if(e)return e;if(typeof window>"u")return Pe;throw new Error("[router-next] useRouter must be used within <Router>")}function L(){let e=P().params;return(0,s.createMemo)(()=>e(),{},{equals:(n,t)=>JSON.stringify(n)===JSON.stringify(t)})}function we(){return(0,l.useContext)(X)??{}}function Ae(e){let n=L();return(0,s.createMemo)(()=>n()[e])}function Se(e,n){let t=L();return(0,s.createMemo)(()=>e(t()),void 0,n?{equals:n}:void 0)}function Oe(e){let n=D();return(0,s.createMemo)(()=>(0,m.matchPath)(typeof e=="function"?e():e,n.pathname))}function Ee(){let e=D(),n=Q();return[(0,s.createMemo)(()=>e.query),(r,a)=>{let i=new URLSearchParams(e.search);for(let[d,p]of Object.entries(r))p===null?i.delete(d):i.set(d,p);let c=i.toString();n(e.pathname+(c?`?${c}`:""),a)}]}function Le(e,n){let t=(o,r)=>(0,B.deepEqual)(o,r);return n!==void 0?(0,s.createMemo)(()=>(0,q.get)(e(),n),void 0,{equals:t}):(0,s.createMemo)(e,void 0,{equals:t})}function D(){let{location:e}=P();return new Proxy({},{get:(n,t)=>e()[t],has:(n,t)=>t in e(),ownKeys:()=>Reflect.ownKeys(e()),getOwnPropertyDescriptor:(n,t)=>Object.getOwnPropertyDescriptor(e(),t)})}function Q(){let{router:e}=P();return(n,t)=>e.navigate(n,t)}function De(){return(0,l.useContext)(Y)??(()=>{})}var y=e=>typeof e=="function"?e():e;function Z(e){let n=(0,l.useContext)(R),t=typeof document>"u",o=()=>n?.router.navigate(y(e.href)??"",{replace:y(e.replace)}),r=(0,u.createNativeElement)("a");if((0,u.setAttribute)(r,"href",y(e.href)??""),e.slot&&(0,u.setAttribute)(r,"slot",y(e.slot)),typeof r.addEventListener=="function")r.addEventListener("click",i=>{i.metaKey||i.ctrlKey||i.shiftKey||i.altKey||(i.preventDefault(),o())});else{let i=y(e.className??e.class)??"";i&&(0,u.setAttribute)(r,"class",i)}typeof r.addEventListener=="function"&&(0,s.createEffect)(()=>{let i=y(e.href)??"";r.setAttribute("href",i);let c=y(e.className??e.class)??"",d=y(e.activeClass)??"",p=y(e.active)??n?.location().pathname===i;r.className=[c,p?d:""].filter(Boolean).join(" ")});let a=e.children;return a!=null&&(0,u.insert)(r,a),r}var ke=Z;function Me(e){let n=e.action,t=e.className??e.class,o=n.url??"",r=(0,u.createNativeElement)("form");(0,u.setAttribute)(r,"method","post"),o&&(0,u.setAttribute)(r,"action",o),t&&(0,u.setAttribute)(r,"class",t);for(let[i,c]of Object.entries(e))i==="action"||i==="children"||i==="class"||i==="className"||c!=null&&typeof c!="function"&&(0,u.setAttribute)(r,i,String(c));typeof r.addEventListener=="function"&&r.addEventListener("submit",i=>{i.preventDefault();let c={};new FormData(r).forEach((d,p)=>{c[p]=d}),Promise.resolve(n(c)).catch(()=>{})});let a=e.children;return a!=null&&(0,u.insert)(r,a),r}async function Ne(e,n){let t=(0,m.matchRoutes)(e,n);if(!t)return;let o=[];for(let r of t.matched){let a=r.component;a&&typeof a.preload=="function"&&o.push(a.preload())}await Promise.all(o)}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{createSignal as P,createMemo as d,createResource as ge,createEffect as w,getOwner as xe,onCleanup as A,untrack as R}from"@fluixi/reactive/signal";import{insert as h,createComponent as F,createNativeElement as g,setAttribute as u}from"@fluixi/dom";import{createContext as v,useContext as p}from"@fluixi/reactive/signal";import{get as he}from"@fluixi/utils/object";import{deepEqual as ve}from"@fluixi/utils/compare";import{createRouter as Te,createBrowserHistory as Ce,matchRoutes as be,matchPath as Re}from"@fluixi/router";import{createMemoryHistory as
|
|
1
|
+
import{createSignal as P,createMemo as d,createResource as ge,createEffect as w,getOwner as xe,onCleanup as A,untrack as R}from"@fluixi/reactive/signal";import{insert as h,createComponent as F,createNativeElement as g,setAttribute as u}from"@fluixi/dom";import{createContext as v,useContext as p}from"@fluixi/reactive/signal";import{get as he}from"@fluixi/utils/object";import{deepEqual as ve}from"@fluixi/utils/compare";import{createRouter as Te,createBrowserHistory as Ce,matchRoutes as be,matchPath as Re}from"@fluixi/router";import{createMemoryHistory as Ft,createBrowserHistory as jt,matchRoutes as Ut,matchPath as It}from"@fluixi/router";import{createResource as oe,createSignal as N}from"@fluixi/reactive/signal";var B=!1,C=new Map;function O(){return B}function E(e,n){C.set(e,n)}function L(e){return C.get(e)}function J(){C.clear()}function X(){if(typeof window>"u")return;let e=document.getElementById("__FLUIXI_HYDRATION__");e&&e.remove();let n=document.createTreeWalker(document.body,NodeFilter.SHOW_COMMENT,null),t=[],o;for(;o=n.nextNode();){let r=o,a=r.nodeValue||"";(a.startsWith("#")||a.startsWith("/"))&&t.push(r)}t.forEach(r=>r.remove()),J()}typeof window<"u"&&window.addEventListener("load",()=>{setTimeout(X,100)});function D(){return typeof window>"u"}import{asProvider as ne}from"@fluixi/dom";import{createContext as re,useContext as Ze}from"@fluixi/reactive/signal";import{readChildren as rt}from"@fluixi/reactive/signal";import{registerCreateComponent as Y,asComponent as G}from"@fluixi/dom";import{untrack as Q,onCleanup as Ne,getOwner as _e,createEffect as He,createMemo as Ve,createSignal as Fe,isSignal as Z,batch as je,runWithOwner as Ie,isOwnerDisposed as ze}from"@fluixi/reactive/signal";function k(e){Y(ee)}function ee(e,n){return te(e,n)}function te(e,n){let t=typeof e=="function"?Q(()=>e(n)):e;if(t!=null&&(typeof t=="function"||typeof t=="object")&&!Z(t)){try{t.$name=e.name}catch{}return G(t)}return t}k("index");function M(e){let n=re(e),t=o=>(o.debug,n.Provider({value:o.value,get children(){return o.children},debug:o.debug}));return typeof Symbol<"u"&&Symbol.for&&(t.$$typeof=Symbol.for("react.provider")),t.$$typeof=Symbol.for("react.provider"),{id:n.id,Provider:ne(t),defaultValue:e}}var m=new Map,y=new Map;function ae(e,n){return async(...t)=>{let o=n+":"+JSON.stringify(t);if(O()||typeof window<"u"){let a=L(o);if(a!==void 0)return a}if(m.has(o))return m.get(o);if(y.has(o))return y.get(o);let r=Promise.resolve(e(...t)).then(a=>(m.set(o,a),y.delete(o),D()&&E(o,a),a),a=>{throw y.delete(o),a});return y.set(o,r),r}}var[ft,ie]=N(0),se=new Set;function ce(e){let n=typeof e=="string"?t=>t.startsWith(e):e;for(let t of m.keys())n(t)&&(m.delete(t),se.add(t));ie(t=>t+1)}function ue(e,n){let[t]=oe(n||(()=>!0),e);return t}var b=new Map;function _(e){return b.has(e)||b.set(e,N(void 0)),b.get(e)}function H(e,n){let t=n||e.name||"action",o=async r=>{let[,a]=_(t),i=()=>a(void 0),s=()=>o(r);a({input:r,pending:!0,clear:i,retry:s});try{let c=await e(r);return a({input:r,result:c,pending:!1,clear:i,retry:s}),c}catch(c){throw a({input:r,error:c,pending:!1,clear:i,retry:s}),c}};return o.url=t,o.with=r=>H((...a)=>e(r,...a),n),o}function de(e){let[n]=_(e.url);return n}function fe(e){return e}var le=M(),lt=le.Provider;import{untrack as V,createMemo as pe,createResource as ye}from"@fluixi/reactive/signal";function me(e,n){let t,o,r;function a(){return o||(o=e().then(s=>t=s.default)),o}n?.preload&&a();let i=(s=>{if(t){let c=t;return V(()=>c(s))}if(!r){let[c]=ye(()=>a());if(r=c,c.error)throw c.error}return pe(()=>{let c=r();return c?V(()=>c(s)):void 0},void 0,{name:"lazy"})});return i.preload=()=>a().then(()=>{}),i.$lazy=!0,i.loader=e,i}import{runWithOwner as $t}from"@fluixi/reactive/signal";var T=v(),j=v(),U=v(),I=v();function Pe(e,n,t){let o,r=e.route.data;if(typeof r=="function"){let x=!1;A(()=>{x=!0});let $=xe(),[q]=ge(()=>r({params:t.params,location:t.location},$,()=>x));o=q}let a=()=>I.Provider({value:o,get children(){return U.Provider({value:e.params,get children(){return j.Provider({value:{depth:n,...t},get children(){return F(e.component,{})}})}})}});if(!o)return a();let i=o,s=()=>i.loading,[c,f]=P(R(()=>!s()));return w(()=>f(!s())),d(()=>c()?a():null)}function z(e){let n=e.depth+1,[t,o]=P(R(()=>e.matched()[n]?.component));return w(()=>{let r=e.matched()[n]?.component;o(()=>r)}),d(()=>{if(!t())return e.notFound?e.notFound():null;let a=R(()=>e.matched())[n];return Pe(a,n,{matched:e.matched,params:e.params,location:e.location})})}function we(e){return e==null?Ae():typeof e=="function"?F(e,{}):e}function Ae(){let e=g("div");u(e,"class","fx-not-found"),u(e,"role","main"),u(e,"style","min-height:60vh;display:grid;place-content:center;gap:.25rem;text-align:center;font-family:system-ui,-apple-system,sans-serif");let n=g("h1");u(n,"style","margin:0;font-size:2.5rem;font-weight:700"),h(n,"404");let t=g("p");return u(t,"style","margin:0;opacity:.7"),h(t,"This page could not be found."),e.appendChild(n),e.appendChild(t),e}function Rt(e){let n=e.history??Ce(),t=Te({routes:e.routes,base:e.base,history:n}),[o,r]=P(t.state()),a=t.subscribe(r);A(()=>{a(),t.destroy()});let i=d(()=>(o().match?.matched??[]).filter(x=>x.component)),s={router:t,location:d(()=>o().location),params:d(()=>o().match?.params??{})},c={depth:-1,matched:i,params:s.params,location:s.location,notFound:()=>we(e.notFound)},f;return T.Provider({value:s,get children(){return f??=z(c)}})}function Pt(){let e=p(j);return e?z(e):null}function wt(e){let n=p(T);if(!n||typeof window>"u")return null;let t=!1;return A(()=>t=!0),queueMicrotask(()=>{t||n.router.navigate(e.to,{replace:e.replace!==!1})}),null}var Se={router:{navigate:()=>{}},location:()=>({pathname:"",search:"",hash:"",query:{}}),params:()=>({})};function S(){let e=p(T);if(e)return e;if(typeof window>"u")return Se;throw new Error("[router-next] useRouter must be used within <Router>")}function K(){let e=S().params;return d(()=>e(),{},{equals:(n,t)=>JSON.stringify(n)===JSON.stringify(t)})}function At(){return p(U)??{}}function St(e){let n=K();return d(()=>n()[e])}function Ot(e,n){let t=K();return d(()=>e(t()),void 0,n?{equals:n}:void 0)}function Et(e){let n=W();return d(()=>Re(typeof e=="function"?e():e,n.pathname))}function Lt(){let e=W(),n=Oe();return[d(()=>e.query),(r,a)=>{let i=new URLSearchParams(e.search);for(let[c,f]of Object.entries(r))f===null?i.delete(c):i.set(c,f);let s=i.toString();n(e.pathname+(s?`?${s}`:""),a)}]}function Dt(e,n){let t=(o,r)=>ve(o,r);return n!==void 0?d(()=>he(e(),n),void 0,{equals:t}):d(e,void 0,{equals:t})}function W(){let{location:e}=S();return new Proxy({},{get:(n,t)=>e()[t],has:(n,t)=>t in e(),ownKeys:()=>Reflect.ownKeys(e()),getOwnPropertyDescriptor:(n,t)=>Object.getOwnPropertyDescriptor(e(),t)})}function Oe(){let{router:e}=S();return(n,t)=>e.navigate(n,t)}function kt(){return p(I)??(()=>{})}var l=e=>typeof e=="function"?e():e;function Ee(e){let n=p(T),t=typeof document>"u",o=()=>n?.router.navigate(l(e.href)??"",{replace:l(e.replace)}),r=g("a");if(u(r,"href",l(e.href)??""),e.slot&&u(r,"slot",l(e.slot)),typeof r.addEventListener=="function")r.addEventListener("click",i=>{i.metaKey||i.ctrlKey||i.shiftKey||i.altKey||(i.preventDefault(),o())});else{let i=l(e.className??e.class)??"";i&&u(r,"class",i)}typeof r.addEventListener=="function"&&w(()=>{let i=l(e.href)??"";r.setAttribute("href",i);let s=l(e.className??e.class)??"",c=l(e.activeClass)??"",f=l(e.active)??n?.location().pathname===i;r.className=[s,f?c:""].filter(Boolean).join(" ")});let a=e.children;return a!=null&&h(r,a),r}var Mt=Ee;function Nt(e){let n=e.action,t=e.className??e.class,o=n.url??"",r=g("form");u(r,"method","post"),o&&u(r,"action",o),t&&u(r,"class",t);for(let[i,s]of Object.entries(e))i==="action"||i==="children"||i==="class"||i==="className"||s!=null&&typeof s!="function"&&u(r,i,String(s));typeof r.addEventListener=="function"&&r.addEventListener("submit",i=>{i.preventDefault();let s={};new FormData(r).forEach((c,f)=>{s[f]=c}),Promise.resolve(n(s)).catch(()=>{})});let a=e.children;return a!=null&&h(r,a),r}async function _t(e,n){let t=be(e,n);if(!t)return;let o=[];for(let r of t.matched){let a=r.component;a&&typeof a.preload=="function"&&o.push(a.preload())}await Promise.all(o)}export{Mt as A,Nt as Form,Ee as Link,Pt as Outlet,wt as Redirect,Rt as Router,H as action,ae as cache,ue as createAsync,jt as createBrowserHistory,Ft as createMemoryHistory,me as lazy,It as matchPath,Ut as matchRoutes,_t as preloadRoutes,ce as revalidate,$t as runWithOwner,Dt as select,fe as useAction,At as useLevelParams,W as useLocation,Et as useMatch,Oe as useNavigate,St as useParam,Ot as useParamSelector,K as useParams,kt as useRouteData,S as useRouter,Lt as useSearchParams,de as useSubmission};
|