alchemy 2.0.0-beta.62 → 2.0.0-beta.63
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/README.md +12 -12
- package/bin/exec.js +1959 -70
- package/bin/exec.js.map +1 -1
- package/lib/AWS/AuthProvider.js +1 -1
- package/lib/AWS/AuthProvider.js.map +1 -1
- package/lib/AWS/EC2/hosted.d.ts.map +1 -1
- package/lib/AWS/EC2/hosted.js +2 -1
- package/lib/AWS/EC2/hosted.js.map +1 -1
- package/lib/AWS/ECS/Task.d.ts.map +1 -1
- package/lib/AWS/ECS/Task.js +2 -1
- package/lib/AWS/ECS/Task.js.map +1 -1
- package/lib/AWS/Lambda/Function.d.ts.map +1 -1
- package/lib/AWS/Lambda/Function.js +13 -40
- package/lib/AWS/Lambda/Function.js.map +1 -1
- package/lib/AWS/Lambda/MicrovmRuntimeContext.d.ts.map +1 -1
- package/lib/AWS/Lambda/MicrovmRuntimeContext.js +9 -21
- package/lib/AWS/Lambda/MicrovmRuntimeContext.js.map +1 -1
- package/lib/Action.d.ts +8 -0
- package/lib/Action.d.ts.map +1 -1
- package/lib/Action.js +16 -5
- package/lib/Action.js.map +1 -1
- package/lib/ActionRuntimeContext.d.ts +14 -0
- package/lib/ActionRuntimeContext.d.ts.map +1 -0
- package/lib/ActionRuntimeContext.js +56 -0
- package/lib/ActionRuntimeContext.js.map +1 -0
- package/lib/Apply.d.ts.map +1 -1
- package/lib/Apply.js +40 -6
- package/lib/Apply.js.map +1 -1
- package/lib/Auth/AuthProvider.d.ts +3 -3
- package/lib/Auth/AuthProvider.d.ts.map +1 -1
- package/lib/Auth/AuthProvider.js +1 -1
- package/lib/Auth/AuthProvider.js.map +1 -1
- package/lib/Auth/Lock.d.ts.map +1 -1
- package/lib/Auth/Lock.js +5 -2
- package/lib/Auth/Lock.js.map +1 -1
- package/lib/Bundle/PurePlugin.d.ts.map +1 -1
- package/lib/Bundle/PurePlugin.js +26 -1
- package/lib/Bundle/PurePlugin.js.map +1 -1
- package/lib/Bundle/Vite.d.ts +2 -0
- package/lib/Bundle/Vite.d.ts.map +1 -1
- package/lib/Bundle/Vite.js +24 -1
- package/lib/Bundle/Vite.js.map +1 -1
- package/lib/Cli/LoggingCli.d.ts.map +1 -1
- package/lib/Cli/LoggingCli.js +7 -4
- package/lib/Cli/LoggingCli.js.map +1 -1
- package/lib/Cli/commands/_shared.d.ts +19 -0
- package/lib/Cli/commands/_shared.d.ts.map +1 -1
- package/lib/Cli/commands/_shared.js +22 -0
- package/lib/Cli/commands/_shared.js.map +1 -1
- package/lib/Cli/commands/login.d.ts +7 -3
- package/lib/Cli/commands/login.d.ts.map +1 -1
- package/lib/Cli/commands/login.js +70 -12
- package/lib/Cli/commands/login.js.map +1 -1
- package/lib/Cli/commands/profile.d.ts.map +1 -1
- package/lib/Cli/commands/profile.js +7 -20
- package/lib/Cli/commands/profile.js.map +1 -1
- package/lib/Cloudflare/AI/LanguageModel.js +21 -4
- package/lib/Cloudflare/AI/LanguageModel.js.map +1 -1
- package/lib/Cloudflare/AI/QuerySearchLocal.d.ts +37 -0
- package/lib/Cloudflare/AI/QuerySearchLocal.d.ts.map +1 -0
- package/lib/Cloudflare/AI/QuerySearchLocal.js +53 -0
- package/lib/Cloudflare/AI/QuerySearchLocal.js.map +1 -0
- package/lib/Cloudflare/AI/QuerySearchNamespaceLocal.d.ts +35 -0
- package/lib/Cloudflare/AI/QuerySearchNamespaceLocal.d.ts.map +1 -0
- package/lib/Cloudflare/AI/QuerySearchNamespaceLocal.js +47 -0
- package/lib/Cloudflare/AI/QuerySearchNamespaceLocal.js.map +1 -0
- package/lib/Cloudflare/AI/SearchHttpClient.d.ts +34 -0
- package/lib/Cloudflare/AI/SearchHttpClient.d.ts.map +1 -0
- package/lib/Cloudflare/AI/SearchHttpClient.js +262 -0
- package/lib/Cloudflare/AI/SearchHttpClient.js.map +1 -0
- package/lib/Cloudflare/AI/index.d.ts +2 -0
- package/lib/Cloudflare/AI/index.d.ts.map +1 -1
- package/lib/Cloudflare/AI/index.js +2 -0
- package/lib/Cloudflare/AI/index.js.map +1 -1
- package/lib/Cloudflare/Auth/AuthProvider.js +1 -1
- package/lib/Cloudflare/Auth/AuthProvider.js.map +1 -1
- package/lib/Cloudflare/Containers/ContainerBundle.d.ts.map +1 -1
- package/lib/Cloudflare/Containers/ContainerBundle.js +11 -1
- package/lib/Cloudflare/Containers/ContainerBundle.js.map +1 -1
- package/lib/Cloudflare/Containers/ContainerPlatform.d.ts.map +1 -1
- package/lib/Cloudflare/Containers/ContainerPlatform.js +12 -33
- package/lib/Cloudflare/Containers/ContainerPlatform.js.map +1 -1
- package/lib/Cloudflare/D1/QueryDatabaseHttpClient.d.ts +24 -0
- package/lib/Cloudflare/D1/QueryDatabaseHttpClient.d.ts.map +1 -0
- package/lib/Cloudflare/D1/QueryDatabaseHttpClient.js +106 -0
- package/lib/Cloudflare/D1/QueryDatabaseHttpClient.js.map +1 -0
- package/lib/Cloudflare/D1/QueryDatabaseLocal.d.ts +38 -0
- package/lib/Cloudflare/D1/QueryDatabaseLocal.d.ts.map +1 -0
- package/lib/Cloudflare/D1/QueryDatabaseLocal.js +54 -0
- package/lib/Cloudflare/D1/QueryDatabaseLocal.js.map +1 -0
- package/lib/Cloudflare/D1/index.d.ts +1 -0
- package/lib/Cloudflare/D1/index.d.ts.map +1 -1
- package/lib/Cloudflare/D1/index.js +1 -0
- package/lib/Cloudflare/D1/index.js.map +1 -1
- package/lib/Cloudflare/DNS/DnsHttp.d.ts +16 -1
- package/lib/Cloudflare/DNS/DnsHttp.d.ts.map +1 -1
- package/lib/Cloudflare/DNS/DnsHttp.js +6 -1
- package/lib/Cloudflare/DNS/DnsHttp.js.map +1 -1
- package/lib/Cloudflare/DNS/DnsLocal.d.ts +22 -0
- package/lib/Cloudflare/DNS/DnsLocal.d.ts.map +1 -0
- package/lib/Cloudflare/DNS/DnsLocal.js +31 -0
- package/lib/Cloudflare/DNS/DnsLocal.js.map +1 -0
- package/lib/Cloudflare/DNS/ReadDnsHttp.d.ts +3 -3
- package/lib/Cloudflare/DNS/ReadDnsHttp.d.ts.map +1 -1
- package/lib/Cloudflare/DNS/ReadDnsHttp.js +3 -4
- package/lib/Cloudflare/DNS/ReadDnsHttp.js.map +1 -1
- package/lib/Cloudflare/DNS/ReadDnsLocal.d.ts +32 -0
- package/lib/Cloudflare/DNS/ReadDnsLocal.d.ts.map +1 -0
- package/lib/Cloudflare/DNS/ReadDnsLocal.js +35 -0
- package/lib/Cloudflare/DNS/ReadDnsLocal.js.map +1 -0
- package/lib/Cloudflare/DNS/ReadWriteDnsHttp.d.ts +3 -3
- package/lib/Cloudflare/DNS/ReadWriteDnsHttp.d.ts.map +1 -1
- package/lib/Cloudflare/DNS/ReadWriteDnsHttp.js +4 -4
- package/lib/Cloudflare/DNS/ReadWriteDnsHttp.js.map +1 -1
- package/lib/Cloudflare/DNS/ReadWriteDnsLocal.d.ts +40 -0
- package/lib/Cloudflare/DNS/ReadWriteDnsLocal.d.ts.map +1 -0
- package/lib/Cloudflare/DNS/ReadWriteDnsLocal.js +43 -0
- package/lib/Cloudflare/DNS/ReadWriteDnsLocal.js.map +1 -0
- package/lib/Cloudflare/DNS/WriteDnsHttp.d.ts +3 -3
- package/lib/Cloudflare/DNS/WriteDnsHttp.d.ts.map +1 -1
- package/lib/Cloudflare/DNS/WriteDnsHttp.js +3 -4
- package/lib/Cloudflare/DNS/WriteDnsHttp.js.map +1 -1
- package/lib/Cloudflare/DNS/WriteDnsLocal.d.ts +38 -0
- package/lib/Cloudflare/DNS/WriteDnsLocal.d.ts.map +1 -0
- package/lib/Cloudflare/DNS/WriteDnsLocal.js +41 -0
- package/lib/Cloudflare/DNS/WriteDnsLocal.js.map +1 -0
- package/lib/Cloudflare/DNS/index.d.ts +3 -0
- package/lib/Cloudflare/DNS/index.d.ts.map +1 -1
- package/lib/Cloudflare/DNS/index.js +3 -0
- package/lib/Cloudflare/DNS/index.js.map +1 -1
- package/lib/Cloudflare/Flagship/ReadFlagsHttpClient.d.ts +27 -0
- package/lib/Cloudflare/Flagship/ReadFlagsHttpClient.d.ts.map +1 -0
- package/lib/Cloudflare/Flagship/ReadFlagsHttpClient.js +86 -0
- package/lib/Cloudflare/Flagship/ReadFlagsHttpClient.js.map +1 -0
- package/lib/Cloudflare/Flagship/ReadFlagsLocal.d.ts +41 -0
- package/lib/Cloudflare/Flagship/ReadFlagsLocal.d.ts.map +1 -0
- package/lib/Cloudflare/Flagship/ReadFlagsLocal.js +57 -0
- package/lib/Cloudflare/Flagship/ReadFlagsLocal.js.map +1 -0
- package/lib/Cloudflare/Flagship/index.d.ts +1 -0
- package/lib/Cloudflare/Flagship/index.d.ts.map +1 -1
- package/lib/Cloudflare/Flagship/index.js +1 -0
- package/lib/Cloudflare/Flagship/index.js.map +1 -1
- package/lib/Cloudflare/KV/NamespaceHttp.d.ts +16 -1
- package/lib/Cloudflare/KV/NamespaceHttp.d.ts.map +1 -1
- package/lib/Cloudflare/KV/NamespaceHttp.js +8 -2
- package/lib/Cloudflare/KV/NamespaceHttp.js.map +1 -1
- package/lib/Cloudflare/KV/NamespaceLocal.d.ts +22 -0
- package/lib/Cloudflare/KV/NamespaceLocal.d.ts.map +1 -0
- package/lib/Cloudflare/KV/NamespaceLocal.js +32 -0
- package/lib/Cloudflare/KV/NamespaceLocal.js.map +1 -0
- package/lib/Cloudflare/KV/ReadNamespaceHttp.d.ts +2 -2
- package/lib/Cloudflare/KV/ReadNamespaceHttp.d.ts.map +1 -1
- package/lib/Cloudflare/KV/ReadNamespaceHttp.js +5 -6
- package/lib/Cloudflare/KV/ReadNamespaceHttp.js.map +1 -1
- package/lib/Cloudflare/KV/ReadNamespaceLocal.d.ts +27 -0
- package/lib/Cloudflare/KV/ReadNamespaceLocal.d.ts.map +1 -0
- package/lib/Cloudflare/KV/ReadNamespaceLocal.js +30 -0
- package/lib/Cloudflare/KV/ReadNamespaceLocal.js.map +1 -0
- package/lib/Cloudflare/KV/ReadWriteNamespaceHttp.d.ts +3 -3
- package/lib/Cloudflare/KV/ReadWriteNamespaceHttp.d.ts.map +1 -1
- package/lib/Cloudflare/KV/ReadWriteNamespaceHttp.js +6 -6
- package/lib/Cloudflare/KV/ReadWriteNamespaceHttp.js.map +1 -1
- package/lib/Cloudflare/KV/ReadWriteNamespaceLocal.d.ts +34 -0
- package/lib/Cloudflare/KV/ReadWriteNamespaceLocal.d.ts.map +1 -0
- package/lib/Cloudflare/KV/ReadWriteNamespaceLocal.js +37 -0
- package/lib/Cloudflare/KV/ReadWriteNamespaceLocal.js.map +1 -0
- package/lib/Cloudflare/KV/WriteNamespaceHttp.d.ts +2 -2
- package/lib/Cloudflare/KV/WriteNamespaceHttp.d.ts.map +1 -1
- package/lib/Cloudflare/KV/WriteNamespaceHttp.js +5 -6
- package/lib/Cloudflare/KV/WriteNamespaceHttp.js.map +1 -1
- package/lib/Cloudflare/KV/WriteNamespaceLocal.d.ts +27 -0
- package/lib/Cloudflare/KV/WriteNamespaceLocal.d.ts.map +1 -0
- package/lib/Cloudflare/KV/WriteNamespaceLocal.js +30 -0
- package/lib/Cloudflare/KV/WriteNamespaceLocal.js.map +1 -0
- package/lib/Cloudflare/KV/index.d.ts +3 -0
- package/lib/Cloudflare/KV/index.d.ts.map +1 -1
- package/lib/Cloudflare/KV/index.js +3 -0
- package/lib/Cloudflare/KV/index.js.map +1 -1
- package/lib/Cloudflare/Queues/QueueHttp.d.ts +20 -1
- package/lib/Cloudflare/Queues/QueueHttp.d.ts.map +1 -1
- package/lib/Cloudflare/Queues/QueueHttp.js +2 -2
- package/lib/Cloudflare/Queues/QueueHttp.js.map +1 -1
- package/lib/Cloudflare/Queues/WriteQueueHttp.d.ts +9 -3
- package/lib/Cloudflare/Queues/WriteQueueHttp.d.ts.map +1 -1
- package/lib/Cloudflare/Queues/WriteQueueHttp.js +11 -6
- package/lib/Cloudflare/Queues/WriteQueueHttp.js.map +1 -1
- package/lib/Cloudflare/Queues/WriteQueueLocal.d.ts +36 -0
- package/lib/Cloudflare/Queues/WriteQueueLocal.d.ts.map +1 -0
- package/lib/Cloudflare/Queues/WriteQueueLocal.js +51 -0
- package/lib/Cloudflare/Queues/WriteQueueLocal.js.map +1 -0
- package/lib/Cloudflare/Queues/index.d.ts +1 -0
- package/lib/Cloudflare/Queues/index.d.ts.map +1 -1
- package/lib/Cloudflare/Queues/index.js +1 -0
- package/lib/Cloudflare/Queues/index.js.map +1 -1
- package/lib/Cloudflare/R2/BucketHttp.d.ts +15 -1
- package/lib/Cloudflare/R2/BucketHttp.d.ts.map +1 -1
- package/lib/Cloudflare/R2/BucketHttp.js +3 -3
- package/lib/Cloudflare/R2/BucketHttp.js.map +1 -1
- package/lib/Cloudflare/R2/BucketLocal.d.ts +21 -0
- package/lib/Cloudflare/R2/BucketLocal.d.ts.map +1 -0
- package/lib/Cloudflare/R2/BucketLocal.js +32 -0
- package/lib/Cloudflare/R2/BucketLocal.js.map +1 -0
- package/lib/Cloudflare/R2/ReadBucketHttp.d.ts +2 -2
- package/lib/Cloudflare/R2/ReadBucketHttp.d.ts.map +1 -1
- package/lib/Cloudflare/R2/ReadBucketHttp.js +4 -4
- package/lib/Cloudflare/R2/ReadBucketHttp.js.map +1 -1
- package/lib/Cloudflare/R2/ReadBucketLocal.d.ts +27 -0
- package/lib/Cloudflare/R2/ReadBucketLocal.d.ts.map +1 -0
- package/lib/Cloudflare/R2/ReadBucketLocal.js +30 -0
- package/lib/Cloudflare/R2/ReadBucketLocal.js.map +1 -0
- package/lib/Cloudflare/R2/ReadWriteBucketHttp.d.ts +2 -2
- package/lib/Cloudflare/R2/ReadWriteBucketHttp.d.ts.map +1 -1
- package/lib/Cloudflare/R2/ReadWriteBucketHttp.js +5 -4
- package/lib/Cloudflare/R2/ReadWriteBucketHttp.js.map +1 -1
- package/lib/Cloudflare/R2/ReadWriteBucketLocal.d.ts +30 -0
- package/lib/Cloudflare/R2/ReadWriteBucketLocal.d.ts.map +1 -0
- package/lib/Cloudflare/R2/ReadWriteBucketLocal.js +33 -0
- package/lib/Cloudflare/R2/ReadWriteBucketLocal.js.map +1 -0
- package/lib/Cloudflare/R2/WriteBucketHttp.d.ts +2 -2
- package/lib/Cloudflare/R2/WriteBucketHttp.d.ts.map +1 -1
- package/lib/Cloudflare/R2/WriteBucketHttp.js +4 -4
- package/lib/Cloudflare/R2/WriteBucketHttp.js.map +1 -1
- package/lib/Cloudflare/R2/WriteBucketLocal.d.ts +27 -0
- package/lib/Cloudflare/R2/WriteBucketLocal.d.ts.map +1 -0
- package/lib/Cloudflare/R2/WriteBucketLocal.js +30 -0
- package/lib/Cloudflare/R2/WriteBucketLocal.js.map +1 -0
- package/lib/Cloudflare/R2/index.d.ts +3 -0
- package/lib/Cloudflare/R2/index.d.ts.map +1 -1
- package/lib/Cloudflare/R2/index.js +3 -0
- package/lib/Cloudflare/R2/index.js.map +1 -1
- package/lib/Cloudflare/StateStore/Api.d.ts +2 -0
- package/lib/Cloudflare/Tunnel/ReadTunnel.d.ts +3 -3
- package/lib/Cloudflare/Tunnel/ReadTunnel.d.ts.map +1 -1
- package/lib/Cloudflare/Tunnel/ReadTunnel.js +7 -8
- package/lib/Cloudflare/Tunnel/ReadTunnel.js.map +1 -1
- package/lib/Cloudflare/Tunnel/ReadTunnelLocal.d.ts +29 -0
- package/lib/Cloudflare/Tunnel/ReadTunnelLocal.d.ts.map +1 -0
- package/lib/Cloudflare/Tunnel/ReadTunnelLocal.js +30 -0
- package/lib/Cloudflare/Tunnel/ReadTunnelLocal.js.map +1 -0
- package/lib/Cloudflare/Tunnel/ReadWriteTunnel.d.ts +3 -3
- package/lib/Cloudflare/Tunnel/ReadWriteTunnel.d.ts.map +1 -1
- package/lib/Cloudflare/Tunnel/ReadWriteTunnel.js +4 -4
- package/lib/Cloudflare/Tunnel/ReadWriteTunnel.js.map +1 -1
- package/lib/Cloudflare/Tunnel/ReadWriteTunnelLocal.d.ts +35 -0
- package/lib/Cloudflare/Tunnel/ReadWriteTunnelLocal.d.ts.map +1 -0
- package/lib/Cloudflare/Tunnel/ReadWriteTunnelLocal.js +36 -0
- package/lib/Cloudflare/Tunnel/ReadWriteTunnelLocal.js.map +1 -0
- package/lib/Cloudflare/Tunnel/TunnelBinding.d.ts +17 -1
- package/lib/Cloudflare/Tunnel/TunnelBinding.d.ts.map +1 -1
- package/lib/Cloudflare/Tunnel/TunnelBinding.js +7 -1
- package/lib/Cloudflare/Tunnel/TunnelBinding.js.map +1 -1
- package/lib/Cloudflare/Tunnel/TunnelLocalBinding.d.ts +19 -0
- package/lib/Cloudflare/Tunnel/TunnelLocalBinding.d.ts.map +1 -0
- package/lib/Cloudflare/Tunnel/TunnelLocalBinding.js +29 -0
- package/lib/Cloudflare/Tunnel/TunnelLocalBinding.js.map +1 -0
- package/lib/Cloudflare/Tunnel/WarpConnector.d.ts +3 -3
- package/lib/Cloudflare/Tunnel/WarpConnector.d.ts.map +1 -1
- package/lib/Cloudflare/Tunnel/WarpConnector.js +7 -4
- package/lib/Cloudflare/Tunnel/WarpConnector.js.map +1 -1
- package/lib/Cloudflare/Tunnel/WriteTunnel.d.ts +3 -3
- package/lib/Cloudflare/Tunnel/WriteTunnel.d.ts.map +1 -1
- package/lib/Cloudflare/Tunnel/WriteTunnel.js +7 -8
- package/lib/Cloudflare/Tunnel/WriteTunnel.js.map +1 -1
- package/lib/Cloudflare/Tunnel/WriteTunnelLocal.d.ts +29 -0
- package/lib/Cloudflare/Tunnel/WriteTunnelLocal.d.ts.map +1 -0
- package/lib/Cloudflare/Tunnel/WriteTunnelLocal.js +30 -0
- package/lib/Cloudflare/Tunnel/WriteTunnelLocal.js.map +1 -0
- package/lib/Cloudflare/Tunnel/index.d.ts +3 -0
- package/lib/Cloudflare/Tunnel/index.d.ts.map +1 -1
- package/lib/Cloudflare/Tunnel/index.js +3 -0
- package/lib/Cloudflare/Tunnel/index.js.map +1 -1
- package/lib/Cloudflare/Vectorize/SearchIndexHttpClient.d.ts +30 -0
- package/lib/Cloudflare/Vectorize/SearchIndexHttpClient.d.ts.map +1 -0
- package/lib/Cloudflare/Vectorize/SearchIndexHttpClient.js +100 -0
- package/lib/Cloudflare/Vectorize/SearchIndexHttpClient.js.map +1 -0
- package/lib/Cloudflare/Vectorize/SearchIndexLocal.d.ts +42 -0
- package/lib/Cloudflare/Vectorize/SearchIndexLocal.d.ts.map +1 -0
- package/lib/Cloudflare/Vectorize/SearchIndexLocal.js +58 -0
- package/lib/Cloudflare/Vectorize/SearchIndexLocal.js.map +1 -0
- package/lib/Cloudflare/Vectorize/index.d.ts +1 -0
- package/lib/Cloudflare/Vectorize/index.d.ts.map +1 -1
- package/lib/Cloudflare/Vectorize/index.js +1 -0
- package/lib/Cloudflare/Vectorize/index.js.map +1 -1
- package/lib/Cloudflare/Workers/BrowserHttpClient.d.ts +32 -0
- package/lib/Cloudflare/Workers/BrowserHttpClient.d.ts.map +1 -0
- package/lib/Cloudflare/Workers/BrowserHttpClient.js +100 -0
- package/lib/Cloudflare/Workers/BrowserHttpClient.js.map +1 -0
- package/lib/Cloudflare/Workers/BrowserLocal.d.ts +37 -0
- package/lib/Cloudflare/Workers/BrowserLocal.d.ts.map +1 -0
- package/lib/Cloudflare/Workers/BrowserLocal.js +53 -0
- package/lib/Cloudflare/Workers/BrowserLocal.js.map +1 -0
- package/lib/Cloudflare/Workers/ConfigProvider.d.ts +8 -0
- package/lib/Cloudflare/Workers/ConfigProvider.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/ConfigProvider.js +10 -1
- package/lib/Cloudflare/Workers/ConfigProvider.js.map +1 -1
- package/lib/Cloudflare/Workers/DurableObject.d.ts +137 -3
- package/lib/Cloudflare/Workers/DurableObject.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/DurableObject.js +141 -6
- package/lib/Cloudflare/Workers/DurableObject.js.map +1 -1
- package/lib/Cloudflare/Workers/LocalWorkerProvider.d.ts +2 -185
- package/lib/Cloudflare/Workers/LocalWorkerProvider.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/Vite.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/Vite.js +81 -2
- package/lib/Cloudflare/Workers/Vite.js.map +1 -1
- package/lib/Cloudflare/Workers/Worker.d.ts +15 -1
- package/lib/Cloudflare/Workers/Worker.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/Worker.js.map +1 -1
- package/lib/Cloudflare/Workers/WorkerAsyncBindings.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/WorkerAsyncBindings.js +2 -1
- package/lib/Cloudflare/Workers/WorkerAsyncBindings.js.map +1 -1
- package/lib/Cloudflare/Workers/WorkerBinding.d.ts +22 -1
- package/lib/Cloudflare/Workers/WorkerBinding.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/WorkerBinding.js.map +1 -1
- package/lib/Cloudflare/Workers/WorkerBridge.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/WorkerBridge.js +7 -2
- package/lib/Cloudflare/Workers/WorkerBridge.js.map +1 -1
- package/lib/Cloudflare/Workers/WorkerProvider.d.ts +81 -0
- package/lib/Cloudflare/Workers/WorkerProvider.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/WorkerProvider.js +450 -61
- package/lib/Cloudflare/Workers/WorkerProvider.js.map +1 -1
- package/lib/Cloudflare/Workers/WorkerRuntimeContext.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/WorkerRuntimeContext.js +11 -37
- package/lib/Cloudflare/Workers/WorkerRuntimeContext.js.map +1 -1
- package/lib/Cloudflare/Workers/index.d.ts +1 -0
- package/lib/Cloudflare/Workers/index.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/index.js +1 -0
- package/lib/Cloudflare/Workers/index.js.map +1 -1
- package/lib/Diff.d.ts +16 -0
- package/lib/Diff.d.ts.map +1 -1
- package/lib/Diff.js +33 -0
- package/lib/Diff.js.map +1 -1
- package/lib/GitHub/Secrets.d.ts +1 -1
- package/lib/GitHub/Secrets.js +1 -1
- package/lib/GitHub/Variables.d.ts +1 -1
- package/lib/GitHub/Variables.js +1 -1
- package/lib/Local/RpcSerialization.d.ts.map +1 -1
- package/lib/Local/RpcSerialization.js +6 -2
- package/lib/Local/RpcSerialization.js.map +1 -1
- package/lib/Local/RpcSpawner.d.ts.map +1 -1
- package/lib/Local/RpcSpawner.js +14 -8
- package/lib/Local/RpcSpawner.js.map +1 -1
- package/lib/Neon/AuthProvider.js +1 -1
- package/lib/Neon/AuthProvider.js.map +1 -1
- package/lib/Plan.d.ts.map +1 -1
- package/lib/Plan.js +11 -4
- package/lib/Plan.js.map +1 -1
- package/lib/Planetscale/Database.d.ts +2 -1
- package/lib/Planetscale/Database.d.ts.map +1 -1
- package/lib/Planetscale/MySQL/MySQLClusterSize.d.ts +41 -3
- package/lib/Planetscale/MySQL/MySQLClusterSize.d.ts.map +1 -1
- package/lib/Planetscale/MySQL/MySQLClusterSize.js +88 -11
- package/lib/Planetscale/MySQL/MySQLClusterSize.js.map +1 -1
- package/lib/Planetscale/MySQL/MySQLDatabase.d.ts +14 -0
- package/lib/Planetscale/MySQL/MySQLDatabase.d.ts.map +1 -1
- package/lib/Planetscale/MySQL/MySQLDatabase.js +24 -11
- package/lib/Planetscale/MySQL/MySQLDatabase.js.map +1 -1
- package/lib/Platform.d.ts.map +1 -1
- package/lib/Platform.js +11 -1
- package/lib/Platform.js.map +1 -1
- package/lib/Runtime.d.ts +23 -0
- package/lib/Runtime.d.ts.map +1 -1
- package/lib/Runtime.js +83 -0
- package/lib/Runtime.js.map +1 -1
- package/lib/RuntimeContext.d.ts +46 -0
- package/lib/RuntimeContext.d.ts.map +1 -1
- package/lib/RuntimeContext.js +60 -0
- package/lib/RuntimeContext.js.map +1 -1
- package/lib/Server/Process.d.ts +1 -1
- package/lib/Server/Process.d.ts.map +1 -1
- package/lib/Server/Process.js +8 -8
- package/lib/Server/Process.js.map +1 -1
- package/lib/Stack.js +1 -1
- package/lib/Stack.js.map +1 -1
- package/lib/State/HttpStateApi.d.ts +10 -10
- package/lib/Test/Alchemy.d.ts +74 -0
- package/lib/Test/Alchemy.d.ts.map +1 -0
- package/lib/Test/Alchemy.js +143 -0
- package/lib/Test/Alchemy.js.map +1 -0
- package/lib/Util/cached-function.d.ts +1 -1
- package/lib/Util/cached-function.d.ts.map +1 -1
- package/lib/Util/cached-function.js +2 -2
- package/lib/Util/cached-function.js.map +1 -1
- package/lib/Util/proxy-chain.js +3 -0
- package/lib/Util/proxy-chain.js.map +1 -1
- package/package.json +10 -10
- package/src/AWS/AuthProvider.ts +1 -1
- package/src/AWS/EC2/hosted.ts +2 -1
- package/src/AWS/ECS/Task.ts +2 -1
- package/src/AWS/Lambda/Function.ts +13 -47
- package/src/AWS/Lambda/MicrovmRuntimeContext.ts +11 -38
- package/src/Action.ts +39 -6
- package/src/ActionRuntimeContext.ts +68 -0
- package/src/Apply.ts +46 -8
- package/src/Auth/AuthProvider.ts +1 -1
- package/src/Auth/Lock.ts +5 -2
- package/src/Bundle/PurePlugin.ts +34 -1
- package/src/Bundle/Vite.ts +51 -1
- package/src/Cli/LoggingCli.ts +7 -4
- package/src/Cli/commands/_shared.ts +52 -0
- package/src/Cli/commands/login.ts +90 -14
- package/src/Cli/commands/profile.ts +7 -41
- package/src/Cloudflare/AI/LanguageModel.ts +25 -5
- package/src/Cloudflare/AI/QuerySearchLocal.ts +66 -0
- package/src/Cloudflare/AI/QuerySearchNamespaceLocal.ts +60 -0
- package/src/Cloudflare/AI/SearchHttpClient.ts +423 -0
- package/src/Cloudflare/AI/index.ts +2 -0
- package/src/Cloudflare/Auth/AuthProvider.ts +1 -1
- package/src/Cloudflare/Containers/ContainerBundle.ts +11 -1
- package/src/Cloudflare/Containers/ContainerPlatform.ts +14 -52
- package/src/Cloudflare/D1/QueryDatabaseHttpClient.ts +176 -0
- package/src/Cloudflare/D1/QueryDatabaseLocal.ts +66 -0
- package/src/Cloudflare/D1/index.ts +1 -0
- package/src/Cloudflare/DNS/DnsHttp.ts +24 -2
- package/src/Cloudflare/DNS/DnsLocal.ts +41 -0
- package/src/Cloudflare/DNS/ReadDnsHttp.ts +4 -5
- package/src/Cloudflare/DNS/ReadDnsLocal.ts +38 -0
- package/src/Cloudflare/DNS/ReadWriteDnsHttp.ts +5 -5
- package/src/Cloudflare/DNS/ReadWriteDnsLocal.ts +46 -0
- package/src/Cloudflare/DNS/WriteDnsHttp.ts +4 -5
- package/src/Cloudflare/DNS/WriteDnsLocal.ts +44 -0
- package/src/Cloudflare/DNS/index.ts +3 -0
- package/src/Cloudflare/Flagship/ReadFlagsHttpClient.ts +183 -0
- package/src/Cloudflare/Flagship/ReadFlagsLocal.ts +69 -0
- package/src/Cloudflare/Flagship/index.ts +1 -0
- package/src/Cloudflare/KV/NamespaceHttp.ts +25 -2
- package/src/Cloudflare/KV/NamespaceLocal.ts +42 -0
- package/src/Cloudflare/KV/ReadNamespaceHttp.ts +7 -6
- package/src/Cloudflare/KV/ReadNamespaceLocal.ts +35 -0
- package/src/Cloudflare/KV/ReadWriteNamespaceHttp.ts +11 -6
- package/src/Cloudflare/KV/ReadWriteNamespaceLocal.ts +42 -0
- package/src/Cloudflare/KV/WriteNamespaceHttp.ts +7 -6
- package/src/Cloudflare/KV/WriteNamespaceLocal.ts +35 -0
- package/src/Cloudflare/KV/index.ts +3 -0
- package/src/Cloudflare/Queues/QueueHttp.ts +24 -2
- package/src/Cloudflare/Queues/WriteQueueHttp.ts +16 -7
- package/src/Cloudflare/Queues/WriteQueueLocal.ts +64 -0
- package/src/Cloudflare/Queues/index.ts +1 -0
- package/src/Cloudflare/R2/BucketHttp.ts +20 -3
- package/src/Cloudflare/R2/BucketLocal.ts +47 -0
- package/src/Cloudflare/R2/ReadBucketHttp.ts +10 -5
- package/src/Cloudflare/R2/ReadBucketLocal.ts +33 -0
- package/src/Cloudflare/R2/ReadWriteBucketHttp.ts +11 -5
- package/src/Cloudflare/R2/ReadWriteBucketLocal.ts +36 -0
- package/src/Cloudflare/R2/WriteBucketHttp.ts +10 -5
- package/src/Cloudflare/R2/WriteBucketLocal.ts +33 -0
- package/src/Cloudflare/R2/index.ts +3 -0
- package/src/Cloudflare/Tunnel/ReadTunnel.ts +8 -9
- package/src/Cloudflare/Tunnel/ReadTunnelLocal.ts +33 -0
- package/src/Cloudflare/Tunnel/ReadWriteTunnel.ts +5 -5
- package/src/Cloudflare/Tunnel/ReadWriteTunnelLocal.ts +39 -0
- package/src/Cloudflare/Tunnel/TunnelBinding.ts +26 -2
- package/src/Cloudflare/Tunnel/TunnelLocalBinding.ts +38 -0
- package/src/Cloudflare/Tunnel/WarpConnector.ts +8 -5
- package/src/Cloudflare/Tunnel/WriteTunnel.ts +8 -9
- package/src/Cloudflare/Tunnel/WriteTunnelLocal.ts +33 -0
- package/src/Cloudflare/Tunnel/index.ts +3 -0
- package/src/Cloudflare/Vectorize/SearchIndexHttpClient.ts +183 -0
- package/src/Cloudflare/Vectorize/SearchIndexLocal.ts +70 -0
- package/src/Cloudflare/Vectorize/index.ts +1 -0
- package/src/Cloudflare/Workers/BrowserHttpClient.ts +201 -0
- package/src/Cloudflare/Workers/BrowserLocal.ts +65 -0
- package/src/Cloudflare/Workers/ConfigProvider.ts +15 -1
- package/src/Cloudflare/Workers/DurableObject.ts +227 -6
- package/src/Cloudflare/Workers/Vite.ts +93 -11
- package/src/Cloudflare/Workers/Worker.ts +19 -1
- package/src/Cloudflare/Workers/WorkerAsyncBindings.ts +6 -5
- package/src/Cloudflare/Workers/WorkerBinding.ts +20 -1
- package/src/Cloudflare/Workers/WorkerBridge.ts +12 -2
- package/src/Cloudflare/Workers/WorkerProvider.ts +664 -117
- package/src/Cloudflare/Workers/WorkerRuntimeContext.ts +14 -45
- package/src/Cloudflare/Workers/index.ts +1 -0
- package/src/Diff.ts +33 -0
- package/src/GitHub/Secrets.ts +1 -1
- package/src/GitHub/Variables.ts +1 -1
- package/src/Local/RpcSerialization.ts +6 -2
- package/src/Local/RpcSpawner.ts +21 -8
- package/src/Neon/AuthProvider.ts +1 -1
- package/src/Plan.ts +17 -4
- package/src/Planetscale/Database.ts +2 -1
- package/src/Planetscale/MySQL/MySQLClusterSize.ts +120 -21
- package/src/Planetscale/MySQL/MySQLDatabase.ts +84 -44
- package/src/Platform.ts +12 -3
- package/src/Runtime.ts +92 -0
- package/src/RuntimeContext.ts +79 -0
- package/src/Server/Process.ts +11 -18
- package/src/Stack.ts +1 -1
- package/src/Test/Alchemy.ts +282 -0
- package/src/Util/cached-function.ts +5 -5
- package/src/Util/proxy-chain.ts +3 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Cloudflare/Flagship/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,OAAO,EACL,SAAS,EACT,aAAa,GAId,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Cloudflare/Flagship/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,OAAO,EACL,SAAS,EACT,aAAa,GAId,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import * as Effect from "effect/Effect";
|
|
2
2
|
import type * as Redacted from "effect/Redacted";
|
|
3
|
+
import type * as HttpClient from "effect/unstable/http/HttpClient";
|
|
4
|
+
import type { RuntimeContext } from "../../RuntimeContext.ts";
|
|
3
5
|
import { Self } from "../../Self.ts";
|
|
4
6
|
import type { PermissionGroupRef } from "../ApiToken/Common.ts";
|
|
5
7
|
import { CloudflareEnvironment } from "../CloudflareEnvironment.ts";
|
|
8
|
+
import type { Credentials } from "../Credentials.ts";
|
|
6
9
|
import type { Namespace } from "./Namespace.ts";
|
|
7
10
|
import { NamespaceError } from "./NamespaceTypes.ts";
|
|
8
11
|
/**
|
|
@@ -27,10 +30,22 @@ export interface HttpScope {
|
|
|
27
30
|
accountId: string;
|
|
28
31
|
namespaceId: string;
|
|
29
32
|
}
|
|
33
|
+
/**
|
|
34
|
+
* Injectable auth for the KV HTTP client builders. Both the scoped-token
|
|
35
|
+
* (`*Http`) and current-credentials (`*Local`) variants supply an `authorize`
|
|
36
|
+
* (which provides `Credentials` + `HttpClient` to a raw SDK op) and an
|
|
37
|
+
* `accountId`, so the client builders are agnostic to how creds are obtained.
|
|
38
|
+
*/
|
|
39
|
+
export interface KVAuth {
|
|
40
|
+
authorize: <A, E>(eff: Effect.Effect<A, E, Credentials | HttpClient.HttpClient>) => Effect.Effect<A, E, RuntimeContext>;
|
|
41
|
+
accountId: Effect.Effect<string>;
|
|
42
|
+
}
|
|
43
|
+
/** Build a scoped-token {@link KVAuth} from a bound {@link HttpToken}. */
|
|
44
|
+
export declare const makeKVAuth: (token: HttpToken) => KVAuth;
|
|
30
45
|
declare const KV_HTTP_PERMISSION_GROUPS: PermissionGroupRef[];
|
|
31
46
|
type PermissionGroup = (typeof KV_HTTP_PERMISSION_GROUPS)[number];
|
|
32
47
|
/** Resolve the account and namespace id once per operation. */
|
|
33
|
-
export declare const makeKVHttpScope: (
|
|
48
|
+
export declare const makeKVHttpScope: (auth: KVAuth, namespaceId: Effect.Effect<string>) => Effect.Effect<HttpScope>;
|
|
34
49
|
export declare const toKVNamespaceError: (error: unknown) => NamespaceError;
|
|
35
50
|
export {};
|
|
36
51
|
//# sourceMappingURL=NamespaceHttp.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NamespaceHttp.d.ts","sourceRoot":"","sources":["../../../src/Cloudflare/KV/NamespaceHttp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAErC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,GAAI,MAAM,WAAW;IAC1D,gBAAgB,EAAE,eAAe,EAAE,CAAC;IACpC,UAAU,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,MAAM,CAAC;CAC9E;;;GA6BG,CAAC;AAEL,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAChD,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,QAAA,MAAM,yBAAyB,EAAE,kBAAkB,EAGlD,CAAC;AAEF,KAAK,eAAe,GAAG,CAAC,OAAO,yBAAyB,CAAC,CAAC,MAAM,CAAC,CAAC;AAElE,+DAA+D;AAC/D,eAAO,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"NamespaceHttp.d.ts","sourceRoot":"","sources":["../../../src/Cloudflare/KV/NamespaceHttp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,KAAK,UAAU,MAAM,iCAAiC,CAAC;AACnE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAErC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,GAAI,MAAM,WAAW;IAC1D,gBAAgB,EAAE,eAAe,EAAE,CAAC;IACpC,UAAU,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,MAAM,CAAC;CAC9E;;;GA6BG,CAAC;AAEL,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAChD,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;GAKG;AACH,MAAM,WAAW,MAAM;IACrB,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,EACd,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,GAAG,UAAU,CAAC,UAAU,CAAC,KAC1D,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,cAAc,CAAC,CAAC;IACzC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;CAClC;AAED,0EAA0E;AAC1E,eAAO,MAAM,UAAU,UAAW,SAAS,KAAG,MAG5C,CAAC;AAEH,QAAA,MAAM,yBAAyB,EAAE,kBAAkB,EAGlD,CAAC;AAEF,KAAK,eAAe,GAAG,CAAC,OAAO,yBAAyB,CAAC,CAAC,MAAM,CAAC,CAAC;AAElE,+DAA+D;AAC/D,eAAO,MAAM,eAAe,SACpB,MAAM,eACC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KACjC,MAAM,CAAC,MAAM,CAAC,SAAS,CAKtB,CAAC;AAEL,eAAO,MAAM,kBAAkB,UAAW,OAAO,KAAG,cAOhD,CAAC"}
|
|
@@ -2,6 +2,7 @@ import * as Effect from "effect/Effect";
|
|
|
2
2
|
import { Self } from "../../Self.js";
|
|
3
3
|
import { AccountApiToken } from "../ApiToken/AccountApiToken.js";
|
|
4
4
|
import { CloudflareEnvironment } from "../CloudflareEnvironment.js";
|
|
5
|
+
import { authorizeWith } from "../HttpClientUtils.js";
|
|
5
6
|
import { NamespaceError } from "./NamespaceTypes.js";
|
|
6
7
|
/**
|
|
7
8
|
* Shared scaffolding for the HTTP-backed KV services.
|
|
@@ -38,13 +39,18 @@ export const makeHttpKVNamespaceBinding = (options) => Effect.gen(function* () {
|
|
|
38
39
|
return options.makeClient(bound, namespaceId);
|
|
39
40
|
});
|
|
40
41
|
});
|
|
42
|
+
/** Build a scoped-token {@link KVAuth} from a bound {@link HttpToken}. */
|
|
43
|
+
export const makeKVAuth = (token) => ({
|
|
44
|
+
authorize: authorizeWith(token),
|
|
45
|
+
accountId: token.accountId,
|
|
46
|
+
});
|
|
41
47
|
const KV_HTTP_PERMISSION_GROUPS = [
|
|
42
48
|
"Workers KV Storage Read",
|
|
43
49
|
"Workers KV Storage Write",
|
|
44
50
|
];
|
|
45
51
|
/** Resolve the account and namespace id once per operation. */
|
|
46
|
-
export const makeKVHttpScope = (
|
|
47
|
-
const accountId = yield*
|
|
52
|
+
export const makeKVHttpScope = (auth, namespaceId) => Effect.gen(function* () {
|
|
53
|
+
const accountId = yield* auth.accountId;
|
|
48
54
|
const id = yield* namespaceId;
|
|
49
55
|
return { accountId, namespaceId: id };
|
|
50
56
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NamespaceHttp.js","sourceRoot":"","sources":["../../../src/Cloudflare/KV/NamespaceHttp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"NamespaceHttp.js","sourceRoot":"","sources":["../../../src/Cloudflare/KV/NamespaceHttp.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import * as Effect from "effect/Effect";
|
|
2
|
+
import type * as HttpClient from "effect/unstable/http/HttpClient";
|
|
3
|
+
import { CloudflareEnvironment } from "../CloudflareEnvironment.ts";
|
|
4
|
+
import type { Credentials } from "../Credentials.ts";
|
|
5
|
+
import type { Namespace } from "./Namespace.ts";
|
|
6
|
+
import type { KVAuth } from "./NamespaceHttp.ts";
|
|
7
|
+
/**
|
|
8
|
+
* Shared scaffolding for the `*Local` KV services.
|
|
9
|
+
*
|
|
10
|
+
* Instead of minting a scoped {@link AccountApiToken} (the `*Http` path) or
|
|
11
|
+
* resolving a native Worker binding (the `*Binding` path), it captures the
|
|
12
|
+
* ambient current-credentials context available during stack-eval and builds
|
|
13
|
+
* a {@link KVAuth} that provides those credentials directly to the KV HTTP
|
|
14
|
+
* ops. It then delegates to the same client builders the `*Http` variant uses.
|
|
15
|
+
*
|
|
16
|
+
* NOT exported from `index.ts` — this is internal scaffolding shared by the
|
|
17
|
+
* three access-level Local layers.
|
|
18
|
+
*/
|
|
19
|
+
export declare const makeLocalKVNamespaceBinding: <Client>(options: {
|
|
20
|
+
makeClient: (auth: KVAuth, namespaceId: Effect.Effect<string>) => Client;
|
|
21
|
+
}) => Effect.Effect<(namespace: Namespace) => Effect.Effect<Client, never, never>, never, CloudflareEnvironment | Credentials | HttpClient.HttpClient>;
|
|
22
|
+
//# sourceMappingURL=NamespaceLocal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NamespaceLocal.d.ts","sourceRoot":"","sources":["../../../src/Cloudflare/KV/NamespaceLocal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,UAAU,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,2BAA2B,GAAI,MAAM,WAAW;IAC3D,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,MAAM,CAAC;CAC1E,qJAoBG,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import * as Effect from "effect/Effect";
|
|
2
|
+
import { CloudflareEnvironment } from "../CloudflareEnvironment.js";
|
|
3
|
+
/**
|
|
4
|
+
* Shared scaffolding for the `*Local` KV services.
|
|
5
|
+
*
|
|
6
|
+
* Instead of minting a scoped {@link AccountApiToken} (the `*Http` path) or
|
|
7
|
+
* resolving a native Worker binding (the `*Binding` path), it captures the
|
|
8
|
+
* ambient current-credentials context available during stack-eval and builds
|
|
9
|
+
* a {@link KVAuth} that provides those credentials directly to the KV HTTP
|
|
10
|
+
* ops. It then delegates to the same client builders the `*Http` variant uses.
|
|
11
|
+
*
|
|
12
|
+
* NOT exported from `index.ts` — this is internal scaffolding shared by the
|
|
13
|
+
* three access-level Local layers.
|
|
14
|
+
*/
|
|
15
|
+
export const makeLocalKVNamespaceBinding = (options) => Effect.gen(function* () {
|
|
16
|
+
// Account + credentials are ambient during stack-eval (the stack's
|
|
17
|
+
// providers layer). Capture the full context so KV HTTP ops can run with
|
|
18
|
+
// the current credentials — no `host.bind`, no minted token.
|
|
19
|
+
const { accountId } = yield* yield* CloudflareEnvironment;
|
|
20
|
+
const context = yield* Effect.context();
|
|
21
|
+
return Effect.fn(function* (namespace) {
|
|
22
|
+
// Deferred accessor — resolves the namespaceId against the tracker at
|
|
23
|
+
// apply time (in an Action, that's the engine's resolve context).
|
|
24
|
+
const namespaceId = yield* namespace.namespaceId;
|
|
25
|
+
const auth = {
|
|
26
|
+
authorize: (eff) => eff.pipe(Effect.provideContext(context)),
|
|
27
|
+
accountId: Effect.succeed(accountId),
|
|
28
|
+
};
|
|
29
|
+
return options.makeClient(auth, namespaceId);
|
|
30
|
+
});
|
|
31
|
+
});
|
|
32
|
+
//# sourceMappingURL=NamespaceLocal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NamespaceLocal.js","sourceRoot":"","sources":["../../../src/Cloudflare/KV/NamespaceLocal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAKpE;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAS,OAEnD,EAAE,EAAE,CACH,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,mEAAmE;IACnE,yEAAyE;IACzE,6DAA6D;IAC7D,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,qBAAqB,CAAC;IAC1D,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,EAElC,CAAC;IAEJ,OAAO,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,SAAoB;QAC9C,sEAAsE;QACtE,kEAAkE;QAClE,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC;QACjD,MAAM,IAAI,GAAW;YACnB,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YAC5D,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;SACrC,CAAC;QACF,OAAO,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as Effect from "effect/Effect";
|
|
2
2
|
import * as Layer from "effect/Layer";
|
|
3
|
-
import { type
|
|
3
|
+
import { type KVAuth } from "./NamespaceHttp.ts";
|
|
4
4
|
import { ReadNamespace, type ReadNamespaceClient } from "./ReadNamespace.ts";
|
|
5
5
|
/**
|
|
6
6
|
* HTTP-backed implementation of the {@link ReadNamespace} binding.
|
|
@@ -12,5 +12,5 @@ export declare const ReadNamespaceHttp: Layer.Layer<ReadNamespace, never, import
|
|
|
12
12
|
Type: string;
|
|
13
13
|
LogicalId: string;
|
|
14
14
|
}>>;
|
|
15
|
-
export declare const makeReadKVHttpClient: (
|
|
15
|
+
export declare const makeReadKVHttpClient: (auth: KVAuth, namespaceId: Effect.Effect<string>) => ReadNamespaceClient;
|
|
16
16
|
//# sourceMappingURL=ReadNamespaceHttp.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReadNamespaceHttp.d.ts","sourceRoot":"","sources":["../../../src/Cloudflare/KV/ReadNamespaceHttp.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"ReadNamespaceHttp.d.ts","sourceRoot":"","sources":["../../../src/Cloudflare/KV/ReadNamespaceHttp.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,EAKL,KAAK,MAAM,EACZ,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,KAAK,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAE7E;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB;;;GAS7B,CAAC;AAEF,eAAO,MAAM,oBAAoB,SACzB,MAAM,eACC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KACjC,mBAyHF,CAAC"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import * as kv from "@distilled.cloud/cloudflare/kv";
|
|
2
2
|
import * as Effect from "effect/Effect";
|
|
3
3
|
import * as Layer from "effect/Layer";
|
|
4
|
-
import {
|
|
5
|
-
import { makeHttpKVNamespaceBinding, makeKVHttpScope, toKVNamespaceError, } from "./NamespaceHttp.js";
|
|
4
|
+
import { makeHttpKVNamespaceBinding, makeKVAuth, makeKVHttpScope, toKVNamespaceError, } from "./NamespaceHttp.js";
|
|
6
5
|
import { ReadNamespace } from "./ReadNamespace.js";
|
|
7
6
|
/**
|
|
8
7
|
* HTTP-backed implementation of the {@link ReadNamespace} binding.
|
|
@@ -12,11 +11,11 @@ import { ReadNamespace } from "./ReadNamespace.js";
|
|
|
12
11
|
*/
|
|
13
12
|
export const ReadNamespaceHttp = Layer.effect(ReadNamespace, Effect.suspend(() => makeHttpKVNamespaceBinding({
|
|
14
13
|
permissionGroups: ["Workers KV Storage Read"],
|
|
15
|
-
makeClient: makeReadKVHttpClient,
|
|
14
|
+
makeClient: (token, namespaceId) => makeReadKVHttpClient(makeKVAuth(token), namespaceId),
|
|
16
15
|
})));
|
|
17
|
-
export const makeReadKVHttpClient = (
|
|
18
|
-
const authorize =
|
|
19
|
-
const scope = makeKVHttpScope(
|
|
16
|
+
export const makeReadKVHttpClient = (auth, namespaceId) => {
|
|
17
|
+
const { authorize } = auth;
|
|
18
|
+
const scope = makeKVHttpScope(auth, namespaceId);
|
|
20
19
|
const getOne = (key, type) => scope.pipe(Effect.flatMap(({ accountId, namespaceId }) => authorize(kv.getNamespaceValue({ accountId, namespaceId, keyName: key })).pipe(Effect.map((value) => decodeValue(value, type)), Effect.catchTag("KeyNotFound", () => Effect.succeed(null)))), Effect.mapError(toKVNamespaceError));
|
|
21
20
|
const getMany = (keys, type) => scope.pipe(Effect.flatMap(({ accountId, namespaceId }) => authorize(kv.bulkGetNamespaceKeys({
|
|
22
21
|
accountId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReadNamespaceHttp.js","sourceRoot":"","sources":["../../../src/Cloudflare/KV/ReadNamespaceHttp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,gCAAgC,CAAC;AACrD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,
|
|
1
|
+
{"version":3,"file":"ReadNamespaceHttp.js","sourceRoot":"","sources":["../../../src/Cloudflare/KV/ReadNamespaceHttp.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import * as Layer from "effect/Layer";
|
|
2
|
+
import { ReadNamespace } from "./ReadNamespace.ts";
|
|
3
|
+
/**
|
|
4
|
+
* Local implementation of the {@link ReadNamespace} binding — reads KV values
|
|
5
|
+
* over the Cloudflare HTTP API using the **current credentials** instead of a
|
|
6
|
+
* native Worker binding (`ReadNamespaceBinding`) or a scoped API token
|
|
7
|
+
* (`ReadNamespaceHttp`).
|
|
8
|
+
*
|
|
9
|
+
* Provide it on an {@link Action} (or any deploy-time Effect) so you can read
|
|
10
|
+
* from a namespace with the same `get`/`getWithMetadata`/`list` client you'd
|
|
11
|
+
* use inside a Worker:
|
|
12
|
+
*
|
|
13
|
+
* @example Reading a value from an Action
|
|
14
|
+
* ```typescript
|
|
15
|
+
* const Check = Alchemy.Action(
|
|
16
|
+
* "Check",
|
|
17
|
+
* Effect.gen(function* () {
|
|
18
|
+
* const kv = yield* Cloudflare.KV.ReadNamespace(namespace);
|
|
19
|
+
* return Effect.fn(function* () {
|
|
20
|
+
* return yield* kv.get("my-key");
|
|
21
|
+
* });
|
|
22
|
+
* }).pipe(Effect.provide(Cloudflare.KV.ReadNamespaceLocal)),
|
|
23
|
+
* );
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export declare const ReadNamespaceLocal: Layer.Layer<ReadNamespace, never, import("../CloudflareEnvironment.ts").CloudflareEnvironment | import("@distilled.cloud/cloudflare").Credentials | import("effect/unstable/http/HttpClient").HttpClient>;
|
|
27
|
+
//# sourceMappingURL=ReadNamespaceLocal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReadNamespaceLocal.d.ts","sourceRoot":"","sources":["../../../src/Cloudflare/KV/ReadNamespaceLocal.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGnD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,kBAAkB,2MAK9B,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import * as Effect from "effect/Effect";
|
|
2
|
+
import * as Layer from "effect/Layer";
|
|
3
|
+
import { makeLocalKVNamespaceBinding } from "./NamespaceLocal.js";
|
|
4
|
+
import { ReadNamespace } from "./ReadNamespace.js";
|
|
5
|
+
import { makeReadKVHttpClient } from "./ReadNamespaceHttp.js";
|
|
6
|
+
/**
|
|
7
|
+
* Local implementation of the {@link ReadNamespace} binding — reads KV values
|
|
8
|
+
* over the Cloudflare HTTP API using the **current credentials** instead of a
|
|
9
|
+
* native Worker binding (`ReadNamespaceBinding`) or a scoped API token
|
|
10
|
+
* (`ReadNamespaceHttp`).
|
|
11
|
+
*
|
|
12
|
+
* Provide it on an {@link Action} (or any deploy-time Effect) so you can read
|
|
13
|
+
* from a namespace with the same `get`/`getWithMetadata`/`list` client you'd
|
|
14
|
+
* use inside a Worker:
|
|
15
|
+
*
|
|
16
|
+
* @example Reading a value from an Action
|
|
17
|
+
* ```typescript
|
|
18
|
+
* const Check = Alchemy.Action(
|
|
19
|
+
* "Check",
|
|
20
|
+
* Effect.gen(function* () {
|
|
21
|
+
* const kv = yield* Cloudflare.KV.ReadNamespace(namespace);
|
|
22
|
+
* return Effect.fn(function* () {
|
|
23
|
+
* return yield* kv.get("my-key");
|
|
24
|
+
* });
|
|
25
|
+
* }).pipe(Effect.provide(Cloudflare.KV.ReadNamespaceLocal)),
|
|
26
|
+
* );
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
export const ReadNamespaceLocal = Layer.effect(ReadNamespace, Effect.suspend(() => makeLocalKVNamespaceBinding({ makeClient: makeReadKVHttpClient })));
|
|
30
|
+
//# sourceMappingURL=ReadNamespaceLocal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReadNamespaceLocal.js","sourceRoot":"","sources":["../../../src/Cloudflare/KV/ReadNamespaceLocal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,CAAC,MAAM,CAC5C,aAAa,EACb,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAClB,2BAA2B,CAAC,EAAE,UAAU,EAAE,oBAAoB,EAAE,CAAC,CAClE,CACF,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as Effect from "effect/Effect";
|
|
2
2
|
import * as Layer from "effect/Layer";
|
|
3
|
-
import { type
|
|
3
|
+
import { type KVAuth } from "./NamespaceHttp.ts";
|
|
4
4
|
import { ReadWriteNamespace, type ReadWriteNamespaceClient } from "./ReadWriteNamespace.ts";
|
|
5
5
|
/**
|
|
6
6
|
* HTTP-backed implementation of the {@link ReadWriteNamespace} binding.
|
|
@@ -12,6 +12,6 @@ export declare const ReadWriteNamespaceHttp: Layer.Layer<ReadWriteNamespace, nev
|
|
|
12
12
|
Type: string;
|
|
13
13
|
LogicalId: string;
|
|
14
14
|
}>>;
|
|
15
|
-
/** Build the HTTP-backed read-write client over
|
|
16
|
-
export declare const makeReadWriteKVHttpClient: (
|
|
15
|
+
/** Build the HTTP-backed read-write client over an auth + namespace. */
|
|
16
|
+
export declare const makeReadWriteKVHttpClient: (auth: KVAuth, namespaceId: Effect.Effect<string>) => ReadWriteNamespaceClient;
|
|
17
17
|
//# sourceMappingURL=ReadWriteNamespaceHttp.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReadWriteNamespaceHttp.d.ts","sourceRoot":"","sources":["../../../src/Cloudflare/KV/ReadWriteNamespaceHttp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,
|
|
1
|
+
{"version":3,"file":"ReadWriteNamespaceHttp.d.ts","sourceRoot":"","sources":["../../../src/Cloudflare/KV/ReadWriteNamespaceHttp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,EAGL,KAAK,MAAM,EACZ,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,kBAAkB,EAClB,KAAK,wBAAwB,EAC9B,MAAM,yBAAyB,CAAC;AAGjC;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB;;;GASlC,CAAC;AAEF,wEAAwE;AACxE,eAAO,MAAM,yBAAyB,SAC9B,MAAM,eACC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KACjC,wBAI6B,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as Effect from "effect/Effect";
|
|
2
2
|
import * as Layer from "effect/Layer";
|
|
3
|
-
import { makeHttpKVNamespaceBinding } from "./NamespaceHttp.js";
|
|
3
|
+
import { makeHttpKVNamespaceBinding, makeKVAuth, } from "./NamespaceHttp.js";
|
|
4
4
|
import { makeReadKVHttpClient } from "./ReadNamespaceHttp.js";
|
|
5
5
|
import { ReadWriteNamespace, } from "./ReadWriteNamespace.js";
|
|
6
6
|
import { makeWriteKVHttpClient } from "./WriteNamespaceHttp.js";
|
|
@@ -12,11 +12,11 @@ import { makeWriteKVHttpClient } from "./WriteNamespaceHttp.js";
|
|
|
12
12
|
*/
|
|
13
13
|
export const ReadWriteNamespaceHttp = Layer.effect(ReadWriteNamespace, Effect.suspend(() => makeHttpKVNamespaceBinding({
|
|
14
14
|
permissionGroups: ["Workers KV Storage Read", "Workers KV Storage Write"],
|
|
15
|
-
makeClient: makeReadWriteKVHttpClient,
|
|
15
|
+
makeClient: (token, namespaceId) => makeReadWriteKVHttpClient(makeKVAuth(token), namespaceId),
|
|
16
16
|
})));
|
|
17
|
-
/** Build the HTTP-backed read-write client over
|
|
18
|
-
export const makeReadWriteKVHttpClient = (
|
|
19
|
-
...makeReadKVHttpClient(
|
|
20
|
-
...makeWriteKVHttpClient(
|
|
17
|
+
/** Build the HTTP-backed read-write client over an auth + namespace. */
|
|
18
|
+
export const makeReadWriteKVHttpClient = (auth, namespaceId) => ({
|
|
19
|
+
...makeReadKVHttpClient(auth, namespaceId),
|
|
20
|
+
...makeWriteKVHttpClient(auth, namespaceId),
|
|
21
21
|
});
|
|
22
22
|
//# sourceMappingURL=ReadWriteNamespaceHttp.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReadWriteNamespaceHttp.js","sourceRoot":"","sources":["../../../src/Cloudflare/KV/ReadWriteNamespaceHttp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,
|
|
1
|
+
{"version":3,"file":"ReadWriteNamespaceHttp.js","sourceRoot":"","sources":["../../../src/Cloudflare/KV/ReadWriteNamespaceHttp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,EACL,0BAA0B,EAC1B,UAAU,GAEX,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EACL,kBAAkB,GAEnB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;;;GAKG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,CAAC,MAAM,CAChD,kBAAkB,EAClB,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAClB,0BAA0B,CAAC;IACzB,gBAAgB,EAAE,CAAC,yBAAyB,EAAE,0BAA0B,CAAC;IACzE,UAAU,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,CACjC,yBAAyB,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC;CAC5D,CAAC,CACH,CACF,CAAC;AAEF,wEAAwE;AACxE,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACvC,IAAY,EACZ,WAAkC,EACR,EAAE,CAC5B,CAAC;IACC,GAAG,oBAAoB,CAAC,IAAI,EAAE,WAAW,CAAC;IAC1C,GAAG,qBAAqB,CAAC,IAAI,EAAE,WAAW,CAAC;CAC5C,CAA6B,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import * as Layer from "effect/Layer";
|
|
2
|
+
import { ReadWriteNamespace } from "./ReadWriteNamespace.ts";
|
|
3
|
+
/**
|
|
4
|
+
* Local implementation of the {@link ReadWriteNamespace} binding — reads and
|
|
5
|
+
* writes KV values over the Cloudflare HTTP API using the **current
|
|
6
|
+
* credentials** instead of a native Worker binding
|
|
7
|
+
* (`ReadWriteNamespaceBinding`) or a scoped API token
|
|
8
|
+
* (`ReadWriteNamespaceHttp`).
|
|
9
|
+
*
|
|
10
|
+
* Provide it on an {@link Action} (or any deploy-time Effect) so you can talk
|
|
11
|
+
* to a namespace with the same `get`/`put`/`list`/`delete` client you'd use
|
|
12
|
+
* inside a Worker:
|
|
13
|
+
*
|
|
14
|
+
* @example Seeding a namespace from an Action
|
|
15
|
+
* ```typescript
|
|
16
|
+
* const Seed = Alchemy.Action(
|
|
17
|
+
* "Seed",
|
|
18
|
+
* Effect.gen(function* () {
|
|
19
|
+
* const kv = yield* Cloudflare.KV.ReadWriteNamespace(namespace);
|
|
20
|
+
* return Effect.fn(function* () {
|
|
21
|
+
* yield* kv.put("greeting", "hello world");
|
|
22
|
+
* return yield* kv.get("greeting");
|
|
23
|
+
* });
|
|
24
|
+
* }).pipe(Effect.provide(Cloudflare.KV.ReadWriteNamespaceLocal)),
|
|
25
|
+
* );
|
|
26
|
+
* ```
|
|
27
|
+
*
|
|
28
|
+
* The namespace id is resolved at apply time through the ambient
|
|
29
|
+
* {@link RuntimeContext} (in an Action, that's the resolve context the engine
|
|
30
|
+
* provides around the body), so `ReadWriteNamespace(namespace)` works even
|
|
31
|
+
* though the namespace is created in the same deploy.
|
|
32
|
+
*/
|
|
33
|
+
export declare const ReadWriteNamespaceLocal: Layer.Layer<ReadWriteNamespace, never, import("../CloudflareEnvironment.ts").CloudflareEnvironment | import("@distilled.cloud/cloudflare").Credentials | import("effect/unstable/http/HttpClient").HttpClient>;
|
|
34
|
+
//# sourceMappingURL=ReadWriteNamespaceLocal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReadWriteNamespaceLocal.d.ts","sourceRoot":"","sources":["../../../src/Cloudflare/KV/ReadWriteNamespaceLocal.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAG7D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,eAAO,MAAM,uBAAuB,gNAKnC,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import * as Effect from "effect/Effect";
|
|
2
|
+
import * as Layer from "effect/Layer";
|
|
3
|
+
import { makeLocalKVNamespaceBinding } from "./NamespaceLocal.js";
|
|
4
|
+
import { ReadWriteNamespace } from "./ReadWriteNamespace.js";
|
|
5
|
+
import { makeReadWriteKVHttpClient } from "./ReadWriteNamespaceHttp.js";
|
|
6
|
+
/**
|
|
7
|
+
* Local implementation of the {@link ReadWriteNamespace} binding — reads and
|
|
8
|
+
* writes KV values over the Cloudflare HTTP API using the **current
|
|
9
|
+
* credentials** instead of a native Worker binding
|
|
10
|
+
* (`ReadWriteNamespaceBinding`) or a scoped API token
|
|
11
|
+
* (`ReadWriteNamespaceHttp`).
|
|
12
|
+
*
|
|
13
|
+
* Provide it on an {@link Action} (or any deploy-time Effect) so you can talk
|
|
14
|
+
* to a namespace with the same `get`/`put`/`list`/`delete` client you'd use
|
|
15
|
+
* inside a Worker:
|
|
16
|
+
*
|
|
17
|
+
* @example Seeding a namespace from an Action
|
|
18
|
+
* ```typescript
|
|
19
|
+
* const Seed = Alchemy.Action(
|
|
20
|
+
* "Seed",
|
|
21
|
+
* Effect.gen(function* () {
|
|
22
|
+
* const kv = yield* Cloudflare.KV.ReadWriteNamespace(namespace);
|
|
23
|
+
* return Effect.fn(function* () {
|
|
24
|
+
* yield* kv.put("greeting", "hello world");
|
|
25
|
+
* return yield* kv.get("greeting");
|
|
26
|
+
* });
|
|
27
|
+
* }).pipe(Effect.provide(Cloudflare.KV.ReadWriteNamespaceLocal)),
|
|
28
|
+
* );
|
|
29
|
+
* ```
|
|
30
|
+
*
|
|
31
|
+
* The namespace id is resolved at apply time through the ambient
|
|
32
|
+
* {@link RuntimeContext} (in an Action, that's the resolve context the engine
|
|
33
|
+
* provides around the body), so `ReadWriteNamespace(namespace)` works even
|
|
34
|
+
* though the namespace is created in the same deploy.
|
|
35
|
+
*/
|
|
36
|
+
export const ReadWriteNamespaceLocal = Layer.effect(ReadWriteNamespace, Effect.suspend(() => makeLocalKVNamespaceBinding({ makeClient: makeReadWriteKVHttpClient })));
|
|
37
|
+
//# sourceMappingURL=ReadWriteNamespaceLocal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReadWriteNamespaceLocal.js","sourceRoot":"","sources":["../../../src/Cloudflare/KV/ReadWriteNamespaceLocal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAExE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,CAAC,MAAM,CACjD,kBAAkB,EAClB,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAClB,2BAA2B,CAAC,EAAE,UAAU,EAAE,yBAAyB,EAAE,CAAC,CACvE,CACF,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as Effect from "effect/Effect";
|
|
2
2
|
import * as Layer from "effect/Layer";
|
|
3
|
-
import { type
|
|
3
|
+
import { type KVAuth } from "./NamespaceHttp.ts";
|
|
4
4
|
import { WriteNamespace, type WriteNamespaceClient } from "./WriteNamespace.ts";
|
|
5
5
|
/**
|
|
6
6
|
* HTTP-backed implementation of the {@link WriteNamespace} binding.
|
|
@@ -12,5 +12,5 @@ export declare const WriteNamespaceHttp: Layer.Layer<WriteNamespace, never, impo
|
|
|
12
12
|
Type: string;
|
|
13
13
|
LogicalId: string;
|
|
14
14
|
}>>;
|
|
15
|
-
export declare const makeWriteKVHttpClient: (
|
|
15
|
+
export declare const makeWriteKVHttpClient: (auth: KVAuth, namespaceId: Effect.Effect<string>) => WriteNamespaceClient;
|
|
16
16
|
//# sourceMappingURL=WriteNamespaceHttp.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WriteNamespaceHttp.d.ts","sourceRoot":"","sources":["../../../src/Cloudflare/KV/WriteNamespaceHttp.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"WriteNamespaceHttp.d.ts","sourceRoot":"","sources":["../../../src/Cloudflare/KV/WriteNamespaceHttp.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,EAKL,KAAK,MAAM,EACZ,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,cAAc,EAAE,KAAK,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEhF;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB;;;GAS9B,CAAC;AAEF,eAAO,MAAM,qBAAqB,SAC1B,MAAM,eACC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KACjC,oBA0CF,CAAC"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import * as kv from "@distilled.cloud/cloudflare/kv";
|
|
2
2
|
import * as Effect from "effect/Effect";
|
|
3
3
|
import * as Layer from "effect/Layer";
|
|
4
|
-
import {
|
|
5
|
-
import { makeHttpKVNamespaceBinding, makeKVHttpScope, toKVNamespaceError, } from "./NamespaceHttp.js";
|
|
4
|
+
import { makeHttpKVNamespaceBinding, makeKVAuth, makeKVHttpScope, toKVNamespaceError, } from "./NamespaceHttp.js";
|
|
6
5
|
import { NamespaceError } from "./NamespaceTypes.js";
|
|
7
6
|
import { WriteNamespace } from "./WriteNamespace.js";
|
|
8
7
|
/**
|
|
@@ -13,11 +12,11 @@ import { WriteNamespace } from "./WriteNamespace.js";
|
|
|
13
12
|
*/
|
|
14
13
|
export const WriteNamespaceHttp = Layer.effect(WriteNamespace, Effect.suspend(() => makeHttpKVNamespaceBinding({
|
|
15
14
|
permissionGroups: ["Workers KV Storage Write"],
|
|
16
|
-
makeClient: makeWriteKVHttpClient,
|
|
15
|
+
makeClient: (token, namespaceId) => makeWriteKVHttpClient(makeKVAuth(token), namespaceId),
|
|
17
16
|
})));
|
|
18
|
-
export const makeWriteKVHttpClient = (
|
|
19
|
-
const authorize =
|
|
20
|
-
const scope = makeKVHttpScope(
|
|
17
|
+
export const makeWriteKVHttpClient = (auth, namespaceId) => {
|
|
18
|
+
const { authorize } = auth;
|
|
19
|
+
const scope = makeKVHttpScope(auth, namespaceId);
|
|
21
20
|
return {
|
|
22
21
|
put: ((key, value, options) => scope.pipe(Effect.flatMap(({ accountId, namespaceId }) => toKVBody(value).pipe(Effect.flatMap((body) => authorize(kv.putNamespaceValue({
|
|
23
22
|
accountId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WriteNamespaceHttp.js","sourceRoot":"","sources":["../../../src/Cloudflare/KV/WriteNamespaceHttp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,gCAAgC,CAAC;AACrD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,
|
|
1
|
+
{"version":3,"file":"WriteNamespaceHttp.js","sourceRoot":"","sources":["../../../src/Cloudflare/KV/WriteNamespaceHttp.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import * as Layer from "effect/Layer";
|
|
2
|
+
import { WriteNamespace } from "./WriteNamespace.ts";
|
|
3
|
+
/**
|
|
4
|
+
* Local implementation of the {@link WriteNamespace} binding — writes KV
|
|
5
|
+
* values over the Cloudflare HTTP API using the **current credentials**
|
|
6
|
+
* instead of a native Worker binding (`WriteNamespaceBinding`) or a scoped API
|
|
7
|
+
* token (`WriteNamespaceHttp`).
|
|
8
|
+
*
|
|
9
|
+
* Provide it on an {@link Action} (or any deploy-time Effect) so you can write
|
|
10
|
+
* to a namespace with the same `put`/`delete` client you'd use inside a
|
|
11
|
+
* Worker:
|
|
12
|
+
*
|
|
13
|
+
* @example Writing a value from an Action
|
|
14
|
+
* ```typescript
|
|
15
|
+
* const Seed = Alchemy.Action(
|
|
16
|
+
* "Seed",
|
|
17
|
+
* Effect.gen(function* () {
|
|
18
|
+
* const kv = yield* Cloudflare.KV.WriteNamespace(namespace);
|
|
19
|
+
* return Effect.fn(function* () {
|
|
20
|
+
* yield* kv.put("my-key", "hello world");
|
|
21
|
+
* });
|
|
22
|
+
* }).pipe(Effect.provide(Cloudflare.KV.WriteNamespaceLocal)),
|
|
23
|
+
* );
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export declare const WriteNamespaceLocal: Layer.Layer<WriteNamespace, never, import("../CloudflareEnvironment.ts").CloudflareEnvironment | import("@distilled.cloud/cloudflare").Credentials | import("effect/unstable/http/HttpClient").HttpClient>;
|
|
27
|
+
//# sourceMappingURL=WriteNamespaceLocal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WriteNamespaceLocal.d.ts","sourceRoot":"","sources":["../../../src/Cloudflare/KV/WriteNamespaceLocal.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGrD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,mBAAmB,4MAK/B,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import * as Effect from "effect/Effect";
|
|
2
|
+
import * as Layer from "effect/Layer";
|
|
3
|
+
import { makeLocalKVNamespaceBinding } from "./NamespaceLocal.js";
|
|
4
|
+
import { WriteNamespace } from "./WriteNamespace.js";
|
|
5
|
+
import { makeWriteKVHttpClient } from "./WriteNamespaceHttp.js";
|
|
6
|
+
/**
|
|
7
|
+
* Local implementation of the {@link WriteNamespace} binding — writes KV
|
|
8
|
+
* values over the Cloudflare HTTP API using the **current credentials**
|
|
9
|
+
* instead of a native Worker binding (`WriteNamespaceBinding`) or a scoped API
|
|
10
|
+
* token (`WriteNamespaceHttp`).
|
|
11
|
+
*
|
|
12
|
+
* Provide it on an {@link Action} (or any deploy-time Effect) so you can write
|
|
13
|
+
* to a namespace with the same `put`/`delete` client you'd use inside a
|
|
14
|
+
* Worker:
|
|
15
|
+
*
|
|
16
|
+
* @example Writing a value from an Action
|
|
17
|
+
* ```typescript
|
|
18
|
+
* const Seed = Alchemy.Action(
|
|
19
|
+
* "Seed",
|
|
20
|
+
* Effect.gen(function* () {
|
|
21
|
+
* const kv = yield* Cloudflare.KV.WriteNamespace(namespace);
|
|
22
|
+
* return Effect.fn(function* () {
|
|
23
|
+
* yield* kv.put("my-key", "hello world");
|
|
24
|
+
* });
|
|
25
|
+
* }).pipe(Effect.provide(Cloudflare.KV.WriteNamespaceLocal)),
|
|
26
|
+
* );
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
export const WriteNamespaceLocal = Layer.effect(WriteNamespace, Effect.suspend(() => makeLocalKVNamespaceBinding({ makeClient: makeWriteKVHttpClient })));
|
|
30
|
+
//# sourceMappingURL=WriteNamespaceLocal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WriteNamespaceLocal.js","sourceRoot":"","sources":["../../../src/Cloudflare/KV/WriteNamespaceLocal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,CAAC,MAAM,CAC7C,cAAc,EACd,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAClB,2BAA2B,CAAC,EAAE,UAAU,EAAE,qBAAqB,EAAE,CAAC,CACnE,CACF,CAAC"}
|
|
@@ -3,10 +3,13 @@ export * from "./NamespaceTypes.ts";
|
|
|
3
3
|
export * from "./ReadNamespace.ts";
|
|
4
4
|
export * from "./ReadNamespaceBinding.ts";
|
|
5
5
|
export * from "./ReadNamespaceHttp.ts";
|
|
6
|
+
export * from "./ReadNamespaceLocal.ts";
|
|
6
7
|
export * from "./ReadWriteNamespace.ts";
|
|
7
8
|
export * from "./ReadWriteNamespaceBinding.ts";
|
|
8
9
|
export * from "./ReadWriteNamespaceHttp.ts";
|
|
10
|
+
export * from "./ReadWriteNamespaceLocal.ts";
|
|
9
11
|
export * from "./WriteNamespace.ts";
|
|
10
12
|
export * from "./WriteNamespaceBinding.ts";
|
|
11
13
|
export * from "./WriteNamespaceHttp.ts";
|
|
14
|
+
export * from "./WriteNamespaceLocal.ts";
|
|
12
15
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Cloudflare/KV/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,qBAAqB,CAAC;AACpC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Cloudflare/KV/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,qBAAqB,CAAC;AACpC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC"}
|