@livestore/utils 0.4.0-dev.9 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/.tsbuildinfo +1 -0
- package/dist/NoopTracer.d.ts.map +1 -1
- package/dist/NoopTracer.js +17 -4
- package/dist/NoopTracer.js.map +1 -1
- package/dist/binary.js +1 -1
- package/dist/binary.js.map +1 -1
- package/dist/browser/Opfs/Opfs.d.ts +51 -0
- package/dist/browser/Opfs/Opfs.d.ts.map +1 -0
- package/dist/browser/Opfs/Opfs.js +345 -0
- package/dist/browser/Opfs/Opfs.js.map +1 -0
- package/dist/browser/Opfs/debug-utils.d.ts +20 -0
- package/dist/browser/Opfs/debug-utils.d.ts.map +1 -0
- package/dist/browser/Opfs/debug-utils.js +94 -0
- package/dist/browser/Opfs/debug-utils.js.map +1 -0
- package/dist/browser/Opfs/mod.d.ts +4 -0
- package/dist/browser/Opfs/mod.d.ts.map +1 -0
- package/dist/browser/Opfs/mod.js +4 -0
- package/dist/browser/Opfs/mod.js.map +1 -0
- package/dist/browser/Opfs/utils.d.ts +71 -0
- package/dist/browser/Opfs/utils.d.ts.map +1 -0
- package/dist/browser/Opfs/utils.js +218 -0
- package/dist/browser/Opfs/utils.js.map +1 -0
- package/dist/browser/QuotaExceededError.d.ts +59 -0
- package/dist/browser/QuotaExceededError.d.ts.map +1 -0
- package/dist/browser/QuotaExceededError.js +2 -0
- package/dist/browser/QuotaExceededError.js.map +1 -0
- package/dist/browser/WebChannelBrowser.d.ts +22 -0
- package/dist/browser/WebChannelBrowser.d.ts.map +1 -0
- package/dist/browser/WebChannelBrowser.js +76 -0
- package/dist/browser/WebChannelBrowser.js.map +1 -0
- package/dist/browser/WebError.d.ts +421 -0
- package/dist/browser/WebError.d.ts.map +1 -0
- package/dist/browser/WebError.js +416 -0
- package/dist/browser/WebError.js.map +1 -0
- package/dist/browser/WebError.test.d.ts +2 -0
- package/dist/browser/WebError.test.d.ts.map +1 -0
- package/dist/browser/WebError.test.js +46 -0
- package/dist/browser/WebError.test.js.map +1 -0
- package/dist/browser/WebLock.d.ts.map +1 -0
- package/dist/{effect → browser}/WebLock.js +9 -9
- package/dist/browser/WebLock.js.map +1 -0
- package/dist/{browser.d.ts → browser/detect.d.ts} +1 -1
- package/dist/browser/detect.d.ts.map +1 -0
- package/dist/{browser.js → browser/detect.js} +7 -7
- package/dist/browser/detect.js.map +1 -0
- package/dist/browser/mod.d.ts +8 -0
- package/dist/browser/mod.d.ts.map +1 -0
- package/dist/browser/mod.js +8 -0
- package/dist/browser/mod.js.map +1 -0
- package/dist/cuid/cuid.browser.js +1 -1
- package/dist/cuid/cuid.browser.js.map +1 -1
- package/dist/cuid/cuid.node.js +1 -1
- package/dist/cuid/cuid.node.js.map +1 -1
- package/dist/effect/BucketQueue.d.ts +1 -1
- package/dist/effect/BucketQueue.d.ts.map +1 -1
- package/dist/effect/BucketQueue.js.map +1 -1
- package/dist/effect/Debug.d.ts +41 -0
- package/dist/effect/Debug.d.ts.map +1 -0
- package/dist/effect/Debug.js +354 -0
- package/dist/effect/Debug.js.map +1 -0
- package/dist/effect/Effect.d.ts +72 -12
- package/dist/effect/Effect.d.ts.map +1 -1
- package/dist/effect/Effect.js +96 -12
- package/dist/effect/Effect.js.map +1 -1
- package/dist/effect/Error.js +1 -1
- package/dist/effect/Error.js.map +1 -1
- package/dist/effect/Logger.js +2 -2
- package/dist/effect/Logger.js.map +1 -1
- package/dist/effect/RpcClient.d.ts.map +1 -1
- package/dist/effect/RpcClient.js +4 -4
- package/dist/effect/RpcClient.js.map +1 -1
- package/dist/effect/Schema/debug-diff.js +5 -4
- package/dist/effect/Schema/debug-diff.js.map +1 -1
- package/dist/effect/Schema/debug-diff.test.js +1 -1
- package/dist/effect/Schema/debug-diff.test.js.map +1 -1
- package/dist/effect/Schema/index.d.ts +5 -3
- package/dist/effect/Schema/index.d.ts.map +1 -1
- package/dist/effect/Schema/index.js +2 -2
- package/dist/effect/Schema/index.js.map +1 -1
- package/dist/effect/ServiceContext.js +6 -6
- package/dist/effect/ServiceContext.js.map +1 -1
- package/dist/effect/Stream.test.js +3 -3
- package/dist/effect/Stream.test.js.map +1 -1
- package/dist/effect/SubscriptionRef.d.ts +4 -4
- package/dist/effect/SubscriptionRef.d.ts.map +1 -1
- package/dist/effect/WebChannel/WebChannel.d.ts +4 -23
- package/dist/effect/WebChannel/WebChannel.d.ts.map +1 -1
- package/dist/effect/WebChannel/WebChannel.js +9 -85
- package/dist/effect/WebChannel/WebChannel.js.map +1 -1
- package/dist/effect/WebChannel/WebChannel.test.js +1 -1
- package/dist/effect/WebChannel/WebChannel.test.js.map +1 -1
- package/dist/effect/WebChannel/broadcastChannelWithAck.js +4 -4
- package/dist/effect/WebChannel/broadcastChannelWithAck.js.map +1 -1
- package/dist/effect/WebChannel/common.d.ts +2 -2
- package/dist/effect/WebChannel/common.d.ts.map +1 -1
- package/dist/effect/WebChannel/common.js +2 -2
- package/dist/effect/WebChannel/common.js.map +1 -1
- package/dist/effect/WebSocket.d.ts.map +1 -1
- package/dist/effect/WebSocket.js +14 -14
- package/dist/effect/WebSocket.js.map +1 -1
- package/dist/effect/{index.d.ts → mod.d.ts} +4 -4
- package/dist/effect/mod.d.ts.map +1 -0
- package/dist/effect/{index.js → mod.js} +5 -5
- package/dist/effect/mod.js.map +1 -0
- package/dist/effect/spanEvent.d.ts +12 -0
- package/dist/effect/spanEvent.d.ts.map +1 -0
- package/dist/effect/spanEvent.js +12 -0
- package/dist/effect/spanEvent.js.map +1 -0
- package/dist/effect/spanEvent.test.d.ts +2 -0
- package/dist/effect/spanEvent.test.d.ts.map +1 -0
- package/dist/effect/spanEvent.test.js +82 -0
- package/dist/effect/spanEvent.test.js.map +1 -0
- package/dist/env.d.ts.map +1 -1
- package/dist/env.js +1 -1
- package/dist/env.js.map +1 -1
- package/dist/fast-deep-equal.js +9 -9
- package/dist/fast-deep-equal.js.map +1 -1
- package/dist/global.d.ts +3 -0
- package/dist/global.d.ts.map +1 -1
- package/dist/global.js.map +1 -1
- package/dist/guards.d.ts +14 -0
- package/dist/guards.d.ts.map +1 -1
- package/dist/guards.js +14 -0
- package/dist/guards.js.map +1 -1
- package/dist/misc.d.ts +9 -1
- package/dist/misc.d.ts.map +1 -1
- package/dist/misc.js +11 -3
- package/dist/misc.js.map +1 -1
- package/dist/mod.d.ts +197 -5
- package/dist/mod.d.ts.map +1 -1
- package/dist/mod.js +162 -17
- package/dist/mod.js.map +1 -1
- package/dist/node/ChildProcessRunner/ChildProcessRunner.d.ts.map +1 -1
- package/dist/node/ChildProcessRunner/ChildProcessRunner.js +15 -9
- package/dist/node/ChildProcessRunner/ChildProcessRunner.js.map +1 -1
- package/dist/node/ChildProcessRunner/ChildProcessRunnerTest/ChildProcessRunner.test.d.ts +8 -0
- package/dist/node/ChildProcessRunner/ChildProcessRunnerTest/ChildProcessRunner.test.d.ts.map +1 -1
- package/dist/node/ChildProcessRunner/ChildProcessRunnerTest/ChildProcessRunner.test.js +16 -17
- package/dist/node/ChildProcessRunner/ChildProcessRunnerTest/ChildProcessRunner.test.js.map +1 -1
- package/dist/node/ChildProcessRunner/ChildProcessRunnerTest/schema.d.ts +4 -4
- package/dist/node/ChildProcessRunner/ChildProcessRunnerTest/serializedWorker.js +3 -3
- package/dist/node/ChildProcessRunner/ChildProcessRunnerTest/serializedWorker.js.map +1 -1
- package/dist/node/ChildProcessRunner/ChildProcessWorker.d.ts.map +1 -1
- package/dist/node/ChildProcessRunner/ChildProcessWorker.js +4 -4
- package/dist/node/ChildProcessRunner/ChildProcessWorker.js.map +1 -1
- package/dist/node/mod.d.ts +34 -1
- package/dist/node/mod.d.ts.map +1 -1
- package/dist/node/mod.js +37 -2
- package/dist/node/mod.js.map +1 -1
- package/dist/object/index.d.ts.map +1 -1
- package/dist/object/index.js.map +1 -1
- package/dist/object/omit.js +1 -1
- package/dist/object/omit.js.map +1 -1
- package/dist/object/stringify-object.js +2 -2
- package/dist/object/stringify-object.js.map +1 -1
- package/dist/object/stringify-object.test.js.map +1 -1
- package/dist/qr.d.ts +38 -0
- package/dist/qr.d.ts.map +1 -0
- package/dist/qr.js +109 -0
- package/dist/qr.js.map +1 -0
- package/dist/set.js +1 -1
- package/dist/set.js.map +1 -1
- package/dist/time.js +1 -1
- package/dist/time.js.map +1 -1
- package/package.json +78 -54
- package/src/NoopTracer.ts +22 -8
- package/src/binary.ts +1 -1
- package/src/browser/Opfs/Opfs.ts +436 -0
- package/src/browser/Opfs/debug-utils.ts +153 -0
- package/src/browser/Opfs/mod.ts +3 -0
- package/src/browser/Opfs/utils.ts +287 -0
- package/src/browser/QuotaExceededError.ts +57 -0
- package/src/browser/WebChannelBrowser.ts +131 -0
- package/src/browser/WebError.test.ts +66 -0
- package/src/browser/WebError.ts +613 -0
- package/src/{effect → browser}/WebLock.ts +15 -15
- package/src/{browser.ts → browser/detect.ts} +6 -6
- package/src/browser/mod.ts +8 -0
- package/src/cuid/cuid.browser.ts +1 -1
- package/src/cuid/cuid.node.ts +1 -1
- package/src/effect/BucketQueue.ts +1 -1
- package/src/effect/Debug.ts +470 -0
- package/src/effect/Effect.ts +118 -36
- package/src/effect/Error.ts +1 -1
- package/src/effect/Logger.ts +2 -2
- package/src/effect/RpcClient.ts +7 -6
- package/src/effect/Schema/debug-diff.test.ts +2 -2
- package/src/effect/Schema/debug-diff.ts +6 -5
- package/src/effect/Schema/index.ts +10 -7
- package/src/effect/ServiceContext.ts +6 -6
- package/src/effect/Stream.test.ts +5 -4
- package/src/effect/SubscriptionRef.ts +5 -5
- package/src/effect/WebChannel/WebChannel.test.ts +1 -1
- package/src/effect/WebChannel/WebChannel.ts +19 -141
- package/src/effect/WebChannel/broadcastChannelWithAck.ts +4 -4
- package/src/effect/WebChannel/common.ts +5 -5
- package/src/effect/WebSocket.ts +13 -12
- package/src/effect/{index.ts → mod.ts} +10 -2
- package/src/effect/spanEvent.test.ts +95 -0
- package/src/effect/spanEvent.ts +15 -0
- package/src/env.ts +2 -1
- package/src/fast-deep-equal.ts +9 -9
- package/src/global.ts +4 -2
- package/src/guards.ts +15 -0
- package/src/misc.ts +12 -4
- package/src/mod.ts +209 -17
- package/src/node/ChildProcessRunner/ChildProcessRunner.ts +23 -10
- package/src/node/ChildProcessRunner/ChildProcessRunnerTest/ChildProcessRunner.test.ts +30 -21
- package/src/node/ChildProcessRunner/ChildProcessRunnerTest/serializedWorker.ts +10 -11
- package/src/node/ChildProcessRunner/ChildProcessWorker.ts +5 -4
- package/src/node/mod.ts +41 -2
- package/src/object/index.ts +1 -1
- package/src/object/omit.ts +1 -1
- package/src/object/stringify-object.test.ts +1 -0
- package/src/object/stringify-object.ts +2 -2
- package/src/qr.ts +125 -0
- package/src/set.ts +1 -1
- package/src/time.ts +1 -1
- package/dist/.tsbuildinfo.json +0 -1
- package/dist/browser.d.ts.map +0 -1
- package/dist/browser.js.map +0 -1
- package/dist/effect/WebLock.d.ts.map +0 -1
- package/dist/effect/WebLock.js.map +0 -1
- package/dist/effect/index.d.ts.map +0 -1
- package/dist/effect/index.js.map +0 -1
- /package/dist/{effect → browser}/WebLock.d.ts +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cuid.browser.js","sourceRoot":"","sources":["../../src/cuid/cuid.browser.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"cuid.browser.js","sourceRoot":"","sources":["../../src/cuid/cuid.browser.ts"],"names":[],"mappings":"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"}
|
package/dist/cuid/cuid.node.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cuid.node.js","sourceRoot":"","sources":["../../src/cuid/cuid.node.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"cuid.node.js","sourceRoot":"","sources":["../../src/cuid/cuid.node.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ export declare const make: <A>() => STM.STM<BucketQueue<A>>;
|
|
|
4
4
|
export declare const offerAll: <A>(self: BucketQueue<A>, elements: ReadonlyArray<A>) => STM.STM<void, never, never>;
|
|
5
5
|
export declare const replace: <A>(self: BucketQueue<A>, elements: ReadonlyArray<A>) => STM.STM<void, never, never>;
|
|
6
6
|
export declare const clear: <A>(self: BucketQueue<A>) => STM.STM<void, never, never>;
|
|
7
|
-
export declare const takeBetween: <A>(bucket: BucketQueue<A>, min: number, max: number) => STM.STM<ReadonlyArray<A
|
|
7
|
+
export declare const takeBetween: <A>(bucket: BucketQueue<A>, min: number, max: number) => STM.STM<ReadonlyArray<A>>;
|
|
8
8
|
export declare const peekAll: <A>(bucket: BucketQueue<A>) => STM.STM<A[], never, never>;
|
|
9
9
|
/** Returns the elements up to the first element that matches the predicate, the rest is left in the queue
|
|
10
10
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BucketQueue.d.ts","sourceRoot":"","sources":["../../src/effect/BucketQueue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAEjD,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAA;AAE3C,eAAO,MAAM,IAAI,GAAI,CAAC,OAAK,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAuB,CAAA;AAExE,eAAO,MAAM,QAAQ,GAAI,CAAC,EAAE,MAAM,WAAW,CAAC,CAAC,CAAC,EAAE,UAAU,aAAa,CAAC,CAAC,CAAC,gCACV,CAAA;AAElE,eAAO,MAAM,OAAO,GAAI,CAAC,EAAE,MAAM,WAAW,CAAC,CAAC,CAAC,EAAE,UAAU,aAAa,CAAC,CAAC,CAAC,gCAAoC,CAAA;AAE/G,eAAO,MAAM,KAAK,GAAI,CAAC,EAAE,MAAM,WAAW,CAAC,CAAC,CAAC,gCAAuB,CAAA;AAEpE,eAAO,MAAM,WAAW,GAAI,CAAC,EAC3B,QAAQ,WAAW,CAAC,CAAC,CAAC,EACtB,KAAK,MAAM,EACX,KAAK,MAAM,KACV,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"BucketQueue.d.ts","sourceRoot":"","sources":["../../src/effect/BucketQueue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAEjD,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAA;AAE3C,eAAO,MAAM,IAAI,GAAI,CAAC,OAAK,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAuB,CAAA;AAExE,eAAO,MAAM,QAAQ,GAAI,CAAC,EAAE,MAAM,WAAW,CAAC,CAAC,CAAC,EAAE,UAAU,aAAa,CAAC,CAAC,CAAC,gCACV,CAAA;AAElE,eAAO,MAAM,OAAO,GAAI,CAAC,EAAE,MAAM,WAAW,CAAC,CAAC,CAAC,EAAE,UAAU,aAAa,CAAC,CAAC,CAAC,gCAAoC,CAAA;AAE/G,eAAO,MAAM,KAAK,GAAI,CAAC,EAAE,MAAM,WAAW,CAAC,CAAC,CAAC,gCAAuB,CAAA;AAEpE,eAAO,MAAM,WAAW,GAAI,CAAC,EAC3B,QAAQ,WAAW,CAAC,CAAC,CAAC,EACtB,KAAK,MAAM,EACX,KAAK,MAAM,KACV,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAUvB,CAAA;AAEJ,eAAO,MAAM,OAAO,GAAI,CAAC,EAAE,QAAQ,WAAW,CAAC,CAAC,CAAC,+BAAqB,CAAA;AAEtE;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc,GAAI,CAAC,EAAE,QAAQ,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,OAAO,+BAMlF,CAAA;AAEJ,eAAO,MAAM,IAAI,GAAI,CAAC,EAAE,QAAQ,WAAW,CAAC,CAAC,CAAC,wCAAuD,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BucketQueue.js","sourceRoot":"","sources":["../../src/effect/BucketQueue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAIjD,MAAM,CAAC,MAAM,IAAI,GAAG,GAA+B,EAAE,CAAC,IAAI,CAAC,IAAI,CAAM,EAAE,CAAC,CAAA;AAExE,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAI,IAAoB,EAAE,QAA0B,EAAE,EAAE,CAC9E,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;AAElE,MAAM,CAAC,MAAM,OAAO,GAAG,CAAI,IAAoB,EAAE,QAA0B,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,QAAe,CAAC,CAAA;AAE/G,MAAM,CAAC,MAAM,KAAK,GAAG,CAAI,IAAoB,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;AAEpE,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,MAAsB,EACtB,GAAW,EACX,GAAW,
|
|
1
|
+
{"version":3,"file":"BucketQueue.js","sourceRoot":"","sources":["../../src/effect/BucketQueue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAIjD,MAAM,CAAC,MAAM,IAAI,GAAG,GAA+B,EAAE,CAAC,IAAI,CAAC,IAAI,CAAM,EAAE,CAAC,CAAA;AAExE,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAI,IAAoB,EAAE,QAA0B,EAAE,EAAE,CAC9E,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;AAElE,MAAM,CAAC,MAAM,OAAO,GAAG,CAAI,IAAoB,EAAE,QAA0B,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,QAAe,CAAC,CAAA;AAE/G,MAAM,CAAC,MAAM,KAAK,GAAG,CAAI,IAAoB,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;AAEpE,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,MAAsB,EACtB,GAAW,EACX,GAAW,EACgB,EAAE,CAC7B,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC;IACf,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IAC3C,IAAI,WAAW,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;QAC7B,OAAO,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAA;IACzB,CAAC;SAAM,CAAC;QACN,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAA;QACzE,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;QACpC,OAAO,QAAQ,CAAA;IACjB,CAAC;AACH,CAAC,CAAC,CAAA;AAEJ,MAAM,CAAC,MAAM,OAAO,GAAG,CAAI,MAAsB,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AAEtE;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAI,MAAsB,EAAE,SAA4B,EAAE,EAAE,CACxF,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC;IACf,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IAC3C,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,SAAS,CAAC,CAAA;IACjE,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAC7B,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAC,CAAA;AAEJ,MAAM,CAAC,MAAM,IAAI,GAAG,CAAI,MAAsB,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import type * as Exit from 'effect/Exit';
|
|
2
|
+
import type * as Fiber from 'effect/Fiber';
|
|
3
|
+
import * as Graph from 'effect/Graph';
|
|
4
|
+
import type * as Tracer from 'effect/Tracer';
|
|
5
|
+
/**
|
|
6
|
+
* How to use:
|
|
7
|
+
* 1. Call `Debug.attachSlowDebugInstrumentation` in the root/main file of your program to ensure it is loaded as soon as possible.
|
|
8
|
+
* 2. Call `Debug.logDebug` to log the current state of the effect system.
|
|
9
|
+
*/
|
|
10
|
+
interface SpanEvent {
|
|
11
|
+
readonly name: string;
|
|
12
|
+
readonly startTime: bigint;
|
|
13
|
+
readonly attributes?: Record<string, unknown>;
|
|
14
|
+
}
|
|
15
|
+
interface GraphNodeInfo {
|
|
16
|
+
readonly span: Tracer.AnySpan;
|
|
17
|
+
readonly exitTag: 'Success' | 'Failure' | 'Interrupted' | undefined;
|
|
18
|
+
readonly events: Array<SpanEvent>;
|
|
19
|
+
}
|
|
20
|
+
export type MutableSpanGraph = Graph.MutableGraph<GraphNodeInfo, void>;
|
|
21
|
+
export type MutableSpanGraphInfo = {
|
|
22
|
+
readonly graph: MutableSpanGraph;
|
|
23
|
+
readonly nodeIdBySpanId: Map<string, number>;
|
|
24
|
+
};
|
|
25
|
+
export declare const attachSlowDebugInstrumentation: (options: {
|
|
26
|
+
/** If set to true, the scope prototype will be patched to attach a span to visualize pending scope closing */
|
|
27
|
+
readonly patchScopeClose?: boolean;
|
|
28
|
+
/** An optional callback that will be called when any fiber resumes performing a run loop */
|
|
29
|
+
readonly onFiberResumed?: (fiber: Fiber.RuntimeFiber<any, any>) => void;
|
|
30
|
+
/** An optional callback that will be called when any fiber stops performing a run loop */
|
|
31
|
+
readonly onFiberSuspended?: (fiber: Fiber.RuntimeFiber<any, any>) => void;
|
|
32
|
+
/** An optional callback that will be called when any fiber completes with a exit */
|
|
33
|
+
readonly onFiberCompleted?: (fiber: Fiber.RuntimeFiber<any, any>, exit: Exit.Exit<any, any>) => void;
|
|
34
|
+
}) => void;
|
|
35
|
+
export interface LogDebugOptions {
|
|
36
|
+
readonly regex?: RegExp;
|
|
37
|
+
readonly title?: string;
|
|
38
|
+
}
|
|
39
|
+
export declare const logDebug: (options?: LogDebugOptions) => void;
|
|
40
|
+
export {};
|
|
41
|
+
//# sourceMappingURL=Debug.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Debug.d.ts","sourceRoot":"","sources":["../../src/effect/Debug.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,IAAI,MAAM,aAAa,CAAA;AACxC,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAIrC,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAE5C;;;;GAIG;AAEH,UAAU,SAAS;IACjB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC9C;AAED,UAAU,aAAa;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAA;IAC7B,QAAQ,CAAC,OAAO,EAAE,SAAS,GAAG,SAAS,GAAG,aAAa,GAAG,SAAS,CAAA;IACnE,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;CAClC;AAED,MAAM,MAAM,gBAAgB,GAAG,KAAK,CAAC,YAAY,CAAC,aAAa,EAAE,IAAI,CAAC,CAAA;AACtE,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAA;IAChC,QAAQ,CAAC,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC7C,CAAA;AA+ND,eAAO,MAAM,8BAA8B,GAAI,SAAS;IACtD,8GAA8G;IAC9G,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAA;IAClC,4FAA4F;IAC5F,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,IAAI,CAAA;IACvE,0FAA0F;IAC1F,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,IAAI,CAAA;IACzE,oFAAoF;IACpF,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,IAAI,CAAA;CACrG,KAAG,IAkCH,CAAA;AA0GD,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACxB;AAED,eAAO,MAAM,QAAQ,GAAI,UAAS,eAAoB,SA2DrD,CAAA"}
|
|
@@ -0,0 +1,354 @@
|
|
|
1
|
+
import * as Cause from 'effect/Cause';
|
|
2
|
+
import * as Context from 'effect/Context';
|
|
3
|
+
import * as Effect from 'effect/Effect';
|
|
4
|
+
import * as Graph from 'effect/Graph';
|
|
5
|
+
import * as Option from 'effect/Option';
|
|
6
|
+
import * as RuntimeFlags from 'effect/RuntimeFlags';
|
|
7
|
+
import * as Scope from 'effect/Scope';
|
|
8
|
+
const graphByTraceId = new Map();
|
|
9
|
+
const ensureSpan = (traceId, spanId) => {
|
|
10
|
+
let info = graphByTraceId.get(traceId);
|
|
11
|
+
if (info === undefined) {
|
|
12
|
+
info = {
|
|
13
|
+
graph: Graph.beginMutation(Graph.directed()),
|
|
14
|
+
nodeIdBySpanId: new Map(),
|
|
15
|
+
};
|
|
16
|
+
graphByTraceId.set(traceId, info);
|
|
17
|
+
}
|
|
18
|
+
let nodeId = info.nodeIdBySpanId.get(spanId);
|
|
19
|
+
if (nodeId === undefined) {
|
|
20
|
+
nodeId = Graph.addNode(info.graph, {
|
|
21
|
+
span: { _tag: 'ExternalSpan', spanId, traceId, sampled: false, context: Context.empty() },
|
|
22
|
+
events: [],
|
|
23
|
+
exitTag: undefined,
|
|
24
|
+
});
|
|
25
|
+
info.nodeIdBySpanId.set(spanId, nodeId);
|
|
26
|
+
}
|
|
27
|
+
return [info.graph, nodeId];
|
|
28
|
+
};
|
|
29
|
+
const sortSpan = (prev, next) => {
|
|
30
|
+
if (prev._tag === 'ExternalSpan' && next._tag === 'Span')
|
|
31
|
+
return [next, true, true];
|
|
32
|
+
if (prev._tag === 'Span' && next._tag === 'Span' && next.status._tag === 'Ended')
|
|
33
|
+
return [next, false, true];
|
|
34
|
+
return [prev, false, false];
|
|
35
|
+
};
|
|
36
|
+
const addNode = (span) => {
|
|
37
|
+
const [mutableGraph, nodeId] = ensureSpan(span.traceId, span.spanId);
|
|
38
|
+
Graph.updateNode(mutableGraph, nodeId, (previousInfo) => {
|
|
39
|
+
const [latestInfo, upgraded] = sortSpan(previousInfo.span, span);
|
|
40
|
+
if (upgraded === true && latestInfo._tag === 'Span' && Option.isSome(latestInfo.parent) === true) {
|
|
41
|
+
const parentNodeId = addNode(latestInfo.parent.value);
|
|
42
|
+
Graph.addEdge(mutableGraph, parentNodeId, nodeId, undefined);
|
|
43
|
+
}
|
|
44
|
+
return { ...previousInfo, span: latestInfo };
|
|
45
|
+
});
|
|
46
|
+
return nodeId;
|
|
47
|
+
};
|
|
48
|
+
const addEvent = (traceId, spanId, event) => {
|
|
49
|
+
const [mutableGraph, nodeId] = ensureSpan(traceId, spanId);
|
|
50
|
+
Graph.updateNode(mutableGraph, nodeId, (previousInfo) => {
|
|
51
|
+
return { ...previousInfo, events: [...previousInfo.events, event] };
|
|
52
|
+
});
|
|
53
|
+
return nodeId;
|
|
54
|
+
};
|
|
55
|
+
const addNodeExit = (traceId, spanId, exit) => {
|
|
56
|
+
const [mutableGraph, nodeId] = ensureSpan(traceId, spanId);
|
|
57
|
+
Graph.updateNode(mutableGraph, nodeId, (previousInfo) => {
|
|
58
|
+
const isInterruptedOnly = exit._tag === 'Failure' && Cause.isInterruptedOnly(exit.cause);
|
|
59
|
+
return {
|
|
60
|
+
...previousInfo,
|
|
61
|
+
exitTag: isInterruptedOnly === true ? 'Interrupted' : exit._tag,
|
|
62
|
+
};
|
|
63
|
+
});
|
|
64
|
+
return nodeId;
|
|
65
|
+
};
|
|
66
|
+
const createPropertyInterceptor = (obj, property, interceptor) => {
|
|
67
|
+
const descriptor = Object.getOwnPropertyDescriptor(obj, property);
|
|
68
|
+
const previousSetter = descriptor?.set;
|
|
69
|
+
let currentValue;
|
|
70
|
+
const previousGetter = descriptor?.get;
|
|
71
|
+
if (previousGetter == null) {
|
|
72
|
+
currentValue = obj[property];
|
|
73
|
+
}
|
|
74
|
+
Object.defineProperty(obj, property, {
|
|
75
|
+
get() {
|
|
76
|
+
if (previousGetter !== undefined) {
|
|
77
|
+
return previousGetter.call(obj);
|
|
78
|
+
}
|
|
79
|
+
return currentValue;
|
|
80
|
+
},
|
|
81
|
+
set(value) {
|
|
82
|
+
if (previousSetter !== undefined) {
|
|
83
|
+
previousSetter.call(obj, value);
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
currentValue = value;
|
|
87
|
+
}
|
|
88
|
+
interceptor(value);
|
|
89
|
+
},
|
|
90
|
+
enumerable: descriptor?.enumerable ?? true,
|
|
91
|
+
configurable: descriptor?.configurable ?? true,
|
|
92
|
+
});
|
|
93
|
+
};
|
|
94
|
+
const patchedTracer = new WeakSet();
|
|
95
|
+
const ensureTracerPatched = (currentTracer) => {
|
|
96
|
+
if (patchedTracer.has(currentTracer) === true) {
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
patchedTracer.add(currentTracer);
|
|
100
|
+
const oldSpanConstructor = currentTracer.span;
|
|
101
|
+
currentTracer.span = function (...args) {
|
|
102
|
+
const span = oldSpanConstructor.apply(this, args);
|
|
103
|
+
addNode(span);
|
|
104
|
+
const oldSpanEnd = span.end;
|
|
105
|
+
span.end = function (endTime, exit, ...args) {
|
|
106
|
+
oldSpanEnd.apply(this, [endTime, exit, ...args]);
|
|
107
|
+
addNodeExit(this.traceId, this.spanId, exit);
|
|
108
|
+
};
|
|
109
|
+
const oldSpanEvent = span.event;
|
|
110
|
+
span.event = function (name, startTime, attributes, ...args) {
|
|
111
|
+
oldSpanEvent.apply(this, [name, startTime, attributes, ...args]);
|
|
112
|
+
addEvent(this.traceId, this.spanId, { name, startTime, attributes: attributes ?? {} });
|
|
113
|
+
};
|
|
114
|
+
return span;
|
|
115
|
+
};
|
|
116
|
+
const oldContext = currentTracer.context;
|
|
117
|
+
currentTracer.context = function (f, fiber, ...args) {
|
|
118
|
+
const context = oldContext.apply(this, [f, fiber, ...args]);
|
|
119
|
+
ensureFiberPatched(fiber);
|
|
120
|
+
// oxlint-disable-next-line typescript-eslint(no-unsafe-type-assertion) -- Effect Tracer.context return type is opaque; patching requires cast
|
|
121
|
+
return context;
|
|
122
|
+
};
|
|
123
|
+
};
|
|
124
|
+
const knownScopes = new Map();
|
|
125
|
+
let lastScopeId = 0;
|
|
126
|
+
const ensureScopePatched = (scope, allocationFiber) => {
|
|
127
|
+
if (scope.state._tag === 'Closed')
|
|
128
|
+
return;
|
|
129
|
+
if (knownScopes.has(scope) === true)
|
|
130
|
+
return;
|
|
131
|
+
const id = lastScopeId++;
|
|
132
|
+
if (patchScopeClose === true) {
|
|
133
|
+
// oxlint-disable-next-line typescript-eslint(no-unsafe-type-assertion) -- patching Scope.close; ScopeImpl is an internal interface not exported by Effect
|
|
134
|
+
const oldClose = scope.close;
|
|
135
|
+
scope.close = function (...args) {
|
|
136
|
+
return oldClose.apply(this, args).pipe(Effect.withSpan(`scope.${id}.closeRunFinalizers`), Effect.ensuring(Effect.sync(() => {
|
|
137
|
+
knownScopes.delete(scope);
|
|
138
|
+
})));
|
|
139
|
+
};
|
|
140
|
+
}
|
|
141
|
+
else {
|
|
142
|
+
cleanupScopes();
|
|
143
|
+
}
|
|
144
|
+
const allocationSpan = allocationFiber?.currentSpan;
|
|
145
|
+
knownScopes.set(scope, { id, allocationFiber, allocationSpan });
|
|
146
|
+
};
|
|
147
|
+
const cleanupScopes = () => {
|
|
148
|
+
for (const [scope] of knownScopes) {
|
|
149
|
+
if (scope.state._tag === 'Closed')
|
|
150
|
+
knownScopes.delete(scope);
|
|
151
|
+
}
|
|
152
|
+
};
|
|
153
|
+
const knownFibers = new Set();
|
|
154
|
+
const ensureFiberPatched = (fiber) => {
|
|
155
|
+
// patch tracer
|
|
156
|
+
ensureTracerPatched(fiber.currentTracer);
|
|
157
|
+
// patch scope
|
|
158
|
+
const currentScope = Context.getOrElse(fiber.currentContext, Scope.Scope, () => undefined);
|
|
159
|
+
// oxlint-disable-next-line typescript-eslint(no-unsafe-type-assertion) -- casting Scope to ScopeImpl; internal Effect type not publicly exported
|
|
160
|
+
if (currentScope !== undefined)
|
|
161
|
+
ensureScopePatched(currentScope, undefined);
|
|
162
|
+
// patch fiber
|
|
163
|
+
if (knownFibers.has(fiber) === true)
|
|
164
|
+
return;
|
|
165
|
+
knownFibers.add(fiber);
|
|
166
|
+
fiber.addObserver((exit) => {
|
|
167
|
+
knownFibers.delete(fiber);
|
|
168
|
+
onFiberCompleted?.(fiber, exit);
|
|
169
|
+
});
|
|
170
|
+
};
|
|
171
|
+
let patchScopeClose = false;
|
|
172
|
+
let onFiberResumed;
|
|
173
|
+
let onFiberSuspended;
|
|
174
|
+
let onFiberCompleted;
|
|
175
|
+
export const attachSlowDebugInstrumentation = (options) => {
|
|
176
|
+
// oxlint-disable-next-line typescript-eslint(no-unsafe-type-assertion) -- accessing Effect's global fiber tracking via well-known symbol keys
|
|
177
|
+
const _globalThis = globalThis;
|
|
178
|
+
if (_globalThis['effect/DevtoolsHook'] !== undefined) {
|
|
179
|
+
return console.error('attachDebugInstrumentation has already been called! To show the tree, call attachDebugInstrumentation() in the root/main file of your program to ensure it is loaded as soon as possible.');
|
|
180
|
+
}
|
|
181
|
+
patchScopeClose = options.patchScopeClose ?? false;
|
|
182
|
+
onFiberResumed = options.onFiberResumed;
|
|
183
|
+
onFiberSuspended = options.onFiberSuspended;
|
|
184
|
+
onFiberCompleted = options.onFiberCompleted;
|
|
185
|
+
let lastFiber;
|
|
186
|
+
// oxlint-disable-next-line typescript-eslint(no-unsafe-type-assertion) -- accessing Effect's global fiber tracking via well-known symbol keys
|
|
187
|
+
createPropertyInterceptor(globalThis, 'effect/FiberCurrent', (value) => {
|
|
188
|
+
if (value !== undefined && knownFibers.has(value) === true)
|
|
189
|
+
onFiberResumed?.(value);
|
|
190
|
+
if (value !== undefined)
|
|
191
|
+
ensureFiberPatched(value);
|
|
192
|
+
if (value == null && lastFiber !== undefined && knownFibers.has(lastFiber) === true)
|
|
193
|
+
onFiberSuspended?.(lastFiber);
|
|
194
|
+
lastFiber = value;
|
|
195
|
+
});
|
|
196
|
+
_globalThis['effect/DevtoolsHook'] = {
|
|
197
|
+
onEvent: (event) => {
|
|
198
|
+
console.log('onEvent', event);
|
|
199
|
+
switch (event._tag) {
|
|
200
|
+
case 'ScopeAllocated':
|
|
201
|
+
// oxlint-disable-next-line typescript-eslint(no-unsafe-type-assertion) -- casting Scope to ScopeImpl; internal Effect type not publicly exported
|
|
202
|
+
ensureScopePatched(event.scope, _globalThis['effect/FiberCurrent']);
|
|
203
|
+
break;
|
|
204
|
+
case 'FiberAllocated':
|
|
205
|
+
ensureFiberPatched(event.fiber);
|
|
206
|
+
break;
|
|
207
|
+
}
|
|
208
|
+
},
|
|
209
|
+
};
|
|
210
|
+
};
|
|
211
|
+
const formatDuration = (startTime, endTime) => {
|
|
212
|
+
if (endTime === undefined)
|
|
213
|
+
return '[running]';
|
|
214
|
+
const durationMs = Number(endTime - startTime) / 1000000; // Convert nanoseconds to milliseconds
|
|
215
|
+
if (durationMs < 1000)
|
|
216
|
+
return `${durationMs.toFixed(0)}ms`;
|
|
217
|
+
if (durationMs < 60000)
|
|
218
|
+
return `${(durationMs / 1000).toFixed(2)}s`;
|
|
219
|
+
return `${(durationMs / 60000).toFixed(2)}m`;
|
|
220
|
+
};
|
|
221
|
+
const getSpanName = (span) => {
|
|
222
|
+
if (span._tag === 'ExternalSpan')
|
|
223
|
+
return `[external] ${span.spanId}`;
|
|
224
|
+
return span.name;
|
|
225
|
+
};
|
|
226
|
+
const getSpanStatus = (info) => {
|
|
227
|
+
if (info.span._tag === 'ExternalSpan')
|
|
228
|
+
return '?';
|
|
229
|
+
if (info.exitTag === 'Success')
|
|
230
|
+
return '✓';
|
|
231
|
+
if (info.exitTag === 'Failure')
|
|
232
|
+
return '✗';
|
|
233
|
+
if (info.exitTag === 'Interrupted')
|
|
234
|
+
return '!';
|
|
235
|
+
return '⋮';
|
|
236
|
+
};
|
|
237
|
+
const getSpanDuration = (span) => {
|
|
238
|
+
if (span._tag === 'ExternalSpan')
|
|
239
|
+
return '';
|
|
240
|
+
const endTime = span.status._tag === 'Ended' ? span.status.endTime : undefined;
|
|
241
|
+
return formatDuration(span.status.startTime, endTime);
|
|
242
|
+
};
|
|
243
|
+
const filterGraphKeepAncestors = (graph, predicate) => {
|
|
244
|
+
// Find all root nodes (nodes with no incoming edges)
|
|
245
|
+
const rootNodes = Array.from(Graph.indices(Graph.externals(graph, { direction: 'incoming' })));
|
|
246
|
+
const shouldInclude = new Set();
|
|
247
|
+
// Use postorder DFS to evaluate children before parents
|
|
248
|
+
for (const nodeId of Graph.indices(Graph.dfsPostOrder(graph, { start: rootNodes, direction: 'outgoing' }))) {
|
|
249
|
+
const node = Graph.getNode(graph, nodeId);
|
|
250
|
+
if (Option.isNone(node) === true)
|
|
251
|
+
continue;
|
|
252
|
+
const matchesPredicate = predicate(node.value, nodeId);
|
|
253
|
+
if (matchesPredicate === true) {
|
|
254
|
+
shouldInclude.add(nodeId);
|
|
255
|
+
}
|
|
256
|
+
else {
|
|
257
|
+
const children = Graph.neighborsDirected(graph, nodeId, 'outgoing');
|
|
258
|
+
const hasMatchingChildren = children.some((childId) => shouldInclude.has(childId));
|
|
259
|
+
if (hasMatchingChildren === true)
|
|
260
|
+
shouldInclude.add(nodeId);
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
// Create a filtered copy of the graph
|
|
264
|
+
return Graph.mutate(graph, (mutable) => {
|
|
265
|
+
for (const [nodeId] of mutable.nodes) {
|
|
266
|
+
if (shouldInclude.has(nodeId) === true)
|
|
267
|
+
continue;
|
|
268
|
+
Graph.removeNode(mutable, nodeId);
|
|
269
|
+
}
|
|
270
|
+
});
|
|
271
|
+
};
|
|
272
|
+
const renderSpanNode = (graph, nodeId) => {
|
|
273
|
+
const node = Graph.getNode(graph, nodeId);
|
|
274
|
+
if (Option.isNone(node) === true)
|
|
275
|
+
return [];
|
|
276
|
+
const info = node.value;
|
|
277
|
+
const status = getSpanStatus(info);
|
|
278
|
+
const name = getSpanName(info.span);
|
|
279
|
+
const duration = getSpanDuration(info.span);
|
|
280
|
+
const durationStr = duration !== undefined ? ` ${duration}` : '';
|
|
281
|
+
const fiberIds = Array.from(knownFibers)
|
|
282
|
+
.filter((fiber) => fiber.currentSpan?.spanId === info.span.spanId && fiber.currentSpan?.traceId === info.span.traceId)
|
|
283
|
+
.map((fiber) => `#${fiber.id().id}`)
|
|
284
|
+
.join(', ');
|
|
285
|
+
const runningOnFibers = fiberIds.length > 0 ? ` [fibers ${fiberIds}]` : '';
|
|
286
|
+
return [` ${status} ${name}${durationStr}${runningOnFibers}`];
|
|
287
|
+
};
|
|
288
|
+
const renderTree = (graph, nodeIds, renderNode) => {
|
|
289
|
+
let lines = [];
|
|
290
|
+
for (let childIndex = 0; childIndex < nodeIds.length; childIndex++) {
|
|
291
|
+
const isLastChild = childIndex === nodeIds.length - 1;
|
|
292
|
+
const childLines = renderNode(graph, nodeIds[childIndex]).concat(renderTree(graph, Graph.neighborsDirected(graph, nodeIds[childIndex], 'outgoing'), renderNode));
|
|
293
|
+
lines = [
|
|
294
|
+
...lines,
|
|
295
|
+
...childLines.map((l, lineIndex) => {
|
|
296
|
+
if (lineIndex === 0) {
|
|
297
|
+
return (isLastChild === true ? ' └─' : ' ├─') + l;
|
|
298
|
+
}
|
|
299
|
+
return (isLastChild === true ? ' ' : ' │') + l;
|
|
300
|
+
}),
|
|
301
|
+
];
|
|
302
|
+
}
|
|
303
|
+
return lines;
|
|
304
|
+
};
|
|
305
|
+
export const logDebug = (options = {}) => {
|
|
306
|
+
// oxlint-disable-next-line typescript-eslint(no-unsafe-type-assertion) -- accessing Effect's global fiber tracking via well-known symbol keys
|
|
307
|
+
const _globalThis = globalThis;
|
|
308
|
+
if (_globalThis['effect/DevtoolsHook'] == null) {
|
|
309
|
+
return console.error('attachDebugInstrumentation has not been called! To show the tree, call attachDebugInstrumentation() in the root/main file of your program to ensure it is loaded as soon as possible.');
|
|
310
|
+
}
|
|
311
|
+
let lines = [`----------------${options.title ?? ''}----------------`];
|
|
312
|
+
// fibers
|
|
313
|
+
lines = [...lines, 'Active Fibers:'];
|
|
314
|
+
for (const fiber of knownFibers) {
|
|
315
|
+
// oxlint-disable-next-line typescript-eslint(no-unsafe-type-assertion) -- accessing fiber.currentRuntimeFlags; internal Effect runtime property
|
|
316
|
+
const interruptible = RuntimeFlags.interruptible(fiber.currentRuntimeFlags);
|
|
317
|
+
lines = [...lines, `- #${fiber.id().id}${interruptible === false ? ' [uninterruptible]' : ''}`];
|
|
318
|
+
}
|
|
319
|
+
if (knownFibers.size === 0) {
|
|
320
|
+
lines = [...lines, '- No active effect fibers'];
|
|
321
|
+
}
|
|
322
|
+
lines = [...lines, ''];
|
|
323
|
+
// spans
|
|
324
|
+
for (const [traceId, info] of graphByTraceId) {
|
|
325
|
+
const graph = Graph.endMutation(info.graph);
|
|
326
|
+
const filteredGraph = options.regex !== undefined
|
|
327
|
+
? filterGraphKeepAncestors(graph, (nodeData, _nodeId) => {
|
|
328
|
+
const name = getSpanName(nodeData.span);
|
|
329
|
+
return options.regex.test(name);
|
|
330
|
+
})
|
|
331
|
+
: graph;
|
|
332
|
+
const filteredRootNodes = Array.from(Graph.indices(Graph.externals(filteredGraph, { direction: 'incoming' })));
|
|
333
|
+
lines = [...lines, `Spans Trace ${traceId}:`, ...renderTree(filteredGraph, filteredRootNodes, renderSpanNode)];
|
|
334
|
+
}
|
|
335
|
+
lines = [...lines, '? external span - ✓ success - ✗ failure - ! interrupted', ''];
|
|
336
|
+
// scopes
|
|
337
|
+
lines = [...lines, 'Open Scopes:'];
|
|
338
|
+
for (const [scope, info] of knownScopes) {
|
|
339
|
+
const fiberIds = Array.from(knownFibers)
|
|
340
|
+
.filter((fiber) => Context.getOrElse(fiber.currentContext, Scope.Scope, () => undefined) === scope)
|
|
341
|
+
.map((fiber) => `#${fiber.id().id}`)
|
|
342
|
+
.join(', ');
|
|
343
|
+
const usedByFibers = fiberIds.length > 0 ? ` [used by: ${fiberIds}]` : '';
|
|
344
|
+
const allocationFiber = info.allocationFiber !== undefined ? ` [allocated in fiber #${info.allocationFiber.id().id}]` : '';
|
|
345
|
+
const allocationSpan = info.allocationSpan !== undefined ? ` [allocated in span: ${getSpanName(info.allocationSpan)}]` : '';
|
|
346
|
+
lines = [...lines, `- #${info.id}${usedByFibers}${allocationFiber}${allocationSpan}`];
|
|
347
|
+
}
|
|
348
|
+
if (knownScopes.size === 0) {
|
|
349
|
+
lines = [...lines, '- No active scopes'];
|
|
350
|
+
}
|
|
351
|
+
lines = [...lines, ''];
|
|
352
|
+
console.log(lines.join('\n'));
|
|
353
|
+
};
|
|
354
|
+
//# sourceMappingURL=Debug.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Debug.js","sourceRoot":"","sources":["../../src/effect/Debug.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,YAAY,MAAM,qBAAqB,CAAA;AACnD,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AA2BrC,MAAM,cAAc,GAAG,IAAI,GAAG,EAAgC,CAAA;AAE9D,MAAM,UAAU,GAAG,CAAC,OAAe,EAAE,MAAc,EAA8B,EAAE;IACjF,IAAI,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;IACtC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,IAAI,GAAG;YACL,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,EAAuB,CAAC;YACjE,cAAc,EAAE,IAAI,GAAG,EAAkB;SAC1C,CAAA;QACD,cAAc,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IACnC,CAAC;IACD,IAAI,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IAC5C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE;YACjC,IAAI,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,EAAE;YACzF,MAAM,EAAE,EAAE;YACV,OAAO,EAAE,SAAS;SACnB,CAAC,CAAA;QACF,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACzC,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;AAC7B,CAAC,CAAA;AAED,MAAM,QAAQ,GAAG,CACf,IAAoB,EACpB,IAAoB,EACgD,EAAE;IACtE,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;IACnF,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;IAC5G,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;AAC7B,CAAC,CAAA;AAED,MAAM,OAAO,GAAG,CAAC,IAAoB,EAAE,EAAE;IACvC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;IACpE,KAAK,CAAC,UAAU,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC,YAAY,EAAE,EAAE;QACtD,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QAChE,IAAI,QAAQ,KAAK,IAAI,IAAI,UAAU,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;YACjG,MAAM,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YACrD,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,CAAC,CAAA;QAC9D,CAAC;QACD,OAAO,EAAE,GAAG,YAAY,EAAE,IAAI,EAAE,UAAU,EAAE,CAAA;IAC9C,CAAC,CAAC,CAAA;IACF,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAED,MAAM,QAAQ,GAAG,CAAC,OAAe,EAAE,MAAc,EAAE,KAAgB,EAAE,EAAE;IACrE,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,GAAG,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IAC1D,KAAK,CAAC,UAAU,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC,YAAY,EAAE,EAAE;QACtD,OAAO,EAAE,GAAG,YAAY,EAAE,MAAM,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAA;IACrE,CAAC,CAAC,CAAA;IACF,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AACD,MAAM,WAAW,GAAG,CAAC,OAAe,EAAE,MAAc,EAAE,IAAyB,EAAE,EAAE;IACjF,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,GAAG,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IAC1D,KAAK,CAAC,UAAU,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC,YAAY,EAAE,EAAE;QACtD,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACxF,OAAO;YACL,GAAG,YAAY;YACf,OAAO,EAAE,iBAAiB,KAAK,IAAI,CAAC,CAAC,CAAE,aAAuB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI;SAC3E,CAAA;IACH,CAAC,CAAC,CAAA;IACF,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAED,MAAM,yBAAyB,GAAG,CAChC,GAAM,EACN,QAAW,EACX,WAAkC,EAC5B,EAAE;IACR,MAAM,UAAU,GAAG,MAAM,CAAC,wBAAwB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;IAEjE,MAAM,cAAc,GAAG,UAAU,EAAE,GAAG,CAAA;IAEtC,IAAI,YAAkB,CAAA;IACtB,MAAM,cAAc,GAAG,UAAU,EAAE,GAAG,CAAA;IAEtC,IAAI,cAAc,IAAI,IAAI,EAAE,CAAC;QAC3B,YAAY,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAA;IAC9B,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,QAAQ,EAAE;QACnC,GAAG;YACD,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;gBACjC,OAAO,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACjC,CAAC;YACD,OAAO,YAAY,CAAA;QACrB,CAAC;QACD,GAAG,CAAC,KAAW;YACb,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;gBACjC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;YACjC,CAAC;iBAAM,CAAC;gBACN,YAAY,GAAG,KAAK,CAAA;YACtB,CAAC;YACD,WAAW,CAAC,KAAK,CAAC,CAAA;QACpB,CAAC;QACD,UAAU,EAAE,UAAU,EAAE,UAAU,IAAI,IAAI;QAC1C,YAAY,EAAE,UAAU,EAAE,YAAY,IAAI,IAAI;KAC/C,CAAC,CAAA;AACJ,CAAC,CAAA;AAmBD,MAAM,aAAa,GAAG,IAAI,OAAO,EAAiB,CAAA;AAClD,MAAM,mBAAmB,GAAG,CAAC,aAA4B,EAAE,EAAE;IAC3D,IAAI,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC,KAAK,IAAI,EAAE,CAAC;QAC9C,OAAM;IACR,CAAC;IACD,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;IAEhC,MAAM,kBAAkB,GAAG,aAAa,CAAC,IAAI,CAAA;IAC7C,aAAa,CAAC,IAAI,GAAG,UAAU,GAAG,IAAI;QACpC,MAAM,IAAI,GAAG,kBAAkB,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QACjD,OAAO,CAAC,IAAI,CAAC,CAAA;QAEb,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAA;QAC3B,IAAI,CAAC,GAAG,GAAG,UAAU,OAAO,EAAE,IAAI,EAAE,GAAG,IAAI;YACzC,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,CAAA;YAChD,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QAC9C,CAAC,CAAA;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAA;QAC/B,IAAI,CAAC,KAAK,GAAG,UAAU,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,IAAI;YACzD,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,CAAC,CAAA;YAChE,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,IAAI,EAAE,EAAE,CAAC,CAAA;QACxF,CAAC,CAAA;QAED,OAAO,IAAI,CAAA;IACb,CAAC,CAAA;IAED,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAA;IACxC,aAAa,CAAC,OAAO,GAAG,UAAU,CAAC,EAAE,KAAK,EAAE,GAAG,IAAI;QACjD,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC,CAAA;QAC3D,kBAAkB,CAAC,KAAK,CAAC,CAAA;QACzB,8IAA8I;QAC9I,OAAO,OAAc,CAAA;IACvB,CAAC,CAAA;AACH,CAAC,CAAA;AAcD,MAAM,WAAW,GAAG,IAAI,GAAG,EAGxB,CAAA;AACH,IAAI,WAAW,GAAG,CAAC,CAAA;AACnB,MAAM,kBAAkB,GAAG,CAAC,KAAgB,EAAE,eAAyD,EAAE,EAAE;IACzG,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAM;IACzC,IAAI,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI;QAAE,OAAM;IAC3C,MAAM,EAAE,GAAG,WAAW,EAAE,CAAA;IACxB,IAAI,eAAe,KAAK,IAAI,EAAE,CAAC;QAC7B,0JAA0J;QAC1J,MAAM,QAAQ,GAAI,KAAa,CAAC,KAAK,CAEpC;QAAC,KAAa,CAAC,KAAK,GAAG,UAAU,GAAG,IAAW;YAC9C,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI,CACpC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,qBAAqB,CAAC,EACjD,MAAM,CAAC,QAAQ,CACb,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;gBACf,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YAC3B,CAAC,CAAC,CACH,CACF,CAAA;QACH,CAAC,CAAA;IACH,CAAC;SAAM,CAAC;QACN,aAAa,EAAE,CAAA;IACjB,CAAC;IACD,MAAM,cAAc,GAAG,eAAe,EAAE,WAAW,CAAA;IACnD,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,eAAe,EAAE,cAAc,EAAE,CAAC,CAAA;AACjE,CAAC,CAAA;AACD,MAAM,aAAa,GAAG,GAAG,EAAE;IACzB,KAAK,MAAM,CAAC,KAAK,CAAC,IAAI,WAAW,EAAE,CAAC;QAClC,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ;YAAE,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAC9D,CAAC;AACH,CAAC,CAAA;AAED,MAAM,WAAW,GAAG,IAAI,GAAG,EAAgC,CAAA;AAC3D,MAAM,kBAAkB,GAAG,CAAC,KAAmC,EAAE,EAAE;IACjE,eAAe;IACf,mBAAmB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAA;IACxC,cAAc;IACd,MAAM,YAAY,GAAG,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;IAC1F,iJAAiJ;IACjJ,IAAI,YAAY,KAAK,SAAS;QAAE,kBAAkB,CAAC,YAAgC,EAAE,SAAS,CAAC,CAAA;IAC/F,cAAc;IACd,IAAI,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI;QAAE,OAAM;IAC3C,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IACtB,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE;QACzB,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACzB,gBAAgB,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IACjC,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAED,IAAI,eAAe,GAAG,KAAK,CAAA;AAC3B,IAAI,cAA2E,CAAA;AAC/E,IAAI,gBAA6E,CAAA;AACjF,IAAI,gBAAwG,CAAA;AAC5G,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,OAS9C,EAAQ,EAAE;IACT,8IAA8I;IAC9I,MAAM,WAAW,GAAG,UAA2C,CAAA;IAC/D,IAAI,WAAW,CAAC,qBAAqB,CAAC,KAAK,SAAS,EAAE,CAAC;QACrD,OAAO,OAAO,CAAC,KAAK,CAClB,2LAA2L,CAC5L,CAAA;IACH,CAAC;IACD,eAAe,GAAG,OAAO,CAAC,eAAe,IAAI,KAAK,CAAA;IAClD,cAAc,GAAG,OAAO,CAAC,cAAc,CAAA;IACvC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAA;IAC3C,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAA;IAC3C,IAAI,SAAmD,CAAA;IACvD,8IAA8I;IAC9I,yBAAyB,CAAC,UAA2C,EAAE,qBAAqB,EAAE,CAAC,KAAK,EAAE,EAAE;QACtG,IAAI,KAAK,KAAK,SAAS,IAAI,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI;YAAE,cAAc,EAAE,CAAC,KAAK,CAAC,CAAA;QACnF,IAAI,KAAK,KAAK,SAAS;YAAE,kBAAkB,CAAC,KAAK,CAAC,CAAA;QAClD,IAAI,KAAK,IAAI,IAAI,IAAI,SAAS,KAAK,SAAS,IAAI,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,IAAI;YAAE,gBAAgB,EAAE,CAAC,SAAS,CAAC,CAAA;QAClH,SAAS,GAAG,KAAK,CAAA;IACnB,CAAC,CAAC,CAAA;IACF,WAAW,CAAC,qBAAqB,CAAC,GAAG;QACnC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACjB,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;YAC7B,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;gBACnB,KAAK,gBAAgB;oBACnB,iJAAiJ;oBACjJ,kBAAkB,CAAC,KAAK,CAAC,KAAyB,EAAE,WAAW,CAAC,qBAAqB,CAAC,CAAC,CAAA;oBACvF,MAAK;gBACP,KAAK,gBAAgB;oBACnB,kBAAkB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;oBAC/B,MAAK;YACT,CAAC;QACH,CAAC;KACF,CAAA;AACH,CAAC,CAAA;AAED,MAAM,cAAc,GAAG,CAAC,SAAiB,EAAE,OAA2B,EAAU,EAAE;IAChF,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,WAAW,CAAA;IAC7C,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC,GAAG,OAAO,CAAA,CAAC,sCAAsC;IAC/F,IAAI,UAAU,GAAG,IAAI;QAAE,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA;IAC1D,IAAI,UAAU,GAAG,KAAK;QAAE,OAAO,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAA;IACnE,OAAO,GAAG,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAA;AAC9C,CAAC,CAAA;AAED,MAAM,WAAW,GAAG,CAAC,IAAoB,EAAU,EAAE;IACnD,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc;QAAE,OAAO,cAAc,IAAI,CAAC,MAAM,EAAE,CAAA;IACpE,OAAO,IAAI,CAAC,IAAI,CAAA;AAClB,CAAC,CAAA;AAED,MAAM,aAAa,GAAG,CAAC,IAAmB,EAAU,EAAE;IACpD,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,cAAc;QAAE,OAAO,GAAG,CAAA;IACjD,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;QAAE,OAAO,GAAG,CAAA;IAC1C,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;QAAE,OAAO,GAAG,CAAA;IAC1C,IAAI,IAAI,CAAC,OAAO,KAAK,aAAa;QAAE,OAAO,GAAG,CAAA;IAC9C,OAAO,GAAG,CAAA;AACZ,CAAC,CAAA;AAED,MAAM,eAAe,GAAG,CAAC,IAAoB,EAAU,EAAE;IACvD,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc;QAAE,OAAO,EAAE,CAAA;IAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAA;IAC9E,OAAO,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;AACvD,CAAC,CAAA;AAED,MAAM,wBAAwB,GAAG,CAC/B,KAAwB,EACxB,SAAmD,EAChC,EAAE;IACrB,qDAAqD;IACrD,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,CAAA;IAC9F,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAA;IAEvC,wDAAwD;IACxD,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC;QAC3G,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QACzC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI;YAAE,SAAQ;QAE1C,MAAM,gBAAgB,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QACtD,IAAI,gBAAgB,KAAK,IAAI,EAAE,CAAC;YAC9B,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAC3B,CAAC;aAAM,CAAC;YACN,MAAM,QAAQ,GAAG,KAAK,CAAC,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,CAAA;YACnE,MAAM,mBAAmB,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAA;YAClF,IAAI,mBAAmB,KAAK,IAAI;gBAAE,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAC7D,CAAC;IACH,CAAC;IAED,sCAAsC;IACtC,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,EAAE;QACrC,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YACrC,IAAI,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI;gBAAE,SAAQ;YAChD,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;QACnC,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAED,MAAM,cAAc,GAAG,CAAC,KAAuC,EAAE,MAAc,EAAY,EAAE;IAC3F,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IACzC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI;QAAE,OAAO,EAAE,CAAA;IAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAA;IACvB,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,CAAA;IAClC,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACnC,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC3C,MAAM,WAAW,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IAEhE,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC;SACrC,MAAM,CACL,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,WAAW,EAAE,OAAO,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO,CAC9G;SACA,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;SACnC,IAAI,CAAC,IAAI,CAAC,CAAA;IACb,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;IAE1E,OAAO,CAAC,IAAI,MAAM,IAAI,IAAI,GAAG,WAAW,GAAG,eAAe,EAAE,CAAC,CAAA;AAC/D,CAAC,CAAA;AAED,MAAM,UAAU,GAAG,CACjB,KAA2B,EAC3B,OAAsB,EACtB,UAAqE,EAC3D,EAAE;IACZ,IAAI,KAAK,GAAa,EAAE,CAAA;IACxB,KAAK,IAAI,UAAU,GAAG,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,CAAC;QACnE,MAAM,WAAW,GAAG,UAAU,KAAK,OAAO,CAAC,MAAM,GAAG,CAAC,CAAA;QACrD,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,UAAU,CAAE,CAAC,CAAC,MAAM,CAC/D,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,iBAAiB,CAAC,KAAK,EAAE,OAAO,CAAC,UAAU,CAAE,EAAE,UAAU,CAAC,EAAE,UAAU,CAAC,CAChG,CAAA;QACD,KAAK,GAAG;YACN,GAAG,KAAK;YACR,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE;gBACjC,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;oBACpB,OAAO,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;gBACnD,CAAC;gBACD,OAAO,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACjD,CAAC,CAAC;SACH,CAAA;IACH,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAOD,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,UAA2B,EAAE,EAAE,EAAE;IACxD,8IAA8I;IAC9I,MAAM,WAAW,GAAG,UAA2C,CAAA;IAC/D,IAAI,WAAW,CAAC,qBAAqB,CAAC,IAAI,IAAI,EAAE,CAAC;QAC/C,OAAO,OAAO,CAAC,KAAK,CAClB,uLAAuL,CACxL,CAAA;IACH,CAAC;IAED,IAAI,KAAK,GAAkB,CAAC,mBAAmB,OAAO,CAAC,KAAK,IAAI,EAAE,kBAAkB,CAAC,CAAA;IAErF,SAAS;IACT,KAAK,GAAG,CAAC,GAAG,KAAK,EAAE,gBAAgB,CAAC,CAAA;IACpC,KAAK,MAAM,KAAK,IAAI,WAAW,EAAE,CAAC;QAChC,gJAAgJ;QAChJ,MAAM,aAAa,GAAG,YAAY,CAAC,aAAa,CAAE,KAAa,CAAC,mBAAmB,CAAC,CAAA;QACpF,KAAK,GAAG,CAAC,GAAG,KAAK,EAAE,MAAM,KAAK,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,aAAa,KAAK,KAAK,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IACjG,CAAC;IACD,IAAI,WAAW,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QAC3B,KAAK,GAAG,CAAC,GAAG,KAAK,EAAE,2BAA2B,CAAC,CAAA;IACjD,CAAC;IACD,KAAK,GAAG,CAAC,GAAG,KAAK,EAAE,EAAE,CAAC,CAAA;IAEtB,QAAQ;IACR,KAAK,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,cAAc,EAAE,CAAC;QAC7C,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC3C,MAAM,aAAa,GACjB,OAAO,CAAC,KAAK,KAAK,SAAS;YACzB,CAAC,CAAC,wBAAwB,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE;gBACpD,MAAM,IAAI,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;gBACvC,OAAO,OAAO,CAAC,KAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAClC,CAAC,CAAC;YACJ,CAAC,CAAC,KAAK,CAAA;QACX,MAAM,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,CAAA;QAE9G,KAAK,GAAG,CAAC,GAAG,KAAK,EAAE,eAAe,OAAO,GAAG,EAAE,GAAG,UAAU,CAAC,aAAa,EAAE,iBAAiB,EAAE,cAAc,CAAC,CAAC,CAAA;IAChH,CAAC;IACD,KAAK,GAAG,CAAC,GAAG,KAAK,EAAE,yDAAyD,EAAE,EAAE,CAAC,CAAA;IAEjF,SAAS;IACT,KAAK,GAAG,CAAC,GAAG,KAAK,EAAE,cAAc,CAAC,CAAA;IAClC,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,WAAW,EAAE,CAAC;QACxC,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC;aACrC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,KAAK,CAAC;aAClG,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;aACnC,IAAI,CAAC,IAAI,CAAC,CAAA;QACb,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;QACzE,MAAM,eAAe,GACnB,IAAI,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,yBAAyB,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;QACpG,MAAM,cAAc,GAClB,IAAI,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,wBAAwB,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;QACtG,KAAK,GAAG,CAAC,GAAG,KAAK,EAAE,MAAM,IAAI,CAAC,EAAE,GAAG,YAAY,GAAG,eAAe,GAAG,cAAc,EAAE,CAAC,CAAA;IACvF,CAAC;IACD,IAAI,WAAW,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QAC3B,KAAK,GAAG,CAAC,GAAG,KAAK,EAAE,oBAAoB,CAAC,CAAA;IAC1C,CAAC;IACD,KAAK,GAAG,CAAC,GAAG,KAAK,EAAE,EAAE,CAAC,CAAA;IAEtB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AAC/B,CAAC,CAAA"}
|
package/dist/effect/Effect.d.ts
CHANGED
|
@@ -1,27 +1,45 @@
|
|
|
1
1
|
import { type Context, Deferred, Duration, Effect, Scope, type Stream } from 'effect';
|
|
2
2
|
import type { UnknownException } from 'effect/Cause';
|
|
3
|
-
import { type LazyArg } from 'effect/Function';
|
|
4
3
|
import type { Predicate, Refinement } from 'effect/Predicate';
|
|
5
4
|
export * from 'effect/Effect';
|
|
5
|
+
export { spanEvent } from './spanEvent.ts';
|
|
6
6
|
/** Same as `Effect.scopeWith` but with a `CloseableScope` instead of a `Scope`. */
|
|
7
7
|
export declare const scopeWithCloseable: <R, E, A>(fn: (scope: Scope.CloseableScope) => Effect.Effect<A, E, R | Scope.Scope>) => Effect.Effect<A, E, R | Scope.Scope>;
|
|
8
8
|
export type SyncOrPromiseOrEffect<TResult, TError = never, TContext = never> = TResult | Promise<TResult> | Effect.Effect<TResult, TError, TContext>;
|
|
9
|
-
export declare const tryAll: <Res>(fn: () => Res) => Res extends Effect.Effect<infer A, infer E
|
|
9
|
+
export declare const tryAll: <Res>(fn: () => Res) => Res extends Effect.Effect<infer A, infer E> ? Effect.Effect<A, E | UnknownException> : Res extends Promise<infer A> ? Effect.Effect<A, UnknownException> : Effect.Effect<Res, UnknownException>;
|
|
10
10
|
export declare const acquireReleaseLog: (label: string) => Effect.Effect<void, never, Scope.Scope>;
|
|
11
11
|
export declare const addFinalizerLog: (...msgs: any[]) => Effect.Effect<void, never, Scope.Scope>;
|
|
12
12
|
export declare const logBefore: (...msgs: any[]) => <A, E, R>(eff: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>;
|
|
13
13
|
/** Logs both on errors and defects */
|
|
14
14
|
export declare const tapCauseLogPretty: <R, E, A>(eff: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>;
|
|
15
|
+
/**
|
|
16
|
+
* Creates a defect, pausing at a breakpoint in development.
|
|
17
|
+
*
|
|
18
|
+
* @param msg - The error message to include in the defect.
|
|
19
|
+
* @param args - Arbitrary arguments available for inspection during debugging.
|
|
20
|
+
*
|
|
21
|
+
* @see {@link shouldNeverHappen} for the non-Effect equivalent that throws synchronously.
|
|
22
|
+
* @see {@link orDieDebugger}
|
|
23
|
+
*/
|
|
24
|
+
export declare const dieDebugger: (msg: string, ...args: ReadonlyArray<unknown>) => Effect.Effect<never>;
|
|
25
|
+
/**
|
|
26
|
+
* Converts a failure into a defect, pausing at a breakpoint in development.
|
|
27
|
+
*
|
|
28
|
+
* @param self - The effect on which to apply the operation.
|
|
29
|
+
*
|
|
30
|
+
* @see {@link Effect.orDie}
|
|
31
|
+
* @see {@link dieDebugger}
|
|
32
|
+
*/
|
|
33
|
+
export declare const orDieDebugger: <A, E, R>(self: Effect.Effect<A, E, R>) => Effect.Effect<A, never, R>;
|
|
15
34
|
export declare const ignoreIf: {
|
|
16
35
|
<E, EB extends E>(refinement: Refinement<NoInfer<E>, EB>): <A, R>(self: Effect.Effect<A, E, R>) => Effect.Effect<void, Exclude<E, EB>, R>;
|
|
17
36
|
<E>(predicate: Predicate<NoInfer<E>>): <A, R>(self: Effect.Effect<A, E, R>) => Effect.Effect<void, E, R>;
|
|
18
37
|
<A, E, R, EB extends E>(self: Effect.Effect<A, E, R>, refinement: Refinement<E, EB>): Effect.Effect<void, Exclude<E, EB>, R>;
|
|
19
38
|
<A, E, R>(self: Effect.Effect<A, E, R>, predicate: Predicate<E>): Effect.Effect<void, E, R>;
|
|
20
39
|
};
|
|
21
|
-
export declare const eventListener: <TEvent = unknown>(target: Stream.EventListener<TEvent>, type: string, handler: (event: TEvent) => Effect.Effect<void
|
|
40
|
+
export declare const eventListener: <TEvent = unknown>(target: Stream.EventListener<TEvent>, type: string, handler: (event: TEvent) => Effect.Effect<void>, options?: {
|
|
22
41
|
once?: boolean;
|
|
23
42
|
}) => Effect.Effect<void, never, Scope.Scope>;
|
|
24
|
-
export declare const spanEvent: (message: any, attributes?: Record<string, any>) => Effect.Effect<void, never, never>;
|
|
25
43
|
export declare const logWarnIfTakesLongerThan: ({ label, duration }: {
|
|
26
44
|
label: string;
|
|
27
45
|
duration: Duration.DurationInput;
|
|
@@ -29,14 +47,56 @@ export declare const logWarnIfTakesLongerThan: ({ label, duration }: {
|
|
|
29
47
|
export declare const logDuration: (label: string) => <R, E, A>(eff: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>;
|
|
30
48
|
export declare const tapSync: <A>(tapFn: (a: A) => unknown) => <R, E>(eff: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>;
|
|
31
49
|
export declare const debugLogEnv: (msg?: string) => Effect.Effect<Context.Context<never>>;
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
50
|
+
/**
|
|
51
|
+
* Enforces a time limit on an effect, triggering a defect on timeout.
|
|
52
|
+
*
|
|
53
|
+
* @remarks
|
|
54
|
+
*
|
|
55
|
+
* This function allows you to enforce a time limit on the execution of an
|
|
56
|
+
* effect. If the effect does not complete within the given duration, it dies
|
|
57
|
+
* with a {@link Cause.TimeoutException} as an unchecked defect. Unlike
|
|
58
|
+
* {@link Effect.timeout}, which adds `TimeoutException` to the error channel,
|
|
59
|
+
* this function keeps the error channel unchanged by treating the timeout as
|
|
60
|
+
* a defect.
|
|
61
|
+
*
|
|
62
|
+
* The returned effect will either:
|
|
63
|
+
* - Succeed with the original effect's result if it completes within the
|
|
64
|
+
* specified duration.
|
|
65
|
+
* - Die with a {@link Cause.TimeoutException} defect if the time limit is exceeded.
|
|
66
|
+
*
|
|
67
|
+
* @see {@link timeoutOrDieMessage} for a version with a custom message.
|
|
68
|
+
* @see {@link Effect.timeout} for a version that raises a `TimeoutException` as a typed error.
|
|
69
|
+
* @see {@link Effect.timeoutFailCause} for a version that raises a custom defect.
|
|
70
|
+
*/
|
|
71
|
+
export declare const timeoutOrDie: (duration: Duration.DurationInput) => <A, E, R>(self: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>;
|
|
72
|
+
/**
|
|
73
|
+
* Enforces a time limit on an effect, triggering a defect with a custom
|
|
74
|
+
* message on timeout.
|
|
75
|
+
*
|
|
76
|
+
* @remarks
|
|
77
|
+
*
|
|
78
|
+
* This function behaves like {@link timeoutOrDie}, but allows you to provide
|
|
79
|
+
* a custom message for the {@link Cause.TimeoutException} defect. This is useful
|
|
80
|
+
* for adding context about which operation timed out, making it easier to
|
|
81
|
+
* diagnose issues in logs or error reports.
|
|
82
|
+
*
|
|
83
|
+
* The returned effect will either:
|
|
84
|
+
* - Succeed with the original effect's result if it completes within the
|
|
85
|
+
* specified duration.
|
|
86
|
+
* - Die with a {@link Cause.TimeoutException} defect containing the provided
|
|
87
|
+
* message if the time limit is exceeded.
|
|
88
|
+
*
|
|
89
|
+
* @see {@link timeoutOrDie} for a version without a custom message.
|
|
90
|
+
* @see {@link Effect.timeout} for a version that raises a `TimeoutException` as a typed error.
|
|
91
|
+
* @see {@link Effect.timeoutFailCause} for a version that raises a custom defect.
|
|
92
|
+
*/
|
|
93
|
+
export declare const timeoutOrDieMessage: (duration: Duration.DurationInput, message: string) => <A, E, R>(self: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>;
|
|
40
94
|
export declare const toForkedDeferred: <R, E, A>(eff: Effect.Effect<A, E, R>) => Effect.Effect<Deferred.Deferred<A, E>, never, R | Scope.Scope>;
|
|
41
95
|
export declare const withPerformanceMeasure: (meaureLabel: string) => <R, E, A>(eff: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>;
|
|
96
|
+
declare global {
|
|
97
|
+
/** Debug helper: returns the current Effect span trace */
|
|
98
|
+
var getSpanTrace: () => string;
|
|
99
|
+
/** Debug helper: logs the current Effect span trace */
|
|
100
|
+
var logSpanTrace: () => void;
|
|
101
|
+
}
|
|
42
102
|
//# sourceMappingURL=Effect.d.ts.map
|