alchemy 2.0.0-beta.61 → 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 +26 -11
- package/bin/exec.js +2023 -75
- package/bin/exec.js.map +1 -1
- package/lib/AWS/ACM/Certificate.d.ts.map +1 -1
- package/lib/AWS/ACM/Certificate.js +16 -4
- package/lib/AWS/ACM/Certificate.js.map +1 -1
- package/lib/AWS/ApiGateway/common.d.ts.map +1 -1
- package/lib/AWS/ApiGateway/common.js +6 -3
- package/lib/AWS/ApiGateway/common.js.map +1 -1
- package/lib/AWS/AuthProvider.d.ts.map +1 -1
- package/lib/AWS/AuthProvider.js +2 -2
- package/lib/AWS/AuthProvider.js.map +1 -1
- package/lib/AWS/AutoScaling/AutoScalingGroup.d.ts.map +1 -1
- package/lib/AWS/AutoScaling/AutoScalingGroup.js +8 -2
- package/lib/AWS/AutoScaling/AutoScalingGroup.js.map +1 -1
- package/lib/AWS/Bootstrap.d.ts.map +1 -1
- package/lib/AWS/Bootstrap.js +5 -2
- package/lib/AWS/Bootstrap.js.map +1 -1
- package/lib/AWS/CloudFront/Distribution.d.ts.map +1 -1
- package/lib/AWS/CloudFront/Distribution.js +20 -5
- package/lib/AWS/CloudFront/Distribution.js.map +1 -1
- package/lib/AWS/CloudFront/Function.js +5 -2
- package/lib/AWS/CloudFront/Function.js.map +1 -1
- package/lib/AWS/CloudFront/Invalidation.d.ts.map +1 -1
- package/lib/AWS/CloudFront/Invalidation.js +4 -1
- package/lib/AWS/CloudFront/Invalidation.js.map +1 -1
- package/lib/AWS/CloudFront/KvEntries.d.ts.map +1 -1
- package/lib/AWS/CloudFront/KvEntries.js +4 -1
- package/lib/AWS/CloudFront/KvEntries.js.map +1 -1
- package/lib/AWS/CloudFront/KvRoutesUpdate.d.ts.map +1 -1
- package/lib/AWS/CloudFront/KvRoutesUpdate.js +8 -2
- package/lib/AWS/CloudFront/KvRoutesUpdate.js.map +1 -1
- package/lib/AWS/CloudFront/VpcOrigin.d.ts.map +1 -1
- package/lib/AWS/CloudFront/VpcOrigin.js +12 -3
- package/lib/AWS/CloudFront/VpcOrigin.js.map +1 -1
- package/lib/AWS/CloudFront/common.d.ts.map +1 -1
- package/lib/AWS/CloudFront/common.js +5 -2
- package/lib/AWS/CloudFront/common.js.map +1 -1
- package/lib/AWS/CloudWatch/AnomalyDetector.d.ts.map +1 -1
- package/lib/AWS/CloudWatch/AnomalyDetector.js +4 -1
- package/lib/AWS/CloudWatch/AnomalyDetector.js.map +1 -1
- package/lib/AWS/CloudWatch/common.d.ts.map +1 -1
- package/lib/AWS/CloudWatch/common.js +1 -1
- package/lib/AWS/CloudWatch/common.js.map +1 -1
- package/lib/AWS/DynamoDB/Table.d.ts.map +1 -1
- package/lib/AWS/DynamoDB/Table.js +53 -20
- package/lib/AWS/DynamoDB/Table.js.map +1 -1
- package/lib/AWS/EC2/EIP.d.ts.map +1 -1
- package/lib/AWS/EC2/EIP.js +4 -1
- package/lib/AWS/EC2/EIP.js.map +1 -1
- package/lib/AWS/EC2/EgressOnlyInternetGateway.d.ts.map +1 -1
- package/lib/AWS/EC2/EgressOnlyInternetGateway.js +4 -2
- package/lib/AWS/EC2/EgressOnlyInternetGateway.js.map +1 -1
- package/lib/AWS/EC2/Instance.d.ts.map +1 -1
- package/lib/AWS/EC2/Instance.js +12 -3
- package/lib/AWS/EC2/Instance.js.map +1 -1
- package/lib/AWS/EC2/InternetGateway.d.ts.map +1 -1
- package/lib/AWS/EC2/InternetGateway.js +12 -5
- package/lib/AWS/EC2/InternetGateway.js.map +1 -1
- package/lib/AWS/EC2/NatGateway.js +2 -4
- package/lib/AWS/EC2/NatGateway.js.map +1 -1
- package/lib/AWS/EC2/NetworkAcl.d.ts.map +1 -1
- package/lib/AWS/EC2/NetworkAcl.js +4 -1
- package/lib/AWS/EC2/NetworkAcl.js.map +1 -1
- package/lib/AWS/EC2/NetworkAclEntry.d.ts.map +1 -1
- package/lib/AWS/EC2/NetworkAclEntry.js +4 -1
- package/lib/AWS/EC2/NetworkAclEntry.js.map +1 -1
- package/lib/AWS/EC2/RouteTable.d.ts.map +1 -1
- package/lib/AWS/EC2/RouteTable.js +8 -6
- package/lib/AWS/EC2/RouteTable.js.map +1 -1
- package/lib/AWS/EC2/RouteTableAssociation.js +2 -5
- package/lib/AWS/EC2/RouteTableAssociation.js.map +1 -1
- package/lib/AWS/EC2/SecurityGroup.d.ts.map +1 -1
- package/lib/AWS/EC2/SecurityGroup.js +8 -3
- package/lib/AWS/EC2/SecurityGroup.js.map +1 -1
- package/lib/AWS/EC2/Subnet.d.ts.map +1 -1
- package/lib/AWS/EC2/Subnet.js +10 -6
- package/lib/AWS/EC2/Subnet.js.map +1 -1
- package/lib/AWS/EC2/Vpc.d.ts.map +1 -1
- package/lib/AWS/EC2/Vpc.js +7 -7
- package/lib/AWS/EC2/Vpc.js.map +1 -1
- package/lib/AWS/EC2/VpcEndpoint.js +2 -4
- package/lib/AWS/EC2/VpcEndpoint.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/Service.d.ts.map +1 -1
- package/lib/AWS/ECS/Service.js +4 -1
- package/lib/AWS/ECS/Service.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/EKS/Addon.js +8 -2
- package/lib/AWS/EKS/Addon.js.map +1 -1
- package/lib/AWS/EKS/Cluster.d.ts.map +1 -1
- package/lib/AWS/EKS/Cluster.js +4 -1
- package/lib/AWS/EKS/Cluster.js.map +1 -1
- package/lib/AWS/ELBv2/TargetGroup.d.ts.map +1 -1
- package/lib/AWS/ELBv2/TargetGroup.js +4 -1
- package/lib/AWS/ELBv2/TargetGroup.js.map +1 -1
- package/lib/AWS/ELBv2/TrustStore.d.ts.map +1 -1
- package/lib/AWS/ELBv2/TrustStore.js +4 -1
- package/lib/AWS/ELBv2/TrustStore.js.map +1 -1
- package/lib/AWS/IAM/SAMLProvider.js +4 -1
- package/lib/AWS/IAM/SAMLProvider.js.map +1 -1
- package/lib/AWS/IdentityCenter/AccountAssignment.js +8 -2
- package/lib/AWS/IdentityCenter/AccountAssignment.js.map +1 -1
- package/lib/AWS/IdentityCenter/common.d.ts.map +1 -1
- package/lib/AWS/IdentityCenter/common.js +1 -1
- package/lib/AWS/IdentityCenter/common.js.map +1 -1
- package/lib/AWS/KMS/Alias.js +4 -1
- package/lib/AWS/KMS/Alias.js.map +1 -1
- package/lib/AWS/KMS/Key.js +4 -1
- package/lib/AWS/KMS/Key.js.map +1 -1
- package/lib/AWS/Kinesis/Stream.d.ts.map +1 -1
- package/lib/AWS/Kinesis/Stream.js +2 -2
- package/lib/AWS/Kinesis/Stream.js.map +1 -1
- package/lib/AWS/Kinesis/StreamConsumer.d.ts.map +1 -1
- package/lib/AWS/Kinesis/StreamConsumer.js +7 -4
- package/lib/AWS/Kinesis/StreamConsumer.js.map +1 -1
- package/lib/AWS/Lambda/Alias.d.ts.map +1 -1
- package/lib/AWS/Lambda/Alias.js +4 -1
- package/lib/AWS/Lambda/Alias.js.map +1 -1
- package/lib/AWS/Lambda/EventInvokeConfig.d.ts.map +1 -1
- package/lib/AWS/Lambda/EventInvokeConfig.js +2 -2
- package/lib/AWS/Lambda/EventInvokeConfig.js.map +1 -1
- package/lib/AWS/Lambda/EventSourceMapping.d.ts.map +1 -1
- package/lib/AWS/Lambda/EventSourceMapping.js +10 -4
- package/lib/AWS/Lambda/EventSourceMapping.js.map +1 -1
- package/lib/AWS/Lambda/Function.d.ts +16 -1
- package/lib/AWS/Lambda/Function.d.ts.map +1 -1
- package/lib/AWS/Lambda/Function.js +113 -65
- package/lib/AWS/Lambda/Function.js.map +1 -1
- package/lib/AWS/Lambda/MicrovmProvider.d.ts.map +1 -1
- package/lib/AWS/Lambda/MicrovmProvider.js +13 -5
- package/lib/AWS/Lambda/MicrovmProvider.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/AWS/Lambda/NetworkConnector.js +13 -5
- package/lib/AWS/Lambda/NetworkConnector.js.map +1 -1
- package/lib/AWS/Lambda/RuntimeExtension.d.ts +27 -0
- package/lib/AWS/Lambda/RuntimeExtension.d.ts.map +1 -0
- package/lib/AWS/Lambda/RuntimeExtension.js +49 -0
- package/lib/AWS/Lambda/RuntimeExtension.js.map +1 -0
- package/lib/AWS/Organizations/Account.js +5 -2
- package/lib/AWS/Organizations/Account.js.map +1 -1
- package/lib/AWS/Organizations/common.d.ts.map +1 -1
- package/lib/AWS/Organizations/common.js +1 -1
- package/lib/AWS/Organizations/common.js.map +1 -1
- package/lib/AWS/Providers.js +14 -12
- package/lib/AWS/Providers.js.map +1 -1
- package/lib/AWS/RDS/DBCluster.d.ts.map +1 -1
- package/lib/AWS/RDS/DBCluster.js +8 -2
- package/lib/AWS/RDS/DBCluster.js.map +1 -1
- package/lib/AWS/RDS/DBInstance.d.ts.map +1 -1
- package/lib/AWS/RDS/DBInstance.js +8 -2
- package/lib/AWS/RDS/DBInstance.js.map +1 -1
- package/lib/AWS/RDS/DBProxy.d.ts.map +1 -1
- package/lib/AWS/RDS/DBProxy.js +4 -1
- package/lib/AWS/RDS/DBProxy.js.map +1 -1
- package/lib/AWS/RDS/DBProxyEndpoint.d.ts.map +1 -1
- package/lib/AWS/RDS/DBProxyEndpoint.js +4 -1
- package/lib/AWS/RDS/DBProxyEndpoint.js.map +1 -1
- package/lib/AWS/Route53/HealthCheck.d.ts.map +1 -1
- package/lib/AWS/Route53/HealthCheck.js +8 -2
- package/lib/AWS/Route53/HealthCheck.js.map +1 -1
- package/lib/AWS/Route53/HostedZone.d.ts.map +1 -1
- package/lib/AWS/Route53/HostedZone.js +8 -2
- package/lib/AWS/Route53/HostedZone.js.map +1 -1
- package/lib/AWS/Route53/Record.d.ts.map +1 -1
- package/lib/AWS/Route53/Record.js +4 -1
- package/lib/AWS/Route53/Record.js.map +1 -1
- package/lib/AWS/S3/Bucket.d.ts.map +1 -1
- package/lib/AWS/S3/Bucket.js +5 -2
- package/lib/AWS/S3/Bucket.js.map +1 -1
- package/lib/AWS/SQS/Queue.d.ts.map +1 -1
- package/lib/AWS/SQS/Queue.js +25 -7
- package/lib/AWS/SQS/Queue.js.map +1 -1
- package/lib/AWS/StateStore/State.js +5 -2
- package/lib/AWS/StateStore/State.js.map +1 -1
- package/lib/AWS/Website/AssetDeployment.js +5 -2
- package/lib/AWS/Website/AssetDeployment.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 +48 -6
- package/lib/Apply.js.map +1 -1
- package/lib/Auth/AuthProvider.d.ts +10 -0
- package/lib/Auth/AuthProvider.d.ts.map +1 -1
- package/lib/Auth/AuthProvider.js +10 -0
- 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/Axiom/AuthProvider.d.ts.map +1 -1
- package/lib/Axiom/AuthProvider.js +1 -1
- package/lib/Axiom/AuthProvider.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 +3 -1
- package/lib/Bundle/Vite.d.ts.map +1 -1
- package/lib/Bundle/Vite.js +38 -13
- 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 +74 -5
- package/lib/Cli/commands/_shared.d.ts.map +1 -1
- package/lib/Cli/commands/_shared.js +84 -2
- 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 +71 -24
- package/lib/Cli/commands/login.js.map +1 -1
- package/lib/Cli/commands/logs.d.ts.map +1 -1
- package/lib/Cli/commands/logs.js +1 -0
- package/lib/Cli/commands/logs.js.map +1 -1
- package/lib/Cli/commands/nuke.d.ts.map +1 -1
- package/lib/Cli/commands/nuke.js +15 -24
- package/lib/Cli/commands/nuke.js.map +1 -1
- package/lib/Cli/commands/profile.d.ts +23 -1
- package/lib/Cli/commands/profile.d.ts.map +1 -1
- package/lib/Cli/commands/profile.js +46 -22
- package/lib/Cli/commands/profile.js.map +1 -1
- package/lib/Cli/commands/tail.d.ts.map +1 -1
- package/lib/Cli/commands/tail.js +1 -0
- package/lib/Cli/commands/tail.js.map +1 -1
- package/lib/Cloudflare/AI/GatewayDynamicRouting.d.ts.map +1 -1
- package/lib/Cloudflare/AI/GatewayDynamicRouting.js +31 -2
- package/lib/Cloudflare/AI/GatewayDynamicRouting.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/SearchInstance.js +4 -1
- package/lib/Cloudflare/AI/SearchInstance.js.map +1 -1
- 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/Access/Application.d.ts.map +1 -1
- package/lib/Cloudflare/Access/Application.js +7 -1
- package/lib/Cloudflare/Access/Application.js.map +1 -1
- package/lib/Cloudflare/Alerting/Silence.d.ts.map +1 -1
- package/lib/Cloudflare/Alerting/Silence.js +4 -1
- package/lib/Cloudflare/Alerting/Silence.js.map +1 -1
- package/lib/Cloudflare/Alerting/Webhook.d.ts.map +1 -1
- package/lib/Cloudflare/Alerting/Webhook.js +8 -2
- package/lib/Cloudflare/Alerting/Webhook.js.map +1 -1
- package/lib/Cloudflare/Auth/AuthProvider.d.ts.map +1 -1
- package/lib/Cloudflare/Auth/AuthProvider.js +23 -8
- package/lib/Cloudflare/Auth/AuthProvider.js.map +1 -1
- package/lib/Cloudflare/Auth/OAuthClient.d.ts.map +1 -1
- package/lib/Cloudflare/Auth/OAuthClient.js +6 -7
- package/lib/Cloudflare/Auth/OAuthClient.js.map +1 -1
- package/lib/Cloudflare/Cache/RegionalTieredCache.d.ts.map +1 -1
- package/lib/Cloudflare/Cache/RegionalTieredCache.js +7 -1
- package/lib/Cloudflare/Cache/RegionalTieredCache.js.map +1 -1
- package/lib/Cloudflare/Containers/ContainerApplication.d.ts +18 -2
- package/lib/Cloudflare/Containers/ContainerApplication.d.ts.map +1 -1
- package/lib/Cloudflare/Containers/ContainerApplication.js +1 -0
- package/lib/Cloudflare/Containers/ContainerApplication.js.map +1 -1
- package/lib/Cloudflare/Containers/ContainerBundle.d.ts +29 -3
- package/lib/Cloudflare/Containers/ContainerBundle.d.ts.map +1 -1
- package/lib/Cloudflare/Containers/ContainerBundle.js +84 -23
- 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/Containers/ContainerProvider.d.ts.map +1 -1
- package/lib/Cloudflare/Containers/ContainerProvider.js +53 -14
- package/lib/Cloudflare/Containers/ContainerProvider.js.map +1 -1
- package/lib/Cloudflare/Containers/LocalContainerProvider.d.ts +6 -6
- package/lib/Cloudflare/Containers/LocalContainerProvider.d.ts.map +1 -1
- package/lib/Cloudflare/Containers/LocalContainerProvider.js +69 -47
- package/lib/Cloudflare/Containers/LocalContainerProvider.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/Diagnostics/EndpointHealthcheck.js +4 -1
- package/lib/Cloudflare/Diagnostics/EndpointHealthcheck.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/Images/Variant.d.ts.map +1 -1
- package/lib/Cloudflare/Images/Variant.js +4 -1
- package/lib/Cloudflare/Images/Variant.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/LoadBalancer/Monitor.d.ts.map +1 -1
- package/lib/Cloudflare/LoadBalancer/Monitor.js +4 -1
- package/lib/Cloudflare/LoadBalancer/Monitor.js.map +1 -1
- package/lib/Cloudflare/LoadBalancer/MonitorGroup.d.ts.map +1 -1
- package/lib/Cloudflare/LoadBalancer/MonitorGroup.js +4 -1
- package/lib/Cloudflare/LoadBalancer/MonitorGroup.js.map +1 -1
- package/lib/Cloudflare/LoadBalancer/Pool.d.ts.map +1 -1
- package/lib/Cloudflare/LoadBalancer/Pool.js +4 -1
- package/lib/Cloudflare/LoadBalancer/Pool.js.map +1 -1
- package/lib/Cloudflare/LocalRuntime.d.ts +14 -0
- package/lib/Cloudflare/LocalRuntime.d.ts.map +1 -1
- package/lib/Cloudflare/LocalRuntime.js +1 -0
- package/lib/Cloudflare/LocalRuntime.js.map +1 -1
- package/lib/Cloudflare/MagicNetworkMonitoring/Rule.d.ts.map +1 -1
- package/lib/Cloudflare/MagicNetworkMonitoring/Rule.js +4 -1
- package/lib/Cloudflare/MagicNetworkMonitoring/Rule.js.map +1 -1
- package/lib/Cloudflare/Pipelines/Pipeline.d.ts.map +1 -1
- package/lib/Cloudflare/Pipelines/Pipeline.js +8 -2
- package/lib/Cloudflare/Pipelines/Pipeline.js.map +1 -1
- package/lib/Cloudflare/Pipelines/Sink.d.ts.map +1 -1
- package/lib/Cloudflare/Pipelines/Sink.js +8 -2
- package/lib/Cloudflare/Pipelines/Sink.js.map +1 -1
- package/lib/Cloudflare/Pipelines/Stream.d.ts.map +1 -1
- package/lib/Cloudflare/Pipelines/Stream.js +4 -1
- package/lib/Cloudflare/Pipelines/Stream.js.map +1 -1
- package/lib/Cloudflare/Providers.js +14 -11
- package/lib/Cloudflare/Providers.js.map +1 -1
- package/lib/Cloudflare/Queues/Consumer.d.ts.map +1 -1
- package/lib/Cloudflare/Queues/Consumer.js +30 -3
- package/lib/Cloudflare/Queues/Consumer.js.map +1 -1
- package/lib/Cloudflare/Queues/Queue.d.ts.map +1 -1
- package/lib/Cloudflare/Queues/Queue.js +4 -1
- package/lib/Cloudflare/Queues/Queue.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/Bucket.js +12 -3
- package/lib/Cloudflare/R2/Bucket.js.map +1 -1
- package/lib/Cloudflare/R2/BucketEventNotification.js +4 -1
- package/lib/Cloudflare/R2/BucketEventNotification.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/DataCatalog.js +4 -1
- package/lib/Cloudflare/R2/DataCatalog.js.map +1 -1
- 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/Rum/Rule.d.ts.map +1 -1
- package/lib/Cloudflare/Rum/Rule.js +4 -1
- package/lib/Cloudflare/Rum/Rule.js.map +1 -1
- package/lib/Cloudflare/Snippets/Snippet.d.ts.map +1 -1
- package/lib/Cloudflare/Snippets/Snippet.js +4 -1
- package/lib/Cloudflare/Snippets/Snippet.js.map +1 -1
- package/lib/Cloudflare/StateStore/Api.d.ts +2 -0
- package/lib/Cloudflare/StateStore/CredentialsFile.d.ts +42 -0
- package/lib/Cloudflare/StateStore/CredentialsFile.d.ts.map +1 -0
- package/lib/Cloudflare/StateStore/CredentialsFile.js +23 -0
- package/lib/Cloudflare/StateStore/CredentialsFile.js.map +1 -0
- package/lib/Cloudflare/StateStore/State.d.ts +2 -2
- package/lib/Cloudflare/StateStore/State.d.ts.map +1 -1
- package/lib/Cloudflare/StateStore/State.js +46 -9
- package/lib/Cloudflare/StateStore/State.js.map +1 -1
- package/lib/Cloudflare/Tags/ZoneResourceTags.d.ts.map +1 -1
- package/lib/Cloudflare/Tags/ZoneResourceTags.js +4 -1
- package/lib/Cloudflare/Tags/ZoneResourceTags.js.map +1 -1
- 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/UrlNormalization/UrlNormalization.d.ts.map +1 -1
- package/lib/Cloudflare/UrlNormalization/UrlNormalization.js +7 -1
- package/lib/Cloudflare/UrlNormalization/UrlNormalization.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/WaitingRoom/Settings.d.ts.map +1 -1
- package/lib/Cloudflare/WaitingRoom/Settings.js +7 -1
- package/lib/Cloudflare/WaitingRoom/Settings.js.map +1 -1
- package/lib/Cloudflare/Website/Vite.d.ts +19 -0
- package/lib/Cloudflare/Website/Vite.d.ts.map +1 -1
- package/lib/Cloudflare/Website/Vite.js +20 -0
- package/lib/Cloudflare/Website/Vite.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/Compatibility.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/Compatibility.js +43 -7
- package/lib/Cloudflare/Workers/Compatibility.js.map +1 -1
- 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/CronEventSource.d.ts +3 -2
- package/lib/Cloudflare/Workers/CronEventSource.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/CronEventSource.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/DurableObjectBridge.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/DurableObjectBridge.js +86 -82
- package/lib/Cloudflare/Workers/DurableObjectBridge.js.map +1 -1
- package/lib/Cloudflare/Workers/HttpServer.d.ts +1 -4
- package/lib/Cloudflare/Workers/HttpServer.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/HttpServer.js +1 -3
- package/lib/Cloudflare/Workers/HttpServer.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/LocalWorkerProvider.js +74 -11
- package/lib/Cloudflare/Workers/LocalWorkerProvider.js.map +1 -1
- package/lib/Cloudflare/Workers/ObservabilityDestination.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/ObservabilityDestination.js +4 -1
- package/lib/Cloudflare/Workers/ObservabilityDestination.js.map +1 -1
- package/lib/Cloudflare/Workers/Vite.d.ts +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 +42 -6
- package/lib/Cloudflare/Workers/Worker.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/Worker.js +10 -5
- 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 +26 -16
- 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 +13 -5
- package/lib/Cloudflare/Workers/WorkerBridge.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/WorkerBridge.js +133 -52
- 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 +476 -68
- 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/cloudflare_workers.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/cloudflare_workers.js +10 -3
- package/lib/Cloudflare/Workers/cloudflare_workers.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/Cloudflare/Workflows/Workflow.d.ts +10 -7
- package/lib/Cloudflare/Workflows/Workflow.d.ts.map +1 -1
- package/lib/Cloudflare/Workflows/Workflow.js +38 -13
- package/lib/Cloudflare/Workflows/Workflow.js.map +1 -1
- package/lib/Cloudflare/Workflows/WorkflowBridge.d.ts.map +1 -1
- package/lib/Cloudflare/Workflows/WorkflowBridge.js +39 -37
- package/lib/Cloudflare/Workflows/WorkflowBridge.js.map +1 -1
- package/lib/Cloudflare/Workflows/WorkflowName.d.ts +11 -0
- package/lib/Cloudflare/Workflows/WorkflowName.d.ts.map +1 -0
- package/lib/Cloudflare/Workflows/WorkflowName.js +28 -0
- package/lib/Cloudflare/Workflows/WorkflowName.js.map +1 -0
- package/lib/Cloudflare/Zone/Hold.d.ts.map +1 -1
- package/lib/Cloudflare/Zone/Hold.js +7 -1
- package/lib/Cloudflare/Zone/Hold.js.map +1 -1
- package/lib/Command/Dev.d.ts +16 -6
- package/lib/Command/Dev.d.ts.map +1 -1
- package/lib/Command/Dev.js +37 -7
- package/lib/Command/Dev.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/Docker/Container.js +4 -1
- package/lib/Docker/Container.js.map +1 -1
- package/lib/Drizzle/Postgres.d.ts +14 -13
- package/lib/Drizzle/Postgres.d.ts.map +1 -1
- package/lib/Drizzle/Postgres.js +39 -19
- package/lib/Drizzle/Postgres.js.map +1 -1
- package/lib/GitHub/AuthProvider.d.ts.map +1 -1
- package/lib/GitHub/AuthProvider.js +1 -1
- package/lib/GitHub/AuthProvider.js.map +1 -1
- package/lib/GitHub/Env.d.ts +20 -0
- package/lib/GitHub/Env.d.ts.map +1 -0
- package/lib/GitHub/Env.js +27 -0
- package/lib/GitHub/Env.js.map +1 -0
- 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/GitHub/index.d.ts +1 -0
- package/lib/GitHub/index.d.ts.map +1 -1
- package/lib/GitHub/index.js +1 -0
- package/lib/GitHub/index.js.map +1 -1
- package/lib/Http.d.ts +9 -0
- package/lib/Http.d.ts.map +1 -1
- package/lib/Http.js +9 -0
- package/lib/Http.js.map +1 -1
- package/lib/Local/RpcProviderProxy.js +1 -1
- package/lib/Local/RpcProviderProxy.js.map +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.d.ts.map +1 -1
- package/lib/Neon/AuthProvider.js +2 -2
- package/lib/Neon/AuthProvider.js.map +1 -1
- package/lib/Neon/Project.js +4 -1
- package/lib/Neon/Project.js.map +1 -1
- package/lib/Plan.d.ts.map +1 -1
- package/lib/Plan.js +37 -13
- package/lib/Plan.js.map +1 -1
- package/lib/Planetscale/AuthProvider.d.ts +26 -9
- package/lib/Planetscale/AuthProvider.d.ts.map +1 -1
- package/lib/Planetscale/AuthProvider.js +142 -11
- package/lib/Planetscale/AuthProvider.js.map +1 -1
- package/lib/Planetscale/Branch.d.ts.map +1 -1
- package/lib/Planetscale/Branch.js +4 -1
- package/lib/Planetscale/Branch.js.map +1 -1
- package/lib/Planetscale/Credentials.d.ts.map +1 -1
- package/lib/Planetscale/Credentials.js +14 -6
- package/lib/Planetscale/Credentials.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/Planetscale/MySQL/MySQLMigrations.js +4 -1
- package/lib/Planetscale/MySQL/MySQLMigrations.js.map +1 -1
- package/lib/Planetscale/OAuthClient.d.ts +72 -0
- package/lib/Planetscale/OAuthClient.d.ts.map +1 -0
- package/lib/Planetscale/OAuthClient.js +227 -0
- package/lib/Planetscale/OAuthClient.js.map +1 -0
- package/lib/Planetscale/Postgres/PostgresClusterSize.d.ts.map +1 -1
- package/lib/Planetscale/Postgres/PostgresClusterSize.js +4 -1
- package/lib/Planetscale/Postgres/PostgresClusterSize.js.map +1 -1
- package/lib/Planetscale/Postgres/PostgresMigrations.js +4 -1
- package/lib/Planetscale/Postgres/PostgresMigrations.js.map +1 -1
- package/lib/Planetscale/Util.d.ts.map +1 -1
- package/lib/Planetscale/Util.js +4 -1
- package/lib/Planetscale/Util.js.map +1 -1
- package/lib/Platform.d.ts +2 -3
- package/lib/Platform.d.ts.map +1 -1
- package/lib/Platform.js +62 -3
- package/lib/Platform.js.map +1 -1
- package/lib/Provider.d.ts +35 -0
- package/lib/Provider.d.ts.map +1 -1
- package/lib/Provider.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/State/HttpStateStore.js +5 -2
- package/lib/State/HttpStateStore.js.map +1 -1
- package/lib/Sync.d.ts.map +1 -1
- package/lib/Sync.js +3 -0
- package/lib/Sync.js.map +1 -1
- 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/Test/Http.d.ts.map +1 -1
- package/lib/Test/Http.js +8 -2
- package/lib/Test/Http.js.map +1 -1
- 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/data.d.ts +6 -1
- package/lib/Util/data.d.ts.map +1 -1
- package/lib/Util/data.js.map +1 -1
- package/lib/Util/poll.js +1 -1
- package/lib/Util/poll.js.map +1 -1
- package/lib/Util/proxy-chain.js +3 -0
- package/lib/Util/proxy-chain.js.map +1 -1
- package/package.json +23 -23
- package/src/AWS/ACM/Certificate.ts +16 -12
- package/src/AWS/ApiGateway/common.ts +11 -8
- package/src/AWS/AuthProvider.ts +1 -4
- package/src/AWS/AutoScaling/AutoScalingGroup.ts +8 -6
- package/src/AWS/Bootstrap.ts +5 -6
- package/src/AWS/CloudFront/Distribution.ts +20 -16
- package/src/AWS/CloudFront/Function.ts +10 -6
- package/src/AWS/CloudFront/Invalidation.ts +4 -3
- package/src/AWS/CloudFront/KvEntries.ts +4 -3
- package/src/AWS/CloudFront/KvRoutesUpdate.ts +8 -6
- package/src/AWS/CloudFront/VpcOrigin.ts +12 -9
- package/src/AWS/CloudFront/common.ts +10 -6
- package/src/AWS/CloudWatch/AnomalyDetector.ts +4 -3
- package/src/AWS/CloudWatch/common.ts +1 -3
- package/src/AWS/DynamoDB/Table.ts +57 -47
- package/src/AWS/EC2/EIP.ts +6 -4
- package/src/AWS/EC2/EgressOnlyInternetGateway.ts +6 -4
- package/src/AWS/EC2/Instance.ts +12 -9
- package/src/AWS/EC2/InternetGateway.ts +18 -12
- package/src/AWS/EC2/NatGateway.ts +6 -10
- package/src/AWS/EC2/NetworkAcl.ts +6 -4
- package/src/AWS/EC2/NetworkAclEntry.ts +4 -3
- package/src/AWS/EC2/RouteTable.ts +12 -9
- package/src/AWS/EC2/RouteTableAssociation.ts +3 -5
- package/src/AWS/EC2/SecurityGroup.ts +10 -7
- package/src/AWS/EC2/Subnet.ts +15 -15
- package/src/AWS/EC2/Vpc.ts +12 -12
- package/src/AWS/EC2/VpcEndpoint.ts +6 -8
- package/src/AWS/EC2/hosted.ts +2 -1
- package/src/AWS/ECS/Service.ts +4 -3
- package/src/AWS/ECS/Task.ts +2 -1
- package/src/AWS/EKS/Addon.ts +8 -6
- package/src/AWS/EKS/Cluster.ts +4 -3
- package/src/AWS/ELBv2/TargetGroup.ts +4 -3
- package/src/AWS/ELBv2/TrustStore.ts +4 -3
- package/src/AWS/IAM/SAMLProvider.ts +4 -4
- package/src/AWS/IdentityCenter/AccountAssignment.ts +8 -6
- package/src/AWS/IdentityCenter/common.ts +1 -3
- package/src/AWS/KMS/Alias.ts +4 -3
- package/src/AWS/KMS/Key.ts +4 -3
- package/src/AWS/Kinesis/Stream.ts +2 -6
- package/src/AWS/Kinesis/StreamConsumer.ts +7 -12
- package/src/AWS/Lambda/Alias.ts +4 -3
- package/src/AWS/Lambda/EventInvokeConfig.ts +2 -6
- package/src/AWS/Lambda/EventSourceMapping.ts +10 -8
- package/src/AWS/Lambda/Function.ts +123 -77
- package/src/AWS/Lambda/MicrovmProvider.ts +18 -16
- package/src/AWS/Lambda/MicrovmRuntimeContext.ts +11 -38
- package/src/AWS/Lambda/NetworkConnector.ts +19 -15
- package/src/AWS/Lambda/RuntimeExtension.ts +46 -0
- package/src/AWS/Organizations/Account.ts +5 -6
- package/src/AWS/Organizations/common.ts +1 -3
- package/src/AWS/Providers.ts +22 -20
- package/src/AWS/RDS/DBCluster.ts +8 -6
- package/src/AWS/RDS/DBInstance.ts +8 -6
- package/src/AWS/RDS/DBProxy.ts +4 -3
- package/src/AWS/RDS/DBProxyEndpoint.ts +4 -3
- package/src/AWS/Route53/HealthCheck.ts +8 -6
- package/src/AWS/Route53/HostedZone.ts +8 -6
- package/src/AWS/Route53/Record.ts +4 -3
- package/src/AWS/S3/Bucket.ts +5 -4
- package/src/AWS/SQS/Queue.ts +26 -20
- package/src/AWS/StateStore/State.ts +5 -4
- package/src/AWS/Website/AssetDeployment.ts +10 -6
- package/src/Action.ts +39 -6
- package/src/ActionRuntimeContext.ts +68 -0
- package/src/Apply.ts +54 -8
- package/src/Auth/AuthProvider.ts +11 -0
- package/src/Auth/Lock.ts +5 -2
- package/src/Axiom/AuthProvider.ts +0 -3
- package/src/Bundle/PurePlugin.ts +34 -1
- package/src/Bundle/Vite.ts +67 -16
- package/src/Cli/LoggingCli.ts +7 -4
- package/src/Cli/commands/_shared.ts +171 -5
- package/src/Cli/commands/login.ts +91 -46
- package/src/Cli/commands/logs.ts +1 -0
- package/src/Cli/commands/nuke.ts +16 -44
- package/src/Cli/commands/profile.ts +67 -39
- package/src/Cli/commands/tail.ts +1 -0
- package/src/Cloudflare/AI/GatewayDynamicRouting.ts +38 -6
- 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/SearchInstance.ts +4 -3
- package/src/Cloudflare/AI/index.ts +2 -0
- package/src/Cloudflare/Access/Application.ts +7 -4
- package/src/Cloudflare/Alerting/Silence.ts +4 -3
- package/src/Cloudflare/Alerting/Webhook.ts +8 -6
- package/src/Cloudflare/Auth/AuthProvider.ts +55 -39
- package/src/Cloudflare/Auth/OAuthClient.ts +6 -7
- package/src/Cloudflare/Cache/RegionalTieredCache.ts +7 -4
- package/src/Cloudflare/Containers/ContainerApplication.ts +22 -2
- package/src/Cloudflare/Containers/ContainerBundle.ts +110 -34
- package/src/Cloudflare/Containers/ContainerPlatform.ts +14 -52
- package/src/Cloudflare/Containers/ContainerProvider.ts +73 -19
- package/src/Cloudflare/Containers/LocalContainerProvider.ts +78 -72
- 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/Diagnostics/EndpointHealthcheck.ts +4 -3
- 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/Images/Variant.ts +4 -3
- 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/LoadBalancer/Monitor.ts +4 -3
- package/src/Cloudflare/LoadBalancer/MonitorGroup.ts +4 -3
- package/src/Cloudflare/LoadBalancer/Pool.ts +4 -3
- package/src/Cloudflare/LocalRuntime.ts +17 -0
- package/src/Cloudflare/MagicNetworkMonitoring/Rule.ts +4 -3
- package/src/Cloudflare/Pipelines/Pipeline.ts +8 -6
- package/src/Cloudflare/Pipelines/Sink.ts +8 -6
- package/src/Cloudflare/Pipelines/Stream.ts +4 -3
- package/src/Cloudflare/Providers.ts +21 -19
- package/src/Cloudflare/Queues/Consumer.ts +45 -9
- package/src/Cloudflare/Queues/Queue.ts +4 -3
- 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/Bucket.ts +12 -9
- package/src/Cloudflare/R2/BucketEventNotification.ts +4 -3
- package/src/Cloudflare/R2/BucketHttp.ts +20 -3
- package/src/Cloudflare/R2/BucketLocal.ts +47 -0
- package/src/Cloudflare/R2/DataCatalog.ts +4 -3
- 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/Rum/Rule.ts +4 -3
- package/src/Cloudflare/Snippets/Snippet.ts +4 -3
- package/src/Cloudflare/StateStore/CredentialsFile.ts +48 -0
- package/src/Cloudflare/StateStore/State.ts +61 -25
- package/src/Cloudflare/Tags/ZoneResourceTags.ts +4 -3
- 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/UrlNormalization/UrlNormalization.ts +7 -4
- 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/WaitingRoom/Settings.ts +7 -4
- package/src/Cloudflare/Website/Vite.ts +20 -0
- package/src/Cloudflare/Workers/BrowserHttpClient.ts +201 -0
- package/src/Cloudflare/Workers/BrowserLocal.ts +65 -0
- package/src/Cloudflare/Workers/Compatibility.ts +50 -7
- package/src/Cloudflare/Workers/ConfigProvider.ts +15 -1
- package/src/Cloudflare/Workers/CronEventSource.ts +3 -2
- package/src/Cloudflare/Workers/DurableObject.ts +227 -6
- package/src/Cloudflare/Workers/DurableObjectBridge.ts +38 -33
- package/src/Cloudflare/Workers/HttpServer.ts +1 -4
- package/src/Cloudflare/Workers/LocalWorkerProvider.ts +132 -26
- package/src/Cloudflare/Workers/ObservabilityDestination.ts +4 -3
- package/src/Cloudflare/Workers/Vite.ts +93 -11
- package/src/Cloudflare/Workers/Worker.ts +46 -6
- package/src/Cloudflare/Workers/WorkerAsyncBindings.ts +33 -21
- package/src/Cloudflare/Workers/WorkerBinding.ts +20 -1
- package/src/Cloudflare/Workers/WorkerBridge.ts +239 -108
- package/src/Cloudflare/Workers/WorkerProvider.ts +689 -135
- package/src/Cloudflare/Workers/WorkerRuntimeContext.ts +14 -45
- package/src/Cloudflare/Workers/cloudflare_workers.ts +20 -12
- package/src/Cloudflare/Workers/index.ts +1 -0
- package/src/Cloudflare/Workflows/Workflow.ts +54 -20
- package/src/Cloudflare/Workflows/WorkflowBridge.ts +19 -23
- package/src/Cloudflare/Workflows/WorkflowName.ts +41 -0
- package/src/Cloudflare/Zone/Hold.ts +7 -4
- package/src/Command/Dev.ts +42 -10
- package/src/Diff.ts +33 -0
- package/src/Docker/Container.ts +4 -1
- package/src/Drizzle/Postgres.ts +51 -23
- package/src/GitHub/AuthProvider.ts +0 -3
- package/src/GitHub/Env.ts +57 -0
- package/src/GitHub/Secrets.ts +1 -1
- package/src/GitHub/Variables.ts +1 -1
- package/src/GitHub/index.ts +1 -0
- package/src/Http.ts +11 -0
- package/src/Local/RpcProviderProxy.ts +1 -1
- package/src/Local/RpcSerialization.ts +6 -2
- package/src/Local/RpcSpawner.ts +21 -8
- package/src/Neon/AuthProvider.ts +1 -4
- package/src/Neon/Project.ts +2 -2
- package/src/Plan.ts +43 -13
- package/src/Planetscale/AuthProvider.ts +267 -27
- package/src/Planetscale/Branch.ts +4 -3
- package/src/Planetscale/Credentials.ts +18 -6
- 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/Planetscale/MySQL/MySQLMigrations.ts +4 -3
- package/src/Planetscale/OAuthClient.ts +307 -0
- package/src/Planetscale/Postgres/PostgresClusterSize.ts +4 -3
- package/src/Planetscale/Postgres/PostgresMigrations.ts +4 -3
- package/src/Planetscale/Util.ts +4 -3
- package/src/Platform.ts +83 -7
- package/src/Provider.ts +35 -0
- 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/State/HttpStateStore.ts +5 -5
- package/src/Sync.ts +3 -0
- package/src/Test/Alchemy.ts +282 -0
- package/src/Test/Http.ts +8 -6
- package/src/Util/cached-function.ts +5 -5
- package/src/Util/data.ts +14 -5
- package/src/Util/poll.ts +1 -1
- package/src/Util/proxy-chain.ts +3 -0
- package/lib/ExecutionContext.d.ts +0 -18
- package/lib/ExecutionContext.d.ts.map +0 -1
- package/lib/ExecutionContext.js +0 -10
- package/lib/ExecutionContext.js.map +0 -1
- package/src/ExecutionContext.ts +0 -18
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import * as Effect from "effect/Effect";
|
|
2
|
+
import * as Layer from "effect/Layer";
|
|
3
|
+
import type * as HttpClient from "effect/unstable/http/HttpClient";
|
|
4
|
+
import { CloudflareEnvironment } from "../CloudflareEnvironment.ts";
|
|
5
|
+
import type { Credentials } from "../Credentials.ts";
|
|
6
|
+
import type { Database } from "./Database.ts";
|
|
7
|
+
import { QueryDatabase } from "./QueryDatabase.ts";
|
|
8
|
+
import {
|
|
9
|
+
type D1Auth,
|
|
10
|
+
makeHttpQueryDatabaseClient,
|
|
11
|
+
} from "./QueryDatabaseHttpClient.ts";
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Local implementation of the {@link QueryDatabase} binding — queries D1 over
|
|
15
|
+
* the Cloudflare HTTP API using the **current credentials** instead of a native
|
|
16
|
+
* Worker binding (`QueryDatabaseBinding`) or a scoped API token.
|
|
17
|
+
*
|
|
18
|
+
* Provide it on an {@link Action} (or any deploy-time Effect) so you can talk to
|
|
19
|
+
* a D1 database with the same `prepare`/`exec`/`batch` client you'd use inside a
|
|
20
|
+
* Worker:
|
|
21
|
+
*
|
|
22
|
+
* @example Seeding a database from an Action
|
|
23
|
+
* ```typescript
|
|
24
|
+
* const Seed = Alchemy.Action(
|
|
25
|
+
* "Seed",
|
|
26
|
+
* Effect.gen(function* () {
|
|
27
|
+
* const db = yield* Cloudflare.D1.QueryDatabase(database);
|
|
28
|
+
* return Effect.fn(function* () {
|
|
29
|
+
* yield* db.exec("CREATE TABLE IF NOT EXISTS users (id TEXT, name TEXT)");
|
|
30
|
+
* yield* db
|
|
31
|
+
* .prepare("INSERT INTO users (id, name) VALUES (?, ?)")
|
|
32
|
+
* .bind("1", "Ada")
|
|
33
|
+
* .run();
|
|
34
|
+
* });
|
|
35
|
+
* }).pipe(Effect.provide(Cloudflare.D1.QueryDatabaseLocal)),
|
|
36
|
+
* );
|
|
37
|
+
* ```
|
|
38
|
+
*
|
|
39
|
+
* The database id is resolved at apply time through the ambient
|
|
40
|
+
* {@link RuntimeContext} (in an Action, that's the resolve context the engine
|
|
41
|
+
* provides around the body), so `QueryDatabase(database)` works even though the
|
|
42
|
+
* database is created in the same deploy.
|
|
43
|
+
*/
|
|
44
|
+
export const QueryDatabaseLocal = Layer.effect(
|
|
45
|
+
QueryDatabase,
|
|
46
|
+
Effect.gen(function* () {
|
|
47
|
+
// Account + credentials are ambient during stack-eval (the stack's
|
|
48
|
+
// providers layer). Capture the full context so the HTTP query ops run
|
|
49
|
+
// with the current credentials — no `host.bind`, no minted token.
|
|
50
|
+
const { accountId } = yield* yield* CloudflareEnvironment;
|
|
51
|
+
const context = yield* Effect.context<
|
|
52
|
+
Credentials | HttpClient.HttpClient
|
|
53
|
+
>();
|
|
54
|
+
const auth: D1Auth = {
|
|
55
|
+
authorize: (eff) => eff.pipe(Effect.provideContext(context)),
|
|
56
|
+
accountId,
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
return Effect.fn(function* (database: Database) {
|
|
60
|
+
// Deferred accessor — resolves the databaseId against the tracker at
|
|
61
|
+
// apply time. No `host.bind`: the local variant registers no binding.
|
|
62
|
+
const databaseId = yield* database.databaseId;
|
|
63
|
+
return makeHttpQueryDatabaseClient(auth, databaseId);
|
|
64
|
+
});
|
|
65
|
+
}),
|
|
66
|
+
);
|
|
@@ -1,9 +1,13 @@
|
|
|
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 * as Output from "../../Output.ts";
|
|
4
6
|
import { Self } from "../../Self.ts";
|
|
5
7
|
import { AccountApiToken } from "../ApiToken/AccountApiToken.ts";
|
|
6
8
|
import type { PermissionGroupRef } from "../ApiToken/Common.ts";
|
|
9
|
+
import type { Credentials } from "../Credentials.ts";
|
|
10
|
+
import { authorizeWith } from "../HttpClientUtils.ts";
|
|
7
11
|
import type { Zone } from "../Zone/Zone.ts";
|
|
8
12
|
|
|
9
13
|
/**
|
|
@@ -21,7 +25,7 @@ import type { Zone } from "../Zone/Zone.ts";
|
|
|
21
25
|
*/
|
|
22
26
|
export const makeHttpDnsBinding = <Client>(options: {
|
|
23
27
|
permissionGroups: PermissionGroupRef[];
|
|
24
|
-
makeClient: (
|
|
28
|
+
makeClient: (auth: DnsAuth, zoneId: Effect.Effect<string>) => Client;
|
|
25
29
|
}) =>
|
|
26
30
|
Effect.gen(function* () {
|
|
27
31
|
const Token = yield* AccountApiToken;
|
|
@@ -52,10 +56,28 @@ export const makeHttpDnsBinding = <Client>(options: {
|
|
|
52
56
|
value: yield* token.value,
|
|
53
57
|
} satisfies Token;
|
|
54
58
|
const zoneId = yield* zone.zoneId;
|
|
55
|
-
return options.makeClient(bound, zoneId);
|
|
59
|
+
return options.makeClient(makeDnsAuth(bound), zoneId);
|
|
56
60
|
});
|
|
57
61
|
});
|
|
58
62
|
|
|
63
|
+
/**
|
|
64
|
+
* Injectable auth for the DNS HTTP client builders. Both the scoped-token
|
|
65
|
+
* (`*Http`) and current-credentials (`*Local`) variants supply an `authorize`
|
|
66
|
+
* that provides `Credentials` + `HttpClient` to a raw SDK op, so the client
|
|
67
|
+
* builders are agnostic to how creds are obtained. DNS record ops are
|
|
68
|
+
* zone-scoped (the `zoneId` is passed alongside), so no `accountId` is needed.
|
|
69
|
+
*/
|
|
70
|
+
export interface DnsAuth {
|
|
71
|
+
authorize: <A, E>(
|
|
72
|
+
eff: Effect.Effect<A, E, Credentials | HttpClient.HttpClient>,
|
|
73
|
+
) => Effect.Effect<A, E, RuntimeContext>;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/** Build a scoped-token {@link DnsAuth} from a bound {@link Token}. */
|
|
77
|
+
export const makeDnsAuth = (token: Token): DnsAuth => ({
|
|
78
|
+
authorize: authorizeWith(token),
|
|
79
|
+
});
|
|
80
|
+
|
|
59
81
|
/**
|
|
60
82
|
* Runtime accessor for a DNS binding's token, obtained by binding the
|
|
61
83
|
* {@link AccountApiToken}'s `value` output in the Worker's Init phase. Reads the
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import * as Effect from "effect/Effect";
|
|
2
|
+
import type * as HttpClient from "effect/unstable/http/HttpClient";
|
|
3
|
+
import type { Credentials } from "../Credentials.ts";
|
|
4
|
+
import type { Zone } from "../Zone/Zone.ts";
|
|
5
|
+
import type { DnsAuth } from "./DnsHttp.ts";
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Shared scaffolding for the `*Local` DNS services.
|
|
9
|
+
*
|
|
10
|
+
* Instead of minting a scoped {@link AccountApiToken} (the `*Http` path), it
|
|
11
|
+
* captures the ambient current-credentials context available during stack-eval
|
|
12
|
+
* and builds a {@link DnsAuth} that provides those credentials directly to the
|
|
13
|
+
* DNS HTTP ops. It then delegates to the same client builders the `*Http`
|
|
14
|
+
* variant uses. DNS is a zone-management capability with no native Worker
|
|
15
|
+
* binding, so there is no `*Binding` counterpart.
|
|
16
|
+
*
|
|
17
|
+
* NOT exported from `index.ts` — this is internal scaffolding shared by the
|
|
18
|
+
* three access-level Local layers.
|
|
19
|
+
*/
|
|
20
|
+
export const makeLocalDnsBinding = <Client>(options: {
|
|
21
|
+
makeClient: (auth: DnsAuth, zoneId: Effect.Effect<string>) => Client;
|
|
22
|
+
}) =>
|
|
23
|
+
Effect.gen(function* () {
|
|
24
|
+
// Credentials are ambient during stack-eval (the stack's providers layer).
|
|
25
|
+
// Capture the full context so DNS HTTP ops can run with the current
|
|
26
|
+
// credentials — no `host.bind`, no minted token. DNS record ops are
|
|
27
|
+
// zone-scoped, so no accountId is needed.
|
|
28
|
+
const context = yield* Effect.context<
|
|
29
|
+
Credentials | HttpClient.HttpClient
|
|
30
|
+
>();
|
|
31
|
+
|
|
32
|
+
return Effect.fn(function* (zone: Zone) {
|
|
33
|
+
// Deferred accessor — resolves the zoneId against the tracker at apply
|
|
34
|
+
// time (in an Action, that's the engine's resolve context).
|
|
35
|
+
const zoneId = yield* zone.zoneId;
|
|
36
|
+
const auth: DnsAuth = {
|
|
37
|
+
authorize: (eff) => eff.pipe(Effect.provideContext(context)),
|
|
38
|
+
};
|
|
39
|
+
return options.makeClient(auth, zoneId);
|
|
40
|
+
});
|
|
41
|
+
});
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import * as dns from "@distilled.cloud/cloudflare/dns";
|
|
2
2
|
import * as Effect from "effect/Effect";
|
|
3
3
|
import * as Layer from "effect/Layer";
|
|
4
|
-
import {
|
|
5
|
-
import { makeHttpDnsBinding, type Token } from "./DnsHttp.ts";
|
|
4
|
+
import { type DnsAuth, makeHttpDnsBinding } from "./DnsHttp.ts";
|
|
6
5
|
import { ReadDns, type ReadDnsClient } from "./ReadDns.ts";
|
|
7
6
|
|
|
8
7
|
/** Runtime layer for {@link ReadDns}. */
|
|
@@ -16,12 +15,12 @@ export const ReadDnsHttp = Layer.effect(
|
|
|
16
15
|
),
|
|
17
16
|
);
|
|
18
17
|
|
|
19
|
-
/** Build the read-only client over
|
|
18
|
+
/** Build the read-only client over an injectable auth and zone id. */
|
|
20
19
|
export const dnsReadClient = (
|
|
21
|
-
|
|
20
|
+
auth: DnsAuth,
|
|
22
21
|
zoneId: Effect.Effect<string>,
|
|
23
22
|
): ReadDnsClient => {
|
|
24
|
-
const authorize =
|
|
23
|
+
const authorize = auth.authorize;
|
|
25
24
|
return {
|
|
26
25
|
getDnsRecord: Effect.fn("Cloudflare.DNS.getDnsRecord")(
|
|
27
26
|
function* (dnsRecordId) {
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import * as Effect from "effect/Effect";
|
|
2
|
+
import * as Layer from "effect/Layer";
|
|
3
|
+
import { makeLocalDnsBinding } from "./DnsLocal.ts";
|
|
4
|
+
import { ReadDns } from "./ReadDns.ts";
|
|
5
|
+
import { dnsReadClient } from "./ReadDnsHttp.ts";
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Local implementation of the {@link ReadDns} binding — reads Cloudflare DNS
|
|
9
|
+
* records over the HTTP API using the **current credentials** instead of a
|
|
10
|
+
* scoped API token ({@link ReadDnsHttp}). DNS is a zone-management capability
|
|
11
|
+
* with no native Worker binding.
|
|
12
|
+
*
|
|
13
|
+
* Provide it on an {@link Action} (or any deploy-time Effect) so you can read a
|
|
14
|
+
* zone's DNS records with the same `getDnsRecord`/`listDnsRecords` client you'd
|
|
15
|
+
* use inside a Worker:
|
|
16
|
+
*
|
|
17
|
+
* @example Reading records from an Action
|
|
18
|
+
* ```typescript
|
|
19
|
+
* const Check = Alchemy.Action(
|
|
20
|
+
* "Check",
|
|
21
|
+
* Effect.gen(function* () {
|
|
22
|
+
* const dns = yield* Cloudflare.DNS.ReadDns(zone);
|
|
23
|
+
* return Effect.fn(function* () {
|
|
24
|
+
* return yield* dns.listDnsRecords({ type: "TXT" });
|
|
25
|
+
* });
|
|
26
|
+
* }).pipe(Effect.provide(Cloudflare.DNS.ReadDnsLocal)),
|
|
27
|
+
* );
|
|
28
|
+
* ```
|
|
29
|
+
*
|
|
30
|
+
* The zone id is resolved at apply time through the ambient
|
|
31
|
+
* {@link RuntimeContext} (in an Action, that's the resolve context the engine
|
|
32
|
+
* provides around the body), so `ReadDns(zone)` works even though the zone may
|
|
33
|
+
* be created/adopted in the same deploy.
|
|
34
|
+
*/
|
|
35
|
+
export const ReadDnsLocal = Layer.effect(
|
|
36
|
+
ReadDns,
|
|
37
|
+
Effect.suspend(() => makeLocalDnsBinding({ makeClient: dnsReadClient })),
|
|
38
|
+
);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as Effect from "effect/Effect";
|
|
2
2
|
import * as Layer from "effect/Layer";
|
|
3
|
-
import {
|
|
3
|
+
import { type DnsAuth, makeHttpDnsBinding } from "./DnsHttp.ts";
|
|
4
4
|
import { dnsReadClient } from "./ReadDnsHttp.ts";
|
|
5
5
|
import { ReadWriteDns, type ReadWriteDnsClient } from "./ReadWriteDns.ts";
|
|
6
6
|
import { dnsWriteClient } from "./WriteDnsHttp.ts";
|
|
@@ -16,11 +16,11 @@ export const ReadWriteDnsHttp = Layer.effect(
|
|
|
16
16
|
),
|
|
17
17
|
);
|
|
18
18
|
|
|
19
|
-
/** Build the combined read + write client over
|
|
19
|
+
/** Build the combined read + write client over an injectable auth and zone id. */
|
|
20
20
|
export const dnsReadWriteClient = (
|
|
21
|
-
|
|
21
|
+
auth: DnsAuth,
|
|
22
22
|
zoneId: Effect.Effect<string>,
|
|
23
23
|
): ReadWriteDnsClient => ({
|
|
24
|
-
...dnsReadClient(
|
|
25
|
-
...dnsWriteClient(
|
|
24
|
+
...dnsReadClient(auth, zoneId),
|
|
25
|
+
...dnsWriteClient(auth, zoneId),
|
|
26
26
|
});
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import * as Effect from "effect/Effect";
|
|
2
|
+
import * as Layer from "effect/Layer";
|
|
3
|
+
import { makeLocalDnsBinding } from "./DnsLocal.ts";
|
|
4
|
+
import { ReadWriteDns } from "./ReadWriteDns.ts";
|
|
5
|
+
import { dnsReadWriteClient } from "./ReadWriteDnsHttp.ts";
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Local implementation of the {@link ReadWriteDns} binding — performs the full
|
|
9
|
+
* Cloudflare DNS record CRUD surface over the HTTP API using the **current
|
|
10
|
+
* credentials** instead of a scoped API token ({@link ReadWriteDnsHttp}). DNS
|
|
11
|
+
* is a zone-management capability with no native Worker binding.
|
|
12
|
+
*
|
|
13
|
+
* Provide it on an {@link Action} (or any deploy-time Effect) so you can manage
|
|
14
|
+
* a zone's DNS records with the same read + write client you'd use inside a
|
|
15
|
+
* Worker:
|
|
16
|
+
*
|
|
17
|
+
* @example Seeding and reading records from an Action
|
|
18
|
+
* ```typescript
|
|
19
|
+
* const Seed = Alchemy.Action(
|
|
20
|
+
* "Seed",
|
|
21
|
+
* Effect.gen(function* () {
|
|
22
|
+
* const dns = yield* Cloudflare.DNS.ReadWriteDns(zone);
|
|
23
|
+
* return Effect.fn(function* () {
|
|
24
|
+
* const created = yield* dns.createDnsRecord({
|
|
25
|
+
* type: "TXT",
|
|
26
|
+
* name: "_seed.example.com",
|
|
27
|
+
* content: '"hello"',
|
|
28
|
+
* ttl: 60,
|
|
29
|
+
* });
|
|
30
|
+
* const record = yield* dns.getDnsRecord(created.id);
|
|
31
|
+
* yield* dns.deleteDnsRecord(created.id);
|
|
32
|
+
* return record;
|
|
33
|
+
* });
|
|
34
|
+
* }).pipe(Effect.provide(Cloudflare.DNS.ReadWriteDnsLocal)),
|
|
35
|
+
* );
|
|
36
|
+
* ```
|
|
37
|
+
*
|
|
38
|
+
* The zone id is resolved at apply time through the ambient
|
|
39
|
+
* {@link RuntimeContext} (in an Action, that's the resolve context the engine
|
|
40
|
+
* provides around the body), so `ReadWriteDns(zone)` works even though the zone
|
|
41
|
+
* may be created/adopted in the same deploy.
|
|
42
|
+
*/
|
|
43
|
+
export const ReadWriteDnsLocal = Layer.effect(
|
|
44
|
+
ReadWriteDns,
|
|
45
|
+
Effect.suspend(() => makeLocalDnsBinding({ makeClient: dnsReadWriteClient })),
|
|
46
|
+
);
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import * as dns from "@distilled.cloud/cloudflare/dns";
|
|
2
2
|
import * as Effect from "effect/Effect";
|
|
3
3
|
import * as Layer from "effect/Layer";
|
|
4
|
-
import {
|
|
5
|
-
import { makeHttpDnsBinding, type Token } from "./DnsHttp.ts";
|
|
4
|
+
import { type DnsAuth, makeHttpDnsBinding } from "./DnsHttp.ts";
|
|
6
5
|
import { WriteDns, type WriteDnsClient } from "./WriteDns.ts";
|
|
7
6
|
|
|
8
7
|
/** Runtime layer for {@link WriteDns}. */
|
|
@@ -16,12 +15,12 @@ export const WriteDnsHttp = Layer.effect(
|
|
|
16
15
|
),
|
|
17
16
|
);
|
|
18
17
|
|
|
19
|
-
/** Build the write client over
|
|
18
|
+
/** Build the write client over an injectable auth and zone id. */
|
|
20
19
|
export const dnsWriteClient = (
|
|
21
|
-
|
|
20
|
+
auth: DnsAuth,
|
|
22
21
|
zoneId: Effect.Effect<string>,
|
|
23
22
|
): WriteDnsClient => {
|
|
24
|
-
const authorize =
|
|
23
|
+
const authorize = auth.authorize;
|
|
25
24
|
return {
|
|
26
25
|
createDnsRecord: Effect.fn("Cloudflare.DNS.createDnsRecord")(
|
|
27
26
|
function* (request) {
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import * as Effect from "effect/Effect";
|
|
2
|
+
import * as Layer from "effect/Layer";
|
|
3
|
+
import { makeLocalDnsBinding } from "./DnsLocal.ts";
|
|
4
|
+
import { WriteDns } from "./WriteDns.ts";
|
|
5
|
+
import { dnsWriteClient } from "./WriteDnsHttp.ts";
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Local implementation of the {@link WriteDns} binding — creates, updates, and
|
|
9
|
+
* deletes Cloudflare DNS records over the HTTP API using the **current
|
|
10
|
+
* credentials** instead of a scoped API token ({@link WriteDnsHttp}). DNS is a
|
|
11
|
+
* zone-management capability with no native Worker binding.
|
|
12
|
+
*
|
|
13
|
+
* Provide it on an {@link Action} (or any deploy-time Effect) so you can mutate
|
|
14
|
+
* a zone's DNS records with the same
|
|
15
|
+
* `createDnsRecord`/`updateDnsRecord`/`deleteDnsRecord`/`batchDnsRecords`
|
|
16
|
+
* client you'd use inside a Worker:
|
|
17
|
+
*
|
|
18
|
+
* @example Creating a record from an Action
|
|
19
|
+
* ```typescript
|
|
20
|
+
* const Seed = Alchemy.Action(
|
|
21
|
+
* "Seed",
|
|
22
|
+
* Effect.gen(function* () {
|
|
23
|
+
* const dns = yield* Cloudflare.DNS.WriteDns(zone);
|
|
24
|
+
* return Effect.fn(function* () {
|
|
25
|
+
* return yield* dns.createDnsRecord({
|
|
26
|
+
* type: "TXT",
|
|
27
|
+
* name: "_seed.example.com",
|
|
28
|
+
* content: '"hello"',
|
|
29
|
+
* ttl: 60,
|
|
30
|
+
* });
|
|
31
|
+
* });
|
|
32
|
+
* }).pipe(Effect.provide(Cloudflare.DNS.WriteDnsLocal)),
|
|
33
|
+
* );
|
|
34
|
+
* ```
|
|
35
|
+
*
|
|
36
|
+
* The zone id is resolved at apply time through the ambient
|
|
37
|
+
* {@link RuntimeContext} (in an Action, that's the resolve context the engine
|
|
38
|
+
* provides around the body), so `WriteDns(zone)` works even though the zone may
|
|
39
|
+
* be created/adopted in the same deploy.
|
|
40
|
+
*/
|
|
41
|
+
export const WriteDnsLocal = Layer.effect(
|
|
42
|
+
WriteDns,
|
|
43
|
+
Effect.suspend(() => makeLocalDnsBinding({ makeClient: dnsWriteClient })),
|
|
44
|
+
);
|
|
@@ -4,12 +4,15 @@ export * from "./Dnssec.ts";
|
|
|
4
4
|
export * from "./Firewall.ts";
|
|
5
5
|
export * from "./ReadDns.ts";
|
|
6
6
|
export * from "./ReadDnsHttp.ts";
|
|
7
|
+
export * from "./ReadDnsLocal.ts";
|
|
7
8
|
export * from "./ReadWriteDns.ts";
|
|
8
9
|
export * from "./ReadWriteDnsHttp.ts";
|
|
10
|
+
export * from "./ReadWriteDnsLocal.ts";
|
|
9
11
|
export * from "./Record.ts";
|
|
10
12
|
export * from "./View.ts";
|
|
11
13
|
export * from "./WriteDns.ts";
|
|
12
14
|
export * from "./WriteDnsHttp.ts";
|
|
15
|
+
export * from "./WriteDnsLocal.ts";
|
|
13
16
|
export * from "./ZoneSettings.ts";
|
|
14
17
|
export * from "./ZoneTransferAcl.ts";
|
|
15
18
|
export * from "./ZoneTransferIncoming.ts";
|
|
@@ -260,9 +260,10 @@ const observeExisting = (accountId: string, id: string) =>
|
|
|
260
260
|
Effect.map((hc): ObservedHealthcheck => ({ ...hc, accountId })),
|
|
261
261
|
Effect.retry({
|
|
262
262
|
while: (e) => e._tag === "EndpointHealthcheckNotFound",
|
|
263
|
-
schedule: Schedule.
|
|
264
|
-
Schedule.
|
|
265
|
-
|
|
263
|
+
schedule: Schedule.max([
|
|
264
|
+
Schedule.exponential("500 millis"),
|
|
265
|
+
Schedule.recurs(6),
|
|
266
|
+
]),
|
|
266
267
|
}),
|
|
267
268
|
Effect.catchTag("EndpointHealthcheckNotFound", () =>
|
|
268
269
|
Effect.succeed(undefined),
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
import type * as cf from "@cloudflare/workers-types";
|
|
2
|
+
import * as flagship from "@distilled.cloud/cloudflare/flagship";
|
|
3
|
+
import * as Effect from "effect/Effect";
|
|
4
|
+
import type * as HttpClient from "effect/unstable/http/HttpClient";
|
|
5
|
+
import type { RuntimeContext } from "../../RuntimeContext.ts";
|
|
6
|
+
import type { Credentials } from "../Credentials.ts";
|
|
7
|
+
import {
|
|
8
|
+
type EvaluationContext,
|
|
9
|
+
type EvaluationDetails,
|
|
10
|
+
FlagshipError,
|
|
11
|
+
type ReadFlagsClient,
|
|
12
|
+
} from "./ReadFlags.ts";
|
|
13
|
+
|
|
14
|
+
// Shared HTTP scaffolding for the Flagship `ReadFlags` binding. NOT
|
|
15
|
+
// re-exported from `index.ts` — only the contract and the impl layers are
|
|
16
|
+
// public. A future token-scoped `ReadFlagsHttp` layer reuses this builder with
|
|
17
|
+
// an auth minted from an `AccountApiToken`; `ReadFlagsLocal` builds the auth
|
|
18
|
+
// from the ambient current-credentials context.
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Injectable auth shared by the Local (current-credentials) impl and a future
|
|
22
|
+
* Http (scoped-token) impl. `authorize` discharges the
|
|
23
|
+
* `Credentials | HttpClient` requirement of a distilled op; `accountId` is the
|
|
24
|
+
* Cloudflare account the ops run against.
|
|
25
|
+
*/
|
|
26
|
+
export interface FlagshipAuth {
|
|
27
|
+
authorize: <A, E>(
|
|
28
|
+
eff: Effect.Effect<A, E, Credentials | HttpClient.HttpClient>,
|
|
29
|
+
) => Effect.Effect<A, E>;
|
|
30
|
+
accountId: string;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* The HTTP evaluate endpoint only supports a single `targetingKey` query
|
|
35
|
+
* param, not the full flat evaluation context the Worker binding accepts.
|
|
36
|
+
*/
|
|
37
|
+
const targetingKeyOf = (
|
|
38
|
+
context: EvaluationContext | undefined,
|
|
39
|
+
): string | undefined => {
|
|
40
|
+
const value = context?.["targetingKey"];
|
|
41
|
+
return value === undefined ? undefined : String(value);
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* Build a {@link ReadFlagsClient} over the Flagship HTTP evaluate endpoint
|
|
46
|
+
* (`GET .../flagship/apps/{appId}/evaluate`).
|
|
47
|
+
*
|
|
48
|
+
* `appId` is an Effect so the resolution stays deferred to each call — inside
|
|
49
|
+
* an Action it resolves through the apply-time RuntimeContext. Mirrors the
|
|
50
|
+
* Worker binding's fall-back-to-default semantics: evaluation never fails the
|
|
51
|
+
* effect — an HTTP error or a value whose type does not match the requested
|
|
52
|
+
* method resolves to `defaultValue` instead. The `raw` runtime binding has no
|
|
53
|
+
* HTTP equivalent and dies if used.
|
|
54
|
+
*/
|
|
55
|
+
export const makeHttpFlagshipClient = (
|
|
56
|
+
auth: FlagshipAuth,
|
|
57
|
+
appId: Effect.Effect<string>,
|
|
58
|
+
): ReadFlagsClient => {
|
|
59
|
+
const evaluate = (flagKey: string, context?: EvaluationContext) =>
|
|
60
|
+
appId.pipe(
|
|
61
|
+
Effect.flatMap((id) =>
|
|
62
|
+
auth.authorize(
|
|
63
|
+
flagship.getAppEvaluate({
|
|
64
|
+
accountId: auth.accountId,
|
|
65
|
+
appId: id,
|
|
66
|
+
flagKey,
|
|
67
|
+
targetingKey: targetingKeyOf(context),
|
|
68
|
+
}),
|
|
69
|
+
),
|
|
70
|
+
),
|
|
71
|
+
);
|
|
72
|
+
|
|
73
|
+
const details = <T>(
|
|
74
|
+
flagKey: string,
|
|
75
|
+
defaultValue: T,
|
|
76
|
+
match: (value: unknown) => value is T,
|
|
77
|
+
context?: EvaluationContext,
|
|
78
|
+
): Effect.Effect<EvaluationDetails<T>, FlagshipError, RuntimeContext> =>
|
|
79
|
+
evaluate(flagKey, context).pipe(
|
|
80
|
+
Effect.map(
|
|
81
|
+
(r): EvaluationDetails<T> =>
|
|
82
|
+
match(r.value)
|
|
83
|
+
? { flagKey, value: r.value, variant: r.variant, reason: r.reason }
|
|
84
|
+
: {
|
|
85
|
+
flagKey,
|
|
86
|
+
value: defaultValue,
|
|
87
|
+
variant: r.variant,
|
|
88
|
+
reason: r.reason,
|
|
89
|
+
errorCode: "TYPE_MISMATCH",
|
|
90
|
+
},
|
|
91
|
+
),
|
|
92
|
+
Effect.catch((error) =>
|
|
93
|
+
Effect.succeed<EvaluationDetails<T>>({
|
|
94
|
+
flagKey,
|
|
95
|
+
value: defaultValue,
|
|
96
|
+
reason: "ERROR",
|
|
97
|
+
errorCode: error._tag,
|
|
98
|
+
}),
|
|
99
|
+
),
|
|
100
|
+
);
|
|
101
|
+
|
|
102
|
+
const value = <T>(
|
|
103
|
+
flagKey: string,
|
|
104
|
+
defaultValue: T,
|
|
105
|
+
match: (value: unknown) => value is T,
|
|
106
|
+
context?: EvaluationContext,
|
|
107
|
+
): Effect.Effect<T, FlagshipError, RuntimeContext> =>
|
|
108
|
+
evaluate(flagKey, context).pipe(
|
|
109
|
+
Effect.map((r) => (match(r.value) ? r.value : defaultValue)),
|
|
110
|
+
Effect.catch(() => Effect.succeed(defaultValue)),
|
|
111
|
+
);
|
|
112
|
+
|
|
113
|
+
const isBoolean = (v: unknown): v is boolean => typeof v === "boolean";
|
|
114
|
+
const isString = (v: unknown): v is string => typeof v === "string";
|
|
115
|
+
const isNumber = (v: unknown): v is number => typeof v === "number";
|
|
116
|
+
const isObjectLike = (v: unknown): boolean =>
|
|
117
|
+
v !== null && typeof v === "object";
|
|
118
|
+
|
|
119
|
+
return {
|
|
120
|
+
// The raw runtime binding is a workerd object with no HTTP surface.
|
|
121
|
+
raw: Effect.die(
|
|
122
|
+
new FlagshipError({
|
|
123
|
+
message:
|
|
124
|
+
"the raw Flagship runtime binding is unavailable over HTTP; use ReadFlagsBinding inside a Worker",
|
|
125
|
+
cause: undefined,
|
|
126
|
+
}),
|
|
127
|
+
) as Effect.Effect<cf.Flagship, never, RuntimeContext>,
|
|
128
|
+
get: (flagKey, defaultValue, context) =>
|
|
129
|
+
evaluate(flagKey, context).pipe(
|
|
130
|
+
Effect.map((r) => r.value ?? defaultValue),
|
|
131
|
+
Effect.catch(() => Effect.succeed(defaultValue)),
|
|
132
|
+
),
|
|
133
|
+
getBooleanValue: (flagKey, defaultValue, context) =>
|
|
134
|
+
value(flagKey, defaultValue, isBoolean, context),
|
|
135
|
+
getStringValue: (flagKey, defaultValue, context) =>
|
|
136
|
+
value(flagKey, defaultValue, isString, context),
|
|
137
|
+
getNumberValue: (flagKey, defaultValue, context) =>
|
|
138
|
+
value(flagKey, defaultValue, isNumber, context),
|
|
139
|
+
getObjectValue: (flagKey, defaultValue, context) =>
|
|
140
|
+
evaluate(flagKey, context).pipe(
|
|
141
|
+
Effect.map((r) =>
|
|
142
|
+
isObjectLike(r.value)
|
|
143
|
+
? (r.value as typeof defaultValue)
|
|
144
|
+
: defaultValue,
|
|
145
|
+
),
|
|
146
|
+
Effect.catch(() => Effect.succeed(defaultValue)),
|
|
147
|
+
),
|
|
148
|
+
getBooleanDetails: (flagKey, defaultValue, context) =>
|
|
149
|
+
details(flagKey, defaultValue, isBoolean, context),
|
|
150
|
+
getStringDetails: (flagKey, defaultValue, context) =>
|
|
151
|
+
details(flagKey, defaultValue, isString, context),
|
|
152
|
+
getNumberDetails: (flagKey, defaultValue, context) =>
|
|
153
|
+
details(flagKey, defaultValue, isNumber, context),
|
|
154
|
+
getObjectDetails: (flagKey, defaultValue, context) =>
|
|
155
|
+
evaluate(flagKey, context).pipe(
|
|
156
|
+
Effect.map(
|
|
157
|
+
(r): EvaluationDetails<typeof defaultValue> =>
|
|
158
|
+
isObjectLike(r.value)
|
|
159
|
+
? {
|
|
160
|
+
flagKey,
|
|
161
|
+
value: r.value as typeof defaultValue,
|
|
162
|
+
variant: r.variant,
|
|
163
|
+
reason: r.reason,
|
|
164
|
+
}
|
|
165
|
+
: {
|
|
166
|
+
flagKey,
|
|
167
|
+
value: defaultValue,
|
|
168
|
+
variant: r.variant,
|
|
169
|
+
reason: r.reason,
|
|
170
|
+
errorCode: "TYPE_MISMATCH",
|
|
171
|
+
},
|
|
172
|
+
),
|
|
173
|
+
Effect.catch((error) =>
|
|
174
|
+
Effect.succeed<EvaluationDetails<typeof defaultValue>>({
|
|
175
|
+
flagKey,
|
|
176
|
+
value: defaultValue,
|
|
177
|
+
reason: "ERROR",
|
|
178
|
+
errorCode: error._tag,
|
|
179
|
+
}),
|
|
180
|
+
),
|
|
181
|
+
),
|
|
182
|
+
} satisfies ReadFlagsClient;
|
|
183
|
+
};
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import * as Effect from "effect/Effect";
|
|
2
|
+
import * as Layer from "effect/Layer";
|
|
3
|
+
import type * as HttpClient from "effect/unstable/http/HttpClient";
|
|
4
|
+
import { CloudflareEnvironment } from "../CloudflareEnvironment.ts";
|
|
5
|
+
import type { Credentials } from "../Credentials.ts";
|
|
6
|
+
import type { App } from "./App.ts";
|
|
7
|
+
import { ReadFlags } from "./ReadFlags.ts";
|
|
8
|
+
import {
|
|
9
|
+
type FlagshipAuth,
|
|
10
|
+
makeHttpFlagshipClient,
|
|
11
|
+
} from "./ReadFlagsHttpClient.ts";
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Local implementation of the {@link ReadFlags} binding — evaluates Flagship
|
|
15
|
+
* feature flags over the Cloudflare HTTP API (`GET .../flagship/apps/{appId}/evaluate`)
|
|
16
|
+
* using the **current credentials** instead of a native Worker binding
|
|
17
|
+
* ({@link ReadFlagsBinding}).
|
|
18
|
+
*
|
|
19
|
+
* Provide it on an {@link Action} (or any deploy-time Effect) so you can read
|
|
20
|
+
* flag values with the same `getBooleanValue`/`getStringValue`/… client you'd
|
|
21
|
+
* use inside a Worker:
|
|
22
|
+
*
|
|
23
|
+
* @example Reading a flag from an Action
|
|
24
|
+
* ```typescript
|
|
25
|
+
* const CheckFlag = Alchemy.Action(
|
|
26
|
+
* "CheckFlag",
|
|
27
|
+
* Effect.gen(function* () {
|
|
28
|
+
* const flags = yield* Cloudflare.Flagship.ReadFlags(app);
|
|
29
|
+
* return Effect.fn(function* () {
|
|
30
|
+
* return yield* flags.getBooleanValue("new-checkout", false);
|
|
31
|
+
* });
|
|
32
|
+
* }).pipe(Effect.provide(Cloudflare.Flagship.ReadFlagsLocal)),
|
|
33
|
+
* );
|
|
34
|
+
* ```
|
|
35
|
+
*
|
|
36
|
+
* The app id is resolved at apply time through the ambient {@link RuntimeContext}
|
|
37
|
+
* (in an Action, that's the resolve context the engine provides around the
|
|
38
|
+
* body), so `ReadFlags(app)` works even though the app is created in the same
|
|
39
|
+
* deploy.
|
|
40
|
+
*
|
|
41
|
+
* Limitations vs. the Worker binding: the HTTP evaluate endpoint only accepts a
|
|
42
|
+
* single `targetingKey` (read from `context.targetingKey`), so attribute-based
|
|
43
|
+
* targeting rules that key off other context fields cannot be exercised locally.
|
|
44
|
+
* The `raw` runtime binding has no HTTP equivalent and dies if used — see
|
|
45
|
+
* {@link makeHttpFlagshipClient}.
|
|
46
|
+
*/
|
|
47
|
+
export const ReadFlagsLocal = Layer.effect(
|
|
48
|
+
ReadFlags,
|
|
49
|
+
Effect.gen(function* () {
|
|
50
|
+
// Account + credentials are ambient during stack-eval (the stack's
|
|
51
|
+
// providers layer). Capture the full context so the evaluate op can run
|
|
52
|
+
// with the current credentials — no `host.bind`, no minted token.
|
|
53
|
+
const { accountId } = yield* yield* CloudflareEnvironment;
|
|
54
|
+
const context = yield* Effect.context<
|
|
55
|
+
Credentials | HttpClient.HttpClient
|
|
56
|
+
>();
|
|
57
|
+
const auth: FlagshipAuth = {
|
|
58
|
+
authorize: (eff) => eff.pipe(Effect.provideContext(context)),
|
|
59
|
+
accountId,
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
return Effect.fn(function* (app: App) {
|
|
63
|
+
// Deferred accessor — resolves the appId against the tracker at apply
|
|
64
|
+
// time (in an Action, that's the engine's resolve context).
|
|
65
|
+
const appId = yield* app.appId;
|
|
66
|
+
return makeHttpFlagshipClient(auth, appId);
|
|
67
|
+
});
|
|
68
|
+
}),
|
|
69
|
+
);
|