alchemy 2.0.0-beta.65 → 2.0.0-beta.66
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/bin/exec.js +433 -181
- package/bin/exec.js.map +1 -1
- package/lib/AWS/ApiGateway/common.d.ts.map +1 -1
- package/lib/AWS/ApiGateway/common.js +8 -1
- package/lib/AWS/ApiGateway/common.js.map +1 -1
- package/lib/AWS/Bedrock/LanguageModel.d.ts +208 -0
- package/lib/AWS/Bedrock/LanguageModel.d.ts.map +1 -0
- package/lib/AWS/Bedrock/LanguageModel.js +508 -0
- package/lib/AWS/Bedrock/LanguageModel.js.map +1 -0
- package/lib/AWS/Bedrock/LanguageModelHttp.d.ts +10 -0
- package/lib/AWS/Bedrock/LanguageModelHttp.d.ts.map +1 -0
- package/lib/AWS/Bedrock/LanguageModelHttp.js +26 -0
- package/lib/AWS/Bedrock/LanguageModelHttp.js.map +1 -0
- package/lib/AWS/Bedrock/index.d.ts +2 -0
- package/lib/AWS/Bedrock/index.d.ts.map +1 -1
- package/lib/AWS/Bedrock/index.js +2 -0
- package/lib/AWS/Bedrock/index.js.map +1 -1
- package/lib/AWS/CloudFront/Distribution.d.ts +24 -0
- package/lib/AWS/CloudFront/Distribution.d.ts.map +1 -1
- package/lib/AWS/CloudFront/Distribution.js +89 -4
- package/lib/AWS/CloudFront/Distribution.js.map +1 -1
- package/lib/AWS/CostExplorer/AnomalyMonitor.d.ts +1 -1
- package/lib/AWS/CostExplorer/AnomalyMonitor.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/AnomalySubscription.d.ts +1 -1
- package/lib/AWS/CostExplorer/AnomalySubscription.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/BindingHttp.d.ts +3 -3
- package/lib/AWS/CostExplorer/BindingHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/CostCategory.d.ts +1 -1
- package/lib/AWS/CostExplorer/CostCategory.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetAnomaliesHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetAnomaliesHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetApproximateUsageRecordsHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetApproximateUsageRecordsHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetCommitmentPurchaseAnalysisHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetCommitmentPurchaseAnalysisHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetCostAndUsageComparisonsHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetCostAndUsageComparisonsHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetCostAndUsageHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetCostAndUsageHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetCostAndUsageWithResourcesHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetCostAndUsageWithResourcesHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetCostCategoriesHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetCostCategoriesHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetCostComparisonDriversHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetCostComparisonDriversHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetCostForecastHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetCostForecastHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetDimensionValuesHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetDimensionValuesHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetReservationCoverageHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetReservationCoverageHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetReservationPurchaseRecommendationHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetReservationPurchaseRecommendationHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetReservationUtilizationHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetReservationUtilizationHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetRightsizingRecommendationHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetRightsizingRecommendationHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetSavingsPlanPurchaseRecommendationDetailsHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetSavingsPlanPurchaseRecommendationDetailsHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetSavingsPlansCoverageHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetSavingsPlansCoverageHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetSavingsPlansPurchaseRecommendationHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetSavingsPlansPurchaseRecommendationHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetSavingsPlansUtilizationDetailsHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetSavingsPlansUtilizationDetailsHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetSavingsPlansUtilizationHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetSavingsPlansUtilizationHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetTagsHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetTagsHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/GetUsageForecastHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/GetUsageForecastHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/ListCommitmentPurchaseAnalysesHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/ListCommitmentPurchaseAnalysesHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/ListCostAllocationTagBackfillHistoryHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/ListCostAllocationTagBackfillHistoryHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/ListCostAllocationTagsHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/ListCostAllocationTagsHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/ListCostCategoryResourceAssociationsHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/ListCostCategoryResourceAssociationsHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/ListSavingsPlansPurchaseRecommendationGenerationHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/ListSavingsPlansPurchaseRecommendationGenerationHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/ProvideAnomalyFeedbackHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/ProvideAnomalyFeedbackHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/StartCommitmentPurchaseAnalysisHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/StartCommitmentPurchaseAnalysisHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/StartCostAllocationTagBackfillHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/StartCostAllocationTagBackfillHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/StartSavingsPlansPurchaseRecommendationGenerationHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/StartSavingsPlansPurchaseRecommendationGenerationHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/UpdateCostAllocationTagsStatusHttp.d.ts +1 -1
- package/lib/AWS/CostExplorer/UpdateCostAllocationTagsStatusHttp.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/common.d.ts +5 -3
- package/lib/AWS/CostExplorer/common.d.ts.map +1 -1
- package/lib/AWS/CostExplorer/common.js +16 -1
- package/lib/AWS/CostExplorer/common.js.map +1 -1
- package/lib/AWS/DataSync/Task.d.ts.map +1 -1
- package/lib/AWS/DataSync/Task.js +16 -2
- package/lib/AWS/DataSync/Task.js.map +1 -1
- package/lib/AWS/EC2/Vpc.d.ts.map +1 -1
- package/lib/AWS/EC2/Vpc.js +15 -2
- package/lib/AWS/EC2/Vpc.js.map +1 -1
- package/lib/AWS/EC2/hosted.d.ts.map +1 -1
- package/lib/AWS/EC2/hosted.js +10 -2
- package/lib/AWS/EC2/hosted.js.map +1 -1
- package/lib/AWS/ECR/Image.d.ts +132 -13
- package/lib/AWS/ECR/Image.d.ts.map +1 -1
- package/lib/AWS/ECR/ImageSource.d.ts.map +1 -1
- package/lib/AWS/ECR/ImageSource.js +10 -2
- package/lib/AWS/ECR/ImageSource.js.map +1 -1
- package/lib/AWS/ECR/Repository.d.ts +2 -0
- package/lib/AWS/ECR/Repository.d.ts.map +1 -1
- package/lib/AWS/ECR/Repository.js +28 -3
- package/lib/AWS/ECR/Repository.js.map +1 -1
- package/lib/AWS/ECS/Service.d.ts +27 -1
- package/lib/AWS/ECS/Service.d.ts.map +1 -1
- package/lib/AWS/ECS/Service.js +184 -22
- package/lib/AWS/ECS/Service.js.map +1 -1
- package/lib/AWS/ECS/Task.d.ts +32 -8
- package/lib/AWS/ECS/Task.d.ts.map +1 -1
- package/lib/AWS/ECS/Task.js +62 -29
- package/lib/AWS/ECS/Task.js.map +1 -1
- package/lib/AWS/EKS/Deployment.d.ts.map +1 -1
- package/lib/AWS/EKS/Deployment.js +10 -2
- package/lib/AWS/EKS/Deployment.js.map +1 -1
- package/lib/AWS/EKS/Job.d.ts.map +1 -1
- package/lib/AWS/EKS/Job.js +10 -2
- package/lib/AWS/EKS/Job.js.map +1 -1
- package/lib/AWS/Lambda/Function.d.ts +15 -0
- package/lib/AWS/Lambda/Function.d.ts.map +1 -1
- package/lib/AWS/Lambda/Function.js +67 -29
- package/lib/AWS/Lambda/Function.js.map +1 -1
- package/lib/AWS/Lambda/HttpServer.d.ts.map +1 -1
- package/lib/AWS/Lambda/HttpServer.js +7 -1
- package/lib/AWS/Lambda/HttpServer.js.map +1 -1
- package/lib/AWS/Lambda/LayerVersion.d.ts +176 -0
- package/lib/AWS/Lambda/LayerVersion.d.ts.map +1 -0
- package/lib/AWS/Lambda/LayerVersion.js +288 -0
- package/lib/AWS/Lambda/LayerVersion.js.map +1 -0
- package/lib/AWS/Lambda/MicrovmBundle.d.ts.map +1 -1
- package/lib/AWS/Lambda/MicrovmBundle.js +10 -2
- package/lib/AWS/Lambda/MicrovmBundle.js.map +1 -1
- package/lib/AWS/Lambda/index.d.ts +1 -0
- package/lib/AWS/Lambda/index.d.ts.map +1 -1
- package/lib/AWS/Lambda/index.js +1 -0
- package/lib/AWS/Lambda/index.js.map +1 -1
- package/lib/AWS/Providers.d.ts.map +1 -1
- package/lib/AWS/Providers.js +6 -1
- package/lib/AWS/Providers.js.map +1 -1
- package/lib/AWS/SES/ActiveReceiptRuleSet.d.ts +40 -0
- package/lib/AWS/SES/ActiveReceiptRuleSet.d.ts.map +1 -0
- package/lib/AWS/SES/ActiveReceiptRuleSet.js +58 -0
- package/lib/AWS/SES/ActiveReceiptRuleSet.js.map +1 -0
- package/lib/AWS/SES/ReceiptFilter.d.ts +67 -0
- package/lib/AWS/SES/ReceiptFilter.d.ts.map +1 -0
- package/lib/AWS/SES/ReceiptFilter.js +92 -0
- package/lib/AWS/SES/ReceiptFilter.js.map +1 -0
- package/lib/AWS/SES/ReceiptRule.d.ts +133 -0
- package/lib/AWS/SES/ReceiptRule.d.ts.map +1 -0
- package/lib/AWS/SES/ReceiptRule.js +178 -0
- package/lib/AWS/SES/ReceiptRule.js.map +1 -0
- package/lib/AWS/SES/ReceiptRuleSet.d.ts +55 -0
- package/lib/AWS/SES/ReceiptRuleSet.d.ts.map +1 -0
- package/lib/AWS/SES/ReceiptRuleSet.js +112 -0
- package/lib/AWS/SES/ReceiptRuleSet.js.map +1 -0
- package/lib/AWS/SES/SendBounce.d.ts +37 -0
- package/lib/AWS/SES/SendBounce.d.ts.map +1 -0
- package/lib/AWS/SES/SendBounce.js +3 -0
- package/lib/AWS/SES/SendBounce.js.map +1 -0
- package/lib/AWS/SES/SendBounceHttp.d.ts +4 -0
- package/lib/AWS/SES/SendBounceHttp.d.ts.map +1 -0
- package/lib/AWS/SES/SendBounceHttp.js +10 -0
- package/lib/AWS/SES/SendBounceHttp.js.map +1 -0
- package/lib/AWS/SES/index.d.ts +6 -0
- package/lib/AWS/SES/index.d.ts.map +1 -1
- package/lib/AWS/SES/index.js +6 -0
- package/lib/AWS/SES/index.js.map +1 -1
- package/lib/AWS/StateStore/State.d.ts +11 -0
- package/lib/AWS/StateStore/State.d.ts.map +1 -1
- package/lib/AWS/StateStore/State.js +117 -38
- package/lib/AWS/StateStore/State.js.map +1 -1
- package/lib/Apply.d.ts +37 -1
- package/lib/Apply.d.ts.map +1 -1
- package/lib/Apply.js +270 -194
- package/lib/Apply.js.map +1 -1
- package/lib/Axiom/Telemetry.d.ts +66 -0
- package/lib/Axiom/Telemetry.d.ts.map +1 -0
- package/lib/Axiom/Telemetry.js +69 -0
- package/lib/Axiom/Telemetry.js.map +1 -0
- package/lib/Axiom/index.d.ts +1 -0
- package/lib/Axiom/index.d.ts.map +1 -1
- package/lib/Axiom/index.js +1 -0
- package/lib/Axiom/index.js.map +1 -1
- package/lib/Bundle/Bundle.d.ts +1 -1
- package/lib/Bundle/Bundle.d.ts.map +1 -1
- package/lib/Bundle/Bundle.js +14 -6
- package/lib/Bundle/Bundle.js.map +1 -1
- package/lib/Bundle/BundleAnalyzerPlugin.d.ts +1 -1
- package/lib/Bundle/BundleAnalyzerPlugin.d.ts.map +1 -1
- package/lib/Bundle/BundleAnalyzerPlugin.js +10 -5
- package/lib/Bundle/BundleAnalyzerPlugin.js.map +1 -1
- package/lib/Bundle/PurePlugin.d.ts +1 -1
- package/lib/Bundle/PurePlugin.d.ts.map +1 -1
- package/lib/Bundle/PurePlugin.js +15 -7
- package/lib/Bundle/PurePlugin.js.map +1 -1
- package/lib/Cli/checkVersion.d.ts +11 -5
- package/lib/Cli/checkVersion.d.ts.map +1 -1
- package/lib/Cli/checkVersion.js +73 -12
- package/lib/Cli/checkVersion.js.map +1 -1
- package/lib/Cli/commands/cloudflare.d.ts +1 -1
- package/lib/Cli/commands/deploy.d.ts.map +1 -1
- package/lib/Cli/commands/deploy.js +3 -11
- package/lib/Cli/commands/deploy.js.map +1 -1
- package/lib/Cli/commands/logs.d.ts.map +1 -1
- package/lib/Cli/commands/logs.js +3 -1
- package/lib/Cli/commands/logs.js.map +1 -1
- package/lib/Cli/commands/tail.d.ts.map +1 -1
- package/lib/Cli/commands/tail.js +3 -1
- package/lib/Cli/commands/tail.js.map +1 -1
- package/lib/Cli/main.d.ts.map +1 -1
- package/lib/Cli/main.js +5 -4
- package/lib/Cli/main.js.map +1 -1
- package/lib/Cloudflare/AI/Search.d.ts +4 -15
- package/lib/Cloudflare/AI/Search.d.ts.map +1 -1
- package/lib/Cloudflare/AI/Search.js +4 -6
- package/lib/Cloudflare/AI/Search.js.map +1 -1
- package/lib/Cloudflare/AI/SearchInstance.d.ts +7 -26
- package/lib/Cloudflare/AI/SearchInstance.d.ts.map +1 -1
- package/lib/Cloudflare/AI/SearchInstance.js +7 -26
- package/lib/Cloudflare/AI/SearchInstance.js.map +1 -1
- package/lib/Cloudflare/ApiToken/AccountApiToken.d.ts +3 -0
- package/lib/Cloudflare/ApiToken/AccountApiToken.d.ts.map +1 -1
- package/lib/Cloudflare/ApiToken/AccountApiToken.js +3 -0
- package/lib/Cloudflare/ApiToken/AccountApiToken.js.map +1 -1
- package/lib/Cloudflare/Auth/AuthProvider.d.ts +2 -1
- package/lib/Cloudflare/Auth/AuthProvider.d.ts.map +1 -1
- package/lib/Cloudflare/Auth/AuthProvider.js +8 -3
- package/lib/Cloudflare/Auth/AuthProvider.js.map +1 -1
- package/lib/Cloudflare/Auth/OAuthClient.d.ts +5 -0
- package/lib/Cloudflare/Auth/OAuthClient.d.ts.map +1 -1
- package/lib/Cloudflare/Auth/OAuthClient.js +50 -4
- package/lib/Cloudflare/Auth/OAuthClient.js.map +1 -1
- package/lib/Cloudflare/Containers/Container.d.ts +81 -3
- package/lib/Cloudflare/Containers/Container.d.ts.map +1 -1
- package/lib/Cloudflare/Containers/Container.js +70 -0
- package/lib/Cloudflare/Containers/Container.js.map +1 -1
- package/lib/Cloudflare/Containers/ContainerApplication.d.ts +22 -1
- package/lib/Cloudflare/Containers/ContainerApplication.d.ts.map +1 -1
- package/lib/Cloudflare/Containers/ContainerApplication.js +4 -1
- package/lib/Cloudflare/Containers/ContainerApplication.js.map +1 -1
- package/lib/Cloudflare/Containers/ContainerBundle.d.ts.map +1 -1
- package/lib/Cloudflare/Containers/ContainerBundle.js +10 -2
- package/lib/Cloudflare/Containers/ContainerBundle.js.map +1 -1
- package/lib/Cloudflare/Containers/ContainerProvider.d.ts.map +1 -1
- package/lib/Cloudflare/Containers/ContainerProvider.js +43 -0
- package/lib/Cloudflare/Containers/ContainerProvider.js.map +1 -1
- package/lib/Cloudflare/Credentials.d.ts +21 -1
- package/lib/Cloudflare/Credentials.d.ts.map +1 -1
- package/lib/Cloudflare/Credentials.js +52 -9
- package/lib/Cloudflare/Credentials.js.map +1 -1
- package/lib/Cloudflare/D1/ApplyMigrations.d.ts +30 -5
- package/lib/Cloudflare/D1/ApplyMigrations.d.ts.map +1 -1
- package/lib/Cloudflare/D1/ApplyMigrations.js +36 -26
- package/lib/Cloudflare/D1/ApplyMigrations.js.map +1 -1
- package/lib/Cloudflare/D1/Database.d.ts +18 -1
- package/lib/Cloudflare/D1/Database.d.ts.map +1 -1
- package/lib/Cloudflare/D1/Database.js +134 -2
- package/lib/Cloudflare/D1/Database.js.map +1 -1
- package/lib/Cloudflare/D1/LocalD1Gateway.d.ts +39 -0
- package/lib/Cloudflare/D1/LocalD1Gateway.d.ts.map +1 -0
- package/lib/Cloudflare/D1/LocalD1Gateway.js +100 -0
- package/lib/Cloudflare/D1/LocalD1Gateway.js.map +1 -0
- package/lib/Cloudflare/D1/QueryDatabaseHttpClient.d.ts +31 -0
- package/lib/Cloudflare/D1/QueryDatabaseHttpClient.d.ts.map +1 -1
- package/lib/Cloudflare/D1/QueryDatabaseHttpClient.js +13 -6
- package/lib/Cloudflare/D1/QueryDatabaseHttpClient.js.map +1 -1
- package/lib/Cloudflare/D1/QueryDatabaseLocal.d.ts.map +1 -1
- package/lib/Cloudflare/D1/QueryDatabaseLocal.js +21 -2
- package/lib/Cloudflare/D1/QueryDatabaseLocal.js.map +1 -1
- package/lib/Cloudflare/Email/Address.d.ts.map +1 -1
- package/lib/Cloudflare/Email/Address.js +15 -1
- package/lib/Cloudflare/Email/Address.js.map +1 -1
- package/lib/Cloudflare/Email/SendBinding.d.ts.map +1 -1
- package/lib/Cloudflare/Email/SendBinding.js +1 -0
- package/lib/Cloudflare/Email/SendBinding.js.map +1 -1
- package/lib/Cloudflare/Email/SendEmail.d.ts +12 -0
- package/lib/Cloudflare/Email/SendEmail.d.ts.map +1 -1
- package/lib/Cloudflare/Email/SendEmail.js +1 -0
- package/lib/Cloudflare/Email/SendEmail.js.map +1 -1
- package/lib/Cloudflare/Flagship/App.d.ts.map +1 -1
- package/lib/Cloudflare/Flagship/App.js +8 -3
- package/lib/Cloudflare/Flagship/App.js.map +1 -1
- package/lib/Cloudflare/KV/LocalKVGateway.d.ts +15 -0
- package/lib/Cloudflare/KV/LocalKVGateway.d.ts.map +1 -0
- package/lib/Cloudflare/KV/LocalKVGateway.js +64 -0
- package/lib/Cloudflare/KV/LocalKVGateway.js.map +1 -0
- package/lib/Cloudflare/KV/Namespace.d.ts +9 -1
- package/lib/Cloudflare/KV/Namespace.d.ts.map +1 -1
- package/lib/Cloudflare/KV/Namespace.js +45 -1
- package/lib/Cloudflare/KV/Namespace.js.map +1 -1
- package/lib/Cloudflare/KV/NamespaceLocal.d.ts +16 -5
- package/lib/Cloudflare/KV/NamespaceLocal.d.ts.map +1 -1
- package/lib/Cloudflare/KV/NamespaceLocal.js +21 -4
- package/lib/Cloudflare/KV/NamespaceLocal.js.map +1 -1
- package/lib/Cloudflare/KV/ReadNamespaceLocal.d.ts.map +1 -1
- package/lib/Cloudflare/KV/ReadNamespaceLocal.js +5 -1
- package/lib/Cloudflare/KV/ReadNamespaceLocal.js.map +1 -1
- package/lib/Cloudflare/KV/ReadWriteNamespaceLocal.d.ts.map +1 -1
- package/lib/Cloudflare/KV/ReadWriteNamespaceLocal.js +5 -1
- package/lib/Cloudflare/KV/ReadWriteNamespaceLocal.js.map +1 -1
- package/lib/Cloudflare/KV/WriteNamespaceLocal.d.ts.map +1 -1
- package/lib/Cloudflare/KV/WriteNamespaceLocal.js +5 -1
- package/lib/Cloudflare/KV/WriteNamespaceLocal.js.map +1 -1
- package/lib/Cloudflare/LocalGateway.d.ts +25 -0
- package/lib/Cloudflare/LocalGateway.d.ts.map +1 -0
- package/lib/Cloudflare/LocalGateway.js +70 -0
- package/lib/Cloudflare/LocalGateway.js.map +1 -0
- package/lib/Cloudflare/LocalRuntime.d.ts +14 -1
- package/lib/Cloudflare/LocalRuntime.d.ts.map +1 -1
- package/lib/Cloudflare/LocalRuntime.js +16 -1
- package/lib/Cloudflare/LocalRuntime.js.map +1 -1
- package/lib/Cloudflare/Logs.d.ts.map +1 -1
- package/lib/Cloudflare/Logs.js +18 -6
- package/lib/Cloudflare/Logs.js.map +1 -1
- package/lib/Cloudflare/Providers.d.ts +1 -1
- package/lib/Cloudflare/Providers.d.ts.map +1 -1
- package/lib/Cloudflare/Providers.js +6 -2
- package/lib/Cloudflare/Providers.js.map +1 -1
- package/lib/Cloudflare/Queues/Consumer.d.ts +16 -3
- package/lib/Cloudflare/Queues/Consumer.d.ts.map +1 -1
- package/lib/Cloudflare/Queues/Consumer.js +51 -3
- package/lib/Cloudflare/Queues/Consumer.js.map +1 -1
- package/lib/Cloudflare/Queues/Queue.d.ts +4 -3
- package/lib/Cloudflare/Queues/Queue.d.ts.map +1 -1
- package/lib/Cloudflare/Queues/Queue.js +7 -17
- package/lib/Cloudflare/Queues/Queue.js.map +1 -1
- package/lib/Cloudflare/Queues/QueueBinding.d.ts.map +1 -1
- package/lib/Cloudflare/Queues/QueueBinding.js +19 -0
- package/lib/Cloudflare/Queues/QueueBinding.js.map +1 -1
- package/lib/Cloudflare/Queues/QueueShim.d.ts +55 -0
- package/lib/Cloudflare/Queues/QueueShim.d.ts.map +1 -0
- package/lib/Cloudflare/Queues/QueueShim.js +177 -0
- package/lib/Cloudflare/Queues/QueueShim.js.map +1 -0
- package/lib/Cloudflare/R2/Bucket.d.ts +14 -1
- package/lib/Cloudflare/R2/Bucket.d.ts.map +1 -1
- package/lib/Cloudflare/R2/Bucket.js +53 -1
- package/lib/Cloudflare/R2/Bucket.js.map +1 -1
- package/lib/Cloudflare/R2/BucketBinding.d.ts +10 -0
- package/lib/Cloudflare/R2/BucketBinding.d.ts.map +1 -1
- package/lib/Cloudflare/R2/BucketBinding.js +14 -3
- package/lib/Cloudflare/R2/BucketBinding.js.map +1 -1
- package/lib/Cloudflare/R2/BucketLocal.d.ts +13 -6
- package/lib/Cloudflare/R2/BucketLocal.d.ts.map +1 -1
- package/lib/Cloudflare/R2/BucketLocal.js +19 -6
- package/lib/Cloudflare/R2/BucketLocal.js.map +1 -1
- package/lib/Cloudflare/R2/LocalR2Gateway.d.ts +15 -0
- package/lib/Cloudflare/R2/LocalR2Gateway.d.ts.map +1 -0
- package/lib/Cloudflare/R2/LocalR2Gateway.js +65 -0
- package/lib/Cloudflare/R2/LocalR2Gateway.js.map +1 -0
- package/lib/Cloudflare/R2/ReadBucketLocal.d.ts.map +1 -1
- package/lib/Cloudflare/R2/ReadBucketLocal.js +5 -1
- package/lib/Cloudflare/R2/ReadBucketLocal.js.map +1 -1
- package/lib/Cloudflare/R2/ReadWriteBucketLocal.d.ts.map +1 -1
- package/lib/Cloudflare/R2/ReadWriteBucketLocal.js +5 -1
- package/lib/Cloudflare/R2/ReadWriteBucketLocal.js.map +1 -1
- package/lib/Cloudflare/R2/WriteBucketLocal.d.ts.map +1 -1
- package/lib/Cloudflare/R2/WriteBucketLocal.js +5 -1
- package/lib/Cloudflare/R2/WriteBucketLocal.js.map +1 -1
- package/lib/Cloudflare/Ruleset/AccountEntrypoint.d.ts.map +1 -1
- package/lib/Cloudflare/Ruleset/AccountEntrypoint.js +5 -1
- package/lib/Cloudflare/Ruleset/AccountEntrypoint.js.map +1 -1
- package/lib/Cloudflare/Ruleset/Ruleset.d.ts.map +1 -1
- package/lib/Cloudflare/Ruleset/Ruleset.js +19 -6
- package/lib/Cloudflare/Ruleset/Ruleset.js.map +1 -1
- package/lib/Cloudflare/Rum/Site.js +10 -2
- package/lib/Cloudflare/Rum/Site.js.map +1 -1
- package/lib/Cloudflare/StateStore/Api.d.ts +31 -2
- package/lib/Cloudflare/StateStore/Api.js +1 -1
- package/lib/Cloudflare/StateStore/Api.js.map +1 -1
- package/lib/Cloudflare/StateStore/State.d.ts +1 -1
- package/lib/Cloudflare/StateStore/State.d.ts.map +1 -1
- package/lib/Cloudflare/Tunnel/Tunnel.d.ts.map +1 -1
- package/lib/Cloudflare/Tunnel/Tunnel.js +20 -1
- package/lib/Cloudflare/Tunnel/Tunnel.js.map +1 -1
- package/lib/Cloudflare/Website/StaticSite.d.ts +34 -7
- package/lib/Cloudflare/Website/StaticSite.d.ts.map +1 -1
- package/lib/Cloudflare/Website/StaticSite.js +108 -24
- package/lib/Cloudflare/Website/StaticSite.js.map +1 -1
- package/lib/Cloudflare/Website/Vite.d.ts +33 -19
- package/lib/Cloudflare/Website/Vite.d.ts.map +1 -1
- package/lib/Cloudflare/Website/Vite.js +33 -19
- package/lib/Cloudflare/Website/Vite.js.map +1 -1
- package/lib/Cloudflare/Workers/Compatibility.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/Compatibility.js +26 -7
- package/lib/Cloudflare/Workers/Compatibility.js.map +1 -1
- package/lib/Cloudflare/Workers/DurableObject.d.ts +22 -0
- package/lib/Cloudflare/Workers/DurableObject.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/DurableObject.js +22 -0
- 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 +20 -5
- package/lib/Cloudflare/Workers/DurableObjectBridge.js.map +1 -1
- package/lib/Cloudflare/Workers/InferEnv.d.ts +4 -2
- package/lib/Cloudflare/Workers/InferEnv.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/LocalWorkerProvider.d.ts +7 -3
- package/lib/Cloudflare/Workers/LocalWorkerProvider.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/LocalWorkerProvider.js +483 -298
- package/lib/Cloudflare/Workers/LocalWorkerProvider.js.map +1 -1
- package/lib/Cloudflare/Workers/Worker.d.ts +612 -13
- package/lib/Cloudflare/Workers/Worker.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/Worker.js +222 -1
- package/lib/Cloudflare/Workers/Worker.js.map +1 -1
- package/lib/Cloudflare/Workers/WorkerAsyncBindings.d.ts +13 -1
- package/lib/Cloudflare/Workers/WorkerAsyncBindings.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/WorkerAsyncBindings.js +171 -21
- package/lib/Cloudflare/Workers/WorkerAsyncBindings.js.map +1 -1
- package/lib/Cloudflare/Workers/WorkerBinding.d.ts +130 -28
- 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 +6 -2
- package/lib/Cloudflare/Workers/WorkerBridge.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/WorkerBridge.js +18 -2
- package/lib/Cloudflare/Workers/WorkerBridge.js.map +1 -1
- package/lib/Cloudflare/Workers/WorkerBundle.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/WorkerBundle.js +4 -1
- package/lib/Cloudflare/Workers/WorkerBundle.js.map +1 -1
- package/lib/Cloudflare/Workers/WorkerProvider.d.ts +186 -11
- package/lib/Cloudflare/Workers/WorkerProvider.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/WorkerProvider.js +1765 -236
- package/lib/Cloudflare/Workers/WorkerProvider.js.map +1 -1
- package/lib/Cloudflare/Workflows/WorkflowBridge.d.ts +7 -1
- package/lib/Cloudflare/Workflows/WorkflowBridge.d.ts.map +1 -1
- package/lib/Cloudflare/Workflows/WorkflowBridge.js +14 -4
- package/lib/Cloudflare/Workflows/WorkflowBridge.js.map +1 -1
- package/lib/Command/Build.d.ts +2 -2
- package/lib/Command/Build.d.ts.map +1 -1
- package/lib/Command/Build.js +4 -7
- package/lib/Command/Build.js.map +1 -1
- package/lib/Command/Command.d.ts +34 -4
- package/lib/Command/Command.d.ts.map +1 -1
- package/lib/Command/Command.js +125 -30
- package/lib/Command/Command.js.map +1 -1
- package/lib/Command/Dev.d.ts +2 -2
- package/lib/Command/Dev.d.ts.map +1 -1
- package/lib/Command/Dev.js +51 -73
- package/lib/Command/Dev.js.map +1 -1
- package/lib/Command/Exec.d.ts +11 -2
- package/lib/Command/Exec.d.ts.map +1 -1
- package/lib/Command/Exec.js +9 -0
- package/lib/Command/Exec.js.map +1 -1
- package/lib/Command/Memo.d.ts +9 -1
- package/lib/Command/Memo.d.ts.map +1 -1
- package/lib/Command/Memo.js +14 -2
- package/lib/Command/Memo.js.map +1 -1
- package/lib/Command/Providers.d.ts +1 -1
- package/lib/Command/Providers.d.ts.map +1 -1
- package/lib/Command/Redaction.d.ts +10 -0
- package/lib/Command/Redaction.d.ts.map +1 -0
- package/lib/Command/Redaction.js +119 -0
- package/lib/Command/Redaction.js.map +1 -0
- package/lib/Deploy.d.ts +2 -1
- package/lib/Deploy.d.ts.map +1 -1
- package/lib/Destroy.d.ts +2 -1
- package/lib/Destroy.d.ts.map +1 -1
- package/lib/Destroy.js +1 -9
- package/lib/Destroy.js.map +1 -1
- package/lib/Docker/Container.d.ts +15 -1
- package/lib/Docker/Container.d.ts.map +1 -1
- package/lib/Docker/Container.js +34 -11
- package/lib/Docker/Container.js.map +1 -1
- package/lib/Docker/Context.d.ts +84 -0
- package/lib/Docker/Context.d.ts.map +1 -0
- package/lib/Docker/Context.js +145 -0
- package/lib/Docker/Context.js.map +1 -0
- package/lib/Docker/Docker.d.ts +190 -14
- package/lib/Docker/Docker.d.ts.map +1 -1
- package/lib/Docker/Docker.js +149 -28
- package/lib/Docker/Docker.js.map +1 -1
- package/lib/Docker/Image.d.ts +12 -0
- package/lib/Docker/Image.d.ts.map +1 -1
- package/lib/Docker/Image.js +24 -7
- package/lib/Docker/Image.js.map +1 -1
- package/lib/Docker/Network.d.ts +7 -0
- package/lib/Docker/Network.d.ts.map +1 -1
- package/lib/Docker/Network.js +16 -7
- package/lib/Docker/Network.js.map +1 -1
- package/lib/Docker/Providers.d.ts +1 -1
- package/lib/Docker/Providers.d.ts.map +1 -1
- package/lib/Docker/Providers.js +13 -1
- package/lib/Docker/Providers.js.map +1 -1
- package/lib/Docker/RemoteImage.d.ts +12 -0
- package/lib/Docker/RemoteImage.d.ts.map +1 -1
- package/lib/Docker/RemoteImage.js +22 -8
- package/lib/Docker/RemoteImage.js.map +1 -1
- package/lib/Docker/Service.d.ts +445 -0
- package/lib/Docker/Service.d.ts.map +1 -0
- package/lib/Docker/Service.js +578 -0
- package/lib/Docker/Service.js.map +1 -0
- package/lib/Docker/ServiceImage.d.ts +78 -0
- package/lib/Docker/ServiceImage.d.ts.map +1 -0
- package/lib/Docker/ServiceImage.js +232 -0
- package/lib/Docker/ServiceImage.js.map +1 -0
- package/lib/Docker/Swarm.d.ts +117 -0
- package/lib/Docker/Swarm.d.ts.map +1 -0
- package/lib/Docker/Swarm.js +149 -0
- package/lib/Docker/Swarm.js.map +1 -0
- package/lib/Docker/Volume.d.ts +11 -0
- package/lib/Docker/Volume.d.ts.map +1 -1
- package/lib/Docker/Volume.js +21 -6
- package/lib/Docker/Volume.js.map +1 -1
- package/lib/Docker/index.d.ts +3 -0
- package/lib/Docker/index.d.ts.map +1 -1
- package/lib/Docker/index.js +3 -0
- package/lib/Docker/index.js.map +1 -1
- package/lib/Http.d.ts +8 -1
- package/lib/Http.d.ts.map +1 -1
- package/lib/Http.js +7 -2
- package/lib/Http.js.map +1 -1
- package/lib/Local/LocalProvider.d.ts +182 -0
- package/lib/Local/LocalProvider.d.ts.map +1 -0
- package/lib/Local/LocalProvider.js +226 -0
- package/lib/Local/LocalProvider.js.map +1 -0
- package/lib/Local/ProviderLayer.d.ts +43 -2
- package/lib/Local/ProviderLayer.d.ts.map +1 -1
- package/lib/Local/ProviderLayer.js +80 -2
- package/lib/Local/ProviderLayer.js.map +1 -1
- package/lib/Local/RpcProvider.d.ts +7 -0
- package/lib/Local/RpcProvider.d.ts.map +1 -1
- package/lib/Local/RpcProvider.js +8 -3
- package/lib/Local/RpcProvider.js.map +1 -1
- package/lib/Local/RpcProviderProxy.d.ts.map +1 -1
- package/lib/Local/RpcProviderProxy.js +3 -0
- package/lib/Local/RpcProviderProxy.js.map +1 -1
- package/lib/Local/RpcServer.d.ts +8 -1
- package/lib/Local/RpcServer.d.ts.map +1 -1
- package/lib/Local/RpcServer.js +4 -1
- package/lib/Local/RpcServer.js.map +1 -1
- package/lib/Plan.d.ts +34 -0
- package/lib/Plan.d.ts.map +1 -1
- package/lib/Plan.js +127 -40
- package/lib/Plan.js.map +1 -1
- package/lib/Planetscale/AuthProvider.d.ts.map +1 -1
- package/lib/Planetscale/AuthProvider.js +6 -2
- package/lib/Planetscale/AuthProvider.js.map +1 -1
- package/lib/Planetscale/Branch.d.ts.map +1 -1
- package/lib/Planetscale/Branch.js +36 -6
- package/lib/Planetscale/Branch.js.map +1 -1
- package/lib/Planetscale/MySQL/MySQLDatabase.d.ts.map +1 -1
- package/lib/Planetscale/MySQL/MySQLDatabase.js +31 -6
- package/lib/Planetscale/MySQL/MySQLDatabase.js.map +1 -1
- package/lib/Planetscale/OAuthClient.d.ts +7 -1
- package/lib/Planetscale/OAuthClient.d.ts.map +1 -1
- package/lib/Planetscale/OAuthClient.js +51 -4
- package/lib/Planetscale/OAuthClient.js.map +1 -1
- package/lib/Planetscale/Postgres/PostgresDatabase.d.ts.map +1 -1
- package/lib/Planetscale/Postgres/PostgresDatabase.js +30 -5
- package/lib/Planetscale/Postgres/PostgresDatabase.js.map +1 -1
- package/lib/Platform.d.ts.map +1 -1
- package/lib/Platform.js +25 -14
- package/lib/Platform.js.map +1 -1
- package/lib/Prisma/App.d.ts +80 -0
- package/lib/Prisma/App.d.ts.map +1 -0
- package/lib/Prisma/App.js +238 -0
- package/lib/Prisma/App.js.map +1 -0
- package/lib/Prisma/AuthProvider.d.ts +28 -0
- package/lib/Prisma/AuthProvider.d.ts.map +1 -0
- package/lib/Prisma/AuthProvider.js +131 -0
- package/lib/Prisma/AuthProvider.js.map +1 -0
- package/lib/Prisma/Branch.d.ts +75 -0
- package/lib/Prisma/Branch.d.ts.map +1 -0
- package/lib/Prisma/Branch.js +216 -0
- package/lib/Prisma/Branch.js.map +1 -0
- package/lib/Prisma/Client.d.ts +178 -0
- package/lib/Prisma/Client.d.ts.map +1 -0
- package/lib/Prisma/Client.js +562 -0
- package/lib/Prisma/Client.js.map +1 -0
- package/lib/Prisma/Compute.d.ts +583 -0
- package/lib/Prisma/Compute.d.ts.map +1 -0
- package/lib/Prisma/Compute.js +1543 -0
- package/lib/Prisma/Compute.js.map +1 -0
- package/lib/Prisma/ComputeArchive.d.ts +63 -0
- package/lib/Prisma/ComputeArchive.d.ts.map +1 -0
- package/lib/Prisma/ComputeArchive.js +227 -0
- package/lib/Prisma/ComputeArchive.js.map +1 -0
- package/lib/Prisma/ComputeBuild.d.ts +106 -0
- package/lib/Prisma/ComputeBuild.d.ts.map +1 -0
- package/lib/Prisma/ComputeBuild.js +987 -0
- package/lib/Prisma/ComputeBuild.js.map +1 -0
- package/lib/Prisma/ComputeLifecycle.d.ts +84 -0
- package/lib/Prisma/ComputeLifecycle.d.ts.map +1 -0
- package/lib/Prisma/ComputeLifecycle.js +186 -0
- package/lib/Prisma/ComputeLifecycle.js.map +1 -0
- package/lib/Prisma/Connect.d.ts +99 -0
- package/lib/Prisma/Connect.d.ts.map +1 -0
- package/lib/Prisma/Connect.js +187 -0
- package/lib/Prisma/Connect.js.map +1 -0
- package/lib/Prisma/Connection.d.ts +202 -0
- package/lib/Prisma/Connection.d.ts.map +1 -0
- package/lib/Prisma/Connection.js +346 -0
- package/lib/Prisma/Connection.js.map +1 -0
- package/lib/Prisma/CustomDomain.d.ts +81 -0
- package/lib/Prisma/CustomDomain.d.ts.map +1 -0
- package/lib/Prisma/CustomDomain.js +175 -0
- package/lib/Prisma/CustomDomain.js.map +1 -0
- package/lib/Prisma/Database.d.ts +208 -0
- package/lib/Prisma/Database.d.ts.map +1 -0
- package/lib/Prisma/Database.js +405 -0
- package/lib/Prisma/Database.js.map +1 -0
- package/lib/Prisma/Deployment.d.ts +135 -0
- package/lib/Prisma/Deployment.d.ts.map +1 -0
- package/lib/Prisma/Deployment.js +348 -0
- package/lib/Prisma/Deployment.js.map +1 -0
- package/lib/Prisma/EnvironmentVariable.d.ts +89 -0
- package/lib/Prisma/EnvironmentVariable.d.ts.map +1 -0
- package/lib/Prisma/EnvironmentVariable.js +213 -0
- package/lib/Prisma/EnvironmentVariable.js.map +1 -0
- package/lib/Prisma/Internal/AppIdentity.d.ts +10 -0
- package/lib/Prisma/Internal/AppIdentity.d.ts.map +1 -0
- package/lib/Prisma/Internal/AppIdentity.js +6 -0
- package/lib/Prisma/Internal/AppIdentity.js.map +1 -0
- package/lib/Prisma/Internal/AppPromotion.d.ts +19 -0
- package/lib/Prisma/Internal/AppPromotion.d.ts.map +1 -0
- package/lib/Prisma/Internal/AppPromotion.js +107 -0
- package/lib/Prisma/Internal/AppPromotion.js.map +1 -0
- package/lib/Prisma/Internal/ArchivePlatform.d.ts +42 -0
- package/lib/Prisma/Internal/ArchivePlatform.d.ts.map +1 -0
- package/lib/Prisma/Internal/ArchivePlatform.js +214 -0
- package/lib/Prisma/Internal/ArchivePlatform.js.map +1 -0
- package/lib/Prisma/Internal/ArtifactFile.d.ts +58 -0
- package/lib/Prisma/Internal/ArtifactFile.d.ts.map +1 -0
- package/lib/Prisma/Internal/ArtifactFile.js +134 -0
- package/lib/Prisma/Internal/ArtifactFile.js.map +1 -0
- package/lib/Prisma/Internal/ArtifactUpload.d.ts +5 -0
- package/lib/Prisma/Internal/ArtifactUpload.d.ts.map +1 -0
- package/lib/Prisma/Internal/ArtifactUpload.js +51 -0
- package/lib/Prisma/Internal/ArtifactUpload.js.map +1 -0
- package/lib/Prisma/Internal/BundlePaths.d.ts +4 -0
- package/lib/Prisma/Internal/BundlePaths.d.ts.map +1 -0
- package/lib/Prisma/Internal/BundlePaths.js +16 -0
- package/lib/Prisma/Internal/BundlePaths.js.map +1 -0
- package/lib/Prisma/Internal/CleanupFailure.d.ts +8 -0
- package/lib/Prisma/Internal/CleanupFailure.d.ts.map +1 -0
- package/lib/Prisma/Internal/CleanupFailure.js +8 -0
- package/lib/Prisma/Internal/CleanupFailure.js.map +1 -0
- package/lib/Prisma/Internal/DatabaseSecrets.d.ts +35 -0
- package/lib/Prisma/Internal/DatabaseSecrets.d.ts.map +1 -0
- package/lib/Prisma/Internal/DatabaseSecrets.js +85 -0
- package/lib/Prisma/Internal/DatabaseSecrets.js.map +1 -0
- package/lib/Prisma/Internal/DeploymentActions.d.ts +5 -0
- package/lib/Prisma/Internal/DeploymentActions.d.ts.map +1 -0
- package/lib/Prisma/Internal/DeploymentActions.js +16 -0
- package/lib/Prisma/Internal/DeploymentActions.js.map +1 -0
- package/lib/Prisma/Internal/DeploymentIdentity.d.ts +8 -0
- package/lib/Prisma/Internal/DeploymentIdentity.d.ts.map +1 -0
- package/lib/Prisma/Internal/DeploymentIdentity.js +12 -0
- package/lib/Prisma/Internal/DeploymentIdentity.js.map +1 -0
- package/lib/Prisma/Internal/DeploymentObserve.d.ts +3 -0
- package/lib/Prisma/Internal/DeploymentObserve.d.ts.map +1 -0
- package/lib/Prisma/Internal/DeploymentObserve.js +2 -0
- package/lib/Prisma/Internal/DeploymentObserve.js.map +1 -0
- package/lib/Prisma/Internal/EnvName.d.ts +7 -0
- package/lib/Prisma/Internal/EnvName.d.ts.map +1 -0
- package/lib/Prisma/Internal/EnvName.js +23 -0
- package/lib/Prisma/Internal/EnvName.js.map +1 -0
- package/lib/Prisma/Internal/HttpClient.d.ts +21 -0
- package/lib/Prisma/Internal/HttpClient.d.ts.map +1 -0
- package/lib/Prisma/Internal/HttpClient.js +23 -0
- package/lib/Prisma/Internal/HttpClient.js.map +1 -0
- package/lib/Prisma/Operations.d.ts +143 -0
- package/lib/Prisma/Operations.d.ts.map +1 -0
- package/lib/Prisma/Operations.js +75 -0
- package/lib/Prisma/Operations.js.map +1 -0
- package/lib/Prisma/Postgres.d.ts +24 -0
- package/lib/Prisma/Postgres.d.ts.map +1 -0
- package/lib/Prisma/Postgres.js +23 -0
- package/lib/Prisma/Postgres.js.map +1 -0
- package/lib/Prisma/PostgresOrigin.d.ts +31 -0
- package/lib/Prisma/PostgresOrigin.d.ts.map +1 -0
- package/lib/Prisma/PostgresOrigin.js +30 -0
- package/lib/Prisma/PostgresOrigin.js.map +1 -0
- package/lib/Prisma/PrismaDevDatabase.d.ts +25 -0
- package/lib/Prisma/PrismaDevDatabase.d.ts.map +1 -0
- package/lib/Prisma/PrismaDevDatabase.js +280 -0
- package/lib/Prisma/PrismaDevDatabase.js.map +1 -0
- package/lib/Prisma/PrismaEnvironment.d.ts +14 -0
- package/lib/Prisma/PrismaEnvironment.d.ts.map +1 -0
- package/lib/Prisma/PrismaEnvironment.js +50 -0
- package/lib/Prisma/PrismaEnvironment.js.map +1 -0
- package/lib/Prisma/PrismaLogs.d.ts +42 -0
- package/lib/Prisma/PrismaLogs.d.ts.map +1 -0
- package/lib/Prisma/PrismaLogs.js +318 -0
- package/lib/Prisma/PrismaLogs.js.map +1 -0
- package/lib/Prisma/Project.d.ts +117 -0
- package/lib/Prisma/Project.d.ts.map +1 -0
- package/lib/Prisma/Project.js +361 -0
- package/lib/Prisma/Project.js.map +1 -0
- package/lib/Prisma/Providers.d.ts +61 -0
- package/lib/Prisma/Providers.d.ts.map +1 -0
- package/lib/Prisma/Providers.js +282 -0
- package/lib/Prisma/Providers.js.map +1 -0
- package/lib/Prisma/Refs.d.ts +19 -0
- package/lib/Prisma/Refs.d.ts.map +1 -0
- package/lib/Prisma/Refs.js +25 -0
- package/lib/Prisma/Refs.js.map +1 -0
- package/lib/Prisma/SourceRepository.d.ts +104 -0
- package/lib/Prisma/SourceRepository.d.ts.map +1 -0
- package/lib/Prisma/SourceRepository.js +221 -0
- package/lib/Prisma/SourceRepository.js.map +1 -0
- package/lib/Prisma/Types.d.ts +539 -0
- package/lib/Prisma/Types.d.ts.map +1 -0
- package/lib/Prisma/Types.js +13 -0
- package/lib/Prisma/Types.js.map +1 -0
- package/lib/Prisma/index.d.ts +25 -0
- package/lib/Prisma/index.d.ts.map +1 -0
- package/lib/Prisma/index.js +24 -0
- package/lib/Prisma/index.js.map +1 -0
- package/lib/Provider.d.ts +57 -5
- package/lib/Provider.d.ts.map +1 -1
- package/lib/Provider.js +54 -30
- package/lib/Provider.js.map +1 -1
- package/lib/ProviderMode.d.ts +93 -0
- package/lib/ProviderMode.d.ts.map +1 -0
- package/lib/ProviderMode.js +77 -0
- package/lib/ProviderMode.js.map +1 -0
- package/lib/Resource.d.ts +8 -0
- package/lib/Resource.d.ts.map +1 -1
- package/lib/Resource.js +31 -0
- package/lib/Resource.js.map +1 -1
- package/lib/RuntimeContext.d.ts +7 -0
- package/lib/RuntimeContext.d.ts.map +1 -1
- package/lib/RuntimeContext.js.map +1 -1
- package/lib/Server/Process.d.ts +8 -0
- package/lib/Server/Process.d.ts.map +1 -1
- package/lib/Server/Process.js +29 -0
- package/lib/Server/Process.js.map +1 -1
- package/lib/State/InMemoryState.d.ts.map +1 -1
- package/lib/State/InMemoryState.js +2 -0
- package/lib/State/InMemoryState.js.map +1 -1
- package/lib/State/ResourceState.d.ts +18 -0
- package/lib/State/ResourceState.d.ts.map +1 -1
- package/lib/Sync.d.ts.map +1 -1
- package/lib/Sync.js +8 -2
- package/lib/Sync.js.map +1 -1
- package/lib/Telemetry.d.ts +150 -0
- package/lib/Telemetry.d.ts.map +1 -0
- package/lib/Telemetry.js +512 -0
- package/lib/Telemetry.js.map +1 -0
- package/lib/Test/Alchemy.d.ts.map +1 -1
- package/lib/Test/Alchemy.js +3 -1
- package/lib/Test/Alchemy.js.map +1 -1
- package/lib/Test/Core.d.ts +2 -2
- package/lib/Test/Core.d.ts.map +1 -1
- package/lib/Test/Core.js +1 -8
- package/lib/Test/Core.js.map +1 -1
- package/lib/Util/Clank.d.ts +11 -6
- package/lib/Util/Clank.d.ts.map +1 -1
- package/lib/Util/Clank.js +22 -9
- package/lib/Util/Clank.js.map +1 -1
- package/lib/Util/zip.d.ts +11 -0
- package/lib/Util/zip.d.ts.map +1 -1
- package/lib/Util/zip.js +30 -0
- package/lib/Util/zip.js.map +1 -1
- package/lib/index.d.ts +3 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +3 -0
- package/lib/index.js.map +1 -1
- package/package.json +46 -13
- package/src/AWS/ApiGateway/common.ts +9 -0
- package/src/AWS/Bedrock/LanguageModel.ts +883 -0
- package/src/AWS/Bedrock/LanguageModelHttp.ts +36 -0
- package/src/AWS/Bedrock/index.ts +2 -0
- package/src/AWS/CloudFront/Distribution.ts +116 -6
- package/src/AWS/CostExplorer/common.ts +23 -2
- package/src/AWS/DataSync/Task.ts +30 -15
- package/src/AWS/EC2/Vpc.ts +35 -21
- package/src/AWS/EC2/hosted.ts +10 -2
- package/src/AWS/ECR/ImageSource.ts +10 -2
- package/src/AWS/ECR/Repository.ts +39 -4
- package/src/AWS/ECS/Service.ts +322 -22
- package/src/AWS/ECS/Task.ts +82 -32
- package/src/AWS/EKS/Deployment.ts +10 -2
- package/src/AWS/EKS/Job.ts +10 -2
- package/src/AWS/Lambda/Function.ts +101 -43
- package/src/AWS/Lambda/HttpServer.ts +7 -1
- package/src/AWS/Lambda/LayerVersion.ts +490 -0
- package/src/AWS/Lambda/MicrovmBundle.ts +10 -2
- package/src/AWS/Lambda/index.ts +1 -0
- package/src/AWS/Providers.ts +10 -0
- package/src/AWS/SES/ActiveReceiptRuleSet.ts +88 -0
- package/src/AWS/SES/ReceiptFilter.ts +169 -0
- package/src/AWS/SES/ReceiptRule.ts +300 -0
- package/src/AWS/SES/ReceiptRuleSet.ts +164 -0
- package/src/AWS/SES/SendBounce.ts +44 -0
- package/src/AWS/SES/SendBounceHttp.ts +13 -0
- package/src/AWS/SES/index.ts +6 -0
- package/src/AWS/StateStore/State.ts +159 -42
- package/src/Apply.ts +199 -83
- package/src/Axiom/Telemetry.ts +119 -0
- package/src/Axiom/index.ts +1 -0
- package/src/Bundle/Bundle.ts +17 -7
- package/src/Bundle/BundleAnalyzerPlugin.ts +9 -4
- package/src/Bundle/PurePlugin.ts +19 -9
- package/src/Cli/checkVersion.ts +102 -16
- package/src/Cli/commands/deploy.ts +3 -14
- package/src/Cli/commands/logs.ts +6 -1
- package/src/Cli/commands/tail.ts +6 -1
- package/src/Cli/main.ts +5 -4
- package/src/Cloudflare/AI/Search.ts +4 -18
- package/src/Cloudflare/AI/SearchInstance.ts +7 -26
- package/src/Cloudflare/ApiToken/AccountApiToken.ts +3 -0
- package/src/Cloudflare/Auth/AuthProvider.ts +17 -3
- package/src/Cloudflare/Auth/OAuthClient.ts +58 -2
- package/src/Cloudflare/Containers/Container.ts +92 -3
- package/src/Cloudflare/Containers/ContainerApplication.ts +31 -5
- package/src/Cloudflare/Containers/ContainerBundle.ts +10 -2
- package/src/Cloudflare/Containers/ContainerProvider.ts +62 -0
- package/src/Cloudflare/Credentials.ts +69 -9
- package/src/Cloudflare/D1/ApplyMigrations.ts +72 -77
- package/src/Cloudflare/D1/Database.ts +154 -2
- package/src/Cloudflare/D1/LocalD1Gateway.ts +150 -0
- package/src/Cloudflare/D1/QueryDatabaseHttpClient.ts +49 -11
- package/src/Cloudflare/D1/QueryDatabaseLocal.ts +44 -2
- package/src/Cloudflare/Email/Address.ts +18 -1
- package/src/Cloudflare/Email/SendBinding.ts +1 -0
- package/src/Cloudflare/Email/SendEmail.ts +13 -0
- package/src/Cloudflare/Flagship/App.ts +18 -6
- package/src/Cloudflare/KV/LocalKVGateway.ts +86 -0
- package/src/Cloudflare/KV/Namespace.ts +47 -1
- package/src/Cloudflare/KV/NamespaceLocal.ts +29 -6
- package/src/Cloudflare/KV/ReadNamespaceLocal.ts +5 -1
- package/src/Cloudflare/KV/ReadWriteNamespaceLocal.ts +5 -1
- package/src/Cloudflare/KV/WriteNamespaceLocal.ts +5 -1
- package/src/Cloudflare/LocalGateway.ts +86 -0
- package/src/Cloudflare/LocalRuntime.ts +21 -1
- package/src/Cloudflare/Logs.ts +58 -28
- package/src/Cloudflare/Providers.ts +4 -2
- package/src/Cloudflare/Queues/Consumer.ts +70 -2
- package/src/Cloudflare/Queues/Queue.ts +7 -16
- package/src/Cloudflare/Queues/QueueBinding.ts +21 -0
- package/src/Cloudflare/Queues/QueueShim.ts +193 -0
- package/src/Cloudflare/R2/Bucket.ts +55 -1
- package/src/Cloudflare/R2/BucketBinding.ts +17 -3
- package/src/Cloudflare/R2/BucketLocal.ts +25 -8
- package/src/Cloudflare/R2/LocalR2Gateway.ts +84 -0
- package/src/Cloudflare/R2/ReadBucketLocal.ts +7 -1
- package/src/Cloudflare/R2/ReadWriteBucketLocal.ts +7 -1
- package/src/Cloudflare/R2/WriteBucketLocal.ts +7 -1
- package/src/Cloudflare/Ruleset/AccountEntrypoint.ts +5 -1
- package/src/Cloudflare/Ruleset/Ruleset.ts +20 -6
- package/src/Cloudflare/Rum/Site.ts +11 -4
- package/src/Cloudflare/StateStore/Api.ts +1 -1
- package/src/Cloudflare/Tunnel/Tunnel.ts +23 -1
- package/src/Cloudflare/Website/StaticSite.ts +117 -28
- package/src/Cloudflare/Website/Vite.ts +33 -19
- package/src/Cloudflare/Workers/Compatibility.ts +27 -7
- package/src/Cloudflare/Workers/DurableObject.ts +22 -0
- package/src/Cloudflare/Workers/DurableObjectBridge.ts +29 -10
- package/src/Cloudflare/Workers/InferEnv.ts +74 -59
- package/src/Cloudflare/Workers/LocalWorkerProvider.ts +619 -401
- package/src/Cloudflare/Workers/Worker.ts +676 -28
- package/src/Cloudflare/Workers/WorkerAsyncBindings.ts +209 -25
- package/src/Cloudflare/Workers/WorkerBinding.ts +67 -3
- package/src/Cloudflare/Workers/WorkerBridge.ts +26 -4
- package/src/Cloudflare/Workers/WorkerBundle.ts +6 -1
- package/src/Cloudflare/Workers/WorkerProvider.ts +2269 -277
- package/src/Cloudflare/Workflows/WorkflowBridge.ts +31 -13
- package/src/Command/Build.ts +8 -8
- package/src/Command/Command.ts +217 -42
- package/src/Command/Dev.ts +79 -107
- package/src/Command/Exec.ts +11 -2
- package/src/Command/Memo.ts +27 -3
- package/src/Command/Redaction.ts +181 -0
- package/src/Destroy.ts +1 -10
- package/src/Docker/Container.ts +55 -15
- package/src/Docker/Context.ts +236 -0
- package/src/Docker/Docker.ts +393 -43
- package/src/Docker/Image.ts +28 -7
- package/src/Docker/Network.ts +38 -14
- package/src/Docker/Providers.ts +16 -1
- package/src/Docker/RemoteImage.ts +23 -7
- package/src/Docker/Service.ts +1119 -0
- package/src/Docker/ServiceImage.ts +331 -0
- package/src/Docker/Swarm.ts +226 -0
- package/src/Docker/Volume.ts +25 -6
- package/src/Docker/index.ts +3 -0
- package/src/Http.ts +15 -2
- package/src/Local/LocalProvider.ts +518 -0
- package/src/Local/ProviderLayer.ts +113 -11
- package/src/Local/RpcProvider.ts +10 -5
- package/src/Local/RpcProviderProxy.ts +4 -1
- package/src/Local/RpcServer.ts +20 -2
- package/src/Plan.ts +182 -54
- package/src/Planetscale/AuthProvider.ts +15 -2
- package/src/Planetscale/Branch.ts +39 -6
- package/src/Planetscale/MySQL/MySQLDatabase.ts +34 -6
- package/src/Planetscale/OAuthClient.ts +59 -3
- package/src/Planetscale/Postgres/PostgresDatabase.ts +33 -5
- package/src/Platform.ts +29 -17
- package/src/Prisma/App.ts +420 -0
- package/src/Prisma/AuthProvider.ts +260 -0
- package/src/Prisma/Branch.ts +396 -0
- package/src/Prisma/Client.ts +1337 -0
- package/src/Prisma/Compute.ts +2876 -0
- package/src/Prisma/ComputeArchive.ts +432 -0
- package/src/Prisma/ComputeBuild.ts +1652 -0
- package/src/Prisma/ComputeLifecycle.ts +391 -0
- package/src/Prisma/Connect.ts +410 -0
- package/src/Prisma/Connection.ts +626 -0
- package/src/Prisma/CustomDomain.ts +363 -0
- package/src/Prisma/Database.ts +836 -0
- package/src/Prisma/Deployment.ts +655 -0
- package/src/Prisma/EnvironmentVariable.ts +401 -0
- package/src/Prisma/Internal/AppIdentity.ts +19 -0
- package/src/Prisma/Internal/AppPromotion.ts +172 -0
- package/src/Prisma/Internal/ArchivePlatform.ts +320 -0
- package/src/Prisma/Internal/ArtifactFile.ts +242 -0
- package/src/Prisma/Internal/ArtifactUpload.ts +86 -0
- package/src/Prisma/Internal/BundlePaths.ts +28 -0
- package/src/Prisma/Internal/CleanupFailure.ts +17 -0
- package/src/Prisma/Internal/DatabaseSecrets.ts +175 -0
- package/src/Prisma/Internal/DeploymentActions.ts +59 -0
- package/src/Prisma/Internal/DeploymentIdentity.ts +25 -0
- package/src/Prisma/Internal/DeploymentObserve.ts +6 -0
- package/src/Prisma/Internal/EnvName.ts +24 -0
- package/src/Prisma/Internal/HttpClient.ts +30 -0
- package/src/Prisma/Operations.ts +259 -0
- package/src/Prisma/Postgres.ts +24 -0
- package/src/Prisma/PostgresOrigin.ts +52 -0
- package/src/Prisma/PrismaDevDatabase.ts +395 -0
- package/src/Prisma/PrismaEnvironment.ts +89 -0
- package/src/Prisma/PrismaLogs.ts +434 -0
- package/src/Prisma/Project.ts +681 -0
- package/src/Prisma/Providers.ts +411 -0
- package/src/Prisma/Refs.ts +69 -0
- package/src/Prisma/SourceRepository.ts +432 -0
- package/src/Prisma/Types.ts +611 -0
- package/src/Prisma/index.ts +24 -0
- package/src/Provider.ts +155 -39
- package/src/ProviderMode.ts +123 -0
- package/src/Resource.ts +46 -0
- package/src/RuntimeContext.ts +7 -0
- package/src/Server/Process.ts +33 -0
- package/src/State/InMemoryState.ts +2 -0
- package/src/State/ResourceState.ts +18 -0
- package/src/Sync.ts +14 -2
- package/src/Telemetry.ts +736 -0
- package/src/Test/Alchemy.ts +3 -1
- package/src/Test/Core.ts +1 -8
- package/src/Util/Clank.ts +37 -11
- package/src/Util/zip.ts +39 -0
- package/src/index.ts +3 -0
|
@@ -2,26 +2,35 @@ import * as Effect from "effect/Effect";
|
|
|
2
2
|
import type * as HttpClient from "effect/unstable/http/HttpClient";
|
|
3
3
|
import { CloudflareEnvironment } from "../CloudflareEnvironment.ts";
|
|
4
4
|
import type { Credentials } from "../Credentials.ts";
|
|
5
|
+
import { dispatchByMode } from "../LocalGateway.ts";
|
|
5
6
|
import type { Bucket } from "./Bucket.ts";
|
|
7
|
+
import type { makeHelpers } from "./BucketBinding.ts";
|
|
6
8
|
import type { R2Auth } from "./BucketHttp.ts";
|
|
9
|
+
import { makeProxyBucketHelpers } from "./LocalR2Gateway.ts";
|
|
7
10
|
|
|
8
11
|
/**
|
|
9
12
|
* Shared scaffolding for the R2 `*Local` binding layers.
|
|
10
13
|
*
|
|
11
14
|
* Resolves the account + captures the ambient current-credentials context at
|
|
12
|
-
* layer construction, then returns the deferred binding callable. The
|
|
13
|
-
* reads the bucket name/jurisdiction as deferred accessors
|
|
14
|
-
* time) and builds the
|
|
15
|
-
*
|
|
15
|
+
* layer construction, then returns the deferred binding callable. The
|
|
16
|
+
* callable reads the bucket name/jurisdiction as deferred accessors
|
|
17
|
+
* (resolved at apply time) and builds the client per resolved name:
|
|
18
|
+
*
|
|
19
|
+
* - a REAL name gets the HTTP client (same builders as the `*Http` variant,
|
|
20
|
+
* authorized with the current CLI credentials — no minted token);
|
|
21
|
+
* - a `dev:` name (local emulation under `alchemy dev`) gets the native
|
|
22
|
+
* binding client (same builders as the `*Binding` variant) over a scoped
|
|
23
|
+
* platform-proxy gateway (see `LocalR2Gateway.ts`).
|
|
16
24
|
*
|
|
17
25
|
* NOT exported from `index.ts`.
|
|
18
26
|
*/
|
|
19
|
-
export const makeLocalBucketBinding = <Client>(
|
|
20
|
-
(
|
|
27
|
+
export const makeLocalBucketBinding = <Client extends object>(options: {
|
|
28
|
+
makeHttpClient: (
|
|
21
29
|
auth: R2Auth,
|
|
22
30
|
bucketName: Effect.Effect<string>,
|
|
23
31
|
jurisdiction: Effect.Effect<string>,
|
|
24
|
-
)
|
|
32
|
+
) => Client;
|
|
33
|
+
makeNativeClient: (helpers: ReturnType<typeof makeHelpers>) => Client;
|
|
25
34
|
}) =>
|
|
26
35
|
Effect.gen(function* () {
|
|
27
36
|
// Account + credentials are ambient during stack-eval (the stack's
|
|
@@ -31,6 +40,11 @@ export const makeLocalBucketBinding = <Client>(makeClient: {
|
|
|
31
40
|
const context = yield* Effect.context<
|
|
32
41
|
Credentials | HttpClient.HttpClient
|
|
33
42
|
>();
|
|
43
|
+
// The FULL ambient context, for the dev-mode gateway: booting an
|
|
44
|
+
// ephemeral workerd needs the platform services and the Cloudflare
|
|
45
|
+
// environment, all present during stack-eval but not statically
|
|
46
|
+
// enumerable here.
|
|
47
|
+
const ambient = yield* Effect.context<never>();
|
|
34
48
|
|
|
35
49
|
const auth: R2Auth = {
|
|
36
50
|
authorize: (eff) => eff.pipe(Effect.provideContext(context)),
|
|
@@ -42,6 +56,9 @@ export const makeLocalBucketBinding = <Client>(makeClient: {
|
|
|
42
56
|
// `host.bind`: the local variant registers no binding.
|
|
43
57
|
const bucketName = yield* bucket.bucketName;
|
|
44
58
|
const jurisdiction = yield* bucket.jurisdiction;
|
|
45
|
-
|
|
59
|
+
const httpClient = options.makeHttpClient(auth, bucketName, jurisdiction);
|
|
60
|
+
return dispatchByMode(bucketName, httpClient, (name) =>
|
|
61
|
+
options.makeNativeClient(makeProxyBucketHelpers(name, ambient)),
|
|
62
|
+
);
|
|
46
63
|
});
|
|
47
64
|
});
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Node-side path into the local workerd R2 simulator, built on the
|
|
3
|
+
* runtime's platform proxy (`PlatformProxy.open` — our `getPlatformProxy`).
|
|
4
|
+
*
|
|
5
|
+
* For a `dev:` bucket there is no cloud bucket to speak REST to. Instead,
|
|
6
|
+
* each operation opens a scoped platform proxy hosting the native R2
|
|
7
|
+
* binding and runs against `proxy.env.R2` — the proxy protocol rehydrates
|
|
8
|
+
* `R2Object`/`R2ObjectBody` on the Node side, matching the surface the
|
|
9
|
+
* Worker-binding client builders (`makeRead` / `makeWrite`) consume, so the
|
|
10
|
+
* `*Local` layers reuse those builders verbatim:
|
|
11
|
+
*
|
|
12
|
+
* Node ── proxy.env.R2.get(...) ──▶ r2 service ──▶ R2BucketObject
|
|
13
|
+
*
|
|
14
|
+
* One proxy boot per operation — slow but correct; the `*Local` layers run
|
|
15
|
+
* in deploy-time Actions, not on a request path. Data lands in the same
|
|
16
|
+
* `{storage}/r2` directory every local worker binding reads.
|
|
17
|
+
*
|
|
18
|
+
* NOT exported from `index.ts` — capability-internal scaffolding.
|
|
19
|
+
*/
|
|
20
|
+
import { R2Bucket } from "@distilled.cloud/cloudflare-runtime/bindings";
|
|
21
|
+
import { open } from "@distilled.cloud/cloudflare-runtime/platform-proxy";
|
|
22
|
+
import type * as runtime from "@cloudflare/workers-types";
|
|
23
|
+
import type * as Context from "effect/Context";
|
|
24
|
+
import * as Effect from "effect/Effect";
|
|
25
|
+
import { gatewayName, localGatewayRuntime } from "../LocalGateway.ts";
|
|
26
|
+
import { makeR2ObjectWrappers, type makeHelpers } from "./BucketBinding.ts";
|
|
27
|
+
import { R2Error } from "./BucketTypes.ts";
|
|
28
|
+
|
|
29
|
+
const tryPromise = <T>(fn: () => Promise<T>): Effect.Effect<T, R2Error> =>
|
|
30
|
+
Effect.tryPromise({
|
|
31
|
+
try: fn,
|
|
32
|
+
catch: (error: any) =>
|
|
33
|
+
new R2Error({
|
|
34
|
+
message: error?.message ?? "Unknown error",
|
|
35
|
+
cause: error,
|
|
36
|
+
}),
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* Binding-client helpers backed by a per-operation platform proxy instead
|
|
41
|
+
* of a Worker's `env`. `raw` cannot be satisfied — a native bucket only
|
|
42
|
+
* lives as long as its proxy's scope — so it dies with guidance.
|
|
43
|
+
*/
|
|
44
|
+
export const makeProxyBucketHelpers = (
|
|
45
|
+
bucketName: string,
|
|
46
|
+
/**
|
|
47
|
+
* The FULL ambient stack-eval context: platform services for booting
|
|
48
|
+
* workerd plus `CloudflareEnvironment`/`AlchemyContext` for the runtime
|
|
49
|
+
* layer.
|
|
50
|
+
*/
|
|
51
|
+
ambient: Context.Context<never>,
|
|
52
|
+
): ReturnType<typeof makeHelpers> => {
|
|
53
|
+
const use = <T>(
|
|
54
|
+
fn: (raw: runtime.R2Bucket) => Promise<T>,
|
|
55
|
+
): Effect.Effect<T, R2Error> =>
|
|
56
|
+
Effect.scoped(
|
|
57
|
+
Effect.gen(function* () {
|
|
58
|
+
const proxy = yield* open({
|
|
59
|
+
name: gatewayName("alchemy-r2-gateway", bucketName),
|
|
60
|
+
bindings: [R2Bucket.local({ binding: "R2", id: bucketName })],
|
|
61
|
+
});
|
|
62
|
+
const bucket = (proxy.env as Record<string, unknown>)
|
|
63
|
+
.R2 as runtime.R2Bucket;
|
|
64
|
+
return yield* tryPromise(() => fn(bucket));
|
|
65
|
+
}),
|
|
66
|
+
).pipe(
|
|
67
|
+
Effect.provide(localGatewayRuntime),
|
|
68
|
+
// The gateway layer's platform requirements are satisfied by the
|
|
69
|
+
// ambient stack-eval context; `Context<never>` can't prove that
|
|
70
|
+
// statically, so erase the leftover R (and the proxy's own infra
|
|
71
|
+
// error channel) with a cast — mirroring D1's gateway.
|
|
72
|
+
Effect.provideContext(ambient),
|
|
73
|
+
) as Effect.Effect<T, R2Error>;
|
|
74
|
+
|
|
75
|
+
const raw = Effect.die(
|
|
76
|
+
new R2Error({
|
|
77
|
+
message:
|
|
78
|
+
"A locally-emulated R2 bucket has no long-lived native binding outside a Worker; use put/get/head/list/delete (each runs through a scoped local gateway).",
|
|
79
|
+
cause: new Error("unsupported"),
|
|
80
|
+
}),
|
|
81
|
+
) as Effect.Effect<runtime.R2Bucket>;
|
|
82
|
+
|
|
83
|
+
return { raw, use, tryPromise, ...makeR2ObjectWrappers(tryPromise) };
|
|
84
|
+
};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as Effect from "effect/Effect";
|
|
2
2
|
import * as Layer from "effect/Layer";
|
|
3
3
|
import { makeLocalBucketBinding } from "./BucketLocal.ts";
|
|
4
|
+
import { makeRead } from "./ReadBucketBinding.ts";
|
|
4
5
|
import { ReadBucket } from "./ReadBucket.ts";
|
|
5
6
|
import { makeReadR2HttpClient } from "./ReadBucketHttp.ts";
|
|
6
7
|
|
|
@@ -29,5 +30,10 @@ import { makeReadR2HttpClient } from "./ReadBucketHttp.ts";
|
|
|
29
30
|
*/
|
|
30
31
|
export const ReadBucketLocal = Layer.effect(
|
|
31
32
|
ReadBucket,
|
|
32
|
-
Effect.suspend(() =>
|
|
33
|
+
Effect.suspend(() =>
|
|
34
|
+
makeLocalBucketBinding({
|
|
35
|
+
makeHttpClient: makeReadR2HttpClient,
|
|
36
|
+
makeNativeClient: makeRead,
|
|
37
|
+
}),
|
|
38
|
+
),
|
|
33
39
|
);
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as Effect from "effect/Effect";
|
|
2
2
|
import * as Layer from "effect/Layer";
|
|
3
3
|
import { makeLocalBucketBinding } from "./BucketLocal.ts";
|
|
4
|
+
import { makeReadWrite } from "./ReadWriteBucketBinding.ts";
|
|
4
5
|
import { ReadWriteBucket } from "./ReadWriteBucket.ts";
|
|
5
6
|
import { makeReadWriteR2HttpClient } from "./ReadWriteBucketHttp.ts";
|
|
6
7
|
|
|
@@ -32,5 +33,10 @@ import { makeReadWriteR2HttpClient } from "./ReadWriteBucketHttp.ts";
|
|
|
32
33
|
*/
|
|
33
34
|
export const ReadWriteBucketLocal = Layer.effect(
|
|
34
35
|
ReadWriteBucket,
|
|
35
|
-
Effect.suspend(() =>
|
|
36
|
+
Effect.suspend(() =>
|
|
37
|
+
makeLocalBucketBinding({
|
|
38
|
+
makeHttpClient: makeReadWriteR2HttpClient,
|
|
39
|
+
makeNativeClient: makeReadWrite,
|
|
40
|
+
}),
|
|
41
|
+
),
|
|
36
42
|
);
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as Effect from "effect/Effect";
|
|
2
2
|
import * as Layer from "effect/Layer";
|
|
3
3
|
import { makeLocalBucketBinding } from "./BucketLocal.ts";
|
|
4
|
+
import { makeWrite } from "./WriteBucketBinding.ts";
|
|
4
5
|
import { WriteBucket } from "./WriteBucket.ts";
|
|
5
6
|
import { makeWriteR2HttpClient } from "./WriteBucketHttp.ts";
|
|
6
7
|
|
|
@@ -29,5 +30,10 @@ import { makeWriteR2HttpClient } from "./WriteBucketHttp.ts";
|
|
|
29
30
|
*/
|
|
30
31
|
export const WriteBucketLocal = Layer.effect(
|
|
31
32
|
WriteBucket,
|
|
32
|
-
Effect.suspend(() =>
|
|
33
|
+
Effect.suspend(() =>
|
|
34
|
+
makeLocalBucketBinding({
|
|
35
|
+
makeHttpClient: makeWriteR2HttpClient,
|
|
36
|
+
makeNativeClient: makeWrite,
|
|
37
|
+
}),
|
|
38
|
+
),
|
|
33
39
|
);
|
|
@@ -194,7 +194,11 @@ export const AccountEntrypointProvider = () =>
|
|
|
194
194
|
{ concurrency: 10 },
|
|
195
195
|
);
|
|
196
196
|
return rows.filter(
|
|
197
|
-
(row): row is AccountEntrypointAttributes =>
|
|
197
|
+
(row): row is AccountEntrypointAttributes =>
|
|
198
|
+
// An entrypoint with zero rules is inert — it's what destroy
|
|
199
|
+
// leaves behind after emptying the rules we own. Don't surface
|
|
200
|
+
// it as a resource.
|
|
201
|
+
row !== undefined && row.rules.length > 0,
|
|
198
202
|
);
|
|
199
203
|
}),
|
|
200
204
|
|
|
@@ -156,13 +156,23 @@ export const RulesetProvider = () =>
|
|
|
156
156
|
return toRulesetAttributes(zoneId, ruleset);
|
|
157
157
|
}),
|
|
158
158
|
delete: Effect.fn(function* ({ olds, output }) {
|
|
159
|
+
// This resource owns the entire phase entrypoint, so destroy removes
|
|
160
|
+
// the entrypoint ruleset itself (emptying the rules would leave an
|
|
161
|
+
// inert-but-listed entrypoint behind on the zone forever). Observe
|
|
162
|
+
// first so the delete is idempotent and never acts on a stale id.
|
|
163
|
+
const entrypoint = yield* rulesets
|
|
164
|
+
.getPhasForZone({
|
|
165
|
+
zoneId: output.zoneId,
|
|
166
|
+
rulesetPhase: output.phase ?? olds.phase,
|
|
167
|
+
})
|
|
168
|
+
.pipe(
|
|
169
|
+
Effect.catchTag("RulesetNotFound", () => Effect.succeed(undefined)),
|
|
170
|
+
);
|
|
171
|
+
if (entrypoint === undefined) return;
|
|
159
172
|
yield* rulesets
|
|
160
|
-
.
|
|
173
|
+
.deleteRulesetForZone({
|
|
161
174
|
zoneId: output.zoneId,
|
|
162
|
-
|
|
163
|
-
name: output.name,
|
|
164
|
-
description: output.description,
|
|
165
|
-
rules: [],
|
|
175
|
+
rulesetId: entrypoint.id,
|
|
166
176
|
})
|
|
167
177
|
.pipe(Effect.catchTag("RulesetNotFound", () => Effect.void));
|
|
168
178
|
}),
|
|
@@ -221,7 +231,11 @@ export const RulesetProvider = () =>
|
|
|
221
231
|
),
|
|
222
232
|
Effect.map((items) =>
|
|
223
233
|
items.filter(
|
|
224
|
-
(item): item is Ruleset["Attributes"] =>
|
|
234
|
+
(item): item is Ruleset["Attributes"] =>
|
|
235
|
+
// An entrypoint with zero rules is inert — it's what other
|
|
236
|
+
// owners (e.g. Worker redirect cleanup) leave behind after
|
|
237
|
+
// removing their rules. Don't surface it as a resource.
|
|
238
|
+
item !== undefined && item.rules.length > 0,
|
|
225
239
|
),
|
|
226
240
|
),
|
|
227
241
|
// Plan-gated / partially-provisioned zones reject the route.
|
|
@@ -327,10 +327,17 @@ const findSite = (
|
|
|
327
327
|
Stream.runCollect,
|
|
328
328
|
Effect.map((chunk) =>
|
|
329
329
|
Array.from(chunk)
|
|
330
|
-
.filter(
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
330
|
+
.filter((site) =>
|
|
331
|
+
host !== undefined
|
|
332
|
+
? site.host === host
|
|
333
|
+
: // A zone-identity site has no `host`. Host-scoped sites on the
|
|
334
|
+
// zone's subdomains ALSO carry `ruleset.zoneTag`, so a zone
|
|
335
|
+
// probe must only match true zone sites — otherwise an
|
|
336
|
+
// unrelated host site satisfies the probe and the engine
|
|
337
|
+
// refuses adoption with OwnedBySomeoneElse.
|
|
338
|
+
zoneTag !== undefined &&
|
|
339
|
+
!site.host &&
|
|
340
|
+
site.ruleset?.zoneTag === zoneTag,
|
|
334
341
|
)
|
|
335
342
|
.sort((a, b) => (a.created ?? "").localeCompare(b.created ?? ""))
|
|
336
343
|
.at(0),
|
|
@@ -2,6 +2,7 @@ import * as zeroTrust from "@distilled.cloud/cloudflare/zero-trust";
|
|
|
2
2
|
import * as Effect from "effect/Effect";
|
|
3
3
|
import * as Option from "effect/Option";
|
|
4
4
|
import * as Redacted from "effect/Redacted";
|
|
5
|
+
import * as Schedule from "effect/Schedule";
|
|
5
6
|
import * as Stream from "effect/Stream";
|
|
6
7
|
|
|
7
8
|
import { isResolved } from "../../Diff.ts";
|
|
@@ -322,12 +323,33 @@ export const TunnelProvider = () =>
|
|
|
322
323
|
};
|
|
323
324
|
}),
|
|
324
325
|
delete: Effect.fn(function* ({ output }) {
|
|
326
|
+
// Observe — an already-(soft-)deleted tunnel means nothing to do.
|
|
327
|
+
const observed = yield* zeroTrust
|
|
328
|
+
.getTunnelCloudflared({
|
|
329
|
+
accountId: output.accountId,
|
|
330
|
+
tunnelId: output.tunnelId,
|
|
331
|
+
})
|
|
332
|
+
.pipe(
|
|
333
|
+
Effect.catchTag("TunnelNotFound", () => Effect.succeed(undefined)),
|
|
334
|
+
);
|
|
335
|
+
if (observed === undefined || observed.deletedAt != null) return;
|
|
336
|
+
// Delete — sibling route/config deletions propagate asynchronously and
|
|
337
|
+
// Cloudflare transiently rejects the tunnel delete while they drain.
|
|
338
|
+
// Retry bounded and let a persistent failure surface: a swallowed
|
|
339
|
+
// failure silently leaks the tunnel.
|
|
325
340
|
yield* zeroTrust
|
|
326
341
|
.deleteTunnelCloudflared({
|
|
327
342
|
accountId: output.accountId,
|
|
328
343
|
tunnelId: output.tunnelId,
|
|
329
344
|
})
|
|
330
|
-
.pipe(
|
|
345
|
+
.pipe(
|
|
346
|
+
Effect.retry({
|
|
347
|
+
schedule: Schedule.max([
|
|
348
|
+
Schedule.spaced("3 seconds"),
|
|
349
|
+
Schedule.recurs(10),
|
|
350
|
+
]),
|
|
351
|
+
}),
|
|
352
|
+
);
|
|
331
353
|
}),
|
|
332
354
|
read: Effect.fn(function* ({ id, output, olds }) {
|
|
333
355
|
const { accountId } = yield* yield* CloudflareEnvironment;
|
|
@@ -6,10 +6,15 @@ import * as Command from "../../Command/index.ts";
|
|
|
6
6
|
import type { Input, InputProps } from "../../Input.ts";
|
|
7
7
|
import * as Namespace from "../../Namespace.ts";
|
|
8
8
|
import * as Output from "../../Output.ts";
|
|
9
|
-
import {
|
|
9
|
+
import {
|
|
10
|
+
effectClass,
|
|
11
|
+
isYieldableEffectLike,
|
|
12
|
+
type YieldableEffectLike,
|
|
13
|
+
} from "../../Util/effect.ts";
|
|
10
14
|
import { asEffect } from "../../Util/types.ts";
|
|
11
15
|
import type { Providers } from "../Providers.ts";
|
|
12
16
|
import type { AssetsConfig } from "../Workers/Assets.ts";
|
|
17
|
+
import { isContainerDecl } from "../Workers/WorkerAsyncBindings.ts";
|
|
13
18
|
import {
|
|
14
19
|
Worker,
|
|
15
20
|
type NormalizedBindings,
|
|
@@ -95,13 +100,21 @@ type StaticSiteWorker<Bindings extends WorkerBindingProps> = Worker<{
|
|
|
95
100
|
* @category Workers & Compute
|
|
96
101
|
*
|
|
97
102
|
* @section Basic Usage
|
|
98
|
-
* Point `command` at your build script
|
|
99
|
-
* output
|
|
100
|
-
*
|
|
101
|
-
*
|
|
103
|
+
* Point `command` at your build script and `outdir` at where it writes
|
|
104
|
+
* output. Alchemy runs the command, hashes the output, and deploys it as
|
|
105
|
+
* an assets-only Worker — no Worker code is uploaded, and Cloudflare's
|
|
106
|
+
* asset layer serves every request itself.
|
|
102
107
|
*
|
|
103
|
-
*
|
|
104
|
-
*
|
|
108
|
+
* @example Deploying a Hugo site
|
|
109
|
+
* ```typescript
|
|
110
|
+
* const site = yield* Cloudflare.Website.StaticSite("Blog", {
|
|
111
|
+
* command: "hugo --minify",
|
|
112
|
+
* outdir: "public",
|
|
113
|
+
* });
|
|
114
|
+
* ```
|
|
115
|
+
*
|
|
116
|
+
* Provide `main` to put your own Worker in front of the assets instead.
|
|
117
|
+
* The Worker receives an `ASSETS` binding it can delegate to:
|
|
105
118
|
*
|
|
106
119
|
* ```typescript
|
|
107
120
|
* // src/worker.ts
|
|
@@ -111,7 +124,7 @@ type StaticSiteWorker<Bindings extends WorkerBindingProps> = Worker<{
|
|
|
111
124
|
* };
|
|
112
125
|
* ```
|
|
113
126
|
*
|
|
114
|
-
* @example
|
|
127
|
+
* @example Custom Worker in front of the assets
|
|
115
128
|
* ```typescript
|
|
116
129
|
* const site = yield* Cloudflare.Website.StaticSite("Blog", {
|
|
117
130
|
* command: "hugo --minify",
|
|
@@ -167,6 +180,25 @@ type StaticSiteWorker<Bindings extends WorkerBindingProps> = Worker<{
|
|
|
167
180
|
* });
|
|
168
181
|
* ```
|
|
169
182
|
*
|
|
183
|
+
* @example Rebuilding when a sibling workspace package changes
|
|
184
|
+
* The default scope only hashes files under `cwd` (plus the nearest
|
|
185
|
+
* lockfile), so edits to a sibling workspace package the app imports do
|
|
186
|
+
* not retrigger the build on their own. Add the sibling's sources with a
|
|
187
|
+
* `../` include glob — and keep `lockfile: true`, since providing
|
|
188
|
+
* `include` otherwise drops the lockfile from the hash:
|
|
189
|
+
* ```typescript
|
|
190
|
+
* const site = yield* Cloudflare.Website.StaticSite("Web", {
|
|
191
|
+
* cwd: "apps/web",
|
|
192
|
+
* command: "npm run build",
|
|
193
|
+
* outdir: "dist",
|
|
194
|
+
* main: "./src/worker.ts",
|
|
195
|
+
* memo: {
|
|
196
|
+
* include: ["**\/*", "../../packages/env/src/**"],
|
|
197
|
+
* lockfile: true,
|
|
198
|
+
* },
|
|
199
|
+
* });
|
|
200
|
+
* ```
|
|
201
|
+
*
|
|
170
202
|
* @section Class Form
|
|
171
203
|
* Calling `StaticSite` with no arguments returns a constructor you can
|
|
172
204
|
* `extend` to declare the Worker as a named class. The class is both
|
|
@@ -233,7 +265,7 @@ const makeStaticSite = <
|
|
|
233
265
|
cwd:
|
|
234
266
|
props.dev.cwd ??
|
|
235
267
|
(typeof props.cwd === "string" ? props.cwd : undefined),
|
|
236
|
-
env: serializeEnv(props.dev.env ?? props.env),
|
|
268
|
+
env: yield* serializeEnv(props.dev.env ?? props.env),
|
|
237
269
|
}).pipe(
|
|
238
270
|
Effect.map((d) =>
|
|
239
271
|
Output.map(d.url, (url) => ({
|
|
@@ -250,17 +282,12 @@ const makeStaticSite = <
|
|
|
250
282
|
cwd: props.cwd,
|
|
251
283
|
memo: props.memo,
|
|
252
284
|
outdir: props.outdir,
|
|
253
|
-
env: serializeEnv(props.env),
|
|
285
|
+
env: yield* serializeEnv(props.env),
|
|
254
286
|
});
|
|
255
287
|
|
|
256
|
-
// Pure-static sites
|
|
257
|
-
//
|
|
258
|
-
//
|
|
259
|
-
const fallbackScript =
|
|
260
|
-
props.main == null && props.script == null
|
|
261
|
-
? `export default { fetch: (request, env) => env.ASSETS.fetch(request) };`
|
|
262
|
-
: undefined;
|
|
263
|
-
|
|
288
|
+
// Pure-static sites (neither `main` nor `script`) deploy as
|
|
289
|
+
// assets-only Workers: no script is uploaded and Cloudflare's asset
|
|
290
|
+
// layer serves every request itself.
|
|
264
291
|
return yield* Worker<Bindings, WorkerAssetsConfig, Req>("Worker", {
|
|
265
292
|
...props,
|
|
266
293
|
assets: build
|
|
@@ -274,21 +301,83 @@ const makeStaticSite = <
|
|
|
274
301
|
// is serving the content. The Worker resource still exists in
|
|
275
302
|
// state with a stub Attributes shape.
|
|
276
303
|
dev: dev ? { mode: "external", url: dev.url } : undefined,
|
|
277
|
-
script:
|
|
304
|
+
script: props.script,
|
|
278
305
|
});
|
|
279
306
|
}).pipe(Namespace.push(id));
|
|
280
307
|
|
|
281
|
-
|
|
308
|
+
/**
|
|
309
|
+
* Serialize the site's `env` for the build/dev subprocess. The same record
|
|
310
|
+
* doubles as the Worker's binding props, so entries may be plain strings,
|
|
311
|
+
* `Redacted` secrets, `effect/Config` values, `Output` references, or
|
|
312
|
+
* binding Effects:
|
|
313
|
+
*
|
|
314
|
+
* - strings and `Redacted` values pass through unchanged
|
|
315
|
+
* - `Config` (and any other runnable Effect) is resolved here, at stack
|
|
316
|
+
* construction — passing it through unresolved would hand the subprocess
|
|
317
|
+
* the JSON-serialized `Config` object (`{"_id":"Config"}`) instead of its
|
|
318
|
+
* value (#796)
|
|
319
|
+
* - `Output` references resolve at reconcile; the resolved value is
|
|
320
|
+
* serialized the same way inline values are (an `Output<object>` must
|
|
321
|
+
* reach the subprocess as JSON, not `[object Object]`)
|
|
322
|
+
* - binding Effects (`~alchemy/Kind`-marked, e.g. a `WorkerLoader`) and
|
|
323
|
+
* `Cloudflare.Container` declarations have no env-var representation and
|
|
324
|
+
* are dropped
|
|
325
|
+
* - remaining plain values (`null`, numbers, JSON objects) are stringified
|
|
326
|
+
*/
|
|
327
|
+
const serializeEnv = Effect.fn(function* (
|
|
282
328
|
env: Input<
|
|
283
329
|
| WorkerBindingProps
|
|
284
330
|
| Record<string, string | Redacted.Redacted<string>>
|
|
285
331
|
| undefined
|
|
286
332
|
>,
|
|
287
|
-
)
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
})
|
|
294
|
-
|
|
333
|
+
) {
|
|
334
|
+
const entries: [string, unknown][] = [];
|
|
335
|
+
for (const [k, v] of Object.entries(env ?? {})) {
|
|
336
|
+
if (v === undefined) continue;
|
|
337
|
+
if (typeof v === "string" || Redacted.isRedacted(v)) {
|
|
338
|
+
entries.push([k, v]);
|
|
339
|
+
} else if (Output.isOutput(v)) {
|
|
340
|
+
entries.push([k, Output.map(v, serializeEnvValue)]);
|
|
341
|
+
} else if (isContainerDecl(v)) {
|
|
342
|
+
// A `Cloudflare.Container` declaration is Effect-shaped but is a
|
|
343
|
+
// binding (DO namespace + ContainerApplication) — yielding it would
|
|
344
|
+
// resolve the started-instance tag, which only exists inside a
|
|
345
|
+
// Durable Object (#997). Deploy-time only, nothing to expose to the
|
|
346
|
+
// build subprocess.
|
|
347
|
+
continue;
|
|
348
|
+
} else if (isYieldableEffectLike(v)) {
|
|
349
|
+
const resolved = serializeEnvValue(
|
|
350
|
+
yield* asEffect(v as YieldableEffectLike<unknown, unknown, never>).pipe(
|
|
351
|
+
Effect.orDie,
|
|
352
|
+
),
|
|
353
|
+
);
|
|
354
|
+
if (resolved === undefined) continue;
|
|
355
|
+
entries.push([k, resolved]);
|
|
356
|
+
} else if (v !== null && typeof v === "object" && "~alchemy/Kind" in v) {
|
|
357
|
+
// A binding Effect (e.g. WorkerLoader) — deploy-time only, nothing to
|
|
358
|
+
// expose to the build subprocess.
|
|
359
|
+
continue;
|
|
360
|
+
} else {
|
|
361
|
+
entries.push([k, JSON.stringify(v)]);
|
|
362
|
+
}
|
|
363
|
+
}
|
|
364
|
+
return Object.fromEntries(entries) as Record<
|
|
365
|
+
string,
|
|
366
|
+
string | Redacted.Redacted<string>
|
|
367
|
+
>;
|
|
368
|
+
});
|
|
369
|
+
|
|
370
|
+
/**
|
|
371
|
+
* Serialize one resolved env value for the build/dev subprocess: strings and
|
|
372
|
+
* `Redacted` pass through, everything else becomes JSON.
|
|
373
|
+
*/
|
|
374
|
+
const serializeEnvValue = (
|
|
375
|
+
value: unknown,
|
|
376
|
+
): string | Redacted.Redacted<string> | undefined =>
|
|
377
|
+
value === undefined
|
|
378
|
+
? undefined
|
|
379
|
+
: typeof value === "string"
|
|
380
|
+
? value
|
|
381
|
+
: Redacted.isRedacted(value)
|
|
382
|
+
? (value as Redacted.Redacted<string>)
|
|
383
|
+
: JSON.stringify(value);
|
|
@@ -47,28 +47,34 @@ export interface ViteProps<Bindings extends WorkerBindingProps = {}>
|
|
|
47
47
|
* ```
|
|
48
48
|
*
|
|
49
49
|
* @section SSR Frameworks
|
|
50
|
-
*
|
|
51
|
-
* `nodejs_compat`
|
|
50
|
+
* SSR frameworks like TanStack Start or SolidStart work with a single
|
|
51
|
+
* call — the `nodejs_compat` compatibility flag is enabled by default
|
|
52
|
+
* so the server bundle can use Node.js APIs.
|
|
52
53
|
*
|
|
53
54
|
* @example TanStack Start
|
|
54
55
|
* ```typescript
|
|
55
|
-
* const app = yield* Cloudflare.Website.Vite("TanStackStart"
|
|
56
|
-
* compatibility: {
|
|
57
|
-
* flags: ["nodejs_compat"],
|
|
58
|
-
* },
|
|
59
|
-
* });
|
|
56
|
+
* const app = yield* Cloudflare.Website.Vite("TanStackStart");
|
|
60
57
|
* ```
|
|
61
58
|
*
|
|
62
59
|
* @example SolidStart with worker-first routing
|
|
63
60
|
* ```typescript
|
|
64
61
|
* const app = yield* Cloudflare.Website.Vite("SolidStart", {
|
|
65
|
-
* compatibility: {
|
|
66
|
-
* flags: ["nodejs_compat"],
|
|
67
|
-
* },
|
|
68
62
|
* assets: { runWorkerFirst: true },
|
|
69
63
|
* });
|
|
70
64
|
* ```
|
|
71
65
|
*
|
|
66
|
+
* @example React Router
|
|
67
|
+
* React Router's server build (`virtual:react-router/server-build`) is a
|
|
68
|
+
* build manifest with no default export, so it cannot be deployed as the
|
|
69
|
+
* Worker entry directly. Point `main` at a module that wraps it with
|
|
70
|
+
* `createRequestHandler` (React Router's Cloudflare template ships this
|
|
71
|
+
* as `workers/app.ts`):
|
|
72
|
+
* ```typescript
|
|
73
|
+
* const app = yield* Cloudflare.Website.Vite("ReactRouter", {
|
|
74
|
+
* main: "workers/app.ts",
|
|
75
|
+
* });
|
|
76
|
+
* ```
|
|
77
|
+
*
|
|
72
78
|
* @section React Server Components
|
|
73
79
|
* Frameworks that emit more than one server environment (e.g. React
|
|
74
80
|
* Server Components, which split into an `rsc` environment and an `ssr`
|
|
@@ -80,9 +86,6 @@ export interface ViteProps<Bindings extends WorkerBindingProps = {}>
|
|
|
80
86
|
* @example React Router with RSC
|
|
81
87
|
* ```typescript
|
|
82
88
|
* const app = yield* Cloudflare.Website.Vite("ReactRouterRSC", {
|
|
83
|
-
* compatibility: {
|
|
84
|
-
* flags: ["nodejs_compat"],
|
|
85
|
-
* },
|
|
86
89
|
* viteEnvironments: {
|
|
87
90
|
* entry: "rsc",
|
|
88
91
|
* children: ["ssr"],
|
|
@@ -116,9 +119,6 @@ export interface ViteProps<Bindings extends WorkerBindingProps = {}>
|
|
|
116
119
|
* @example Vue SPA
|
|
117
120
|
* ```typescript
|
|
118
121
|
* const app = yield* Cloudflare.Website.Vite("Vue", {
|
|
119
|
-
* compatibility: {
|
|
120
|
-
* flags: ["nodejs_compat"],
|
|
121
|
-
* },
|
|
122
122
|
* assets: {
|
|
123
123
|
* htmlHandling: "auto-trailing-slash",
|
|
124
124
|
* notFoundHandling: "single-page-application",
|
|
@@ -140,6 +140,22 @@ export interface ViteProps<Bindings extends WorkerBindingProps = {}>
|
|
|
140
140
|
* });
|
|
141
141
|
* ```
|
|
142
142
|
*
|
|
143
|
+
* @example Rebuilding when a sibling workspace package changes
|
|
144
|
+
* The default scope only hashes files under the project root (plus the
|
|
145
|
+
* nearest lockfile), so edits to a sibling workspace package the app
|
|
146
|
+
* imports do not retrigger the build on their own. Add the sibling's
|
|
147
|
+
* sources with a `../` include glob — and keep `lockfile: true`, since
|
|
148
|
+
* providing `include` otherwise drops the lockfile from the hash:
|
|
149
|
+
* ```typescript
|
|
150
|
+
* const site = yield* Cloudflare.Website.Vite("Web", {
|
|
151
|
+
* rootDir: "apps/web",
|
|
152
|
+
* memo: {
|
|
153
|
+
* include: ["**\/*", "../../packages/env/src/**"],
|
|
154
|
+
* lockfile: true,
|
|
155
|
+
* },
|
|
156
|
+
* });
|
|
157
|
+
* ```
|
|
158
|
+
*
|
|
143
159
|
* @section Class Form
|
|
144
160
|
* Calling `Vite` with no arguments returns a constructor you can
|
|
145
161
|
* `extend` to declare the Worker as a named class. The class is both
|
|
@@ -148,9 +164,7 @@ export interface ViteProps<Bindings extends WorkerBindingProps = {}>
|
|
|
148
164
|
*
|
|
149
165
|
* @example Declaring a Worker class
|
|
150
166
|
* ```typescript
|
|
151
|
-
* class Website extends Cloudflare.Website.Vite<Website>()("Website"
|
|
152
|
-
* compatibility: { flags: ["nodejs_compat"] },
|
|
153
|
-
* }) {}
|
|
167
|
+
* class Website extends Cloudflare.Website.Vite<Website>()("Website") {}
|
|
154
168
|
*
|
|
155
169
|
* const site = yield* Website;
|
|
156
170
|
* ```
|