eclipsa 0.1.2 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/{action-DstcBFEm.mjs → action-CgM3EJUS.mjs} +26 -2
  2. package/{action-DstcBFEm.mjs.map → action-CgM3EJUS.mjs.map} +1 -1
  3. package/{client-D1zMr8hs.mjs → client-COjBNTyt.mjs} +4 -4
  4. package/{client-D1zMr8hs.mjs.map → client-COjBNTyt.mjs.map} +1 -1
  5. package/{component-DjUmyVqL.d.mts → component-D_nEtZ69.d.mts} +2 -2
  6. package/core/client/mod.d.mts +2 -2
  7. package/core/client/mod.mjs +4 -4
  8. package/core/dev-client/mod.d.mts +1 -1
  9. package/core/dev-client/mod.mjs +4 -4
  10. package/core/internal.d.mts +1 -1
  11. package/core/internal.mjs +1 -1
  12. package/core/prod-client/mod.d.mts +3 -3
  13. package/core/prod-client/mod.mjs +4 -4
  14. package/{internal-Dmvt_AGE.d.mts → internal-Csbm0Qnv.d.mts} +3 -3
  15. package/jsx/jsx-dev-runtime.d.mts +1 -1
  16. package/jsx/jsx-runtime.d.mts +1 -1
  17. package/jsx/mod.d.mts +1 -1
  18. package/jsx/mod.mjs +1 -1
  19. package/{mod-CaLAdQcH.d.mts → mod-DLb8ple9.d.mts} +4 -4
  20. package/mod.d.mts +4 -4
  21. package/mod.mjs +6 -6
  22. package/mod.mjs.map +1 -1
  23. package/package.json +2 -2
  24. package/{resume-hmr-BRDojQNp.mjs → resume-hmr-qTpLc5o-.mjs} +1 -1
  25. package/{resume-hmr-BRDojQNp.mjs.map → resume-hmr-qTpLc5o-.mjs.map} +1 -1
  26. package/{signal-CosyYdtA.d.mts → signal-B7AfIKrr.d.mts} +1 -1
  27. package/{signal-D1WmFjmJ.mjs → signal-CJtquEfo.mjs} +2 -2
  28. package/{signal-D1WmFjmJ.mjs.map → signal-CJtquEfo.mjs.map} +1 -1
  29. package/{snapshot-BG0kq9wt.mjs → snapshot-BdY3jcVk.mjs} +1 -1
  30. package/{snapshot-BG0kq9wt.mjs.map → snapshot-BdY3jcVk.mjs.map} +1 -1
  31. package/{types-WOJV0N2h.d.mts → types-BCEY9lGp.d.mts} +1 -1
  32. package/{types-DDeNM8UH.d.mts → types-DKpefD_u.d.mts} +1 -1
  33. package/vite/mod.mjs +29 -147180
  34. package/vite/mod.mjs.map +1 -1
  35. package/web-utils/mod.d.mts +1 -1
  36. package/web-utils/mod.mjs +2 -2
  37. package/loader-DDVVUXBr.mjs +0 -2
  38. /package/{jsx-runtime-QIK6ADiK.d.mts → jsx-runtime-BFDPoxFn.d.mts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"signal-D1WmFjmJ.mjs","names":[],"sources":["../core/signal.ts"],"sourcesContent":["import {\n createStandaloneRuntimeSignal,\n createEffect,\n createOnCleanup,\n createOnMount,\n createOnVisible,\n createWatch,\n getRuntimeContainer,\n getRuntimeSignalId,\n readAsyncSignalSnapshot,\n useRuntimeSignal,\n writeAsyncSignalSnapshot,\n} from './runtime.ts'\nimport { createPendingSignalError, isPendingSignalError } from './suspense.ts'\n\nexport interface Signal<T> {\n value: T\n}\n\ninterface SignalFactory {\n <T>(value: T): Signal<T>\n <T>(value?: T | undefined): Signal<T | undefined>\n computed<T>(value: () => T | Promise<T>, dependencies?: WatchDependency[]): Signal<T>\n}\n\ninterface ComputedSnapshot<T> {\n __e_async_computed: true\n error?: unknown\n promise?: Promise<T>\n status: 'pending' | 'rejected' | 'resolved'\n value?: T\n}\n\nexport type WatchDependency<T = unknown> = Signal<T> | (() => T)\n\nconst isPromiseLike = <T>(value: unknown): value is Promise<T> =>\n !!value && typeof value === 'object' && 'then' in value && typeof value.then === 'function'\n\nconst isComputedSnapshot = <T>(value: unknown): value is ComputedSnapshot<T> =>\n !!value && typeof value === 'object' && (value as ComputedSnapshot<T>).__e_async_computed === true\n\nconst createComputedSnapshot = <T>(\n snapshot: Omit<ComputedSnapshot<T>, '__e_async_computed'>,\n): ComputedSnapshot<T> => ({\n __e_async_computed: true,\n ...snapshot,\n})\n\nconst createComputedSignalFactory =\n (createBaseSignal: <T>(value: T) => Signal<T>): SignalFactory['computed'] =>\n <T>(fn: () => T | Promise<T>, dependencies?: WatchDependency[]) => {\n const state = createBaseSignal<ComputedSnapshot<T>>(\n createComputedSnapshot({\n status: 'pending',\n }),\n )\n const runtimeContainer = getRuntimeContainer()\n const signalId = getRuntimeSignalId(state)\n const seededSnapshot =\n signalId !== null\n ? (readAsyncSignalSnapshot(signalId, runtimeContainer) as ComputedSnapshot<T> | undefined)\n : undefined\n let useSeededSnapshot = !!seededSnapshot && seededSnapshot.status !== 'pending'\n let version = 0\n\n createEffect(\n () => {\n if (useSeededSnapshot && seededSnapshot) {\n useSeededSnapshot = false\n state.value = seededSnapshot\n if (signalId !== null) {\n writeAsyncSignalSnapshot(signalId, seededSnapshot, runtimeContainer)\n }\n return\n }\n\n const currentVersion = ++version\n try {\n const nextValue = fn()\n if (isPromiseLike<T>(nextValue)) {\n const pending = createComputedSnapshot<T>({\n promise: nextValue,\n status: 'pending',\n })\n state.value = pending\n if (signalId !== null) {\n writeAsyncSignalSnapshot(signalId, pending, runtimeContainer)\n }\n nextValue.then(\n (resolved) => {\n if (currentVersion !== version) {\n return\n }\n const completed = createComputedSnapshot<T>({\n status: 'resolved',\n value: resolved,\n })\n state.value = completed\n if (signalId !== null) {\n writeAsyncSignalSnapshot(signalId, completed, runtimeContainer)\n }\n },\n (error) => {\n if (currentVersion !== version) {\n return\n }\n const failed = createComputedSnapshot<T>({\n error,\n status: 'rejected',\n })\n state.value = failed\n if (signalId !== null) {\n writeAsyncSignalSnapshot(signalId, failed, runtimeContainer)\n }\n },\n )\n return\n }\n\n const resolved = createComputedSnapshot<T>({\n status: 'resolved',\n value: nextValue,\n })\n state.value = resolved\n if (signalId !== null) {\n writeAsyncSignalSnapshot(signalId, resolved, runtimeContainer)\n }\n } catch (error) {\n if (isPendingSignalError(error)) {\n const pending = createComputedSnapshot<T>({\n promise: error.promise as Promise<T>,\n status: 'pending',\n })\n state.value = pending\n if (signalId !== null) {\n writeAsyncSignalSnapshot(signalId, pending, runtimeContainer)\n }\n return\n }\n const failed = createComputedSnapshot<T>({\n error,\n status: 'rejected',\n })\n state.value = failed\n if (signalId !== null) {\n writeAsyncSignalSnapshot(signalId, failed, runtimeContainer)\n }\n }\n },\n dependencies\n ? {\n dependencies,\n errorLabel: 'useComputed',\n untracked: true,\n }\n : undefined,\n )\n\n const handle = {} as Signal<T>\n Object.defineProperty(handle, 'value', {\n configurable: true,\n enumerable: true,\n get() {\n const snapshot = state.value\n if (!isComputedSnapshot<T>(snapshot)) {\n return snapshot as T\n }\n if (snapshot.status === 'pending') {\n throw createPendingSignalError(snapshot.promise ?? Promise.resolve(undefined))\n }\n if (snapshot.status === 'rejected') {\n throw snapshot.error\n }\n return snapshot.value as T\n },\n })\n return handle\n }\n\nexport const signal = ((value) => createStandaloneRuntimeSignal(value)) as SignalFactory\n\nexport const useSignal = ((value) => useRuntimeSignal(value)) as SignalFactory\n\nsignal.computed = createComputedSignalFactory((value) => createStandaloneRuntimeSignal(value))\nuseSignal.computed = createComputedSignalFactory((value) => useRuntimeSignal(value))\n\nexport const effect = (fn: () => void) => createEffect(fn)\nexport const onCleanup = (fn: () => void) => createOnCleanup(fn)\nexport const onMount = (fn: () => void) => createOnMount(fn)\nexport const onVisible = (fn: () => void) => createOnVisible(fn)\nexport const useWatch = (fn: () => void, dependencies?: WatchDependency[]) =>\n createWatch(fn, dependencies)\n\nexport const useComputed = <T>(fn: () => T | Promise<T>, dependencies?: WatchDependency[]) =>\n useSignal.computed(fn, dependencies)\nexport const useComputed$ = useComputed\n"],"mappings":";;AAmCA,MAAM,iBAAoB,UACxB,CAAC,CAAC,SAAS,OAAO,UAAU,YAAY,UAAU,SAAS,OAAO,MAAM,SAAS;AAEnF,MAAM,sBAAyB,UAC7B,CAAC,CAAC,SAAS,OAAO,UAAU,YAAa,MAA8B,uBAAuB;AAEhG,MAAM,0BACJ,cACyB;CACzB,oBAAoB;CACpB,GAAG;CACJ;AAED,MAAM,+BACH,sBACG,IAA0B,iBAAqC;CACjE,MAAM,QAAQ,iBACZ,uBAAuB,EACrB,QAAQ,WACT,CAAC,CACH;CACD,MAAM,mBAAmB,qBAAqB;CAC9C,MAAM,WAAW,mBAAmB,MAAM;CAC1C,MAAM,iBACJ,aAAa,OACR,wBAAwB,UAAU,iBAAiB,GACpD,KAAA;CACN,IAAI,oBAAoB,CAAC,CAAC,kBAAkB,eAAe,WAAW;CACtE,IAAI,UAAU;AAEd,oBACQ;AACJ,MAAI,qBAAqB,gBAAgB;AACvC,uBAAoB;AACpB,SAAM,QAAQ;AACd,OAAI,aAAa,KACf,0BAAyB,UAAU,gBAAgB,iBAAiB;AAEtE;;EAGF,MAAM,iBAAiB,EAAE;AACzB,MAAI;GACF,MAAM,YAAY,IAAI;AACtB,OAAI,cAAiB,UAAU,EAAE;IAC/B,MAAM,UAAU,uBAA0B;KACxC,SAAS;KACT,QAAQ;KACT,CAAC;AACF,UAAM,QAAQ;AACd,QAAI,aAAa,KACf,0BAAyB,UAAU,SAAS,iBAAiB;AAE/D,cAAU,MACP,aAAa;AACZ,SAAI,mBAAmB,QACrB;KAEF,MAAM,YAAY,uBAA0B;MAC1C,QAAQ;MACR,OAAO;MACR,CAAC;AACF,WAAM,QAAQ;AACd,SAAI,aAAa,KACf,0BAAyB,UAAU,WAAW,iBAAiB;QAGlE,UAAU;AACT,SAAI,mBAAmB,QACrB;KAEF,MAAM,SAAS,uBAA0B;MACvC;MACA,QAAQ;MACT,CAAC;AACF,WAAM,QAAQ;AACd,SAAI,aAAa,KACf,0BAAyB,UAAU,QAAQ,iBAAiB;MAGjE;AACD;;GAGF,MAAM,WAAW,uBAA0B;IACzC,QAAQ;IACR,OAAO;IACR,CAAC;AACF,SAAM,QAAQ;AACd,OAAI,aAAa,KACf,0BAAyB,UAAU,UAAU,iBAAiB;WAEzD,OAAO;AACd,OAAI,qBAAqB,MAAM,EAAE;IAC/B,MAAM,UAAU,uBAA0B;KACxC,SAAS,MAAM;KACf,QAAQ;KACT,CAAC;AACF,UAAM,QAAQ;AACd,QAAI,aAAa,KACf,0BAAyB,UAAU,SAAS,iBAAiB;AAE/D;;GAEF,MAAM,SAAS,uBAA0B;IACvC;IACA,QAAQ;IACT,CAAC;AACF,SAAM,QAAQ;AACd,OAAI,aAAa,KACf,0BAAyB,UAAU,QAAQ,iBAAiB;;IAIlE,eACI;EACE;EACA,YAAY;EACZ,WAAW;EACZ,GACD,KAAA,EACL;CAED,MAAM,SAAS,EAAE;AACjB,QAAO,eAAe,QAAQ,SAAS;EACrC,cAAc;EACd,YAAY;EACZ,MAAM;GACJ,MAAM,WAAW,MAAM;AACvB,OAAI,CAAC,mBAAsB,SAAS,CAClC,QAAO;AAET,OAAI,SAAS,WAAW,UACtB,OAAM,yBAAyB,SAAS,WAAW,QAAQ,QAAQ,KAAA,EAAU,CAAC;AAEhF,OAAI,SAAS,WAAW,WACtB,OAAM,SAAS;AAEjB,UAAO,SAAS;;EAEnB,CAAC;AACF,QAAO;;AAGX,MAAa,WAAW,UAAU,8BAA8B,MAAM;AAEtE,MAAa,cAAc,UAAU,iBAAiB,MAAM;AAE5D,OAAO,WAAW,6BAA6B,UAAU,8BAA8B,MAAM,CAAC;AAC9F,UAAU,WAAW,6BAA6B,UAAU,iBAAiB,MAAM,CAAC;AAEpF,MAAa,UAAU,OAAmB,aAAa,GAAG;AAC1D,MAAa,aAAa,OAAmB,gBAAgB,GAAG;AAChE,MAAa,WAAW,OAAmB,cAAc,GAAG;AAC5D,MAAa,aAAa,OAAmB,gBAAgB,GAAG;AAChE,MAAa,YAAY,IAAgB,iBACvC,YAAY,IAAI,aAAa;AAE/B,MAAa,eAAkB,IAA0B,iBACvD,UAAU,SAAS,IAAI,aAAa;AACtC,MAAa,eAAe"}
1
+ {"version":3,"file":"signal-CJtquEfo.mjs","names":[],"sources":["../core/signal.ts"],"sourcesContent":["import {\n createStandaloneRuntimeSignal,\n createEffect,\n createOnCleanup,\n createOnMount,\n createOnVisible,\n createWatch,\n getRuntimeContainer,\n getRuntimeSignalId,\n readAsyncSignalSnapshot,\n useRuntimeSignal,\n writeAsyncSignalSnapshot,\n} from './runtime.ts'\nimport { createPendingSignalError, isPendingSignalError } from './suspense.ts'\n\nexport interface Signal<T> {\n value: T\n}\n\ninterface SignalFactory {\n <T>(value: T): Signal<T>\n <T>(value?: T | undefined): Signal<T | undefined>\n computed<T>(value: () => T | Promise<T>, dependencies?: WatchDependency[]): Signal<T>\n}\n\ninterface ComputedSnapshot<T> {\n __e_async_computed: true\n error?: unknown\n promise?: Promise<T>\n status: 'pending' | 'rejected' | 'resolved'\n value?: T\n}\n\nexport type WatchDependency<T = unknown> = Signal<T> | (() => T)\n\nconst isPromiseLike = <T>(value: unknown): value is Promise<T> =>\n !!value && typeof value === 'object' && 'then' in value && typeof value.then === 'function'\n\nconst isComputedSnapshot = <T>(value: unknown): value is ComputedSnapshot<T> =>\n !!value && typeof value === 'object' && (value as ComputedSnapshot<T>).__e_async_computed === true\n\nconst createComputedSnapshot = <T>(\n snapshot: Omit<ComputedSnapshot<T>, '__e_async_computed'>,\n): ComputedSnapshot<T> => ({\n __e_async_computed: true,\n ...snapshot,\n})\n\nconst createComputedSignalFactory =\n (createBaseSignal: <T>(value: T) => Signal<T>): SignalFactory['computed'] =>\n <T>(fn: () => T | Promise<T>, dependencies?: WatchDependency[]) => {\n const state = createBaseSignal<ComputedSnapshot<T>>(\n createComputedSnapshot({\n status: 'pending',\n }),\n )\n const runtimeContainer = getRuntimeContainer()\n const signalId = getRuntimeSignalId(state)\n const seededSnapshot =\n signalId !== null\n ? (readAsyncSignalSnapshot(signalId, runtimeContainer) as ComputedSnapshot<T> | undefined)\n : undefined\n let useSeededSnapshot = !!seededSnapshot && seededSnapshot.status !== 'pending'\n let version = 0\n\n createEffect(\n () => {\n if (useSeededSnapshot && seededSnapshot) {\n useSeededSnapshot = false\n state.value = seededSnapshot\n if (signalId !== null) {\n writeAsyncSignalSnapshot(signalId, seededSnapshot, runtimeContainer)\n }\n return\n }\n\n const currentVersion = ++version\n try {\n const nextValue = fn()\n if (isPromiseLike<T>(nextValue)) {\n const pending = createComputedSnapshot<T>({\n promise: nextValue,\n status: 'pending',\n })\n state.value = pending\n if (signalId !== null) {\n writeAsyncSignalSnapshot(signalId, pending, runtimeContainer)\n }\n nextValue.then(\n (resolved) => {\n if (currentVersion !== version) {\n return\n }\n const completed = createComputedSnapshot<T>({\n status: 'resolved',\n value: resolved,\n })\n state.value = completed\n if (signalId !== null) {\n writeAsyncSignalSnapshot(signalId, completed, runtimeContainer)\n }\n },\n (error) => {\n if (currentVersion !== version) {\n return\n }\n const failed = createComputedSnapshot<T>({\n error,\n status: 'rejected',\n })\n state.value = failed\n if (signalId !== null) {\n writeAsyncSignalSnapshot(signalId, failed, runtimeContainer)\n }\n },\n )\n return\n }\n\n const resolved = createComputedSnapshot<T>({\n status: 'resolved',\n value: nextValue,\n })\n state.value = resolved\n if (signalId !== null) {\n writeAsyncSignalSnapshot(signalId, resolved, runtimeContainer)\n }\n } catch (error) {\n if (isPendingSignalError(error)) {\n const pending = createComputedSnapshot<T>({\n promise: error.promise as Promise<T>,\n status: 'pending',\n })\n state.value = pending\n if (signalId !== null) {\n writeAsyncSignalSnapshot(signalId, pending, runtimeContainer)\n }\n return\n }\n const failed = createComputedSnapshot<T>({\n error,\n status: 'rejected',\n })\n state.value = failed\n if (signalId !== null) {\n writeAsyncSignalSnapshot(signalId, failed, runtimeContainer)\n }\n }\n },\n dependencies\n ? {\n dependencies,\n errorLabel: 'useComputed',\n untracked: true,\n }\n : undefined,\n )\n\n const handle = {} as Signal<T>\n Object.defineProperty(handle, 'value', {\n configurable: true,\n enumerable: true,\n get() {\n const snapshot = state.value\n if (!isComputedSnapshot<T>(snapshot)) {\n return snapshot as T\n }\n if (snapshot.status === 'pending') {\n throw createPendingSignalError(snapshot.promise ?? Promise.resolve(undefined))\n }\n if (snapshot.status === 'rejected') {\n throw snapshot.error\n }\n return snapshot.value as T\n },\n })\n return handle\n }\n\nexport const signal = ((value) => createStandaloneRuntimeSignal(value)) as SignalFactory\n\nexport const useSignal = ((value) => useRuntimeSignal(value)) as SignalFactory\n\nsignal.computed = createComputedSignalFactory((value) => createStandaloneRuntimeSignal(value))\nuseSignal.computed = createComputedSignalFactory((value) => useRuntimeSignal(value))\n\nexport const effect = (fn: () => void) => createEffect(fn)\nexport const onCleanup = (fn: () => void) => createOnCleanup(fn)\nexport const onMount = (fn: () => void) => createOnMount(fn)\nexport const onVisible = (fn: () => void) => createOnVisible(fn)\nexport const useWatch = (fn: () => void, dependencies?: WatchDependency[]) =>\n createWatch(fn, dependencies)\n\nexport const useComputed = <T>(fn: () => T | Promise<T>, dependencies?: WatchDependency[]) =>\n useSignal.computed(fn, dependencies)\nexport const useComputed$ = useComputed\n"],"mappings":"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"}
@@ -36,4 +36,4 @@ const registerSnapshotSignal = (reader) => {
36
36
  //#endregion
37
37
  export { registerSnapshotSignal as n, withSignalSnapshot as r, consumeSnapshotValue as t };
38
38
 
39
- //# sourceMappingURL=snapshot-BG0kq9wt.mjs.map
39
+ //# sourceMappingURL=snapshot-BdY3jcVk.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"snapshot-BG0kq9wt.mjs","names":[],"sources":["../core/snapshot.ts"],"sourcesContent":["interface SignalReader {\n read(): unknown\n}\n\ninterface SnapshotState {\n readers: SignalReader[]\n cursor: number\n values: unknown[] | null\n}\n\nconst SNAPSHOT_STATE_KEY = Symbol.for('eclipsa.snapshot-state')\n\nconst getCurrentSnapshotState = (): SnapshotState | null => {\n return (\n (globalThis as unknown as Record<PropertyKey, SnapshotState | null>)[SNAPSHOT_STATE_KEY] ?? null\n )\n}\n\nconst setCurrentSnapshotState = (state: SnapshotState | null) => {\n ;(globalThis as unknown as Record<PropertyKey, SnapshotState | null>)[SNAPSHOT_STATE_KEY] = state\n}\n\nexport const withSignalSnapshot = <T>(\n values: unknown[] | null,\n fn: () => T,\n): {\n result: T\n values: unknown[]\n} => {\n const previous = getCurrentSnapshotState()\n const state: SnapshotState = {\n readers: [],\n cursor: 0,\n values,\n }\n setCurrentSnapshotState(state)\n\n try {\n const result = fn()\n return {\n result,\n values: values ?? state.readers.map((reader) => reader.read()),\n }\n } finally {\n setCurrentSnapshotState(previous)\n }\n}\n\nexport const consumeSnapshotValue = <T>(fallback: T): T => {\n const state = getCurrentSnapshotState()\n if (!state) {\n return fallback\n }\n\n const index = state.cursor++\n if (state.values && index < state.values.length) {\n return state.values[index] as T\n }\n\n return fallback\n}\n\nexport const registerSnapshotSignal = (reader: SignalReader) => {\n getCurrentSnapshotState()?.readers.push(reader)\n}\n"],"mappings":";AAUA,MAAM,qBAAqB,OAAO,IAAI,yBAAyB;AAE/D,MAAM,gCAAsD;AAC1D,QACG,WAAoE,uBAAuB;;AAIhG,MAAM,2BAA2B,UAAgC;AAC7D,YAAoE,sBAAsB;;AAG9F,MAAa,sBACX,QACA,OAIG;CACH,MAAM,WAAW,yBAAyB;CAC1C,MAAM,QAAuB;EAC3B,SAAS,EAAE;EACX,QAAQ;EACR;EACD;AACD,yBAAwB,MAAM;AAE9B,KAAI;AAEF,SAAO;GACL,QAFa,IAAI;GAGjB,QAAQ,UAAU,MAAM,QAAQ,KAAK,WAAW,OAAO,MAAM,CAAC;GAC/D;WACO;AACR,0BAAwB,SAAS;;;AAIrC,MAAa,wBAA2B,aAAmB;CACzD,MAAM,QAAQ,yBAAyB;AACvC,KAAI,CAAC,MACH,QAAO;CAGT,MAAM,QAAQ,MAAM;AACpB,KAAI,MAAM,UAAU,QAAQ,MAAM,OAAO,OACvC,QAAO,MAAM,OAAO;AAGtB,QAAO;;AAGT,MAAa,0BAA0B,WAAyB;AAC9D,0BAAyB,EAAE,QAAQ,KAAK,OAAO"}
1
+ {"version":3,"file":"snapshot-BdY3jcVk.mjs","names":[],"sources":["../core/snapshot.ts"],"sourcesContent":["interface SignalReader {\n read(): unknown\n}\n\ninterface SnapshotState {\n readers: SignalReader[]\n cursor: number\n values: unknown[] | null\n}\n\nconst SNAPSHOT_STATE_KEY = Symbol.for('eclipsa.snapshot-state')\n\nconst getCurrentSnapshotState = (): SnapshotState | null => {\n return (\n (globalThis as unknown as Record<PropertyKey, SnapshotState | null>)[SNAPSHOT_STATE_KEY] ?? null\n )\n}\n\nconst setCurrentSnapshotState = (state: SnapshotState | null) => {\n ;(globalThis as unknown as Record<PropertyKey, SnapshotState | null>)[SNAPSHOT_STATE_KEY] = state\n}\n\nexport const withSignalSnapshot = <T>(\n values: unknown[] | null,\n fn: () => T,\n): {\n result: T\n values: unknown[]\n} => {\n const previous = getCurrentSnapshotState()\n const state: SnapshotState = {\n readers: [],\n cursor: 0,\n values,\n }\n setCurrentSnapshotState(state)\n\n try {\n const result = fn()\n return {\n result,\n values: values ?? state.readers.map((reader) => reader.read()),\n }\n } finally {\n setCurrentSnapshotState(previous)\n }\n}\n\nexport const consumeSnapshotValue = <T>(fallback: T): T => {\n const state = getCurrentSnapshotState()\n if (!state) {\n return fallback\n }\n\n const index = state.cursor++\n if (state.values && index < state.values.length) {\n return state.values[index] as T\n }\n\n return fallback\n}\n\nexport const registerSnapshotSignal = (reader: SignalReader) => {\n getCurrentSnapshotState()?.readers.push(reader)\n}\n"],"mappings":";AAUA,MAAM,qBAAqB,OAAO,IAAI,yBAAyB;AAE/D,MAAM,gCAAsD;AAC1D,QACG,WAAoE,uBAAuB;;AAIhG,MAAM,2BAA2B,UAAgC;AAC7D,YAAoE,sBAAsB;;AAG9F,MAAa,sBACX,QACA,OAIG;CACH,MAAM,WAAW,yBAAyB;CAC1C,MAAM,QAAuB;EAC3B,SAAS,EAAE;EACX,QAAQ;EACR;EACD;AACD,yBAAwB,MAAM;AAE9B,KAAI;AAEF,SAAO;GACL,QAFa,IAAI;GAGjB,QAAQ,UAAU,MAAM,QAAQ,KAAK,WAAW,OAAO,MAAM,CAAC;GAC/D;WACO;AACR,0BAAwB,SAAS;;;AAIrC,MAAa,wBAA2B,aAAmB;CACzD,MAAM,QAAQ,yBAAyB;AACvC,KAAI,CAAC,MACH,QAAO;CAGT,MAAM,QAAQ,MAAM;AACpB,KAAI,MAAM,UAAU,QAAQ,MAAM,OAAO,OACvC,QAAO,MAAM,OAAO;AAGtB,QAAO;;AAGT,MAAa,0BAA0B,WAAyB;AAC9D,0BAAyB,EAAE,QAAQ,KAAK,OAAO"}
@@ -279,4 +279,4 @@ declare namespace JSX {
279
279
  }
280
280
  //#endregion
281
281
  export { JSX as i, DelegatedEvent as n, EventHandler as r, BindTarget as t };
282
- //# sourceMappingURL=types-WOJV0N2h.d.mts.map
282
+ //# sourceMappingURL=types-BCEY9lGp.d.mts.map
@@ -8,4 +8,4 @@ type Insertable = string | number | boolean | undefined | null | Node | Insertab
8
8
  type ClientElementLike = Insertable | Insertable[];
9
9
  //#endregion
10
10
  export { Insertable as n, ClientElementLike as t };
11
- //# sourceMappingURL=types-DDeNM8UH.d.mts.map
11
+ //# sourceMappingURL=types-DKpefD_u.d.mts.map