mutts 1.0.14 → 1.0.15

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 (31) hide show
  1. package/dist/browser.cjs +85 -85
  2. package/dist/browser.cjs.map +1 -1
  3. package/dist/browser.dev.cjs +81 -81
  4. package/dist/browser.dev.esm.js +2 -2
  5. package/dist/browser.esm.js +3 -3
  6. package/dist/chunks/{proxy-C2lnvvbx.esm.js → effects-CPjf6gNA.esm.js} +2439 -2419
  7. package/dist/chunks/effects-CPjf6gNA.esm.js.map +1 -0
  8. package/dist/chunks/{proxy-HA_QQnd5.cjs → effects-oUauWxxl.cjs} +2440 -2420
  9. package/dist/chunks/effects-oUauWxxl.cjs.map +1 -0
  10. package/dist/chunks/{index-BnTNC9eC.cjs → index-Dtj2qZ0d.cjs} +291 -291
  11. package/dist/chunks/{index-BnTNC9eC.cjs.map → index-Dtj2qZ0d.cjs.map} +1 -1
  12. package/dist/chunks/{index-CAWVZL7P.esm.js → index-YGpb1te7.esm.js} +3 -3
  13. package/dist/chunks/{index-CAWVZL7P.esm.js.map → index-YGpb1te7.esm.js.map} +1 -1
  14. package/dist/chunks/{node-Df_5r_WA.cjs → node-CKuro-Uk.cjs} +6 -6
  15. package/dist/chunks/{node-Df_5r_WA.cjs.map → node-CKuro-Uk.cjs.map} +1 -1
  16. package/dist/chunks/{node-DuIduHw3.esm.js → node-sQtns7M-.esm.js} +2 -2
  17. package/dist/chunks/{node-DuIduHw3.esm.js.map → node-sQtns7M-.esm.js.map} +1 -1
  18. package/dist/debug.cjs +45 -45
  19. package/dist/debug.cjs.map +1 -1
  20. package/dist/debug.esm.js +1 -1
  21. package/dist/mutts.umd.js +3464 -3444
  22. package/dist/mutts.umd.js.map +1 -1
  23. package/dist/mutts.umd.min.js +1 -1
  24. package/dist/mutts.umd.min.js.map +1 -1
  25. package/dist/node.cjs +82 -82
  26. package/dist/node.dev.cjs +82 -82
  27. package/dist/node.dev.esm.js +3 -3
  28. package/dist/node.esm.js +3 -3
  29. package/package.json +1 -1
  30. package/dist/chunks/proxy-C2lnvvbx.esm.js.map +0 -1
  31. package/dist/chunks/proxy-HA_QQnd5.cjs.map +0 -1
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var node_async_hooks = require('node:async_hooks');
4
- var proxy = require('./proxy-HA_QQnd5.cjs');
4
+ var effects = require('./effects-oUauWxxl.cjs');
5
5
 
6
6
  // 1. Generic async_hooks implementation for Hooks
7
7
  // This maintains support for 'asyncHooks.addHook' for generic use cases.
@@ -9,10 +9,10 @@ const contexts = new Map();
9
9
  const activeUndoers = new Map();
10
10
  // Helper to capture current hooks state
11
11
  function captureRestorers() {
12
- if (proxy.hooks.size === 0)
12
+ if (effects.hooks.size === 0)
13
13
  return [];
14
14
  const restorers = [];
15
- for (const h of proxy.hooks) {
15
+ for (const h of effects.hooks) {
16
16
  const r = h();
17
17
  if (r)
18
18
  restorers.push(r);
@@ -130,8 +130,8 @@ function canceledImmediateHandle() {
130
130
  originalMethods.clearImmediate.call(globalThis, handle);
131
131
  return handle;
132
132
  }
133
- proxy.onReactiveBroken(freezeAsyncSchedulers);
134
- proxy.onReactiveReset(resumeAsyncSchedulers);
133
+ effects.onReactiveBroken(freezeAsyncSchedulers);
134
+ effects.onReactiveReset(resumeAsyncSchedulers);
135
135
  globalThis.setTimeout = ((callback, ...args) => {
136
136
  if (asyncSchedulersFrozen)
137
137
  return canceledTimeoutHandle();
@@ -184,4 +184,4 @@ OriginalPromise.prototype.catch = function (onRejected) {
184
184
  OriginalPromise.prototype.finally = function (onFinally) {
185
185
  return originalMethods.finally.call(this, wrap(onFinally));
186
186
  };
187
- //# sourceMappingURL=node-Df_5r_WA.cjs.map
187
+ //# sourceMappingURL=node-CKuro-Uk.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"node-Df_5r_WA.cjs","sources":["../../src/async/node.ts"],"sourcesContent":["import { createHook } from 'node:async_hooks'\nimport { onReactiveBroken, onReactiveReset } from '../reactive/effects'\nimport { hooks, type Restorer } from '.'\n\n// 1. Generic async_hooks implementation for Hooks\n// This maintains support for 'asyncHooks.addHook' for generic use cases.\n\nconst contexts = new Map<number, Restorer[]>()\nconst activeUndoers = new Map<number, (() => void)[]>()\n\n// Helper to capture current hooks state\nfunction captureRestorers() {\n\tif (hooks.size === 0) return []\n\tconst restorers: Restorer[] = []\n\tfor (const h of hooks) {\n\t\tconst r = h()\n\t\tif (r) restorers.push(r)\n\t}\n\treturn restorers\n}\n\n// Manual Wrap function to handle Promise callbacks\nfunction wrap<Args extends any[], R>(fn: ((...args: Args) => R) | null | undefined) {\n\tif (typeof fn !== 'function') return fn\n\tconst restorers = captureRestorers()\n\tif (restorers.length === 0) return fn\n\n\treturn function (this: any, ...args: Args) {\n\t\tconst undoers: (() => void)[] = []\n\t\tfor (const restore of restorers) {\n\t\t\tconst u = restore()\n\t\t\tif (u) undoers.push(u)\n\t\t}\n\t\ttry {\n\t\t\treturn fn.apply(this, args)\n\t\t} finally {\n\t\t\tfor (let i = undoers.length - 1; i >= 0; i--) undoers[i]()\n\t\t}\n\t}\n}\n\nconst hook = createHook({\n\tinit(asyncId, _type, _triggerId, _resource) {\n\t\t// Used for native resources like Timers\n\t\tconst restorers = captureRestorers()\n\t\tif (restorers.length > 0) contexts.set(asyncId, restorers)\n\t},\n\tbefore(asyncId) {\n\t\tconst restorers = contexts.get(asyncId)\n\t\tif (!restorers) return\n\t\tconst undoers: (() => void)[] = []\n\t\tfor (const restore of restorers) {\n\t\t\tconst u = restore()\n\t\t\tif (u) undoers.push(u)\n\t\t}\n\t\tif (undoers.length > 0) activeUndoers.set(asyncId, undoers)\n\t},\n\tafter(asyncId) {\n\t\tconst undoers = activeUndoers.get(asyncId)\n\t\tif (!undoers) return\n\t\tfor (let i = undoers.length - 1; i >= 0; i--) undoers[i]()\n\t\tactiveUndoers.delete(asyncId)\n\t},\n\tdestroy(asyncId) {\n\t\tcontexts.delete(asyncId)\n\t\tactiveUndoers.delete(asyncId)\n\t},\n})\nhook.enable()\n\n// 2. Shadow Promise Implementation\n// Ensures V8 await resumptions are visible as .then callbacks, wrapping them to restore context.\n\nconst OriginalPromise = globalThis.Promise\nconst originalMethods = {\n\t// biome-ignore lint/suspicious/noThenProperty: Intentional Promise.prototype patching\n\tthen: OriginalPromise.prototype.then,\n\tcatch: OriginalPromise.prototype.catch,\n\tfinally: OriginalPromise.prototype.finally,\n\tresolve: OriginalPromise.resolve,\n\treject: OriginalPromise.reject,\n\tall: OriginalPromise.all,\n\tsetTimeout: globalThis.setTimeout,\n\tclearTimeout: globalThis.clearTimeout,\n\tsetInterval: globalThis.setInterval,\n\tclearInterval: globalThis.clearInterval,\n\tsetImmediate: globalThis.setImmediate,\n\tclearImmediate: globalThis.clearImmediate,\n}\n\nconst pendingTimeouts = new Set<unknown>()\nconst pendingIntervals = new Set<unknown>()\nconst pendingImmediates = new Set<unknown>()\nlet asyncSchedulersFrozen = false\n\nfunction clearPendingSchedulers() {\n\tfor (const handle of Array.from(pendingTimeouts))\n\t\toriginalMethods.clearTimeout.call(globalThis, handle)\n\tfor (const handle of Array.from(pendingIntervals))\n\t\toriginalMethods.clearInterval.call(globalThis, handle)\n\tfor (const handle of Array.from(pendingImmediates))\n\t\toriginalMethods.clearImmediate.call(globalThis, handle)\n\tpendingTimeouts.clear()\n\tpendingIntervals.clear()\n\tpendingImmediates.clear()\n}\n\nfunction freezeAsyncSchedulers() {\n\tif (asyncSchedulersFrozen) return\n\tasyncSchedulersFrozen = true\n\tclearPendingSchedulers()\n}\n\nfunction resumeAsyncSchedulers() {\n\tasyncSchedulersFrozen = false\n}\n\nfunction canceledTimeoutHandle() {\n\tconst handle = originalMethods.setTimeout.call(globalThis, () => {}, 0)\n\toriginalMethods.clearTimeout.call(globalThis, handle)\n\treturn handle\n}\n\nfunction canceledIntervalHandle() {\n\tconst handle = originalMethods.setInterval.call(globalThis, () => {}, 0)\n\toriginalMethods.clearInterval.call(globalThis, handle)\n\treturn handle\n}\n\nfunction canceledImmediateHandle() {\n\tconst handle = originalMethods.setImmediate.call(globalThis, () => {})\n\toriginalMethods.clearImmediate.call(globalThis, handle)\n\treturn handle\n}\n\nonReactiveBroken(freezeAsyncSchedulers)\nonReactiveReset(resumeAsyncSchedulers)\n\nglobalThis.setTimeout = ((callback: Function, ...args: any[]) => {\n\tif (asyncSchedulersFrozen) return canceledTimeoutHandle()\n\tconst handle = originalMethods.setTimeout.call(\n\t\tglobalThis,\n\t\t(...callbackArgs: any[]) => {\n\t\t\tpendingTimeouts.delete(handle)\n\t\t\tcallback(...callbackArgs)\n\t\t},\n\t\t...args\n\t)\n\tpendingTimeouts.add(handle)\n\treturn handle\n}) as typeof globalThis.setTimeout\n\nglobalThis.clearTimeout = ((handle?: unknown) => {\n\tpendingTimeouts.delete(handle)\n\treturn originalMethods.clearTimeout.call(globalThis, handle)\n}) as typeof globalThis.clearTimeout\n\nglobalThis.setInterval = ((callback: Function, ...args: any[]) => {\n\tif (asyncSchedulersFrozen) return canceledIntervalHandle()\n\tconst handle = originalMethods.setInterval.call(\n\t\tglobalThis,\n\t\t(...callbackArgs: any[]) => {\n\t\t\tcallback(...callbackArgs)\n\t\t},\n\t\t...args\n\t)\n\tpendingIntervals.add(handle)\n\treturn handle\n}) as typeof globalThis.setInterval\n\nglobalThis.clearInterval = ((handle?: unknown) => {\n\tpendingIntervals.delete(handle)\n\treturn originalMethods.clearInterval.call(globalThis, handle)\n}) as typeof globalThis.clearInterval\n\nglobalThis.setImmediate = ((callback: Function, ...args: any[]) => {\n\tif (asyncSchedulersFrozen) return canceledImmediateHandle()\n\tconst handle = originalMethods.setImmediate.call(\n\t\tglobalThis,\n\t\t(...callbackArgs: any[]) => {\n\t\t\tpendingImmediates.delete(handle)\n\t\t\tcallback(...callbackArgs)\n\t\t},\n\t\t...args\n\t)\n\tpendingImmediates.add(handle)\n\treturn handle\n}) as typeof globalThis.setImmediate\n\nglobalThis.clearImmediate = ((handle?: unknown) => {\n\tpendingImmediates.delete(handle)\n\treturn originalMethods.clearImmediate.call(globalThis, handle)\n}) as typeof globalThis.clearImmediate\n\n// Patch prototype\n// biome-ignore lint/suspicious/noThenProperty: Intentional Promise.prototype patching\nOriginalPromise.prototype.then = function (onFulfilled, onRejected) {\n\treturn originalMethods.then.call(this, wrap(onFulfilled), wrap(onRejected))\n} as any\nOriginalPromise.prototype.catch = function (onRejected) {\n\treturn originalMethods.catch.call(this, wrap(onRejected))\n} as any\nOriginalPromise.prototype.finally = function (onFinally) {\n\treturn originalMethods.finally.call(this, wrap(onFinally))\n} as any\n"],"names":["hooks","createHook","onReactiveBroken","onReactiveReset"],"mappings":";;;;;AAIA;AACA;AAEA,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAsB;AAC9C,MAAM,aAAa,GAAG,IAAI,GAAG,EAA0B;AAEvD;AACA,SAAS,gBAAgB,GAAA;AACxB,IAAA,IAAIA,WAAK,CAAC,IAAI,KAAK,CAAC;AAAE,QAAA,OAAO,EAAE;IAC/B,MAAM,SAAS,GAAe,EAAE;AAChC,IAAA,KAAK,MAAM,CAAC,IAAIA,WAAK,EAAE;AACtB,QAAA,MAAM,CAAC,GAAG,CAAC,EAAE;AACb,QAAA,IAAI,CAAC;AAAE,YAAA,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IACzB;AACA,IAAA,OAAO,SAAS;AACjB;AAEA;AACA,SAAS,IAAI,CAAwB,EAA6C,EAAA;IACjF,IAAI,OAAO,EAAE,KAAK,UAAU;AAAE,QAAA,OAAO,EAAE;AACvC,IAAA,MAAM,SAAS,GAAG,gBAAgB,EAAE;AACpC,IAAA,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;AAAE,QAAA,OAAO,EAAE;IAErC,OAAO,UAAqB,GAAG,IAAU,EAAA;QACxC,MAAM,OAAO,GAAmB,EAAE;AAClC,QAAA,KAAK,MAAM,OAAO,IAAI,SAAS,EAAE;AAChC,YAAA,MAAM,CAAC,GAAG,OAAO,EAAE;AACnB,YAAA,IAAI,CAAC;AAAE,gBAAA,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QACvB;AACA,QAAA,IAAI;YACH,OAAO,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC;QAC5B;gBAAU;AACT,YAAA,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;AAAE,gBAAA,OAAO,CAAC,CAAC,CAAC,EAAE;QAC3D;AACD,IAAA,CAAC;AACF;AAEA,MAAM,IAAI,GAAGC,2BAAU,CAAC;AACvB,IAAA,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAA;;AAEzC,QAAA,MAAM,SAAS,GAAG,gBAAgB,EAAE;AACpC,QAAA,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;AAAE,YAAA,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC;IAC3D,CAAC;AACD,IAAA,MAAM,CAAC,OAAO,EAAA;QACb,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;AACvC,QAAA,IAAI,CAAC,SAAS;YAAE;QAChB,MAAM,OAAO,GAAmB,EAAE;AAClC,QAAA,KAAK,MAAM,OAAO,IAAI,SAAS,EAAE;AAChC,YAAA,MAAM,CAAC,GAAG,OAAO,EAAE;AACnB,YAAA,IAAI,CAAC;AAAE,gBAAA,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QACvB;AACA,QAAA,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;AAAE,YAAA,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC;IAC5D,CAAC;AACD,IAAA,KAAK,CAAC,OAAO,EAAA;QACZ,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC;AAC1C,QAAA,IAAI,CAAC,OAAO;YAAE;AACd,QAAA,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;AAAE,YAAA,OAAO,CAAC,CAAC,CAAC,EAAE;AAC1D,QAAA,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC;IAC9B,CAAC;AACD,IAAA,OAAO,CAAC,OAAO,EAAA;AACd,QAAA,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC;AACxB,QAAA,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC;IAC9B,CAAC;AACD,CAAA,CAAC;AACF,IAAI,CAAC,MAAM,EAAE;AAEb;AACA;AAEA,MAAM,eAAe,GAAG,UAAU,CAAC,OAAO;AAC1C,MAAM,eAAe,GAAG;;AAEvB,IAAA,IAAI,EAAE,eAAe,CAAC,SAAS,CAAC,IAAI;AACpC,IAAA,KAAK,EAAE,eAAe,CAAC,SAAS,CAAC,KAAK;AACtC,IAAA,OAAO,EAAE,eAAe,CAAC,SAAS,CAAC,OAAO;IAI1C,UAAU,EAAE,UAAU,CAAC,UAAU;IACjC,YAAY,EAAE,UAAU,CAAC,YAAY;IACrC,WAAW,EAAE,UAAU,CAAC,WAAW;IACnC,aAAa,EAAE,UAAU,CAAC,aAAa;IACvC,YAAY,EAAE,UAAU,CAAC,YAAY;IACrC,cAAc,EAAE,UAAU,CAAC,cAAc;CACzC;AAED,MAAM,eAAe,GAAG,IAAI,GAAG,EAAW;AAC1C,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAW;AAC3C,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAW;AAC5C,IAAI,qBAAqB,GAAG,KAAK;AAEjC,SAAS,sBAAsB,GAAA;IAC9B,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC;QAC/C,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;IACtD,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC;QAChD,eAAe,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;IACvD,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC;QACjD,eAAe,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;IACxD,eAAe,CAAC,KAAK,EAAE;IACvB,gBAAgB,CAAC,KAAK,EAAE;IACxB,iBAAiB,CAAC,KAAK,EAAE;AAC1B;AAEA,SAAS,qBAAqB,GAAA;AAC7B,IAAA,IAAI,qBAAqB;QAAE;IAC3B,qBAAqB,GAAG,IAAI;AAC5B,IAAA,sBAAsB,EAAE;AACzB;AAEA,SAAS,qBAAqB,GAAA;IAC7B,qBAAqB,GAAG,KAAK;AAC9B;AAEA,SAAS,qBAAqB,GAAA;AAC7B,IAAA,MAAM,MAAM,GAAG,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,MAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IACvE,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;AACrD,IAAA,OAAO,MAAM;AACd;AAEA,SAAS,sBAAsB,GAAA;AAC9B,IAAA,MAAM,MAAM,GAAG,eAAe,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,EAAE,MAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IACxE,eAAe,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;AACtD,IAAA,OAAO,MAAM;AACd;AAEA,SAAS,uBAAuB,GAAA;AAC/B,IAAA,MAAM,MAAM,GAAG,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,MAAK,EAAE,CAAC,CAAC;IACtE,eAAe,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;AACvD,IAAA,OAAO,MAAM;AACd;AAEAC,sBAAgB,CAAC,qBAAqB,CAAC;AACvCC,qBAAe,CAAC,qBAAqB,CAAC;AAEtC,UAAU,CAAC,UAAU,IAAI,CAAC,QAAkB,EAAE,GAAG,IAAW,KAAI;AAC/D,IAAA,IAAI,qBAAqB;QAAE,OAAO,qBAAqB,EAAE;AACzD,IAAA,MAAM,MAAM,GAAG,eAAe,CAAC,UAAU,CAAC,IAAI,CAC7C,UAAU,EACV,CAAC,GAAG,YAAmB,KAAI;AAC1B,QAAA,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC;AAC9B,QAAA,QAAQ,CAAC,GAAG,YAAY,CAAC;AAC1B,IAAA,CAAC,EACD,GAAG,IAAI,CACP;AACD,IAAA,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC;AAC3B,IAAA,OAAO,MAAM;AACd,CAAC,CAAiC;AAElC,UAAU,CAAC,YAAY,IAAI,CAAC,MAAgB,KAAI;AAC/C,IAAA,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC;IAC9B,OAAO,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;AAC7D,CAAC,CAAmC;AAEpC,UAAU,CAAC,WAAW,IAAI,CAAC,QAAkB,EAAE,GAAG,IAAW,KAAI;AAChE,IAAA,IAAI,qBAAqB;QAAE,OAAO,sBAAsB,EAAE;AAC1D,IAAA,MAAM,MAAM,GAAG,eAAe,CAAC,WAAW,CAAC,IAAI,CAC9C,UAAU,EACV,CAAC,GAAG,YAAmB,KAAI;AAC1B,QAAA,QAAQ,CAAC,GAAG,YAAY,CAAC;AAC1B,IAAA,CAAC,EACD,GAAG,IAAI,CACP;AACD,IAAA,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC;AAC5B,IAAA,OAAO,MAAM;AACd,CAAC,CAAkC;AAEnC,UAAU,CAAC,aAAa,IAAI,CAAC,MAAgB,KAAI;AAChD,IAAA,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC;IAC/B,OAAO,eAAe,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;AAC9D,CAAC,CAAoC;AAErC,UAAU,CAAC,YAAY,IAAI,CAAC,QAAkB,EAAE,GAAG,IAAW,KAAI;AACjE,IAAA,IAAI,qBAAqB;QAAE,OAAO,uBAAuB,EAAE;AAC3D,IAAA,MAAM,MAAM,GAAG,eAAe,CAAC,YAAY,CAAC,IAAI,CAC/C,UAAU,EACV,CAAC,GAAG,YAAmB,KAAI;AAC1B,QAAA,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC;AAChC,QAAA,QAAQ,CAAC,GAAG,YAAY,CAAC;AAC1B,IAAA,CAAC,EACD,GAAG,IAAI,CACP;AACD,IAAA,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC;AAC7B,IAAA,OAAO,MAAM;AACd,CAAC,CAAmC;AAEpC,UAAU,CAAC,cAAc,IAAI,CAAC,MAAgB,KAAI;AACjD,IAAA,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC;IAChC,OAAO,eAAe,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;AAC/D,CAAC,CAAqC;AAEtC;AACA;AACA,eAAe,CAAC,SAAS,CAAC,IAAI,GAAG,UAAU,WAAW,EAAE,UAAU,EAAA;AACjE,IAAA,OAAO,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;AAC5E,CAAQ;AACR,eAAe,CAAC,SAAS,CAAC,KAAK,GAAG,UAAU,UAAU,EAAA;AACrD,IAAA,OAAO,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;AAC1D,CAAQ;AACR,eAAe,CAAC,SAAS,CAAC,OAAO,GAAG,UAAU,SAAS,EAAA;AACtD,IAAA,OAAO,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;AAC3D,CAAQ;;"}
1
+ {"version":3,"file":"node-CKuro-Uk.cjs","sources":["../../src/async/node.ts"],"sourcesContent":["import { createHook } from 'node:async_hooks'\nimport { onReactiveBroken, onReactiveReset } from '../reactive/effects'\nimport { hooks, type Restorer } from '.'\n\n// 1. Generic async_hooks implementation for Hooks\n// This maintains support for 'asyncHooks.addHook' for generic use cases.\n\nconst contexts = new Map<number, Restorer[]>()\nconst activeUndoers = new Map<number, (() => void)[]>()\n\n// Helper to capture current hooks state\nfunction captureRestorers() {\n\tif (hooks.size === 0) return []\n\tconst restorers: Restorer[] = []\n\tfor (const h of hooks) {\n\t\tconst r = h()\n\t\tif (r) restorers.push(r)\n\t}\n\treturn restorers\n}\n\n// Manual Wrap function to handle Promise callbacks\nfunction wrap<Args extends any[], R>(fn: ((...args: Args) => R) | null | undefined) {\n\tif (typeof fn !== 'function') return fn\n\tconst restorers = captureRestorers()\n\tif (restorers.length === 0) return fn\n\n\treturn function (this: any, ...args: Args) {\n\t\tconst undoers: (() => void)[] = []\n\t\tfor (const restore of restorers) {\n\t\t\tconst u = restore()\n\t\t\tif (u) undoers.push(u)\n\t\t}\n\t\ttry {\n\t\t\treturn fn.apply(this, args)\n\t\t} finally {\n\t\t\tfor (let i = undoers.length - 1; i >= 0; i--) undoers[i]()\n\t\t}\n\t}\n}\n\nconst hook = createHook({\n\tinit(asyncId, _type, _triggerId, _resource) {\n\t\t// Used for native resources like Timers\n\t\tconst restorers = captureRestorers()\n\t\tif (restorers.length > 0) contexts.set(asyncId, restorers)\n\t},\n\tbefore(asyncId) {\n\t\tconst restorers = contexts.get(asyncId)\n\t\tif (!restorers) return\n\t\tconst undoers: (() => void)[] = []\n\t\tfor (const restore of restorers) {\n\t\t\tconst u = restore()\n\t\t\tif (u) undoers.push(u)\n\t\t}\n\t\tif (undoers.length > 0) activeUndoers.set(asyncId, undoers)\n\t},\n\tafter(asyncId) {\n\t\tconst undoers = activeUndoers.get(asyncId)\n\t\tif (!undoers) return\n\t\tfor (let i = undoers.length - 1; i >= 0; i--) undoers[i]()\n\t\tactiveUndoers.delete(asyncId)\n\t},\n\tdestroy(asyncId) {\n\t\tcontexts.delete(asyncId)\n\t\tactiveUndoers.delete(asyncId)\n\t},\n})\nhook.enable()\n\n// 2. Shadow Promise Implementation\n// Ensures V8 await resumptions are visible as .then callbacks, wrapping them to restore context.\n\nconst OriginalPromise = globalThis.Promise\nconst originalMethods = {\n\t// biome-ignore lint/suspicious/noThenProperty: Intentional Promise.prototype patching\n\tthen: OriginalPromise.prototype.then,\n\tcatch: OriginalPromise.prototype.catch,\n\tfinally: OriginalPromise.prototype.finally,\n\tresolve: OriginalPromise.resolve,\n\treject: OriginalPromise.reject,\n\tall: OriginalPromise.all,\n\tsetTimeout: globalThis.setTimeout,\n\tclearTimeout: globalThis.clearTimeout,\n\tsetInterval: globalThis.setInterval,\n\tclearInterval: globalThis.clearInterval,\n\tsetImmediate: globalThis.setImmediate,\n\tclearImmediate: globalThis.clearImmediate,\n}\n\nconst pendingTimeouts = new Set<unknown>()\nconst pendingIntervals = new Set<unknown>()\nconst pendingImmediates = new Set<unknown>()\nlet asyncSchedulersFrozen = false\n\nfunction clearPendingSchedulers() {\n\tfor (const handle of Array.from(pendingTimeouts))\n\t\toriginalMethods.clearTimeout.call(globalThis, handle)\n\tfor (const handle of Array.from(pendingIntervals))\n\t\toriginalMethods.clearInterval.call(globalThis, handle)\n\tfor (const handle of Array.from(pendingImmediates))\n\t\toriginalMethods.clearImmediate.call(globalThis, handle)\n\tpendingTimeouts.clear()\n\tpendingIntervals.clear()\n\tpendingImmediates.clear()\n}\n\nfunction freezeAsyncSchedulers() {\n\tif (asyncSchedulersFrozen) return\n\tasyncSchedulersFrozen = true\n\tclearPendingSchedulers()\n}\n\nfunction resumeAsyncSchedulers() {\n\tasyncSchedulersFrozen = false\n}\n\nfunction canceledTimeoutHandle() {\n\tconst handle = originalMethods.setTimeout.call(globalThis, () => {}, 0)\n\toriginalMethods.clearTimeout.call(globalThis, handle)\n\treturn handle\n}\n\nfunction canceledIntervalHandle() {\n\tconst handle = originalMethods.setInterval.call(globalThis, () => {}, 0)\n\toriginalMethods.clearInterval.call(globalThis, handle)\n\treturn handle\n}\n\nfunction canceledImmediateHandle() {\n\tconst handle = originalMethods.setImmediate.call(globalThis, () => {})\n\toriginalMethods.clearImmediate.call(globalThis, handle)\n\treturn handle\n}\n\nonReactiveBroken(freezeAsyncSchedulers)\nonReactiveReset(resumeAsyncSchedulers)\n\nglobalThis.setTimeout = ((callback: Function, ...args: any[]) => {\n\tif (asyncSchedulersFrozen) return canceledTimeoutHandle()\n\tconst handle = originalMethods.setTimeout.call(\n\t\tglobalThis,\n\t\t(...callbackArgs: any[]) => {\n\t\t\tpendingTimeouts.delete(handle)\n\t\t\tcallback(...callbackArgs)\n\t\t},\n\t\t...args\n\t)\n\tpendingTimeouts.add(handle)\n\treturn handle\n}) as typeof globalThis.setTimeout\n\nglobalThis.clearTimeout = ((handle?: unknown) => {\n\tpendingTimeouts.delete(handle)\n\treturn originalMethods.clearTimeout.call(globalThis, handle)\n}) as typeof globalThis.clearTimeout\n\nglobalThis.setInterval = ((callback: Function, ...args: any[]) => {\n\tif (asyncSchedulersFrozen) return canceledIntervalHandle()\n\tconst handle = originalMethods.setInterval.call(\n\t\tglobalThis,\n\t\t(...callbackArgs: any[]) => {\n\t\t\tcallback(...callbackArgs)\n\t\t},\n\t\t...args\n\t)\n\tpendingIntervals.add(handle)\n\treturn handle\n}) as typeof globalThis.setInterval\n\nglobalThis.clearInterval = ((handle?: unknown) => {\n\tpendingIntervals.delete(handle)\n\treturn originalMethods.clearInterval.call(globalThis, handle)\n}) as typeof globalThis.clearInterval\n\nglobalThis.setImmediate = ((callback: Function, ...args: any[]) => {\n\tif (asyncSchedulersFrozen) return canceledImmediateHandle()\n\tconst handle = originalMethods.setImmediate.call(\n\t\tglobalThis,\n\t\t(...callbackArgs: any[]) => {\n\t\t\tpendingImmediates.delete(handle)\n\t\t\tcallback(...callbackArgs)\n\t\t},\n\t\t...args\n\t)\n\tpendingImmediates.add(handle)\n\treturn handle\n}) as typeof globalThis.setImmediate\n\nglobalThis.clearImmediate = ((handle?: unknown) => {\n\tpendingImmediates.delete(handle)\n\treturn originalMethods.clearImmediate.call(globalThis, handle)\n}) as typeof globalThis.clearImmediate\n\n// Patch prototype\n// biome-ignore lint/suspicious/noThenProperty: Intentional Promise.prototype patching\nOriginalPromise.prototype.then = function (onFulfilled, onRejected) {\n\treturn originalMethods.then.call(this, wrap(onFulfilled), wrap(onRejected))\n} as any\nOriginalPromise.prototype.catch = function (onRejected) {\n\treturn originalMethods.catch.call(this, wrap(onRejected))\n} as any\nOriginalPromise.prototype.finally = function (onFinally) {\n\treturn originalMethods.finally.call(this, wrap(onFinally))\n} as any\n"],"names":["hooks","createHook","onReactiveBroken","onReactiveReset"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { createHook } from 'node:async_hooks';
2
- import { a5 as onReactiveBroken, a6 as onReactiveReset, L as hooks } from './proxy-C2lnvvbx.esm.js';
2
+ import { a5 as onReactiveBroken, a6 as onReactiveReset, L as hooks } from './effects-CPjf6gNA.esm.js';
3
3
 
4
4
  // 1. Generic async_hooks implementation for Hooks
5
5
  // This maintains support for 'asyncHooks.addHook' for generic use cases.
@@ -182,4 +182,4 @@ OriginalPromise.prototype.catch = function (onRejected) {
182
182
  OriginalPromise.prototype.finally = function (onFinally) {
183
183
  return originalMethods.finally.call(this, wrap(onFinally));
184
184
  };
185
- //# sourceMappingURL=node-DuIduHw3.esm.js.map
185
+ //# sourceMappingURL=node-sQtns7M-.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"node-DuIduHw3.esm.js","sources":["../../src/async/node.ts"],"sourcesContent":["import { createHook } from 'node:async_hooks'\nimport { onReactiveBroken, onReactiveReset } from '../reactive/effects'\nimport { hooks, type Restorer } from '.'\n\n// 1. Generic async_hooks implementation for Hooks\n// This maintains support for 'asyncHooks.addHook' for generic use cases.\n\nconst contexts = new Map<number, Restorer[]>()\nconst activeUndoers = new Map<number, (() => void)[]>()\n\n// Helper to capture current hooks state\nfunction captureRestorers() {\n\tif (hooks.size === 0) return []\n\tconst restorers: Restorer[] = []\n\tfor (const h of hooks) {\n\t\tconst r = h()\n\t\tif (r) restorers.push(r)\n\t}\n\treturn restorers\n}\n\n// Manual Wrap function to handle Promise callbacks\nfunction wrap<Args extends any[], R>(fn: ((...args: Args) => R) | null | undefined) {\n\tif (typeof fn !== 'function') return fn\n\tconst restorers = captureRestorers()\n\tif (restorers.length === 0) return fn\n\n\treturn function (this: any, ...args: Args) {\n\t\tconst undoers: (() => void)[] = []\n\t\tfor (const restore of restorers) {\n\t\t\tconst u = restore()\n\t\t\tif (u) undoers.push(u)\n\t\t}\n\t\ttry {\n\t\t\treturn fn.apply(this, args)\n\t\t} finally {\n\t\t\tfor (let i = undoers.length - 1; i >= 0; i--) undoers[i]()\n\t\t}\n\t}\n}\n\nconst hook = createHook({\n\tinit(asyncId, _type, _triggerId, _resource) {\n\t\t// Used for native resources like Timers\n\t\tconst restorers = captureRestorers()\n\t\tif (restorers.length > 0) contexts.set(asyncId, restorers)\n\t},\n\tbefore(asyncId) {\n\t\tconst restorers = contexts.get(asyncId)\n\t\tif (!restorers) return\n\t\tconst undoers: (() => void)[] = []\n\t\tfor (const restore of restorers) {\n\t\t\tconst u = restore()\n\t\t\tif (u) undoers.push(u)\n\t\t}\n\t\tif (undoers.length > 0) activeUndoers.set(asyncId, undoers)\n\t},\n\tafter(asyncId) {\n\t\tconst undoers = activeUndoers.get(asyncId)\n\t\tif (!undoers) return\n\t\tfor (let i = undoers.length - 1; i >= 0; i--) undoers[i]()\n\t\tactiveUndoers.delete(asyncId)\n\t},\n\tdestroy(asyncId) {\n\t\tcontexts.delete(asyncId)\n\t\tactiveUndoers.delete(asyncId)\n\t},\n})\nhook.enable()\n\n// 2. Shadow Promise Implementation\n// Ensures V8 await resumptions are visible as .then callbacks, wrapping them to restore context.\n\nconst OriginalPromise = globalThis.Promise\nconst originalMethods = {\n\t// biome-ignore lint/suspicious/noThenProperty: Intentional Promise.prototype patching\n\tthen: OriginalPromise.prototype.then,\n\tcatch: OriginalPromise.prototype.catch,\n\tfinally: OriginalPromise.prototype.finally,\n\tresolve: OriginalPromise.resolve,\n\treject: OriginalPromise.reject,\n\tall: OriginalPromise.all,\n\tsetTimeout: globalThis.setTimeout,\n\tclearTimeout: globalThis.clearTimeout,\n\tsetInterval: globalThis.setInterval,\n\tclearInterval: globalThis.clearInterval,\n\tsetImmediate: globalThis.setImmediate,\n\tclearImmediate: globalThis.clearImmediate,\n}\n\nconst pendingTimeouts = new Set<unknown>()\nconst pendingIntervals = new Set<unknown>()\nconst pendingImmediates = new Set<unknown>()\nlet asyncSchedulersFrozen = false\n\nfunction clearPendingSchedulers() {\n\tfor (const handle of Array.from(pendingTimeouts))\n\t\toriginalMethods.clearTimeout.call(globalThis, handle)\n\tfor (const handle of Array.from(pendingIntervals))\n\t\toriginalMethods.clearInterval.call(globalThis, handle)\n\tfor (const handle of Array.from(pendingImmediates))\n\t\toriginalMethods.clearImmediate.call(globalThis, handle)\n\tpendingTimeouts.clear()\n\tpendingIntervals.clear()\n\tpendingImmediates.clear()\n}\n\nfunction freezeAsyncSchedulers() {\n\tif (asyncSchedulersFrozen) return\n\tasyncSchedulersFrozen = true\n\tclearPendingSchedulers()\n}\n\nfunction resumeAsyncSchedulers() {\n\tasyncSchedulersFrozen = false\n}\n\nfunction canceledTimeoutHandle() {\n\tconst handle = originalMethods.setTimeout.call(globalThis, () => {}, 0)\n\toriginalMethods.clearTimeout.call(globalThis, handle)\n\treturn handle\n}\n\nfunction canceledIntervalHandle() {\n\tconst handle = originalMethods.setInterval.call(globalThis, () => {}, 0)\n\toriginalMethods.clearInterval.call(globalThis, handle)\n\treturn handle\n}\n\nfunction canceledImmediateHandle() {\n\tconst handle = originalMethods.setImmediate.call(globalThis, () => {})\n\toriginalMethods.clearImmediate.call(globalThis, handle)\n\treturn handle\n}\n\nonReactiveBroken(freezeAsyncSchedulers)\nonReactiveReset(resumeAsyncSchedulers)\n\nglobalThis.setTimeout = ((callback: Function, ...args: any[]) => {\n\tif (asyncSchedulersFrozen) return canceledTimeoutHandle()\n\tconst handle = originalMethods.setTimeout.call(\n\t\tglobalThis,\n\t\t(...callbackArgs: any[]) => {\n\t\t\tpendingTimeouts.delete(handle)\n\t\t\tcallback(...callbackArgs)\n\t\t},\n\t\t...args\n\t)\n\tpendingTimeouts.add(handle)\n\treturn handle\n}) as typeof globalThis.setTimeout\n\nglobalThis.clearTimeout = ((handle?: unknown) => {\n\tpendingTimeouts.delete(handle)\n\treturn originalMethods.clearTimeout.call(globalThis, handle)\n}) as typeof globalThis.clearTimeout\n\nglobalThis.setInterval = ((callback: Function, ...args: any[]) => {\n\tif (asyncSchedulersFrozen) return canceledIntervalHandle()\n\tconst handle = originalMethods.setInterval.call(\n\t\tglobalThis,\n\t\t(...callbackArgs: any[]) => {\n\t\t\tcallback(...callbackArgs)\n\t\t},\n\t\t...args\n\t)\n\tpendingIntervals.add(handle)\n\treturn handle\n}) as typeof globalThis.setInterval\n\nglobalThis.clearInterval = ((handle?: unknown) => {\n\tpendingIntervals.delete(handle)\n\treturn originalMethods.clearInterval.call(globalThis, handle)\n}) as typeof globalThis.clearInterval\n\nglobalThis.setImmediate = ((callback: Function, ...args: any[]) => {\n\tif (asyncSchedulersFrozen) return canceledImmediateHandle()\n\tconst handle = originalMethods.setImmediate.call(\n\t\tglobalThis,\n\t\t(...callbackArgs: any[]) => {\n\t\t\tpendingImmediates.delete(handle)\n\t\t\tcallback(...callbackArgs)\n\t\t},\n\t\t...args\n\t)\n\tpendingImmediates.add(handle)\n\treturn handle\n}) as typeof globalThis.setImmediate\n\nglobalThis.clearImmediate = ((handle?: unknown) => {\n\tpendingImmediates.delete(handle)\n\treturn originalMethods.clearImmediate.call(globalThis, handle)\n}) as typeof globalThis.clearImmediate\n\n// Patch prototype\n// biome-ignore lint/suspicious/noThenProperty: Intentional Promise.prototype patching\nOriginalPromise.prototype.then = function (onFulfilled, onRejected) {\n\treturn originalMethods.then.call(this, wrap(onFulfilled), wrap(onRejected))\n} as any\nOriginalPromise.prototype.catch = function (onRejected) {\n\treturn originalMethods.catch.call(this, wrap(onRejected))\n} as any\nOriginalPromise.prototype.finally = function (onFinally) {\n\treturn originalMethods.finally.call(this, wrap(onFinally))\n} as any\n"],"names":[],"mappings":";;;AAIA;AACA;AAEA,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAsB;AAC9C,MAAM,aAAa,GAAG,IAAI,GAAG,EAA0B;AAEvD;AACA,SAAS,gBAAgB,GAAA;AACxB,IAAA,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC;AAAE,QAAA,OAAO,EAAE;IAC/B,MAAM,SAAS,GAAe,EAAE;AAChC,IAAA,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE;AACtB,QAAA,MAAM,CAAC,GAAG,CAAC,EAAE;AACb,QAAA,IAAI,CAAC;AAAE,YAAA,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IACzB;AACA,IAAA,OAAO,SAAS;AACjB;AAEA;AACA,SAAS,IAAI,CAAwB,EAA6C,EAAA;IACjF,IAAI,OAAO,EAAE,KAAK,UAAU;AAAE,QAAA,OAAO,EAAE;AACvC,IAAA,MAAM,SAAS,GAAG,gBAAgB,EAAE;AACpC,IAAA,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;AAAE,QAAA,OAAO,EAAE;IAErC,OAAO,UAAqB,GAAG,IAAU,EAAA;QACxC,MAAM,OAAO,GAAmB,EAAE;AAClC,QAAA,KAAK,MAAM,OAAO,IAAI,SAAS,EAAE;AAChC,YAAA,MAAM,CAAC,GAAG,OAAO,EAAE;AACnB,YAAA,IAAI,CAAC;AAAE,gBAAA,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QACvB;AACA,QAAA,IAAI;YACH,OAAO,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC;QAC5B;gBAAU;AACT,YAAA,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;AAAE,gBAAA,OAAO,CAAC,CAAC,CAAC,EAAE;QAC3D;AACD,IAAA,CAAC;AACF;AAEA,MAAM,IAAI,GAAG,UAAU,CAAC;AACvB,IAAA,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAA;;AAEzC,QAAA,MAAM,SAAS,GAAG,gBAAgB,EAAE;AACpC,QAAA,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;AAAE,YAAA,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC;IAC3D,CAAC;AACD,IAAA,MAAM,CAAC,OAAO,EAAA;QACb,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;AACvC,QAAA,IAAI,CAAC,SAAS;YAAE;QAChB,MAAM,OAAO,GAAmB,EAAE;AAClC,QAAA,KAAK,MAAM,OAAO,IAAI,SAAS,EAAE;AAChC,YAAA,MAAM,CAAC,GAAG,OAAO,EAAE;AACnB,YAAA,IAAI,CAAC;AAAE,gBAAA,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QACvB;AACA,QAAA,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;AAAE,YAAA,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC;IAC5D,CAAC;AACD,IAAA,KAAK,CAAC,OAAO,EAAA;QACZ,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC;AAC1C,QAAA,IAAI,CAAC,OAAO;YAAE;AACd,QAAA,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;AAAE,YAAA,OAAO,CAAC,CAAC,CAAC,EAAE;AAC1D,QAAA,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC;IAC9B,CAAC;AACD,IAAA,OAAO,CAAC,OAAO,EAAA;AACd,QAAA,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC;AACxB,QAAA,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC;IAC9B,CAAC;AACD,CAAA,CAAC;AACF,IAAI,CAAC,MAAM,EAAE;AAEb;AACA;AAEA,MAAM,eAAe,GAAG,UAAU,CAAC,OAAO;AAC1C,MAAM,eAAe,GAAG;;AAEvB,IAAA,IAAI,EAAE,eAAe,CAAC,SAAS,CAAC,IAAI;AACpC,IAAA,KAAK,EAAE,eAAe,CAAC,SAAS,CAAC,KAAK;AACtC,IAAA,OAAO,EAAE,eAAe,CAAC,SAAS,CAAC,OAAO;IAI1C,UAAU,EAAE,UAAU,CAAC,UAAU;IACjC,YAAY,EAAE,UAAU,CAAC,YAAY;IACrC,WAAW,EAAE,UAAU,CAAC,WAAW;IACnC,aAAa,EAAE,UAAU,CAAC,aAAa;IACvC,YAAY,EAAE,UAAU,CAAC,YAAY;IACrC,cAAc,EAAE,UAAU,CAAC,cAAc;CACzC;AAED,MAAM,eAAe,GAAG,IAAI,GAAG,EAAW;AAC1C,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAW;AAC3C,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAW;AAC5C,IAAI,qBAAqB,GAAG,KAAK;AAEjC,SAAS,sBAAsB,GAAA;IAC9B,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC;QAC/C,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;IACtD,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC;QAChD,eAAe,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;IACvD,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC;QACjD,eAAe,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;IACxD,eAAe,CAAC,KAAK,EAAE;IACvB,gBAAgB,CAAC,KAAK,EAAE;IACxB,iBAAiB,CAAC,KAAK,EAAE;AAC1B;AAEA,SAAS,qBAAqB,GAAA;AAC7B,IAAA,IAAI,qBAAqB;QAAE;IAC3B,qBAAqB,GAAG,IAAI;AAC5B,IAAA,sBAAsB,EAAE;AACzB;AAEA,SAAS,qBAAqB,GAAA;IAC7B,qBAAqB,GAAG,KAAK;AAC9B;AAEA,SAAS,qBAAqB,GAAA;AAC7B,IAAA,MAAM,MAAM,GAAG,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,MAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IACvE,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;AACrD,IAAA,OAAO,MAAM;AACd;AAEA,SAAS,sBAAsB,GAAA;AAC9B,IAAA,MAAM,MAAM,GAAG,eAAe,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,EAAE,MAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IACxE,eAAe,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;AACtD,IAAA,OAAO,MAAM;AACd;AAEA,SAAS,uBAAuB,GAAA;AAC/B,IAAA,MAAM,MAAM,GAAG,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,MAAK,EAAE,CAAC,CAAC;IACtE,eAAe,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;AACvD,IAAA,OAAO,MAAM;AACd;AAEA,gBAAgB,CAAC,qBAAqB,CAAC;AACvC,eAAe,CAAC,qBAAqB,CAAC;AAEtC,UAAU,CAAC,UAAU,IAAI,CAAC,QAAkB,EAAE,GAAG,IAAW,KAAI;AAC/D,IAAA,IAAI,qBAAqB;QAAE,OAAO,qBAAqB,EAAE;AACzD,IAAA,MAAM,MAAM,GAAG,eAAe,CAAC,UAAU,CAAC,IAAI,CAC7C,UAAU,EACV,CAAC,GAAG,YAAmB,KAAI;AAC1B,QAAA,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC;AAC9B,QAAA,QAAQ,CAAC,GAAG,YAAY,CAAC;AAC1B,IAAA,CAAC,EACD,GAAG,IAAI,CACP;AACD,IAAA,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC;AAC3B,IAAA,OAAO,MAAM;AACd,CAAC,CAAiC;AAElC,UAAU,CAAC,YAAY,IAAI,CAAC,MAAgB,KAAI;AAC/C,IAAA,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC;IAC9B,OAAO,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;AAC7D,CAAC,CAAmC;AAEpC,UAAU,CAAC,WAAW,IAAI,CAAC,QAAkB,EAAE,GAAG,IAAW,KAAI;AAChE,IAAA,IAAI,qBAAqB;QAAE,OAAO,sBAAsB,EAAE;AAC1D,IAAA,MAAM,MAAM,GAAG,eAAe,CAAC,WAAW,CAAC,IAAI,CAC9C,UAAU,EACV,CAAC,GAAG,YAAmB,KAAI;AAC1B,QAAA,QAAQ,CAAC,GAAG,YAAY,CAAC;AAC1B,IAAA,CAAC,EACD,GAAG,IAAI,CACP;AACD,IAAA,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC;AAC5B,IAAA,OAAO,MAAM;AACd,CAAC,CAAkC;AAEnC,UAAU,CAAC,aAAa,IAAI,CAAC,MAAgB,KAAI;AAChD,IAAA,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC;IAC/B,OAAO,eAAe,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;AAC9D,CAAC,CAAoC;AAErC,UAAU,CAAC,YAAY,IAAI,CAAC,QAAkB,EAAE,GAAG,IAAW,KAAI;AACjE,IAAA,IAAI,qBAAqB;QAAE,OAAO,uBAAuB,EAAE;AAC3D,IAAA,MAAM,MAAM,GAAG,eAAe,CAAC,YAAY,CAAC,IAAI,CAC/C,UAAU,EACV,CAAC,GAAG,YAAmB,KAAI;AAC1B,QAAA,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC;AAChC,QAAA,QAAQ,CAAC,GAAG,YAAY,CAAC;AAC1B,IAAA,CAAC,EACD,GAAG,IAAI,CACP;AACD,IAAA,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC;AAC7B,IAAA,OAAO,MAAM;AACd,CAAC,CAAmC;AAEpC,UAAU,CAAC,cAAc,IAAI,CAAC,MAAgB,KAAI;AACjD,IAAA,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC;IAChC,OAAO,eAAe,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;AAC/D,CAAC,CAAqC;AAEtC;AACA;AACA,eAAe,CAAC,SAAS,CAAC,IAAI,GAAG,UAAU,WAAW,EAAE,UAAU,EAAA;AACjE,IAAA,OAAO,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;AAC5E,CAAQ;AACR,eAAe,CAAC,SAAS,CAAC,KAAK,GAAG,UAAU,UAAU,EAAA;AACrD,IAAA,OAAO,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;AAC1D,CAAQ;AACR,eAAe,CAAC,SAAS,CAAC,OAAO,GAAG,UAAU,SAAS,EAAA;AACtD,IAAA,OAAO,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;AAC3D,CAAQ"}
1
+ {"version":3,"file":"node-sQtns7M-.esm.js","sources":["../../src/async/node.ts"],"sourcesContent":["import { createHook } from 'node:async_hooks'\nimport { onReactiveBroken, onReactiveReset } from '../reactive/effects'\nimport { hooks, type Restorer } from '.'\n\n// 1. Generic async_hooks implementation for Hooks\n// This maintains support for 'asyncHooks.addHook' for generic use cases.\n\nconst contexts = new Map<number, Restorer[]>()\nconst activeUndoers = new Map<number, (() => void)[]>()\n\n// Helper to capture current hooks state\nfunction captureRestorers() {\n\tif (hooks.size === 0) return []\n\tconst restorers: Restorer[] = []\n\tfor (const h of hooks) {\n\t\tconst r = h()\n\t\tif (r) restorers.push(r)\n\t}\n\treturn restorers\n}\n\n// Manual Wrap function to handle Promise callbacks\nfunction wrap<Args extends any[], R>(fn: ((...args: Args) => R) | null | undefined) {\n\tif (typeof fn !== 'function') return fn\n\tconst restorers = captureRestorers()\n\tif (restorers.length === 0) return fn\n\n\treturn function (this: any, ...args: Args) {\n\t\tconst undoers: (() => void)[] = []\n\t\tfor (const restore of restorers) {\n\t\t\tconst u = restore()\n\t\t\tif (u) undoers.push(u)\n\t\t}\n\t\ttry {\n\t\t\treturn fn.apply(this, args)\n\t\t} finally {\n\t\t\tfor (let i = undoers.length - 1; i >= 0; i--) undoers[i]()\n\t\t}\n\t}\n}\n\nconst hook = createHook({\n\tinit(asyncId, _type, _triggerId, _resource) {\n\t\t// Used for native resources like Timers\n\t\tconst restorers = captureRestorers()\n\t\tif (restorers.length > 0) contexts.set(asyncId, restorers)\n\t},\n\tbefore(asyncId) {\n\t\tconst restorers = contexts.get(asyncId)\n\t\tif (!restorers) return\n\t\tconst undoers: (() => void)[] = []\n\t\tfor (const restore of restorers) {\n\t\t\tconst u = restore()\n\t\t\tif (u) undoers.push(u)\n\t\t}\n\t\tif (undoers.length > 0) activeUndoers.set(asyncId, undoers)\n\t},\n\tafter(asyncId) {\n\t\tconst undoers = activeUndoers.get(asyncId)\n\t\tif (!undoers) return\n\t\tfor (let i = undoers.length - 1; i >= 0; i--) undoers[i]()\n\t\tactiveUndoers.delete(asyncId)\n\t},\n\tdestroy(asyncId) {\n\t\tcontexts.delete(asyncId)\n\t\tactiveUndoers.delete(asyncId)\n\t},\n})\nhook.enable()\n\n// 2. Shadow Promise Implementation\n// Ensures V8 await resumptions are visible as .then callbacks, wrapping them to restore context.\n\nconst OriginalPromise = globalThis.Promise\nconst originalMethods = {\n\t// biome-ignore lint/suspicious/noThenProperty: Intentional Promise.prototype patching\n\tthen: OriginalPromise.prototype.then,\n\tcatch: OriginalPromise.prototype.catch,\n\tfinally: OriginalPromise.prototype.finally,\n\tresolve: OriginalPromise.resolve,\n\treject: OriginalPromise.reject,\n\tall: OriginalPromise.all,\n\tsetTimeout: globalThis.setTimeout,\n\tclearTimeout: globalThis.clearTimeout,\n\tsetInterval: globalThis.setInterval,\n\tclearInterval: globalThis.clearInterval,\n\tsetImmediate: globalThis.setImmediate,\n\tclearImmediate: globalThis.clearImmediate,\n}\n\nconst pendingTimeouts = new Set<unknown>()\nconst pendingIntervals = new Set<unknown>()\nconst pendingImmediates = new Set<unknown>()\nlet asyncSchedulersFrozen = false\n\nfunction clearPendingSchedulers() {\n\tfor (const handle of Array.from(pendingTimeouts))\n\t\toriginalMethods.clearTimeout.call(globalThis, handle)\n\tfor (const handle of Array.from(pendingIntervals))\n\t\toriginalMethods.clearInterval.call(globalThis, handle)\n\tfor (const handle of Array.from(pendingImmediates))\n\t\toriginalMethods.clearImmediate.call(globalThis, handle)\n\tpendingTimeouts.clear()\n\tpendingIntervals.clear()\n\tpendingImmediates.clear()\n}\n\nfunction freezeAsyncSchedulers() {\n\tif (asyncSchedulersFrozen) return\n\tasyncSchedulersFrozen = true\n\tclearPendingSchedulers()\n}\n\nfunction resumeAsyncSchedulers() {\n\tasyncSchedulersFrozen = false\n}\n\nfunction canceledTimeoutHandle() {\n\tconst handle = originalMethods.setTimeout.call(globalThis, () => {}, 0)\n\toriginalMethods.clearTimeout.call(globalThis, handle)\n\treturn handle\n}\n\nfunction canceledIntervalHandle() {\n\tconst handle = originalMethods.setInterval.call(globalThis, () => {}, 0)\n\toriginalMethods.clearInterval.call(globalThis, handle)\n\treturn handle\n}\n\nfunction canceledImmediateHandle() {\n\tconst handle = originalMethods.setImmediate.call(globalThis, () => {})\n\toriginalMethods.clearImmediate.call(globalThis, handle)\n\treturn handle\n}\n\nonReactiveBroken(freezeAsyncSchedulers)\nonReactiveReset(resumeAsyncSchedulers)\n\nglobalThis.setTimeout = ((callback: Function, ...args: any[]) => {\n\tif (asyncSchedulersFrozen) return canceledTimeoutHandle()\n\tconst handle = originalMethods.setTimeout.call(\n\t\tglobalThis,\n\t\t(...callbackArgs: any[]) => {\n\t\t\tpendingTimeouts.delete(handle)\n\t\t\tcallback(...callbackArgs)\n\t\t},\n\t\t...args\n\t)\n\tpendingTimeouts.add(handle)\n\treturn handle\n}) as typeof globalThis.setTimeout\n\nglobalThis.clearTimeout = ((handle?: unknown) => {\n\tpendingTimeouts.delete(handle)\n\treturn originalMethods.clearTimeout.call(globalThis, handle)\n}) as typeof globalThis.clearTimeout\n\nglobalThis.setInterval = ((callback: Function, ...args: any[]) => {\n\tif (asyncSchedulersFrozen) return canceledIntervalHandle()\n\tconst handle = originalMethods.setInterval.call(\n\t\tglobalThis,\n\t\t(...callbackArgs: any[]) => {\n\t\t\tcallback(...callbackArgs)\n\t\t},\n\t\t...args\n\t)\n\tpendingIntervals.add(handle)\n\treturn handle\n}) as typeof globalThis.setInterval\n\nglobalThis.clearInterval = ((handle?: unknown) => {\n\tpendingIntervals.delete(handle)\n\treturn originalMethods.clearInterval.call(globalThis, handle)\n}) as typeof globalThis.clearInterval\n\nglobalThis.setImmediate = ((callback: Function, ...args: any[]) => {\n\tif (asyncSchedulersFrozen) return canceledImmediateHandle()\n\tconst handle = originalMethods.setImmediate.call(\n\t\tglobalThis,\n\t\t(...callbackArgs: any[]) => {\n\t\t\tpendingImmediates.delete(handle)\n\t\t\tcallback(...callbackArgs)\n\t\t},\n\t\t...args\n\t)\n\tpendingImmediates.add(handle)\n\treturn handle\n}) as typeof globalThis.setImmediate\n\nglobalThis.clearImmediate = ((handle?: unknown) => {\n\tpendingImmediates.delete(handle)\n\treturn originalMethods.clearImmediate.call(globalThis, handle)\n}) as typeof globalThis.clearImmediate\n\n// Patch prototype\n// biome-ignore lint/suspicious/noThenProperty: Intentional Promise.prototype patching\nOriginalPromise.prototype.then = function (onFulfilled, onRejected) {\n\treturn originalMethods.then.call(this, wrap(onFulfilled), wrap(onRejected))\n} as any\nOriginalPromise.prototype.catch = function (onRejected) {\n\treturn originalMethods.catch.call(this, wrap(onRejected))\n} as any\nOriginalPromise.prototype.finally = function (onFinally) {\n\treturn originalMethods.finally.call(this, wrap(onFinally))\n} as any\n"],"names":[],"mappings":";;;AAIA;AACA;AAEA,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAsB;AAC9C,MAAM,aAAa,GAAG,IAAI,GAAG,EAA0B;AAEvD;AACA,SAAS,gBAAgB,GAAA;AACxB,IAAA,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC;AAAE,QAAA,OAAO,EAAE;IAC/B,MAAM,SAAS,GAAe,EAAE;AAChC,IAAA,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE;AACtB,QAAA,MAAM,CAAC,GAAG,CAAC,EAAE;AACb,QAAA,IAAI,CAAC;AAAE,YAAA,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IACzB;AACA,IAAA,OAAO,SAAS;AACjB;AAEA;AACA,SAAS,IAAI,CAAwB,EAA6C,EAAA;IACjF,IAAI,OAAO,EAAE,KAAK,UAAU;AAAE,QAAA,OAAO,EAAE;AACvC,IAAA,MAAM,SAAS,GAAG,gBAAgB,EAAE;AACpC,IAAA,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;AAAE,QAAA,OAAO,EAAE;IAErC,OAAO,UAAqB,GAAG,IAAU,EAAA;QACxC,MAAM,OAAO,GAAmB,EAAE;AAClC,QAAA,KAAK,MAAM,OAAO,IAAI,SAAS,EAAE;AAChC,YAAA,MAAM,CAAC,GAAG,OAAO,EAAE;AACnB,YAAA,IAAI,CAAC;AAAE,gBAAA,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QACvB;AACA,QAAA,IAAI;YACH,OAAO,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC;QAC5B;gBAAU;AACT,YAAA,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;AAAE,gBAAA,OAAO,CAAC,CAAC,CAAC,EAAE;QAC3D;AACD,IAAA,CAAC;AACF;AAEA,MAAM,IAAI,GAAG,UAAU,CAAC;AACvB,IAAA,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAA;;AAEzC,QAAA,MAAM,SAAS,GAAG,gBAAgB,EAAE;AACpC,QAAA,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;AAAE,YAAA,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC;IAC3D,CAAC;AACD,IAAA,MAAM,CAAC,OAAO,EAAA;QACb,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;AACvC,QAAA,IAAI,CAAC,SAAS;YAAE;QAChB,MAAM,OAAO,GAAmB,EAAE;AAClC,QAAA,KAAK,MAAM,OAAO,IAAI,SAAS,EAAE;AAChC,YAAA,MAAM,CAAC,GAAG,OAAO,EAAE;AACnB,YAAA,IAAI,CAAC;AAAE,gBAAA,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QACvB;AACA,QAAA,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;AAAE,YAAA,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC;IAC5D,CAAC;AACD,IAAA,KAAK,CAAC,OAAO,EAAA;QACZ,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC;AAC1C,QAAA,IAAI,CAAC,OAAO;YAAE;AACd,QAAA,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;AAAE,YAAA,OAAO,CAAC,CAAC,CAAC,EAAE;AAC1D,QAAA,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC;IAC9B,CAAC;AACD,IAAA,OAAO,CAAC,OAAO,EAAA;AACd,QAAA,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC;AACxB,QAAA,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC;IAC9B,CAAC;AACD,CAAA,CAAC;AACF,IAAI,CAAC,MAAM,EAAE;AAEb;AACA;AAEA,MAAM,eAAe,GAAG,UAAU,CAAC,OAAO;AAC1C,MAAM,eAAe,GAAG;;AAEvB,IAAA,IAAI,EAAE,eAAe,CAAC,SAAS,CAAC,IAAI;AACpC,IAAA,KAAK,EAAE,eAAe,CAAC,SAAS,CAAC,KAAK;AACtC,IAAA,OAAO,EAAE,eAAe,CAAC,SAAS,CAAC,OAAO;IAI1C,UAAU,EAAE,UAAU,CAAC,UAAU;IACjC,YAAY,EAAE,UAAU,CAAC,YAAY;IACrC,WAAW,EAAE,UAAU,CAAC,WAAW;IACnC,aAAa,EAAE,UAAU,CAAC,aAAa;IACvC,YAAY,EAAE,UAAU,CAAC,YAAY;IACrC,cAAc,EAAE,UAAU,CAAC,cAAc;CACzC;AAED,MAAM,eAAe,GAAG,IAAI,GAAG,EAAW;AAC1C,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAW;AAC3C,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAW;AAC5C,IAAI,qBAAqB,GAAG,KAAK;AAEjC,SAAS,sBAAsB,GAAA;IAC9B,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC;QAC/C,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;IACtD,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC;QAChD,eAAe,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;IACvD,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC;QACjD,eAAe,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;IACxD,eAAe,CAAC,KAAK,EAAE;IACvB,gBAAgB,CAAC,KAAK,EAAE;IACxB,iBAAiB,CAAC,KAAK,EAAE;AAC1B;AAEA,SAAS,qBAAqB,GAAA;AAC7B,IAAA,IAAI,qBAAqB;QAAE;IAC3B,qBAAqB,GAAG,IAAI;AAC5B,IAAA,sBAAsB,EAAE;AACzB;AAEA,SAAS,qBAAqB,GAAA;IAC7B,qBAAqB,GAAG,KAAK;AAC9B;AAEA,SAAS,qBAAqB,GAAA;AAC7B,IAAA,MAAM,MAAM,GAAG,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,MAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IACvE,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;AACrD,IAAA,OAAO,MAAM;AACd;AAEA,SAAS,sBAAsB,GAAA;AAC9B,IAAA,MAAM,MAAM,GAAG,eAAe,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,EAAE,MAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IACxE,eAAe,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;AACtD,IAAA,OAAO,MAAM;AACd;AAEA,SAAS,uBAAuB,GAAA;AAC/B,IAAA,MAAM,MAAM,GAAG,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,MAAK,EAAE,CAAC,CAAC;IACtE,eAAe,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;AACvD,IAAA,OAAO,MAAM;AACd;AAEA,gBAAgB,CAAC,qBAAqB,CAAC;AACvC,eAAe,CAAC,qBAAqB,CAAC;AAEtC,UAAU,CAAC,UAAU,IAAI,CAAC,QAAkB,EAAE,GAAG,IAAW,KAAI;AAC/D,IAAA,IAAI,qBAAqB;QAAE,OAAO,qBAAqB,EAAE;AACzD,IAAA,MAAM,MAAM,GAAG,eAAe,CAAC,UAAU,CAAC,IAAI,CAC7C,UAAU,EACV,CAAC,GAAG,YAAmB,KAAI;AAC1B,QAAA,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC;AAC9B,QAAA,QAAQ,CAAC,GAAG,YAAY,CAAC;AAC1B,IAAA,CAAC,EACD,GAAG,IAAI,CACP;AACD,IAAA,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC;AAC3B,IAAA,OAAO,MAAM;AACd,CAAC,CAAiC;AAElC,UAAU,CAAC,YAAY,IAAI,CAAC,MAAgB,KAAI;AAC/C,IAAA,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC;IAC9B,OAAO,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;AAC7D,CAAC,CAAmC;AAEpC,UAAU,CAAC,WAAW,IAAI,CAAC,QAAkB,EAAE,GAAG,IAAW,KAAI;AAChE,IAAA,IAAI,qBAAqB;QAAE,OAAO,sBAAsB,EAAE;AAC1D,IAAA,MAAM,MAAM,GAAG,eAAe,CAAC,WAAW,CAAC,IAAI,CAC9C,UAAU,EACV,CAAC,GAAG,YAAmB,KAAI;AAC1B,QAAA,QAAQ,CAAC,GAAG,YAAY,CAAC;AAC1B,IAAA,CAAC,EACD,GAAG,IAAI,CACP;AACD,IAAA,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC;AAC5B,IAAA,OAAO,MAAM;AACd,CAAC,CAAkC;AAEnC,UAAU,CAAC,aAAa,IAAI,CAAC,MAAgB,KAAI;AAChD,IAAA,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC;IAC/B,OAAO,eAAe,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;AAC9D,CAAC,CAAoC;AAErC,UAAU,CAAC,YAAY,IAAI,CAAC,QAAkB,EAAE,GAAG,IAAW,KAAI;AACjE,IAAA,IAAI,qBAAqB;QAAE,OAAO,uBAAuB,EAAE;AAC3D,IAAA,MAAM,MAAM,GAAG,eAAe,CAAC,YAAY,CAAC,IAAI,CAC/C,UAAU,EACV,CAAC,GAAG,YAAmB,KAAI;AAC1B,QAAA,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC;AAChC,QAAA,QAAQ,CAAC,GAAG,YAAY,CAAC;AAC1B,IAAA,CAAC,EACD,GAAG,IAAI,CACP;AACD,IAAA,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC;AAC7B,IAAA,OAAO,MAAM;AACd,CAAC,CAAmC;AAEpC,UAAU,CAAC,cAAc,IAAI,CAAC,MAAgB,KAAI;AACjD,IAAA,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC;IAChC,OAAO,eAAe,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;AAC/D,CAAC,CAAqC;AAEtC;AACA;AACA,eAAe,CAAC,SAAS,CAAC,IAAI,GAAG,UAAU,WAAW,EAAE,UAAU,EAAA;AACjE,IAAA,OAAO,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;AAC5E,CAAQ;AACR,eAAe,CAAC,SAAS,CAAC,KAAK,GAAG,UAAU,UAAU,EAAA;AACrD,IAAA,OAAO,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;AAC1D,CAAQ;AACR,eAAe,CAAC,SAAS,CAAC,OAAO,GAAG,UAAU,SAAS,EAAA;AACtD,IAAA,OAAO,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;AAC3D,CAAQ"}
package/dist/debug.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var proxy = require('./chunks/proxy-HA_QQnd5.cjs');
3
+ var effects = require('./chunks/effects-oUauWxxl.cjs');
4
4
 
5
5
  var _documentCurrentScript = typeof document !== 'undefined' ? document.currentScript : null;
6
6
  const lineageObjects = new WeakSet();
@@ -48,10 +48,10 @@ function parseStackFrames(stack) {
48
48
  if (!rawStack)
49
49
  return [];
50
50
  const lines = rawStack.split('\n');
51
- const lastLine = lines.findIndex((line) => line.includes(proxy.effectMarker.enter));
51
+ const lastLine = lines.findIndex((line) => line.includes(effects.effectMarker.enter));
52
52
  if (lastLine !== -1)
53
53
  lines.splice(lastLine);
54
- const firstLine = lines.findLastIndex((line) => line.includes(proxy.effectMarker.leave));
54
+ const firstLine = lines.findLastIndex((line) => line.includes(effects.effectMarker.leave));
55
55
  if (firstLine !== -1)
56
56
  lines.splice(0, firstLine + 1);
57
57
  else {
@@ -134,7 +134,7 @@ function ensureSignature(signature) {
134
134
  }
135
135
  function getLineage(effect, currentStack = new Error()) {
136
136
  return ensureSignature({
137
- effect: effect ?? proxy.getActiveEffect(),
137
+ effect: effect ?? effects.getActiveEffect(),
138
138
  stack: currentStack,
139
139
  toString() {
140
140
  return formatLineage(this);
@@ -163,13 +163,13 @@ function digestLineage(lineage) {
163
163
  let current = currentEffect;
164
164
  let lastStack = currentStack;
165
165
  while (current) {
166
- const rootFn = proxy.getRoot(current);
166
+ const rootFn = effects.getRoot(current);
167
167
  segments.push({
168
168
  effect: rootFn,
169
169
  effectName: rootFn.name || 'anonymous',
170
170
  stack: lastStack,
171
171
  });
172
- const node = proxy.getEffectNode(current);
172
+ const node = effects.getEffectNode(current);
173
173
  const parent = node.parent;
174
174
  const creationStack = parseStackFrames(node.creationStack);
175
175
  if (parent) {
@@ -197,7 +197,7 @@ function formatLineage(lineage) {
197
197
  const segment = segments[i];
198
198
  if (i > 0) {
199
199
  const triggerEffect = segments[i - 1].effect;
200
- const triggerName = triggerEffect ? proxy.getRoot(triggerEffect).name || 'anonymous' : 'root';
200
+ const triggerName = triggerEffect ? effects.getRoot(triggerEffect).name || 'anonymous' : 'root';
201
201
  result.push(` --- effect: ${triggerName} ---`);
202
202
  }
203
203
  for (const frame of segment.stack)
@@ -510,21 +510,21 @@ function renderLineageList(details, colors) {
510
510
  function formatReasonWithoutChain(reason) {
511
511
  switch (reason.type) {
512
512
  case 'propChange':
513
- return proxy.formatCleanupReason({ type: 'propChange', triggers: reason.triggers });
513
+ return effects.formatCleanupReason({ type: 'propChange', triggers: reason.triggers });
514
514
  case 'invalidate':
515
- return proxy.formatCleanupReason({ type: 'invalidate', cause: reason.cause });
515
+ return effects.formatCleanupReason({ type: 'invalidate', cause: reason.cause });
516
516
  case 'stopped':
517
- return proxy.formatCleanupReason(reason.detail ? { type: 'stopped', detail: reason.detail } : { type: 'stopped' });
517
+ return effects.formatCleanupReason(reason.detail ? { type: 'stopped', detail: reason.detail } : { type: 'stopped' });
518
518
  case 'external':
519
- return proxy.formatCleanupReason({ type: 'external', detail: reason.detail });
519
+ return effects.formatCleanupReason({ type: 'external', detail: reason.detail });
520
520
  case 'gc':
521
- return proxy.formatCleanupReason({ type: 'gc' });
521
+ return effects.formatCleanupReason({ type: 'gc' });
522
522
  case 'lineage':
523
- return proxy.formatCleanupReason({ type: 'lineage', parent: reason.parent });
523
+ return effects.formatCleanupReason({ type: 'lineage', parent: reason.parent });
524
524
  case 'error':
525
- return proxy.formatCleanupReason({ type: 'error', error: reason.error });
525
+ return effects.formatCleanupReason({ type: 'error', error: reason.error });
526
526
  case 'multiple':
527
- return proxy.formatCleanupReason({ type: 'multiple', reasons: reason.reasons });
527
+ return effects.formatCleanupReason({ type: 'multiple', reasons: reason.reasons });
528
528
  }
529
529
  }
530
530
  function logReason(reason, tag) {
@@ -667,7 +667,7 @@ function showLineagePanel() {
667
667
  atText: '#999',
668
668
  linkText: '#005cc5',
669
669
  };
670
- const state = proxy.reactive({
670
+ const state = effects.reactive({
671
671
  activeLineage: [],
672
672
  isVisible: true,
673
673
  });
@@ -731,13 +731,13 @@ function showLineagePanel() {
731
731
  panel.appendChild(content);
732
732
  document.body.appendChild(panel);
733
733
  // Reactivity: Update Visibility
734
- proxy.effect `lineage-panel:visibility`(() => {
734
+ effects.effect `lineage-panel:visibility`(() => {
735
735
  panel.style.opacity = state.isVisible ? '1' : '0';
736
736
  panel.style.pointerEvents = state.isVisible ? 'all' : 'none';
737
737
  panel.style.transform = state.isVisible ? 'translateY(0)' : 'translateY(20px)';
738
738
  });
739
739
  // Reactivity: Update Content
740
- proxy.effect `lineage-panel:content`(() => {
740
+ effects.effect `lineage-panel:content`(() => {
741
741
  if (state.activeLineage.length === 0) {
742
742
  content.innerHTML = `<div style="color: ${colors.placeholderText}; font-style: italic; text-align: center; margin-top: 20px;">No effect triggered yet...</div>`;
743
743
  return;
@@ -756,7 +756,7 @@ function showLineagePanel() {
756
756
  marginBottom: '6px',
757
757
  color: colors.titleText,
758
758
  });
759
- const effectName = segment.effect ? (proxy.getRoot(segment.effect).name || 'anonymous') : 'root';
759
+ const effectName = segment.effect ? (effects.getRoot(segment.effect).name || 'anonymous') : 'root';
760
760
  title.innerText = i === 0 ? `📍 Current: ${effectName}` : `↖ Effect: ${effectName}`;
761
761
  segDiv.appendChild(title);
762
762
  segment.stack.forEach(frame => {
@@ -787,9 +787,9 @@ function getColors() {
787
787
  };
788
788
  }
789
789
  function getReactiveTarget(obj) {
790
- if (!obj || typeof obj !== 'object' || !proxy.isReactive(obj))
790
+ if (!obj || typeof obj !== 'object' || !effects.isReactive(obj))
791
791
  return undefined;
792
- return proxy.unwrap(obj);
792
+ return effects.unwrap(obj);
793
793
  }
794
794
  const reactiveFormatter = {
795
795
  header: (obj) => {
@@ -818,7 +818,7 @@ const reactiveFormatter = {
818
818
  * Log an error with detailed context if error logging is enabled
819
819
  */
820
820
  function logError(error, context, effect) {
821
- if (!proxy.options.introspection?.logErrors)
821
+ if (!effects.options.introspection?.logErrors)
822
822
  return;
823
823
  const contextStr = context === 'throw' ? '🔴 Thrown' : '🟡 Caught';
824
824
  console.group(`${contextStr} Error: ${error.message}`);
@@ -844,7 +844,7 @@ const triggerGraph = new Map();
844
844
  function ensureEffectName(effect) {
845
845
  let name = effectNames.get(effect);
846
846
  if (!name) {
847
- const root = proxy.getRoot(effect);
847
+ const root = effects.getRoot(effect);
848
848
  name = root?.name?.trim() || `effect_${++effectCounter}`;
849
849
  }
850
850
  effectNames.set(effect, name);
@@ -864,7 +864,7 @@ function ensureObjectName(obj) {
864
864
  }
865
865
  function describeProp(obj, prop) {
866
866
  const objectName = ensureObjectName(obj);
867
- if (prop === proxy.allProps)
867
+ if (prop === effects.allProps)
868
868
  return `${objectName}.*`;
869
869
  if (typeof prop === 'symbol')
870
870
  return `${objectName}.${prop.description ?? prop.toString()}`;
@@ -874,7 +874,7 @@ function addEffectToRegistry(effect) {
874
874
  if (!effect || debugEffectRegistry.has(effect))
875
875
  return;
876
876
  debugEffectRegistry.add(effect);
877
- const deps = proxy.effectToReactiveObjects.get(effect);
877
+ const deps = effects.effectToReactiveObjects.get(effect);
878
878
  if (deps) {
879
879
  for (const obj of deps) {
880
880
  documentObject(obj);
@@ -890,13 +890,13 @@ function dbRegisterObject(obj) {
890
890
  debugObjectRegistry.add(obj);
891
891
  ensureObjectName(obj);
892
892
  }
893
- function ensureParentChains(effects) {
894
- const queue = Array.from(effects);
893
+ function ensureParentChains(effects$1) {
894
+ const queue = Array.from(effects$1);
895
895
  for (let i = 0; i < queue.length; i++) {
896
896
  const effect = queue[i];
897
- const parent = proxy.getEffectNode(effect).parent;
898
- if (parent && !effects.has(parent)) {
899
- effects.add(parent);
897
+ const parent = effects.getEffectNode(effect).parent;
898
+ if (parent && !effects$1.has(parent)) {
899
+ effects$1.add(parent);
900
900
  queue.push(parent);
901
901
  }
902
902
  }
@@ -961,7 +961,7 @@ function registerObjectForDebug(obj) {
961
961
  * @param evolution - The type of change (set/add/del/bunch)
962
962
  */
963
963
  function recordTriggerLink(source, target, obj, prop, evolution) {
964
- if (proxy.options.introspection?.enableHistory) {
964
+ if (effects.options.introspection?.enableHistory) {
965
965
  addToMutationHistory(source, target, obj, prop, evolution);
966
966
  }
967
967
  if (!devtoolsEnabled)
@@ -1043,14 +1043,14 @@ function buildEffectNodes(allEffects) {
1043
1043
  const cached = depthCache.get(effect);
1044
1044
  if (cached !== undefined)
1045
1045
  return cached;
1046
- const parent = proxy.getEffectNode(effect).parent;
1046
+ const parent = effects.getEffectNode(effect).parent;
1047
1047
  const depth = computeDepth(parent) + (parent ? 1 : 0);
1048
1048
  depthCache.set(effect, depth);
1049
1049
  return depth;
1050
1050
  };
1051
1051
  for (const [effect, node] of nodeByEffect) {
1052
1052
  node.depth = computeDepth(effect);
1053
- const parent = proxy.getEffectNode(effect).parent;
1053
+ const parent = effects.getEffectNode(effect).parent;
1054
1054
  if (parent) {
1055
1055
  const parentNode = nodeByEffect.get(parent);
1056
1056
  if (parentNode) {
@@ -1092,7 +1092,7 @@ function buildReactivityGraph() {
1092
1092
  const effectId = nodeIds.get(effect);
1093
1093
  if (!effectId)
1094
1094
  continue;
1095
- const deps = proxy.effectToReactiveObjects.get(effect);
1095
+ const deps = effects.effectToReactiveObjects.get(effect);
1096
1096
  if (!deps)
1097
1097
  continue;
1098
1098
  for (const obj of deps) {
@@ -1155,8 +1155,8 @@ function enableDevTools() {
1155
1155
  if (devtoolsEnabled)
1156
1156
  return;
1157
1157
  devtoolsEnabled = true;
1158
- if (proxy.options.introspection) {
1159
- proxy.options.introspection.logErrors = true;
1158
+ if (effects.options.introspection) {
1159
+ effects.options.introspection.logErrors = true;
1160
1160
  }
1161
1161
  globalScope.__MUTTS_DEBUG__ = {
1162
1162
  getGraph: buildReactivityGraph,
@@ -1184,10 +1184,10 @@ function enableDevTools() {
1184
1184
  * @type {() => import('../src/reactive/types').CleanupReason | undefined}
1185
1185
  */
1186
1186
  get reason() {
1187
- const activeEffect = proxy.getActiveEffect();
1187
+ const activeEffect = effects.getActiveEffect();
1188
1188
  if (!activeEffect)
1189
1189
  return undefined;
1190
- const node = proxy.getEffectNode(activeEffect);
1190
+ const node = effects.getEffectNode(activeEffect);
1191
1191
  return node?.currentReason;
1192
1192
  },
1193
1193
  };
@@ -1196,7 +1196,7 @@ function enableDevTools() {
1196
1196
  globalScope.devtoolsFormatters.push(lineageFormatter, reasonFormatter, reactiveFormatter);
1197
1197
  else
1198
1198
  globalScope.devtoolsFormatters = [lineageFormatter, reasonFormatter, reactiveFormatter];
1199
- proxy.setDebugHooks({
1199
+ effects.setDebugHooks({
1200
1200
  isDevtoolsEnabled: () => devtoolsEnabled,
1201
1201
  registerEffect: registerEffectForDebug,
1202
1202
  getTriggerChain: getTriggerChain,
@@ -1221,7 +1221,7 @@ function enableDevTools() {
1221
1221
  },
1222
1222
  recordTriggerLink: recordTriggerLink,
1223
1223
  decorateError: (error, trigger) => {
1224
- if (proxy.options.introspection?.logErrors &&
1224
+ if (effects.options.introspection?.logErrors &&
1225
1225
  error &&
1226
1226
  typeof error === 'object' &&
1227
1227
  'stack' in error &&
@@ -1230,8 +1230,8 @@ function enableDevTools() {
1230
1230
  }
1231
1231
  },
1232
1232
  });
1233
- const originalWarn = proxy.options.warn;
1234
- proxy.options.warn = (...args) => {
1233
+ const originalWarn = effects.options.warn;
1234
+ effects.options.warn = (...args) => {
1235
1235
  const lineage = captureLineage();
1236
1236
  originalWarn(...args, lineage);
1237
1237
  };
@@ -1288,7 +1288,7 @@ function getDependents(obj) {
1288
1288
  * Returns a list of objects that the given effect depends on.
1289
1289
  */
1290
1290
  function getDependencies(effect) {
1291
- const deps = proxy.effectToReactiveObjects.get(effect);
1291
+ const deps = effects.effectToReactiveObjects.get(effect);
1292
1292
  return deps ? Array.from(deps) : [];
1293
1293
  }
1294
1294
  const mutationHistory = [];
@@ -1304,7 +1304,7 @@ function addToMutationHistory(source, target, obj, prop, evolution) {
1304
1304
  type: evolution.type,
1305
1305
  };
1306
1306
  mutationHistory.push(record);
1307
- if (mutationHistory.length > (proxy.options.introspection?.historySize ?? 50)) {
1307
+ if (mutationHistory.length > (effects.options.introspection?.historySize ?? 50)) {
1308
1308
  mutationHistory.shift();
1309
1309
  }
1310
1310
  }
@@ -1348,7 +1348,7 @@ function isDevelopmentMode() {
1348
1348
  }
1349
1349
  // Auto-enable devtools when the module loads in development
1350
1350
  if (isDevelopmentMode() && !devtoolsEnabled) {
1351
- Object.assign(proxy.options, proxy.devPreset);
1351
+ Object.assign(effects.options, effects.devPreset);
1352
1352
  enableDevTools();
1353
1353
  // Optional: Log that devtools were enabled (only in development)
1354
1354
  if (typeof console !== 'undefined' && console.info) {