@typed/fx 0.0.1
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/.editorconfig +14 -0
- package/.eslintcache +1 -0
- package/.eslintrc.cjs +60 -0
- package/.huskyrc +5 -0
- package/.lintstagedrc +5 -0
- package/.mocharc.json +6 -0
- package/.nvmrc +1 -0
- package/.pnpm-debug.log +20 -0
- package/.prettierrc.cjs +11 -0
- package/.tracing-plugin/plugin.cjs +100 -0
- package/.tracing-plugin/plugin.d.ts +10 -0
- package/.tracing-plugin/plugin.d.ts.map +1 -0
- package/.tracing-plugin/plugin.js.map +1 -0
- package/.tracing-plugin/vite.d.ts +10 -0
- package/.tracing-plugin/vite.d.ts.map +1 -0
- package/.tracing-plugin/vite.js +54 -0
- package/.tracing-plugin/vite.js.map +1 -0
- package/.vscode/settings.json +7 -0
- package/cjs/Atomic/Atomic.d.ts +56 -0
- package/cjs/Atomic/Atomic.d.ts.map +1 -0
- package/cjs/Atomic/Atomic.js +92 -0
- package/cjs/Atomic/Atomic.js.map +1 -0
- package/cjs/Atomic/AtomicCounter.d.ts +10 -0
- package/cjs/Atomic/AtomicCounter.d.ts.map +1 -0
- package/cjs/Atomic/AtomicCounter.js +14 -0
- package/cjs/Atomic/AtomicCounter.js.map +1 -0
- package/cjs/Atomic/index.d.ts +3 -0
- package/cjs/Atomic/index.d.ts.map +1 -0
- package/cjs/Atomic/index.js +19 -0
- package/cjs/Atomic/index.js.map +1 -0
- package/cjs/Cause/Cause.d.ts +169 -0
- package/cjs/Cause/Cause.d.ts.map +1 -0
- package/cjs/Cause/Cause.js +344 -0
- package/cjs/Cause/Cause.js.map +1 -0
- package/cjs/Cause/CauseError.d.ts +13 -0
- package/cjs/Cause/CauseError.d.ts.map +1 -0
- package/cjs/Cause/CauseError.js +73 -0
- package/cjs/Cause/CauseError.js.map +1 -0
- package/cjs/Cause/Renderer.d.ts +47 -0
- package/cjs/Cause/Renderer.d.ts.map +1 -0
- package/cjs/Cause/Renderer.js +235 -0
- package/cjs/Cause/Renderer.js.map +1 -0
- package/cjs/Cause/index.d.ts +2 -0
- package/cjs/Cause/index.d.ts.map +1 -0
- package/cjs/Cause/index.js +18 -0
- package/cjs/Cause/index.js.map +1 -0
- package/cjs/Cause/prettyStringify.d.ts +2 -0
- package/cjs/Cause/prettyStringify.d.ts.map +1 -0
- package/cjs/Cause/prettyStringify.js +11 -0
- package/cjs/Cause/prettyStringify.js.map +1 -0
- package/cjs/Clock/Clock.d.ts +26 -0
- package/cjs/Clock/Clock.d.ts.map +1 -0
- package/cjs/Clock/Clock.js +87 -0
- package/cjs/Clock/Clock.js.map +1 -0
- package/cjs/Clock/DateClock.d.ts +3 -0
- package/cjs/Clock/DateClock.d.ts.map +1 -0
- package/cjs/Clock/DateClock.js +11 -0
- package/cjs/Clock/DateClock.js.map +1 -0
- package/cjs/Clock/TestClock.d.ts +11 -0
- package/cjs/Clock/TestClock.d.ts.map +1 -0
- package/cjs/Clock/TestClock.js +19 -0
- package/cjs/Clock/TestClock.js.map +1 -0
- package/cjs/Clock/index.d.ts +4 -0
- package/cjs/Clock/index.d.ts.map +1 -0
- package/cjs/Clock/index.js +20 -0
- package/cjs/Clock/index.js.map +1 -0
- package/cjs/Disposable/Disposable.d.ts +25 -0
- package/cjs/Disposable/Disposable.d.ts.map +1 -0
- package/cjs/Disposable/Disposable.js +46 -0
- package/cjs/Disposable/Disposable.js.map +1 -0
- package/cjs/Disposable/index.d.ts +2 -0
- package/cjs/Disposable/index.d.ts.map +1 -0
- package/cjs/Disposable/index.js +18 -0
- package/cjs/Disposable/index.js.map +1 -0
- package/cjs/Duration/Duration.d.ts +27 -0
- package/cjs/Duration/Duration.d.ts.map +1 -0
- package/cjs/Duration/Duration.js +119 -0
- package/cjs/Duration/Duration.js.map +1 -0
- package/cjs/Duration/index.d.ts +2 -0
- package/cjs/Duration/index.d.ts.map +1 -0
- package/cjs/Duration/index.js +18 -0
- package/cjs/Duration/index.js.map +1 -0
- package/cjs/Env/Env.d.ts +8 -0
- package/cjs/Env/Env.d.ts.map +1 -0
- package/cjs/Env/Env.js +64 -0
- package/cjs/Env/Env.js.map +1 -0
- package/cjs/Env/index.d.ts +2 -0
- package/cjs/Env/index.d.ts.map +1 -0
- package/cjs/Env/index.js +18 -0
- package/cjs/Env/index.js.map +1 -0
- package/cjs/Exit/Exit.d.ts +21 -0
- package/cjs/Exit/Exit.d.ts.map +1 -0
- package/cjs/Exit/Exit.js +54 -0
- package/cjs/Exit/Exit.js.map +1 -0
- package/cjs/Exit/hkt.d.ts +17 -0
- package/cjs/Exit/hkt.d.ts.map +1 -0
- package/cjs/Exit/hkt.js +45 -0
- package/cjs/Exit/hkt.js.map +1 -0
- package/cjs/Exit/index.d.ts +3 -0
- package/cjs/Exit/index.d.ts.map +1 -0
- package/cjs/Exit/index.js +19 -0
- package/cjs/Exit/index.js.map +1 -0
- package/cjs/Fiber/Fiber.d.ts +36 -0
- package/cjs/Fiber/Fiber.d.ts.map +1 -0
- package/cjs/Fiber/Fiber.js +36 -0
- package/cjs/Fiber/Fiber.js.map +1 -0
- package/cjs/Fiber/index.d.ts +2 -0
- package/cjs/Fiber/index.d.ts.map +1 -0
- package/cjs/Fiber/index.js +18 -0
- package/cjs/Fiber/index.js.map +1 -0
- package/cjs/FiberContext/FiberContext.d.ts +22 -0
- package/cjs/FiberContext/FiberContext.d.ts.map +1 -0
- package/cjs/FiberContext/FiberContext.js +64 -0
- package/cjs/FiberContext/FiberContext.js.map +1 -0
- package/cjs/FiberContext/index.d.ts +2 -0
- package/cjs/FiberContext/index.d.ts.map +1 -0
- package/cjs/FiberContext/index.js +18 -0
- package/cjs/FiberContext/index.js.map +1 -0
- package/cjs/FiberId/FiberId.d.ts +46 -0
- package/cjs/FiberId/FiberId.d.ts.map +1 -0
- package/cjs/FiberId/FiberId.js +122 -0
- package/cjs/FiberId/FiberId.js.map +1 -0
- package/cjs/FiberId/index.d.ts +2 -0
- package/cjs/FiberId/index.d.ts.map +1 -0
- package/cjs/FiberId/index.js +18 -0
- package/cjs/FiberId/index.js.map +1 -0
- package/cjs/FiberRef/FiberRef.d.ts +38 -0
- package/cjs/FiberRef/FiberRef.d.ts.map +1 -0
- package/cjs/FiberRef/FiberRef.js +57 -0
- package/cjs/FiberRef/FiberRef.js.map +1 -0
- package/cjs/FiberRef/index.d.ts +3 -0
- package/cjs/FiberRef/index.d.ts.map +1 -0
- package/cjs/FiberRef/index.js +20 -0
- package/cjs/FiberRef/index.js.map +1 -0
- package/cjs/FiberRef/operations.d.ts +9 -0
- package/cjs/FiberRef/operations.d.ts.map +1 -0
- package/cjs/FiberRef/operations.js +20 -0
- package/cjs/FiberRef/operations.js.map +1 -0
- package/cjs/FiberRefs/FiberRefs.d.ts +19 -0
- package/cjs/FiberRefs/FiberRefs.d.ts.map +1 -0
- package/cjs/FiberRefs/FiberRefs.js +130 -0
- package/cjs/FiberRefs/FiberRefs.js.map +1 -0
- package/cjs/FiberRefs/index.d.ts +2 -0
- package/cjs/FiberRefs/index.d.ts.map +1 -0
- package/cjs/FiberRefs/index.js +18 -0
- package/cjs/FiberRefs/index.js.map +1 -0
- package/cjs/FiberRuntime/FiberRuntime.d.ts +154 -0
- package/cjs/FiberRuntime/FiberRuntime.d.ts.map +1 -0
- package/cjs/FiberRuntime/FiberRuntime.js +506 -0
- package/cjs/FiberRuntime/FiberRuntime.js.map +1 -0
- package/cjs/FiberRuntime/Frame.d.ts +14 -0
- package/cjs/FiberRuntime/Frame.d.ts.map +1 -0
- package/cjs/FiberRuntime/Frame.js +18 -0
- package/cjs/FiberRuntime/Frame.js.map +1 -0
- package/cjs/FiberRuntime/index.d.ts +2 -0
- package/cjs/FiberRuntime/index.d.ts.map +1 -0
- package/cjs/FiberRuntime/index.js +18 -0
- package/cjs/FiberRuntime/index.js.map +1 -0
- package/cjs/FiberStatus/index.d.ts +19 -0
- package/cjs/FiberStatus/index.d.ts.map +1 -0
- package/cjs/FiberStatus/index.js +24 -0
- package/cjs/FiberStatus/index.js.map +1 -0
- package/cjs/Finalizer/Finalizer.d.ts +39 -0
- package/cjs/Finalizer/Finalizer.d.ts.map +1 -0
- package/cjs/Finalizer/Finalizer.js +24 -0
- package/cjs/Finalizer/Finalizer.js.map +1 -0
- package/cjs/Finalizer/index.d.ts +2 -0
- package/cjs/Finalizer/index.d.ts.map +1 -0
- package/cjs/Finalizer/index.js +18 -0
- package/cjs/Finalizer/index.js.map +1 -0
- package/cjs/Future/Future.d.ts +23 -0
- package/cjs/Future/Future.d.ts.map +1 -0
- package/cjs/Future/Future.js +42 -0
- package/cjs/Future/Future.js.map +1 -0
- package/cjs/Future/MutableFutureQueue.d.ts +16 -0
- package/cjs/Future/MutableFutureQueue.d.ts.map +1 -0
- package/cjs/Future/MutableFutureQueue.js +40 -0
- package/cjs/Future/MutableFutureQueue.js.map +1 -0
- package/cjs/Future/complete.d.ts +4 -0
- package/cjs/Future/complete.d.ts.map +1 -0
- package/cjs/Future/complete.js +14 -0
- package/cjs/Future/complete.js.map +1 -0
- package/cjs/Future/index.d.ts +4 -0
- package/cjs/Future/index.d.ts.map +1 -0
- package/cjs/Future/index.js +20 -0
- package/cjs/Future/index.js.map +1 -0
- package/cjs/Future/wait.d.ts +4 -0
- package/cjs/Future/wait.d.ts.map +1 -0
- package/cjs/Future/wait.js +9 -0
- package/cjs/Future/wait.js.map +1 -0
- package/cjs/Fx/Fx.d.ts +136 -0
- package/cjs/Fx/Fx.d.ts.map +1 -0
- package/cjs/Fx/Fx.js +247 -0
- package/cjs/Fx/Fx.js.map +1 -0
- package/cjs/Fx/Instruction.d.ts +202 -0
- package/cjs/Fx/Instruction.d.ts.map +1 -0
- package/cjs/Fx/Instruction.js +387 -0
- package/cjs/Fx/Instruction.js.map +1 -0
- package/cjs/Fx/index.d.ts +5 -0
- package/cjs/Fx/index.d.ts.map +1 -0
- package/cjs/Fx/index.js +21 -0
- package/cjs/Fx/index.js.map +1 -0
- package/cjs/Fx/join.d.ts +4 -0
- package/cjs/Fx/join.d.ts.map +1 -0
- package/cjs/Fx/join.js +39 -0
- package/cjs/Fx/join.js.map +1 -0
- package/cjs/Fx/logging.d.ts +11 -0
- package/cjs/Fx/logging.d.ts.map +1 -0
- package/cjs/Fx/logging.js +45 -0
- package/cjs/Fx/logging.js.map +1 -0
- package/cjs/Fx/scoped.d.ts +20 -0
- package/cjs/Fx/scoped.d.ts.map +1 -0
- package/cjs/Fx/scoped.js +52 -0
- package/cjs/Fx/scoped.js.map +1 -0
- package/cjs/ImmutableMap/ImmutableMap.d.ts +15 -0
- package/cjs/ImmutableMap/ImmutableMap.d.ts.map +1 -0
- package/cjs/ImmutableMap/ImmutableMap.js +39 -0
- package/cjs/ImmutableMap/ImmutableMap.js.map +1 -0
- package/cjs/ImmutableMap/index.d.ts +2 -0
- package/cjs/ImmutableMap/index.d.ts.map +1 -0
- package/cjs/ImmutableMap/index.js +18 -0
- package/cjs/ImmutableMap/index.js.map +1 -0
- package/cjs/Layer/Layer.d.ts +14 -0
- package/cjs/Layer/Layer.d.ts.map +1 -0
- package/cjs/Layer/Layer.js +42 -0
- package/cjs/Layer/Layer.js.map +1 -0
- package/cjs/Layer/index.d.ts +2 -0
- package/cjs/Layer/index.d.ts.map +1 -0
- package/cjs/Layer/index.js +18 -0
- package/cjs/Layer/index.js.map +1 -0
- package/cjs/Logger/Console.d.ts +3 -0
- package/cjs/Logger/Console.d.ts.map +1 -0
- package/cjs/Logger/Console.js +75 -0
- package/cjs/Logger/Console.js.map +1 -0
- package/cjs/Logger/LogAnnotation.d.ts +6 -0
- package/cjs/Logger/LogAnnotation.d.ts.map +1 -0
- package/cjs/Logger/LogAnnotation.js +8 -0
- package/cjs/Logger/LogAnnotation.js.map +1 -0
- package/cjs/Logger/LogLevel.d.ts +11 -0
- package/cjs/Logger/LogLevel.d.ts.map +1 -0
- package/cjs/Logger/LogLevel.js +15 -0
- package/cjs/Logger/LogLevel.js.map +1 -0
- package/cjs/Logger/LogSpan.d.ts +7 -0
- package/cjs/Logger/LogSpan.d.ts.map +1 -0
- package/cjs/Logger/LogSpan.js +8 -0
- package/cjs/Logger/LogSpan.js.map +1 -0
- package/cjs/Logger/Logger.d.ts +31 -0
- package/cjs/Logger/Logger.d.ts.map +1 -0
- package/cjs/Logger/Logger.js +66 -0
- package/cjs/Logger/Logger.js.map +1 -0
- package/cjs/Logger/index.d.ts +2 -0
- package/cjs/Logger/index.d.ts.map +1 -0
- package/cjs/Logger/index.js +18 -0
- package/cjs/Logger/index.js.map +1 -0
- package/cjs/Platform/Platform.d.ts +14 -0
- package/cjs/Platform/Platform.d.ts.map +1 -0
- package/cjs/Platform/Platform.js +47 -0
- package/cjs/Platform/Platform.js.map +1 -0
- package/cjs/Platform/TestPlatform.d.ts +7 -0
- package/cjs/Platform/TestPlatform.d.ts.map +1 -0
- package/cjs/Platform/TestPlatform.js +13 -0
- package/cjs/Platform/TestPlatform.js.map +1 -0
- package/cjs/Platform/index.d.ts +3 -0
- package/cjs/Platform/index.d.ts.map +1 -0
- package/cjs/Platform/index.js +19 -0
- package/cjs/Platform/index.js.map +1 -0
- package/cjs/Ref/Ref.d.ts +40 -0
- package/cjs/Ref/Ref.d.ts.map +1 -0
- package/cjs/Ref/Ref.js +57 -0
- package/cjs/Ref/Ref.js.map +1 -0
- package/cjs/Ref/atomic.d.ts +5 -0
- package/cjs/Ref/atomic.d.ts.map +1 -0
- package/cjs/Ref/atomic.js +20 -0
- package/cjs/Ref/atomic.js.map +1 -0
- package/cjs/Ref/index.d.ts +3 -0
- package/cjs/Ref/index.d.ts.map +1 -0
- package/cjs/Ref/index.js +19 -0
- package/cjs/Ref/index.js.map +1 -0
- package/cjs/Schedule/Decision.d.ts +15 -0
- package/cjs/Schedule/Decision.d.ts.map +1 -0
- package/cjs/Schedule/Decision.js +38 -0
- package/cjs/Schedule/Decision.js.map +1 -0
- package/cjs/Schedule/Schedule.d.ts +30 -0
- package/cjs/Schedule/Schedule.d.ts.map +1 -0
- package/cjs/Schedule/Schedule.js +78 -0
- package/cjs/Schedule/Schedule.js.map +1 -0
- package/cjs/Schedule/ScheduleState.d.ts +45 -0
- package/cjs/Schedule/ScheduleState.d.ts.map +1 -0
- package/cjs/Schedule/ScheduleState.js +58 -0
- package/cjs/Schedule/ScheduleState.js.map +1 -0
- package/cjs/Schedule/index.d.ts +4 -0
- package/cjs/Schedule/index.d.ts.map +1 -0
- package/cjs/Schedule/index.js +20 -0
- package/cjs/Schedule/index.js.map +1 -0
- package/cjs/Scheduler/RootScheduler.d.ts +4 -0
- package/cjs/Scheduler/RootScheduler.d.ts.map +1 -0
- package/cjs/Scheduler/RootScheduler.js +57 -0
- package/cjs/Scheduler/RootScheduler.js.map +1 -0
- package/cjs/Scheduler/Scheduler.d.ts +14 -0
- package/cjs/Scheduler/Scheduler.d.ts.map +1 -0
- package/cjs/Scheduler/Scheduler.js +6 -0
- package/cjs/Scheduler/Scheduler.js.map +1 -0
- package/cjs/Scheduler/callbackScheduler.d.ts +5 -0
- package/cjs/Scheduler/callbackScheduler.d.ts.map +1 -0
- package/cjs/Scheduler/callbackScheduler.js +59 -0
- package/cjs/Scheduler/callbackScheduler.js.map +1 -0
- package/cjs/Scheduler/index.d.ts +1 -0
- package/cjs/Scheduler/index.d.ts.map +1 -0
- package/cjs/Scheduler/index.js +2 -0
- package/cjs/Scheduler/index.js.map +1 -0
- package/cjs/Scheduler/scheduled.d.ts +10 -0
- package/cjs/Scheduler/scheduled.d.ts.map +1 -0
- package/cjs/Scheduler/scheduled.js +25 -0
- package/cjs/Scheduler/scheduled.js.map +1 -0
- package/cjs/Scope/Closeable.d.ts +11 -0
- package/cjs/Scope/Closeable.d.ts.map +1 -0
- package/cjs/Scope/Closeable.js +25 -0
- package/cjs/Scope/Closeable.js.map +1 -0
- package/cjs/Scope/GlobalScope.d.ts +3 -0
- package/cjs/Scope/GlobalScope.d.ts.map +1 -0
- package/cjs/Scope/GlobalScope.js +15 -0
- package/cjs/Scope/GlobalScope.js.map +1 -0
- package/cjs/Scope/LocalScope.d.ts +24 -0
- package/cjs/Scope/LocalScope.d.ts.map +1 -0
- package/cjs/Scope/LocalScope.js +97 -0
- package/cjs/Scope/LocalScope.js.map +1 -0
- package/cjs/Scope/ReleaseMap.d.ts +19 -0
- package/cjs/Scope/ReleaseMap.d.ts.map +1 -0
- package/cjs/Scope/ReleaseMap.js +66 -0
- package/cjs/Scope/ReleaseMap.js.map +1 -0
- package/cjs/Scope/Scope.d.ts +11 -0
- package/cjs/Scope/Scope.d.ts.map +1 -0
- package/cjs/Scope/Scope.js +6 -0
- package/cjs/Scope/Scope.js.map +1 -0
- package/cjs/Scope/ScopeState.d.ts +19 -0
- package/cjs/Scope/ScopeState.d.ts.map +1 -0
- package/cjs/Scope/ScopeState.js +30 -0
- package/cjs/Scope/ScopeState.js.map +1 -0
- package/cjs/Scope/index.d.ts +7 -0
- package/cjs/Scope/index.d.ts.map +1 -0
- package/cjs/Scope/index.js +23 -0
- package/cjs/Scope/index.js.map +1 -0
- package/cjs/Semaphore/Semaphore.d.ts +38 -0
- package/cjs/Semaphore/Semaphore.d.ts.map +1 -0
- package/cjs/Semaphore/Semaphore.js +96 -0
- package/cjs/Semaphore/Semaphore.js.map +1 -0
- package/cjs/Semaphore/index.d.ts +2 -0
- package/cjs/Semaphore/index.d.ts.map +1 -0
- package/cjs/Semaphore/index.js +18 -0
- package/cjs/Semaphore/index.js.map +1 -0
- package/cjs/Service/Id.d.ts +59 -0
- package/cjs/Service/Id.d.ts.map +1 -0
- package/cjs/Service/Id.js +90 -0
- package/cjs/Service/Id.js.map +1 -0
- package/cjs/Service/Service.d.ts +20 -0
- package/cjs/Service/Service.d.ts.map +1 -0
- package/cjs/Service/Service.js +19 -0
- package/cjs/Service/Service.js.map +1 -0
- package/cjs/Service/index.d.ts +4 -0
- package/cjs/Service/index.d.ts.map +1 -0
- package/cjs/Service/index.js +20 -0
- package/cjs/Service/index.js.map +1 -0
- package/cjs/Service/tagged.d.ts +23 -0
- package/cjs/Service/tagged.d.ts.map +1 -0
- package/cjs/Service/tagged.js +13 -0
- package/cjs/Service/tagged.js.map +1 -0
- package/cjs/Sink/Sink.d.ts +22 -0
- package/cjs/Sink/Sink.d.ts.map +1 -0
- package/cjs/Sink/Sink.js +31 -0
- package/cjs/Sink/Sink.js.map +1 -0
- package/cjs/Sink/index.d.ts +1 -0
- package/cjs/Sink/index.d.ts.map +1 -0
- package/cjs/Sink/index.js +2 -0
- package/cjs/Sink/index.js.map +1 -0
- package/cjs/Stack/index.d.ts +20 -0
- package/cjs/Stack/index.d.ts.map +1 -0
- package/cjs/Stack/index.js +103 -0
- package/cjs/Stack/index.js.map +1 -0
- package/cjs/StackFrame/StackFrame.d.ts +29 -0
- package/cjs/StackFrame/StackFrame.d.ts.map +1 -0
- package/cjs/StackFrame/StackFrame.js +61 -0
- package/cjs/StackFrame/StackFrame.js.map +1 -0
- package/cjs/StackFrame/getStackFrames.d.ts +7 -0
- package/cjs/StackFrame/getStackFrames.d.ts.map +1 -0
- package/cjs/StackFrame/getStackFrames.js +56 -0
- package/cjs/StackFrame/getStackFrames.js.map +1 -0
- package/cjs/StackFrame/index.d.ts +3 -0
- package/cjs/StackFrame/index.d.ts.map +1 -0
- package/cjs/StackFrame/index.js +19 -0
- package/cjs/StackFrame/index.js.map +1 -0
- package/cjs/StackFrame/parseChromeStack.d.ts +3 -0
- package/cjs/StackFrame/parseChromeStack.d.ts.map +1 -0
- package/cjs/StackFrame/parseChromeStack.js +36 -0
- package/cjs/StackFrame/parseChromeStack.js.map +1 -0
- package/cjs/StackFrame/parseGeckoStackFrame.d.ts +3 -0
- package/cjs/StackFrame/parseGeckoStackFrame.d.ts.map +1 -0
- package/cjs/StackFrame/parseGeckoStackFrame.js +28 -0
- package/cjs/StackFrame/parseGeckoStackFrame.js.map +1 -0
- package/cjs/Stream/Stream.d.ts +18 -0
- package/cjs/Stream/Stream.d.ts.map +1 -0
- package/cjs/Stream/Stream.js +8 -0
- package/cjs/Stream/Stream.js.map +1 -0
- package/cjs/Stream/drain.d.ts +11 -0
- package/cjs/Stream/drain.d.ts.map +1 -0
- package/cjs/Stream/drain.js +51 -0
- package/cjs/Stream/drain.js.map +1 -0
- package/cjs/Stream/fromFx.d.ts +4 -0
- package/cjs/Stream/fromFx.d.ts.map +1 -0
- package/cjs/Stream/fromFx.js +34 -0
- package/cjs/Stream/fromFx.js.map +1 -0
- package/cjs/Stream/index.d.ts +4 -0
- package/cjs/Stream/index.d.ts.map +1 -0
- package/cjs/Stream/index.js +20 -0
- package/cjs/Stream/index.js.map +1 -0
- package/cjs/Supervisor/Supervisor.d.ts +32 -0
- package/cjs/Supervisor/Supervisor.d.ts.map +1 -0
- package/cjs/Supervisor/Supervisor.js +46 -0
- package/cjs/Supervisor/Supervisor.js.map +1 -0
- package/cjs/Supervisor/index.d.ts +2 -0
- package/cjs/Supervisor/index.d.ts.map +1 -0
- package/cjs/Supervisor/index.js +18 -0
- package/cjs/Supervisor/index.js.map +1 -0
- package/cjs/Tagged/index.d.ts +79 -0
- package/cjs/Tagged/index.d.ts.map +1 -0
- package/cjs/Tagged/index.js +71 -0
- package/cjs/Tagged/index.js.map +1 -0
- package/cjs/Time/index.d.ts +95 -0
- package/cjs/Time/index.d.ts.map +1 -0
- package/cjs/Time/index.js +59 -0
- package/cjs/Time/index.js.map +1 -0
- package/cjs/Timeline/index.d.ts +27 -0
- package/cjs/Timeline/index.d.ts.map +1 -0
- package/cjs/Timeline/index.js +102 -0
- package/cjs/Timeline/index.js.map +1 -0
- package/cjs/Timer/SetTimeoutTimer.d.ts +4 -0
- package/cjs/Timer/SetTimeoutTimer.d.ts.map +1 -0
- package/cjs/Timer/SetTimeoutTimer.js +18 -0
- package/cjs/Timer/SetTimeoutTimer.js.map +1 -0
- package/cjs/Timer/TestTimer.d.ts +9 -0
- package/cjs/Timer/TestTimer.d.ts.map +1 -0
- package/cjs/Timer/TestTimer.js +52 -0
- package/cjs/Timer/TestTimer.js.map +1 -0
- package/cjs/Timer/Timer.d.ts +11 -0
- package/cjs/Timer/Timer.d.ts.map +1 -0
- package/cjs/Timer/Timer.js +44 -0
- package/cjs/Timer/Timer.js.map +1 -0
- package/cjs/Timer/index.d.ts +4 -0
- package/cjs/Timer/index.d.ts.map +1 -0
- package/cjs/Timer/index.js +20 -0
- package/cjs/Timer/index.js.map +1 -0
- package/cjs/Trace/Trace.d.ts +38 -0
- package/cjs/Trace/Trace.d.ts.map +1 -0
- package/cjs/Trace/Trace.js +183 -0
- package/cjs/Trace/Trace.js.map +1 -0
- package/cjs/Trace/index.d.ts +2 -0
- package/cjs/Trace/index.d.ts.map +1 -0
- package/cjs/Trace/index.js +18 -0
- package/cjs/Trace/index.js.map +1 -0
- package/cjs/Tracing/plugin.d.ts +10 -0
- package/cjs/Tracing/plugin.d.ts.map +1 -0
- package/cjs/Tracing/plugin.js +100 -0
- package/cjs/Tracing/plugin.js.map +1 -0
- package/cjs/Tracing/vite.d.ts +10 -0
- package/cjs/Tracing/vite.d.ts.map +1 -0
- package/cjs/Tracing/vite.js +54 -0
- package/cjs/Tracing/vite.js.map +1 -0
- package/cjs/index.d.ts +35 -0
- package/cjs/index.d.ts.map +1 -0
- package/cjs/index.js +64 -0
- package/cjs/index.js.map +1 -0
- package/cjs/internal.d.ts +18 -0
- package/cjs/internal.d.ts.map +1 -0
- package/cjs/internal.js +3 -0
- package/cjs/internal.js.map +1 -0
- package/cjs/test.d.ts +1 -0
- package/cjs/test.d.ts.map +1 -0
- package/cjs/test.js +2 -0
- package/cjs/test.js.map +1 -0
- package/coverage/tmp/coverage-74826-1660784295157-0.json +1 -0
- package/coverage/tmp/coverage-74830-1660784295115-0.json +1 -0
- package/coverage/tmp/coverage-74836-1660784295074-0.json +1 -0
- package/esm/Atomic/Atomic.d.ts +56 -0
- package/esm/Atomic/Atomic.d.ts.map +1 -0
- package/esm/Atomic/Atomic.js +79 -0
- package/esm/Atomic/Atomic.js.map +1 -0
- package/esm/Atomic/AtomicCounter.d.ts +10 -0
- package/esm/Atomic/AtomicCounter.d.ts.map +1 -0
- package/esm/Atomic/AtomicCounter.js +10 -0
- package/esm/Atomic/AtomicCounter.js.map +1 -0
- package/esm/Atomic/index.d.ts +3 -0
- package/esm/Atomic/index.d.ts.map +1 -0
- package/esm/Atomic/index.js +3 -0
- package/esm/Atomic/index.js.map +1 -0
- package/esm/Cause/Cause.d.ts +169 -0
- package/esm/Cause/Cause.d.ts.map +1 -0
- package/esm/Cause/Cause.js +296 -0
- package/esm/Cause/Cause.js.map +1 -0
- package/esm/Cause/CauseError.d.ts +13 -0
- package/esm/Cause/CauseError.d.ts.map +1 -0
- package/esm/Cause/CauseError.js +44 -0
- package/esm/Cause/CauseError.js.map +1 -0
- package/esm/Cause/Renderer.d.ts +47 -0
- package/esm/Cause/Renderer.d.ts.map +1 -0
- package/esm/Cause/Renderer.js +191 -0
- package/esm/Cause/Renderer.js.map +1 -0
- package/esm/Cause/index.d.ts +2 -0
- package/esm/Cause/index.d.ts.map +1 -0
- package/esm/Cause/index.js +2 -0
- package/esm/Cause/index.js.map +1 -0
- package/esm/Cause/prettyStringify.d.ts +2 -0
- package/esm/Cause/prettyStringify.d.ts.map +1 -0
- package/esm/Cause/prettyStringify.js +7 -0
- package/esm/Cause/prettyStringify.js.map +1 -0
- package/esm/Clock/Clock.d.ts +26 -0
- package/esm/Clock/Clock.d.ts.map +1 -0
- package/esm/Clock/Clock.js +50 -0
- package/esm/Clock/Clock.js.map +1 -0
- package/esm/Clock/DateClock.d.ts +3 -0
- package/esm/Clock/DateClock.d.ts.map +1 -0
- package/esm/Clock/DateClock.js +7 -0
- package/esm/Clock/DateClock.js.map +1 -0
- package/esm/Clock/TestClock.d.ts +11 -0
- package/esm/Clock/TestClock.d.ts.map +1 -0
- package/esm/Clock/TestClock.js +15 -0
- package/esm/Clock/TestClock.js.map +1 -0
- package/esm/Clock/index.d.ts +4 -0
- package/esm/Clock/index.d.ts.map +1 -0
- package/esm/Clock/index.js +4 -0
- package/esm/Clock/index.js.map +1 -0
- package/esm/Disposable/Disposable.d.ts +25 -0
- package/esm/Disposable/Disposable.d.ts.map +1 -0
- package/esm/Disposable/Disposable.js +39 -0
- package/esm/Disposable/Disposable.js.map +1 -0
- package/esm/Disposable/index.d.ts +2 -0
- package/esm/Disposable/index.d.ts.map +1 -0
- package/esm/Disposable/index.js +2 -0
- package/esm/Disposable/index.js.map +1 -0
- package/esm/Duration/Duration.d.ts +27 -0
- package/esm/Duration/Duration.d.ts.map +1 -0
- package/esm/Duration/Duration.js +106 -0
- package/esm/Duration/Duration.js.map +1 -0
- package/esm/Duration/index.d.ts +2 -0
- package/esm/Duration/index.d.ts.map +1 -0
- package/esm/Duration/index.js +2 -0
- package/esm/Duration/index.js.map +1 -0
- package/esm/Env/Env.d.ts +8 -0
- package/esm/Env/Env.d.ts.map +1 -0
- package/esm/Env/Env.js +37 -0
- package/esm/Env/Env.js.map +1 -0
- package/esm/Env/index.d.ts +2 -0
- package/esm/Env/index.d.ts.map +1 -0
- package/esm/Env/index.js +2 -0
- package/esm/Env/index.js.map +1 -0
- package/esm/Exit/Exit.d.ts +21 -0
- package/esm/Exit/Exit.d.ts.map +1 -0
- package/esm/Exit/Exit.js +16 -0
- package/esm/Exit/Exit.js.map +1 -0
- package/esm/Exit/hkt.d.ts +17 -0
- package/esm/Exit/hkt.d.ts.map +1 -0
- package/esm/Exit/hkt.js +19 -0
- package/esm/Exit/hkt.js.map +1 -0
- package/esm/Exit/index.d.ts +3 -0
- package/esm/Exit/index.d.ts.map +1 -0
- package/esm/Exit/index.js +3 -0
- package/esm/Exit/index.js.map +1 -0
- package/esm/Fiber/Fiber.d.ts +36 -0
- package/esm/Fiber/Fiber.d.ts.map +1 -0
- package/esm/Fiber/Fiber.js +25 -0
- package/esm/Fiber/Fiber.js.map +1 -0
- package/esm/Fiber/index.d.ts +2 -0
- package/esm/Fiber/index.d.ts.map +1 -0
- package/esm/Fiber/index.js +2 -0
- package/esm/Fiber/index.js.map +1 -0
- package/esm/FiberContext/FiberContext.d.ts +22 -0
- package/esm/FiberContext/FiberContext.d.ts.map +1 -0
- package/esm/FiberContext/FiberContext.js +36 -0
- package/esm/FiberContext/FiberContext.js.map +1 -0
- package/esm/FiberContext/index.d.ts +2 -0
- package/esm/FiberContext/index.d.ts.map +1 -0
- package/esm/FiberContext/index.js +2 -0
- package/esm/FiberContext/index.js.map +1 -0
- package/esm/FiberId/FiberId.d.ts +46 -0
- package/esm/FiberId/FiberId.d.ts.map +1 -0
- package/esm/FiberId/FiberId.js +93 -0
- package/esm/FiberId/FiberId.js.map +1 -0
- package/esm/FiberId/index.d.ts +2 -0
- package/esm/FiberId/index.d.ts.map +1 -0
- package/esm/FiberId/index.js +2 -0
- package/esm/FiberId/index.js.map +1 -0
- package/esm/FiberRef/FiberRef.d.ts +38 -0
- package/esm/FiberRef/FiberRef.d.ts.map +1 -0
- package/esm/FiberRef/FiberRef.js +52 -0
- package/esm/FiberRef/FiberRef.js.map +1 -0
- package/esm/FiberRef/index.d.ts +3 -0
- package/esm/FiberRef/index.d.ts.map +1 -0
- package/esm/FiberRef/index.js +4 -0
- package/esm/FiberRef/index.js.map +1 -0
- package/esm/FiberRef/operations.d.ts +9 -0
- package/esm/FiberRef/operations.d.ts.map +1 -0
- package/esm/FiberRef/operations.js +13 -0
- package/esm/FiberRef/operations.js.map +1 -0
- package/esm/FiberRefs/FiberRefs.d.ts +19 -0
- package/esm/FiberRefs/FiberRefs.d.ts.map +1 -0
- package/esm/FiberRefs/FiberRefs.js +95 -0
- package/esm/FiberRefs/FiberRefs.js.map +1 -0
- package/esm/FiberRefs/index.d.ts +2 -0
- package/esm/FiberRefs/index.d.ts.map +1 -0
- package/esm/FiberRefs/index.js +2 -0
- package/esm/FiberRefs/index.js.map +1 -0
- package/esm/FiberRuntime/FiberRuntime.d.ts +154 -0
- package/esm/FiberRuntime/FiberRuntime.d.ts.map +1 -0
- package/esm/FiberRuntime/FiberRuntime.js +479 -0
- package/esm/FiberRuntime/FiberRuntime.js.map +1 -0
- package/esm/FiberRuntime/Frame.d.ts +14 -0
- package/esm/FiberRuntime/Frame.d.ts.map +1 -0
- package/esm/FiberRuntime/Frame.js +13 -0
- package/esm/FiberRuntime/Frame.js.map +1 -0
- package/esm/FiberRuntime/index.d.ts +2 -0
- package/esm/FiberRuntime/index.d.ts.map +1 -0
- package/esm/FiberRuntime/index.js +2 -0
- package/esm/FiberRuntime/index.js.map +1 -0
- package/esm/FiberStatus/index.d.ts +19 -0
- package/esm/FiberStatus/index.d.ts.map +1 -0
- package/esm/FiberStatus/index.js +18 -0
- package/esm/FiberStatus/index.js.map +1 -0
- package/esm/Finalizer/Finalizer.d.ts +39 -0
- package/esm/Finalizer/Finalizer.d.ts.map +1 -0
- package/esm/Finalizer/Finalizer.js +19 -0
- package/esm/Finalizer/Finalizer.js.map +1 -0
- package/esm/Finalizer/index.d.ts +2 -0
- package/esm/Finalizer/index.d.ts.map +1 -0
- package/esm/Finalizer/index.js +2 -0
- package/esm/Finalizer/index.js.map +1 -0
- package/esm/Future/Future.d.ts +23 -0
- package/esm/Future/Future.d.ts.map +1 -0
- package/esm/Future/Future.js +36 -0
- package/esm/Future/Future.js.map +1 -0
- package/esm/Future/MutableFutureQueue.d.ts +16 -0
- package/esm/Future/MutableFutureQueue.d.ts.map +1 -0
- package/esm/Future/MutableFutureQueue.js +36 -0
- package/esm/Future/MutableFutureQueue.js.map +1 -0
- package/esm/Future/complete.d.ts +4 -0
- package/esm/Future/complete.d.ts.map +1 -0
- package/esm/Future/complete.js +10 -0
- package/esm/Future/complete.js.map +1 -0
- package/esm/Future/index.d.ts +4 -0
- package/esm/Future/index.d.ts.map +1 -0
- package/esm/Future/index.js +4 -0
- package/esm/Future/index.js.map +1 -0
- package/esm/Future/wait.d.ts +4 -0
- package/esm/Future/wait.d.ts.map +1 -0
- package/esm/Future/wait.js +5 -0
- package/esm/Future/wait.js.map +1 -0
- package/esm/Fx/Fx.d.ts +136 -0
- package/esm/Fx/Fx.d.ts.map +1 -0
- package/esm/Fx/Fx.js +173 -0
- package/esm/Fx/Fx.js.map +1 -0
- package/esm/Fx/Instruction.d.ts +202 -0
- package/esm/Fx/Instruction.d.ts.map +1 -0
- package/esm/Fx/Instruction.js +358 -0
- package/esm/Fx/Instruction.js.map +1 -0
- package/esm/Fx/index.d.ts +5 -0
- package/esm/Fx/index.d.ts.map +1 -0
- package/esm/Fx/index.js +5 -0
- package/esm/Fx/index.js.map +1 -0
- package/esm/Fx/join.d.ts +4 -0
- package/esm/Fx/join.d.ts.map +1 -0
- package/esm/Fx/join.js +12 -0
- package/esm/Fx/join.js.map +1 -0
- package/esm/Fx/logging.d.ts +11 -0
- package/esm/Fx/logging.d.ts.map +1 -0
- package/esm/Fx/logging.js +17 -0
- package/esm/Fx/logging.js.map +1 -0
- package/esm/Fx/scoped.d.ts +20 -0
- package/esm/Fx/scoped.d.ts.map +1 -0
- package/esm/Fx/scoped.js +45 -0
- package/esm/Fx/scoped.js.map +1 -0
- package/esm/ImmutableMap/ImmutableMap.d.ts +15 -0
- package/esm/ImmutableMap/ImmutableMap.d.ts.map +1 -0
- package/esm/ImmutableMap/ImmutableMap.js +35 -0
- package/esm/ImmutableMap/ImmutableMap.js.map +1 -0
- package/esm/ImmutableMap/index.d.ts +2 -0
- package/esm/ImmutableMap/index.d.ts.map +1 -0
- package/esm/ImmutableMap/index.js +2 -0
- package/esm/ImmutableMap/index.js.map +1 -0
- package/esm/Layer/Layer.d.ts +14 -0
- package/esm/Layer/Layer.d.ts.map +1 -0
- package/esm/Layer/Layer.js +14 -0
- package/esm/Layer/Layer.js.map +1 -0
- package/esm/Layer/index.d.ts +2 -0
- package/esm/Layer/index.d.ts.map +1 -0
- package/esm/Layer/index.js +2 -0
- package/esm/Layer/index.js.map +1 -0
- package/esm/Logger/Console.d.ts +3 -0
- package/esm/Logger/Console.d.ts.map +1 -0
- package/esm/Logger/Console.js +72 -0
- package/esm/Logger/Console.js.map +1 -0
- package/esm/Logger/LogAnnotation.d.ts +6 -0
- package/esm/Logger/LogAnnotation.d.ts.map +1 -0
- package/esm/Logger/LogAnnotation.js +4 -0
- package/esm/Logger/LogAnnotation.js.map +1 -0
- package/esm/Logger/LogLevel.d.ts +11 -0
- package/esm/Logger/LogLevel.d.ts.map +1 -0
- package/esm/Logger/LogLevel.js +12 -0
- package/esm/Logger/LogLevel.js.map +1 -0
- package/esm/Logger/LogSpan.d.ts +7 -0
- package/esm/Logger/LogSpan.d.ts.map +1 -0
- package/esm/Logger/LogSpan.js +4 -0
- package/esm/Logger/LogSpan.js.map +1 -0
- package/esm/Logger/Logger.d.ts +31 -0
- package/esm/Logger/Logger.d.ts.map +1 -0
- package/esm/Logger/Logger.js +36 -0
- package/esm/Logger/Logger.js.map +1 -0
- package/esm/Logger/index.d.ts +2 -0
- package/esm/Logger/index.d.ts.map +1 -0
- package/esm/Logger/index.js +2 -0
- package/esm/Logger/index.js.map +1 -0
- package/esm/Platform/Platform.d.ts +14 -0
- package/esm/Platform/Platform.d.ts.map +1 -0
- package/esm/Platform/Platform.js +19 -0
- package/esm/Platform/Platform.js.map +1 -0
- package/esm/Platform/TestPlatform.d.ts +7 -0
- package/esm/Platform/TestPlatform.d.ts.map +1 -0
- package/esm/Platform/TestPlatform.js +9 -0
- package/esm/Platform/TestPlatform.js.map +1 -0
- package/esm/Platform/index.d.ts +3 -0
- package/esm/Platform/index.d.ts.map +1 -0
- package/esm/Platform/index.js +3 -0
- package/esm/Platform/index.js.map +1 -0
- package/esm/Ref/Ref.d.ts +40 -0
- package/esm/Ref/Ref.d.ts.map +1 -0
- package/esm/Ref/Ref.js +30 -0
- package/esm/Ref/Ref.js.map +1 -0
- package/esm/Ref/atomic.d.ts +5 -0
- package/esm/Ref/atomic.d.ts.map +1 -0
- package/esm/Ref/atomic.js +16 -0
- package/esm/Ref/atomic.js.map +1 -0
- package/esm/Ref/index.d.ts +3 -0
- package/esm/Ref/index.d.ts.map +1 -0
- package/esm/Ref/index.js +3 -0
- package/esm/Ref/index.js.map +1 -0
- package/esm/Schedule/Decision.d.ts +15 -0
- package/esm/Schedule/Decision.d.ts.map +1 -0
- package/esm/Schedule/Decision.js +34 -0
- package/esm/Schedule/Decision.js.map +1 -0
- package/esm/Schedule/Schedule.d.ts +30 -0
- package/esm/Schedule/Schedule.d.ts.map +1 -0
- package/esm/Schedule/Schedule.js +64 -0
- package/esm/Schedule/Schedule.js.map +1 -0
- package/esm/Schedule/ScheduleState.d.ts +45 -0
- package/esm/Schedule/ScheduleState.d.ts.map +1 -0
- package/esm/Schedule/ScheduleState.js +54 -0
- package/esm/Schedule/ScheduleState.js.map +1 -0
- package/esm/Schedule/index.d.ts +4 -0
- package/esm/Schedule/index.d.ts.map +1 -0
- package/esm/Schedule/index.js +4 -0
- package/esm/Schedule/index.js.map +1 -0
- package/esm/Scheduler/RootScheduler.d.ts +4 -0
- package/esm/Scheduler/RootScheduler.d.ts.map +1 -0
- package/esm/Scheduler/RootScheduler.js +53 -0
- package/esm/Scheduler/RootScheduler.js.map +1 -0
- package/esm/Scheduler/Scheduler.d.ts +14 -0
- package/esm/Scheduler/Scheduler.d.ts.map +1 -0
- package/esm/Scheduler/Scheduler.js +3 -0
- package/esm/Scheduler/Scheduler.js.map +1 -0
- package/esm/Scheduler/callbackScheduler.d.ts +5 -0
- package/esm/Scheduler/callbackScheduler.d.ts.map +1 -0
- package/esm/Scheduler/callbackScheduler.js +32 -0
- package/esm/Scheduler/callbackScheduler.js.map +1 -0
- package/esm/Scheduler/index.d.ts +1 -0
- package/esm/Scheduler/index.d.ts.map +1 -0
- package/esm/Scheduler/index.js +2 -0
- package/esm/Scheduler/index.js.map +1 -0
- package/esm/Scheduler/scheduled.d.ts +10 -0
- package/esm/Scheduler/scheduled.d.ts.map +1 -0
- package/esm/Scheduler/scheduled.js +21 -0
- package/esm/Scheduler/scheduled.js.map +1 -0
- package/esm/Scope/Closeable.d.ts +11 -0
- package/esm/Scope/Closeable.d.ts.map +1 -0
- package/esm/Scope/Closeable.js +20 -0
- package/esm/Scope/Closeable.js.map +1 -0
- package/esm/Scope/GlobalScope.d.ts +3 -0
- package/esm/Scope/GlobalScope.d.ts.map +1 -0
- package/esm/Scope/GlobalScope.js +12 -0
- package/esm/Scope/GlobalScope.js.map +1 -0
- package/esm/Scope/LocalScope.d.ts +24 -0
- package/esm/Scope/LocalScope.d.ts.map +1 -0
- package/esm/Scope/LocalScope.js +70 -0
- package/esm/Scope/LocalScope.js.map +1 -0
- package/esm/Scope/ReleaseMap.d.ts +19 -0
- package/esm/Scope/ReleaseMap.d.ts.map +1 -0
- package/esm/Scope/ReleaseMap.js +62 -0
- package/esm/Scope/ReleaseMap.js.map +1 -0
- package/esm/Scope/Scope.d.ts +11 -0
- package/esm/Scope/Scope.d.ts.map +1 -0
- package/esm/Scope/Scope.js +3 -0
- package/esm/Scope/Scope.js.map +1 -0
- package/esm/Scope/ScopeState.d.ts +19 -0
- package/esm/Scope/ScopeState.d.ts.map +1 -0
- package/esm/Scope/ScopeState.js +24 -0
- package/esm/Scope/ScopeState.js.map +1 -0
- package/esm/Scope/index.d.ts +7 -0
- package/esm/Scope/index.d.ts.map +1 -0
- package/esm/Scope/index.js +7 -0
- package/esm/Scope/index.js.map +1 -0
- package/esm/Semaphore/Semaphore.d.ts +38 -0
- package/esm/Semaphore/Semaphore.d.ts.map +1 -0
- package/esm/Semaphore/Semaphore.js +87 -0
- package/esm/Semaphore/Semaphore.js.map +1 -0
- package/esm/Semaphore/index.d.ts +2 -0
- package/esm/Semaphore/index.d.ts.map +1 -0
- package/esm/Semaphore/index.js +2 -0
- package/esm/Semaphore/index.js.map +1 -0
- package/esm/Service/Id.d.ts +59 -0
- package/esm/Service/Id.d.ts.map +1 -0
- package/esm/Service/Id.js +62 -0
- package/esm/Service/Id.js.map +1 -0
- package/esm/Service/Service.d.ts +20 -0
- package/esm/Service/Service.d.ts.map +1 -0
- package/esm/Service/Service.js +14 -0
- package/esm/Service/Service.js.map +1 -0
- package/esm/Service/index.d.ts +4 -0
- package/esm/Service/index.d.ts.map +1 -0
- package/esm/Service/index.js +4 -0
- package/esm/Service/index.js.map +1 -0
- package/esm/Service/tagged.d.ts +23 -0
- package/esm/Service/tagged.d.ts.map +1 -0
- package/esm/Service/tagged.js +9 -0
- package/esm/Service/tagged.js.map +1 -0
- package/esm/Sink/Sink.d.ts +22 -0
- package/esm/Sink/Sink.d.ts.map +1 -0
- package/esm/Sink/Sink.js +26 -0
- package/esm/Sink/Sink.js.map +1 -0
- package/esm/Sink/index.d.ts +1 -0
- package/esm/Sink/index.d.ts.map +1 -0
- package/esm/Sink/index.js +2 -0
- package/esm/Sink/index.js.map +1 -0
- package/esm/Stack/index.d.ts +20 -0
- package/esm/Stack/index.d.ts.map +1 -0
- package/esm/Stack/index.js +70 -0
- package/esm/Stack/index.js.map +1 -0
- package/esm/StackFrame/StackFrame.d.ts +29 -0
- package/esm/StackFrame/StackFrame.d.ts.map +1 -0
- package/esm/StackFrame/StackFrame.js +35 -0
- package/esm/StackFrame/StackFrame.js.map +1 -0
- package/esm/StackFrame/getStackFrames.d.ts +7 -0
- package/esm/StackFrame/getStackFrames.d.ts.map +1 -0
- package/esm/StackFrame/getStackFrames.js +51 -0
- package/esm/StackFrame/getStackFrames.js.map +1 -0
- package/esm/StackFrame/index.d.ts +3 -0
- package/esm/StackFrame/index.d.ts.map +1 -0
- package/esm/StackFrame/index.js +3 -0
- package/esm/StackFrame/index.js.map +1 -0
- package/esm/StackFrame/parseChromeStack.d.ts +3 -0
- package/esm/StackFrame/parseChromeStack.d.ts.map +1 -0
- package/esm/StackFrame/parseChromeStack.js +32 -0
- package/esm/StackFrame/parseChromeStack.js.map +1 -0
- package/esm/StackFrame/parseGeckoStackFrame.d.ts +3 -0
- package/esm/StackFrame/parseGeckoStackFrame.d.ts.map +1 -0
- package/esm/StackFrame/parseGeckoStackFrame.js +24 -0
- package/esm/StackFrame/parseGeckoStackFrame.js.map +1 -0
- package/esm/Stream/Stream.d.ts +18 -0
- package/esm/Stream/Stream.d.ts.map +1 -0
- package/esm/Stream/Stream.js +4 -0
- package/esm/Stream/Stream.js.map +1 -0
- package/esm/Stream/drain.d.ts +11 -0
- package/esm/Stream/drain.d.ts.map +1 -0
- package/esm/Stream/drain.js +21 -0
- package/esm/Stream/drain.js.map +1 -0
- package/esm/Stream/fromFx.d.ts +4 -0
- package/esm/Stream/fromFx.d.ts.map +1 -0
- package/esm/Stream/fromFx.js +7 -0
- package/esm/Stream/fromFx.js.map +1 -0
- package/esm/Stream/index.d.ts +4 -0
- package/esm/Stream/index.d.ts.map +1 -0
- package/esm/Stream/index.js +4 -0
- package/esm/Stream/index.js.map +1 -0
- package/esm/Supervisor/Supervisor.d.ts +32 -0
- package/esm/Supervisor/Supervisor.d.ts.map +1 -0
- package/esm/Supervisor/Supervisor.js +40 -0
- package/esm/Supervisor/Supervisor.js.map +1 -0
- package/esm/Supervisor/index.d.ts +2 -0
- package/esm/Supervisor/index.d.ts.map +1 -0
- package/esm/Supervisor/index.js +2 -0
- package/esm/Supervisor/index.js.map +1 -0
- package/esm/Tagged/index.d.ts +79 -0
- package/esm/Tagged/index.d.ts.map +1 -0
- package/esm/Tagged/index.js +43 -0
- package/esm/Tagged/index.js.map +1 -0
- package/esm/Time/index.d.ts +95 -0
- package/esm/Time/index.d.ts.map +1 -0
- package/esm/Time/index.js +33 -0
- package/esm/Time/index.js.map +1 -0
- package/esm/Timeline/index.d.ts +27 -0
- package/esm/Timeline/index.d.ts.map +1 -0
- package/esm/Timeline/index.js +98 -0
- package/esm/Timeline/index.js.map +1 -0
- package/esm/Timer/SetTimeoutTimer.d.ts +4 -0
- package/esm/Timer/SetTimeoutTimer.d.ts.map +1 -0
- package/esm/Timer/SetTimeoutTimer.js +14 -0
- package/esm/Timer/SetTimeoutTimer.js.map +1 -0
- package/esm/Timer/TestTimer.d.ts +9 -0
- package/esm/Timer/TestTimer.d.ts.map +1 -0
- package/esm/Timer/TestTimer.js +25 -0
- package/esm/Timer/TestTimer.js.map +1 -0
- package/esm/Timer/Timer.d.ts +11 -0
- package/esm/Timer/Timer.d.ts.map +1 -0
- package/esm/Timer/Timer.js +16 -0
- package/esm/Timer/Timer.js.map +1 -0
- package/esm/Timer/index.d.ts +4 -0
- package/esm/Timer/index.d.ts.map +1 -0
- package/esm/Timer/index.js +4 -0
- package/esm/Timer/index.js.map +1 -0
- package/esm/Trace/Trace.d.ts +38 -0
- package/esm/Trace/Trace.d.ts.map +1 -0
- package/esm/Trace/Trace.js +152 -0
- package/esm/Trace/Trace.js.map +1 -0
- package/esm/Trace/index.d.ts +2 -0
- package/esm/Trace/index.d.ts.map +1 -0
- package/esm/Trace/index.js +2 -0
- package/esm/Trace/index.js.map +1 -0
- package/esm/Tracing/plugin.d.ts +10 -0
- package/esm/Tracing/plugin.d.ts.map +1 -0
- package/esm/Tracing/plugin.js +93 -0
- package/esm/Tracing/plugin.js.map +1 -0
- package/esm/Tracing/vite.d.ts +10 -0
- package/esm/Tracing/vite.d.ts.map +1 -0
- package/esm/Tracing/vite.js +50 -0
- package/esm/Tracing/vite.js.map +1 -0
- package/esm/index.d.ts +35 -0
- package/esm/index.d.ts.map +1 -0
- package/esm/index.js +68 -0
- package/esm/index.js.map +1 -0
- package/esm/internal.d.ts +18 -0
- package/esm/internal.d.ts.map +1 -0
- package/esm/internal.js +2 -0
- package/esm/internal.js.map +1 -0
- package/esm/test.d.ts +1 -0
- package/esm/test.d.ts.map +1 -0
- package/esm/test.js +2 -0
- package/esm/test.js.map +1 -0
- package/package.json +1238 -0
- package/readme.md +35 -0
- package/src/Atomic/Atomic.ts +122 -0
- package/src/Atomic/AtomicCounter.ts +23 -0
- package/src/Atomic/index.ts +2 -0
- package/src/Cause/Cause.ts +425 -0
- package/src/Cause/CauseError.ts +55 -0
- package/src/Cause/Renderer.ts +289 -0
- package/src/Cause/index.ts +1 -0
- package/src/Cause/prettyStringify.ts +8 -0
- package/src/Clock/Clock.ts +82 -0
- package/src/Clock/DateClock.ts +9 -0
- package/src/Clock/TestClock.ts +25 -0
- package/src/Clock/index.ts +3 -0
- package/src/Disposable/Disposable.ts +63 -0
- package/src/Disposable/index.ts +1 -0
- package/src/Duration/Duration.ts +125 -0
- package/src/Duration/index.ts +1 -0
- package/src/Env/Env.ts +62 -0
- package/src/Env/index.ts +1 -0
- package/src/Exit/Exit.ts +50 -0
- package/src/Exit/hkt.ts +29 -0
- package/src/Exit/index.ts +2 -0
- package/src/Fiber/Fiber.ts +85 -0
- package/src/Fiber/index.ts +1 -0
- package/src/FiberContext/FiberContext.ts +67 -0
- package/src/FiberContext/index.ts +1 -0
- package/src/FiberId/FiberId.ts +122 -0
- package/src/FiberId/index.ts +1 -0
- package/src/FiberRef/FiberRef.ts +93 -0
- package/src/FiberRef/index.ts +3 -0
- package/src/FiberRef/operations.ts +19 -0
- package/src/FiberRefs/FiberRefs.ts +162 -0
- package/src/FiberRefs/index.ts +1 -0
- package/src/FiberRuntime/FiberRuntime.ts +742 -0
- package/src/FiberRuntime/Frame.ts +28 -0
- package/src/FiberRuntime/index.ts +1 -0
- package/src/FiberStatus/index.ts +37 -0
- package/src/Finalizer/Finalizer.ts +48 -0
- package/src/Finalizer/index.ts +1 -0
- package/src/Future/Future.ts +72 -0
- package/src/Future/MutableFutureQueue.ts +58 -0
- package/src/Future/complete.ts +16 -0
- package/src/Future/index.ts +3 -0
- package/src/Future/wait.ts +8 -0
- package/src/Fx/Fx.test.ts +110 -0
- package/src/Fx/Fx.ts +629 -0
- package/src/Fx/Instruction.ts +468 -0
- package/src/Fx/index.ts +4 -0
- package/src/Fx/join.ts +17 -0
- package/src/Fx/logging.ts +69 -0
- package/src/Fx/scoped.ts +77 -0
- package/src/ImmutableMap/ImmutableMap.ts +55 -0
- package/src/ImmutableMap/index.ts +1 -0
- package/src/Layer/Layer.ts +44 -0
- package/src/Layer/index.ts +1 -0
- package/src/Logger/Console.test.ts +10 -0
- package/src/Logger/Console.ts +85 -0
- package/src/Logger/LogAnnotation.ts +8 -0
- package/src/Logger/LogLevel.ts +10 -0
- package/src/Logger/LogSpan.ts +10 -0
- package/src/Logger/Logger.ts +83 -0
- package/src/Logger/index.ts +1 -0
- package/src/Platform/Platform.ts +42 -0
- package/src/Platform/TestPlatform.ts +14 -0
- package/src/Platform/index.ts +2 -0
- package/src/Ref/Ref.test.ts +34 -0
- package/src/Ref/Ref.ts +76 -0
- package/src/Ref/atomic.ts +33 -0
- package/src/Ref/index.ts +2 -0
- package/src/Schedule/Decision.ts +44 -0
- package/src/Schedule/Schedule.ts +148 -0
- package/src/Schedule/ScheduleState.ts +80 -0
- package/src/Schedule/index.ts +3 -0
- package/src/Scheduler/RootScheduler.ts +84 -0
- package/src/Scheduler/Scheduler.ts +21 -0
- package/src/Scheduler/callbackScheduler.ts +43 -0
- package/src/Scheduler/index.ts +0 -0
- package/src/Scheduler/scheduled.ts +32 -0
- package/src/Scope/Closeable.test.ts +98 -0
- package/src/Scope/Closeable.ts +35 -0
- package/src/Scope/GlobalScope.ts +15 -0
- package/src/Scope/LocalScope.ts +93 -0
- package/src/Scope/ReleaseMap.ts +95 -0
- package/src/Scope/Scope.ts +13 -0
- package/src/Scope/ScopeState.ts +45 -0
- package/src/Scope/index.ts +6 -0
- package/src/Semaphore/Semaphore.ts +110 -0
- package/src/Semaphore/index.ts +1 -0
- package/src/Service/Id.ts +87 -0
- package/src/Service/Service.ts +31 -0
- package/src/Service/index.ts +3 -0
- package/src/Service/tagged.ts +10 -0
- package/src/Sink/Sink.ts +65 -0
- package/src/Sink/index.ts +0 -0
- package/src/Stack/index.ts +88 -0
- package/src/StackFrame/StackFrame.ts +68 -0
- package/src/StackFrame/getStackFrames.test.ts +30 -0
- package/src/StackFrame/getStackFrames.ts +70 -0
- package/src/StackFrame/index.ts +2 -0
- package/src/StackFrame/parseChromeStack.ts +43 -0
- package/src/StackFrame/parseGeckoStackFrame.ts +31 -0
- package/src/Stream/Stream.ts +21 -0
- package/src/Stream/drain.ts +73 -0
- package/src/Stream/fromFx.test.ts +39 -0
- package/src/Stream/fromFx.ts +27 -0
- package/src/Stream/index.ts +3 -0
- package/src/Supervisor/Supervisor.ts +49 -0
- package/src/Supervisor/index.ts +1 -0
- package/src/Tagged/index.ts +127 -0
- package/src/Time/index.ts +62 -0
- package/src/Timeline/index.ts +157 -0
- package/src/Timer/SetTimeoutTimer.ts +19 -0
- package/src/Timer/TestTimer.ts +39 -0
- package/src/Timer/Timer.ts +24 -0
- package/src/Timer/index.ts +3 -0
- package/src/Trace/Trace.ts +210 -0
- package/src/Trace/index.ts +1 -0
- package/src/Tracing/plugin.ts +155 -0
- package/src/Tracing/vite.ts +72 -0
- package/src/index.ts +34 -0
- package/src/internal.ts +33 -0
- package/src/test.ts +0 -0
- package/tools/common.ts +43 -0
- package/tools/generatePackageExports.ts +100 -0
- package/tsconfig.base.json +32 -0
- package/tsconfig.build.cjs.json +26 -0
- package/tsconfig.build.esm.json +30 -0
- package/tsconfig.build.tracing.json +16 -0
- package/tsconfig.json +8 -0
- package/tsconfig.test.json +17 -0
- package/vite.config.ts +28 -0
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { Disposable } from '@/Disposable/Disposable.js';
|
|
2
|
+
import { MAX_UNIX_TIME } from '@/Time/index.js';
|
|
3
|
+
export function Timeline(onUpdated) {
|
|
4
|
+
return new TimelineImpl(onUpdated);
|
|
5
|
+
}
|
|
6
|
+
class TimelineImpl {
|
|
7
|
+
onUpdated;
|
|
8
|
+
timeSlots = [];
|
|
9
|
+
constructor(onUpdated) {
|
|
10
|
+
this.onUpdated = onUpdated;
|
|
11
|
+
}
|
|
12
|
+
nextArrival = () => {
|
|
13
|
+
if (this.isEmpty()) {
|
|
14
|
+
return MAX_UNIX_TIME;
|
|
15
|
+
}
|
|
16
|
+
return this.timeSlots[0].time;
|
|
17
|
+
};
|
|
18
|
+
isEmpty = () => {
|
|
19
|
+
return this.timeSlots.length === 0;
|
|
20
|
+
};
|
|
21
|
+
add = (time, a) => {
|
|
22
|
+
insertByTime(time, a, this.timeSlots);
|
|
23
|
+
this.onUpdated?.();
|
|
24
|
+
return Disposable(() => this.remove(time, a));
|
|
25
|
+
};
|
|
26
|
+
remove = (time, a) => {
|
|
27
|
+
const i = binarySearch(time, this.timeSlots);
|
|
28
|
+
if (i >= 0 && i < this.timeSlots.length) {
|
|
29
|
+
const events = this.timeSlots[i].events;
|
|
30
|
+
const at = events.findIndex((x) => x === a);
|
|
31
|
+
if (at >= 0) {
|
|
32
|
+
events.splice(at, 1);
|
|
33
|
+
if (events.length === 0) {
|
|
34
|
+
this.timeSlots.splice(i, 1);
|
|
35
|
+
}
|
|
36
|
+
this.onUpdated?.();
|
|
37
|
+
return true;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
return false;
|
|
41
|
+
};
|
|
42
|
+
getReadyTasks = (t) => {
|
|
43
|
+
const tasks = this.timeSlots;
|
|
44
|
+
const l = tasks.length;
|
|
45
|
+
let i = 0;
|
|
46
|
+
while (i < l && tasks[i].time <= t) {
|
|
47
|
+
++i;
|
|
48
|
+
}
|
|
49
|
+
return this.timeSlots.splice(0, i).flatMap((x) => x.events);
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
function insertByTime(time, a, timeslots) {
|
|
53
|
+
const l = timeslots.length;
|
|
54
|
+
if (l === 0) {
|
|
55
|
+
timeslots.push(makeTimeslot(time, [a]));
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
const i = binarySearch(time, timeslots);
|
|
59
|
+
if (i >= l) {
|
|
60
|
+
timeslots.push(makeTimeslot(time, [a]));
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
insertAtTimeslot(a, timeslots, time, i);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
function insertAtTimeslot(task, timeslots, time, i) {
|
|
67
|
+
const timeslot = timeslots[i];
|
|
68
|
+
if (time === timeslot.time) {
|
|
69
|
+
timeslot.events.push(task);
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
timeslots.splice(i, 0, makeTimeslot(time, [task]));
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
function binarySearch(t, sortedArray) {
|
|
76
|
+
let lo = 0;
|
|
77
|
+
let hi = sortedArray.length;
|
|
78
|
+
let mid, y;
|
|
79
|
+
while (lo < hi) {
|
|
80
|
+
mid = Math.floor((lo + hi) / 2);
|
|
81
|
+
y = sortedArray[mid];
|
|
82
|
+
if (t === y.time) {
|
|
83
|
+
return mid;
|
|
84
|
+
}
|
|
85
|
+
else if (t < y.time) {
|
|
86
|
+
hi = mid;
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
lo = mid + 1;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
return hi;
|
|
93
|
+
}
|
|
94
|
+
const makeTimeslot = (t, events) => ({
|
|
95
|
+
time: t,
|
|
96
|
+
events: events,
|
|
97
|
+
});
|
|
98
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Timeline/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SetTimeoutTimer.d.ts","sourceRoot":"","sources":["../../src/Timer/SetTimeoutTimer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAQ,MAAM,YAAY,CAAA;AAExC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAIxC,wBAAgB,eAAe,CAAC,KAAK,GAAE,KAAmB,GAAG,KAAK,CAYjE"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { make } from './Timer.js';
|
|
2
|
+
import { DateClock } from '@/Clock/DateClock.js';
|
|
3
|
+
import { Disposable, None } from '@/Disposable/Disposable.js';
|
|
4
|
+
export function SetTimeoutTimer(clock = DateClock()) {
|
|
5
|
+
return make(clock, (f, delay) => {
|
|
6
|
+
if (delay <= 0) {
|
|
7
|
+
queueMicrotask(() => f(clock.getCurrentTime()));
|
|
8
|
+
return None;
|
|
9
|
+
}
|
|
10
|
+
const id = setTimeout(() => f(clock.getCurrentTime()), delay);
|
|
11
|
+
return Disposable(() => clearTimeout(id));
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=SetTimeoutTimer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SetTimeoutTimer.js","sourceRoot":"","sources":["../../src/Timer/SetTimeoutTimer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,IAAI,EAAE,MAAM,YAAY,CAAA;AAGxC,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAA;AAE7D,MAAM,UAAU,eAAe,CAAC,QAAe,SAAS,EAAE;IACxD,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;QAC9B,IAAI,KAAK,IAAI,CAAC,EAAE;YACd,cAAc,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC,CAAA;YAE/C,OAAO,IAAI,CAAA;SACZ;QAED,MAAM,EAAE,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC,EAAE,KAAK,CAAC,CAAA;QAE7D,OAAO,UAAU,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAA;IAC3C,CAAC,CAAC,CAAA;AACJ,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Timer } from './Timer.js';
|
|
2
|
+
import { TestClock } from '@/Clock/TestClock.js';
|
|
3
|
+
/**
|
|
4
|
+
* A Timer which provides imperative access to progressing Time forward.
|
|
5
|
+
*/
|
|
6
|
+
export interface TestTimer extends Timer, TestClock {
|
|
7
|
+
}
|
|
8
|
+
export declare function TestTimer(clock?: TestClock, autoRun?: boolean): TestTimer;
|
|
9
|
+
//# sourceMappingURL=TestTimer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TestTimer.d.ts","sourceRoot":"","sources":["../../src/Timer/TestTimer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAGlC,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAKhD;;GAEG;AACH,MAAM,WAAW,SAAU,SAAQ,KAAK,EAAE,SAAS;CAAG;AAEtD,wBAAgB,SAAS,CAAC,KAAK,GAAE,SAAuB,EAAE,OAAO,UAAO,GAAG,SAAS,CAuBnF"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { flow } from 'hkt-ts';
|
|
2
|
+
import * as Clock from '@/Clock/Clock.js';
|
|
3
|
+
import { TestClock } from '@/Clock/TestClock.js';
|
|
4
|
+
import { None } from '@/Disposable/Disposable.js';
|
|
5
|
+
import { Timeline } from '@/Timeline/index.js';
|
|
6
|
+
export function TestTimer(clock = TestClock(), autoRun = true) {
|
|
7
|
+
const timeline = Timeline();
|
|
8
|
+
const runReadyTimers = (t) => (timeline.getReadyTasks(Clock.timeToUnixTime(t)(clock)).forEach((f) => f(t)), t);
|
|
9
|
+
return {
|
|
10
|
+
startTime: clock.startTime,
|
|
11
|
+
getCurrentTime: clock.getCurrentTime,
|
|
12
|
+
setTimer: (f, delay) => {
|
|
13
|
+
// If auto-run is enabled an delay is 0,
|
|
14
|
+
// synchronously run the callback.
|
|
15
|
+
if (autoRun && delay === 0) {
|
|
16
|
+
f(clock.getCurrentTime());
|
|
17
|
+
return None;
|
|
18
|
+
}
|
|
19
|
+
return timeline.add(Clock.delayToUnixTime(delay)(clock), f);
|
|
20
|
+
},
|
|
21
|
+
progressTimeBy: flow(clock.progressTimeBy, runReadyTimers),
|
|
22
|
+
progressTimeTo: flow(clock.progressTimeTo, runReadyTimers),
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=TestTimer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TestTimer.js","sourceRoot":"","sources":["../../src/Timer/TestTimer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAI7B,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAA;AAEjD,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAO9C,MAAM,UAAU,SAAS,CAAC,QAAmB,SAAS,EAAE,EAAE,OAAO,GAAG,IAAI;IACtE,MAAM,QAAQ,GAAG,QAAQ,EAAqB,CAAA;IAC9C,MAAM,cAAc,GAAG,CAAC,CAAO,EAAE,EAAE,CAAC,CAClC,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAC/E,CAAA;IAED,OAAO;QACL,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,cAAc,EAAE,KAAK,CAAC,cAAc;QACpC,QAAQ,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;YACrB,wCAAwC;YACxC,kCAAkC;YAClC,IAAI,OAAO,IAAI,KAAK,KAAK,CAAC,EAAE;gBAC1B,CAAC,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC,CAAA;gBAEzB,OAAO,IAAI,CAAA;aACZ;YAED,OAAO,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAA;QAC7D,CAAC;QACD,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,cAAc,CAAC;QAC1D,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,cAAc,CAAC;KAC3D,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as C from '@/Clock/index.js';
|
|
2
|
+
import { Disposable } from '@/Disposable/Disposable.js';
|
|
3
|
+
import { Service } from '@/Service/index.js';
|
|
4
|
+
import { Delay, Time } from '@/Time/index.js';
|
|
5
|
+
export interface Timer extends C.Clock {
|
|
6
|
+
readonly setTimer: (f: (time: Time) => void, delay: Delay) => Disposable;
|
|
7
|
+
}
|
|
8
|
+
export declare const Timer: Service<Timer>;
|
|
9
|
+
export declare function make(clock: C.Clock, setTimer: Timer['setTimer']): Timer;
|
|
10
|
+
export declare function fork(timer: Timer): Timer;
|
|
11
|
+
//# sourceMappingURL=Timer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Timer.d.ts","sourceRoot":"","sources":["../../src/Timer/Timer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,kBAAkB,CAAA;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAC5C,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAE7C,MAAM,WAAW,KAAM,SAAQ,CAAC,CAAC,KAAK;IACpC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,EAAE,KAAK,EAAE,KAAK,KAAK,UAAU,CAAA;CACzE;AAED,eAAO,MAAM,KAAK,gBAA0B,CAAA;AAE5C,wBAAgB,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,GAAG,KAAK,CAKvE;AAED,wBAAgB,IAAI,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,CAKxC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import * as C from '@/Clock/index.js';
|
|
2
|
+
import { Service } from '@/Service/index.js';
|
|
3
|
+
export const Timer = Service('Timer');
|
|
4
|
+
export function make(clock, setTimer) {
|
|
5
|
+
return {
|
|
6
|
+
...clock,
|
|
7
|
+
setTimer,
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
export function fork(timer) {
|
|
11
|
+
return {
|
|
12
|
+
...timer,
|
|
13
|
+
...C.fork(timer),
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=Timer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Timer.js","sourceRoot":"","sources":["../../src/Timer/Timer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,kBAAkB,CAAA;AAErC,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAO5C,MAAM,CAAC,MAAM,KAAK,GAAG,OAAO,CAAQ,OAAO,CAAC,CAAA;AAE5C,MAAM,UAAU,IAAI,CAAC,KAAc,EAAE,QAA2B;IAC9D,OAAO;QACL,GAAG,KAAK;QACR,QAAQ;KACT,CAAA;AACH,CAAC;AAED,MAAM,UAAU,IAAI,CAAC,KAAY;IAC/B,OAAO;QACL,GAAG,KAAK;QACR,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;KACjB,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Timer/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,YAAY,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Timer/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,YAAY,CAAA"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import * as ASSOC from 'hkt-ts/Typeclass/Associative';
|
|
2
|
+
import * as D from 'hkt-ts/Typeclass/Debug';
|
|
3
|
+
import * as E from 'hkt-ts/Typeclass/Eq';
|
|
4
|
+
import * as I from 'hkt-ts/Typeclass/Identity';
|
|
5
|
+
import * as O from 'hkt-ts/Typeclass/Ord';
|
|
6
|
+
import type { Cause } from '@/Cause/index.js';
|
|
7
|
+
import { Stack } from '@/Stack/index.js';
|
|
8
|
+
import * as StackFrame from '@/StackFrame/index.js';
|
|
9
|
+
export declare type Trace = EmptyTrace | StackFrameTrace;
|
|
10
|
+
export declare const isInstrumentedTrace: (trace: string) => boolean;
|
|
11
|
+
export declare namespace Trace {
|
|
12
|
+
const runtime: <E extends {
|
|
13
|
+
stack?: string | undefined;
|
|
14
|
+
} = Error>(error: E, targetObject?: Function) => StackFrameTrace;
|
|
15
|
+
const custom: (trace: string) => StackFrameTrace;
|
|
16
|
+
}
|
|
17
|
+
export declare const EmptyTrace: {
|
|
18
|
+
readonly tag: "EmptyTrace";
|
|
19
|
+
};
|
|
20
|
+
export declare type EmptyTrace = typeof EmptyTrace;
|
|
21
|
+
export declare class StackFrameTrace {
|
|
22
|
+
readonly frames: StackFrame.StackFrames;
|
|
23
|
+
readonly tag = "StackFrameTrace";
|
|
24
|
+
constructor(frames: StackFrame.StackFrames);
|
|
25
|
+
}
|
|
26
|
+
export declare const Eq: E.Eq<Trace>;
|
|
27
|
+
export declare const Ord: O.Ord<Trace>;
|
|
28
|
+
export declare const Associative: ASSOC.Associative<Trace>;
|
|
29
|
+
export declare const concat: (first: Trace, second: Trace) => Trace;
|
|
30
|
+
export declare const Identity: I.Identity<Trace>;
|
|
31
|
+
export declare const Debug: D.Debug<Trace>;
|
|
32
|
+
export declare const debug: (a: Trace) => string;
|
|
33
|
+
export declare function trimOverlappingTraces(current: Trace, incoming: Trace): Trace;
|
|
34
|
+
export interface StackTrace extends Stack<Trace> {
|
|
35
|
+
}
|
|
36
|
+
export declare function getTraceUpTo(trace: StackTrace, amount: number): Trace;
|
|
37
|
+
export declare function getTrimmedTrace<E>(cause: Cause<E>, stackTrace: StackTrace): Trace;
|
|
38
|
+
//# sourceMappingURL=Trace.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Trace.d.ts","sourceRoot":"","sources":["../../src/Trace/Trace.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,8BAA8B,CAAA;AACrD,OAAO,KAAK,CAAC,MAAM,wBAAwB,CAAA;AAC3C,OAAO,KAAK,CAAC,MAAM,qBAAqB,CAAA;AACxC,OAAO,KAAK,CAAC,MAAM,2BAA2B,CAAA;AAC9C,OAAO,KAAK,CAAC,MAAM,sBAAsB,CAAA;AAIzC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AACxC,OAAO,KAAK,UAAU,MAAM,uBAAuB,CAAA;AAEnD,oBAAY,KAAK,GAAG,UAAU,GAAG,eAAe,CAAA;AAIhD,eAAO,MAAM,mBAAmB,UAAW,MAAM,YAAmC,CAAA;AAEpF,yBAAiB,KAAK,CAAC;IACd,MAAM,OAAO;;wCAGH,QAAQ,oBAC+C,CAAA;IAEjE,MAAM,MAAM,UAAW,MAAM,KAAG,eAqBtC,CAAA;CACF;AAED,eAAO,MAAM,UAAU;;CAEb,CAAA;AAEV,oBAAY,UAAU,GAAG,OAAO,UAAU,CAAA;AAE1C,qBAAa,eAAe;IAGd,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,WAAW;IAFnD,QAAQ,CAAC,GAAG,qBAAoB;gBAEX,MAAM,EAAE,UAAU,CAAC,WAAW;CACpD;AAED,eAAO,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAMzB,CAAA;AAEF,eAAO,MAAM,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAW3B,CAAA;AAEF,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC,KAAK,CAYhD,CAAA;AAED,eAAO,MAAM,MAAM,wCAAqB,CAAA;AAExC,eAAO,MAAM,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAGtC,CAAA;AAED,eAAO,MAAM,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAO/B,CAAA;AAEF,eAAO,MAAM,KAAK,sBAAc,CAAA;AAEhC,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,GAAG,KAAK,CAiB5E;AAgDD,MAAM,WAAW,UAAW,SAAQ,KAAK,CAAC,KAAK,CAAC;CAAG;AAGnD,wBAAgB,YAAY,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,KAAK,CAcrE;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,SASzE"}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import { pipe } from 'hkt-ts';
|
|
2
|
+
import * as A from 'hkt-ts/Array';
|
|
3
|
+
import * as D from 'hkt-ts/Typeclass/Debug';
|
|
4
|
+
import * as E from 'hkt-ts/Typeclass/Eq';
|
|
5
|
+
import * as O from 'hkt-ts/Typeclass/Ord';
|
|
6
|
+
import * as N from 'hkt-ts/number';
|
|
7
|
+
import * as S from 'hkt-ts/string';
|
|
8
|
+
import * as StackFrame from '@/StackFrame/index.js';
|
|
9
|
+
const INSTRUMENTED_REGEX = /^.+\s.+:[0-9]+:[0-9]+$/i;
|
|
10
|
+
export const isInstrumentedTrace = (trace) => INSTRUMENTED_REGEX.test(trace);
|
|
11
|
+
export var Trace;
|
|
12
|
+
(function (Trace) {
|
|
13
|
+
Trace.runtime = (error,
|
|
14
|
+
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
15
|
+
targetObject) => new StackFrameTrace(StackFrame.getStackFrames(error, targetObject));
|
|
16
|
+
Trace.custom = (trace) => {
|
|
17
|
+
if (!isInstrumentedTrace(trace)) {
|
|
18
|
+
return new StackFrameTrace([
|
|
19
|
+
{
|
|
20
|
+
tag: 'Custom',
|
|
21
|
+
trace,
|
|
22
|
+
},
|
|
23
|
+
]);
|
|
24
|
+
}
|
|
25
|
+
const [methodFile, line, column] = trace.split(/:/g);
|
|
26
|
+
const [method, file] = methodFile.split(/\s/);
|
|
27
|
+
const stackFrame = {
|
|
28
|
+
tag: 'Instrumented',
|
|
29
|
+
file,
|
|
30
|
+
method,
|
|
31
|
+
line: parseFloat(line),
|
|
32
|
+
column: parseFloat(column),
|
|
33
|
+
};
|
|
34
|
+
return new StackFrameTrace([stackFrame]);
|
|
35
|
+
};
|
|
36
|
+
})(Trace || (Trace = {}));
|
|
37
|
+
export const EmptyTrace = {
|
|
38
|
+
tag: 'EmptyTrace',
|
|
39
|
+
};
|
|
40
|
+
export class StackFrameTrace {
|
|
41
|
+
frames;
|
|
42
|
+
tag = 'StackFrameTrace';
|
|
43
|
+
constructor(frames) {
|
|
44
|
+
this.frames = frames;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
export const Eq = E.sum()('tag')({
|
|
48
|
+
EmptyTrace: E.AlwaysEqual,
|
|
49
|
+
StackFrameTrace: E.struct({
|
|
50
|
+
tag: E.AlwaysEqual,
|
|
51
|
+
frames: A.makeEq(StackFrame.Eq),
|
|
52
|
+
}),
|
|
53
|
+
});
|
|
54
|
+
export const Ord = O.sum()('tag')(pipe(N.Ord, O.contramap((a) => (a === 'EmptyTrace' ? 0 : 1))))({
|
|
55
|
+
EmptyTrace: O.Static,
|
|
56
|
+
StackFrameTrace: O.struct({
|
|
57
|
+
tag: O.Static,
|
|
58
|
+
frames: A.makeOrd(StackFrame.Ord),
|
|
59
|
+
})(S.Ord),
|
|
60
|
+
});
|
|
61
|
+
export const Associative = {
|
|
62
|
+
concat: (f, s) => {
|
|
63
|
+
if (f.tag === EmptyTrace.tag) {
|
|
64
|
+
return s;
|
|
65
|
+
}
|
|
66
|
+
if (s.tag === EmptyTrace.tag) {
|
|
67
|
+
return f;
|
|
68
|
+
}
|
|
69
|
+
return new StackFrameTrace([...f.frames, ...s.frames]);
|
|
70
|
+
},
|
|
71
|
+
};
|
|
72
|
+
export const concat = Associative.concat;
|
|
73
|
+
export const Identity = {
|
|
74
|
+
...Associative,
|
|
75
|
+
id: EmptyTrace,
|
|
76
|
+
};
|
|
77
|
+
export const Debug = D.sum()('tag')({
|
|
78
|
+
EmptyTrace: {
|
|
79
|
+
debug: () => `<empty trace>`,
|
|
80
|
+
},
|
|
81
|
+
StackFrameTrace: {
|
|
82
|
+
debug: ({ frames }) => frames.map(StackFrame.debug).join('\n'),
|
|
83
|
+
},
|
|
84
|
+
});
|
|
85
|
+
export const debug = Debug.debug;
|
|
86
|
+
export function trimOverlappingTraces(current, incoming) {
|
|
87
|
+
if (current.tag === EmptyTrace.tag) {
|
|
88
|
+
return incoming;
|
|
89
|
+
}
|
|
90
|
+
if (incoming.tag === EmptyTrace.tag) {
|
|
91
|
+
return current;
|
|
92
|
+
}
|
|
93
|
+
const frames = trimOverlappingFrames(current.frames.slice(0, incoming.frames.length), // Only compare the same amount of values
|
|
94
|
+
incoming.frames);
|
|
95
|
+
return frames.length === 0
|
|
96
|
+
? EmptyTrace
|
|
97
|
+
: new StackFrameTrace(trimOverlappingFrames(current.frames, incoming.frames));
|
|
98
|
+
}
|
|
99
|
+
function trimOverlappingFrames(current, incoming) {
|
|
100
|
+
// Clone our Array for mutation
|
|
101
|
+
const outgoing = [...incoming];
|
|
102
|
+
let cIndex = current.length - 1;
|
|
103
|
+
let iIndex = 0;
|
|
104
|
+
let deleted = 0;
|
|
105
|
+
for (; cIndex > -1 && iIndex < incoming.length;) {
|
|
106
|
+
const c = current[cIndex];
|
|
107
|
+
const i = incoming[iIndex];
|
|
108
|
+
// If neither are Runtime instructions, lets just break early
|
|
109
|
+
if (!(c.tag === 'Runtime' || i.tag === 'Runtime')) {
|
|
110
|
+
break;
|
|
111
|
+
}
|
|
112
|
+
// Skip over custom/instrumented traces
|
|
113
|
+
if (c.tag !== 'Runtime') {
|
|
114
|
+
cIndex--;
|
|
115
|
+
continue;
|
|
116
|
+
}
|
|
117
|
+
if (i.tag !== 'Runtime') {
|
|
118
|
+
iIndex++;
|
|
119
|
+
continue;
|
|
120
|
+
}
|
|
121
|
+
// If we don't have a match, just break
|
|
122
|
+
if (!StackFrame.Eq.equals(c, i)) {
|
|
123
|
+
break;
|
|
124
|
+
}
|
|
125
|
+
// Remove this Trace
|
|
126
|
+
outgoing.splice(iIndex - deleted++, 1);
|
|
127
|
+
cIndex--;
|
|
128
|
+
iIndex++;
|
|
129
|
+
}
|
|
130
|
+
return outgoing;
|
|
131
|
+
}
|
|
132
|
+
// Traverse up the Stack<Trace> for a set amount of StackFrames.
|
|
133
|
+
export function getTraceUpTo(trace, amount) {
|
|
134
|
+
const frames = [];
|
|
135
|
+
let current = trace;
|
|
136
|
+
while (current && frames.length < amount) {
|
|
137
|
+
if (current.value.tag === 'StackFrameTrace') {
|
|
138
|
+
frames.push(...current.value.frames);
|
|
139
|
+
}
|
|
140
|
+
current = current.previous;
|
|
141
|
+
}
|
|
142
|
+
return frames.length > 0 ? new StackFrameTrace(frames) : EmptyTrace;
|
|
143
|
+
}
|
|
144
|
+
export function getTrimmedTrace(cause, stackTrace) {
|
|
145
|
+
const error = (cause.tag === 'Unexpected' || cause.tag === 'Expected') && cause.error instanceof Error
|
|
146
|
+
? cause.error
|
|
147
|
+
: new Error();
|
|
148
|
+
const trace = Trace.runtime(error, getTrimmedTrace);
|
|
149
|
+
const toCompare = getTraceUpTo(stackTrace, trace.frames.length);
|
|
150
|
+
return trimOverlappingTraces(toCompare, trace);
|
|
151
|
+
}
|
|
152
|
+
//# sourceMappingURL=Trace.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Trace.js","sourceRoot":"","sources":["../../src/Trace/Trace.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Trace/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Trace/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ProgramPattern } from 'ts-patch';
|
|
2
|
+
import ts from 'typescript';
|
|
3
|
+
export interface TracingPluginOptions {
|
|
4
|
+
readonly root?: string;
|
|
5
|
+
readonly rewritePaths?: ReadonlyArray<readonly [string, string]>;
|
|
6
|
+
}
|
|
7
|
+
export declare const makeTracingTransformer: (program: ts.Program, config: TracingPluginOptions) => (ctx: ts.TransformationContext) => (sourceFile: ts.SourceFile) => ts.SourceFile;
|
|
8
|
+
declare const _default: ProgramPattern;
|
|
9
|
+
export default _default;
|
|
10
|
+
//# sourceMappingURL=plugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/Tracing/plugin.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AACzC,OAAO,EAAE,MAAM,YAAY,CAAA;AAM3B,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,YAAY,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;CACjE;AAED,eAAO,MAAM,sBAAsB,YAAa,GAAG,OAAO,UAAU,oBAAoB,WAIzE,GAAG,qBAAqB,kBACf,GAAG,UAAU,KAAG,GAAG,UAmF1C,CAAA;;AAED,wBAAuD"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-non-null-assertion */
|
|
2
|
+
/* eslint-disable import/no-named-as-default-member */
|
|
3
|
+
import { relative } from 'path';
|
|
4
|
+
import ts from 'typescript';
|
|
5
|
+
const INSTRUMENTED_REGEX = /^[a-z]+\s.+:[0-9]+:[0-9]+$/i;
|
|
6
|
+
const isInstrumentedTrace = (trace) => INSTRUMENTED_REGEX.test(trace);
|
|
7
|
+
export const makeTracingTransformer = (program, config) => {
|
|
8
|
+
const checker = program.getTypeChecker();
|
|
9
|
+
const root = config?.root ?? program.getCompilerOptions().rootDir ?? process.cwd();
|
|
10
|
+
return (ctx) => {
|
|
11
|
+
return (sourceFile) => {
|
|
12
|
+
const fileName = rewritePaths(relative(root, sourceFile.fileName), config.rewritePaths);
|
|
13
|
+
function getTrace(node, existingText) {
|
|
14
|
+
const nodeEnd = sourceFile.getLineAndCharacterOfPosition(node.getEnd());
|
|
15
|
+
// Must be an expression, so we create a binary expression to concatenate the 2 parts of the string
|
|
16
|
+
// and to handle existing expressions in existingText.
|
|
17
|
+
const expression = ts.factory.createBinaryExpression(ts.factory.createStringLiteral(existingText ? trimQuotations(existingText) : node.getText()), ts.factory.createToken(ts.SyntaxKind.PlusToken), ts.factory.createStringLiteral(` ${fileName}:${nodeEnd.line + 1}:${nodeEnd.character + 1}`));
|
|
18
|
+
return expression;
|
|
19
|
+
}
|
|
20
|
+
function visitor(node) {
|
|
21
|
+
if (ts.isCallExpression(node)) {
|
|
22
|
+
// Continue processing any arguments that might be CallExpressions
|
|
23
|
+
const processedArguments = ts.visitNodes(node.arguments, visitor);
|
|
24
|
+
// Resolve signature to get the declaration parameters.
|
|
25
|
+
const signature = checker.getResolvedSignature(node) ?? getSignatureIfSole(checker, node.expression);
|
|
26
|
+
const signatureDeclaration = signature?.getDeclaration();
|
|
27
|
+
const declarationParameters = Array.from(signatureDeclaration?.parameters || []);
|
|
28
|
+
// Grab the last argument and last declaration parameter.
|
|
29
|
+
const lastParameter = processedArguments[processedArguments.length - 1];
|
|
30
|
+
const lastDeclarationParameter = declarationParameters[declarationParameters.length - 1];
|
|
31
|
+
// Check if this function should append a trace, and how.
|
|
32
|
+
const isTraceLastParameter = lastDeclarationParameter?.name.getText() === '__trace';
|
|
33
|
+
const haveNotProvidedTrace = processedArguments.length === declarationParameters.length - 1;
|
|
34
|
+
const traceIsMissingLocation = processedArguments.length === declarationParameters.length && lastParameter
|
|
35
|
+
? lastParameter.getText(sourceFile) !== '__trace' &&
|
|
36
|
+
!isInstrumentedTrace(lastParameter.getText(sourceFile))
|
|
37
|
+
: false;
|
|
38
|
+
const shouldAppendTrace = isTraceLastParameter && (haveNotProvidedTrace || traceIsMissingLocation);
|
|
39
|
+
// Update the CallExpression
|
|
40
|
+
return ts.factory.updateCallExpression(node, ts.visitNode(node.expression, visitor), // Process the expression
|
|
41
|
+
node.typeArguments, shouldAppendTrace
|
|
42
|
+
? haveNotProvidedTrace
|
|
43
|
+
? [...node.arguments, getTrace(node.expression)] // Append new Trace
|
|
44
|
+
: [
|
|
45
|
+
// Ammend existing custom Trace with line numbers
|
|
46
|
+
...node.arguments.slice(0, -1),
|
|
47
|
+
getTrace(node.expression, lastParameter.getText(sourceFile)),
|
|
48
|
+
]
|
|
49
|
+
: node.arguments);
|
|
50
|
+
}
|
|
51
|
+
// Ensure we traverse through variable declarations
|
|
52
|
+
if (ts.isVariableDeclaration(node)) {
|
|
53
|
+
return ts.factory.updateVariableDeclaration(node, node.name, node.exclamationToken, node.type, ts.visitEachChild(node.initializer, visitor, ctx));
|
|
54
|
+
}
|
|
55
|
+
// Keep traversing through the rest of the tree
|
|
56
|
+
return ts.visitEachChild(node, visitor, ctx);
|
|
57
|
+
}
|
|
58
|
+
return ts.visitEachChild(sourceFile, visitor, ctx);
|
|
59
|
+
};
|
|
60
|
+
};
|
|
61
|
+
};
|
|
62
|
+
export default makeTracingTransformer;
|
|
63
|
+
function getSignatureIfSole(checker, node) {
|
|
64
|
+
const ds = checker.getTypeAtLocation(node).getCallSignatures();
|
|
65
|
+
if (ds?.length !== 1) {
|
|
66
|
+
return undefined;
|
|
67
|
+
}
|
|
68
|
+
return ds?.[0];
|
|
69
|
+
}
|
|
70
|
+
const quotes = [`'`, `"`];
|
|
71
|
+
function trimQuotations(s) {
|
|
72
|
+
if (s.length === 0) {
|
|
73
|
+
return s;
|
|
74
|
+
}
|
|
75
|
+
if (quotes.includes(s[0])) {
|
|
76
|
+
s = s.slice(1);
|
|
77
|
+
}
|
|
78
|
+
if (quotes.includes(s[s.length - 1])) {
|
|
79
|
+
s = s.slice(0, -1);
|
|
80
|
+
}
|
|
81
|
+
return s;
|
|
82
|
+
}
|
|
83
|
+
function rewritePaths(path, rewritePaths) {
|
|
84
|
+
if (!rewritePaths) {
|
|
85
|
+
return path;
|
|
86
|
+
}
|
|
87
|
+
for (const [from, to] of rewritePaths) {
|
|
88
|
+
const fromRegex = new RegExp(from, 'g');
|
|
89
|
+
path = path.replace(fromRegex, to);
|
|
90
|
+
}
|
|
91
|
+
return path;
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=plugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/Tracing/plugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { Plugin } from 'vite';
|
|
2
|
+
export interface TracingParams {
|
|
3
|
+
readonly tsconfig: string;
|
|
4
|
+
readonly build?: boolean;
|
|
5
|
+
readonly serve?: boolean;
|
|
6
|
+
readonly dev?: boolean;
|
|
7
|
+
readonly ssr?: boolean;
|
|
8
|
+
}
|
|
9
|
+
export declare function tracingPlugin(params: TracingParams): Plugin;
|
|
10
|
+
//# sourceMappingURL=vite.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vite.d.ts","sourceRoot":"","sources":["../../src/Tracing/vite.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAIlC,MAAM,WAAW,aAAa;IAE5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IAGzB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAA;IACtB,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAA;CACvB;AAMD,wBAAgB,aAAa,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CAkD3D"}
|