@akashjs/runtime 0.1.40 → 0.1.41

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.
@@ -0,0 +1,2 @@
1
+ import {l,m,n}from'./chunk-TWA4T6PX.js';var k=[];function v(s){k.push(...s.plugins);}var g=new Map;function b(s,a){return ()=>{if(g.has(s))return g.get(s);let r=a.state(),o=A(s,r,a);return g.set(s,o),o}}function A(s,a,r){let o={},c=Object.keys(a);for(let t of c)o[t]=l(a[t]);let n$1={$id:s};for(let t of c)n$1[t]=o[t];if(r.getters)for(let[t,e]of Object.entries(r.getters))n$1[t]=m(()=>e.call(n$1,o));let l$1=[...k,...r.plugins??[]];if(r.actions)for(let[t,e]of Object.entries(r.actions))n$1[t]=(...i)=>{for(let f of l$1)f.onAction?.(n$1,t,i);return e.apply(n$1,i)};n$1.$reset=()=>{let t=r.state();for(let e of c)o[e].set(t[e]);},n$1.$patch=t=>{if(typeof t=="function")t(o);else for(let[e,i]of Object.entries(t))e in o&&o[e].set(i);},n$1.$snapshot=()=>{let t={};for(let e of c)t[e]=o[e]();return t};let u=new Set,S=null;n$1.$subscribe=t=>{if(u.add(t),!S){let e=true;S=n(()=>{for(let f of c)o[f]();if(e){e=false;return}let i=n$1.$snapshot();for(let f of u)f(i);});}return ()=>{u.delete(t),u.size===0&&S&&(S(),S=null);}};for(let t of l$1)t.init?.(n$1);return n$1}function x(){g.clear();}function R(){return Object.fromEntries(g)}export{v as a,b,x as c,R as d};//# sourceMappingURL=chunk-3KIPMVCN.js.map
2
+ //# sourceMappingURL=chunk-3KIPMVCN.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/store.ts"],"names":["globalPlugins","configureStores","options","storeInstances","defineStore","id","definition","initialState","store","createStoreInstance","stateSignals","stateKeys","key","signal","getterFn","computed","plugins","actionFn","args","plugin","fresh","partialOrFn","value","snapshot","subscribers","subscribeEffect","callback","isInitial","effect","cb","clearStores","__getStoreInstances"],"mappings":"wCAoFA,IAAMA,EAA+B,EAAC,CAG/B,SAASC,CAAAA,CAAgBC,EAA2C,CACzEF,CAAAA,CAAc,IAAA,CAAK,GAAGE,EAAQ,OAAO,EACvC,CAIA,IAAMC,CAAAA,CAAiB,IAAI,GAAA,CAQpB,SAASC,CAAAA,CAKdC,CAAAA,CACAC,EACsB,CACtB,OAAO,IAAM,CAEX,GAAIH,CAAAA,CAAe,GAAA,CAAIE,CAAE,CAAA,CACvB,OAAOF,CAAAA,CAAe,GAAA,CAAIE,CAAE,CAAA,CAG9B,IAAME,EAAeD,CAAAA,CAAW,KAAA,EAAM,CAChCE,CAAAA,CAAQC,EAAoBJ,CAAAA,CAAIE,CAAAA,CAAcD,CAAU,CAAA,CAC9D,OAAAH,CAAAA,CAAe,GAAA,CAAIE,CAAAA,CAAIG,CAAK,EACrBA,CACT,CACF,CAEA,SAASC,CAAAA,CAKPJ,EACAE,CAAAA,CACAD,CAAAA,CACgB,CAEhB,IAAMI,EAAgD,EAAC,CACjDC,CAAAA,CAAY,MAAA,CAAO,KAAKJ,CAAY,CAAA,CAE1C,IAAA,IAAWK,CAAAA,IAAOD,EAChBD,CAAAA,CAAaE,CAAG,EAAIC,CAAAA,CAAON,CAAAA,CAAaK,CAAG,CAAC,CAAA,CAI9C,IAAMJ,GAAAA,CAAa,CAAE,GAAA,CAAKH,CAAG,CAAA,CAG7B,IAAA,IAAWO,KAAOD,CAAAA,CAChBH,GAAAA,CAAMI,CAAG,CAAA,CAAIF,EAAaE,CAAG,CAAA,CAI/B,GAAIN,CAAAA,CAAW,OAAA,CACb,OAAW,CAACM,CAAAA,CAAKE,CAAQ,CAAA,GAAK,OAAO,OAAA,CAAQR,CAAAA,CAAW,OAAO,CAAA,CAC7DE,IAAMI,CAAG,CAAA,CAAIG,CAAAA,CAAS,IACnBD,EAAsB,IAAA,CAAKN,GAAAA,CAAOE,CAAY,CACjD,CAAA,CAKJ,IAAMM,GAAAA,CAAU,CAAC,GAAGhB,CAAAA,CAAe,GAAIM,CAAAA,CAAW,OAAA,EAAW,EAAG,EAGhE,GAAIA,CAAAA,CAAW,OAAA,CACb,IAAA,GAAW,CAACM,CAAAA,CAAKK,CAAQ,IAAK,MAAA,CAAO,OAAA,CAAQX,EAAW,OAAO,CAAA,CAC7DE,GAAAA,CAAMI,CAAG,EAAI,CAAA,GAAIM,CAAAA,GAAoB,CACnC,IAAA,IAAWC,KAAUH,GAAAA,CAASG,CAAAA,CAAO,QAAA,GAAWX,GAAAA,CAAOI,EAAKM,CAAI,CAAA,CAChE,OAAQD,CAAAA,CAAsB,KAAA,CAAMT,IAAOU,CAAI,CACjD,CAAA,CAKJV,GAAAA,CAAM,OAAS,IAAM,CACnB,IAAMY,CAAAA,CAAQd,EAAW,KAAA,EAAM,CAC/B,IAAA,IAAWM,CAAAA,IAAOD,EAChBD,CAAAA,CAAaE,CAAG,EAAE,GAAA,CAAIQ,CAAAA,CAAMR,CAAc,CAAC,EAE/C,CAAA,CAGAJ,GAAAA,CAAM,OAAUa,CAAAA,EAAqD,CACnE,GAAI,OAAOA,GAAgB,UAAA,CACzBA,CAAAA,CAAYX,CAAY,CAAA,CAAA,YAEb,CAACE,CAAAA,CAAKU,CAAK,CAAA,GAAK,MAAA,CAAO,QAAQD,CAAW,CAAA,CAC/CT,CAAAA,IAAOF,CAAAA,EACTA,EAAaE,CAAG,CAAA,CAAE,GAAA,CAAIU,CAAK,EAInC,CAAA,CAGAd,GAAAA,CAAM,SAAA,CAAY,IAAS,CACzB,IAAMe,CAAAA,CAAoC,EAAC,CAC3C,IAAA,IAAWX,KAAOD,CAAAA,CAChBY,CAAAA,CAASX,CAAG,CAAA,CAAIF,EAAaE,CAAG,CAAA,EAAE,CAEpC,OAAOW,CACT,CAAA,CAGA,IAAMC,CAAAA,CAAc,IAAI,IACpBC,CAAAA,CAAuC,IAAA,CAC3CjB,IAAM,UAAA,CAAckB,CAAAA,EAA+C,CAGjE,GAFAF,CAAAA,CAAY,GAAA,CAAIE,CAAQ,EAEpB,CAACD,CAAAA,CAAiB,CACpB,IAAIE,EAAY,IAAA,CAChBF,CAAAA,CAAkBG,CAAAA,CAAO,IAAM,CAE7B,IAAA,IAAWhB,CAAAA,IAAOD,EAChBD,CAAAA,CAAaE,CAAG,GAAE,CAGpB,GAAIe,CAAAA,CAAW,CACbA,EAAY,KAAA,CACZ,MACF,CACA,IAAMJ,EAAWf,GAAAA,CAAM,SAAA,EAAU,CACjC,IAAA,IAAWqB,KAAML,CAAAA,CACfK,CAAAA,CAAGN,CAAQ,EAEf,CAAC,EACH,CACA,OAAO,IAAM,CACXC,EAAY,MAAA,CAAOE,CAAQ,CAAA,CAEvBF,CAAAA,CAAY,OAAS,CAAA,EAAKC,CAAAA,GAC5BA,CAAAA,EAAgB,CAChBA,EAAkB,IAAA,EAEtB,CACF,EAGA,IAAA,IAAWN,CAAAA,IAAUH,IAASG,CAAAA,CAAO,IAAA,GAAOX,GAAK,CAAA,CAEjD,OAAOA,GACT,CAKO,SAASsB,CAAAA,EAAoB,CAClC3B,CAAAA,CAAe,KAAA,GACjB,CAGO,SAAS4B,CAAAA,EAA4D,CAC1E,OAAO,MAAA,CAAO,WAAA,CAAY5B,CAAc,CAC1C","file":"chunk-3KIPMVCN.js","sourcesContent":["/**\n * Global state management via defineStore().\n *\n * Stores are singleton signal containers that persist across\n * components. They provide shared state, computed getters,\n * and actions — no external library needed.\n *\n * ```ts\n * const useCounterStore = defineStore('counter', {\n * state: () => ({ count: 0, name: 'Counter' }),\n * getters: {\n * doubled: (state) => state.count() * 2,\n * },\n * actions: {\n * increment() { this.count.update(c => c + 1); },\n * reset() { this.count.set(0); },\n * },\n * });\n *\n * // In any component:\n * const store = useCounterStore();\n * store.count(); // 0\n * store.doubled(); // 0\n * store.increment();\n * store.count(); // 1\n * ```\n */\n\nimport { signal, computed, effect } from './signals.js';\nimport type { Signal, ReadonlySignal } from './signals.js';\n\n// --- Types ---\n\ntype StateFactory<S> = () => S;\n\ntype Getters<S, G> = {\n [K in keyof G]: (state: SignalifiedState<S>) => G[K];\n};\n\ntype Actions<A> = {\n [K in keyof A]: A[K] extends (...args: infer P) => infer R\n ? (...args: P) => R\n : never;\n};\n\n/** Maps plain state values to signals */\ntype SignalifiedState<S> = {\n [K in keyof S]: Signal<S[K]>;\n};\n\n/** The store instance returned to consumers */\nexport type Store<S, G, A> = SignalifiedState<S> & {\n [K in keyof G]: ReadonlySignal<G[K]>;\n} & {\n [K in keyof A]: A[K] extends (...args: infer P) => infer R\n ? (...args: P) => R\n : never;\n} & {\n /** Reset all state to initial values */\n $reset(): void;\n /** Merge partial state into the store, or apply changes via callback */\n $patch(partialOrFn: Partial<S> | ((state: SignalifiedState<S>) => void)): void;\n /** Subscribe to all state changes */\n $subscribe(callback: (state: S) => void): () => void;\n /** Get a plain snapshot of current state */\n $snapshot(): S;\n /** Store ID */\n $id: string;\n};\n\nexport interface StoreDefinition<S, G, A> {\n state: StateFactory<S>;\n getters?: Getters<S, G>;\n actions?: A;\n plugins?: StorePlugin[];\n}\n\n// --- Plugin system ---\n\nexport interface StorePlugin {\n init?(store: Store<any, any, any>): void;\n onAction?(store: Store<any, any, any>, actionName: string, args: unknown[]): void;\n}\n\nconst globalPlugins: StorePlugin[] = [];\n\n/** Register global plugins that apply to all stores */\nexport function configureStores(options: { plugins: StorePlugin[] }): void {\n globalPlugins.push(...options.plugins);\n}\n\n// --- Store registry (singleton) ---\n\nconst storeInstances = new Map<string, Store<any, any, any>>();\n\n// --- defineStore ---\n\n/**\n * Define a global store. Returns a composable function that\n * always returns the same store instance (singleton).\n */\nexport function defineStore<\n S extends Record<string, unknown>,\n G extends Record<string, unknown> = {},\n A extends Record<string, (...args: any[]) => any> = {},\n>(\n id: string,\n definition: StoreDefinition<S, G, A>,\n): () => Store<S, G, A> {\n return () => {\n // Return existing instance if already created\n if (storeInstances.has(id)) {\n return storeInstances.get(id) as Store<S, G, A>;\n }\n\n const initialState = definition.state();\n const store = createStoreInstance(id, initialState, definition);\n storeInstances.set(id, store);\n return store;\n };\n}\n\nfunction createStoreInstance<\n S extends Record<string, unknown>,\n G extends Record<string, unknown>,\n A extends Record<string, (...args: any[]) => any>,\n>(\n id: string,\n initialState: S,\n definition: StoreDefinition<S, G, A>,\n): Store<S, G, A> {\n // Create signals for each state property\n const stateSignals: Record<string, Signal<unknown>> = {};\n const stateKeys = Object.keys(initialState);\n\n for (const key of stateKeys) {\n stateSignals[key] = signal(initialState[key]);\n }\n\n // Build the store object first so getters can reference other getters via `this`\n const store: any = { $id: id };\n\n // Add state signals\n for (const key of stateKeys) {\n store[key] = stateSignals[key];\n }\n\n // Create computed getters — bound to store so `this.otherGetter()` works\n if (definition.getters) {\n for (const [key, getterFn] of Object.entries(definition.getters)) {\n store[key] = computed(() =>\n (getterFn as Function).call(store, stateSignals),\n );\n }\n }\n\n // Collect all plugins (global + per-store)\n const plugins = [...globalPlugins, ...(definition.plugins ?? [])];\n\n // Bind actions with `this` pointing to the full store (state + getters + actions)\n if (definition.actions) {\n for (const [key, actionFn] of Object.entries(definition.actions)) {\n store[key] = (...args: unknown[]) => {\n for (const plugin of plugins) plugin.onAction?.(store, key, args);\n return (actionFn as Function).apply(store, args);\n };\n }\n }\n\n // $reset\n store.$reset = () => {\n const fresh = definition.state();\n for (const key of stateKeys) {\n stateSignals[key].set(fresh[key as keyof S]);\n }\n };\n\n // $patch — merge partial state or apply via callback\n store.$patch = (partialOrFn: Partial<S> | ((state: any) => void)) => {\n if (typeof partialOrFn === 'function') {\n partialOrFn(stateSignals);\n } else {\n for (const [key, value] of Object.entries(partialOrFn)) {\n if (key in stateSignals) {\n stateSignals[key].set(value);\n }\n }\n }\n };\n\n // $snapshot\n store.$snapshot = (): S => {\n const snapshot: Record<string, unknown> = {};\n for (const key of stateKeys) {\n snapshot[key] = stateSignals[key]();\n }\n return snapshot as S;\n };\n\n // $subscribe — watch all state signals and notify on change\n const subscribers = new Set<(state: S) => void>();\n let subscribeEffect: (() => void) | null = null;\n store.$subscribe = (callback: (state: S) => void): (() => void) => {\n subscribers.add(callback);\n // Start watching if this is the first subscriber\n if (!subscribeEffect) {\n let isInitial = true;\n subscribeEffect = effect(() => {\n // Read all state signals to track them\n for (const key of stateKeys) {\n stateSignals[key]();\n }\n // Skip initial run — only notify on actual changes\n if (isInitial) {\n isInitial = false;\n return;\n }\n const snapshot = store.$snapshot();\n for (const cb of subscribers) {\n cb(snapshot);\n }\n });\n }\n return () => {\n subscribers.delete(callback);\n // Dispose effect when no subscribers remain\n if (subscribers.size === 0 && subscribeEffect) {\n subscribeEffect();\n subscribeEffect = null;\n }\n };\n };\n\n // Initialize plugins\n for (const plugin of plugins) plugin.init?.(store);\n\n return store as Store<S, G, A>;\n}\n\n/**\n * Clear all store instances (useful for testing).\n */\nexport function clearStores(): void {\n storeInstances.clear();\n}\n\n/** @internal — exposes store registry for devtools */\nexport function __getStoreInstances(): Record<string, Store<any, any, any>> {\n return Object.fromEntries(storeInstances);\n}\n"]}
@@ -0,0 +1,2 @@
1
+ 'use strict';var chunkRTJ6UDGV_cjs=require('./chunk-RTJ6UDGV.cjs');var k=[];function v(s){k.push(...s.plugins);}var g=new Map;function b(s,a){return ()=>{if(g.has(s))return g.get(s);let r=a.state(),o=A(s,r,a);return g.set(s,o),o}}function A(s,a,r){let o={},c=Object.keys(a);for(let t of c)o[t]=chunkRTJ6UDGV_cjs.l(a[t]);let n={$id:s};for(let t of c)n[t]=o[t];if(r.getters)for(let[t,e]of Object.entries(r.getters))n[t]=chunkRTJ6UDGV_cjs.m(()=>e.call(n,o));let l=[...k,...r.plugins??[]];if(r.actions)for(let[t,e]of Object.entries(r.actions))n[t]=(...i)=>{for(let f of l)f.onAction?.(n,t,i);return e.apply(n,i)};n.$reset=()=>{let t=r.state();for(let e of c)o[e].set(t[e]);},n.$patch=t=>{if(typeof t=="function")t(o);else for(let[e,i]of Object.entries(t))e in o&&o[e].set(i);},n.$snapshot=()=>{let t={};for(let e of c)t[e]=o[e]();return t};let u=new Set,S=null;n.$subscribe=t=>{if(u.add(t),!S){let e=true;S=chunkRTJ6UDGV_cjs.n(()=>{for(let f of c)o[f]();if(e){e=false;return}let i=n.$snapshot();for(let f of u)f(i);});}return ()=>{u.delete(t),u.size===0&&S&&(S(),S=null);}};for(let t of l)t.init?.(n);return n}function x(){g.clear();}function R(){return Object.fromEntries(g)}exports.a=v;exports.b=b;exports.c=x;exports.d=R;//# sourceMappingURL=chunk-M7HHZMIO.cjs.map
2
+ //# sourceMappingURL=chunk-M7HHZMIO.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/store.ts"],"names":["globalPlugins","configureStores","options","storeInstances","defineStore","id","definition","initialState","store","createStoreInstance","stateSignals","stateKeys","key","signal","getterFn","computed","plugins","actionFn","args","plugin","fresh","partialOrFn","value","snapshot","subscribers","subscribeEffect","callback","isInitial","effect","cb","clearStores","__getStoreInstances"],"mappings":"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","file":"chunk-M7HHZMIO.cjs","sourcesContent":["/**\n * Global state management via defineStore().\n *\n * Stores are singleton signal containers that persist across\n * components. They provide shared state, computed getters,\n * and actions — no external library needed.\n *\n * ```ts\n * const useCounterStore = defineStore('counter', {\n * state: () => ({ count: 0, name: 'Counter' }),\n * getters: {\n * doubled: (state) => state.count() * 2,\n * },\n * actions: {\n * increment() { this.count.update(c => c + 1); },\n * reset() { this.count.set(0); },\n * },\n * });\n *\n * // In any component:\n * const store = useCounterStore();\n * store.count(); // 0\n * store.doubled(); // 0\n * store.increment();\n * store.count(); // 1\n * ```\n */\n\nimport { signal, computed, effect } from './signals.js';\nimport type { Signal, ReadonlySignal } from './signals.js';\n\n// --- Types ---\n\ntype StateFactory<S> = () => S;\n\ntype Getters<S, G> = {\n [K in keyof G]: (state: SignalifiedState<S>) => G[K];\n};\n\ntype Actions<A> = {\n [K in keyof A]: A[K] extends (...args: infer P) => infer R\n ? (...args: P) => R\n : never;\n};\n\n/** Maps plain state values to signals */\ntype SignalifiedState<S> = {\n [K in keyof S]: Signal<S[K]>;\n};\n\n/** The store instance returned to consumers */\nexport type Store<S, G, A> = SignalifiedState<S> & {\n [K in keyof G]: ReadonlySignal<G[K]>;\n} & {\n [K in keyof A]: A[K] extends (...args: infer P) => infer R\n ? (...args: P) => R\n : never;\n} & {\n /** Reset all state to initial values */\n $reset(): void;\n /** Merge partial state into the store, or apply changes via callback */\n $patch(partialOrFn: Partial<S> | ((state: SignalifiedState<S>) => void)): void;\n /** Subscribe to all state changes */\n $subscribe(callback: (state: S) => void): () => void;\n /** Get a plain snapshot of current state */\n $snapshot(): S;\n /** Store ID */\n $id: string;\n};\n\nexport interface StoreDefinition<S, G, A> {\n state: StateFactory<S>;\n getters?: Getters<S, G>;\n actions?: A;\n plugins?: StorePlugin[];\n}\n\n// --- Plugin system ---\n\nexport interface StorePlugin {\n init?(store: Store<any, any, any>): void;\n onAction?(store: Store<any, any, any>, actionName: string, args: unknown[]): void;\n}\n\nconst globalPlugins: StorePlugin[] = [];\n\n/** Register global plugins that apply to all stores */\nexport function configureStores(options: { plugins: StorePlugin[] }): void {\n globalPlugins.push(...options.plugins);\n}\n\n// --- Store registry (singleton) ---\n\nconst storeInstances = new Map<string, Store<any, any, any>>();\n\n// --- defineStore ---\n\n/**\n * Define a global store. Returns a composable function that\n * always returns the same store instance (singleton).\n */\nexport function defineStore<\n S extends Record<string, unknown>,\n G extends Record<string, unknown> = {},\n A extends Record<string, (...args: any[]) => any> = {},\n>(\n id: string,\n definition: StoreDefinition<S, G, A>,\n): () => Store<S, G, A> {\n return () => {\n // Return existing instance if already created\n if (storeInstances.has(id)) {\n return storeInstances.get(id) as Store<S, G, A>;\n }\n\n const initialState = definition.state();\n const store = createStoreInstance(id, initialState, definition);\n storeInstances.set(id, store);\n return store;\n };\n}\n\nfunction createStoreInstance<\n S extends Record<string, unknown>,\n G extends Record<string, unknown>,\n A extends Record<string, (...args: any[]) => any>,\n>(\n id: string,\n initialState: S,\n definition: StoreDefinition<S, G, A>,\n): Store<S, G, A> {\n // Create signals for each state property\n const stateSignals: Record<string, Signal<unknown>> = {};\n const stateKeys = Object.keys(initialState);\n\n for (const key of stateKeys) {\n stateSignals[key] = signal(initialState[key]);\n }\n\n // Build the store object first so getters can reference other getters via `this`\n const store: any = { $id: id };\n\n // Add state signals\n for (const key of stateKeys) {\n store[key] = stateSignals[key];\n }\n\n // Create computed getters — bound to store so `this.otherGetter()` works\n if (definition.getters) {\n for (const [key, getterFn] of Object.entries(definition.getters)) {\n store[key] = computed(() =>\n (getterFn as Function).call(store, stateSignals),\n );\n }\n }\n\n // Collect all plugins (global + per-store)\n const plugins = [...globalPlugins, ...(definition.plugins ?? [])];\n\n // Bind actions with `this` pointing to the full store (state + getters + actions)\n if (definition.actions) {\n for (const [key, actionFn] of Object.entries(definition.actions)) {\n store[key] = (...args: unknown[]) => {\n for (const plugin of plugins) plugin.onAction?.(store, key, args);\n return (actionFn as Function).apply(store, args);\n };\n }\n }\n\n // $reset\n store.$reset = () => {\n const fresh = definition.state();\n for (const key of stateKeys) {\n stateSignals[key].set(fresh[key as keyof S]);\n }\n };\n\n // $patch — merge partial state or apply via callback\n store.$patch = (partialOrFn: Partial<S> | ((state: any) => void)) => {\n if (typeof partialOrFn === 'function') {\n partialOrFn(stateSignals);\n } else {\n for (const [key, value] of Object.entries(partialOrFn)) {\n if (key in stateSignals) {\n stateSignals[key].set(value);\n }\n }\n }\n };\n\n // $snapshot\n store.$snapshot = (): S => {\n const snapshot: Record<string, unknown> = {};\n for (const key of stateKeys) {\n snapshot[key] = stateSignals[key]();\n }\n return snapshot as S;\n };\n\n // $subscribe — watch all state signals and notify on change\n const subscribers = new Set<(state: S) => void>();\n let subscribeEffect: (() => void) | null = null;\n store.$subscribe = (callback: (state: S) => void): (() => void) => {\n subscribers.add(callback);\n // Start watching if this is the first subscriber\n if (!subscribeEffect) {\n let isInitial = true;\n subscribeEffect = effect(() => {\n // Read all state signals to track them\n for (const key of stateKeys) {\n stateSignals[key]();\n }\n // Skip initial run — only notify on actual changes\n if (isInitial) {\n isInitial = false;\n return;\n }\n const snapshot = store.$snapshot();\n for (const cb of subscribers) {\n cb(snapshot);\n }\n });\n }\n return () => {\n subscribers.delete(callback);\n // Dispose effect when no subscribers remain\n if (subscribers.size === 0 && subscribeEffect) {\n subscribeEffect();\n subscribeEffect = null;\n }\n };\n };\n\n // Initialize plugins\n for (const plugin of plugins) plugin.init?.(store);\n\n return store as Store<S, G, A>;\n}\n\n/**\n * Clear all store instances (useful for testing).\n */\nexport function clearStores(): void {\n storeInstances.clear();\n}\n\n/** @internal — exposes store registry for devtools */\nexport function __getStoreInstances(): Record<string, Store<any, any, any>> {\n return Object.fromEntries(storeInstances);\n}\n"]}
package/dist/index.cjs CHANGED
@@ -1,4 +1,4 @@
1
- 'use strict';var chunkYSVREYEH_cjs=require('./chunk-YSVREYEH.cjs'),chunkTBCX5WQQ_cjs=require('./chunk-TBCX5WQQ.cjs'),chunkYIVBLM2A_cjs=require('./chunk-YIVBLM2A.cjs'),chunkOCBLY4E4_cjs=require('./chunk-OCBLY4E4.cjs'),chunkUOD4PYAN_cjs=require('./chunk-UOD4PYAN.cjs'),chunkYN2TQLVA_cjs=require('./chunk-YN2TQLVA.cjs'),chunkCO4D6JTQ_cjs=require('./chunk-CO4D6JTQ.cjs'),chunkRTJ6UDGV_cjs=require('./chunk-RTJ6UDGV.cjs'),chunkY5HEEST4_cjs=require('./chunk-Y5HEEST4.cjs');function un(e,t){if(e&&typeof e=="function"){let n=e();return chunkYIVBLM2A_cjs.u(n)}return t?chunkYIVBLM2A_cjs.u(t()):document.createComment("empty slot")}function dn(e,t){if(!e)return false;let n=t&&typeof e=="object"?e[t]:e;if(!n||typeof n!="function")return false;let r=n();return !(r==null||r===false||typeof r=="string"&&r.trim()==="")}function pn(e,t){let n={},r=t??Object.keys(e);for(let o of r){let i=e[o];typeof i=="function"&&(n[o]=i);}return n}var fn=chunkYIVBLM2A_cjs.B(e=>{let t=chunkRTJ6UDGV_cjs.l(null);chunkYIVBLM2A_cjs.z(r=>{t.set(r);});function n(){t.set(null);}return ()=>{let r=t();return r?chunkYIVBLM2A_cjs.u(e.props.fallback(r,n)):chunkYIVBLM2A_cjs.u(e.children())}});var j=null;function mn(){return j}function gn(e){j&&j.addPending(e);}var yn=chunkYIVBLM2A_cjs.B(e=>{let t=chunkRTJ6UDGV_cjs.l(false),n=[],r={addPending(s){n.push(s);},isResolved:()=>t()},o=j;j=r;let i;try{i=e.children();}finally{j=o;}return n.length>0?Promise.all(n).then(()=>{t.set(true);}):t.set(true),()=>{let s=document.createElement("div");return s.setAttribute("data-akash-suspense",""),s.style.display="contents",t()?s.appendChild(chunkYIVBLM2A_cjs.u(i)):s.appendChild(chunkYIVBLM2A_cjs.u(e.props.fallback())),chunkRTJ6UDGV_cjs.n(()=>{if(t()){for(;s.firstChild;)s.removeChild(s.firstChild);s.appendChild(chunkYIVBLM2A_cjs.u(i));}}),s}});var N=false,L=null;function hn(){return N}function Z(e){let{container:t,component:n,props:r={}}=e;N=true,L=document.createTreeWalker(t,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT);try{n(r);}finally{N=false,L=null;}return ()=>{}}function Tn(e){if(!N||!L)return null;let t=L.nextNode();for(;t;){if(t instanceof HTMLElement&&t.tagName.toLowerCase()===e.toLowerCase())return t;t=L.nextNode();}return null}function vn(){if(!N||!L)return null;let e=L.nextNode();for(;e;){if(e instanceof Text)return e;e=L.nextNode();}return null}function bn(e){let{target:t,component:n,props:r,rootMargin:o="200px"}=e;if(typeof IntersectionObserver>"u")return Z({container:t,component:n,props:r});let i=false,s=new IntersectionObserver(a=>{for(let c of a)c.isIntersecting&&!i&&(s.disconnect(),Z({container:t,component:n,props:r}));},{rootMargin:o});return s.observe(t),()=>{i=true,s.disconnect();}}var ge="data-akash-hydrate";function wn(e=document.body){return Array.from(e.querySelectorAll(`[${ge}]`))}function ye(e){return {enterFrom:`${e}-enter-from`,enterActive:`${e}-enter-active`,enterTo:`${e}-enter-to`,exitFrom:`${e}-exit-from`,exitActive:`${e}-exit-active`,exitTo:`${e}-exit-to`}}function he(e,t,n){return new Promise(r=>{e.classList.add(t.enterFrom,t.enterActive),e.offsetHeight,e.classList.remove(t.enterFrom),e.classList.add(t.enterTo);let o=()=>{e.classList.remove(t.enterActive,t.enterTo),e.removeEventListener("transitionend",o),r();};n!==void 0?setTimeout(o,n):(e.addEventListener("transitionend",o,{once:true}),setTimeout(o,5e3));})}function Sn(e,t,n){return new Promise(r=>{e.classList.add(t.exitFrom,t.exitActive),e.offsetHeight,e.classList.remove(t.exitFrom),e.classList.add(t.exitTo);let o=()=>{e.classList.remove(t.exitActive,t.exitTo),e.removeEventListener("transitionend",o),r();};n!==void 0?setTimeout(o,n):(e.addEventListener("transitionend",o,{once:true}),setTimeout(o,5e3));})}var xn=chunkYIVBLM2A_cjs.B(e=>{let t=e.props.name??"akash",n=ye(t);return ()=>{let r=document.createElement("div");if(r.style.display="contents",e.props.when){let o=chunkYIVBLM2A_cjs.u(e.children());r.appendChild(o),o instanceof HTMLElement&&(e.props.onEnter?.(o),he(o,n,e.props.duration).then(()=>{e.props.onAfterEnter?.(o);}));}return r}});function En(e,t={}){let{property:n="all",duration:r="0.3s",easing:o="ease"}=t;return `
1
+ 'use strict';var chunkYSVREYEH_cjs=require('./chunk-YSVREYEH.cjs'),chunkTBCX5WQQ_cjs=require('./chunk-TBCX5WQQ.cjs'),chunkYIVBLM2A_cjs=require('./chunk-YIVBLM2A.cjs'),chunkM7HHZMIO_cjs=require('./chunk-M7HHZMIO.cjs'),chunkUOD4PYAN_cjs=require('./chunk-UOD4PYAN.cjs'),chunkYN2TQLVA_cjs=require('./chunk-YN2TQLVA.cjs'),chunkCO4D6JTQ_cjs=require('./chunk-CO4D6JTQ.cjs'),chunkRTJ6UDGV_cjs=require('./chunk-RTJ6UDGV.cjs'),chunkY5HEEST4_cjs=require('./chunk-Y5HEEST4.cjs');function un(e,t){if(e&&typeof e=="function"){let n=e();return chunkYIVBLM2A_cjs.u(n)}return t?chunkYIVBLM2A_cjs.u(t()):document.createComment("empty slot")}function dn(e,t){if(!e)return false;let n=t&&typeof e=="object"?e[t]:e;if(!n||typeof n!="function")return false;let r=n();return !(r==null||r===false||typeof r=="string"&&r.trim()==="")}function pn(e,t){let n={},r=t??Object.keys(e);for(let o of r){let i=e[o];typeof i=="function"&&(n[o]=i);}return n}var fn=chunkYIVBLM2A_cjs.B(e=>{let t=chunkRTJ6UDGV_cjs.l(null);chunkYIVBLM2A_cjs.z(r=>{t.set(r);});function n(){t.set(null);}return ()=>{let r=t();return r?chunkYIVBLM2A_cjs.u(e.props.fallback(r,n)):chunkYIVBLM2A_cjs.u(e.children())}});var j=null;function mn(){return j}function gn(e){j&&j.addPending(e);}var yn=chunkYIVBLM2A_cjs.B(e=>{let t=chunkRTJ6UDGV_cjs.l(false),n=[],r={addPending(s){n.push(s);},isResolved:()=>t()},o=j;j=r;let i;try{i=e.children();}finally{j=o;}return n.length>0?Promise.all(n).then(()=>{t.set(true);}):t.set(true),()=>{let s=document.createElement("div");return s.setAttribute("data-akash-suspense",""),s.style.display="contents",t()?s.appendChild(chunkYIVBLM2A_cjs.u(i)):s.appendChild(chunkYIVBLM2A_cjs.u(e.props.fallback())),chunkRTJ6UDGV_cjs.n(()=>{if(t()){for(;s.firstChild;)s.removeChild(s.firstChild);s.appendChild(chunkYIVBLM2A_cjs.u(i));}}),s}});var N=false,L=null;function hn(){return N}function Z(e){let{container:t,component:n,props:r={}}=e;N=true,L=document.createTreeWalker(t,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT);try{n(r);}finally{N=false,L=null;}return ()=>{}}function Tn(e){if(!N||!L)return null;let t=L.nextNode();for(;t;){if(t instanceof HTMLElement&&t.tagName.toLowerCase()===e.toLowerCase())return t;t=L.nextNode();}return null}function vn(){if(!N||!L)return null;let e=L.nextNode();for(;e;){if(e instanceof Text)return e;e=L.nextNode();}return null}function bn(e){let{target:t,component:n,props:r,rootMargin:o="200px"}=e;if(typeof IntersectionObserver>"u")return Z({container:t,component:n,props:r});let i=false,s=new IntersectionObserver(a=>{for(let c of a)c.isIntersecting&&!i&&(s.disconnect(),Z({container:t,component:n,props:r}));},{rootMargin:o});return s.observe(t),()=>{i=true,s.disconnect();}}var ge="data-akash-hydrate";function wn(e=document.body){return Array.from(e.querySelectorAll(`[${ge}]`))}function ye(e){return {enterFrom:`${e}-enter-from`,enterActive:`${e}-enter-active`,enterTo:`${e}-enter-to`,exitFrom:`${e}-exit-from`,exitActive:`${e}-exit-active`,exitTo:`${e}-exit-to`}}function he(e,t,n){return new Promise(r=>{e.classList.add(t.enterFrom,t.enterActive),e.offsetHeight,e.classList.remove(t.enterFrom),e.classList.add(t.enterTo);let o=()=>{e.classList.remove(t.enterActive,t.enterTo),e.removeEventListener("transitionend",o),r();};n!==void 0?setTimeout(o,n):(e.addEventListener("transitionend",o,{once:true}),setTimeout(o,5e3));})}function Sn(e,t,n){return new Promise(r=>{e.classList.add(t.exitFrom,t.exitActive),e.offsetHeight,e.classList.remove(t.exitFrom),e.classList.add(t.exitTo);let o=()=>{e.classList.remove(t.exitActive,t.exitTo),e.removeEventListener("transitionend",o),r();};n!==void 0?setTimeout(o,n):(e.addEventListener("transitionend",o,{once:true}),setTimeout(o,5e3));})}var xn=chunkYIVBLM2A_cjs.B(e=>{let t=e.props.name??"akash",n=ye(t);return ()=>{let r=document.createElement("div");if(r.style.display="contents",e.props.when){let o=chunkYIVBLM2A_cjs.u(e.children());r.appendChild(o),o instanceof HTMLElement&&(e.props.onEnter?.(o),he(o,n,e.props.duration).then(()=>{e.props.onAfterEnter?.(o);}));}return r}});function En(e,t={}){let{property:n="all",duration:r="0.3s",easing:o="ease"}=t;return `
2
2
  .${e}-enter-active,
3
3
  .${e}-exit-active {
4
4
  transition: ${n} ${r} ${o};
@@ -58,5 +58,5 @@ ${n.stackTrace}`);}}}function sr(){return {enabled:I,activeCount:M.size,totalTra
58
58
  animation-name: ${o};
59
59
  }
60
60
  `),i}function To(e,t){e.style.viewTransitionName=t;}function vo(e,t){let n=document.documentElement,r=new Promise(async o=>{n.style.transition="opacity 0.15s ease",n.style.opacity="0",await new Promise(i=>setTimeout(i,150)),await e(),n.style.opacity="1",await new Promise(i=>setTimeout(i,150)),n.style.transition="",n.style.opacity="",t.onAfter?.(),o();});return {finished:r,updateCallbackDone:r,ready:Promise.resolve(),skipTransition:()=>{n.style.transition="",n.style.opacity="";}}}function bo(e){return Array.isArray(e)?e.join(","):typeof e=="boolean"?e?"true":"false":String(e)}function wo(e,t){return typeof t=="number"?Number(e):typeof t=="boolean"?e==="true"||e==="1":Array.isArray(t)?e?e.split(","):[]:e}function B(){return typeof window>"u"?new URLSearchParams:new URLSearchParams(window.location.search)}function So(e,t){if(typeof window>"u")return;let n=e.toString(),r=n?`${window.location.pathname}?${n}${window.location.hash}`:`${window.location.pathname}${window.location.hash}`;t==="push"?window.history.pushState(null,"",r):window.history.replaceState(null,"",r);}var K=new Map,De=false;function xo(){De||typeof window>"u"||(De=true,window.addEventListener("popstate",()=>{let e=B();chunkRTJ6UDGV_cjs.a(()=>{for(let[t,n]of K){let r=e.get(t),o=r!==null?n.deserialize(r):n.defaultValue;n.signal.set(o);}});}));}function Me(e,t,n={}){let{serialize:r=m=>bo(m),deserialize:o=m=>wo(m,t),history:i="replace",debounce:s=0,removeDefault:a=true}=n,u=B().get(e),d=u!==null?o(u):t,l=chunkRTJ6UDGV_cjs.l(d);K.set(e,{signal:l,deserialize:o,defaultValue:t}),xo();let p=null,f=false,y=l.set;l.set=m=>{if(y(m),f);let h=()=>{let b=B();a&&m===t?b.delete(e):b.set(e,r(m)),So(b,i);};s>0?(p&&clearTimeout(p),p=setTimeout(h,s)):h();};l.update;return l.update=m=>{l.set(m(l()));},l}function Eo(e,t){let n={};for(let[r,o]of Object.entries(e))n[r]=Me(r,o.default,{serialize:o.serialize,deserialize:o.deserialize,history:t?.history});return n}function ko(){if(typeof window>"u")return;let e=`${window.location.pathname}${window.location.hash}`;window.history.replaceState(null,"",e),chunkRTJ6UDGV_cjs.a(()=>{for(let[,t]of K)t.signal.set(t.defaultValue);});}function Po(){let e=B(),t={};return e.forEach((n,r)=>{t[r]=n;}),t}function Co(e){K.delete(e);}function Ao(){K.clear();}var ie=typeof requestAnimationFrame=="function"?requestAnimationFrame:e=>setTimeout(()=>e(Date.now()),16),Ie=typeof cancelAnimationFrame=="function"?cancelAnimationFrame:e=>clearTimeout(e),He={linear:e=>e,cubicIn:e=>e*e*e,cubicOut:e=>1-Math.pow(1-e,3),cubicInOut:e=>e<.5?4*e*e*e:1-Math.pow(-2*e+2,3)/2,quadIn:e=>e*e,quadOut:e=>1-(1-e)*(1-e),quintOut:e=>1-Math.pow(1-e,5),bounceOut:e=>e<1/2.75?7.5625*e*e:e<2/2.75?7.5625*(e-=1.5/2.75)*e+.75:e<2.5/2.75?7.5625*(e-=2.25/2.75)*e+.9375:7.5625*(e-=2.625/2.75)*e+.984375,elasticOut:e=>e===0||e===1?e:Math.pow(2,-10*e)*Math.sin((e-.1)*5*Math.PI)+1};function Ro(e,t,n){return typeof e=="number"&&typeof t=="number"?e+(t-e)*n:n<.5?e:t}function Oo(e,t={}){let{duration:n=400,easing:r=He.cubicOut,interpolate:o=Ro,delay:i=0}=t,s=chunkRTJ6UDGV_cjs.l(e),a=chunkRTJ6UDGV_cjs.l(e),c=0,u=false,d=(()=>s());return d.set=(l,p)=>{let f=p?.duration??n,y=p?.easing??r,T=p?.interpolate??o,m=p?.delay??i,h=s();return a.set(l),f===0?(s.set(l),Promise.resolve()):(u&&(Ie(c),u=false),new Promise(b=>{let k=performance.now()+m;u=true;function v(S){if(!u){b();return}let A=S-k;if(A<0){c=ie(v);return}let P=Math.min(A/f,1),R=y(P);s.set(T(h,l,R)),P<1?c=ie(v):(u=false,b());}c=ie(v);}))},d.setImmediate=l=>{u&&(Ie(c),u=false),s.set(l),a.set(l);},d.target=()=>a(),d}function je(e,t={}){let{duration:n=300,easing:r="cubic-bezier(0.2, 0, 0, 1)",delay:o=0,selector:i,keyAttribute:s="data-key",onComplete:a}=t,c=new Map;function u(){return Array.from(i?e.querySelectorAll(i):e.children)}function d(f){return f.getAttribute(s)??f.id??""}function l(){c=new Map;for(let f of u()){let y=d(f);if(y){let T=f.getBoundingClientRect();c.set(y,{left:T.left,top:T.top,width:T.width,height:T.height});}}}function p(){let f=u(),y=[];for(let m of f){let h=d(m),b=c.get(h);if(!b)continue;let k=m.getBoundingClientRect(),v=b.left-k.left,S=b.top-k.top,A=b.width/(k.width||1),P=b.height/(k.height||1);if(Math.abs(v)<.5&&Math.abs(S)<.5&&Math.abs(A-1)<.01&&Math.abs(P-1)<.01)continue;let R=m.animate([{transform:`translate(${v}px, ${S}px) scale(${A}, ${P})`},{transform:"translate(0, 0) scale(1, 1)"}],{duration:n,easing:r,delay:o,fill:"both"});y.push(R);}let T=new Set(f.map(d));for(let[m,h]of c)T.has(m);return c.clear(),new Promise(m=>{if(y.length===0){a?.(),m();return}Promise.all(y.map(h=>h.finished)).then(()=>{for(let h of y)h.cancel();a?.(),m();});})}return {measure:l,animate:p,async flip(f){return l(),f(),await new Promise(y=>requestAnimationFrame(y)),p()}}}async function Lo(e,t,n){return je(e,n).flip(t)}var Do=chunkYIVBLM2A_cjs.B(e=>{let t=chunkRTJ6UDGV_cjs.l({status:"pending"}),n=e.props.promise;return e.props.promise.then(r=>{e.props.promise===n&&t.set({status:"resolved",value:r});}).catch(r=>{e.props.promise===n&&t.set({status:"rejected",error:r instanceof Error?r:new Error(String(r))});}),()=>{let r=t();switch(r.status){case "pending":return e.props.pending?chunkYIVBLM2A_cjs.u(e.props.pending()):document.createComment("await-pending");case "resolved":return chunkYIVBLM2A_cjs.u(e.props.then(r.value));case "rejected":return e.props.catch?chunkYIVBLM2A_cjs.u(e.props.catch(r.error)):document.createComment("await-error")}}});function Mo(e){let t=chunkRTJ6UDGV_cjs.l({status:"pending"});return e.then(n=>t.set({status:"resolved",value:n})).catch(n=>t.set({status:"rejected",error:n instanceof Error?n:new Error(String(n))})),()=>t()}function Fe(e,t){return n=>{t.self&&n.target!==n.currentTarget||(t.preventDefault&&n.preventDefault(),t.stopPropagation&&n.stopPropagation(),t.stopImmediatePropagation&&n.stopImmediatePropagation?.(),e(n));}}function Io(e,t,n,r={}){let o=Fe(n,r),i={once:r.once,capture:r.capture,passive:r.passive};return e.addEventListener(t,o,i),()=>e.removeEventListener(t,o,i)}function Ho(e){let t=chunkRTJ6UDGV_cjs.l(e.clientWidth),n=chunkRTJ6UDGV_cjs.l(e.clientHeight);return typeof ResizeObserver<"u"&&new ResizeObserver(o=>{let i=o[0];i&&(t.set(i.contentRect.width),n.set(i.contentRect.height));}).observe(e),{width:()=>t(),height:()=>n()}}function jo(e){let t=e??(typeof window<"u"?window:null),n=chunkRTJ6UDGV_cjs.l(e?e.scrollLeft:window?.scrollX??0),r=chunkRTJ6UDGV_cjs.l(e?e.scrollTop:window?.scrollY??0);if(t){let s=()=>{e?(n.set(e.scrollLeft),r.set(e.scrollTop)):(n.set(window.scrollX),r.set(window.scrollY));};t.addEventListener("scroll",s,{passive:true});}let o=r.set;r.set=s=>{o(s),e?e.scrollTop=s:window?.scrollTo(window.scrollX,s);};let i=n.set;return n.set=s=>{i(s),e?e.scrollLeft=s:window?.scrollTo(s,window.scrollY);},{scrollX:n,scrollY:r}}function Fo(){return chunkRTJ6UDGV_cjs.l(null)}function _o(e){return chunkRTJ6UDGV_cjs.l(null)}function No(e,t,n){e.name=typeof n=="string"?n:"",e.addEventListener("change",()=>{e.checked&&t.set(n);}),chunkRTJ6UDGV_cjs.n(()=>{e.checked=t()===n;});}function _e(e,t,n){return chunkRTJ6UDGV_cjs.n(()=>{n()?e.classList.add(t):e.classList.remove(t);})}function $o(e,t){let n=Object.entries(t).map(([r,o])=>_e(e,r,o));return ()=>n.forEach(r=>r())}function Ne(e,t,n){let r=t.replace(/[A-Z]/g,o=>`-${o.toLowerCase()}`);return chunkRTJ6UDGV_cjs.n(()=>{let o=n();o==null?e.style.removeProperty(r):e.style.setProperty(r,typeof o=="number"?`${o}px`:String(o));})}function Ko(e,t){let n=Object.entries(t).map(([r,o])=>Ne(e,r,o));return ()=>n.forEach(r=>r())}function Vo(e){return e}function Wo(...e){let t={},n=[];for(let c of e)typeof c=="function"?n.push(c):typeof c=="object"&&c!==null&&(t=c);let{label:r="inspect",level:o="log",logger:i,when:s}=t,a={dispose:null,get values(){return n.map(c=>c())},get value(){return n.length===1?n[0]():n.map(c=>c())},label:r,sources:n.length};return a.dispose=chunkRTJ6UDGV_cjs.n(()=>{if(s&&!s())return;let c=n.map(u=>u());i?i(r,...c):console[o](`[${r}]`,...c);}),a}function zo(e,t={}){let{method:n="POST",headers:r={},onSuccess:o,onError:i,fetch:s=globalThis.fetch.bind(globalThis)}=t,a=chunkRTJ6UDGV_cjs.l(false),c=chunkRTJ6UDGV_cjs.l(null),u=chunkRTJ6UDGV_cjs.l(null);async function d(l){a.set(true),u.set(null);try{let p=await s(e,{method:n,headers:{"Content-Type":"application/json",...r},body:JSON.stringify(l)});if(!p.ok)throw new Error(`Form action failed: ${p.status}`);let f=await p.json();return c.set(f),a.set(!1),o?.(f),f}catch(p){let f=p instanceof Error?p:new Error(String(p));throw u.set(f),a.set(false),i?.(f),f}}return {url:e,method:n,submitting:()=>a(),result:()=>c(),error:()=>u(),handle(l){return p=>{p.preventDefault();let f=p.target,y=new FormData(f),T={...l};y.forEach((m,h)=>{T[h]=m;}),d(T);}},submit:d}}function qo(e={}){if(typeof window>"u")return ()=>{};let{keyPrefix:t="akash-snapshot",capture:n=["scroll","forms"]}=e;function r(){let c={scrollX:window.scrollX,scrollY:window.scrollY,forms:{},timestamp:Date.now()};return n.includes("forms")&&document.querySelectorAll("form[id]").forEach(u=>{let d=u,l={};new FormData(d).forEach((p,f)=>{l[f]=String(p);}),c.forms[d.id]=l;}),c}function o(c){if(n.includes("scroll")&&requestAnimationFrame(()=>{window.scrollTo(c.scrollX,c.scrollY);}),n.includes("forms"))for(let[u,d]of Object.entries(c.forms)){let l=document.getElementById(u);if(l)for(let[p,f]of Object.entries(d)){let y=l.elements.namedItem(p);y&&(y.value=f);}}}let i=()=>`${t}-${window.location.pathname}`;function s(){try{let c=r();sessionStorage.setItem(i(),JSON.stringify(c));}catch{}}function a(){try{let c=sessionStorage.getItem(i());if(c){let u=JSON.parse(c);Date.now()-u.timestamp<1800*1e3&&o(u);}}catch{}}return window.addEventListener("beforeunload",s),window.addEventListener("popstate",()=>{requestAnimationFrame(a);}),performance.getEntriesByType("navigation")[0]?.type==="back_forward"&&requestAnimationFrame(a),()=>{window.removeEventListener("beforeunload",s);}}function se(e,t,n={}){let{immediate:r=false,once:o=false,debounce:i,deep:s=false}=n,a=Array.isArray(e),c=a?e:[e],u=c.map(()=>{}),d=true,l=null,p=false,f=null,y=()=>{p=true,l&&clearTimeout(l),f?.();};f=chunkRTJ6UDGV_cjs.n(()=>{let m=c.map(k=>k());if(d){d=false,u=s?m.map($e):[...m],r&&T(m,c.map(()=>{}));return}if(!(s?m.some((k,v)=>!Go(k,u[v])):m.some((k,v)=>!Object.is(k,u[v]))))return;let b=[...u];u=s?m.map($e):[...m],T(m,b);});function T(m,h){if(p)return;let b=()=>{o&&(p=true,queueMicrotask(y)),a?t(m,h):t(m[0],h[0]);};i&&i>0?(l&&clearTimeout(l),l=setTimeout(b,i)):b();}return y}function Bo(e,t){return se(e,t,{once:true})}function Uo(e,t,n){return se(e,t,{debounce:n})}function $e(e){if(e===null||typeof e!="object")return e;try{return JSON.parse(JSON.stringify(e))}catch{return e}}function Go(e,t){if(Object.is(e,t))return true;if(e===null||t===null||typeof e!="object"||typeof t!="object")return false;try{return JSON.stringify(e)===JSON.stringify(t)}catch{return false}}var Ke=Symbol("deepSignal"),Jo=Symbol("deepRaw");function Qo(e){let t=chunkRTJ6UDGV_cjs.l(0),n=JSON.parse(JSON.stringify(e)),r=new Map;function o(u){let d=r.get(u);return d||(d=chunkRTJ6UDGV_cjs.l(0),r.set(u,d)),d}let i=false;function s(u){if(i)return;let d=r.get(u);d&&d.update(l=>l+1),t.update(l=>l+1);}function a(u,d){i=true;try{return u()}finally{i=false,s(d);}}function c(u,d=[]){return new Proxy(u,{get(l,p,f){if(p==="$raw")return JSON.parse(JSON.stringify(n));if(p==="$signal")return ()=>(t(),JSON.parse(JSON.stringify(n)));if(p===Ke)return t;if(p===Jo)return n;let y=Reflect.get(l,p,f),T=[...d,String(p)].join(".");if(o(T)(),Array.isArray(l)&&typeof y=="function"&&new Set(["push","pop","shift","unshift","splice","sort","reverse","fill","copyWithin"]).has(String(p))){let h=d.join(".")||"__root";return (...b)=>a(()=>y.apply(l,b),h)}return y!==null&&typeof y=="object"?c(y,[...d,String(p)]):y},set(l,p,f){let y=Reflect.set(l,p,f);return s([...d,String(p)].join(".")),y},deleteProperty(l,p){let f=Reflect.deleteProperty(l,p);return s([...d,String(p)].join(".")),f}})}return c(n)}function Yo(e){return e.$raw??e}function Xo(e){if(e===null||typeof e!="object")return false;try{return e[Ke]!==void 0}catch{return false}}function Ve(){let e=new Map;function t(n){let r=e.get(n);return r||(r=new Set,e.set(n,r)),r}return {on(n,r){return t(n).add(r),()=>t(n).delete(r)},once(n,r){let o=i=>{t(n).delete(o),r(i);};return t(n).add(o),()=>t(n).delete(o)},emit(n,r){let o=e.get(n);if(o)for(let i of Array.from(o))i(r);},off(n,r){t(n).delete(r);},clear(n){n?e.delete(n):e.clear();},listenerCount(n){return e.get(n)?.size??0},hasListeners(n){return (e.get(n)?.size??0)>0}}}var ae=null;function Zo(){return ae||(ae=Ve()),ae}var ei=new Set(["a","abbr","address","article","aside","b","bdi","bdo","blockquote","br","caption","cite","code","col","colgroup","dd","del","details","dfn","div","dl","dt","em","figcaption","figure","footer","h1","h2","h3","h4","h5","h6","header","hr","i","img","ins","kbd","li","main","mark","nav","ol","p","pre","q","rp","rt","ruby","s","samp","section","small","span","strong","sub","summary","sup","table","tbody","td","tfoot","th","thead","time","tr","u","ul","var","wbr"]),ti=new Set(["alt","class","dir","href","id","lang","name","rel","src","style","tabindex","target","title","type","width","height","colspan","rowspan","scope","loading","decoding"]),ni=/^(javascript|data|vbscript):/i,ri=/^on/i;function ze(e,t={}){if(typeof document>"u")return e.replace(/<[^>]*>/g,"");let{allowTags:n=[],allowAttrs:r=[],allowDataAttrs:o=true,allowAriaAttrs:i=true,allowStyle:s=false,tagFilter:a,attrFilter:c}=t,u=new Set([...ei,...n]),d=new Set([...ti,...r]);s||d.delete("style");let l=new DOMParser().parseFromString(e,"text/html");return qe(l.body,u,d,o,i,a,c),l.body.innerHTML}function qe(e,t,n,r,o,i,s){let a=Array.from(e.childNodes);for(let c of a)if(c.nodeType===Node.ELEMENT_NODE){let u=c,d=u.tagName.toLowerCase();if(!(i?i(d):t.has(d))){let f=document.createTextNode(u.textContent??"");e.replaceChild(f,c);continue}let p=Array.from(u.attributes);for(let f of p){let y=f.name.toLowerCase(),T=f.value;if(ri.test(y)){u.removeAttribute(f.name);continue}if(!(y.startsWith("data-")&&r)&&!(y.startsWith("aria-")&&o)){if(s&&!s(y,T,d)){u.removeAttribute(f.name);continue}if(!n.has(y)){u.removeAttribute(f.name);continue}if((y==="href"||y==="src")&&ni.test(T)){u.removeAttribute(f.name);continue}}}qe(u,t,n,r,o,i,s);}}function oi(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function ii(e,t){return n=>{e.innerHTML=ze(n,t);}}function Be(e={}){let n={...{"default-src":["'self'"],"script-src":["'self'"],"style-src":["'self'","'unsafe-inline'"],"img-src":["'self'","data:","https:"],"font-src":["'self'","https:"],"connect-src":["'self'"],"frame-ancestors":["'none'"],"base-uri":["'self'"],"form-action":["'self'"],"object-src":["'none'"]},...e.directives};if(e.nonce){let r=`'nonce-${e.nonce}'`;n["script-src"]&&n["script-src"].push(r),n["style-src"]&&n["style-src"].push(r);}return e.reportUri&&(n["report-uri"]=[e.reportUri]),Object.entries(n).map(([r,o])=>`${r} ${o.join(" ")}`).join("; ")}function Ue(e={}){return e.reportOnly?"Content-Security-Policy-Report-Only":"Content-Security-Policy"}function si(e={}){let t={};if(e.csp!==false){let n=e.csp??{};t[Ue(n)]=Be(n);}if(e.frameOptions!==false&&(t["X-Frame-Options"]=e.frameOptions??"DENY"),e.contentTypeOptions!==false&&(t["X-Content-Type-Options"]="nosniff"),t["X-XSS-Protection"]=e.xssProtection?"1; mode=block":"0",e.hsts!==false){let n=e.hsts??{maxAge:31536e3,includeSubDomains:true},r=`max-age=${n.maxAge}`;n.includeSubDomains&&(r+="; includeSubDomains"),n.preload&&(r+="; preload"),t["Strict-Transport-Security"]=r;}if(e.referrerPolicy!==false&&(t["Referrer-Policy"]=e.referrerPolicy??"strict-origin-when-cross-origin"),e.permissionsPolicy!==false){let n=e.permissionsPolicy??{camera:[],microphone:[],geolocation:[],payment:[]};t["Permissions-Policy"]=Object.entries(n).map(([r,o])=>`${r}=(${o.join(" ")})`).join(", ");}return e.coop!==false&&(t["Cross-Origin-Opener-Policy"]=e.coop??"same-origin"),e.coep!==false&&(t["Cross-Origin-Embedder-Policy"]=e.coep??"require-corp"),t}function Ge(e,...t){let n=new Set(["__proto__","constructor","prototype"]);for(let r of t)if(!(!r||typeof r!="object"))for(let o of Object.keys(r)){if(n.has(o))continue;let i=e[o],s=r[o];We(s)&&We(i)?e[o]=Ge({...i},s):e[o]=s;}return e}function Je(e){if(e===null||typeof e!="object")return e;Object.freeze(e);for(let t of Object.values(e))typeof t=="object"&&t!==null&&Je(t);return e}function We(e){return e!==null&&typeof e=="object"&&Object.getPrototypeOf(e)===Object.prototype}async function ai(e,t="sha384"){let r=new TextEncoder().encode(e),o=t==="sha256"?"SHA-256":t==="sha384"?"SHA-384":"SHA-512",i=await crypto.subtle.digest(o,r),s=new Uint8Array(i),a=btoa(String.fromCharCode(...s));return `${t}-${a}`}function Qe(){let e=new Uint8Array(32);return crypto.getRandomValues(e),Array.from(e,t=>t.toString(16).padStart(2,"0")).join("")}function ci(e={}){let{headerName:t="X-CSRF-Token",cookieName:n="csrf-token",tokenGenerator:r=Qe}=e,o=null;function i(){if(!o){if(typeof document<"u"){let a=document.cookie.match(new RegExp(`${n}=([^;]+)`));if(a)return o=a[1],o}o=r();}return o}return {interceptor:async(a,c)=>{let u=a.method.toUpperCase();return ["POST","PUT","PATCH","DELETE"].includes(u)&&a.headers.set(t,i()),c(a)},token:i,refresh(){o=r();}}}function li(e,t={}){if(e==null)return null;let{allowedHosts:n,allowedProtocols:r=["http:","https:"],allowRelative:o=true}=t;if(e.startsWith("/")&&!e.startsWith("//"))return o?e:null;try{let i=new URL(e);return !r.includes(i.protocol)||n&&!n.includes(i.hostname)?null:i.toString()}catch{return null}}function ui(e){let{maxAttempts:t,windowMs:n}=e,r=[];return {check(){let o=Date.now();for(;r.length>0&&r[0]<o-n;)r.shift();return r.length>=t?false:(r.push(o),true)},remaining(){let o=Date.now();for(;r.length>0&&r[0]<o-n;)r.shift();return Math.max(0,t-r.length)},reset(){r.length=0;}}}var ce=new Set,Ye=true,le=null;function di(e){Ye=e;}function pi(e){le=e;}function fi(){ce.clear();}function mi(e,t){let n=((...r)=>(Xe(t),e(...r)));return Object.keys(e).forEach(r=>{n[r]=e[r];}),n.__deprecated=t,n}function gi(e,t){return Xe(t),e}function Xe(e){if(!Ye||ce.has(e.name))return;ce.add(e.name);let t=[`[AkashJS] DEPRECATED: ${e.name}() is deprecated since v${e.since}`];e.removeIn?t[0]+=` and will be removed in v${e.removeIn}.`:t[0]+=".",e.replacement&&t.push(` Migrate to: ${e.replacement}()`),e.message&&t.push(` ${e.message}`),t.push(` See: ${e.link??"https://akash.js.org/migration"}`);let n=t.join(`
61
- `);le?le(n):typeof console<"u"&&console.warn(n);}var U=new Map;function yi(e){U.set(e.name,e);}function Ze(){return Array.from(U.values())}function hi(e){return Ze().filter(t=>t.stability===e)}function Ti(e){return U.get(e)?.stability==="deprecated"}function vi(e){return U.get(e)?.deprecation??null}function bi(e){let t=[],n=[],r=Object.entries(e);if(r.length===0)return {compatible:true,warnings:t,errors:n};let o=r.filter(([i])=>i.startsWith("@akashjs/"));if(o.length>1){let i=new Set(o.map(([,a])=>a.split(".")[0])),s=new Set(o.map(([,a])=>a.split(".").slice(0,2).join(".")));i.size>1?n.push(`Major version mismatch: ${o.map(([a,c])=>`${a}@${c}`).join(", ")}. All @akashjs packages should be on the same major version.`):s.size>1&&t.push(`Minor version mismatch: ${o.map(([a,c])=>`${a}@${c}`).join(", ")}. Consider updating all packages to the same version with \`akash update\`.`);}return {compatible:n.length===0,warnings:t,errors:n}}var wi=new Map,Si=new Map;function G(e){let n=chunkOCBLY4E4_cjs.d()[e];if(!n)return null;let r=n.$snapshot(),i={},s=[];for(let[a,c]of Object.entries(n))if(!a.startsWith("$")){if(typeof c=="function"&&"set"in c&&"update"in c)c();else if(typeof c=="function"&&!("set"in c)&&!a.startsWith("$"))try{let u=c();typeof u<"u"?i[a]=u:s.push(a);}catch{s.push(a);}}return {$id:e,state:r,getters:i,actions:s,subscriberCount:0}}var ue=new Map,de=new Map;function xi(){return {stores(){return Object.keys(chunkOCBLY4E4_cjs.d())},store(e){return G(e)},storeSnapshots(){let e={};for(let t of Object.keys(chunkOCBLY4E4_cjs.d())){let n=G(t);n&&(e[t]=n);}return e},signals(){return [...wi.values()].map(e=>({name:e.name,value:e.read(),subscribers:e.subscriberCount}))},effects(){return [...Si.values()].map(e=>({name:e.name,runs:e.runCount,isRender:e.isRender,sources:e.sourceCount}))},version(){return {runtime:"0.1.26"}},log(e){if(e){let t=G(e);t?(console.group(`\u{1F50D} Store: ${e}`),console.log("State:",t.state),console.log("Getters:",t.getters),console.log("Actions:",t.actions),console.groupEnd()):console.warn(`Store "${e}" not found. Available:`,Object.keys(chunkOCBLY4E4_cjs.d()));}else {let t=Object.keys(chunkOCBLY4E4_cjs.d());console.group("\u{1F50D} AkashJS Stores");for(let n of t){let r=G(n);r&&(console.group(n),console.log("State:",r.state),console.log("Getters:",r.getters),console.groupEnd());}console.groupEnd();}},startRecording(e){let t=chunkOCBLY4E4_cjs.d()[e];if(!t){console.warn(`Store "${e}" not found.`);return}let n=[];n.push({timestamp:Date.now(),state:t.$snapshot()});let r=t.$subscribe(o=>{n.push({timestamp:Date.now(),state:{...o}});});ue.set(e,n),de.set(e,r),console.log(`\u23FA Recording store "${e}". Call __AKASH_DEVTOOLS__.stopRecording("${e}") to view history.`);},stopRecording(e){let t=de.get(e);t&&t(),de.delete(e);let n=ue.get(e)??[];return ue.delete(e),console.log(`\u23F9 Stopped recording "${e}". ${n.length} snapshots captured.`),console.table(n.map((r,o)=>({"#":o,time:new Date(r.timestamp).toISOString().slice(11,23),state:JSON.stringify(r.state)}))),n}}}function Ei(){let e=xi();typeof globalThis<"u"&&(globalThis.__AKASH_DEVTOOLS__=e,console.log("%c\u{1F527} AkashJS DevTools installed. Access via __AKASH_DEVTOOLS__ in console.","color: #7c3aed; font-weight: bold;"),console.log(" .stores() \u2014 list stores"),console.log(' .store("id") \u2014 inspect store'),console.log(" .log() \u2014 pretty-print all stores"),console.log(' .log("id") \u2014 pretty-print one store'),console.log(' .startRecording("id") \u2014 record state changes'),console.log(' .stopRecording("id") \u2014 view recorded history'),console.log(" .signals() \u2014 list tracked signals"),console.log(" .effects() \u2014 list tracked effects"));}Object.defineProperty(exports,"createMachine",{enumerable:true,get:function(){return chunkYSVREYEH_cjs.a}});Object.defineProperty(exports,"generateSWScript",{enumerable:true,get:function(){return chunkTBCX5WQQ_cjs.b}});Object.defineProperty(exports,"registerServiceWorker",{enumerable:true,get:function(){return chunkTBCX5WQQ_cjs.a}});Object.defineProperty(exports,"subscribePush",{enumerable:true,get:function(){return chunkTBCX5WQQ_cjs.c}});Object.defineProperty(exports,"For",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.t}});Object.defineProperty(exports,"Show",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.s}});Object.defineProperty(exports,"__getter",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.w}});Object.defineProperty(exports,"akashError",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.b}});Object.defineProperty(exports,"bindProperty",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.o}});Object.defineProperty(exports,"bindText",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.n}});Object.defineProperty(exports,"bindVisible",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.p}});Object.defineProperty(exports,"cloneTemplate",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.l}});Object.defineProperty(exports,"createContext",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.g}});Object.defineProperty(exports,"createElement",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.j}});Object.defineProperty(exports,"createText",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.k}});Object.defineProperty(exports,"defineComponent",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.B}});Object.defineProperty(exports,"formatError",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.a}});Object.defineProperty(exports,"getAllErrorCodes",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.d}});Object.defineProperty(exports,"getCurrentScope",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.e}});Object.defineProperty(exports,"getErrorDef",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.c}});Object.defineProperty(exports,"inject",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.i}});Object.defineProperty(exports,"insert",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.v}});Object.defineProperty(exports,"nodeToDOM",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.u}});Object.defineProperty(exports,"onError",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.z}});Object.defineProperty(exports,"onMount",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.x}});Object.defineProperty(exports,"onUnmount",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.y}});Object.defineProperty(exports,"provide",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.h}});Object.defineProperty(exports,"ref",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.A}});Object.defineProperty(exports,"renderConditional",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.q}});Object.defineProperty(exports,"renderList",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.r}});Object.defineProperty(exports,"runInScope",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.f}});Object.defineProperty(exports,"setProperty",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.m}});Object.defineProperty(exports,"__getStoreInstances",{enumerable:true,get:function(){return chunkOCBLY4E4_cjs.d}});Object.defineProperty(exports,"clearStores",{enumerable:true,get:function(){return chunkOCBLY4E4_cjs.c}});Object.defineProperty(exports,"configureStores",{enumerable:true,get:function(){return chunkOCBLY4E4_cjs.a}});Object.defineProperty(exports,"defineStore",{enumerable:true,get:function(){return chunkOCBLY4E4_cjs.b}});Object.defineProperty(exports,"isServerRendering",{enumerable:true,get:function(){return chunkUOD4PYAN_cjs.b}});Object.defineProperty(exports,"nodeToHtml",{enumerable:true,get:function(){return chunkUOD4PYAN_cjs.i}});Object.defineProperty(exports,"renderNodes",{enumerable:true,get:function(){return chunkUOD4PYAN_cjs.j}});Object.defineProperty(exports,"renderToStream",{enumerable:true,get:function(){return chunkUOD4PYAN_cjs.e}});Object.defineProperty(exports,"renderToString",{enumerable:true,get:function(){return chunkUOD4PYAN_cjs.c}});Object.defineProperty(exports,"renderToStringSync",{enumerable:true,get:function(){return chunkUOD4PYAN_cjs.d}});Object.defineProperty(exports,"ssrElement",{enumerable:true,get:function(){return chunkUOD4PYAN_cjs.f}});Object.defineProperty(exports,"ssrRaw",{enumerable:true,get:function(){return chunkUOD4PYAN_cjs.h}});Object.defineProperty(exports,"ssrText",{enumerable:true,get:function(){return chunkUOD4PYAN_cjs.g}});Object.defineProperty(exports,"LWWRegister",{enumerable:true,get:function(){return chunkYN2TQLVA_cjs.a}});Object.defineProperty(exports,"createLocalTransport",{enumerable:true,get:function(){return chunkYN2TQLVA_cjs.c}});Object.defineProperty(exports,"createSync",{enumerable:true,get:function(){return chunkYN2TQLVA_cjs.d}});Object.defineProperty(exports,"createWebSocketTransport",{enumerable:true,get:function(){return chunkYN2TQLVA_cjs.b}});Object.defineProperty(exports,"createOfflineStore",{enumerable:true,get:function(){return chunkCO4D6JTQ_cjs.a}});Object.defineProperty(exports,"batch",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.a}});Object.defineProperty(exports,"computed",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.m}});Object.defineProperty(exports,"createTimer",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.j}});Object.defineProperty(exports,"effect",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.n}});Object.defineProperty(exports,"flushSync",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.b}});Object.defineProperty(exports,"formatProfile",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.k}});Object.defineProperty(exports,"getProfileSummary",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.g}});Object.defineProperty(exports,"isProfiling",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.e}});Object.defineProperty(exports,"measureAsync",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.i}});Object.defineProperty(exports,"measureSync",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.h}});Object.defineProperty(exports,"on",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.p}});Object.defineProperty(exports,"recordPerfEntry",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.f}});Object.defineProperty(exports,"signal",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.l}});Object.defineProperty(exports,"startProfiling",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.c}});Object.defineProperty(exports,"stopProfiling",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.d}});Object.defineProperty(exports,"untrack",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.o}});Object.defineProperty(exports,"animate",{enumerable:true,get:function(){return chunkY5HEEST4_cjs.a}});Object.defineProperty(exports,"animateGroup",{enumerable:true,get:function(){return chunkY5HEEST4_cjs.d}});Object.defineProperty(exports,"animateSequence",{enumerable:true,get:function(){return chunkY5HEEST4_cjs.c}});Object.defineProperty(exports,"animateSpring",{enumerable:true,get:function(){return chunkY5HEEST4_cjs.e}});Object.defineProperty(exports,"animateStagger",{enumerable:true,get:function(){return chunkY5HEEST4_cjs.b}});Object.defineProperty(exports,"defineStates",{enumerable:true,get:function(){return chunkY5HEEST4_cjs.g}});Object.defineProperty(exports,"keyframes",{enumerable:true,get:function(){return chunkY5HEEST4_cjs.f}});exports.Await=Do;exports.ErrorBoundary=fn;exports.HYDRATE_ATTR=ge;exports.Image=gr;exports.Portal=qn;exports.Suspense=yn;exports.Switch=to;exports.Transition=xn;exports.VirtualFor=Qn;exports.applyDirective=$r;exports.applyStyles=Tr;exports.assignTransitionName=To;exports.awaitSignal=Mo;exports.bindClass=_e;exports.bindClasses=$o;exports.bindDimensions=Ho;exports.bindElement=Fo;exports.bindGroup=_o;exports.bindGroupItem=No;exports.bindScroll=jo;exports.bindStyle=Ne;exports.bindStyles=Ko;exports.calculateRange=ne;exports.capitalize=Ar;exports.chain=Er;exports.checkCompatibility=bi;exports.checkForLeaks=we;exports.claimElement=Tn;exports.claimText=vn;exports.clearProviders=ao;exports.clearQueryState=ko;exports.collectSSRHead=kn;exports.countOps=Xn;exports.createApp=An;exports.createCSRFInterceptor=ci;exports.createDataTable=vr;exports.createEventBus=Ve;exports.createFlip=je;exports.createInjector=Oe;exports.createRateLimiter=ui;exports.createSafeHTML=ii;exports.createSlots=pn;exports.createToaster=Un;exports.css=hr;exports.currency=Mr;exports.cx=Se;exports.date=Dr;exports.deepFreeze=Je;exports.deepSignal=Qo;exports.defer=co;exports.defineAsyncComponent=Yn;exports.defineCustomElement=Gr;exports.defineDirective=H;exports.defineFormAction=zo;exports.definePipe=kr;exports.definePlugin=Cn;exports.defineProvider=oo;exports.defineSnippet=Vo;exports.deprecated=mi;exports.deprecatedValue=gi;exports.directiveFromFn=Nr;exports.disableLeakDetection=er;exports.discoverStaticRoutes=Xr;exports.easings=He;exports.enableLeakDetection=Zn;exports.enableSnapshots=qo;exports.enterTransition=he;exports.escapeHtml=oi;exports.exitTransition=Sn;exports.findHydrationBoundaries=wn;exports.flip=Lo;exports.generateCSP=Be;exports.generateCSRFToken=Qe;exports.generatePaths=Zr;exports.generateSRI=ai;exports.generateSecurityHeaders=si;exports.generateSitemap=Sr;exports.generateTransitionCSS=En;exports.getAPIsByStability=hi;exports.getActiveEffects=or;exports.getCSPHeaderName=Ue;exports.getDeprecationInfo=vi;exports.getLeakDetectionStats=sr;exports.getQueryParams=Po;exports.getRegisteredAPIs=Ze;exports.getSuspenseContext=mn;exports.getTransitionClasses=ye;exports.globalEventBus=Zo;exports.hasSlot=dn;exports.hydrate=Z;exports.injectProvider=so;exports.inspect=Wo;exports.installDevtools=Ei;exports.isDeepSignal=Xo;exports.isDeprecated=Ti;exports.isHydrationActive=hn;exports.isLeakDetectionEnabled=tr;exports.json=jr;exports.longestIncreasingSubsequence=Te;exports.lowercase=Cr;exports.match=no;exports.number=Ir;exports.onEvent=Io;exports.percent=Hr;exports.pipe=xr;exports.plural=Fr;exports.prerender=Yr;exports.progressiveHydrate=bn;exports.reconcileKeys=ve;exports.registerAPI=yi;exports.registerPending=gn;exports.relativeTime=_r;exports.removeDirectives=Vr;exports.removeQueryState=Co;exports.renderHeadToString=Pn;exports.renderSlot=un;exports.renderSwitch=Ae;exports.reportLeaks=ir;exports.resetDeprecationWarnings=fi;exports.resetQueryState=Ao;exports.safeMerge=Ge;exports.sanitize=ze;exports.sanitizeURL=li;exports.setDeprecationWarnings=di;exports.setWarningHandler=pi;exports.sitemapFromResults=eo;exports.startViewTransition=yo;exports.supportsViewTransitions=Le;exports.titleCase=Rr;exports.toCustomElement=Jr;exports.toRaw=Yo;exports.trackEffect=nr;exports.trim=Or;exports.truncate=Lr;exports.tweened=Oo;exports.untrackEffect=rr;exports.updateDirective=Kr;exports.uppercase=Pr;exports.urlToFilePath=Ce;exports.useAnnounce=dr;exports.useBreakpoint=_n;exports.useClickOutside=zn;exports.useClipboard=$n;exports.useCounter=Mn;exports.useDebounce=Ln;exports.useFocusTrap=lr;exports.useGeolocation=Vn;exports.useHead=F;exports.useInfiniteScroll=yr;exports.useInterval=Rn;exports.useKeyboard=pr;exports.useMediaQuery=jn;exports.useOnline=Kn;exports.useOpenGraph=ke;exports.usePrevious=Hn;exports.useQueryState=Me;exports.useQueryStates=Eo;exports.useSEO=wr;exports.useStorage=Nn;exports.useStructuredData=Ee;exports.useTheme=Gn;exports.useThrottle=Dn;exports.useTimeout=On;exports.useToggle=In;exports.useTwitterCard=Pe;exports.useVirtualList=Jn;exports.useWindowSize=Wn;exports.vAutoFocus=Wr;exports.vClickOutside=zr;exports.vIntersect=Br;exports.vLongPress=qr;exports.vResize=Ur;exports.viewTransitionCSS=ho;exports.watch=se;exports.watchDebounced=Uo;exports.watchOnce=Bo;exports.withModifiers=Fe;//# sourceMappingURL=index.cjs.map
61
+ `);le?le(n):typeof console<"u"&&console.warn(n);}var U=new Map;function yi(e){U.set(e.name,e);}function Ze(){return Array.from(U.values())}function hi(e){return Ze().filter(t=>t.stability===e)}function Ti(e){return U.get(e)?.stability==="deprecated"}function vi(e){return U.get(e)?.deprecation??null}function bi(e){let t=[],n=[],r=Object.entries(e);if(r.length===0)return {compatible:true,warnings:t,errors:n};let o=r.filter(([i])=>i.startsWith("@akashjs/"));if(o.length>1){let i=new Set(o.map(([,a])=>a.split(".")[0])),s=new Set(o.map(([,a])=>a.split(".").slice(0,2).join(".")));i.size>1?n.push(`Major version mismatch: ${o.map(([a,c])=>`${a}@${c}`).join(", ")}. All @akashjs packages should be on the same major version.`):s.size>1&&t.push(`Minor version mismatch: ${o.map(([a,c])=>`${a}@${c}`).join(", ")}. Consider updating all packages to the same version with \`akash update\`.`);}return {compatible:n.length===0,warnings:t,errors:n}}var wi=new Map,Si=new Map;function G(e){let n=chunkM7HHZMIO_cjs.d()[e];if(!n)return null;let r=n.$snapshot(),i={},s=[];for(let[a,c]of Object.entries(n))if(!a.startsWith("$")){if(typeof c=="function"&&"set"in c&&"update"in c)c();else if(typeof c=="function"&&!("set"in c)&&!a.startsWith("$"))try{let u=c();typeof u<"u"?i[a]=u:s.push(a);}catch{s.push(a);}}return {$id:e,state:r,getters:i,actions:s,subscriberCount:0}}var ue=new Map,de=new Map;function xi(){return {stores(){return Object.keys(chunkM7HHZMIO_cjs.d())},store(e){return G(e)},storeSnapshots(){let e={};for(let t of Object.keys(chunkM7HHZMIO_cjs.d())){let n=G(t);n&&(e[t]=n);}return e},signals(){return [...wi.values()].map(e=>({name:e.name,value:e.read(),subscribers:e.subscriberCount}))},effects(){return [...Si.values()].map(e=>({name:e.name,runs:e.runCount,isRender:e.isRender,sources:e.sourceCount}))},version(){return {runtime:"0.1.26"}},log(e){if(e){let t=G(e);t?(console.group(`\u{1F50D} Store: ${e}`),console.log("State:",t.state),console.log("Getters:",t.getters),console.log("Actions:",t.actions),console.groupEnd()):console.warn(`Store "${e}" not found. Available:`,Object.keys(chunkM7HHZMIO_cjs.d()));}else {let t=Object.keys(chunkM7HHZMIO_cjs.d());console.group("\u{1F50D} AkashJS Stores");for(let n of t){let r=G(n);r&&(console.group(n),console.log("State:",r.state),console.log("Getters:",r.getters),console.groupEnd());}console.groupEnd();}},startRecording(e){let t=chunkM7HHZMIO_cjs.d()[e];if(!t){console.warn(`Store "${e}" not found.`);return}let n=[];n.push({timestamp:Date.now(),state:t.$snapshot()});let r=t.$subscribe(o=>{n.push({timestamp:Date.now(),state:{...o}});});ue.set(e,n),de.set(e,r),console.log(`\u23FA Recording store "${e}". Call __AKASH_DEVTOOLS__.stopRecording("${e}") to view history.`);},stopRecording(e){let t=de.get(e);t&&t(),de.delete(e);let n=ue.get(e)??[];return ue.delete(e),console.log(`\u23F9 Stopped recording "${e}". ${n.length} snapshots captured.`),console.table(n.map((r,o)=>({"#":o,time:new Date(r.timestamp).toISOString().slice(11,23),state:JSON.stringify(r.state)}))),n}}}function Ei(){let e=xi();typeof globalThis<"u"&&(globalThis.__AKASH_DEVTOOLS__=e,console.log("%c\u{1F527} AkashJS DevTools installed. Access via __AKASH_DEVTOOLS__ in console.","color: #7c3aed; font-weight: bold;"),console.log(" .stores() \u2014 list stores"),console.log(' .store("id") \u2014 inspect store'),console.log(" .log() \u2014 pretty-print all stores"),console.log(' .log("id") \u2014 pretty-print one store'),console.log(' .startRecording("id") \u2014 record state changes'),console.log(' .stopRecording("id") \u2014 view recorded history'),console.log(" .signals() \u2014 list tracked signals"),console.log(" .effects() \u2014 list tracked effects"));}Object.defineProperty(exports,"createMachine",{enumerable:true,get:function(){return chunkYSVREYEH_cjs.a}});Object.defineProperty(exports,"generateSWScript",{enumerable:true,get:function(){return chunkTBCX5WQQ_cjs.b}});Object.defineProperty(exports,"registerServiceWorker",{enumerable:true,get:function(){return chunkTBCX5WQQ_cjs.a}});Object.defineProperty(exports,"subscribePush",{enumerable:true,get:function(){return chunkTBCX5WQQ_cjs.c}});Object.defineProperty(exports,"For",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.t}});Object.defineProperty(exports,"Show",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.s}});Object.defineProperty(exports,"__getter",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.w}});Object.defineProperty(exports,"akashError",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.b}});Object.defineProperty(exports,"bindProperty",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.o}});Object.defineProperty(exports,"bindText",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.n}});Object.defineProperty(exports,"bindVisible",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.p}});Object.defineProperty(exports,"cloneTemplate",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.l}});Object.defineProperty(exports,"createContext",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.g}});Object.defineProperty(exports,"createElement",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.j}});Object.defineProperty(exports,"createText",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.k}});Object.defineProperty(exports,"defineComponent",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.B}});Object.defineProperty(exports,"formatError",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.a}});Object.defineProperty(exports,"getAllErrorCodes",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.d}});Object.defineProperty(exports,"getCurrentScope",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.e}});Object.defineProperty(exports,"getErrorDef",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.c}});Object.defineProperty(exports,"inject",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.i}});Object.defineProperty(exports,"insert",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.v}});Object.defineProperty(exports,"nodeToDOM",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.u}});Object.defineProperty(exports,"onError",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.z}});Object.defineProperty(exports,"onMount",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.x}});Object.defineProperty(exports,"onUnmount",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.y}});Object.defineProperty(exports,"provide",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.h}});Object.defineProperty(exports,"ref",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.A}});Object.defineProperty(exports,"renderConditional",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.q}});Object.defineProperty(exports,"renderList",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.r}});Object.defineProperty(exports,"runInScope",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.f}});Object.defineProperty(exports,"setProperty",{enumerable:true,get:function(){return chunkYIVBLM2A_cjs.m}});Object.defineProperty(exports,"__getStoreInstances",{enumerable:true,get:function(){return chunkM7HHZMIO_cjs.d}});Object.defineProperty(exports,"clearStores",{enumerable:true,get:function(){return chunkM7HHZMIO_cjs.c}});Object.defineProperty(exports,"configureStores",{enumerable:true,get:function(){return chunkM7HHZMIO_cjs.a}});Object.defineProperty(exports,"defineStore",{enumerable:true,get:function(){return chunkM7HHZMIO_cjs.b}});Object.defineProperty(exports,"isServerRendering",{enumerable:true,get:function(){return chunkUOD4PYAN_cjs.b}});Object.defineProperty(exports,"nodeToHtml",{enumerable:true,get:function(){return chunkUOD4PYAN_cjs.i}});Object.defineProperty(exports,"renderNodes",{enumerable:true,get:function(){return chunkUOD4PYAN_cjs.j}});Object.defineProperty(exports,"renderToStream",{enumerable:true,get:function(){return chunkUOD4PYAN_cjs.e}});Object.defineProperty(exports,"renderToString",{enumerable:true,get:function(){return chunkUOD4PYAN_cjs.c}});Object.defineProperty(exports,"renderToStringSync",{enumerable:true,get:function(){return chunkUOD4PYAN_cjs.d}});Object.defineProperty(exports,"ssrElement",{enumerable:true,get:function(){return chunkUOD4PYAN_cjs.f}});Object.defineProperty(exports,"ssrRaw",{enumerable:true,get:function(){return chunkUOD4PYAN_cjs.h}});Object.defineProperty(exports,"ssrText",{enumerable:true,get:function(){return chunkUOD4PYAN_cjs.g}});Object.defineProperty(exports,"LWWRegister",{enumerable:true,get:function(){return chunkYN2TQLVA_cjs.a}});Object.defineProperty(exports,"createLocalTransport",{enumerable:true,get:function(){return chunkYN2TQLVA_cjs.c}});Object.defineProperty(exports,"createSync",{enumerable:true,get:function(){return chunkYN2TQLVA_cjs.d}});Object.defineProperty(exports,"createWebSocketTransport",{enumerable:true,get:function(){return chunkYN2TQLVA_cjs.b}});Object.defineProperty(exports,"createOfflineStore",{enumerable:true,get:function(){return chunkCO4D6JTQ_cjs.a}});Object.defineProperty(exports,"batch",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.a}});Object.defineProperty(exports,"computed",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.m}});Object.defineProperty(exports,"createTimer",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.j}});Object.defineProperty(exports,"effect",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.n}});Object.defineProperty(exports,"flushSync",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.b}});Object.defineProperty(exports,"formatProfile",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.k}});Object.defineProperty(exports,"getProfileSummary",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.g}});Object.defineProperty(exports,"isProfiling",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.e}});Object.defineProperty(exports,"measureAsync",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.i}});Object.defineProperty(exports,"measureSync",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.h}});Object.defineProperty(exports,"on",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.p}});Object.defineProperty(exports,"recordPerfEntry",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.f}});Object.defineProperty(exports,"signal",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.l}});Object.defineProperty(exports,"startProfiling",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.c}});Object.defineProperty(exports,"stopProfiling",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.d}});Object.defineProperty(exports,"untrack",{enumerable:true,get:function(){return chunkRTJ6UDGV_cjs.o}});Object.defineProperty(exports,"animate",{enumerable:true,get:function(){return chunkY5HEEST4_cjs.a}});Object.defineProperty(exports,"animateGroup",{enumerable:true,get:function(){return chunkY5HEEST4_cjs.d}});Object.defineProperty(exports,"animateSequence",{enumerable:true,get:function(){return chunkY5HEEST4_cjs.c}});Object.defineProperty(exports,"animateSpring",{enumerable:true,get:function(){return chunkY5HEEST4_cjs.e}});Object.defineProperty(exports,"animateStagger",{enumerable:true,get:function(){return chunkY5HEEST4_cjs.b}});Object.defineProperty(exports,"defineStates",{enumerable:true,get:function(){return chunkY5HEEST4_cjs.g}});Object.defineProperty(exports,"keyframes",{enumerable:true,get:function(){return chunkY5HEEST4_cjs.f}});exports.Await=Do;exports.ErrorBoundary=fn;exports.HYDRATE_ATTR=ge;exports.Image=gr;exports.Portal=qn;exports.Suspense=yn;exports.Switch=to;exports.Transition=xn;exports.VirtualFor=Qn;exports.applyDirective=$r;exports.applyStyles=Tr;exports.assignTransitionName=To;exports.awaitSignal=Mo;exports.bindClass=_e;exports.bindClasses=$o;exports.bindDimensions=Ho;exports.bindElement=Fo;exports.bindGroup=_o;exports.bindGroupItem=No;exports.bindScroll=jo;exports.bindStyle=Ne;exports.bindStyles=Ko;exports.calculateRange=ne;exports.capitalize=Ar;exports.chain=Er;exports.checkCompatibility=bi;exports.checkForLeaks=we;exports.claimElement=Tn;exports.claimText=vn;exports.clearProviders=ao;exports.clearQueryState=ko;exports.collectSSRHead=kn;exports.countOps=Xn;exports.createApp=An;exports.createCSRFInterceptor=ci;exports.createDataTable=vr;exports.createEventBus=Ve;exports.createFlip=je;exports.createInjector=Oe;exports.createRateLimiter=ui;exports.createSafeHTML=ii;exports.createSlots=pn;exports.createToaster=Un;exports.css=hr;exports.currency=Mr;exports.cx=Se;exports.date=Dr;exports.deepFreeze=Je;exports.deepSignal=Qo;exports.defer=co;exports.defineAsyncComponent=Yn;exports.defineCustomElement=Gr;exports.defineDirective=H;exports.defineFormAction=zo;exports.definePipe=kr;exports.definePlugin=Cn;exports.defineProvider=oo;exports.defineSnippet=Vo;exports.deprecated=mi;exports.deprecatedValue=gi;exports.directiveFromFn=Nr;exports.disableLeakDetection=er;exports.discoverStaticRoutes=Xr;exports.easings=He;exports.enableLeakDetection=Zn;exports.enableSnapshots=qo;exports.enterTransition=he;exports.escapeHtml=oi;exports.exitTransition=Sn;exports.findHydrationBoundaries=wn;exports.flip=Lo;exports.generateCSP=Be;exports.generateCSRFToken=Qe;exports.generatePaths=Zr;exports.generateSRI=ai;exports.generateSecurityHeaders=si;exports.generateSitemap=Sr;exports.generateTransitionCSS=En;exports.getAPIsByStability=hi;exports.getActiveEffects=or;exports.getCSPHeaderName=Ue;exports.getDeprecationInfo=vi;exports.getLeakDetectionStats=sr;exports.getQueryParams=Po;exports.getRegisteredAPIs=Ze;exports.getSuspenseContext=mn;exports.getTransitionClasses=ye;exports.globalEventBus=Zo;exports.hasSlot=dn;exports.hydrate=Z;exports.injectProvider=so;exports.inspect=Wo;exports.installDevtools=Ei;exports.isDeepSignal=Xo;exports.isDeprecated=Ti;exports.isHydrationActive=hn;exports.isLeakDetectionEnabled=tr;exports.json=jr;exports.longestIncreasingSubsequence=Te;exports.lowercase=Cr;exports.match=no;exports.number=Ir;exports.onEvent=Io;exports.percent=Hr;exports.pipe=xr;exports.plural=Fr;exports.prerender=Yr;exports.progressiveHydrate=bn;exports.reconcileKeys=ve;exports.registerAPI=yi;exports.registerPending=gn;exports.relativeTime=_r;exports.removeDirectives=Vr;exports.removeQueryState=Co;exports.renderHeadToString=Pn;exports.renderSlot=un;exports.renderSwitch=Ae;exports.reportLeaks=ir;exports.resetDeprecationWarnings=fi;exports.resetQueryState=Ao;exports.safeMerge=Ge;exports.sanitize=ze;exports.sanitizeURL=li;exports.setDeprecationWarnings=di;exports.setWarningHandler=pi;exports.sitemapFromResults=eo;exports.startViewTransition=yo;exports.supportsViewTransitions=Le;exports.titleCase=Rr;exports.toCustomElement=Jr;exports.toRaw=Yo;exports.trackEffect=nr;exports.trim=Or;exports.truncate=Lr;exports.tweened=Oo;exports.untrackEffect=rr;exports.updateDirective=Kr;exports.uppercase=Pr;exports.urlToFilePath=Ce;exports.useAnnounce=dr;exports.useBreakpoint=_n;exports.useClickOutside=zn;exports.useClipboard=$n;exports.useCounter=Mn;exports.useDebounce=Ln;exports.useFocusTrap=lr;exports.useGeolocation=Vn;exports.useHead=F;exports.useInfiniteScroll=yr;exports.useInterval=Rn;exports.useKeyboard=pr;exports.useMediaQuery=jn;exports.useOnline=Kn;exports.useOpenGraph=ke;exports.usePrevious=Hn;exports.useQueryState=Me;exports.useQueryStates=Eo;exports.useSEO=wr;exports.useStorage=Nn;exports.useStructuredData=Ee;exports.useTheme=Gn;exports.useThrottle=Dn;exports.useTimeout=On;exports.useToggle=In;exports.useTwitterCard=Pe;exports.useVirtualList=Jn;exports.useWindowSize=Wn;exports.vAutoFocus=Wr;exports.vClickOutside=zr;exports.vIntersect=Br;exports.vLongPress=qr;exports.vResize=Ur;exports.viewTransitionCSS=ho;exports.watch=se;exports.watchDebounced=Uo;exports.watchOnce=Bo;exports.withModifiers=Fe;//# sourceMappingURL=index.cjs.map
62
62
  //# sourceMappingURL=index.cjs.map
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- export{a as createMachine}from'./chunk-42ZHET2G.js';export{b as generateSWScript,a as registerServiceWorker,c as subscribePush}from'./chunk-WG5GKD3B.js';import {B as B$1,z as z$1,u,y,e,f,h}from'./chunk-367DJVST.js';export{t as For,s as Show,w as __getter,b as akashError,o as bindProperty,n as bindText,p as bindVisible,l as cloneTemplate,g as createContext,j as createElement,k as createText,B as defineComponent,a as formatError,d as getAllErrorCodes,e as getCurrentScope,c as getErrorDef,i as inject,v as insert,u as nodeToDOM,z as onError,x as onMount,y as onUnmount,h as provide,A as ref,q as renderConditional,r as renderList,f as runInScope,m as setProperty}from'./chunk-367DJVST.js';import {d}from'./chunk-DZGRBVSY.js';export{d as __getStoreInstances,c as clearStores,a as configureStores,b as defineStore}from'./chunk-DZGRBVSY.js';export{b as isServerRendering,i as nodeToHtml,j as renderNodes,e as renderToStream,c as renderToString,d as renderToStringSync,f as ssrElement,h as ssrRaw,g as ssrText}from'./chunk-QTPP343X.js';export{a as LWWRegister,c as createLocalTransport,d as createSync,b as createWebSocketTransport}from'./chunk-CEJF44LZ.js';export{a as createOfflineStore}from'./chunk-NC5RE4IQ.js';import {l,n,m,a}from'./chunk-TWA4T6PX.js';export{a as batch,m as computed,j as createTimer,n as effect,b as flushSync,k as formatProfile,g as getProfileSummary,e as isProfiling,i as measureAsync,h as measureSync,p as on,f as recordPerfEntry,l as signal,c as startProfiling,d as stopProfiling,o as untrack}from'./chunk-TWA4T6PX.js';export{a as animate,d as animateGroup,c as animateSequence,e as animateSpring,b as animateStagger,g as defineStates,f as keyframes}from'./chunk-Q3E2UVUK.js';function un(e,t){if(e&&typeof e=="function"){let n=e();return u(n)}return t?u(t()):document.createComment("empty slot")}function dn(e,t){if(!e)return false;let n=t&&typeof e=="object"?e[t]:e;if(!n||typeof n!="function")return false;let r=n();return !(r==null||r===false||typeof r=="string"&&r.trim()==="")}function pn(e,t){let n={},r=t??Object.keys(e);for(let o of r){let i=e[o];typeof i=="function"&&(n[o]=i);}return n}var fn=B$1(e=>{let t=l(null);z$1(r=>{t.set(r);});function n(){t.set(null);}return ()=>{let r=t();return r?u(e.props.fallback(r,n)):u(e.children())}});var j=null;function mn(){return j}function gn(e){j&&j.addPending(e);}var yn=B$1(e=>{let t=l(false),n$1=[],r={addPending(s){n$1.push(s);},isResolved:()=>t()},o=j;j=r;let i;try{i=e.children();}finally{j=o;}return n$1.length>0?Promise.all(n$1).then(()=>{t.set(true);}):t.set(true),()=>{let s=document.createElement("div");return s.setAttribute("data-akash-suspense",""),s.style.display="contents",t()?s.appendChild(u(i)):s.appendChild(u(e.props.fallback())),n(()=>{if(t()){for(;s.firstChild;)s.removeChild(s.firstChild);s.appendChild(u(i));}}),s}});var N=false,L=null;function hn(){return N}function Z(e){let{container:t,component:n,props:r={}}=e;N=true,L=document.createTreeWalker(t,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT);try{n(r);}finally{N=false,L=null;}return ()=>{}}function Tn(e){if(!N||!L)return null;let t=L.nextNode();for(;t;){if(t instanceof HTMLElement&&t.tagName.toLowerCase()===e.toLowerCase())return t;t=L.nextNode();}return null}function vn(){if(!N||!L)return null;let e=L.nextNode();for(;e;){if(e instanceof Text)return e;e=L.nextNode();}return null}function bn(e){let{target:t,component:n,props:r,rootMargin:o="200px"}=e;if(typeof IntersectionObserver>"u")return Z({container:t,component:n,props:r});let i=false,s=new IntersectionObserver(a=>{for(let c of a)c.isIntersecting&&!i&&(s.disconnect(),Z({container:t,component:n,props:r}));},{rootMargin:o});return s.observe(t),()=>{i=true,s.disconnect();}}var ge="data-akash-hydrate";function wn(e=document.body){return Array.from(e.querySelectorAll(`[${ge}]`))}function ye(e){return {enterFrom:`${e}-enter-from`,enterActive:`${e}-enter-active`,enterTo:`${e}-enter-to`,exitFrom:`${e}-exit-from`,exitActive:`${e}-exit-active`,exitTo:`${e}-exit-to`}}function he(e,t,n){return new Promise(r=>{e.classList.add(t.enterFrom,t.enterActive),e.offsetHeight,e.classList.remove(t.enterFrom),e.classList.add(t.enterTo);let o=()=>{e.classList.remove(t.enterActive,t.enterTo),e.removeEventListener("transitionend",o),r();};n!==void 0?setTimeout(o,n):(e.addEventListener("transitionend",o,{once:true}),setTimeout(o,5e3));})}function Sn(e,t,n){return new Promise(r=>{e.classList.add(t.exitFrom,t.exitActive),e.offsetHeight,e.classList.remove(t.exitFrom),e.classList.add(t.exitTo);let o=()=>{e.classList.remove(t.exitActive,t.exitTo),e.removeEventListener("transitionend",o),r();};n!==void 0?setTimeout(o,n):(e.addEventListener("transitionend",o,{once:true}),setTimeout(o,5e3));})}var xn=B$1(e=>{let t=e.props.name??"akash",n=ye(t);return ()=>{let r=document.createElement("div");if(r.style.display="contents",e.props.when){let o=u(e.children());r.appendChild(o),o instanceof HTMLElement&&(e.props.onEnter?.(o),he(o,n,e.props.duration).then(()=>{e.props.onAfterEnter?.(o);}));}return r}});function En(e,t={}){let{property:n="all",duration:r="0.3s",easing:o="ease"}=t;return `
1
+ export{a as createMachine}from'./chunk-42ZHET2G.js';export{b as generateSWScript,a as registerServiceWorker,c as subscribePush}from'./chunk-WG5GKD3B.js';import {B as B$1,z as z$1,u,y,e,f,h}from'./chunk-367DJVST.js';export{t as For,s as Show,w as __getter,b as akashError,o as bindProperty,n as bindText,p as bindVisible,l as cloneTemplate,g as createContext,j as createElement,k as createText,B as defineComponent,a as formatError,d as getAllErrorCodes,e as getCurrentScope,c as getErrorDef,i as inject,v as insert,u as nodeToDOM,z as onError,x as onMount,y as onUnmount,h as provide,A as ref,q as renderConditional,r as renderList,f as runInScope,m as setProperty}from'./chunk-367DJVST.js';import {d}from'./chunk-3KIPMVCN.js';export{d as __getStoreInstances,c as clearStores,a as configureStores,b as defineStore}from'./chunk-3KIPMVCN.js';export{b as isServerRendering,i as nodeToHtml,j as renderNodes,e as renderToStream,c as renderToString,d as renderToStringSync,f as ssrElement,h as ssrRaw,g as ssrText}from'./chunk-QTPP343X.js';export{a as LWWRegister,c as createLocalTransport,d as createSync,b as createWebSocketTransport}from'./chunk-CEJF44LZ.js';export{a as createOfflineStore}from'./chunk-NC5RE4IQ.js';import {l,n,m,a}from'./chunk-TWA4T6PX.js';export{a as batch,m as computed,j as createTimer,n as effect,b as flushSync,k as formatProfile,g as getProfileSummary,e as isProfiling,i as measureAsync,h as measureSync,p as on,f as recordPerfEntry,l as signal,c as startProfiling,d as stopProfiling,o as untrack}from'./chunk-TWA4T6PX.js';export{a as animate,d as animateGroup,c as animateSequence,e as animateSpring,b as animateStagger,g as defineStates,f as keyframes}from'./chunk-Q3E2UVUK.js';function un(e,t){if(e&&typeof e=="function"){let n=e();return u(n)}return t?u(t()):document.createComment("empty slot")}function dn(e,t){if(!e)return false;let n=t&&typeof e=="object"?e[t]:e;if(!n||typeof n!="function")return false;let r=n();return !(r==null||r===false||typeof r=="string"&&r.trim()==="")}function pn(e,t){let n={},r=t??Object.keys(e);for(let o of r){let i=e[o];typeof i=="function"&&(n[o]=i);}return n}var fn=B$1(e=>{let t=l(null);z$1(r=>{t.set(r);});function n(){t.set(null);}return ()=>{let r=t();return r?u(e.props.fallback(r,n)):u(e.children())}});var j=null;function mn(){return j}function gn(e){j&&j.addPending(e);}var yn=B$1(e=>{let t=l(false),n$1=[],r={addPending(s){n$1.push(s);},isResolved:()=>t()},o=j;j=r;let i;try{i=e.children();}finally{j=o;}return n$1.length>0?Promise.all(n$1).then(()=>{t.set(true);}):t.set(true),()=>{let s=document.createElement("div");return s.setAttribute("data-akash-suspense",""),s.style.display="contents",t()?s.appendChild(u(i)):s.appendChild(u(e.props.fallback())),n(()=>{if(t()){for(;s.firstChild;)s.removeChild(s.firstChild);s.appendChild(u(i));}}),s}});var N=false,L=null;function hn(){return N}function Z(e){let{container:t,component:n,props:r={}}=e;N=true,L=document.createTreeWalker(t,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT);try{n(r);}finally{N=false,L=null;}return ()=>{}}function Tn(e){if(!N||!L)return null;let t=L.nextNode();for(;t;){if(t instanceof HTMLElement&&t.tagName.toLowerCase()===e.toLowerCase())return t;t=L.nextNode();}return null}function vn(){if(!N||!L)return null;let e=L.nextNode();for(;e;){if(e instanceof Text)return e;e=L.nextNode();}return null}function bn(e){let{target:t,component:n,props:r,rootMargin:o="200px"}=e;if(typeof IntersectionObserver>"u")return Z({container:t,component:n,props:r});let i=false,s=new IntersectionObserver(a=>{for(let c of a)c.isIntersecting&&!i&&(s.disconnect(),Z({container:t,component:n,props:r}));},{rootMargin:o});return s.observe(t),()=>{i=true,s.disconnect();}}var ge="data-akash-hydrate";function wn(e=document.body){return Array.from(e.querySelectorAll(`[${ge}]`))}function ye(e){return {enterFrom:`${e}-enter-from`,enterActive:`${e}-enter-active`,enterTo:`${e}-enter-to`,exitFrom:`${e}-exit-from`,exitActive:`${e}-exit-active`,exitTo:`${e}-exit-to`}}function he(e,t,n){return new Promise(r=>{e.classList.add(t.enterFrom,t.enterActive),e.offsetHeight,e.classList.remove(t.enterFrom),e.classList.add(t.enterTo);let o=()=>{e.classList.remove(t.enterActive,t.enterTo),e.removeEventListener("transitionend",o),r();};n!==void 0?setTimeout(o,n):(e.addEventListener("transitionend",o,{once:true}),setTimeout(o,5e3));})}function Sn(e,t,n){return new Promise(r=>{e.classList.add(t.exitFrom,t.exitActive),e.offsetHeight,e.classList.remove(t.exitFrom),e.classList.add(t.exitTo);let o=()=>{e.classList.remove(t.exitActive,t.exitTo),e.removeEventListener("transitionend",o),r();};n!==void 0?setTimeout(o,n):(e.addEventListener("transitionend",o,{once:true}),setTimeout(o,5e3));})}var xn=B$1(e=>{let t=e.props.name??"akash",n=ye(t);return ()=>{let r=document.createElement("div");if(r.style.display="contents",e.props.when){let o=u(e.children());r.appendChild(o),o instanceof HTMLElement&&(e.props.onEnter?.(o),he(o,n,e.props.duration).then(()=>{e.props.onAfterEnter?.(o);}));}return r}});function En(e,t={}){let{property:n="all",duration:r="0.3s",easing:o="ease"}=t;return `
2
2
  .${e}-enter-active,
3
3
  .${e}-exit-active {
4
4
  transition: ${n} ${r} ${o};
package/dist/store.cjs CHANGED
@@ -1,2 +1,2 @@
1
- 'use strict';var chunkOCBLY4E4_cjs=require('./chunk-OCBLY4E4.cjs');require('./chunk-RTJ6UDGV.cjs');Object.defineProperty(exports,"__getStoreInstances",{enumerable:true,get:function(){return chunkOCBLY4E4_cjs.d}});Object.defineProperty(exports,"clearStores",{enumerable:true,get:function(){return chunkOCBLY4E4_cjs.c}});Object.defineProperty(exports,"configureStores",{enumerable:true,get:function(){return chunkOCBLY4E4_cjs.a}});Object.defineProperty(exports,"defineStore",{enumerable:true,get:function(){return chunkOCBLY4E4_cjs.b}});//# sourceMappingURL=store.cjs.map
1
+ 'use strict';var chunkM7HHZMIO_cjs=require('./chunk-M7HHZMIO.cjs');require('./chunk-RTJ6UDGV.cjs');Object.defineProperty(exports,"__getStoreInstances",{enumerable:true,get:function(){return chunkM7HHZMIO_cjs.d}});Object.defineProperty(exports,"clearStores",{enumerable:true,get:function(){return chunkM7HHZMIO_cjs.c}});Object.defineProperty(exports,"configureStores",{enumerable:true,get:function(){return chunkM7HHZMIO_cjs.a}});Object.defineProperty(exports,"defineStore",{enumerable:true,get:function(){return chunkM7HHZMIO_cjs.b}});//# sourceMappingURL=store.cjs.map
2
2
  //# sourceMappingURL=store.cjs.map
package/dist/store.js CHANGED
@@ -1,2 +1,2 @@
1
- export{d as __getStoreInstances,c as clearStores,a as configureStores,b as defineStore}from'./chunk-DZGRBVSY.js';import'./chunk-TWA4T6PX.js';//# sourceMappingURL=store.js.map
1
+ export{d as __getStoreInstances,c as clearStores,a as configureStores,b as defineStore}from'./chunk-3KIPMVCN.js';import'./chunk-TWA4T6PX.js';//# sourceMappingURL=store.js.map
2
2
  //# sourceMappingURL=store.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@akashjs/runtime",
3
- "version": "0.1.40",
3
+ "version": "0.1.41",
4
4
  "description": "AkashJS core runtime — signals, components, DOM rendering",
5
5
  "type": "module",
6
6
  "main": "dist/index.cjs",
@@ -1,2 +0,0 @@
1
- import {l,m,n}from'./chunk-TWA4T6PX.js';var k=[];function b(s){k.push(...s.plugins);}var g=new Map;function v(s,a){return ()=>{if(g.has(s))return g.get(s);let r=a.state(),o=A(s,r,a);return g.set(s,o),o}}function A(s,a,r){let o={},c=Object.keys(a);for(let t of c)o[t]=l(a[t]);let n$1={$id:s};for(let t of c)n$1[t]=o[t];if(r.getters)for(let[t,e]of Object.entries(r.getters))n$1[t]=m(()=>e.call(n$1,o));let l$1=[...k,...r.plugins??[]];if(r.actions)for(let[t,e]of Object.entries(r.actions))n$1[t]=(...i)=>{for(let f of l$1)f.onAction?.(n$1,t,i);return e.apply(n$1,i)};n$1.$reset=()=>{let t=r.state();for(let e of c)o[e].set(t[e]);},n$1.$patch=t=>{for(let[e,i]of Object.entries(t))e in o&&o[e].set(i);},n$1.$snapshot=()=>{let t={};for(let e of c)t[e]=o[e]();return t};let u=new Set,S=null;n$1.$subscribe=t=>{if(u.add(t),!S){let e=true;S=n(()=>{for(let f of c)o[f]();if(e){e=false;return}let i=n$1.$snapshot();for(let f of u)f(i);});}return ()=>{u.delete(t),u.size===0&&S&&(S(),S=null);}};for(let t of l$1)t.init?.(n$1);return n$1}function x(){g.clear();}function R(){return Object.fromEntries(g)}export{b as a,v as b,x as c,R as d};//# sourceMappingURL=chunk-DZGRBVSY.js.map
2
- //# sourceMappingURL=chunk-DZGRBVSY.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/store.ts"],"names":["globalPlugins","configureStores","options","storeInstances","defineStore","id","definition","initialState","store","createStoreInstance","stateSignals","stateKeys","key","signal","getterFn","computed","plugins","actionFn","args","plugin","fresh","partial","value","snapshot","subscribers","subscribeEffect","callback","isInitial","effect","cb","clearStores","__getStoreInstances"],"mappings":"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","file":"chunk-DZGRBVSY.js","sourcesContent":["/**\n * Global state management via defineStore().\n *\n * Stores are singleton signal containers that persist across\n * components. They provide shared state, computed getters,\n * and actions — no external library needed.\n *\n * ```ts\n * const useCounterStore = defineStore('counter', {\n * state: () => ({ count: 0, name: 'Counter' }),\n * getters: {\n * doubled: (state) => state.count() * 2,\n * },\n * actions: {\n * increment() { this.count.update(c => c + 1); },\n * reset() { this.count.set(0); },\n * },\n * });\n *\n * // In any component:\n * const store = useCounterStore();\n * store.count(); // 0\n * store.doubled(); // 0\n * store.increment();\n * store.count(); // 1\n * ```\n */\n\nimport { signal, computed, effect } from './signals.js';\nimport type { Signal, ReadonlySignal } from './signals.js';\n\n// --- Types ---\n\ntype StateFactory<S> = () => S;\n\ntype Getters<S, G> = {\n [K in keyof G]: (state: SignalifiedState<S>) => G[K];\n};\n\ntype Actions<A> = {\n [K in keyof A]: A[K] extends (...args: infer P) => infer R\n ? (...args: P) => R\n : never;\n};\n\n/** Maps plain state values to signals */\ntype SignalifiedState<S> = {\n [K in keyof S]: Signal<S[K]>;\n};\n\n/** The store instance returned to consumers */\nexport type Store<S, G, A> = SignalifiedState<S> & {\n [K in keyof G]: ReadonlySignal<G[K]>;\n} & {\n [K in keyof A]: A[K] extends (...args: infer P) => infer R\n ? (...args: P) => R\n : never;\n} & {\n /** Reset all state to initial values */\n $reset(): void;\n /** Merge partial state into the store */\n $patch(partial: Partial<S>): void;\n /** Subscribe to all state changes */\n $subscribe(callback: (state: S) => void): () => void;\n /** Get a plain snapshot of current state */\n $snapshot(): S;\n /** Store ID */\n $id: string;\n};\n\nexport interface StoreDefinition<S, G, A> {\n state: StateFactory<S>;\n getters?: Getters<S, G>;\n actions?: A;\n plugins?: StorePlugin[];\n}\n\n// --- Plugin system ---\n\nexport interface StorePlugin {\n init?(store: Store<any, any, any>): void;\n onAction?(store: Store<any, any, any>, actionName: string, args: unknown[]): void;\n}\n\nconst globalPlugins: StorePlugin[] = [];\n\n/** Register global plugins that apply to all stores */\nexport function configureStores(options: { plugins: StorePlugin[] }): void {\n globalPlugins.push(...options.plugins);\n}\n\n// --- Store registry (singleton) ---\n\nconst storeInstances = new Map<string, Store<any, any, any>>();\n\n// --- defineStore ---\n\n/**\n * Define a global store. Returns a composable function that\n * always returns the same store instance (singleton).\n */\nexport function defineStore<\n S extends Record<string, unknown>,\n G extends Record<string, unknown> = {},\n A extends Record<string, (...args: any[]) => any> = {},\n>(\n id: string,\n definition: StoreDefinition<S, G, A>,\n): () => Store<S, G, A> {\n return () => {\n // Return existing instance if already created\n if (storeInstances.has(id)) {\n return storeInstances.get(id) as Store<S, G, A>;\n }\n\n const initialState = definition.state();\n const store = createStoreInstance(id, initialState, definition);\n storeInstances.set(id, store);\n return store;\n };\n}\n\nfunction createStoreInstance<\n S extends Record<string, unknown>,\n G extends Record<string, unknown>,\n A extends Record<string, (...args: any[]) => any>,\n>(\n id: string,\n initialState: S,\n definition: StoreDefinition<S, G, A>,\n): Store<S, G, A> {\n // Create signals for each state property\n const stateSignals: Record<string, Signal<unknown>> = {};\n const stateKeys = Object.keys(initialState);\n\n for (const key of stateKeys) {\n stateSignals[key] = signal(initialState[key]);\n }\n\n // Build the store object first so getters can reference other getters via `this`\n const store: any = { $id: id };\n\n // Add state signals\n for (const key of stateKeys) {\n store[key] = stateSignals[key];\n }\n\n // Create computed getters — bound to store so `this.otherGetter()` works\n if (definition.getters) {\n for (const [key, getterFn] of Object.entries(definition.getters)) {\n store[key] = computed(() =>\n (getterFn as Function).call(store, stateSignals),\n );\n }\n }\n\n // Collect all plugins (global + per-store)\n const plugins = [...globalPlugins, ...(definition.plugins ?? [])];\n\n // Bind actions with `this` pointing to the full store (state + getters + actions)\n if (definition.actions) {\n for (const [key, actionFn] of Object.entries(definition.actions)) {\n store[key] = (...args: unknown[]) => {\n for (const plugin of plugins) plugin.onAction?.(store, key, args);\n return (actionFn as Function).apply(store, args);\n };\n }\n }\n\n // $reset\n store.$reset = () => {\n const fresh = definition.state();\n for (const key of stateKeys) {\n stateSignals[key].set(fresh[key as keyof S]);\n }\n };\n\n // $patch — merge partial state\n store.$patch = (partial: Partial<S>) => {\n for (const [key, value] of Object.entries(partial)) {\n if (key in stateSignals) {\n stateSignals[key].set(value);\n }\n }\n };\n\n // $snapshot\n store.$snapshot = (): S => {\n const snapshot: Record<string, unknown> = {};\n for (const key of stateKeys) {\n snapshot[key] = stateSignals[key]();\n }\n return snapshot as S;\n };\n\n // $subscribe — watch all state signals and notify on change\n const subscribers = new Set<(state: S) => void>();\n let subscribeEffect: (() => void) | null = null;\n store.$subscribe = (callback: (state: S) => void): (() => void) => {\n subscribers.add(callback);\n // Start watching if this is the first subscriber\n if (!subscribeEffect) {\n let isInitial = true;\n subscribeEffect = effect(() => {\n // Read all state signals to track them\n for (const key of stateKeys) {\n stateSignals[key]();\n }\n // Skip initial run — only notify on actual changes\n if (isInitial) {\n isInitial = false;\n return;\n }\n const snapshot = store.$snapshot();\n for (const cb of subscribers) {\n cb(snapshot);\n }\n });\n }\n return () => {\n subscribers.delete(callback);\n // Dispose effect when no subscribers remain\n if (subscribers.size === 0 && subscribeEffect) {\n subscribeEffect();\n subscribeEffect = null;\n }\n };\n };\n\n // Initialize plugins\n for (const plugin of plugins) plugin.init?.(store);\n\n return store as Store<S, G, A>;\n}\n\n/**\n * Clear all store instances (useful for testing).\n */\nexport function clearStores(): void {\n storeInstances.clear();\n}\n\n/** @internal — exposes store registry for devtools */\nexport function __getStoreInstances(): Record<string, Store<any, any, any>> {\n return Object.fromEntries(storeInstances);\n}\n"]}
@@ -1,2 +0,0 @@
1
- 'use strict';var chunkRTJ6UDGV_cjs=require('./chunk-RTJ6UDGV.cjs');var k=[];function b(s){k.push(...s.plugins);}var g=new Map;function v(s,a){return ()=>{if(g.has(s))return g.get(s);let r=a.state(),o=A(s,r,a);return g.set(s,o),o}}function A(s,a,r){let o={},c=Object.keys(a);for(let t of c)o[t]=chunkRTJ6UDGV_cjs.l(a[t]);let n={$id:s};for(let t of c)n[t]=o[t];if(r.getters)for(let[t,e]of Object.entries(r.getters))n[t]=chunkRTJ6UDGV_cjs.m(()=>e.call(n,o));let l=[...k,...r.plugins??[]];if(r.actions)for(let[t,e]of Object.entries(r.actions))n[t]=(...i)=>{for(let f of l)f.onAction?.(n,t,i);return e.apply(n,i)};n.$reset=()=>{let t=r.state();for(let e of c)o[e].set(t[e]);},n.$patch=t=>{for(let[e,i]of Object.entries(t))e in o&&o[e].set(i);},n.$snapshot=()=>{let t={};for(let e of c)t[e]=o[e]();return t};let u=new Set,S=null;n.$subscribe=t=>{if(u.add(t),!S){let e=true;S=chunkRTJ6UDGV_cjs.n(()=>{for(let f of c)o[f]();if(e){e=false;return}let i=n.$snapshot();for(let f of u)f(i);});}return ()=>{u.delete(t),u.size===0&&S&&(S(),S=null);}};for(let t of l)t.init?.(n);return n}function x(){g.clear();}function R(){return Object.fromEntries(g)}exports.a=b;exports.b=v;exports.c=x;exports.d=R;//# sourceMappingURL=chunk-OCBLY4E4.cjs.map
2
- //# sourceMappingURL=chunk-OCBLY4E4.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/store.ts"],"names":["globalPlugins","configureStores","options","storeInstances","defineStore","id","definition","initialState","store","createStoreInstance","stateSignals","stateKeys","key","signal","getterFn","computed","plugins","actionFn","args","plugin","fresh","partial","value","snapshot","subscribers","subscribeEffect","callback","isInitial","effect","cb","clearStores","__getStoreInstances"],"mappings":"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","file":"chunk-OCBLY4E4.cjs","sourcesContent":["/**\n * Global state management via defineStore().\n *\n * Stores are singleton signal containers that persist across\n * components. They provide shared state, computed getters,\n * and actions — no external library needed.\n *\n * ```ts\n * const useCounterStore = defineStore('counter', {\n * state: () => ({ count: 0, name: 'Counter' }),\n * getters: {\n * doubled: (state) => state.count() * 2,\n * },\n * actions: {\n * increment() { this.count.update(c => c + 1); },\n * reset() { this.count.set(0); },\n * },\n * });\n *\n * // In any component:\n * const store = useCounterStore();\n * store.count(); // 0\n * store.doubled(); // 0\n * store.increment();\n * store.count(); // 1\n * ```\n */\n\nimport { signal, computed, effect } from './signals.js';\nimport type { Signal, ReadonlySignal } from './signals.js';\n\n// --- Types ---\n\ntype StateFactory<S> = () => S;\n\ntype Getters<S, G> = {\n [K in keyof G]: (state: SignalifiedState<S>) => G[K];\n};\n\ntype Actions<A> = {\n [K in keyof A]: A[K] extends (...args: infer P) => infer R\n ? (...args: P) => R\n : never;\n};\n\n/** Maps plain state values to signals */\ntype SignalifiedState<S> = {\n [K in keyof S]: Signal<S[K]>;\n};\n\n/** The store instance returned to consumers */\nexport type Store<S, G, A> = SignalifiedState<S> & {\n [K in keyof G]: ReadonlySignal<G[K]>;\n} & {\n [K in keyof A]: A[K] extends (...args: infer P) => infer R\n ? (...args: P) => R\n : never;\n} & {\n /** Reset all state to initial values */\n $reset(): void;\n /** Merge partial state into the store */\n $patch(partial: Partial<S>): void;\n /** Subscribe to all state changes */\n $subscribe(callback: (state: S) => void): () => void;\n /** Get a plain snapshot of current state */\n $snapshot(): S;\n /** Store ID */\n $id: string;\n};\n\nexport interface StoreDefinition<S, G, A> {\n state: StateFactory<S>;\n getters?: Getters<S, G>;\n actions?: A;\n plugins?: StorePlugin[];\n}\n\n// --- Plugin system ---\n\nexport interface StorePlugin {\n init?(store: Store<any, any, any>): void;\n onAction?(store: Store<any, any, any>, actionName: string, args: unknown[]): void;\n}\n\nconst globalPlugins: StorePlugin[] = [];\n\n/** Register global plugins that apply to all stores */\nexport function configureStores(options: { plugins: StorePlugin[] }): void {\n globalPlugins.push(...options.plugins);\n}\n\n// --- Store registry (singleton) ---\n\nconst storeInstances = new Map<string, Store<any, any, any>>();\n\n// --- defineStore ---\n\n/**\n * Define a global store. Returns a composable function that\n * always returns the same store instance (singleton).\n */\nexport function defineStore<\n S extends Record<string, unknown>,\n G extends Record<string, unknown> = {},\n A extends Record<string, (...args: any[]) => any> = {},\n>(\n id: string,\n definition: StoreDefinition<S, G, A>,\n): () => Store<S, G, A> {\n return () => {\n // Return existing instance if already created\n if (storeInstances.has(id)) {\n return storeInstances.get(id) as Store<S, G, A>;\n }\n\n const initialState = definition.state();\n const store = createStoreInstance(id, initialState, definition);\n storeInstances.set(id, store);\n return store;\n };\n}\n\nfunction createStoreInstance<\n S extends Record<string, unknown>,\n G extends Record<string, unknown>,\n A extends Record<string, (...args: any[]) => any>,\n>(\n id: string,\n initialState: S,\n definition: StoreDefinition<S, G, A>,\n): Store<S, G, A> {\n // Create signals for each state property\n const stateSignals: Record<string, Signal<unknown>> = {};\n const stateKeys = Object.keys(initialState);\n\n for (const key of stateKeys) {\n stateSignals[key] = signal(initialState[key]);\n }\n\n // Build the store object first so getters can reference other getters via `this`\n const store: any = { $id: id };\n\n // Add state signals\n for (const key of stateKeys) {\n store[key] = stateSignals[key];\n }\n\n // Create computed getters — bound to store so `this.otherGetter()` works\n if (definition.getters) {\n for (const [key, getterFn] of Object.entries(definition.getters)) {\n store[key] = computed(() =>\n (getterFn as Function).call(store, stateSignals),\n );\n }\n }\n\n // Collect all plugins (global + per-store)\n const plugins = [...globalPlugins, ...(definition.plugins ?? [])];\n\n // Bind actions with `this` pointing to the full store (state + getters + actions)\n if (definition.actions) {\n for (const [key, actionFn] of Object.entries(definition.actions)) {\n store[key] = (...args: unknown[]) => {\n for (const plugin of plugins) plugin.onAction?.(store, key, args);\n return (actionFn as Function).apply(store, args);\n };\n }\n }\n\n // $reset\n store.$reset = () => {\n const fresh = definition.state();\n for (const key of stateKeys) {\n stateSignals[key].set(fresh[key as keyof S]);\n }\n };\n\n // $patch — merge partial state\n store.$patch = (partial: Partial<S>) => {\n for (const [key, value] of Object.entries(partial)) {\n if (key in stateSignals) {\n stateSignals[key].set(value);\n }\n }\n };\n\n // $snapshot\n store.$snapshot = (): S => {\n const snapshot: Record<string, unknown> = {};\n for (const key of stateKeys) {\n snapshot[key] = stateSignals[key]();\n }\n return snapshot as S;\n };\n\n // $subscribe — watch all state signals and notify on change\n const subscribers = new Set<(state: S) => void>();\n let subscribeEffect: (() => void) | null = null;\n store.$subscribe = (callback: (state: S) => void): (() => void) => {\n subscribers.add(callback);\n // Start watching if this is the first subscriber\n if (!subscribeEffect) {\n let isInitial = true;\n subscribeEffect = effect(() => {\n // Read all state signals to track them\n for (const key of stateKeys) {\n stateSignals[key]();\n }\n // Skip initial run — only notify on actual changes\n if (isInitial) {\n isInitial = false;\n return;\n }\n const snapshot = store.$snapshot();\n for (const cb of subscribers) {\n cb(snapshot);\n }\n });\n }\n return () => {\n subscribers.delete(callback);\n // Dispose effect when no subscribers remain\n if (subscribers.size === 0 && subscribeEffect) {\n subscribeEffect();\n subscribeEffect = null;\n }\n };\n };\n\n // Initialize plugins\n for (const plugin of plugins) plugin.init?.(store);\n\n return store as Store<S, G, A>;\n}\n\n/**\n * Clear all store instances (useful for testing).\n */\nexport function clearStores(): void {\n storeInstances.clear();\n}\n\n/** @internal — exposes store registry for devtools */\nexport function __getStoreInstances(): Record<string, Store<any, any, any>> {\n return Object.fromEntries(storeInstances);\n}\n"]}