alchemy 2.0.0-beta.84 → 2.0.0-beta.85
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/THIRD_PARTY_LICENSES.md +2 -2
- package/bin/cli.js +14 -6
- package/bin/register-oxc.js +16 -12
- package/lib/AdoptPolicy.d.ts +73 -0
- package/lib/AdoptPolicy.d.ts.map +1 -1
- package/lib/AdoptPolicy.js +54 -0
- package/lib/AdoptPolicy.js.map +1 -1
- package/lib/Alchemist/AuthRegistry.d.ts +31 -0
- package/lib/Alchemist/AuthRegistry.d.ts.map +1 -0
- package/lib/Alchemist/AuthRegistry.js +95 -0
- package/lib/Alchemist/AuthRegistry.js.map +1 -0
- package/lib/Alchemist/Drift.d.ts +70 -0
- package/lib/Alchemist/Drift.d.ts.map +1 -0
- package/lib/Alchemist/Drift.js +54 -0
- package/lib/Alchemist/Drift.js.map +1 -0
- package/lib/Alchemist/Entrypoint.d.ts +27 -3
- package/lib/Alchemist/Entrypoint.d.ts.map +1 -1
- package/lib/Alchemist/Entrypoint.js +34 -3
- package/lib/Alchemist/Entrypoint.js.map +1 -1
- package/lib/Alchemist/Errors.d.ts +1 -1
- package/lib/Alchemist/Errors.d.ts.map +1 -1
- package/lib/Alchemist/Errors.js +1 -1
- package/lib/Alchemist/Errors.js.map +1 -1
- package/lib/Alchemist/Logs.d.ts +46 -0
- package/lib/Alchemist/Logs.d.ts.map +1 -0
- package/lib/Alchemist/{routes/logs.js → Logs.js} +21 -26
- package/lib/Alchemist/Logs.js.map +1 -0
- package/lib/Alchemist/Nuke.d.ts +69 -0
- package/lib/Alchemist/Nuke.d.ts.map +1 -0
- package/lib/Alchemist/Nuke.js +35 -0
- package/lib/Alchemist/Nuke.js.map +1 -0
- package/lib/Alchemist/Operations.d.ts +168 -0
- package/lib/Alchemist/Operations.d.ts.map +1 -0
- package/lib/Alchemist/Operations.js +165 -0
- package/lib/Alchemist/Operations.js.map +1 -0
- package/lib/Alchemist/Profile.d.ts +132 -0
- package/lib/Alchemist/Profile.d.ts.map +1 -0
- package/lib/Alchemist/{routes/profile.js → Profile.js} +20 -21
- package/lib/Alchemist/Profile.js.map +1 -0
- package/lib/Alchemist/{routes/provider.d.ts → Provider.d.ts} +4 -4
- package/lib/Alchemist/Provider.d.ts.map +1 -0
- package/lib/Alchemist/{routes/provider.js → Provider.js} +7 -6
- package/lib/Alchemist/Provider.js.map +1 -0
- package/lib/Alchemist/Runtime.d.ts +10 -6
- package/lib/Alchemist/Runtime.d.ts.map +1 -1
- package/lib/Alchemist/Runtime.js +38 -2
- package/lib/Alchemist/Runtime.js.map +1 -1
- package/lib/Alchemist/{routes/state.d.ts → State.d.ts} +36 -16
- package/lib/Alchemist/State.d.ts.map +1 -0
- package/lib/Alchemist/{routes/state.js → State.js} +50 -15
- package/lib/Alchemist/State.js.map +1 -0
- package/lib/Alchemist/index.d.ts +11 -10
- package/lib/Alchemist/index.d.ts.map +1 -1
- package/lib/Alchemist/index.js +10 -9
- package/lib/Alchemist/index.js.map +1 -1
- package/lib/Apply.d.ts +2 -8
- package/lib/Apply.d.ts.map +1 -1
- package/lib/Apply.js +364 -184
- package/lib/Apply.js.map +1 -1
- package/lib/Auth/AuthProvider.d.ts +24 -11
- package/lib/Auth/AuthProvider.d.ts.map +1 -1
- package/lib/Auth/AuthProvider.js +28 -12
- package/lib/Auth/AuthProvider.js.map +1 -1
- package/lib/Auth/BrowserOAuth.d.ts +6 -8
- package/lib/Auth/BrowserOAuth.d.ts.map +1 -1
- package/lib/Auth/BrowserOAuth.js +25 -41
- package/lib/Auth/BrowserOAuth.js.map +1 -1
- package/lib/Auth/Credentials.d.ts.map +1 -1
- package/lib/Auth/Credentials.js +2 -2
- package/lib/Auth/Credentials.js.map +1 -1
- package/lib/Auth/Demand.d.ts +4 -4
- package/lib/Auth/Demand.d.ts.map +1 -1
- package/lib/Auth/Demand.js +16 -10
- package/lib/Auth/Demand.js.map +1 -1
- package/lib/Auth/Env.d.ts +2 -1
- package/lib/Auth/Env.d.ts.map +1 -1
- package/lib/Auth/Env.js +4 -2
- package/lib/Auth/Env.js.map +1 -1
- package/lib/Auth/Inspect.d.ts +2 -2
- package/lib/Auth/Inspect.d.ts.map +1 -1
- package/lib/Auth/Inspect.js +3 -1
- package/lib/Auth/Inspect.js.map +1 -1
- package/lib/Auth/Lock.d.ts.map +1 -1
- package/lib/Auth/Lock.js +4 -8
- package/lib/Auth/Lock.js.map +1 -1
- package/lib/Auth/OAuthFlow.d.ts +3 -12
- package/lib/Auth/OAuthFlow.d.ts.map +1 -1
- package/lib/Auth/OAuthFlow.js +7 -17
- package/lib/Auth/OAuthFlow.js.map +1 -1
- package/lib/Auth/Paths.d.ts +2 -1
- package/lib/Auth/Paths.d.ts.map +1 -1
- package/lib/Auth/Paths.js +3 -2
- package/lib/Auth/Paths.js.map +1 -1
- package/lib/Auth/Profile.d.ts +10 -0
- package/lib/Auth/Profile.d.ts.map +1 -1
- package/lib/Auth/Profile.js +19 -2
- package/lib/Auth/Profile.js.map +1 -1
- package/lib/Auth/Registry.d.ts +20 -0
- package/lib/Auth/Registry.d.ts.map +1 -0
- package/lib/Auth/Registry.js +17 -0
- package/lib/Auth/Registry.js.map +1 -0
- package/lib/Auth/Resolve.d.ts +34 -2
- package/lib/Auth/Resolve.d.ts.map +1 -1
- package/lib/Auth/Resolve.js +51 -3
- package/lib/Auth/Resolve.js.map +1 -1
- package/lib/Auth/StoredAuthProvider.d.ts +1 -1
- package/lib/Auth/StoredAuthProvider.d.ts.map +1 -1
- package/lib/Auth/StoredAuthProvider.js +1 -2
- package/lib/Auth/StoredAuthProvider.js.map +1 -1
- package/lib/Binding.d.ts.map +1 -1
- package/lib/Binding.js +3 -1
- package/lib/Binding.js.map +1 -1
- package/lib/Bundle/Bundle.d.ts +5 -0
- package/lib/Bundle/Bundle.d.ts.map +1 -1
- package/lib/Bundle/Bundle.js +36 -6
- package/lib/Bundle/Bundle.js.map +1 -1
- package/lib/Bundle/NamespaceImportPlugin.d.ts +55 -0
- package/lib/Bundle/NamespaceImportPlugin.d.ts.map +1 -0
- package/lib/Bundle/NamespaceImportPlugin.js +226 -0
- package/lib/Bundle/NamespaceImportPlugin.js.map +1 -0
- package/lib/Bundle/index.d.ts +1 -0
- package/lib/Bundle/index.d.ts.map +1 -1
- package/lib/Bundle/index.js +1 -0
- package/lib/Bundle/index.js.map +1 -1
- package/lib/Cli/Format.d.ts.map +1 -1
- package/lib/Cli/Format.js +2 -1
- package/lib/Cli/Format.js.map +1 -1
- package/lib/Cli/GlobalLog.d.ts +72 -26
- package/lib/Cli/GlobalLog.d.ts.map +1 -1
- package/lib/Cli/GlobalLog.js +151 -59
- package/lib/Cli/GlobalLog.js.map +1 -1
- package/lib/Cli/LoggingCli.d.ts.map +1 -1
- package/lib/Cli/LoggingCli.js +24 -18
- package/lib/Cli/LoggingCli.js.map +1 -1
- package/lib/Cli/PlainCliFormatter.d.ts.map +1 -1
- package/lib/Cli/PlainCliFormatter.js +4 -1
- package/lib/Cli/PlainCliFormatter.js.map +1 -1
- package/lib/Cli/Present.d.ts +14 -0
- package/lib/Cli/Present.d.ts.map +1 -0
- package/lib/Cli/Present.js +22 -0
- package/lib/Cli/Present.js.map +1 -0
- package/lib/Cli/SigilRenderer.d.ts +58 -0
- package/lib/Cli/SigilRenderer.d.ts.map +1 -0
- package/lib/Cli/SigilRenderer.js +39 -0
- package/lib/Cli/SigilRenderer.js.map +1 -0
- package/lib/Cli/checkVersion.d.ts +11 -14
- package/lib/Cli/checkVersion.d.ts.map +1 -1
- package/lib/Cli/checkVersion.js +19 -77
- package/lib/Cli/checkVersion.js.map +1 -1
- package/lib/Cli/commands/confirm.d.ts +2 -2
- package/lib/Cli/commands/confirm.d.ts.map +1 -1
- package/lib/Cli/commands/confirm.js +3 -3
- package/lib/Cli/commands/confirm.js.map +1 -1
- package/lib/Cli/commands/deploy.d.ts +4 -4
- package/lib/Cli/commands/deploy.d.ts.map +1 -1
- package/lib/Cli/commands/deploy.js +40 -39
- package/lib/Cli/commands/deploy.js.map +1 -1
- package/lib/Cli/commands/dev.d.ts.map +1 -1
- package/lib/Cli/commands/dev.js +41 -3
- package/lib/Cli/commands/dev.js.map +1 -1
- package/lib/Cli/commands/drift.d.ts +2 -2
- package/lib/Cli/commands/drift.d.ts.map +1 -1
- package/lib/Cli/commands/drift.js +14 -13
- package/lib/Cli/commands/drift.js.map +1 -1
- package/lib/Cli/commands/errors.d.ts.map +1 -1
- package/lib/Cli/commands/errors.js +2 -1
- package/lib/Cli/commands/errors.js.map +1 -1
- package/lib/Cli/commands/instrument.d.ts +15 -5
- package/lib/Cli/commands/instrument.d.ts.map +1 -1
- package/lib/Cli/commands/instrument.js +33 -8
- package/lib/Cli/commands/instrument.js.map +1 -1
- package/lib/Cli/commands/logs.d.ts +1 -1
- package/lib/Cli/commands/logs.d.ts.map +1 -1
- package/lib/Cli/commands/logs.js +22 -22
- package/lib/Cli/commands/logs.js.map +1 -1
- package/lib/Cli/commands/nuke.d.ts +3 -2
- package/lib/Cli/commands/nuke.d.ts.map +1 -1
- package/lib/Cli/commands/nuke.js +19 -17
- package/lib/Cli/commands/nuke.js.map +1 -1
- package/lib/Cli/commands/profile/commands.d.ts +3 -2
- package/lib/Cli/commands/profile/commands.d.ts.map +1 -1
- package/lib/Cli/commands/profile/commands.js +26 -27
- package/lib/Cli/commands/profile/commands.js.map +1 -1
- package/lib/Cli/commands/profile/flows.d.ts +6 -5
- package/lib/Cli/commands/profile/flows.d.ts.map +1 -1
- package/lib/Cli/commands/profile/flows.js +19 -17
- package/lib/Cli/commands/profile/flows.js.map +1 -1
- package/lib/Cli/commands/profile/hub.d.ts +1 -2
- package/lib/Cli/commands/profile/hub.d.ts.map +1 -1
- package/lib/Cli/commands/profile/hub.js +15 -17
- package/lib/Cli/commands/profile/hub.js.map +1 -1
- package/lib/Cli/commands/provider.d.ts +3 -1
- package/lib/Cli/commands/provider.d.ts.map +1 -1
- package/lib/Cli/commands/provider.js +4 -4
- package/lib/Cli/commands/provider.js.map +1 -1
- package/lib/Cli/commands/render.d.ts +2 -4
- package/lib/Cli/commands/render.d.ts.map +1 -1
- package/lib/Cli/commands/render.js +33 -56
- package/lib/Cli/commands/render.js.map +1 -1
- package/lib/Cli/commands/state.d.ts +1 -2
- package/lib/Cli/commands/state.d.ts.map +1 -1
- package/lib/Cli/commands/state.js +74 -27
- package/lib/Cli/commands/state.js.map +1 -1
- package/lib/Cli/components/capabilities.d.ts +4 -0
- package/lib/Cli/components/capabilities.d.ts.map +1 -0
- package/lib/Cli/components/capabilities.js +18 -0
- package/lib/Cli/components/capabilities.js.map +1 -0
- package/lib/Cli/components/types.d.ts +2 -81
- package/lib/Cli/components/types.d.ts.map +1 -1
- package/lib/Cli/components/types.js +1 -3
- package/lib/Cli/components/types.js.map +1 -1
- package/lib/Cli/components/ui/Environment.d.ts +3 -3
- package/lib/Cli/components/ui/Environment.d.ts.map +1 -1
- package/lib/Cli/components/ui/Environment.js.map +1 -1
- package/lib/Cli/components/ui/Interactive.d.ts +17 -4
- package/lib/Cli/components/ui/Interactive.d.ts.map +1 -1
- package/lib/Cli/components/ui/Interactive.js +7 -11
- package/lib/Cli/components/ui/Interactive.js.map +1 -1
- package/lib/Cli/components/ui/Layout.d.ts +1 -1
- package/lib/Cli/components/ui/Layout.d.ts.map +1 -1
- package/lib/Cli/components/ui/Layout.js +1 -1
- package/lib/Cli/components/ui/Layout.js.map +1 -1
- package/lib/Cli/components/ui/Typography.d.ts +1 -1
- package/lib/Cli/components/ui/Typography.d.ts.map +1 -1
- package/lib/Cli/components/ui/Typography.js +1 -1
- package/lib/Cli/components/ui/Typography.js.map +1 -1
- package/lib/Cli/components/ui/index.d.ts +2 -2
- package/lib/Cli/components/ui/index.js +2 -2
- package/lib/Cli/components/view/ApprovePlan.d.ts +1 -1
- package/lib/Cli/components/view/ApprovePlan.d.ts.map +1 -1
- package/lib/Cli/components/view/ApprovePlan.js +2 -1
- package/lib/Cli/components/view/ApprovePlan.js.map +1 -1
- package/lib/Cli/components/view/Format.d.ts +5 -0
- package/lib/Cli/components/view/Format.d.ts.map +1 -0
- package/lib/Cli/components/view/Format.js +39 -0
- package/lib/Cli/components/view/Format.js.map +1 -0
- package/lib/Cli/components/view/Help.d.ts +2 -2
- package/lib/Cli/components/view/Help.d.ts.map +1 -1
- package/lib/Cli/components/view/Help.js +7 -5
- package/lib/Cli/components/view/Help.js.map +1 -1
- package/lib/Cli/components/view/Logo.js +1 -1
- package/lib/Cli/components/view/Logo.js.map +1 -1
- package/lib/Cli/components/view/Nuke.d.ts +8 -9
- package/lib/Cli/components/view/Nuke.d.ts.map +1 -1
- package/lib/Cli/components/view/Nuke.js +49 -52
- package/lib/Cli/components/view/Nuke.js.map +1 -1
- package/lib/Cli/components/view/PlanDecision.d.ts +1 -1
- package/lib/Cli/components/view/PlanDecision.d.ts.map +1 -1
- package/lib/Cli/components/view/PlanDecision.js +1 -1
- package/lib/Cli/components/view/PlanDecision.js.map +1 -1
- package/lib/Cli/components/view/PlanRow.js +1 -1
- package/lib/Cli/components/view/PlanRow.js.map +1 -1
- package/lib/Cli/components/view/PlanTree.d.ts +1 -1
- package/lib/Cli/components/view/PlanTree.d.ts.map +1 -1
- package/lib/Cli/components/view/PlanTree.js +1 -1
- package/lib/Cli/components/view/PlanView.js +1 -1
- package/lib/Cli/components/view/PlanView.js.map +1 -1
- package/lib/Cli/components/view/Profile.d.ts +1 -1
- package/lib/Cli/components/view/Profile.js +2 -2
- package/lib/Cli/components/view/Profile.js.map +1 -1
- package/lib/Cli/components/view/ProfileDashboard.d.ts +4 -4
- package/lib/Cli/components/view/ProfileDashboard.d.ts.map +1 -1
- package/lib/Cli/components/view/ProfileDashboard.js +9 -8
- package/lib/Cli/components/view/ProfileDashboard.js.map +1 -1
- package/lib/Cli/components/view/Prompts.d.ts +3 -3
- package/lib/Cli/components/view/Prompts.d.ts.map +1 -1
- package/lib/Cli/components/view/Prompts.js +11 -18
- package/lib/Cli/components/view/Prompts.js.map +1 -1
- package/lib/Cli/components/view/Runtime.d.ts +5 -5
- package/lib/Cli/components/view/Runtime.d.ts.map +1 -1
- package/lib/Cli/components/view/Runtime.js +136 -219
- package/lib/Cli/components/view/Runtime.js.map +1 -1
- package/lib/Cli/components/view/SigilCli.d.ts +2 -2
- package/lib/Cli/components/view/SigilCli.d.ts.map +1 -1
- package/lib/Cli/components/view/SigilCli.js +7 -7
- package/lib/Cli/components/view/SigilCli.js.map +1 -1
- package/lib/Cli/components/view/StateExplorer.d.ts +1 -1
- package/lib/Cli/components/view/StateExplorer.d.ts.map +1 -1
- package/lib/Cli/components/view/StateExplorer.js +2 -1
- package/lib/Cli/components/view/StateExplorer.js.map +1 -1
- package/lib/Cli/components/view/statusStyle.d.ts +2 -2
- package/lib/Cli/components/view/statusStyle.d.ts.map +1 -1
- package/lib/Cli/components/view/statusStyle.js +1 -1
- package/lib/Cli/components/view/statusStyle.js.map +1 -1
- package/lib/Cli/exec.d.ts +6 -1
- package/lib/Cli/exec.d.ts.map +1 -1
- package/lib/Cli/exec.js +29 -34
- package/lib/Cli/exec.js.map +1 -1
- package/lib/Cli/main.d.ts.map +1 -1
- package/lib/Cli/main.js +35 -26
- package/lib/Cli/main.js.map +1 -1
- package/lib/Cli/selectCli.d.ts +2 -2
- package/lib/Cli/selectCli.d.ts.map +1 -1
- package/lib/Cli/selectCli.js +2 -2
- package/lib/Cli/selectCli.js.map +1 -1
- package/lib/Command/Command.js +1 -1
- package/lib/Command/Command.js.map +1 -1
- package/lib/Command/Dev.d.ts +58 -4
- package/lib/Command/Dev.d.ts.map +1 -1
- package/lib/Command/Dev.js +87 -30
- package/lib/Command/Dev.js.map +1 -1
- package/lib/Command/Local.d.ts +1 -1
- package/lib/Command/Memo.js +1 -1
- package/lib/Command/Memo.js.map +1 -1
- package/lib/Command/Providers.d.ts +1 -1
- package/lib/Command/Providers.d.ts.map +1 -1
- package/lib/Contributions.d.ts +2 -3
- package/lib/Contributions.d.ts.map +1 -1
- package/lib/Contributions.js +38 -6
- package/lib/Contributions.js.map +1 -1
- package/lib/DNS/Adapter.d.ts +204 -0
- package/lib/DNS/Adapter.d.ts.map +1 -0
- package/lib/DNS/Adapter.js +112 -0
- package/lib/DNS/Adapter.js.map +1 -0
- package/lib/DNS/index.d.ts +2 -0
- package/lib/DNS/index.d.ts.map +1 -0
- package/lib/DNS/index.js +2 -0
- package/lib/DNS/index.js.map +1 -0
- package/lib/Deploy.d.ts +7 -2
- package/lib/Deploy.d.ts.map +1 -1
- package/lib/Deploy.js +8 -3
- package/lib/Deploy.js.map +1 -1
- package/lib/Destroy.d.ts +5 -8
- package/lib/Destroy.d.ts.map +1 -1
- package/lib/Destroy.js +10 -7
- package/lib/Destroy.js.map +1 -1
- package/lib/Diff.d.ts.map +1 -1
- package/lib/Diff.js +14 -4
- package/lib/Diff.js.map +1 -1
- package/lib/Drift.d.ts +7 -7
- package/lib/Drift.d.ts.map +1 -1
- package/lib/Drift.js +184 -101
- package/lib/Drift.js.map +1 -1
- package/lib/EvalStack.d.ts +23 -0
- package/lib/EvalStack.d.ts.map +1 -0
- package/lib/EvalStack.js +47 -0
- package/lib/EvalStack.js.map +1 -0
- package/lib/Events.d.ts +210 -0
- package/lib/Events.d.ts.map +1 -0
- package/lib/Events.js +244 -0
- package/lib/Events.js.map +1 -0
- package/lib/Interaction.d.ts +159 -48
- package/lib/Interaction.d.ts.map +1 -1
- package/lib/Interaction.js +139 -58
- package/lib/Interaction.js.map +1 -1
- package/lib/Local/LocalProvider.d.ts.map +1 -1
- package/lib/Local/LocalProvider.js +31 -9
- package/lib/Local/LocalProvider.js.map +1 -1
- package/lib/Local/RpcProvider.d.ts.map +1 -1
- package/lib/Local/RpcProvider.js +10 -1
- package/lib/Local/RpcProvider.js.map +1 -1
- package/lib/Local/RpcProviderProxy.d.ts +16 -0
- package/lib/Local/RpcProviderProxy.d.ts.map +1 -1
- package/lib/Local/RpcProviderProxy.js +19 -10
- package/lib/Local/RpcProviderProxy.js.map +1 -1
- package/lib/Local/RpcSerialization.d.ts +3 -2
- package/lib/Local/RpcSerialization.d.ts.map +1 -1
- package/lib/Local/RpcSerialization.js +13 -10
- package/lib/Local/RpcSerialization.js.map +1 -1
- package/lib/Local/RpcServer.d.ts +2 -1
- package/lib/Local/RpcServer.d.ts.map +1 -1
- package/lib/Local/RpcServer.js +19 -14
- package/lib/Local/RpcServer.js.map +1 -1
- package/lib/Local/RpcServerBun.d.ts.map +1 -1
- package/lib/Local/RpcServerBun.js +8 -4
- package/lib/Local/RpcServerBun.js.map +1 -1
- package/lib/Local/RpcServerEnvironment.d.ts +2 -3
- package/lib/Local/RpcServerEnvironment.d.ts.map +1 -1
- package/lib/Local/RpcServerEnvironment.js +2 -2
- package/lib/Local/RpcServerEnvironment.js.map +1 -1
- package/lib/Local/RpcServerNode.d.ts.map +1 -1
- package/lib/Local/RpcServerNode.js +5 -1
- package/lib/Local/RpcServerNode.js.map +1 -1
- package/lib/Local/RpcServerSession.d.ts +1 -1
- package/lib/Local/RpcServerSession.d.ts.map +1 -1
- package/lib/Local/RpcServerSession.js.map +1 -1
- package/lib/Local/RpcSpawner.d.ts +6 -8
- package/lib/Local/RpcSpawner.d.ts.map +1 -1
- package/lib/Local/RpcSpawner.js +45 -36
- package/lib/Local/RpcSpawner.js.map +1 -1
- package/lib/Local/Sidecar.d.ts +23 -0
- package/lib/Local/Sidecar.d.ts.map +1 -1
- package/lib/Local/Sidecar.js +14 -9
- package/lib/Local/Sidecar.js.map +1 -1
- package/lib/Nuke.d.ts +5 -23
- package/lib/Nuke.d.ts.map +1 -1
- package/lib/Nuke.js +48 -13
- package/lib/Nuke.js.map +1 -1
- package/lib/Output.d.ts +19 -1
- package/lib/Output.d.ts.map +1 -1
- package/lib/Output.js +96 -3
- package/lib/Output.js.map +1 -1
- package/lib/Plan.d.ts +5 -1
- package/lib/Plan.d.ts.map +1 -1
- package/lib/Plan.js +111 -33
- package/lib/Plan.js.map +1 -1
- package/lib/Platform.d.ts.map +1 -1
- package/lib/Platform.js +31 -7
- package/lib/Platform.js.map +1 -1
- package/lib/Provider.d.ts +45 -0
- package/lib/Provider.d.ts.map +1 -1
- package/lib/Provider.js +2 -2
- package/lib/Provider.js.map +1 -1
- package/lib/Report.d.ts +17 -195
- package/lib/Report.d.ts.map +1 -1
- package/lib/Report.js +39 -12
- package/lib/Report.js.map +1 -1
- package/lib/Runtime/ManagedHttpShutdown.d.ts +17 -0
- package/lib/Runtime/ManagedHttpShutdown.d.ts.map +1 -1
- package/lib/Runtime/ManagedHttpShutdown.js +11 -2
- package/lib/Runtime/ManagedHttpShutdown.js.map +1 -1
- package/lib/RuntimeContext.js +1 -1
- package/lib/RuntimeContext.js.map +1 -1
- package/lib/Stack.d.ts +49 -29
- package/lib/Stack.d.ts.map +1 -1
- package/lib/Stack.js +25 -31
- package/lib/Stack.js.map +1 -1
- package/lib/State/BucketState.d.ts.map +1 -1
- package/lib/State/BucketState.js +43 -14
- package/lib/State/BucketState.js.map +1 -1
- package/lib/State/LocalState.d.ts.map +1 -1
- package/lib/State/LocalState.js +3 -3
- package/lib/State/LocalState.js.map +1 -1
- package/lib/State/Provisioning.d.ts +5 -0
- package/lib/State/Provisioning.d.ts.map +1 -1
- package/lib/State/Provisioning.js +3 -1
- package/lib/State/Provisioning.js.map +1 -1
- package/lib/State/ResourceState.d.ts +2 -0
- package/lib/State/ResourceState.d.ts.map +1 -1
- package/lib/State/State.d.ts +26 -0
- package/lib/State/State.d.ts.map +1 -1
- package/lib/State/StateEncoding.d.ts +7 -0
- package/lib/State/StateEncoding.d.ts.map +1 -1
- package/lib/State/StateEncoding.js +19 -0
- package/lib/State/StateEncoding.js.map +1 -1
- package/lib/State/index.js +2 -2
- package/lib/State/index.js.map +1 -1
- package/lib/Telemetry/Layer.d.ts +2 -5
- package/lib/Telemetry/Layer.d.ts.map +1 -1
- package/lib/Telemetry/Layer.js +3 -23
- package/lib/Telemetry/Layer.js.map +1 -1
- package/lib/Telemetry/Metrics.d.ts +1 -1
- package/lib/Telemetry/Metrics.d.ts.map +1 -1
- package/lib/TelemetryRelay.js +1 -1
- package/lib/TelemetryRelay.js.map +1 -1
- package/lib/TelemetryRuntime.d.ts +1 -1
- package/lib/TelemetryRuntime.d.ts.map +1 -1
- package/lib/TelemetryRuntime.js +4 -3
- package/lib/TelemetryRuntime.js.map +1 -1
- package/lib/Util/ConsoleSink.d.ts +23 -2
- package/lib/Util/ConsoleSink.d.ts.map +1 -1
- package/lib/Util/ConsoleSink.js +54 -14
- package/lib/Util/ConsoleSink.js.map +1 -1
- package/lib/Util/LogAnnotation.d.ts +19 -0
- package/lib/Util/LogAnnotation.d.ts.map +1 -0
- package/lib/Util/LogAnnotation.js +19 -0
- package/lib/Util/LogAnnotation.js.map +1 -0
- package/lib/Util/LogRecord.d.ts +281 -0
- package/lib/Util/LogRecord.d.ts.map +1 -0
- package/lib/Util/LogRecord.js +267 -0
- package/lib/Util/LogRecord.js.map +1 -0
- package/lib/Util/Node.d.ts +9 -0
- package/lib/Util/Node.d.ts.map +1 -1
- package/lib/Util/Node.js +10 -6
- package/lib/Util/Node.js.map +1 -1
- package/lib/Util/PlatformServices.d.ts +3 -2
- package/lib/Util/PlatformServices.d.ts.map +1 -1
- package/lib/Util/PlatformServices.js +6 -2
- package/lib/Util/PlatformServices.js.map +1 -1
- package/lib/Util/ResourceOutput.d.ts +18 -10
- package/lib/Util/ResourceOutput.d.ts.map +1 -1
- package/lib/Util/ResourceOutput.js +22 -23
- package/lib/Util/ResourceOutput.js.map +1 -1
- package/lib/Util/Shutdown.d.ts +10 -0
- package/lib/Util/Shutdown.d.ts.map +1 -0
- package/lib/Util/Shutdown.js +32 -0
- package/lib/Util/Shutdown.js.map +1 -0
- package/lib/Util/Terminal.d.ts +2 -4
- package/lib/Util/Terminal.d.ts.map +1 -1
- package/lib/Util/Terminal.js +3 -11
- package/lib/Util/Terminal.js.map +1 -1
- package/lib/Util/TraceParent.d.ts +32 -0
- package/lib/Util/TraceParent.d.ts.map +1 -0
- package/lib/Util/TraceParent.js +42 -0
- package/lib/Util/TraceParent.js.map +1 -0
- package/lib/Util/base64.d.ts +7 -0
- package/lib/Util/base64.d.ts.map +1 -0
- package/lib/Util/base64.js +24 -0
- package/lib/Util/base64.js.map +1 -0
- package/lib/Util/cached-function.d.ts +5 -0
- package/lib/Util/cached-function.d.ts.map +1 -1
- package/lib/Util/cached-function.js +13 -8
- package/lib/Util/cached-function.js.map +1 -1
- package/lib/Util/data.d.ts +1 -1
- package/lib/Util/data.d.ts.map +1 -1
- package/lib/Util/data.js +1 -1
- package/lib/Util/data.js.map +1 -1
- package/lib/Util/equal.d.ts.map +1 -1
- package/lib/Util/equal.js +3 -2
- package/lib/Util/equal.js.map +1 -1
- package/lib/Util/extraFiles.d.ts.map +1 -1
- package/lib/Util/extraFiles.js +5 -5
- package/lib/Util/extraFiles.js.map +1 -1
- package/lib/Util/interactive.js +1 -1
- package/lib/Website/AstroOutput.d.ts +42 -0
- package/lib/Website/AstroOutput.d.ts.map +1 -0
- package/lib/Website/AstroOutput.js +34 -0
- package/lib/Website/AstroOutput.js.map +1 -0
- package/lib/Website/FrontendCore.d.ts +1 -1
- package/lib/Workflows.d.ts +9 -0
- package/lib/Workflows.d.ts.map +1 -1
- package/lib/Workflows.js +8 -0
- package/lib/Workflows.js.map +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/package.json +21 -28
- package/src/AdoptPolicy.ts +76 -0
- package/src/Alchemist/AuthRegistry.ts +164 -0
- package/src/Alchemist/Drift.ts +103 -0
- package/src/Alchemist/Entrypoint.ts +51 -3
- package/src/Alchemist/Errors.ts +1 -1
- package/src/Alchemist/{routes/logs.ts → Logs.ts} +28 -30
- package/src/Alchemist/Nuke.ts +90 -0
- package/src/Alchemist/Operations.ts +309 -0
- package/src/Alchemist/{routes/profile.ts → Profile.ts} +22 -22
- package/src/Alchemist/{routes/provider.ts → Provider.ts} +7 -6
- package/src/Alchemist/Runtime.ts +46 -12
- package/src/Alchemist/{routes/state.ts → State.ts} +78 -21
- package/src/Alchemist/index.ts +32 -15
- package/src/Apply.ts +513 -274
- package/src/Auth/AuthProvider.ts +76 -23
- package/src/Auth/BrowserOAuth.ts +37 -60
- package/src/Auth/Credentials.ts +2 -4
- package/src/Auth/Demand.ts +27 -18
- package/src/Auth/Env.ts +13 -8
- package/src/Auth/Inspect.ts +5 -2
- package/src/Auth/Lock.ts +4 -8
- package/src/Auth/OAuthFlow.ts +12 -26
- package/src/Auth/Paths.ts +3 -2
- package/src/Auth/Profile.ts +30 -2
- package/src/Auth/Registry.ts +27 -0
- package/src/Auth/Resolve.ts +75 -3
- package/src/Auth/StoredAuthProvider.ts +1 -2
- package/src/Binding.ts +3 -4
- package/src/Bundle/Bundle.ts +58 -7
- package/src/Bundle/NamespaceImportPlugin.ts +259 -0
- package/src/Bundle/index.ts +1 -0
- package/src/Cli/Format.ts +2 -1
- package/src/Cli/GlobalLog.ts +206 -68
- package/src/Cli/LoggingCli.ts +33 -20
- package/src/Cli/PlainCliFormatter.ts +4 -1
- package/src/Cli/Present.ts +34 -0
- package/src/Cli/SigilRenderer.ts +75 -0
- package/src/Cli/checkVersion.ts +25 -78
- package/src/Cli/commands/confirm.ts +3 -3
- package/src/Cli/commands/deploy.ts +53 -44
- package/src/Cli/commands/dev.ts +65 -7
- package/src/Cli/commands/drift.ts +20 -16
- package/src/Cli/commands/errors.ts +2 -3
- package/src/Cli/commands/instrument.ts +39 -8
- package/src/Cli/commands/logs.ts +22 -30
- package/src/Cli/commands/nuke.ts +25 -26
- package/src/Cli/commands/profile/commands.ts +34 -34
- package/src/Cli/commands/profile/flows.ts +26 -20
- package/src/Cli/commands/profile/hub.ts +16 -18
- package/src/Cli/commands/provider.ts +4 -4
- package/src/Cli/commands/render.ts +43 -71
- package/src/Cli/commands/state.ts +113 -33
- package/src/Cli/components/capabilities.ts +20 -0
- package/src/Cli/components/types.ts +13 -99
- package/src/Cli/components/ui/Environment.tsx +5 -5
- package/src/Cli/components/ui/Interactive.tsx +24 -15
- package/src/Cli/components/ui/Layout.tsx +1 -1
- package/src/Cli/components/ui/Typography.tsx +1 -1
- package/src/Cli/components/ui/index.ts +2 -2
- package/src/Cli/components/view/ApprovePlan.tsx +2 -1
- package/src/Cli/components/view/Format.tsx +58 -0
- package/src/Cli/components/view/Help.tsx +14 -17
- package/src/Cli/components/view/Logo.tsx +1 -1
- package/src/Cli/components/view/Nuke.tsx +74 -49
- package/src/Cli/components/view/PlanDecision.tsx +1 -1
- package/src/Cli/components/view/PlanRow.tsx +1 -1
- package/src/Cli/components/view/PlanTree.ts +2 -2
- package/src/Cli/components/view/PlanView.tsx +2 -2
- package/src/Cli/components/view/Profile.tsx +2 -2
- package/src/Cli/components/view/ProfileDashboard.tsx +12 -11
- package/src/Cli/components/view/Prompts.tsx +37 -75
- package/src/Cli/components/view/Runtime.tsx +132 -238
- package/src/Cli/components/view/SigilCli.tsx +12 -12
- package/src/Cli/components/view/StateExplorer.tsx +2 -1
- package/src/Cli/components/view/statusStyle.ts +2 -2
- package/src/Cli/exec.ts +48 -41
- package/src/Cli/main.ts +52 -33
- package/src/Cli/selectCli.ts +3 -3
- package/src/Command/Command.ts +1 -1
- package/src/Command/Dev.ts +129 -36
- package/src/Command/Memo.ts +1 -1
- package/src/Contributions.ts +42 -8
- package/src/DNS/Adapter.ts +289 -0
- package/src/DNS/index.ts +1 -0
- package/src/Deploy.ts +11 -3
- package/src/Destroy.ts +19 -13
- package/src/Diff.ts +17 -4
- package/src/Drift.ts +256 -127
- package/src/EvalStack.ts +97 -0
- package/src/Events.ts +296 -0
- package/src/Interaction.ts +332 -97
- package/src/Local/LocalProvider.ts +40 -9
- package/src/Local/RpcProvider.ts +11 -1
- package/src/Local/RpcProviderProxy.ts +29 -21
- package/src/Local/RpcSerialization.ts +32 -17
- package/src/Local/RpcServer.ts +25 -17
- package/src/Local/RpcServerBun.ts +10 -6
- package/src/Local/RpcServerEnvironment.ts +2 -2
- package/src/Local/RpcServerNode.ts +8 -1
- package/src/Local/RpcServerSession.ts +2 -2
- package/src/Local/RpcSpawner.ts +61 -37
- package/src/Local/Sidecar.ts +10 -1
- package/src/Nuke.ts +66 -43
- package/src/Output.ts +120 -7
- package/src/Plan.ts +140 -52
- package/src/Platform.ts +47 -18
- package/src/Provider.ts +48 -3
- package/src/Report.ts +77 -275
- package/src/Runtime/ManagedHttpShutdown.ts +21 -4
- package/src/RuntimeContext.ts +1 -1
- package/src/Stack.ts +113 -135
- package/src/State/BucketState.ts +53 -21
- package/src/State/LocalState.ts +7 -9
- package/src/State/Provisioning.ts +8 -1
- package/src/State/ResourceState.ts +2 -0
- package/src/State/State.ts +30 -0
- package/src/State/StateEncoding.ts +22 -0
- package/src/State/index.ts +2 -2
- package/src/Telemetry/Layer.ts +3 -24
- package/src/Telemetry/Metrics.ts +1 -1
- package/src/TelemetryRelay.ts +1 -1
- package/src/TelemetryRuntime.ts +8 -8
- package/src/Util/ConsoleSink.ts +76 -13
- package/src/Util/LogAnnotation.ts +18 -0
- package/src/Util/LogRecord.ts +386 -0
- package/src/Util/Node.ts +20 -6
- package/src/Util/PlatformServices.ts +17 -4
- package/src/Util/ResourceOutput.ts +26 -25
- package/src/Util/Shutdown.ts +52 -0
- package/src/Util/Terminal.ts +3 -20
- package/src/Util/TraceParent.ts +70 -0
- package/src/Util/base64.ts +22 -0
- package/src/Util/cached-function.ts +30 -19
- package/src/Util/data.ts +2 -2
- package/src/Util/equal.ts +3 -2
- package/src/Util/extraFiles.ts +9 -8
- package/src/Util/interactive.ts +1 -1
- package/src/Website/AstroOutput.ts +83 -0
- package/src/Workflows.ts +11 -0
- package/src/index.ts +1 -0
- package/lib/Alchemist/Progress.d.ts +0 -16
- package/lib/Alchemist/Progress.d.ts.map +0 -1
- package/lib/Alchemist/Progress.js +0 -123
- package/lib/Alchemist/Progress.js.map +0 -1
- package/lib/Alchemist/Session.d.ts +0 -116
- package/lib/Alchemist/Session.d.ts.map +0 -1
- package/lib/Alchemist/Session.js +0 -212
- package/lib/Alchemist/Session.js.map +0 -1
- package/lib/Alchemist/routes/drift.d.ts +0 -55
- package/lib/Alchemist/routes/drift.d.ts.map +0 -1
- package/lib/Alchemist/routes/drift.js +0 -52
- package/lib/Alchemist/routes/drift.js.map +0 -1
- package/lib/Alchemist/routes/logs.d.ts +0 -41
- package/lib/Alchemist/routes/logs.d.ts.map +0 -1
- package/lib/Alchemist/routes/logs.js.map +0 -1
- package/lib/Alchemist/routes/nuke.d.ts +0 -46
- package/lib/Alchemist/routes/nuke.d.ts.map +0 -1
- package/lib/Alchemist/routes/nuke.js +0 -80
- package/lib/Alchemist/routes/nuke.js.map +0 -1
- package/lib/Alchemist/routes/profile.d.ts +0 -133
- package/lib/Alchemist/routes/profile.d.ts.map +0 -1
- package/lib/Alchemist/routes/profile.js.map +0 -1
- package/lib/Alchemist/routes/provider.d.ts.map +0 -1
- package/lib/Alchemist/routes/provider.js.map +0 -1
- package/lib/Alchemist/routes/stack.d.ts +0 -95
- package/lib/Alchemist/routes/stack.d.ts.map +0 -1
- package/lib/Alchemist/routes/stack.js +0 -73
- package/lib/Alchemist/routes/stack.js.map +0 -1
- package/lib/Alchemist/routes/state.d.ts.map +0 -1
- package/lib/Alchemist/routes/state.js.map +0 -1
- package/lib/Cli/CliKit/CliKit.d.ts +0 -92
- package/lib/Cli/CliKit/CliKit.d.ts.map +0 -1
- package/lib/Cli/CliKit/CliKit.js +0 -27
- package/lib/Cli/CliKit/CliKit.js.map +0 -1
- package/lib/Cli/CliKit/index.d.ts +0 -9
- package/lib/Cli/CliKit/index.d.ts.map +0 -1
- package/lib/Cli/CliKit/index.js +0 -9
- package/lib/Cli/CliKit/index.js.map +0 -1
- package/lib/Cli/CliKit/interaction.d.ts +0 -13
- package/lib/Cli/CliKit/interaction.d.ts.map +0 -1
- package/lib/Cli/CliKit/interaction.js +0 -17
- package/lib/Cli/CliKit/interaction.js.map +0 -1
- package/lib/Cli/CliKit/layer.d.ts +0 -7
- package/lib/Cli/CliKit/layer.d.ts.map +0 -1
- package/lib/Cli/CliKit/layer.js +0 -33
- package/lib/Cli/CliKit/layer.js.map +0 -1
- package/lib/Local/DevLog.d.ts +0 -32
- package/lib/Local/DevLog.d.ts.map +0 -1
- package/lib/Local/DevLog.js +0 -112
- package/lib/Local/DevLog.js.map +0 -1
- package/lib/Test/Alchemy.d.ts +0 -79
- package/lib/Test/Alchemy.d.ts.map +0 -1
- package/lib/Test/Alchemy.js +0 -193
- package/lib/Test/Alchemy.js.map +0 -1
- package/lib/Test/Bun.d.ts +0 -69
- package/lib/Test/Bun.d.ts.map +0 -1
- package/lib/Test/Bun.js +0 -126
- package/lib/Test/Bun.js.map +0 -1
- package/lib/Test/Core.d.ts +0 -277
- package/lib/Test/Core.d.ts.map +0 -1
- package/lib/Test/Core.js +0 -362
- package/lib/Test/Core.js.map +0 -1
- package/lib/Test/Http.d.ts +0 -109
- package/lib/Test/Http.d.ts.map +0 -1
- package/lib/Test/Http.js +0 -123
- package/lib/Test/Http.js.map +0 -1
- package/lib/Test/TestState.d.ts +0 -12
- package/lib/Test/TestState.d.ts.map +0 -1
- package/lib/Test/TestState.js +0 -15
- package/lib/Test/TestState.js.map +0 -1
- package/lib/Test/Vitest.d.ts +0 -60
- package/lib/Test/Vitest.d.ts.map +0 -1
- package/lib/Test/Vitest.js +0 -132
- package/lib/Test/Vitest.js.map +0 -1
- package/lib/Test/index.d.ts +0 -3
- package/lib/Test/index.d.ts.map +0 -1
- package/lib/Test/index.js +0 -3
- package/lib/Test/index.js.map +0 -1
- package/lib/Util/FileLogger.d.ts +0 -7
- package/lib/Util/FileLogger.d.ts.map +0 -1
- package/lib/Util/FileLogger.js +0 -16
- package/lib/Util/FileLogger.js.map +0 -1
- package/src/Alchemist/Progress.ts +0 -167
- package/src/Alchemist/Session.ts +0 -415
- package/src/Alchemist/routes/drift.ts +0 -87
- package/src/Alchemist/routes/nuke.ts +0 -131
- package/src/Alchemist/routes/stack.ts +0 -173
- package/src/Cli/CliKit/CliKit.ts +0 -159
- package/src/Cli/CliKit/index.ts +0 -41
- package/src/Cli/CliKit/interaction.ts +0 -19
- package/src/Cli/CliKit/layer.ts +0 -44
- package/src/Local/DevLog.ts +0 -122
- package/src/Test/Alchemy.ts +0 -334
- package/src/Test/Bun.ts +0 -230
- package/src/Test/Core.ts +0 -785
- package/src/Test/Http.ts +0 -201
- package/src/Test/TestState.ts +0 -35
- package/src/Test/Vitest.ts +0 -239
- package/src/Test/index.ts +0 -2
- package/src/Util/FileLogger.ts +0 -20
package/lib/Util/Node.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Node.js","sourceRoot":"","sources":["../../src/Util/Node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,UAAU,CAAC;AACpC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"Node.js","sourceRoot":"","sources":["../../src/Util/Node.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import
|
|
1
|
+
import * as Digest from "effect/crypto/Digest";
|
|
2
|
+
import * as SecureRandom from "effect/crypto/SecureRandom";
|
|
2
3
|
import type { Input as DurationInput } from "effect/Duration";
|
|
3
4
|
import * as Effect from "effect/Effect";
|
|
4
5
|
import type { FileSystem } from "effect/FileSystem";
|
|
@@ -18,7 +19,7 @@ export declare const platformLayer: <A, E, R>(constructors: {
|
|
|
18
19
|
bun: () => Promise<Layer.Layer<A, E, R>>;
|
|
19
20
|
node: () => Promise<Layer.Layer<A, E, R>>;
|
|
20
21
|
}) => Layer.Layer<A, E, R>;
|
|
21
|
-
export type PlatformServices = ChildProcessSpawner |
|
|
22
|
+
export type PlatformServices = ChildProcessSpawner | Digest.Digest | SecureRandom.SecureRandom | FileSystem | Path | Stdio | Terminal | WebSocketConstructor;
|
|
22
23
|
export declare const PlatformServices: Layer.Layer<PlatformServices>;
|
|
23
24
|
export declare const runMain: <E, A>(effect: Effect.Effect<A, E>, options?: {
|
|
24
25
|
readonly disableErrorReporting?: boolean | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlatformServices.d.ts","sourceRoot":"","sources":["../../src/Util/PlatformServices.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"PlatformServices.d.ts","sourceRoot":"","sources":["../../src/Util/PlatformServices.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,sBAAsB,CAAC;AAC/C,OAAO,KAAK,YAAY,MAAM,4BAA4B,CAAC;AAC3D,OAAO,KAAK,EAAE,KAAK,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAC9E,OAAO,EAAmB,KAAK,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAChE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAoBhD;;GAEG;AACH,eAAO,MAAM,aAAa,GAAI,CAAC,EAAE,CAAC,EAAE,CAAC,gBAAgB;IACnD,GAAG,EAAE,MAAM,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACzC,IAAI,EAAE,MAAM,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;CAC3C,yBASE,CAAC;AAKJ,MAAM,MAAM,gBAAgB,GACxB,mBAAmB,GACnB,MAAM,CAAC,MAAM,GACb,YAAY,CAAC,YAAY,GACzB,UAAU,GACV,IAAI,GACJ,KAAK,GACL,QAAQ,GAER,oBAAoB,CAAC;AAEzB,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,KAAK,CAAC,gBAAgB,CA0BzD,CAAC;AAmBH,eAAO,MAAM,OAAO,GAAI,CAAC,EAAE,CAAC,UAClB,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,YACjB;IACR,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACrD,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC1C,KACA,IAoBF,CAAC;AAEF,eAAO,MAAM,UAAU,UACf,MAAM,SACN,MAAM,YACF;IACR,QAAQ,CAAC,uBAAuB,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;CAC9D,KACA,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,UAAU,CA2BjC,CAAC"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import * as Digest from "effect/crypto/Digest";
|
|
2
|
+
import * as SecureRandom from "effect/crypto/SecureRandom";
|
|
1
3
|
import * as Effect from "effect/Effect";
|
|
2
4
|
import * as Layer from "effect/Layer";
|
|
3
5
|
import { defaultTeardown } from "effect/Runtime";
|
|
@@ -22,20 +24,22 @@ export const platformLayer = (constructors) => Layer.unwrap(Effect.promise(async
|
|
|
22
24
|
return await constructors.node();
|
|
23
25
|
}
|
|
24
26
|
}));
|
|
27
|
+
// effect 4.1 dropped crypto from the platform `*Services` bundles.
|
|
28
|
+
const WebCryptoServices = Layer.mergeAll(SecureRandom.layerWebCrypto, Digest.layerWebCrypto);
|
|
25
29
|
export const PlatformServices = platformLayer({
|
|
26
30
|
bun: async () => {
|
|
27
31
|
const [BunServices, BunSocket] = await Promise.all([
|
|
28
32
|
importPlatformPeer("@effect/platform-bun", () => import("@effect/platform-bun/BunServices")),
|
|
29
33
|
importPlatformPeer("@effect/platform-bun", () => import("@effect/platform-bun/BunSocket")),
|
|
30
34
|
]);
|
|
31
|
-
return Layer.
|
|
35
|
+
return Layer.mergeAll(BunServices.layer, BunSocket.layerWebSocketConstructor, WebCryptoServices);
|
|
32
36
|
},
|
|
33
37
|
node: async () => {
|
|
34
38
|
const [NodeServices, NodeSocket] = await Promise.all([
|
|
35
39
|
importPlatformPeer("@effect/platform-node", () => import("@effect/platform-node/NodeServices")),
|
|
36
40
|
importPlatformPeer("@effect/platform-node", () => import("@effect/platform-node/NodeSocket")),
|
|
37
41
|
]);
|
|
38
|
-
return Layer.
|
|
42
|
+
return Layer.mergeAll(NodeServices.layer, NodeSocket.layerWebSocketConstructor, WebCryptoServices);
|
|
39
43
|
},
|
|
40
44
|
});
|
|
41
45
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlatformServices.js","sourceRoot":"","sources":["../../src/Util/PlatformServices.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PlatformServices.js","sourceRoot":"","sources":["../../src/Util/PlatformServices.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type * as ConsoleService from "effect/Console";
|
|
2
1
|
import * as Effect from "effect/Effect";
|
|
3
2
|
export type OutputChannel = "stdout" | "stderr";
|
|
4
3
|
/** Sigil-themed resource attribution shared by every append-only log path. */
|
|
@@ -6,11 +5,22 @@ export declare const formatResourceTag: (id: string, colors?: boolean) => string
|
|
|
6
5
|
/** Remove a pretty Effect prefix already rendered by a child process. */
|
|
7
6
|
export declare const stripChildEffectPrefix: (line: string) => string;
|
|
8
7
|
/**
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
8
|
+
* Log one line a resource-owned process wrote, as a structured record: the
|
|
9
|
+
* child's text (with any pretty Effect prefix removed) plus the resource and
|
|
10
|
+
* stream it came from. The record keeps the text as written; the renderer
|
|
11
|
+
* draws the resource tag and strips styling when colors are off. A JSON line from an alchemy child is replayed as-is.
|
|
12
|
+
*
|
|
13
|
+
* stderr is a process transport, not a semantic failure: Vite and many other
|
|
14
|
+
* tools write warnings, progress, and ordinary diagnostics there, so both
|
|
15
|
+
* streams log at Info and carry the stream as data.
|
|
12
16
|
*/
|
|
13
|
-
export declare const
|
|
17
|
+
export declare const logResourceLine: (id: string, channel: OutputChannel, line: string) => Effect.Effect<void, never, never>;
|
|
18
|
+
/**
|
|
19
|
+
* Line-buffered output for resource-owned child processes whose streams
|
|
20
|
+
* arrive as chunks outside an Effect (workerd output pumps, stream mirrors).
|
|
21
|
+
* Captures the caller's services so each line goes through its loggers.
|
|
22
|
+
*/
|
|
23
|
+
export declare const makeResourceOutput: (id: string) => Effect.Effect<{
|
|
14
24
|
stdout: {
|
|
15
25
|
push(chunk: string): void;
|
|
16
26
|
flush(): void;
|
|
@@ -19,12 +29,10 @@ export declare const makeResourceOutput: (id: string, console: Pick<ConsoleServi
|
|
|
19
29
|
push(chunk: string): void;
|
|
20
30
|
flush(): void;
|
|
21
31
|
};
|
|
22
|
-
}
|
|
32
|
+
}, never, never>;
|
|
23
33
|
/**
|
|
24
34
|
* Effect-native output for resource-owned child processes whose streams are
|
|
25
|
-
* already consumed inside an Effect.
|
|
26
|
-
* details, not semantic severity, so they enter the configured logger at the
|
|
27
|
-
* info level. The logger remains responsible for terminal and file sinks.
|
|
35
|
+
* already consumed inside an Effect.
|
|
28
36
|
*/
|
|
29
|
-
export declare const makeResourceLogger: (id: string) => (
|
|
37
|
+
export declare const makeResourceLogger: (id: string) => (channel: OutputChannel, line: string) => Effect.Effect<void, never, never>;
|
|
30
38
|
//# sourceMappingURL=ResourceOutput.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResourceOutput.d.ts","sourceRoot":"","sources":["../../src/Util/ResourceOutput.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"ResourceOutput.d.ts","sourceRoot":"","sources":["../../src/Util/ResourceOutput.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAMxC,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEhD,8EAA8E;AAC9E,eAAO,MAAM,iBAAiB,OAAQ,MAAM,uBAA6B,MACD,CAAC;AAKzE,yEAAyE;AACzE,eAAO,MAAM,sBAAsB,SAAU,MAAM,KAAG,MAsBrD,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe,OAAQ,MAAM,WAAW,aAAa,QAAQ,MAAM,sCACD,CAAC;AAEhF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;gBAK7B,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,kBAAkB,OAAQ,MAAM,eAAe,aAAa,QAAQ,MAAM,sCACnD,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { stripVTControlCharacters } from "node:util";
|
|
2
2
|
import * as Effect from "effect/Effect";
|
|
3
3
|
import { makeLineBuffer } from "./LineBuffer.js";
|
|
4
|
+
import { logChildLine } from "./LogRecord.js";
|
|
4
5
|
import { ANSI_RESET, ansiFg, colorsEnabled } from "./Terminal.js";
|
|
5
6
|
import { theme } from "./Theme.js";
|
|
6
7
|
/** Sigil-themed resource attribution shared by every append-only log path. */
|
|
@@ -31,31 +32,29 @@ export const stripChildEffectPrefix = (line) => {
|
|
|
31
32
|
return line.slice(offset);
|
|
32
33
|
};
|
|
33
34
|
/**
|
|
34
|
-
*
|
|
35
|
-
*
|
|
36
|
-
*
|
|
35
|
+
* Log one line a resource-owned process wrote, as a structured record: the
|
|
36
|
+
* child's text (with any pretty Effect prefix removed) plus the resource and
|
|
37
|
+
* stream it came from. The record keeps the text as written; the renderer
|
|
38
|
+
* draws the resource tag and strips styling when colors are off. A JSON line from an alchemy child is replayed as-is.
|
|
39
|
+
*
|
|
40
|
+
* stderr is a process transport, not a semantic failure: Vite and many other
|
|
41
|
+
* tools write warnings, progress, and ordinary diagnostics there, so both
|
|
42
|
+
* streams log at Info and carry the stream as data.
|
|
37
43
|
*/
|
|
38
|
-
export const
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
const
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
};
|
|
50
|
-
};
|
|
44
|
+
export const logResourceLine = (id, channel, line) => logChildLine(stripChildEffectPrefix(line), { stream: channel, resource: id });
|
|
45
|
+
/**
|
|
46
|
+
* Line-buffered output for resource-owned child processes whose streams
|
|
47
|
+
* arrive as chunks outside an Effect (workerd output pumps, stream mirrors).
|
|
48
|
+
* Captures the caller's services so each line goes through its loggers.
|
|
49
|
+
*/
|
|
50
|
+
export const makeResourceOutput = Effect.fn(function* (id) {
|
|
51
|
+
const context = yield* Effect.context();
|
|
52
|
+
const writer = (channel) => makeLineBuffer((line) => Effect.runSyncWith(context)(logResourceLine(id, channel, line)));
|
|
53
|
+
return { stdout: writer("stdout"), stderr: writer("stderr") };
|
|
54
|
+
});
|
|
51
55
|
/**
|
|
52
56
|
* Effect-native output for resource-owned child processes whose streams are
|
|
53
|
-
* already consumed inside an Effect.
|
|
54
|
-
* details, not semantic severity, so they enter the configured logger at the
|
|
55
|
-
* info level. The logger remains responsible for terminal and file sinks.
|
|
57
|
+
* already consumed inside an Effect.
|
|
56
58
|
*/
|
|
57
|
-
export const makeResourceLogger = (id) =>
|
|
58
|
-
const prefix = formatResourceTag(id);
|
|
59
|
-
return (_channel, line) => Effect.logInfo(`${prefix} ${stripChildEffectPrefix(line)}`);
|
|
60
|
-
};
|
|
59
|
+
export const makeResourceLogger = (id) => (channel, line) => logResourceLine(id, channel, line);
|
|
61
60
|
//# sourceMappingURL=ResourceOutput.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResourceOutput.js","sourceRoot":"","sources":["../../src/Util/ResourceOutput.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"ResourceOutput.js","sourceRoot":"","sources":["../../src/Util/ResourceOutput.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as Effect from "effect/Effect";
|
|
2
|
+
/**
|
|
3
|
+
* Time this process's shutdown in the run log: a Debug record when SIGINT or
|
|
4
|
+
* SIGTERM arrives, and one when `effect` has finished (finalizers included),
|
|
5
|
+
* with the time since the signal. Silent when the process ends on its own.
|
|
6
|
+
*/
|
|
7
|
+
export declare const logShutdown: (name: string) => <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>;
|
|
8
|
+
/** Run `effect` and log how long it took, as a step of a shutdown. */
|
|
9
|
+
export declare const timedShutdownStep: (step: string) => <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>;
|
|
10
|
+
//# sourceMappingURL=Shutdown.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Shutdown.d.ts","sourceRoot":"","sources":["../../src/Util/Shutdown.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC;;;;GAIG;AACH,eAAO,MAAM,WAAW,SACf,MAAM,MACZ,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CA2B5D,CAAC;AAEP,sEAAsE;AACtE,eAAO,MAAM,iBAAiB,SACrB,MAAM,MACZ,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAS7D,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import * as Clock from "effect/Clock";
|
|
2
|
+
import * as Effect from "effect/Effect";
|
|
3
|
+
/**
|
|
4
|
+
* Time this process's shutdown in the run log: a Debug record when SIGINT or
|
|
5
|
+
* SIGTERM arrives, and one when `effect` has finished (finalizers included),
|
|
6
|
+
* with the time since the signal. Silent when the process ends on its own.
|
|
7
|
+
*/
|
|
8
|
+
export const logShutdown = (name) => (effect) => Effect.gen(function* () {
|
|
9
|
+
const context = yield* Effect.context();
|
|
10
|
+
const clock = yield* Clock.Clock;
|
|
11
|
+
let signalled;
|
|
12
|
+
const onSignal = (signal) => {
|
|
13
|
+
if (signalled !== undefined)
|
|
14
|
+
return;
|
|
15
|
+
signalled = { signal, at: clock.currentTimeMillisUnsafe() };
|
|
16
|
+
Effect.runForkWith(context)(Effect.logDebug(`shutdown: ${name} received ${signal}`));
|
|
17
|
+
};
|
|
18
|
+
// Ahead of the runtime's own handler, which interrupts this fiber and
|
|
19
|
+
// can run its whole teardown synchronously before later listeners.
|
|
20
|
+
process.prependListener("SIGINT", onSignal);
|
|
21
|
+
process.prependListener("SIGTERM", onSignal);
|
|
22
|
+
return yield* effect.pipe(Effect.onExit(() => Effect.flatMap(Clock.currentTimeMillis, (now) => {
|
|
23
|
+
process.off("SIGINT", onSignal);
|
|
24
|
+
process.off("SIGTERM", onSignal);
|
|
25
|
+
return signalled === undefined
|
|
26
|
+
? Effect.void
|
|
27
|
+
: Effect.logDebug(`shutdown: ${name} finished ${now - signalled.at}ms after ${signalled.signal}`);
|
|
28
|
+
})));
|
|
29
|
+
});
|
|
30
|
+
/** Run `effect` and log how long it took, as a step of a shutdown. */
|
|
31
|
+
export const timedShutdownStep = (step) => (effect) => Effect.flatMap(Clock.currentTimeMillis, (start) => effect.pipe(Effect.onExit(() => Effect.flatMap(Clock.currentTimeMillis, (end) => Effect.logDebug(`shutdown: ${step} in ${end - start}ms`)))));
|
|
32
|
+
//# sourceMappingURL=Shutdown.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Shutdown.js","sourceRoot":"","sources":["../../src/Util/Shutdown.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC;;;;GAIG;AACH,MAAM,CAAC,MAAM,WAAW,GACtB,CAAC,IAAY,EAAE,EAAE,CACjB,CAAU,MAA8B,EAA0B,EAAE,CAClE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,EAAS,CAAC;IAC/C,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;IACjC,IAAI,SAAuE,CAAC;IAC5E,MAAM,QAAQ,GAAG,CAAC,MAAsB,EAAE,EAAE;QAC1C,IAAI,SAAS,KAAK,SAAS;YAAE,OAAO;QACpC,SAAS,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,CAAC,uBAAuB,EAAE,EAAE,CAAC;QAC5D,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,IAAI,aAAa,MAAM,EAAE,CAAC,CAAC,CAAC;IACvF,CAAC,CAAC;IACF,sEAAsE;IACtE,mEAAmE;IACnE,OAAO,CAAC,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC5C,OAAO,CAAC,eAAe,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC7C,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CACjB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC,GAAG,EAAE,EAAE;QAC9C,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACjC,OAAO,SAAS,KAAK,SAAS;YAC5B,CAAC,CAAC,MAAM,CAAC,IAAI;YACb,CAAC,CAAC,MAAM,CAAC,QAAQ,CACb,aAAa,IAAI,aAAa,GAAG,GAAG,SAAS,CAAC,EAAE,YAAY,SAAS,CAAC,MAAM,EAAE,CAC/E,CAAC;IACR,CAAC,CAAC,CACH,CACF,CAAC;AACJ,CAAC,CAAC,CAAC;AAEP,sEAAsE;AACtE,MAAM,CAAC,MAAM,iBAAiB,GAC5B,CAAC,IAAY,EAAE,EAAE,CACjB,CAAU,MAA8B,EAA0B,EAAE,CAClE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC,KAAK,EAAE,EAAE,CAChD,MAAM,CAAC,IAAI,CACT,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CACjB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC,GAAG,EAAE,EAAE,CAC9C,MAAM,CAAC,QAAQ,CAAC,aAAa,IAAI,OAAO,GAAG,GAAG,KAAK,IAAI,CAAC,CACzD,CACF,CACF,CACF,CAAC"}
|
package/lib/Util/Terminal.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
/** Terminal-emulator features shared by CliKit components. */
|
|
1
|
+
/** Terminal-emulator features shared by CLI components. */
|
|
3
2
|
import { detectUnicodeSupport } from "@alchemy.run/sigil/capabilities";
|
|
4
3
|
export declare const ANSI_RESET = "\u001B[0m";
|
|
5
4
|
export declare const ANSI_BOLD = "\u001B[1m";
|
|
@@ -8,7 +7,7 @@ export declare const ANSI_DIM = "\u001B[2m";
|
|
|
8
7
|
export declare const ansiFg: (hex: string) => string;
|
|
9
8
|
/**
|
|
10
9
|
* The canonical color-support decision, shared by raw terminal strings and
|
|
11
|
-
*
|
|
10
|
+
* terminal capability detection so the two can never disagree.
|
|
12
11
|
*/
|
|
13
12
|
export declare const colorsEnabled: (stream?: Pick<NodeJS.WriteStream, "isTTY">) => boolean;
|
|
14
13
|
/** The canonical Unicode-support decision for raw terminal strings. */
|
|
@@ -17,7 +16,6 @@ export declare const unicodeEnabled: typeof detectUnicodeSupport;
|
|
|
17
16
|
export declare const pipedColorEnv: () => Record<string, string>;
|
|
18
17
|
export declare const paint: (code: string, value: string) => string;
|
|
19
18
|
export declare const copyToClipboard: (text: string, stdout?: Pick<NodeJS.WriteStream, "write">) => void;
|
|
20
|
-
export declare const setNativeProgress: (state: TerminalProgressState, value?: number, stdout?: Pick<NodeJS.WriteStream, "write" | "isTTY">) => void;
|
|
21
19
|
/** Display-width-aware truncation (wide CJK/emoji count by rendered cells). */
|
|
22
20
|
export declare const truncate: (value: string, width: number) => string;
|
|
23
21
|
//# sourceMappingURL=Terminal.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Terminal.d.ts","sourceRoot":"","sources":["../../src/Util/Terminal.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Terminal.d.ts","sourceRoot":"","sources":["../../src/Util/Terminal.ts"],"names":[],"mappings":"AACA,2DAA2D;AAC3D,OAAO,EAAoB,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAEzF,eAAO,MAAM,UAAU,cAAc,CAAC;AACtC,eAAO,MAAM,SAAS,cAAc,CAAC;AACrC,eAAO,MAAM,QAAQ,cAAc,CAAC;AAEpC,8DAA8D;AAC9D,eAAO,MAAM,MAAM,QAAS,MAAM,WAKjC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa,YAChB,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,KACxC,OAAuC,CAAC;AAE3C,uEAAuE;AACvE,eAAO,MAAM,cAAc,6BAAuB,CAAC;AAEnD,gFAAgF;AAChF,eAAO,MAAM,aAAa,QAAO,MAAM,CAAC,MAAM,EAAE,MAAM,CACkB,CAAC;AAEzE,eAAO,MAAM,KAAK,SAAU,MAAM,SAAS,MAAM,KAAG,MACM,CAAC;AAE3D,eAAO,MAAM,eAAe,SACpB,MAAM,WACJ,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,KACxC,IAMF,CAAC;AAIF,+EAA+E;AAC/E,eAAO,MAAM,QAAQ,UAAW,MAAM,SAAS,MAAM,KAAG,MAYvD,CAAC"}
|
package/lib/Util/Terminal.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { setClipboard,
|
|
2
|
-
/** Terminal-emulator features shared by
|
|
1
|
+
import { setClipboard, stringWidth, tmuxPassthrough } from "@alchemy.run/sigil/ansi";
|
|
2
|
+
/** Terminal-emulator features shared by CLI components. */
|
|
3
3
|
import { detectColorLevel, detectUnicodeSupport } from "@alchemy.run/sigil/capabilities";
|
|
4
4
|
export const ANSI_RESET = "\u001B[0m";
|
|
5
5
|
export const ANSI_BOLD = "\u001B[1m";
|
|
@@ -13,7 +13,7 @@ export const ansiFg = (hex) => {
|
|
|
13
13
|
};
|
|
14
14
|
/**
|
|
15
15
|
* The canonical color-support decision, shared by raw terminal strings and
|
|
16
|
-
*
|
|
16
|
+
* terminal capability detection so the two can never disagree.
|
|
17
17
|
*/
|
|
18
18
|
export const colorsEnabled = (stream = process.stdout) => detectColorLevel(stream) > 0;
|
|
19
19
|
/** The canonical Unicode-support decision for raw terminal strings. */
|
|
@@ -28,14 +28,6 @@ export const copyToClipboard = (text, stdout = process.stdout) => {
|
|
|
28
28
|
}
|
|
29
29
|
stdout.write(sequence);
|
|
30
30
|
};
|
|
31
|
-
export const setNativeProgress = (state, value, stdout = process.stdout) => {
|
|
32
|
-
if (stdout.isTTY !== true)
|
|
33
|
-
return;
|
|
34
|
-
let sequence = setTerminalProgress(state, value);
|
|
35
|
-
if (process.env.TMUX !== undefined)
|
|
36
|
-
sequence = tmuxPassthrough(sequence);
|
|
37
|
-
stdout.write(sequence);
|
|
38
|
-
};
|
|
39
31
|
const truncateSegmenter = new Intl.Segmenter();
|
|
40
32
|
/** Display-width-aware truncation (wide CJK/emoji count by rendered cells). */
|
|
41
33
|
export const truncate = (value, width) => {
|
package/lib/Util/Terminal.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Terminal.js","sourceRoot":"","sources":["../../src/Util/Terminal.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"Terminal.js","sourceRoot":"","sources":["../../src/Util/Terminal.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import * as Effect from "effect/Effect";
|
|
2
|
+
import * as Stream from "effect/Stream";
|
|
3
|
+
/**
|
|
4
|
+
* The span a child process or RPC call runs under, so its records and spans
|
|
5
|
+
* join the caller's trace instead of starting their own.
|
|
6
|
+
*/
|
|
7
|
+
export interface TraceParent {
|
|
8
|
+
readonly traceId: string;
|
|
9
|
+
readonly spanId: string;
|
|
10
|
+
}
|
|
11
|
+
/** Set on alchemy child processes to the trace they report under. */
|
|
12
|
+
export declare const TRACE_PARENT_ENV = "ALCHEMY_TRACE_PARENT";
|
|
13
|
+
/**
|
|
14
|
+
* This process's trace, for records logged outside any span (startup,
|
|
15
|
+
* shutdown, finalizers): the parent's when it passed one in
|
|
16
|
+
* {@link TRACE_PARENT_ENV}, otherwise a new one. It ties a process's
|
|
17
|
+
* untraced records together and to its parent's, without a span that would
|
|
18
|
+
* stay open for the life of the process.
|
|
19
|
+
*/
|
|
20
|
+
export declare const processTrace: TraceParent;
|
|
21
|
+
/** The caller's current span, if it is in one. */
|
|
22
|
+
export declare const currentTraceParent: Effect.Effect<TraceParent | undefined>;
|
|
23
|
+
/**
|
|
24
|
+
* {@link TRACE_PARENT_ENV} for a child process: the current span, or this
|
|
25
|
+
* process's trace outside one.
|
|
26
|
+
*/
|
|
27
|
+
export declare const traceParentEnv: Effect.Effect<Record<string, string>>;
|
|
28
|
+
/** Run `effect` as a child of `parent`, when there is one. */
|
|
29
|
+
export declare const withTraceParent: (parent: TraceParent | undefined) => <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>;
|
|
30
|
+
/** Run `stream` (its whole execution, not just its construction) as a child of `parent`. */
|
|
31
|
+
export declare const withStreamTraceParent: (parent: TraceParent | undefined) => <A, E, R>(stream: Stream.Stream<A, E, R>) => Stream.Stream<A, E, R>;
|
|
32
|
+
//# sourceMappingURL=TraceParent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TraceParent.d.ts","sourceRoot":"","sources":["../../src/Util/TraceParent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,qEAAqE;AACrE,eAAO,MAAM,gBAAgB,yBAAyB,CAAC;AAOvD;;;;;;GAMG;AACH,eAAO,MAAM,YAAY,EAAE,WAG1B,CAAC;AAEF,kDAAkD;AAClD,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW,GAAG,SAAS,CAMrE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAKhE,CAAC;AAIF,8DAA8D;AAC9D,eAAO,MAAM,eAAe,WACjB,WAAW,GAAG,SAAS,MAC/B,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CACe,CAAC;AAElF,4FAA4F;AAC5F,eAAO,MAAM,qBAAqB,WACvB,WAAW,GAAG,SAAS,MAC/B,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAGM,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import * as Effect from "effect/Effect";
|
|
2
|
+
import * as Hex from "effect/encoding/Hex";
|
|
3
|
+
import * as Option from "effect/Option";
|
|
4
|
+
import * as Stream from "effect/Stream";
|
|
5
|
+
import * as Tracer from "effect/Tracer";
|
|
6
|
+
/** Set on alchemy child processes to the trace they report under. */
|
|
7
|
+
export const TRACE_PARENT_ENV = "ALCHEMY_TRACE_PARENT";
|
|
8
|
+
const fromEnv = () => {
|
|
9
|
+
const [traceId, spanId] = (process.env[TRACE_PARENT_ENV] ?? "").split("-");
|
|
10
|
+
return traceId && spanId ? { traceId, spanId } : undefined;
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* This process's trace, for records logged outside any span (startup,
|
|
14
|
+
* shutdown, finalizers): the parent's when it passed one in
|
|
15
|
+
* {@link TRACE_PARENT_ENV}, otherwise a new one. It ties a process's
|
|
16
|
+
* untraced records together and to its parent's, without a span that would
|
|
17
|
+
* stay open for the life of the process.
|
|
18
|
+
*/
|
|
19
|
+
export const processTrace = fromEnv() ?? {
|
|
20
|
+
traceId: Hex.random(32),
|
|
21
|
+
spanId: Hex.random(16),
|
|
22
|
+
};
|
|
23
|
+
/** The caller's current span, if it is in one. */
|
|
24
|
+
export const currentTraceParent = Effect.map(Effect.option(Effect.currentParentSpan), Option.match({
|
|
25
|
+
onNone: () => undefined,
|
|
26
|
+
onSome: (span) => ({ traceId: span.traceId, spanId: span.spanId }),
|
|
27
|
+
}));
|
|
28
|
+
/**
|
|
29
|
+
* {@link TRACE_PARENT_ENV} for a child process: the current span, or this
|
|
30
|
+
* process's trace outside one.
|
|
31
|
+
*/
|
|
32
|
+
export const traceParentEnv = Effect.map(currentTraceParent, (parent = processTrace) => ({
|
|
33
|
+
[TRACE_PARENT_ENV]: `${parent.traceId}-${parent.spanId}`,
|
|
34
|
+
}));
|
|
35
|
+
const spanOf = (parent) => Tracer.externalSpan({ ...parent, sampled: true });
|
|
36
|
+
/** Run `effect` as a child of `parent`, when there is one. */
|
|
37
|
+
export const withTraceParent = (parent) => (effect) => parent === undefined ? effect : Effect.withParentSpan(effect, spanOf(parent));
|
|
38
|
+
/** Run `stream` (its whole execution, not just its construction) as a child of `parent`. */
|
|
39
|
+
export const withStreamTraceParent = (parent) => (stream) => parent === undefined
|
|
40
|
+
? stream
|
|
41
|
+
: Stream.provideService(stream, Tracer.ParentSpan, spanOf(parent));
|
|
42
|
+
//# sourceMappingURL=TraceParent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TraceParent.js","sourceRoot":"","sources":["../../src/Util/TraceParent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAWxC,qEAAqE;AACrE,MAAM,CAAC,MAAM,gBAAgB,GAAG,sBAAsB,CAAC;AAEvD,MAAM,OAAO,GAAG,GAA4B,EAAE;IAC5C,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3E,OAAO,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7D,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,YAAY,GAAgB,OAAO,EAAE,IAAI;IACpD,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;IACvB,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;CACvB,CAAC;AAEF,kDAAkD;AAClD,MAAM,CAAC,MAAM,kBAAkB,GAA2C,MAAM,CAAC,GAAG,CAClF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,EACvC,MAAM,CAAC,KAAK,CAAC;IACX,MAAM,EAAE,GAAG,EAAE,CAAC,SAAS;IACvB,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;CACnE,CAAC,CACH,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAA0C,MAAM,CAAC,GAAG,CAC7E,kBAAkB,EAClB,CAAC,MAAM,GAAG,YAAY,EAA0B,EAAE,CAAC,CAAC;IAClD,CAAC,gBAAgB,CAAC,EAAE,GAAG,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE;CACzD,CAAC,CACH,CAAC;AAEF,MAAM,MAAM,GAAG,CAAC,MAAmB,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;AAE1F,8DAA8D;AAC9D,MAAM,CAAC,MAAM,eAAe,GAC1B,CAAC,MAA+B,EAAE,EAAE,CACpC,CAAU,MAA8B,EAA0B,EAAE,CAClE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;AAElF,4FAA4F;AAC5F,MAAM,CAAC,MAAM,qBAAqB,GAChC,CAAC,MAA+B,EAAE,EAAE,CACpC,CAAU,MAA8B,EAA0B,EAAE,CAClE,MAAM,KAAK,SAAS;IAClB,CAAC,CAAC,MAAM;IACR,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base64 for byte arrays, on the native `toBase64`/`fromBase64` when the
|
|
3
|
+
* runtime has them and `btoa`/`atob` otherwise.
|
|
4
|
+
*/
|
|
5
|
+
export declare const bytesToBase64: (bytes: Uint8Array) => string;
|
|
6
|
+
export declare const base64ToBytes: (b64: string) => Uint8Array;
|
|
7
|
+
//# sourceMappingURL=base64.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base64.d.ts","sourceRoot":"","sources":["../../src/Util/base64.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,aAAa,UAAW,UAAU,KAAG,MAMjD,CAAC;AAEF,eAAO,MAAM,aAAa,QAAS,MAAM,KAAG,UAS3C,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base64 for byte arrays, on the native `toBase64`/`fromBase64` when the
|
|
3
|
+
* runtime has them and `btoa`/`atob` otherwise.
|
|
4
|
+
*/
|
|
5
|
+
export const bytesToBase64 = (bytes) => {
|
|
6
|
+
const encode = bytes.toBase64;
|
|
7
|
+
if (typeof encode === "function")
|
|
8
|
+
return encode.call(bytes);
|
|
9
|
+
let binary = "";
|
|
10
|
+
for (const byte of bytes)
|
|
11
|
+
binary += String.fromCharCode(byte);
|
|
12
|
+
return btoa(binary);
|
|
13
|
+
};
|
|
14
|
+
export const base64ToBytes = (b64) => {
|
|
15
|
+
const decode = Uint8Array.fromBase64;
|
|
16
|
+
if (typeof decode === "function")
|
|
17
|
+
return decode.call(Uint8Array, b64);
|
|
18
|
+
const binary = atob(b64);
|
|
19
|
+
const out = new Uint8Array(binary.length);
|
|
20
|
+
for (let i = 0; i < binary.length; i++)
|
|
21
|
+
out[i] = binary.charCodeAt(i);
|
|
22
|
+
return out;
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=base64.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base64.js","sourceRoot":"","sources":["../../src/Util/base64.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAiB,EAAU,EAAE;IACzD,MAAM,MAAM,GAAI,KAAkD,CAAC,QAAQ,CAAC;IAC5E,IAAI,OAAO,MAAM,KAAK,UAAU;QAAE,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5D,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,KAAK,MAAM,IAAI,IAAI,KAAK;QAAE,MAAM,IAAI,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAC9D,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC;AACtB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,GAAW,EAAc,EAAE;IACvD,MAAM,MAAM,GACV,UACD,CAAC,UAAU,CAAC;IACb,IAAI,OAAO,MAAM,KAAK,UAAU;QAAE,OAAO,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IACtE,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;IACzB,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE;QAAE,GAAG,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACtE,OAAO,GAAG,CAAC;AACb,CAAC,CAAC"}
|
|
@@ -35,4 +35,9 @@ export interface CachedFunctionOptions<A> {
|
|
|
35
35
|
* ```
|
|
36
36
|
*/
|
|
37
37
|
export declare const cachedFunction: <A extends Array<any>, B, E, R>(fn: (...args: A) => Effect.Effect<B, E, R>, options?: CachedFunctionOptions<A>) => Effect.Effect<(...args: A) => Effect.Effect<B, E, R>>;
|
|
38
|
+
/**
|
|
39
|
+
* {@link cachedFunction} for callers that own the cache's lifetime outside an
|
|
40
|
+
* Effect, such as a `Context.Reference` default.
|
|
41
|
+
*/
|
|
42
|
+
export declare const makeCachedFunction: <A extends Array<any>, B, E, R>(fn: (...args: A) => Effect.Effect<B, E, R>, options?: CachedFunctionOptions<A>) => ((...args: A) => Effect.Effect<B, E, R>);
|
|
38
43
|
//# sourceMappingURL=cached-function.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cached-function.d.ts","sourceRoot":"","sources":["../../src/Util/cached-function.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC;;GAEG;AACH,MAAM,WAAW,qBAAqB,CAAC,CAAC;IACtC;;;OAGG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC;CACpC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,MACtD,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,YAChC,qBAAqB,CAAC,CAAC,CAAC,KACjC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"cached-function.d.ts","sourceRoot":"","sources":["../../src/Util/cached-function.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC;;GAEG;AACH,MAAM,WAAW,qBAAqB,CAAC,CAAC;IACtC;;;OAGG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC;CACpC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,MACtD,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,YAChC,qBAAqB,CAAC,CAAC,CAAC,KACjC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CACH,CAAC;AAErD;;;GAGG;AACH,eAAO,MAAM,kBAAkB,GAAI,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,MAC1D,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,YAChC,qBAAqB,CAAC,CAAC,CAAC,KACjC,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAiCzC,CAAC"}
|
|
@@ -25,7 +25,12 @@ import * as Effect from "effect/Effect";
|
|
|
25
25
|
* });
|
|
26
26
|
* ```
|
|
27
27
|
*/
|
|
28
|
-
export const cachedFunction = (fn, options) => Effect.sync(() =>
|
|
28
|
+
export const cachedFunction = (fn, options) => Effect.sync(() => makeCachedFunction(fn, options));
|
|
29
|
+
/**
|
|
30
|
+
* {@link cachedFunction} for callers that own the cache's lifetime outside an
|
|
31
|
+
* Effect, such as a `Context.Reference` default.
|
|
32
|
+
*/
|
|
33
|
+
export const makeCachedFunction = (fn, options) => {
|
|
29
34
|
const keyFn = options?.key ?? JSON.stringify;
|
|
30
35
|
const cache = new Map();
|
|
31
36
|
return (...args) => Effect.suspend(() => {
|
|
@@ -35,19 +40,19 @@ export const cachedFunction = (fn, options) => Effect.sync(() => {
|
|
|
35
40
|
if (existing) {
|
|
36
41
|
return Deferred.await(existing);
|
|
37
42
|
}
|
|
38
|
-
// Create a new deferred and store it
|
|
39
|
-
|
|
43
|
+
// Create a new deferred and store it. Only the call itself is
|
|
44
|
+
// interruptible, so an interrupted first caller still settles its
|
|
45
|
+
// waiters and evicts the key instead of leaving it pending forever.
|
|
46
|
+
return Effect.uninterruptibleMask((restore) => Effect.gen(function* () {
|
|
40
47
|
const deferred = yield* Deferred.make();
|
|
41
48
|
cache.set(cacheKey, deferred);
|
|
42
|
-
|
|
43
|
-
const exit = yield* Effect.exit(fn(...args));
|
|
49
|
+
const exit = yield* Effect.exit(restore(fn(...args)));
|
|
44
50
|
yield* Deferred.done(deferred, exit);
|
|
45
51
|
if (exit._tag === "Failure") {
|
|
46
52
|
cache.delete(cacheKey);
|
|
47
53
|
}
|
|
48
|
-
// Return the result
|
|
49
54
|
return yield* exit;
|
|
50
|
-
});
|
|
55
|
+
}));
|
|
51
56
|
});
|
|
52
|
-
}
|
|
57
|
+
};
|
|
53
58
|
//# sourceMappingURL=cached-function.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cached-function.js","sourceRoot":"","sources":["../../src/Util/cached-function.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAaxC;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,EAA0C,EAC1C,OAAkC,EACqB,EAAE,CACzD,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;
|
|
1
|
+
{"version":3,"file":"cached-function.js","sourceRoot":"","sources":["../../src/Util/cached-function.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAaxC;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,EAA0C,EAC1C,OAAkC,EACqB,EAAE,CACzD,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC;AAErD;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,EAA0C,EAC1C,OAAkC,EACQ,EAAE;IAC5C,MAAM,KAAK,GAAG,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC;IAC7C,MAAM,KAAK,GAAG,IAAI,GAAG,EAAmC,CAAC;IAEzD,OAAO,CAAC,GAAG,IAAO,EAA0B,EAAE,CAC5C,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE;QAClB,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;QAC7B,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAErC,yDAAyD;QACzD,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAClC,CAAC;QAED,8DAA8D;QAC9D,kEAAkE;QAClE,oEAAoE;QACpE,OAAO,MAAM,CAAC,mBAAmB,CAAC,CAAC,OAAO,EAAE,EAAE,CAC5C,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAQ,CAAC;YAC9C,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAE9B,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACtD,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YAErC,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC5B,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACzB,CAAC;YAED,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC;QACrB,CAAC,CAAC,CACH,CAAC;IACJ,CAAC,CAAC,CAAC;AACP,CAAC,CAAC"}
|
package/lib/Util/data.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as Redacted from "effect/Redacted";
|
|
2
|
-
export type Primitive =
|
|
2
|
+
export type Primitive = undefined | null | boolean | number | string | bigint | symbol;
|
|
3
3
|
export declare const isPrimitive: (value: any) => value is Primitive;
|
|
4
4
|
export declare const isPlainObject: (value: unknown) => value is Record<string, unknown>;
|
|
5
5
|
/**
|
package/lib/Util/data.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../src/Util/data.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AAE5C,MAAM,MAAM,SAAS,GAAG,
|
|
1
|
+
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../src/Util/data.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AAE5C,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAEvF,eAAO,MAAM,WAAW,UAAW,GAAG,KAAG,KAAK,IAAI,SAOvB,CAAC;AAE5B,eAAO,MAAM,aAAa,UAAW,OAAO,KAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAG7E,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,WAAW,UAAW,OAAO,KAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,EAKtF,CAAC;AAEF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,YAAY,UAChB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,EAAE,aAC/B,OAAO,CAAC,MAAM,CAAC,QACpB,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,KAChC,OAUF,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,CAAC,SAAS,CAAC,SAAS,IAAI,GAAG,SAAS,KAAG,CASlE,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,CAAC,KAAG,CAA6B,CAAC;AAE5E,eAAO,MAAM,oBAAoB,GAAI,CAAC,SAAS,CAAC,KAAG,CAAkC,CAAC;AAEtF,KAAK,cAAc,CAAC,CAAC,IACnB,CAAC,SAAS,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAChC,cAAc,CAAC,CAAC,CAAC,GACjB,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC3B;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,GACxC,CAAC,SAAS,KAAK,CAAC,MAAM,CAAC,CAAC,GACtB,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,GACxB,CAAC,CAAC;AAEZ,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,CAAC,KAAG,cAAc,CAAC,CAAC,CAS5D,CAAC"}
|
package/lib/Util/data.js
CHANGED
|
@@ -71,7 +71,7 @@ export const stripNullFields = (value) => stripFields(value, null);
|
|
|
71
71
|
export const stripUndefinedFields = (value) => stripFields(value, undefined);
|
|
72
72
|
export const unwrapRedacted = (value) => {
|
|
73
73
|
if (Redacted.isRedacted(value)) {
|
|
74
|
-
return
|
|
74
|
+
return value.pipe(Redacted.value, unwrapRedacted);
|
|
75
75
|
}
|
|
76
76
|
if (Array.isArray(value)) {
|
|
77
77
|
return value.map(unwrapRedacted);
|