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.
Files changed (950) hide show
  1. package/bin/exec.js +433 -181
  2. package/bin/exec.js.map +1 -1
  3. package/lib/AWS/ApiGateway/common.d.ts.map +1 -1
  4. package/lib/AWS/ApiGateway/common.js +8 -1
  5. package/lib/AWS/ApiGateway/common.js.map +1 -1
  6. package/lib/AWS/Bedrock/LanguageModel.d.ts +208 -0
  7. package/lib/AWS/Bedrock/LanguageModel.d.ts.map +1 -0
  8. package/lib/AWS/Bedrock/LanguageModel.js +508 -0
  9. package/lib/AWS/Bedrock/LanguageModel.js.map +1 -0
  10. package/lib/AWS/Bedrock/LanguageModelHttp.d.ts +10 -0
  11. package/lib/AWS/Bedrock/LanguageModelHttp.d.ts.map +1 -0
  12. package/lib/AWS/Bedrock/LanguageModelHttp.js +26 -0
  13. package/lib/AWS/Bedrock/LanguageModelHttp.js.map +1 -0
  14. package/lib/AWS/Bedrock/index.d.ts +2 -0
  15. package/lib/AWS/Bedrock/index.d.ts.map +1 -1
  16. package/lib/AWS/Bedrock/index.js +2 -0
  17. package/lib/AWS/Bedrock/index.js.map +1 -1
  18. package/lib/AWS/CloudFront/Distribution.d.ts +24 -0
  19. package/lib/AWS/CloudFront/Distribution.d.ts.map +1 -1
  20. package/lib/AWS/CloudFront/Distribution.js +89 -4
  21. package/lib/AWS/CloudFront/Distribution.js.map +1 -1
  22. package/lib/AWS/CostExplorer/AnomalyMonitor.d.ts +1 -1
  23. package/lib/AWS/CostExplorer/AnomalyMonitor.d.ts.map +1 -1
  24. package/lib/AWS/CostExplorer/AnomalySubscription.d.ts +1 -1
  25. package/lib/AWS/CostExplorer/AnomalySubscription.d.ts.map +1 -1
  26. package/lib/AWS/CostExplorer/BindingHttp.d.ts +3 -3
  27. package/lib/AWS/CostExplorer/BindingHttp.d.ts.map +1 -1
  28. package/lib/AWS/CostExplorer/CostCategory.d.ts +1 -1
  29. package/lib/AWS/CostExplorer/CostCategory.d.ts.map +1 -1
  30. package/lib/AWS/CostExplorer/GetAnomaliesHttp.d.ts +1 -1
  31. package/lib/AWS/CostExplorer/GetAnomaliesHttp.d.ts.map +1 -1
  32. package/lib/AWS/CostExplorer/GetApproximateUsageRecordsHttp.d.ts +1 -1
  33. package/lib/AWS/CostExplorer/GetApproximateUsageRecordsHttp.d.ts.map +1 -1
  34. package/lib/AWS/CostExplorer/GetCommitmentPurchaseAnalysisHttp.d.ts +1 -1
  35. package/lib/AWS/CostExplorer/GetCommitmentPurchaseAnalysisHttp.d.ts.map +1 -1
  36. package/lib/AWS/CostExplorer/GetCostAndUsageComparisonsHttp.d.ts +1 -1
  37. package/lib/AWS/CostExplorer/GetCostAndUsageComparisonsHttp.d.ts.map +1 -1
  38. package/lib/AWS/CostExplorer/GetCostAndUsageHttp.d.ts +1 -1
  39. package/lib/AWS/CostExplorer/GetCostAndUsageHttp.d.ts.map +1 -1
  40. package/lib/AWS/CostExplorer/GetCostAndUsageWithResourcesHttp.d.ts +1 -1
  41. package/lib/AWS/CostExplorer/GetCostAndUsageWithResourcesHttp.d.ts.map +1 -1
  42. package/lib/AWS/CostExplorer/GetCostCategoriesHttp.d.ts +1 -1
  43. package/lib/AWS/CostExplorer/GetCostCategoriesHttp.d.ts.map +1 -1
  44. package/lib/AWS/CostExplorer/GetCostComparisonDriversHttp.d.ts +1 -1
  45. package/lib/AWS/CostExplorer/GetCostComparisonDriversHttp.d.ts.map +1 -1
  46. package/lib/AWS/CostExplorer/GetCostForecastHttp.d.ts +1 -1
  47. package/lib/AWS/CostExplorer/GetCostForecastHttp.d.ts.map +1 -1
  48. package/lib/AWS/CostExplorer/GetDimensionValuesHttp.d.ts +1 -1
  49. package/lib/AWS/CostExplorer/GetDimensionValuesHttp.d.ts.map +1 -1
  50. package/lib/AWS/CostExplorer/GetReservationCoverageHttp.d.ts +1 -1
  51. package/lib/AWS/CostExplorer/GetReservationCoverageHttp.d.ts.map +1 -1
  52. package/lib/AWS/CostExplorer/GetReservationPurchaseRecommendationHttp.d.ts +1 -1
  53. package/lib/AWS/CostExplorer/GetReservationPurchaseRecommendationHttp.d.ts.map +1 -1
  54. package/lib/AWS/CostExplorer/GetReservationUtilizationHttp.d.ts +1 -1
  55. package/lib/AWS/CostExplorer/GetReservationUtilizationHttp.d.ts.map +1 -1
  56. package/lib/AWS/CostExplorer/GetRightsizingRecommendationHttp.d.ts +1 -1
  57. package/lib/AWS/CostExplorer/GetRightsizingRecommendationHttp.d.ts.map +1 -1
  58. package/lib/AWS/CostExplorer/GetSavingsPlanPurchaseRecommendationDetailsHttp.d.ts +1 -1
  59. package/lib/AWS/CostExplorer/GetSavingsPlanPurchaseRecommendationDetailsHttp.d.ts.map +1 -1
  60. package/lib/AWS/CostExplorer/GetSavingsPlansCoverageHttp.d.ts +1 -1
  61. package/lib/AWS/CostExplorer/GetSavingsPlansCoverageHttp.d.ts.map +1 -1
  62. package/lib/AWS/CostExplorer/GetSavingsPlansPurchaseRecommendationHttp.d.ts +1 -1
  63. package/lib/AWS/CostExplorer/GetSavingsPlansPurchaseRecommendationHttp.d.ts.map +1 -1
  64. package/lib/AWS/CostExplorer/GetSavingsPlansUtilizationDetailsHttp.d.ts +1 -1
  65. package/lib/AWS/CostExplorer/GetSavingsPlansUtilizationDetailsHttp.d.ts.map +1 -1
  66. package/lib/AWS/CostExplorer/GetSavingsPlansUtilizationHttp.d.ts +1 -1
  67. package/lib/AWS/CostExplorer/GetSavingsPlansUtilizationHttp.d.ts.map +1 -1
  68. package/lib/AWS/CostExplorer/GetTagsHttp.d.ts +1 -1
  69. package/lib/AWS/CostExplorer/GetTagsHttp.d.ts.map +1 -1
  70. package/lib/AWS/CostExplorer/GetUsageForecastHttp.d.ts +1 -1
  71. package/lib/AWS/CostExplorer/GetUsageForecastHttp.d.ts.map +1 -1
  72. package/lib/AWS/CostExplorer/ListCommitmentPurchaseAnalysesHttp.d.ts +1 -1
  73. package/lib/AWS/CostExplorer/ListCommitmentPurchaseAnalysesHttp.d.ts.map +1 -1
  74. package/lib/AWS/CostExplorer/ListCostAllocationTagBackfillHistoryHttp.d.ts +1 -1
  75. package/lib/AWS/CostExplorer/ListCostAllocationTagBackfillHistoryHttp.d.ts.map +1 -1
  76. package/lib/AWS/CostExplorer/ListCostAllocationTagsHttp.d.ts +1 -1
  77. package/lib/AWS/CostExplorer/ListCostAllocationTagsHttp.d.ts.map +1 -1
  78. package/lib/AWS/CostExplorer/ListCostCategoryResourceAssociationsHttp.d.ts +1 -1
  79. package/lib/AWS/CostExplorer/ListCostCategoryResourceAssociationsHttp.d.ts.map +1 -1
  80. package/lib/AWS/CostExplorer/ListSavingsPlansPurchaseRecommendationGenerationHttp.d.ts +1 -1
  81. package/lib/AWS/CostExplorer/ListSavingsPlansPurchaseRecommendationGenerationHttp.d.ts.map +1 -1
  82. package/lib/AWS/CostExplorer/ProvideAnomalyFeedbackHttp.d.ts +1 -1
  83. package/lib/AWS/CostExplorer/ProvideAnomalyFeedbackHttp.d.ts.map +1 -1
  84. package/lib/AWS/CostExplorer/StartCommitmentPurchaseAnalysisHttp.d.ts +1 -1
  85. package/lib/AWS/CostExplorer/StartCommitmentPurchaseAnalysisHttp.d.ts.map +1 -1
  86. package/lib/AWS/CostExplorer/StartCostAllocationTagBackfillHttp.d.ts +1 -1
  87. package/lib/AWS/CostExplorer/StartCostAllocationTagBackfillHttp.d.ts.map +1 -1
  88. package/lib/AWS/CostExplorer/StartSavingsPlansPurchaseRecommendationGenerationHttp.d.ts +1 -1
  89. package/lib/AWS/CostExplorer/StartSavingsPlansPurchaseRecommendationGenerationHttp.d.ts.map +1 -1
  90. package/lib/AWS/CostExplorer/UpdateCostAllocationTagsStatusHttp.d.ts +1 -1
  91. package/lib/AWS/CostExplorer/UpdateCostAllocationTagsStatusHttp.d.ts.map +1 -1
  92. package/lib/AWS/CostExplorer/common.d.ts +5 -3
  93. package/lib/AWS/CostExplorer/common.d.ts.map +1 -1
  94. package/lib/AWS/CostExplorer/common.js +16 -1
  95. package/lib/AWS/CostExplorer/common.js.map +1 -1
  96. package/lib/AWS/DataSync/Task.d.ts.map +1 -1
  97. package/lib/AWS/DataSync/Task.js +16 -2
  98. package/lib/AWS/DataSync/Task.js.map +1 -1
  99. package/lib/AWS/EC2/Vpc.d.ts.map +1 -1
  100. package/lib/AWS/EC2/Vpc.js +15 -2
  101. package/lib/AWS/EC2/Vpc.js.map +1 -1
  102. package/lib/AWS/EC2/hosted.d.ts.map +1 -1
  103. package/lib/AWS/EC2/hosted.js +10 -2
  104. package/lib/AWS/EC2/hosted.js.map +1 -1
  105. package/lib/AWS/ECR/Image.d.ts +132 -13
  106. package/lib/AWS/ECR/Image.d.ts.map +1 -1
  107. package/lib/AWS/ECR/ImageSource.d.ts.map +1 -1
  108. package/lib/AWS/ECR/ImageSource.js +10 -2
  109. package/lib/AWS/ECR/ImageSource.js.map +1 -1
  110. package/lib/AWS/ECR/Repository.d.ts +2 -0
  111. package/lib/AWS/ECR/Repository.d.ts.map +1 -1
  112. package/lib/AWS/ECR/Repository.js +28 -3
  113. package/lib/AWS/ECR/Repository.js.map +1 -1
  114. package/lib/AWS/ECS/Service.d.ts +27 -1
  115. package/lib/AWS/ECS/Service.d.ts.map +1 -1
  116. package/lib/AWS/ECS/Service.js +184 -22
  117. package/lib/AWS/ECS/Service.js.map +1 -1
  118. package/lib/AWS/ECS/Task.d.ts +32 -8
  119. package/lib/AWS/ECS/Task.d.ts.map +1 -1
  120. package/lib/AWS/ECS/Task.js +62 -29
  121. package/lib/AWS/ECS/Task.js.map +1 -1
  122. package/lib/AWS/EKS/Deployment.d.ts.map +1 -1
  123. package/lib/AWS/EKS/Deployment.js +10 -2
  124. package/lib/AWS/EKS/Deployment.js.map +1 -1
  125. package/lib/AWS/EKS/Job.d.ts.map +1 -1
  126. package/lib/AWS/EKS/Job.js +10 -2
  127. package/lib/AWS/EKS/Job.js.map +1 -1
  128. package/lib/AWS/Lambda/Function.d.ts +15 -0
  129. package/lib/AWS/Lambda/Function.d.ts.map +1 -1
  130. package/lib/AWS/Lambda/Function.js +67 -29
  131. package/lib/AWS/Lambda/Function.js.map +1 -1
  132. package/lib/AWS/Lambda/HttpServer.d.ts.map +1 -1
  133. package/lib/AWS/Lambda/HttpServer.js +7 -1
  134. package/lib/AWS/Lambda/HttpServer.js.map +1 -1
  135. package/lib/AWS/Lambda/LayerVersion.d.ts +176 -0
  136. package/lib/AWS/Lambda/LayerVersion.d.ts.map +1 -0
  137. package/lib/AWS/Lambda/LayerVersion.js +288 -0
  138. package/lib/AWS/Lambda/LayerVersion.js.map +1 -0
  139. package/lib/AWS/Lambda/MicrovmBundle.d.ts.map +1 -1
  140. package/lib/AWS/Lambda/MicrovmBundle.js +10 -2
  141. package/lib/AWS/Lambda/MicrovmBundle.js.map +1 -1
  142. package/lib/AWS/Lambda/index.d.ts +1 -0
  143. package/lib/AWS/Lambda/index.d.ts.map +1 -1
  144. package/lib/AWS/Lambda/index.js +1 -0
  145. package/lib/AWS/Lambda/index.js.map +1 -1
  146. package/lib/AWS/Providers.d.ts.map +1 -1
  147. package/lib/AWS/Providers.js +6 -1
  148. package/lib/AWS/Providers.js.map +1 -1
  149. package/lib/AWS/SES/ActiveReceiptRuleSet.d.ts +40 -0
  150. package/lib/AWS/SES/ActiveReceiptRuleSet.d.ts.map +1 -0
  151. package/lib/AWS/SES/ActiveReceiptRuleSet.js +58 -0
  152. package/lib/AWS/SES/ActiveReceiptRuleSet.js.map +1 -0
  153. package/lib/AWS/SES/ReceiptFilter.d.ts +67 -0
  154. package/lib/AWS/SES/ReceiptFilter.d.ts.map +1 -0
  155. package/lib/AWS/SES/ReceiptFilter.js +92 -0
  156. package/lib/AWS/SES/ReceiptFilter.js.map +1 -0
  157. package/lib/AWS/SES/ReceiptRule.d.ts +133 -0
  158. package/lib/AWS/SES/ReceiptRule.d.ts.map +1 -0
  159. package/lib/AWS/SES/ReceiptRule.js +178 -0
  160. package/lib/AWS/SES/ReceiptRule.js.map +1 -0
  161. package/lib/AWS/SES/ReceiptRuleSet.d.ts +55 -0
  162. package/lib/AWS/SES/ReceiptRuleSet.d.ts.map +1 -0
  163. package/lib/AWS/SES/ReceiptRuleSet.js +112 -0
  164. package/lib/AWS/SES/ReceiptRuleSet.js.map +1 -0
  165. package/lib/AWS/SES/SendBounce.d.ts +37 -0
  166. package/lib/AWS/SES/SendBounce.d.ts.map +1 -0
  167. package/lib/AWS/SES/SendBounce.js +3 -0
  168. package/lib/AWS/SES/SendBounce.js.map +1 -0
  169. package/lib/AWS/SES/SendBounceHttp.d.ts +4 -0
  170. package/lib/AWS/SES/SendBounceHttp.d.ts.map +1 -0
  171. package/lib/AWS/SES/SendBounceHttp.js +10 -0
  172. package/lib/AWS/SES/SendBounceHttp.js.map +1 -0
  173. package/lib/AWS/SES/index.d.ts +6 -0
  174. package/lib/AWS/SES/index.d.ts.map +1 -1
  175. package/lib/AWS/SES/index.js +6 -0
  176. package/lib/AWS/SES/index.js.map +1 -1
  177. package/lib/AWS/StateStore/State.d.ts +11 -0
  178. package/lib/AWS/StateStore/State.d.ts.map +1 -1
  179. package/lib/AWS/StateStore/State.js +117 -38
  180. package/lib/AWS/StateStore/State.js.map +1 -1
  181. package/lib/Apply.d.ts +37 -1
  182. package/lib/Apply.d.ts.map +1 -1
  183. package/lib/Apply.js +270 -194
  184. package/lib/Apply.js.map +1 -1
  185. package/lib/Axiom/Telemetry.d.ts +66 -0
  186. package/lib/Axiom/Telemetry.d.ts.map +1 -0
  187. package/lib/Axiom/Telemetry.js +69 -0
  188. package/lib/Axiom/Telemetry.js.map +1 -0
  189. package/lib/Axiom/index.d.ts +1 -0
  190. package/lib/Axiom/index.d.ts.map +1 -1
  191. package/lib/Axiom/index.js +1 -0
  192. package/lib/Axiom/index.js.map +1 -1
  193. package/lib/Bundle/Bundle.d.ts +1 -1
  194. package/lib/Bundle/Bundle.d.ts.map +1 -1
  195. package/lib/Bundle/Bundle.js +14 -6
  196. package/lib/Bundle/Bundle.js.map +1 -1
  197. package/lib/Bundle/BundleAnalyzerPlugin.d.ts +1 -1
  198. package/lib/Bundle/BundleAnalyzerPlugin.d.ts.map +1 -1
  199. package/lib/Bundle/BundleAnalyzerPlugin.js +10 -5
  200. package/lib/Bundle/BundleAnalyzerPlugin.js.map +1 -1
  201. package/lib/Bundle/PurePlugin.d.ts +1 -1
  202. package/lib/Bundle/PurePlugin.d.ts.map +1 -1
  203. package/lib/Bundle/PurePlugin.js +15 -7
  204. package/lib/Bundle/PurePlugin.js.map +1 -1
  205. package/lib/Cli/checkVersion.d.ts +11 -5
  206. package/lib/Cli/checkVersion.d.ts.map +1 -1
  207. package/lib/Cli/checkVersion.js +73 -12
  208. package/lib/Cli/checkVersion.js.map +1 -1
  209. package/lib/Cli/commands/cloudflare.d.ts +1 -1
  210. package/lib/Cli/commands/deploy.d.ts.map +1 -1
  211. package/lib/Cli/commands/deploy.js +3 -11
  212. package/lib/Cli/commands/deploy.js.map +1 -1
  213. package/lib/Cli/commands/logs.d.ts.map +1 -1
  214. package/lib/Cli/commands/logs.js +3 -1
  215. package/lib/Cli/commands/logs.js.map +1 -1
  216. package/lib/Cli/commands/tail.d.ts.map +1 -1
  217. package/lib/Cli/commands/tail.js +3 -1
  218. package/lib/Cli/commands/tail.js.map +1 -1
  219. package/lib/Cli/main.d.ts.map +1 -1
  220. package/lib/Cli/main.js +5 -4
  221. package/lib/Cli/main.js.map +1 -1
  222. package/lib/Cloudflare/AI/Search.d.ts +4 -15
  223. package/lib/Cloudflare/AI/Search.d.ts.map +1 -1
  224. package/lib/Cloudflare/AI/Search.js +4 -6
  225. package/lib/Cloudflare/AI/Search.js.map +1 -1
  226. package/lib/Cloudflare/AI/SearchInstance.d.ts +7 -26
  227. package/lib/Cloudflare/AI/SearchInstance.d.ts.map +1 -1
  228. package/lib/Cloudflare/AI/SearchInstance.js +7 -26
  229. package/lib/Cloudflare/AI/SearchInstance.js.map +1 -1
  230. package/lib/Cloudflare/ApiToken/AccountApiToken.d.ts +3 -0
  231. package/lib/Cloudflare/ApiToken/AccountApiToken.d.ts.map +1 -1
  232. package/lib/Cloudflare/ApiToken/AccountApiToken.js +3 -0
  233. package/lib/Cloudflare/ApiToken/AccountApiToken.js.map +1 -1
  234. package/lib/Cloudflare/Auth/AuthProvider.d.ts +2 -1
  235. package/lib/Cloudflare/Auth/AuthProvider.d.ts.map +1 -1
  236. package/lib/Cloudflare/Auth/AuthProvider.js +8 -3
  237. package/lib/Cloudflare/Auth/AuthProvider.js.map +1 -1
  238. package/lib/Cloudflare/Auth/OAuthClient.d.ts +5 -0
  239. package/lib/Cloudflare/Auth/OAuthClient.d.ts.map +1 -1
  240. package/lib/Cloudflare/Auth/OAuthClient.js +50 -4
  241. package/lib/Cloudflare/Auth/OAuthClient.js.map +1 -1
  242. package/lib/Cloudflare/Containers/Container.d.ts +81 -3
  243. package/lib/Cloudflare/Containers/Container.d.ts.map +1 -1
  244. package/lib/Cloudflare/Containers/Container.js +70 -0
  245. package/lib/Cloudflare/Containers/Container.js.map +1 -1
  246. package/lib/Cloudflare/Containers/ContainerApplication.d.ts +22 -1
  247. package/lib/Cloudflare/Containers/ContainerApplication.d.ts.map +1 -1
  248. package/lib/Cloudflare/Containers/ContainerApplication.js +4 -1
  249. package/lib/Cloudflare/Containers/ContainerApplication.js.map +1 -1
  250. package/lib/Cloudflare/Containers/ContainerBundle.d.ts.map +1 -1
  251. package/lib/Cloudflare/Containers/ContainerBundle.js +10 -2
  252. package/lib/Cloudflare/Containers/ContainerBundle.js.map +1 -1
  253. package/lib/Cloudflare/Containers/ContainerProvider.d.ts.map +1 -1
  254. package/lib/Cloudflare/Containers/ContainerProvider.js +43 -0
  255. package/lib/Cloudflare/Containers/ContainerProvider.js.map +1 -1
  256. package/lib/Cloudflare/Credentials.d.ts +21 -1
  257. package/lib/Cloudflare/Credentials.d.ts.map +1 -1
  258. package/lib/Cloudflare/Credentials.js +52 -9
  259. package/lib/Cloudflare/Credentials.js.map +1 -1
  260. package/lib/Cloudflare/D1/ApplyMigrations.d.ts +30 -5
  261. package/lib/Cloudflare/D1/ApplyMigrations.d.ts.map +1 -1
  262. package/lib/Cloudflare/D1/ApplyMigrations.js +36 -26
  263. package/lib/Cloudflare/D1/ApplyMigrations.js.map +1 -1
  264. package/lib/Cloudflare/D1/Database.d.ts +18 -1
  265. package/lib/Cloudflare/D1/Database.d.ts.map +1 -1
  266. package/lib/Cloudflare/D1/Database.js +134 -2
  267. package/lib/Cloudflare/D1/Database.js.map +1 -1
  268. package/lib/Cloudflare/D1/LocalD1Gateway.d.ts +39 -0
  269. package/lib/Cloudflare/D1/LocalD1Gateway.d.ts.map +1 -0
  270. package/lib/Cloudflare/D1/LocalD1Gateway.js +100 -0
  271. package/lib/Cloudflare/D1/LocalD1Gateway.js.map +1 -0
  272. package/lib/Cloudflare/D1/QueryDatabaseHttpClient.d.ts +31 -0
  273. package/lib/Cloudflare/D1/QueryDatabaseHttpClient.d.ts.map +1 -1
  274. package/lib/Cloudflare/D1/QueryDatabaseHttpClient.js +13 -6
  275. package/lib/Cloudflare/D1/QueryDatabaseHttpClient.js.map +1 -1
  276. package/lib/Cloudflare/D1/QueryDatabaseLocal.d.ts.map +1 -1
  277. package/lib/Cloudflare/D1/QueryDatabaseLocal.js +21 -2
  278. package/lib/Cloudflare/D1/QueryDatabaseLocal.js.map +1 -1
  279. package/lib/Cloudflare/Email/Address.d.ts.map +1 -1
  280. package/lib/Cloudflare/Email/Address.js +15 -1
  281. package/lib/Cloudflare/Email/Address.js.map +1 -1
  282. package/lib/Cloudflare/Email/SendBinding.d.ts.map +1 -1
  283. package/lib/Cloudflare/Email/SendBinding.js +1 -0
  284. package/lib/Cloudflare/Email/SendBinding.js.map +1 -1
  285. package/lib/Cloudflare/Email/SendEmail.d.ts +12 -0
  286. package/lib/Cloudflare/Email/SendEmail.d.ts.map +1 -1
  287. package/lib/Cloudflare/Email/SendEmail.js +1 -0
  288. package/lib/Cloudflare/Email/SendEmail.js.map +1 -1
  289. package/lib/Cloudflare/Flagship/App.d.ts.map +1 -1
  290. package/lib/Cloudflare/Flagship/App.js +8 -3
  291. package/lib/Cloudflare/Flagship/App.js.map +1 -1
  292. package/lib/Cloudflare/KV/LocalKVGateway.d.ts +15 -0
  293. package/lib/Cloudflare/KV/LocalKVGateway.d.ts.map +1 -0
  294. package/lib/Cloudflare/KV/LocalKVGateway.js +64 -0
  295. package/lib/Cloudflare/KV/LocalKVGateway.js.map +1 -0
  296. package/lib/Cloudflare/KV/Namespace.d.ts +9 -1
  297. package/lib/Cloudflare/KV/Namespace.d.ts.map +1 -1
  298. package/lib/Cloudflare/KV/Namespace.js +45 -1
  299. package/lib/Cloudflare/KV/Namespace.js.map +1 -1
  300. package/lib/Cloudflare/KV/NamespaceLocal.d.ts +16 -5
  301. package/lib/Cloudflare/KV/NamespaceLocal.d.ts.map +1 -1
  302. package/lib/Cloudflare/KV/NamespaceLocal.js +21 -4
  303. package/lib/Cloudflare/KV/NamespaceLocal.js.map +1 -1
  304. package/lib/Cloudflare/KV/ReadNamespaceLocal.d.ts.map +1 -1
  305. package/lib/Cloudflare/KV/ReadNamespaceLocal.js +5 -1
  306. package/lib/Cloudflare/KV/ReadNamespaceLocal.js.map +1 -1
  307. package/lib/Cloudflare/KV/ReadWriteNamespaceLocal.d.ts.map +1 -1
  308. package/lib/Cloudflare/KV/ReadWriteNamespaceLocal.js +5 -1
  309. package/lib/Cloudflare/KV/ReadWriteNamespaceLocal.js.map +1 -1
  310. package/lib/Cloudflare/KV/WriteNamespaceLocal.d.ts.map +1 -1
  311. package/lib/Cloudflare/KV/WriteNamespaceLocal.js +5 -1
  312. package/lib/Cloudflare/KV/WriteNamespaceLocal.js.map +1 -1
  313. package/lib/Cloudflare/LocalGateway.d.ts +25 -0
  314. package/lib/Cloudflare/LocalGateway.d.ts.map +1 -0
  315. package/lib/Cloudflare/LocalGateway.js +70 -0
  316. package/lib/Cloudflare/LocalGateway.js.map +1 -0
  317. package/lib/Cloudflare/LocalRuntime.d.ts +14 -1
  318. package/lib/Cloudflare/LocalRuntime.d.ts.map +1 -1
  319. package/lib/Cloudflare/LocalRuntime.js +16 -1
  320. package/lib/Cloudflare/LocalRuntime.js.map +1 -1
  321. package/lib/Cloudflare/Logs.d.ts.map +1 -1
  322. package/lib/Cloudflare/Logs.js +18 -6
  323. package/lib/Cloudflare/Logs.js.map +1 -1
  324. package/lib/Cloudflare/Providers.d.ts +1 -1
  325. package/lib/Cloudflare/Providers.d.ts.map +1 -1
  326. package/lib/Cloudflare/Providers.js +6 -2
  327. package/lib/Cloudflare/Providers.js.map +1 -1
  328. package/lib/Cloudflare/Queues/Consumer.d.ts +16 -3
  329. package/lib/Cloudflare/Queues/Consumer.d.ts.map +1 -1
  330. package/lib/Cloudflare/Queues/Consumer.js +51 -3
  331. package/lib/Cloudflare/Queues/Consumer.js.map +1 -1
  332. package/lib/Cloudflare/Queues/Queue.d.ts +4 -3
  333. package/lib/Cloudflare/Queues/Queue.d.ts.map +1 -1
  334. package/lib/Cloudflare/Queues/Queue.js +7 -17
  335. package/lib/Cloudflare/Queues/Queue.js.map +1 -1
  336. package/lib/Cloudflare/Queues/QueueBinding.d.ts.map +1 -1
  337. package/lib/Cloudflare/Queues/QueueBinding.js +19 -0
  338. package/lib/Cloudflare/Queues/QueueBinding.js.map +1 -1
  339. package/lib/Cloudflare/Queues/QueueShim.d.ts +55 -0
  340. package/lib/Cloudflare/Queues/QueueShim.d.ts.map +1 -0
  341. package/lib/Cloudflare/Queues/QueueShim.js +177 -0
  342. package/lib/Cloudflare/Queues/QueueShim.js.map +1 -0
  343. package/lib/Cloudflare/R2/Bucket.d.ts +14 -1
  344. package/lib/Cloudflare/R2/Bucket.d.ts.map +1 -1
  345. package/lib/Cloudflare/R2/Bucket.js +53 -1
  346. package/lib/Cloudflare/R2/Bucket.js.map +1 -1
  347. package/lib/Cloudflare/R2/BucketBinding.d.ts +10 -0
  348. package/lib/Cloudflare/R2/BucketBinding.d.ts.map +1 -1
  349. package/lib/Cloudflare/R2/BucketBinding.js +14 -3
  350. package/lib/Cloudflare/R2/BucketBinding.js.map +1 -1
  351. package/lib/Cloudflare/R2/BucketLocal.d.ts +13 -6
  352. package/lib/Cloudflare/R2/BucketLocal.d.ts.map +1 -1
  353. package/lib/Cloudflare/R2/BucketLocal.js +19 -6
  354. package/lib/Cloudflare/R2/BucketLocal.js.map +1 -1
  355. package/lib/Cloudflare/R2/LocalR2Gateway.d.ts +15 -0
  356. package/lib/Cloudflare/R2/LocalR2Gateway.d.ts.map +1 -0
  357. package/lib/Cloudflare/R2/LocalR2Gateway.js +65 -0
  358. package/lib/Cloudflare/R2/LocalR2Gateway.js.map +1 -0
  359. package/lib/Cloudflare/R2/ReadBucketLocal.d.ts.map +1 -1
  360. package/lib/Cloudflare/R2/ReadBucketLocal.js +5 -1
  361. package/lib/Cloudflare/R2/ReadBucketLocal.js.map +1 -1
  362. package/lib/Cloudflare/R2/ReadWriteBucketLocal.d.ts.map +1 -1
  363. package/lib/Cloudflare/R2/ReadWriteBucketLocal.js +5 -1
  364. package/lib/Cloudflare/R2/ReadWriteBucketLocal.js.map +1 -1
  365. package/lib/Cloudflare/R2/WriteBucketLocal.d.ts.map +1 -1
  366. package/lib/Cloudflare/R2/WriteBucketLocal.js +5 -1
  367. package/lib/Cloudflare/R2/WriteBucketLocal.js.map +1 -1
  368. package/lib/Cloudflare/Ruleset/AccountEntrypoint.d.ts.map +1 -1
  369. package/lib/Cloudflare/Ruleset/AccountEntrypoint.js +5 -1
  370. package/lib/Cloudflare/Ruleset/AccountEntrypoint.js.map +1 -1
  371. package/lib/Cloudflare/Ruleset/Ruleset.d.ts.map +1 -1
  372. package/lib/Cloudflare/Ruleset/Ruleset.js +19 -6
  373. package/lib/Cloudflare/Ruleset/Ruleset.js.map +1 -1
  374. package/lib/Cloudflare/Rum/Site.js +10 -2
  375. package/lib/Cloudflare/Rum/Site.js.map +1 -1
  376. package/lib/Cloudflare/StateStore/Api.d.ts +31 -2
  377. package/lib/Cloudflare/StateStore/Api.js +1 -1
  378. package/lib/Cloudflare/StateStore/Api.js.map +1 -1
  379. package/lib/Cloudflare/StateStore/State.d.ts +1 -1
  380. package/lib/Cloudflare/StateStore/State.d.ts.map +1 -1
  381. package/lib/Cloudflare/Tunnel/Tunnel.d.ts.map +1 -1
  382. package/lib/Cloudflare/Tunnel/Tunnel.js +20 -1
  383. package/lib/Cloudflare/Tunnel/Tunnel.js.map +1 -1
  384. package/lib/Cloudflare/Website/StaticSite.d.ts +34 -7
  385. package/lib/Cloudflare/Website/StaticSite.d.ts.map +1 -1
  386. package/lib/Cloudflare/Website/StaticSite.js +108 -24
  387. package/lib/Cloudflare/Website/StaticSite.js.map +1 -1
  388. package/lib/Cloudflare/Website/Vite.d.ts +33 -19
  389. package/lib/Cloudflare/Website/Vite.d.ts.map +1 -1
  390. package/lib/Cloudflare/Website/Vite.js +33 -19
  391. package/lib/Cloudflare/Website/Vite.js.map +1 -1
  392. package/lib/Cloudflare/Workers/Compatibility.d.ts.map +1 -1
  393. package/lib/Cloudflare/Workers/Compatibility.js +26 -7
  394. package/lib/Cloudflare/Workers/Compatibility.js.map +1 -1
  395. package/lib/Cloudflare/Workers/DurableObject.d.ts +22 -0
  396. package/lib/Cloudflare/Workers/DurableObject.d.ts.map +1 -1
  397. package/lib/Cloudflare/Workers/DurableObject.js +22 -0
  398. package/lib/Cloudflare/Workers/DurableObject.js.map +1 -1
  399. package/lib/Cloudflare/Workers/DurableObjectBridge.d.ts.map +1 -1
  400. package/lib/Cloudflare/Workers/DurableObjectBridge.js +20 -5
  401. package/lib/Cloudflare/Workers/DurableObjectBridge.js.map +1 -1
  402. package/lib/Cloudflare/Workers/InferEnv.d.ts +4 -2
  403. package/lib/Cloudflare/Workers/InferEnv.d.ts.map +1 -1
  404. package/lib/Cloudflare/Workers/LocalWorkerProvider.d.ts +7 -3
  405. package/lib/Cloudflare/Workers/LocalWorkerProvider.d.ts.map +1 -1
  406. package/lib/Cloudflare/Workers/LocalWorkerProvider.js +483 -298
  407. package/lib/Cloudflare/Workers/LocalWorkerProvider.js.map +1 -1
  408. package/lib/Cloudflare/Workers/Worker.d.ts +612 -13
  409. package/lib/Cloudflare/Workers/Worker.d.ts.map +1 -1
  410. package/lib/Cloudflare/Workers/Worker.js +222 -1
  411. package/lib/Cloudflare/Workers/Worker.js.map +1 -1
  412. package/lib/Cloudflare/Workers/WorkerAsyncBindings.d.ts +13 -1
  413. package/lib/Cloudflare/Workers/WorkerAsyncBindings.d.ts.map +1 -1
  414. package/lib/Cloudflare/Workers/WorkerAsyncBindings.js +171 -21
  415. package/lib/Cloudflare/Workers/WorkerAsyncBindings.js.map +1 -1
  416. package/lib/Cloudflare/Workers/WorkerBinding.d.ts +130 -28
  417. package/lib/Cloudflare/Workers/WorkerBinding.d.ts.map +1 -1
  418. package/lib/Cloudflare/Workers/WorkerBinding.js.map +1 -1
  419. package/lib/Cloudflare/Workers/WorkerBridge.d.ts +6 -2
  420. package/lib/Cloudflare/Workers/WorkerBridge.d.ts.map +1 -1
  421. package/lib/Cloudflare/Workers/WorkerBridge.js +18 -2
  422. package/lib/Cloudflare/Workers/WorkerBridge.js.map +1 -1
  423. package/lib/Cloudflare/Workers/WorkerBundle.d.ts.map +1 -1
  424. package/lib/Cloudflare/Workers/WorkerBundle.js +4 -1
  425. package/lib/Cloudflare/Workers/WorkerBundle.js.map +1 -1
  426. package/lib/Cloudflare/Workers/WorkerProvider.d.ts +186 -11
  427. package/lib/Cloudflare/Workers/WorkerProvider.d.ts.map +1 -1
  428. package/lib/Cloudflare/Workers/WorkerProvider.js +1765 -236
  429. package/lib/Cloudflare/Workers/WorkerProvider.js.map +1 -1
  430. package/lib/Cloudflare/Workflows/WorkflowBridge.d.ts +7 -1
  431. package/lib/Cloudflare/Workflows/WorkflowBridge.d.ts.map +1 -1
  432. package/lib/Cloudflare/Workflows/WorkflowBridge.js +14 -4
  433. package/lib/Cloudflare/Workflows/WorkflowBridge.js.map +1 -1
  434. package/lib/Command/Build.d.ts +2 -2
  435. package/lib/Command/Build.d.ts.map +1 -1
  436. package/lib/Command/Build.js +4 -7
  437. package/lib/Command/Build.js.map +1 -1
  438. package/lib/Command/Command.d.ts +34 -4
  439. package/lib/Command/Command.d.ts.map +1 -1
  440. package/lib/Command/Command.js +125 -30
  441. package/lib/Command/Command.js.map +1 -1
  442. package/lib/Command/Dev.d.ts +2 -2
  443. package/lib/Command/Dev.d.ts.map +1 -1
  444. package/lib/Command/Dev.js +51 -73
  445. package/lib/Command/Dev.js.map +1 -1
  446. package/lib/Command/Exec.d.ts +11 -2
  447. package/lib/Command/Exec.d.ts.map +1 -1
  448. package/lib/Command/Exec.js +9 -0
  449. package/lib/Command/Exec.js.map +1 -1
  450. package/lib/Command/Memo.d.ts +9 -1
  451. package/lib/Command/Memo.d.ts.map +1 -1
  452. package/lib/Command/Memo.js +14 -2
  453. package/lib/Command/Memo.js.map +1 -1
  454. package/lib/Command/Providers.d.ts +1 -1
  455. package/lib/Command/Providers.d.ts.map +1 -1
  456. package/lib/Command/Redaction.d.ts +10 -0
  457. package/lib/Command/Redaction.d.ts.map +1 -0
  458. package/lib/Command/Redaction.js +119 -0
  459. package/lib/Command/Redaction.js.map +1 -0
  460. package/lib/Deploy.d.ts +2 -1
  461. package/lib/Deploy.d.ts.map +1 -1
  462. package/lib/Destroy.d.ts +2 -1
  463. package/lib/Destroy.d.ts.map +1 -1
  464. package/lib/Destroy.js +1 -9
  465. package/lib/Destroy.js.map +1 -1
  466. package/lib/Docker/Container.d.ts +15 -1
  467. package/lib/Docker/Container.d.ts.map +1 -1
  468. package/lib/Docker/Container.js +34 -11
  469. package/lib/Docker/Container.js.map +1 -1
  470. package/lib/Docker/Context.d.ts +84 -0
  471. package/lib/Docker/Context.d.ts.map +1 -0
  472. package/lib/Docker/Context.js +145 -0
  473. package/lib/Docker/Context.js.map +1 -0
  474. package/lib/Docker/Docker.d.ts +190 -14
  475. package/lib/Docker/Docker.d.ts.map +1 -1
  476. package/lib/Docker/Docker.js +149 -28
  477. package/lib/Docker/Docker.js.map +1 -1
  478. package/lib/Docker/Image.d.ts +12 -0
  479. package/lib/Docker/Image.d.ts.map +1 -1
  480. package/lib/Docker/Image.js +24 -7
  481. package/lib/Docker/Image.js.map +1 -1
  482. package/lib/Docker/Network.d.ts +7 -0
  483. package/lib/Docker/Network.d.ts.map +1 -1
  484. package/lib/Docker/Network.js +16 -7
  485. package/lib/Docker/Network.js.map +1 -1
  486. package/lib/Docker/Providers.d.ts +1 -1
  487. package/lib/Docker/Providers.d.ts.map +1 -1
  488. package/lib/Docker/Providers.js +13 -1
  489. package/lib/Docker/Providers.js.map +1 -1
  490. package/lib/Docker/RemoteImage.d.ts +12 -0
  491. package/lib/Docker/RemoteImage.d.ts.map +1 -1
  492. package/lib/Docker/RemoteImage.js +22 -8
  493. package/lib/Docker/RemoteImage.js.map +1 -1
  494. package/lib/Docker/Service.d.ts +445 -0
  495. package/lib/Docker/Service.d.ts.map +1 -0
  496. package/lib/Docker/Service.js +578 -0
  497. package/lib/Docker/Service.js.map +1 -0
  498. package/lib/Docker/ServiceImage.d.ts +78 -0
  499. package/lib/Docker/ServiceImage.d.ts.map +1 -0
  500. package/lib/Docker/ServiceImage.js +232 -0
  501. package/lib/Docker/ServiceImage.js.map +1 -0
  502. package/lib/Docker/Swarm.d.ts +117 -0
  503. package/lib/Docker/Swarm.d.ts.map +1 -0
  504. package/lib/Docker/Swarm.js +149 -0
  505. package/lib/Docker/Swarm.js.map +1 -0
  506. package/lib/Docker/Volume.d.ts +11 -0
  507. package/lib/Docker/Volume.d.ts.map +1 -1
  508. package/lib/Docker/Volume.js +21 -6
  509. package/lib/Docker/Volume.js.map +1 -1
  510. package/lib/Docker/index.d.ts +3 -0
  511. package/lib/Docker/index.d.ts.map +1 -1
  512. package/lib/Docker/index.js +3 -0
  513. package/lib/Docker/index.js.map +1 -1
  514. package/lib/Http.d.ts +8 -1
  515. package/lib/Http.d.ts.map +1 -1
  516. package/lib/Http.js +7 -2
  517. package/lib/Http.js.map +1 -1
  518. package/lib/Local/LocalProvider.d.ts +182 -0
  519. package/lib/Local/LocalProvider.d.ts.map +1 -0
  520. package/lib/Local/LocalProvider.js +226 -0
  521. package/lib/Local/LocalProvider.js.map +1 -0
  522. package/lib/Local/ProviderLayer.d.ts +43 -2
  523. package/lib/Local/ProviderLayer.d.ts.map +1 -1
  524. package/lib/Local/ProviderLayer.js +80 -2
  525. package/lib/Local/ProviderLayer.js.map +1 -1
  526. package/lib/Local/RpcProvider.d.ts +7 -0
  527. package/lib/Local/RpcProvider.d.ts.map +1 -1
  528. package/lib/Local/RpcProvider.js +8 -3
  529. package/lib/Local/RpcProvider.js.map +1 -1
  530. package/lib/Local/RpcProviderProxy.d.ts.map +1 -1
  531. package/lib/Local/RpcProviderProxy.js +3 -0
  532. package/lib/Local/RpcProviderProxy.js.map +1 -1
  533. package/lib/Local/RpcServer.d.ts +8 -1
  534. package/lib/Local/RpcServer.d.ts.map +1 -1
  535. package/lib/Local/RpcServer.js +4 -1
  536. package/lib/Local/RpcServer.js.map +1 -1
  537. package/lib/Plan.d.ts +34 -0
  538. package/lib/Plan.d.ts.map +1 -1
  539. package/lib/Plan.js +127 -40
  540. package/lib/Plan.js.map +1 -1
  541. package/lib/Planetscale/AuthProvider.d.ts.map +1 -1
  542. package/lib/Planetscale/AuthProvider.js +6 -2
  543. package/lib/Planetscale/AuthProvider.js.map +1 -1
  544. package/lib/Planetscale/Branch.d.ts.map +1 -1
  545. package/lib/Planetscale/Branch.js +36 -6
  546. package/lib/Planetscale/Branch.js.map +1 -1
  547. package/lib/Planetscale/MySQL/MySQLDatabase.d.ts.map +1 -1
  548. package/lib/Planetscale/MySQL/MySQLDatabase.js +31 -6
  549. package/lib/Planetscale/MySQL/MySQLDatabase.js.map +1 -1
  550. package/lib/Planetscale/OAuthClient.d.ts +7 -1
  551. package/lib/Planetscale/OAuthClient.d.ts.map +1 -1
  552. package/lib/Planetscale/OAuthClient.js +51 -4
  553. package/lib/Planetscale/OAuthClient.js.map +1 -1
  554. package/lib/Planetscale/Postgres/PostgresDatabase.d.ts.map +1 -1
  555. package/lib/Planetscale/Postgres/PostgresDatabase.js +30 -5
  556. package/lib/Planetscale/Postgres/PostgresDatabase.js.map +1 -1
  557. package/lib/Platform.d.ts.map +1 -1
  558. package/lib/Platform.js +25 -14
  559. package/lib/Platform.js.map +1 -1
  560. package/lib/Prisma/App.d.ts +80 -0
  561. package/lib/Prisma/App.d.ts.map +1 -0
  562. package/lib/Prisma/App.js +238 -0
  563. package/lib/Prisma/App.js.map +1 -0
  564. package/lib/Prisma/AuthProvider.d.ts +28 -0
  565. package/lib/Prisma/AuthProvider.d.ts.map +1 -0
  566. package/lib/Prisma/AuthProvider.js +131 -0
  567. package/lib/Prisma/AuthProvider.js.map +1 -0
  568. package/lib/Prisma/Branch.d.ts +75 -0
  569. package/lib/Prisma/Branch.d.ts.map +1 -0
  570. package/lib/Prisma/Branch.js +216 -0
  571. package/lib/Prisma/Branch.js.map +1 -0
  572. package/lib/Prisma/Client.d.ts +178 -0
  573. package/lib/Prisma/Client.d.ts.map +1 -0
  574. package/lib/Prisma/Client.js +562 -0
  575. package/lib/Prisma/Client.js.map +1 -0
  576. package/lib/Prisma/Compute.d.ts +583 -0
  577. package/lib/Prisma/Compute.d.ts.map +1 -0
  578. package/lib/Prisma/Compute.js +1543 -0
  579. package/lib/Prisma/Compute.js.map +1 -0
  580. package/lib/Prisma/ComputeArchive.d.ts +63 -0
  581. package/lib/Prisma/ComputeArchive.d.ts.map +1 -0
  582. package/lib/Prisma/ComputeArchive.js +227 -0
  583. package/lib/Prisma/ComputeArchive.js.map +1 -0
  584. package/lib/Prisma/ComputeBuild.d.ts +106 -0
  585. package/lib/Prisma/ComputeBuild.d.ts.map +1 -0
  586. package/lib/Prisma/ComputeBuild.js +987 -0
  587. package/lib/Prisma/ComputeBuild.js.map +1 -0
  588. package/lib/Prisma/ComputeLifecycle.d.ts +84 -0
  589. package/lib/Prisma/ComputeLifecycle.d.ts.map +1 -0
  590. package/lib/Prisma/ComputeLifecycle.js +186 -0
  591. package/lib/Prisma/ComputeLifecycle.js.map +1 -0
  592. package/lib/Prisma/Connect.d.ts +99 -0
  593. package/lib/Prisma/Connect.d.ts.map +1 -0
  594. package/lib/Prisma/Connect.js +187 -0
  595. package/lib/Prisma/Connect.js.map +1 -0
  596. package/lib/Prisma/Connection.d.ts +202 -0
  597. package/lib/Prisma/Connection.d.ts.map +1 -0
  598. package/lib/Prisma/Connection.js +346 -0
  599. package/lib/Prisma/Connection.js.map +1 -0
  600. package/lib/Prisma/CustomDomain.d.ts +81 -0
  601. package/lib/Prisma/CustomDomain.d.ts.map +1 -0
  602. package/lib/Prisma/CustomDomain.js +175 -0
  603. package/lib/Prisma/CustomDomain.js.map +1 -0
  604. package/lib/Prisma/Database.d.ts +208 -0
  605. package/lib/Prisma/Database.d.ts.map +1 -0
  606. package/lib/Prisma/Database.js +405 -0
  607. package/lib/Prisma/Database.js.map +1 -0
  608. package/lib/Prisma/Deployment.d.ts +135 -0
  609. package/lib/Prisma/Deployment.d.ts.map +1 -0
  610. package/lib/Prisma/Deployment.js +348 -0
  611. package/lib/Prisma/Deployment.js.map +1 -0
  612. package/lib/Prisma/EnvironmentVariable.d.ts +89 -0
  613. package/lib/Prisma/EnvironmentVariable.d.ts.map +1 -0
  614. package/lib/Prisma/EnvironmentVariable.js +213 -0
  615. package/lib/Prisma/EnvironmentVariable.js.map +1 -0
  616. package/lib/Prisma/Internal/AppIdentity.d.ts +10 -0
  617. package/lib/Prisma/Internal/AppIdentity.d.ts.map +1 -0
  618. package/lib/Prisma/Internal/AppIdentity.js +6 -0
  619. package/lib/Prisma/Internal/AppIdentity.js.map +1 -0
  620. package/lib/Prisma/Internal/AppPromotion.d.ts +19 -0
  621. package/lib/Prisma/Internal/AppPromotion.d.ts.map +1 -0
  622. package/lib/Prisma/Internal/AppPromotion.js +107 -0
  623. package/lib/Prisma/Internal/AppPromotion.js.map +1 -0
  624. package/lib/Prisma/Internal/ArchivePlatform.d.ts +42 -0
  625. package/lib/Prisma/Internal/ArchivePlatform.d.ts.map +1 -0
  626. package/lib/Prisma/Internal/ArchivePlatform.js +214 -0
  627. package/lib/Prisma/Internal/ArchivePlatform.js.map +1 -0
  628. package/lib/Prisma/Internal/ArtifactFile.d.ts +58 -0
  629. package/lib/Prisma/Internal/ArtifactFile.d.ts.map +1 -0
  630. package/lib/Prisma/Internal/ArtifactFile.js +134 -0
  631. package/lib/Prisma/Internal/ArtifactFile.js.map +1 -0
  632. package/lib/Prisma/Internal/ArtifactUpload.d.ts +5 -0
  633. package/lib/Prisma/Internal/ArtifactUpload.d.ts.map +1 -0
  634. package/lib/Prisma/Internal/ArtifactUpload.js +51 -0
  635. package/lib/Prisma/Internal/ArtifactUpload.js.map +1 -0
  636. package/lib/Prisma/Internal/BundlePaths.d.ts +4 -0
  637. package/lib/Prisma/Internal/BundlePaths.d.ts.map +1 -0
  638. package/lib/Prisma/Internal/BundlePaths.js +16 -0
  639. package/lib/Prisma/Internal/BundlePaths.js.map +1 -0
  640. package/lib/Prisma/Internal/CleanupFailure.d.ts +8 -0
  641. package/lib/Prisma/Internal/CleanupFailure.d.ts.map +1 -0
  642. package/lib/Prisma/Internal/CleanupFailure.js +8 -0
  643. package/lib/Prisma/Internal/CleanupFailure.js.map +1 -0
  644. package/lib/Prisma/Internal/DatabaseSecrets.d.ts +35 -0
  645. package/lib/Prisma/Internal/DatabaseSecrets.d.ts.map +1 -0
  646. package/lib/Prisma/Internal/DatabaseSecrets.js +85 -0
  647. package/lib/Prisma/Internal/DatabaseSecrets.js.map +1 -0
  648. package/lib/Prisma/Internal/DeploymentActions.d.ts +5 -0
  649. package/lib/Prisma/Internal/DeploymentActions.d.ts.map +1 -0
  650. package/lib/Prisma/Internal/DeploymentActions.js +16 -0
  651. package/lib/Prisma/Internal/DeploymentActions.js.map +1 -0
  652. package/lib/Prisma/Internal/DeploymentIdentity.d.ts +8 -0
  653. package/lib/Prisma/Internal/DeploymentIdentity.d.ts.map +1 -0
  654. package/lib/Prisma/Internal/DeploymentIdentity.js +12 -0
  655. package/lib/Prisma/Internal/DeploymentIdentity.js.map +1 -0
  656. package/lib/Prisma/Internal/DeploymentObserve.d.ts +3 -0
  657. package/lib/Prisma/Internal/DeploymentObserve.d.ts.map +1 -0
  658. package/lib/Prisma/Internal/DeploymentObserve.js +2 -0
  659. package/lib/Prisma/Internal/DeploymentObserve.js.map +1 -0
  660. package/lib/Prisma/Internal/EnvName.d.ts +7 -0
  661. package/lib/Prisma/Internal/EnvName.d.ts.map +1 -0
  662. package/lib/Prisma/Internal/EnvName.js +23 -0
  663. package/lib/Prisma/Internal/EnvName.js.map +1 -0
  664. package/lib/Prisma/Internal/HttpClient.d.ts +21 -0
  665. package/lib/Prisma/Internal/HttpClient.d.ts.map +1 -0
  666. package/lib/Prisma/Internal/HttpClient.js +23 -0
  667. package/lib/Prisma/Internal/HttpClient.js.map +1 -0
  668. package/lib/Prisma/Operations.d.ts +143 -0
  669. package/lib/Prisma/Operations.d.ts.map +1 -0
  670. package/lib/Prisma/Operations.js +75 -0
  671. package/lib/Prisma/Operations.js.map +1 -0
  672. package/lib/Prisma/Postgres.d.ts +24 -0
  673. package/lib/Prisma/Postgres.d.ts.map +1 -0
  674. package/lib/Prisma/Postgres.js +23 -0
  675. package/lib/Prisma/Postgres.js.map +1 -0
  676. package/lib/Prisma/PostgresOrigin.d.ts +31 -0
  677. package/lib/Prisma/PostgresOrigin.d.ts.map +1 -0
  678. package/lib/Prisma/PostgresOrigin.js +30 -0
  679. package/lib/Prisma/PostgresOrigin.js.map +1 -0
  680. package/lib/Prisma/PrismaDevDatabase.d.ts +25 -0
  681. package/lib/Prisma/PrismaDevDatabase.d.ts.map +1 -0
  682. package/lib/Prisma/PrismaDevDatabase.js +280 -0
  683. package/lib/Prisma/PrismaDevDatabase.js.map +1 -0
  684. package/lib/Prisma/PrismaEnvironment.d.ts +14 -0
  685. package/lib/Prisma/PrismaEnvironment.d.ts.map +1 -0
  686. package/lib/Prisma/PrismaEnvironment.js +50 -0
  687. package/lib/Prisma/PrismaEnvironment.js.map +1 -0
  688. package/lib/Prisma/PrismaLogs.d.ts +42 -0
  689. package/lib/Prisma/PrismaLogs.d.ts.map +1 -0
  690. package/lib/Prisma/PrismaLogs.js +318 -0
  691. package/lib/Prisma/PrismaLogs.js.map +1 -0
  692. package/lib/Prisma/Project.d.ts +117 -0
  693. package/lib/Prisma/Project.d.ts.map +1 -0
  694. package/lib/Prisma/Project.js +361 -0
  695. package/lib/Prisma/Project.js.map +1 -0
  696. package/lib/Prisma/Providers.d.ts +61 -0
  697. package/lib/Prisma/Providers.d.ts.map +1 -0
  698. package/lib/Prisma/Providers.js +282 -0
  699. package/lib/Prisma/Providers.js.map +1 -0
  700. package/lib/Prisma/Refs.d.ts +19 -0
  701. package/lib/Prisma/Refs.d.ts.map +1 -0
  702. package/lib/Prisma/Refs.js +25 -0
  703. package/lib/Prisma/Refs.js.map +1 -0
  704. package/lib/Prisma/SourceRepository.d.ts +104 -0
  705. package/lib/Prisma/SourceRepository.d.ts.map +1 -0
  706. package/lib/Prisma/SourceRepository.js +221 -0
  707. package/lib/Prisma/SourceRepository.js.map +1 -0
  708. package/lib/Prisma/Types.d.ts +539 -0
  709. package/lib/Prisma/Types.d.ts.map +1 -0
  710. package/lib/Prisma/Types.js +13 -0
  711. package/lib/Prisma/Types.js.map +1 -0
  712. package/lib/Prisma/index.d.ts +25 -0
  713. package/lib/Prisma/index.d.ts.map +1 -0
  714. package/lib/Prisma/index.js +24 -0
  715. package/lib/Prisma/index.js.map +1 -0
  716. package/lib/Provider.d.ts +57 -5
  717. package/lib/Provider.d.ts.map +1 -1
  718. package/lib/Provider.js +54 -30
  719. package/lib/Provider.js.map +1 -1
  720. package/lib/ProviderMode.d.ts +93 -0
  721. package/lib/ProviderMode.d.ts.map +1 -0
  722. package/lib/ProviderMode.js +77 -0
  723. package/lib/ProviderMode.js.map +1 -0
  724. package/lib/Resource.d.ts +8 -0
  725. package/lib/Resource.d.ts.map +1 -1
  726. package/lib/Resource.js +31 -0
  727. package/lib/Resource.js.map +1 -1
  728. package/lib/RuntimeContext.d.ts +7 -0
  729. package/lib/RuntimeContext.d.ts.map +1 -1
  730. package/lib/RuntimeContext.js.map +1 -1
  731. package/lib/Server/Process.d.ts +8 -0
  732. package/lib/Server/Process.d.ts.map +1 -1
  733. package/lib/Server/Process.js +29 -0
  734. package/lib/Server/Process.js.map +1 -1
  735. package/lib/State/InMemoryState.d.ts.map +1 -1
  736. package/lib/State/InMemoryState.js +2 -0
  737. package/lib/State/InMemoryState.js.map +1 -1
  738. package/lib/State/ResourceState.d.ts +18 -0
  739. package/lib/State/ResourceState.d.ts.map +1 -1
  740. package/lib/Sync.d.ts.map +1 -1
  741. package/lib/Sync.js +8 -2
  742. package/lib/Sync.js.map +1 -1
  743. package/lib/Telemetry.d.ts +150 -0
  744. package/lib/Telemetry.d.ts.map +1 -0
  745. package/lib/Telemetry.js +512 -0
  746. package/lib/Telemetry.js.map +1 -0
  747. package/lib/Test/Alchemy.d.ts.map +1 -1
  748. package/lib/Test/Alchemy.js +3 -1
  749. package/lib/Test/Alchemy.js.map +1 -1
  750. package/lib/Test/Core.d.ts +2 -2
  751. package/lib/Test/Core.d.ts.map +1 -1
  752. package/lib/Test/Core.js +1 -8
  753. package/lib/Test/Core.js.map +1 -1
  754. package/lib/Util/Clank.d.ts +11 -6
  755. package/lib/Util/Clank.d.ts.map +1 -1
  756. package/lib/Util/Clank.js +22 -9
  757. package/lib/Util/Clank.js.map +1 -1
  758. package/lib/Util/zip.d.ts +11 -0
  759. package/lib/Util/zip.d.ts.map +1 -1
  760. package/lib/Util/zip.js +30 -0
  761. package/lib/Util/zip.js.map +1 -1
  762. package/lib/index.d.ts +3 -0
  763. package/lib/index.d.ts.map +1 -1
  764. package/lib/index.js +3 -0
  765. package/lib/index.js.map +1 -1
  766. package/package.json +46 -13
  767. package/src/AWS/ApiGateway/common.ts +9 -0
  768. package/src/AWS/Bedrock/LanguageModel.ts +883 -0
  769. package/src/AWS/Bedrock/LanguageModelHttp.ts +36 -0
  770. package/src/AWS/Bedrock/index.ts +2 -0
  771. package/src/AWS/CloudFront/Distribution.ts +116 -6
  772. package/src/AWS/CostExplorer/common.ts +23 -2
  773. package/src/AWS/DataSync/Task.ts +30 -15
  774. package/src/AWS/EC2/Vpc.ts +35 -21
  775. package/src/AWS/EC2/hosted.ts +10 -2
  776. package/src/AWS/ECR/ImageSource.ts +10 -2
  777. package/src/AWS/ECR/Repository.ts +39 -4
  778. package/src/AWS/ECS/Service.ts +322 -22
  779. package/src/AWS/ECS/Task.ts +82 -32
  780. package/src/AWS/EKS/Deployment.ts +10 -2
  781. package/src/AWS/EKS/Job.ts +10 -2
  782. package/src/AWS/Lambda/Function.ts +101 -43
  783. package/src/AWS/Lambda/HttpServer.ts +7 -1
  784. package/src/AWS/Lambda/LayerVersion.ts +490 -0
  785. package/src/AWS/Lambda/MicrovmBundle.ts +10 -2
  786. package/src/AWS/Lambda/index.ts +1 -0
  787. package/src/AWS/Providers.ts +10 -0
  788. package/src/AWS/SES/ActiveReceiptRuleSet.ts +88 -0
  789. package/src/AWS/SES/ReceiptFilter.ts +169 -0
  790. package/src/AWS/SES/ReceiptRule.ts +300 -0
  791. package/src/AWS/SES/ReceiptRuleSet.ts +164 -0
  792. package/src/AWS/SES/SendBounce.ts +44 -0
  793. package/src/AWS/SES/SendBounceHttp.ts +13 -0
  794. package/src/AWS/SES/index.ts +6 -0
  795. package/src/AWS/StateStore/State.ts +159 -42
  796. package/src/Apply.ts +199 -83
  797. package/src/Axiom/Telemetry.ts +119 -0
  798. package/src/Axiom/index.ts +1 -0
  799. package/src/Bundle/Bundle.ts +17 -7
  800. package/src/Bundle/BundleAnalyzerPlugin.ts +9 -4
  801. package/src/Bundle/PurePlugin.ts +19 -9
  802. package/src/Cli/checkVersion.ts +102 -16
  803. package/src/Cli/commands/deploy.ts +3 -14
  804. package/src/Cli/commands/logs.ts +6 -1
  805. package/src/Cli/commands/tail.ts +6 -1
  806. package/src/Cli/main.ts +5 -4
  807. package/src/Cloudflare/AI/Search.ts +4 -18
  808. package/src/Cloudflare/AI/SearchInstance.ts +7 -26
  809. package/src/Cloudflare/ApiToken/AccountApiToken.ts +3 -0
  810. package/src/Cloudflare/Auth/AuthProvider.ts +17 -3
  811. package/src/Cloudflare/Auth/OAuthClient.ts +58 -2
  812. package/src/Cloudflare/Containers/Container.ts +92 -3
  813. package/src/Cloudflare/Containers/ContainerApplication.ts +31 -5
  814. package/src/Cloudflare/Containers/ContainerBundle.ts +10 -2
  815. package/src/Cloudflare/Containers/ContainerProvider.ts +62 -0
  816. package/src/Cloudflare/Credentials.ts +69 -9
  817. package/src/Cloudflare/D1/ApplyMigrations.ts +72 -77
  818. package/src/Cloudflare/D1/Database.ts +154 -2
  819. package/src/Cloudflare/D1/LocalD1Gateway.ts +150 -0
  820. package/src/Cloudflare/D1/QueryDatabaseHttpClient.ts +49 -11
  821. package/src/Cloudflare/D1/QueryDatabaseLocal.ts +44 -2
  822. package/src/Cloudflare/Email/Address.ts +18 -1
  823. package/src/Cloudflare/Email/SendBinding.ts +1 -0
  824. package/src/Cloudflare/Email/SendEmail.ts +13 -0
  825. package/src/Cloudflare/Flagship/App.ts +18 -6
  826. package/src/Cloudflare/KV/LocalKVGateway.ts +86 -0
  827. package/src/Cloudflare/KV/Namespace.ts +47 -1
  828. package/src/Cloudflare/KV/NamespaceLocal.ts +29 -6
  829. package/src/Cloudflare/KV/ReadNamespaceLocal.ts +5 -1
  830. package/src/Cloudflare/KV/ReadWriteNamespaceLocal.ts +5 -1
  831. package/src/Cloudflare/KV/WriteNamespaceLocal.ts +5 -1
  832. package/src/Cloudflare/LocalGateway.ts +86 -0
  833. package/src/Cloudflare/LocalRuntime.ts +21 -1
  834. package/src/Cloudflare/Logs.ts +58 -28
  835. package/src/Cloudflare/Providers.ts +4 -2
  836. package/src/Cloudflare/Queues/Consumer.ts +70 -2
  837. package/src/Cloudflare/Queues/Queue.ts +7 -16
  838. package/src/Cloudflare/Queues/QueueBinding.ts +21 -0
  839. package/src/Cloudflare/Queues/QueueShim.ts +193 -0
  840. package/src/Cloudflare/R2/Bucket.ts +55 -1
  841. package/src/Cloudflare/R2/BucketBinding.ts +17 -3
  842. package/src/Cloudflare/R2/BucketLocal.ts +25 -8
  843. package/src/Cloudflare/R2/LocalR2Gateway.ts +84 -0
  844. package/src/Cloudflare/R2/ReadBucketLocal.ts +7 -1
  845. package/src/Cloudflare/R2/ReadWriteBucketLocal.ts +7 -1
  846. package/src/Cloudflare/R2/WriteBucketLocal.ts +7 -1
  847. package/src/Cloudflare/Ruleset/AccountEntrypoint.ts +5 -1
  848. package/src/Cloudflare/Ruleset/Ruleset.ts +20 -6
  849. package/src/Cloudflare/Rum/Site.ts +11 -4
  850. package/src/Cloudflare/StateStore/Api.ts +1 -1
  851. package/src/Cloudflare/Tunnel/Tunnel.ts +23 -1
  852. package/src/Cloudflare/Website/StaticSite.ts +117 -28
  853. package/src/Cloudflare/Website/Vite.ts +33 -19
  854. package/src/Cloudflare/Workers/Compatibility.ts +27 -7
  855. package/src/Cloudflare/Workers/DurableObject.ts +22 -0
  856. package/src/Cloudflare/Workers/DurableObjectBridge.ts +29 -10
  857. package/src/Cloudflare/Workers/InferEnv.ts +74 -59
  858. package/src/Cloudflare/Workers/LocalWorkerProvider.ts +619 -401
  859. package/src/Cloudflare/Workers/Worker.ts +676 -28
  860. package/src/Cloudflare/Workers/WorkerAsyncBindings.ts +209 -25
  861. package/src/Cloudflare/Workers/WorkerBinding.ts +67 -3
  862. package/src/Cloudflare/Workers/WorkerBridge.ts +26 -4
  863. package/src/Cloudflare/Workers/WorkerBundle.ts +6 -1
  864. package/src/Cloudflare/Workers/WorkerProvider.ts +2269 -277
  865. package/src/Cloudflare/Workflows/WorkflowBridge.ts +31 -13
  866. package/src/Command/Build.ts +8 -8
  867. package/src/Command/Command.ts +217 -42
  868. package/src/Command/Dev.ts +79 -107
  869. package/src/Command/Exec.ts +11 -2
  870. package/src/Command/Memo.ts +27 -3
  871. package/src/Command/Redaction.ts +181 -0
  872. package/src/Destroy.ts +1 -10
  873. package/src/Docker/Container.ts +55 -15
  874. package/src/Docker/Context.ts +236 -0
  875. package/src/Docker/Docker.ts +393 -43
  876. package/src/Docker/Image.ts +28 -7
  877. package/src/Docker/Network.ts +38 -14
  878. package/src/Docker/Providers.ts +16 -1
  879. package/src/Docker/RemoteImage.ts +23 -7
  880. package/src/Docker/Service.ts +1119 -0
  881. package/src/Docker/ServiceImage.ts +331 -0
  882. package/src/Docker/Swarm.ts +226 -0
  883. package/src/Docker/Volume.ts +25 -6
  884. package/src/Docker/index.ts +3 -0
  885. package/src/Http.ts +15 -2
  886. package/src/Local/LocalProvider.ts +518 -0
  887. package/src/Local/ProviderLayer.ts +113 -11
  888. package/src/Local/RpcProvider.ts +10 -5
  889. package/src/Local/RpcProviderProxy.ts +4 -1
  890. package/src/Local/RpcServer.ts +20 -2
  891. package/src/Plan.ts +182 -54
  892. package/src/Planetscale/AuthProvider.ts +15 -2
  893. package/src/Planetscale/Branch.ts +39 -6
  894. package/src/Planetscale/MySQL/MySQLDatabase.ts +34 -6
  895. package/src/Planetscale/OAuthClient.ts +59 -3
  896. package/src/Planetscale/Postgres/PostgresDatabase.ts +33 -5
  897. package/src/Platform.ts +29 -17
  898. package/src/Prisma/App.ts +420 -0
  899. package/src/Prisma/AuthProvider.ts +260 -0
  900. package/src/Prisma/Branch.ts +396 -0
  901. package/src/Prisma/Client.ts +1337 -0
  902. package/src/Prisma/Compute.ts +2876 -0
  903. package/src/Prisma/ComputeArchive.ts +432 -0
  904. package/src/Prisma/ComputeBuild.ts +1652 -0
  905. package/src/Prisma/ComputeLifecycle.ts +391 -0
  906. package/src/Prisma/Connect.ts +410 -0
  907. package/src/Prisma/Connection.ts +626 -0
  908. package/src/Prisma/CustomDomain.ts +363 -0
  909. package/src/Prisma/Database.ts +836 -0
  910. package/src/Prisma/Deployment.ts +655 -0
  911. package/src/Prisma/EnvironmentVariable.ts +401 -0
  912. package/src/Prisma/Internal/AppIdentity.ts +19 -0
  913. package/src/Prisma/Internal/AppPromotion.ts +172 -0
  914. package/src/Prisma/Internal/ArchivePlatform.ts +320 -0
  915. package/src/Prisma/Internal/ArtifactFile.ts +242 -0
  916. package/src/Prisma/Internal/ArtifactUpload.ts +86 -0
  917. package/src/Prisma/Internal/BundlePaths.ts +28 -0
  918. package/src/Prisma/Internal/CleanupFailure.ts +17 -0
  919. package/src/Prisma/Internal/DatabaseSecrets.ts +175 -0
  920. package/src/Prisma/Internal/DeploymentActions.ts +59 -0
  921. package/src/Prisma/Internal/DeploymentIdentity.ts +25 -0
  922. package/src/Prisma/Internal/DeploymentObserve.ts +6 -0
  923. package/src/Prisma/Internal/EnvName.ts +24 -0
  924. package/src/Prisma/Internal/HttpClient.ts +30 -0
  925. package/src/Prisma/Operations.ts +259 -0
  926. package/src/Prisma/Postgres.ts +24 -0
  927. package/src/Prisma/PostgresOrigin.ts +52 -0
  928. package/src/Prisma/PrismaDevDatabase.ts +395 -0
  929. package/src/Prisma/PrismaEnvironment.ts +89 -0
  930. package/src/Prisma/PrismaLogs.ts +434 -0
  931. package/src/Prisma/Project.ts +681 -0
  932. package/src/Prisma/Providers.ts +411 -0
  933. package/src/Prisma/Refs.ts +69 -0
  934. package/src/Prisma/SourceRepository.ts +432 -0
  935. package/src/Prisma/Types.ts +611 -0
  936. package/src/Prisma/index.ts +24 -0
  937. package/src/Provider.ts +155 -39
  938. package/src/ProviderMode.ts +123 -0
  939. package/src/Resource.ts +46 -0
  940. package/src/RuntimeContext.ts +7 -0
  941. package/src/Server/Process.ts +33 -0
  942. package/src/State/InMemoryState.ts +2 -0
  943. package/src/State/ResourceState.ts +18 -0
  944. package/src/Sync.ts +14 -2
  945. package/src/Telemetry.ts +736 -0
  946. package/src/Test/Alchemy.ts +3 -1
  947. package/src/Test/Core.ts +1 -8
  948. package/src/Util/Clank.ts +37 -11
  949. package/src/Util/zip.ts +39 -0
  950. package/src/index.ts +3 -0
@@ -0,0 +1,78 @@
1
+ import * as Effect from "effect/Effect";
2
+ import type * as rolldown from "rolldown";
3
+ import { AlchemyContext } from "../AlchemyContext.ts";
4
+ import * as Bundle from "../Bundle/Bundle.ts";
5
+ import { Docker } from "./Docker.ts";
6
+ /**
7
+ * INTERNAL — image machinery for the effectful `Docker.Service` platform.
8
+ *
9
+ * NOT exported from the Docker barrel. Bundles a `main` Effect program with
10
+ * rolldown, bakes it into a generated bun Dockerfile, and builds the image
11
+ * with the Docker CLI against the service's Docker context — so the image is
12
+ * present in the exact engine the Swarm service schedules from. There is no
13
+ * registry push: the built image is content-addressed (`<name>:<hash>`) and
14
+ * only rebuilt when the bundle, Dockerfile, or environment image changes.
15
+ *
16
+ * Multi-node swarms need the image on every node; for those, build with
17
+ * `Docker.Image` + a `registry` and pass the pushed ref as `image` instead.
18
+ */
19
+ /** The props subset that describes a bundled `main` service image. */
20
+ export interface BundledServiceSource {
21
+ main: string;
22
+ image?: string;
23
+ handler?: string;
24
+ port?: number;
25
+ build?: {
26
+ input?: Partial<rolldown.InputOptions>;
27
+ output?: Partial<rolldown.OutputOptions>;
28
+ };
29
+ }
30
+ /** The resolved (built) local image. */
31
+ export interface ResolvedServiceImage {
32
+ /** Full image reference, `<name>:<codeHash>`. */
33
+ imageRef: string;
34
+ /** Content hash identifying the image (also the image tag). */
35
+ codeHash: string;
36
+ }
37
+ /**
38
+ * The standard bun bootstrap wrapped around a `Docker.Service` `main` entry:
39
+ * resolves the bundled program's registered runners (`host.run` loops and the
40
+ * served `fetch` handler) and runs them with a Bun HTTP server bound to
41
+ * `PORT`. Mirrors the ECS bootstrap minus the AWS credential/region layers —
42
+ * a Swarm task has no ambient cloud identity.
43
+ */
44
+ export declare const makeServiceBunBootstrap: (handler: string) => (importPath: string) => string;
45
+ /**
46
+ * Init-time constructor for the service-image resolver. Resolves the services
47
+ * that are only available at provider-layer construction (Docker, the
48
+ * `.alchemy` directory, the rolldown virtual-entry plugin) and returns
49
+ * `resolve` (build the image if its content hash isn't present in the target
50
+ * engine) and `hash` (content hash only, for `diff`).
51
+ */
52
+ export declare const makeServiceImage: Effect.Effect<{
53
+ resolve: (options: {
54
+ /** Logical resource id — keys the stable build-context directory. */
55
+ id: string;
56
+ source: BundledServiceSource;
57
+ /** Image repository name (the service's physical name). */
58
+ name: string;
59
+ /** Docker context the swarm service is deployed to. */
60
+ context: string | undefined;
61
+ isExternal?: boolean;
62
+ /** Plan-status session used to emit build progress notes. */
63
+ session: {
64
+ note: (message: string) => Effect.Effect<void>;
65
+ };
66
+ }) => Effect.Effect<{
67
+ imageRef: string;
68
+ codeHash: string;
69
+ }, Bundle.BundleError | import("effect/PlatformError").PlatformError, import("effect/FileSystem").FileSystem | import("effect/Path").Path | import("../Stack.ts").Stack | import("../Stage.ts").Stage>;
70
+ hash: (options: {
71
+ source: BundledServiceSource;
72
+ isExternal?: boolean;
73
+ }) => Effect.Effect<string, Bundle.BundleError | import("effect/PlatformError").PlatformError, import("effect/FileSystem").FileSystem | import("effect/Path").Path>;
74
+ }, never, AlchemyContext | Docker | import("effect/Path").Path>;
75
+ /** The resolver service returned by {@link makeServiceImage}. */
76
+ export interface ServiceImage extends Effect.Success<typeof makeServiceImage> {
77
+ }
78
+ //# sourceMappingURL=ServiceImage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ServiceImage.d.ts","sourceRoot":"","sources":["../../src/Docker/ServiceImage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,QAAQ,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,MAAM,MAAM,qBAAqB,CAAC;AAQ9C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC;;;;;;;;;;;;GAYG;AAEH,sEAAsE;AACtE,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE;QACN,KAAK,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QACvC,MAAM,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;KAC1C,CAAC;CACH;AAED,wCAAwC;AACxC,MAAM,WAAW,oBAAoB;IACnC,iDAAiD;IACjD,QAAQ,EAAE,MAAM,CAAC;IACjB,+DAA+D;IAC/D,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,YACxB,MAAM,kBACH,MAAM,KAAG,MAuEvB,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB;;QA8HzB,qEAAqE;YACjE,MAAM;gBACF,oBAAoB;QAC5B,2DAA2D;cACrD,MAAM;QACZ,uDAAuD;iBAC9C,MAAM,GAAG,SAAS;qBACd,OAAO;QACpB,6DAA6D;iBACpD;YAAE,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;SAAE;;;;;;gBAgDnD,oBAAoB;qBACf,OAAO;;+DAOtB,CAAC;AAEH,iEAAiE;AACjE,MAAM,WAAW,YAAa,SAAQ,MAAM,CAAC,OAAO,CAAC,OAAO,gBAAgB,CAAC;CAAG"}
@@ -0,0 +1,232 @@
1
+ import * as Effect from "effect/Effect";
2
+ import { AlchemyContext } from "../AlchemyContext.js";
3
+ import * as Bundle from "../Bundle/Bundle.js";
4
+ import { findCwdForBundle, getStableContextDir, resolveMainPath, } from "../Bundle/TempRoot.js";
5
+ import { Self } from "../Self.js";
6
+ import { sha256Object } from "../Util/sha256.js";
7
+ import { Docker } from "./Docker.js";
8
+ /**
9
+ * The standard bun bootstrap wrapped around a `Docker.Service` `main` entry:
10
+ * resolves the bundled program's registered runners (`host.run` loops and the
11
+ * served `fetch` handler) and runs them with a Bun HTTP server bound to
12
+ * `PORT`. Mirrors the ECS bootstrap minus the AWS credential/region layers —
13
+ * a Swarm task has no ambient cloud identity.
14
+ */
15
+ export const makeServiceBunBootstrap = (handler) => (importPath) => `
16
+ import { BunServices } from "@effect/platform-bun";
17
+ import { BunHttpServer } from "alchemy/Http";
18
+ import { Stack } from "alchemy/Stack";
19
+ import { makeEntrypointLayer, reifyBoundConfigProvider } from "alchemy/Runtime";
20
+ import * as Config from "effect/Config";
21
+ import * as ConfigProvider from "effect/ConfigProvider";
22
+ import * as Context from "effect/Context";
23
+ import * as Effect from "effect/Effect";
24
+ import * as FetchHttpClient from "effect/unstable/http/FetchHttpClient";
25
+ import * as Layer from "effect/Layer";
26
+ import * as Logger from "effect/Logger";
27
+
28
+ import { ${handler} as entrypoint } from ${JSON.stringify(importPath)};
29
+
30
+ // Normalize the entrypoint export: an inline-effect class default export is
31
+ // an Effect resolving the platform instance, while the tagged form
32
+ // (X.make(props, impl)) exports a Layer providing the Self tag. Both fold
33
+ // into a Layer via makeEntrypointLayer (same pattern as the ECS bridge).
34
+ const tag = Context.Service("${Self.key}");
35
+ const layer = makeEntrypointLayer(tag, entrypoint);
36
+
37
+ const platform = Layer.mergeAll(
38
+ BunServices.layer,
39
+ FetchHttpClient.layer,
40
+ Logger.layer([Logger.consolePretty()]),
41
+ );
42
+
43
+ const stack = Layer.effect(
44
+ Stack,
45
+ Effect.all([
46
+ Config.string("ALCHEMY_STACK_NAME"),
47
+ Config.string("ALCHEMY_STAGE")
48
+ ]).pipe(
49
+ Effect.map(([name, stage]) => ({
50
+ name,
51
+ stage,
52
+ bindings: {},
53
+ resources: {}
54
+ }))
55
+ )
56
+ );
57
+
58
+ // Resolve the bundled program (the runners registered via host.run / serve)
59
+ // and run it with a Bun HTTP server bound to PORT, so the returned { fetch }
60
+ // handler is actually served and host.run loops stay alive.
61
+ const program = tag.pipe(
62
+ Effect.flatMap((service) => service.RuntimeContext.exports),
63
+ Effect.flatMap((exports) => exports.program),
64
+ Effect.provide(
65
+ layer.pipe(
66
+ Layer.provideMerge(stack),
67
+ Layer.provideMerge(BunHttpServer()),
68
+ Layer.provideMerge(platform),
69
+ Layer.provideMerge(
70
+ Layer.succeed(
71
+ ConfigProvider.ConfigProvider,
72
+ reifyBoundConfigProvider(ConfigProvider.fromEnv(), process.env)
73
+ )
74
+ ),
75
+ )
76
+ ),
77
+ Effect.scoped
78
+ );
79
+
80
+ console.log("Docker service bootstrap starting...");
81
+ await Effect.runPromise(program).catch((err) => {
82
+ console.error("Docker service bootstrap failed:", err);
83
+ process.exit(1);
84
+ });
85
+ `;
86
+ /**
87
+ * Init-time constructor for the service-image resolver. Resolves the services
88
+ * that are only available at provider-layer construction (Docker, the
89
+ * `.alchemy` directory, the rolldown virtual-entry plugin) and returns
90
+ * `resolve` (build the image if its content hash isn't present in the target
91
+ * engine) and `hash` (content hash only, for `diff`).
92
+ */
93
+ export const makeServiceImage = Effect.gen(function* () {
94
+ const docker = yield* Docker;
95
+ const { dotAlchemy } = yield* AlchemyContext;
96
+ const virtualEntryPlugin = yield* Bundle.virtualEntryPlugin;
97
+ /** Bundle the Effect program behind a `main` source. */
98
+ const bundleProgram = Effect.fn(function* (options) {
99
+ const { source } = options;
100
+ const realMain = yield* resolveMainPath(source.main);
101
+ const cwd = yield* findCwdForBundle(realMain);
102
+ const bootstrap = makeServiceBunBootstrap(source.handler ?? "default");
103
+ const buildBundle = Effect.fn(function* (entry, plugins) {
104
+ return yield* Bundle.build({
105
+ ...source.build?.input,
106
+ input: entry,
107
+ cwd,
108
+ platform: "node",
109
+ // The container runs on `bun`; keep `bun`/`bun:*` external (the
110
+ // runtime provides them) and resolve the `bun` export condition
111
+ // so `@effect/platform-bun` picks its Bun implementations.
112
+ external: [
113
+ "bun",
114
+ "bun:*",
115
+ ...(source.build?.input?.external ?? []),
116
+ ],
117
+ resolve: {
118
+ conditionNames: ["bun", "import", "module", "default"],
119
+ ...source.build?.input?.resolve,
120
+ },
121
+ plugins: [source.build?.input?.plugins, plugins],
122
+ }, {
123
+ ...source.build?.output,
124
+ format: "esm",
125
+ sourcemap: source.build?.output?.sourcemap ?? false,
126
+ minify: source.build?.output?.minify ?? false,
127
+ entryFileNames: "index.mjs",
128
+ });
129
+ });
130
+ const bundleOutput = options.isExternal
131
+ ? yield* buildBundle(realMain)
132
+ : yield* buildBundle(realMain, virtualEntryPlugin(bootstrap));
133
+ // Return every emitted file (entry + shared chunks). Dynamic imports in
134
+ // the Bun HTTP server split into chunks; dropping any of them crashes the
135
+ // container with `Cannot find module './chunk-XXX.js'`.
136
+ const files = bundleOutput.files.map((file) => ({
137
+ path: file.path,
138
+ content: typeof file.content === "string"
139
+ ? new TextEncoder().encode(file.content)
140
+ : file.content,
141
+ }));
142
+ return { files, hash: bundleOutput.hash };
143
+ });
144
+ /**
145
+ * Generated Dockerfile for a bundled `main` program. The environment
146
+ * preamble is the `image` ref or the default bun base (`oven/bun` is
147
+ * Docker-Hub only).
148
+ */
149
+ const generateDockerfile = (source) => {
150
+ const lines = [
151
+ `FROM ${source.image ?? "oven/bun:1"}`,
152
+ `WORKDIR /app`,
153
+ `COPY index.mjs /app/index.mjs`,
154
+ // Copy any additional rolldown chunks (`chunk-XXX.js`, …). Non-trivial
155
+ // bundles always emit at least one; minimal bundles emit none and the
156
+ // COPY no-ops.
157
+ `COPY *.js /app/`,
158
+ ];
159
+ if (source.port !== undefined) {
160
+ lines.push(`ENV PORT=${String(source.port)}`, `EXPOSE ${String(source.port)}`);
161
+ }
162
+ lines.push(`ENTRYPOINT ["bun", "/app/index.mjs"]`);
163
+ return `${lines.join("\n")}\n`;
164
+ };
165
+ /**
166
+ * Bundle a `main` source and compute its content-addressed code hash. The
167
+ * hash covers the full image identity — the bundle output (bootstrap entry
168
+ * included, so bootstrap-template changes invalidate it) and the generated
169
+ * Dockerfile — so `diff` and `resolve` always agree.
170
+ */
171
+ const computeCodeHash = Effect.fn(function* (options) {
172
+ const bundled = yield* bundleProgram(options);
173
+ const dockerfile = generateDockerfile(options.source);
174
+ const codeHash = (yield* sha256Object({
175
+ bundleHash: bundled.hash,
176
+ dockerfile,
177
+ })).slice(0, 16);
178
+ return { bundled, dockerfile, codeHash };
179
+ });
180
+ /** Observe a locally-present tag in the target engine. Missing → undefined. */
181
+ const imageExists = (imageRef, context) => docker.image.inspect(imageRef, context).pipe(Effect.map(() => true), Effect.catchReason("PlatformError", "NotFound", () => Effect.succeed(false)));
182
+ /**
183
+ * Resolve the image for a bundled service: compute the content-addressed
184
+ * tag, then build only when that exact tag is not already present in the
185
+ * target Docker context (crash-safe convergence).
186
+ */
187
+ const resolve = Effect.fn(function* (options) {
188
+ const { id, source, session } = options;
189
+ yield* session.note(`Bundling ${id} program...`);
190
+ const { bundled, dockerfile, codeHash } = yield* computeCodeHash({
191
+ source,
192
+ isExternal: options.isExternal,
193
+ });
194
+ const imageRef = `${options.name}:${codeHash}`;
195
+ if (yield* imageExists(imageRef, options.context)) {
196
+ return { imageRef, codeHash };
197
+ }
198
+ const realMain = yield* resolveMainPath(source.main);
199
+ const contextDir = yield* getStableContextDir(realMain, dotAlchemy, `${id}-image`);
200
+ yield* docker.materialize({
201
+ context: contextDir,
202
+ dockerfile,
203
+ // Entry chunk becomes `index.mjs`; all other chunks keep their emitted
204
+ // `*.js` names so the entry's relative imports resolve.
205
+ files: bundled.files.map((file, index) => ({
206
+ path: index === 0 ? "index.mjs" : file.path,
207
+ content: file.content,
208
+ })),
209
+ });
210
+ yield* session.note(`Building container image ${imageRef}...`);
211
+ yield* docker.image.build({
212
+ context: contextDir,
213
+ tag: imageRef,
214
+ engineContext: options.context,
215
+ });
216
+ yield* session.note(`Built ${imageRef}`);
217
+ return { imageRef, codeHash };
218
+ });
219
+ /**
220
+ * Content hash without building the image. Runs the bundler (bootstrap
221
+ * entry included) so the hash reflects the exact image `resolve` would
222
+ * build — bootstrap-template changes and user-code edits both surface as
223
+ * drift. The provider calls this from `diff` and compares against
224
+ * `output.code.hash`.
225
+ */
226
+ const hash = Effect.fn(function* (options) {
227
+ const { codeHash } = yield* computeCodeHash(options);
228
+ return codeHash;
229
+ });
230
+ return { resolve, hash };
231
+ });
232
+ //# sourceMappingURL=ServiceImage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ServiceImage.js","sourceRoot":"","sources":["../../src/Docker/ServiceImage.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,117 @@
1
+ import * as Provider from "../Provider.ts";
2
+ import { Resource } from "../Resource.ts";
3
+ import { Docker } from "./Docker.ts";
4
+ import type { Providers } from "./Providers.ts";
5
+ export interface SwarmProps {
6
+ /** Docker context name or context resource of the engine to initialize. */
7
+ context?: Docker.ContextRef;
8
+ /**
9
+ * Address advertised to other swarm members, e.g. `"10.0.0.1"` or
10
+ * `"eth0"`. Required by Docker when the host has several network
11
+ * interfaces. Applied only when the swarm is first initialized.
12
+ */
13
+ advertiseAddr?: string;
14
+ /**
15
+ * Listen address for swarm traffic, e.g. `"0.0.0.0:2377"`. Applied only
16
+ * when the swarm is first initialized.
17
+ */
18
+ listenAddr?: string;
19
+ /**
20
+ * Address pools for global-scope (overlay) networks, e.g.
21
+ * `["10.20.0.0/16"]`. Applied only when the swarm is first initialized.
22
+ */
23
+ defaultAddrPool?: string[];
24
+ /**
25
+ * CIDR mask length for each subnet carved from `defaultAddrPool`.
26
+ * Applied only when the swarm is first initialized.
27
+ *
28
+ * @default 24
29
+ */
30
+ subnetSize?: number;
31
+ }
32
+ export interface Swarm extends Resource<"Docker.Swarm", SwarmProps, {
33
+ /** Swarm cluster id. */
34
+ id: string;
35
+ /** This node's id in the swarm (a manager). */
36
+ nodeId: string;
37
+ /** Docker context the swarm was initialized on. */
38
+ context?: string;
39
+ /** Number of manager nodes. */
40
+ managers: number;
41
+ /** Number of nodes in the swarm. */
42
+ nodes: number;
43
+ }, never, Providers> {
44
+ }
45
+ /**
46
+ * Swarm mode on a Docker engine — an idempotent `docker swarm init`.
47
+ *
48
+ * Turns the engine behind the given `context` (or the local engine) into a
49
+ * single-node swarm: the node becomes a manager that can run `Docker.Service`
50
+ * workloads. Regular (non-swarm) docker usage of the engine is unaffected.
51
+ *
52
+ * Pass the swarm as the `context` of a `Docker.Service` or overlay
53
+ * `Docker.Network`: the workload then deploys after the swarm exists and
54
+ * inherits its Docker context.
55
+ *
56
+ * An engine that is already in swarm mode is treated as foreign — adopt it
57
+ * with `adopt(true)` (or `--adopt`) to manage it. Destroying the resource
58
+ * dissolves the node's swarm membership (`docker swarm leave --force`),
59
+ * which stops every service running on it — services managed by the same
60
+ * stack are destroyed first via their dependency edges.
61
+ *
62
+ * Growing the cluster beyond one node is host-level setup: run
63
+ * `docker swarm join --token <token> <manager-ip>:2377` on each additional
64
+ * machine (`docker swarm join-token worker` on the manager prints the
65
+ * command). Alchemy manages the swarm's workloads through the manager.
66
+ * @resource
67
+ * @section Creating a Swarm
68
+ * @example Local single-node swarm
69
+ * ```typescript
70
+ * const swarm = yield* Docker.Swarm("swarm");
71
+ * ```
72
+ *
73
+ * @example Remote engine over SSH
74
+ * ```typescript
75
+ * const vps = yield* Docker.Context("vps", {
76
+ * docker: "host=ssh://deploy@example.com",
77
+ * });
78
+ * const swarm = yield* Docker.Swarm("swarm", {
79
+ * context: vps,
80
+ * advertiseAddr: "10.0.0.1",
81
+ * });
82
+ * ```
83
+ *
84
+ * @section Using an Existing Swarm
85
+ * @example Reference without owning
86
+ * ```typescript
87
+ * // Services don't require a Swarm resource — point them at an engine that
88
+ * // is already a manager and the swarm's lifecycle stays external: destroy
89
+ * // removes the services, never the swarm.
90
+ * const web = yield* Docker.Service("web", {
91
+ * context: vps,
92
+ * image: "nginx:alpine",
93
+ * });
94
+ * ```
95
+ *
96
+ * @example Adopt an already-initialized engine
97
+ * ```typescript
98
+ * // Adoption makes the swarm part of the stack — destroy then dissolves
99
+ * // the node's membership.
100
+ * const swarm = yield* Docker.Swarm("swarm").pipe(adopt(true));
101
+ * ```
102
+ *
103
+ * @section Deploying into the Swarm
104
+ * @example Service ordered after the swarm
105
+ * ```typescript
106
+ * const swarm = yield* Docker.Swarm("swarm");
107
+ * const web = yield* Docker.Service("web", {
108
+ * context: swarm,
109
+ * image: "nginx:alpine",
110
+ * replicas: 2,
111
+ * ports: [{ external: 8080, internal: 80 }],
112
+ * });
113
+ * ```
114
+ */
115
+ export declare const Swarm: import("../Resource.ts").ResourceClass<Swarm>;
116
+ export declare const SwarmProvider: () => import("effect/Layer").Layer<Provider.Provider<Swarm>, never, Docker>;
117
+ //# sourceMappingURL=Swarm.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Swarm.d.ts","sourceRoot":"","sources":["../../src/Docker/Swarm.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAqB,MAAM,aAAa,CAAC;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,MAAM,WAAW,UAAU;IACzB,2EAA2E;IAC3E,OAAO,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IAC5B;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,KAAM,SAAQ,QAAQ,CACrC,cAAc,EACd,UAAU,EACV;IACE,wBAAwB;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,+CAA+C;IAC/C,MAAM,EAAE,MAAM,CAAC;IACf,mDAAmD;IACnD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,+BAA+B;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,oCAAoC;IACpC,KAAK,EAAE,MAAM,CAAC;CACf,EACD,KAAK,EACL,SAAS,CACV;CAAG;AAEJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqEG;AACH,eAAO,MAAM,KAAK,+CAAkC,CAAC;AAErD,eAAO,MAAM,aAAa,6EAuFvB,CAAC"}
@@ -0,0 +1,149 @@
1
+ import * as Effect from "effect/Effect";
2
+ import { Unowned } from "../AdoptPolicy.js";
3
+ import { isResolved } from "../Diff.js";
4
+ import * as Provider from "../Provider.js";
5
+ import { Resource } from "../Resource.js";
6
+ import { Docker, dockerContextName } from "./Docker.js";
7
+ /**
8
+ * Swarm mode on a Docker engine — an idempotent `docker swarm init`.
9
+ *
10
+ * Turns the engine behind the given `context` (or the local engine) into a
11
+ * single-node swarm: the node becomes a manager that can run `Docker.Service`
12
+ * workloads. Regular (non-swarm) docker usage of the engine is unaffected.
13
+ *
14
+ * Pass the swarm as the `context` of a `Docker.Service` or overlay
15
+ * `Docker.Network`: the workload then deploys after the swarm exists and
16
+ * inherits its Docker context.
17
+ *
18
+ * An engine that is already in swarm mode is treated as foreign — adopt it
19
+ * with `adopt(true)` (or `--adopt`) to manage it. Destroying the resource
20
+ * dissolves the node's swarm membership (`docker swarm leave --force`),
21
+ * which stops every service running on it — services managed by the same
22
+ * stack are destroyed first via their dependency edges.
23
+ *
24
+ * Growing the cluster beyond one node is host-level setup: run
25
+ * `docker swarm join --token <token> <manager-ip>:2377` on each additional
26
+ * machine (`docker swarm join-token worker` on the manager prints the
27
+ * command). Alchemy manages the swarm's workloads through the manager.
28
+ * @resource
29
+ * @section Creating a Swarm
30
+ * @example Local single-node swarm
31
+ * ```typescript
32
+ * const swarm = yield* Docker.Swarm("swarm");
33
+ * ```
34
+ *
35
+ * @example Remote engine over SSH
36
+ * ```typescript
37
+ * const vps = yield* Docker.Context("vps", {
38
+ * docker: "host=ssh://deploy@example.com",
39
+ * });
40
+ * const swarm = yield* Docker.Swarm("swarm", {
41
+ * context: vps,
42
+ * advertiseAddr: "10.0.0.1",
43
+ * });
44
+ * ```
45
+ *
46
+ * @section Using an Existing Swarm
47
+ * @example Reference without owning
48
+ * ```typescript
49
+ * // Services don't require a Swarm resource — point them at an engine that
50
+ * // is already a manager and the swarm's lifecycle stays external: destroy
51
+ * // removes the services, never the swarm.
52
+ * const web = yield* Docker.Service("web", {
53
+ * context: vps,
54
+ * image: "nginx:alpine",
55
+ * });
56
+ * ```
57
+ *
58
+ * @example Adopt an already-initialized engine
59
+ * ```typescript
60
+ * // Adoption makes the swarm part of the stack — destroy then dissolves
61
+ * // the node's membership.
62
+ * const swarm = yield* Docker.Swarm("swarm").pipe(adopt(true));
63
+ * ```
64
+ *
65
+ * @section Deploying into the Swarm
66
+ * @example Service ordered after the swarm
67
+ * ```typescript
68
+ * const swarm = yield* Docker.Swarm("swarm");
69
+ * const web = yield* Docker.Service("web", {
70
+ * context: swarm,
71
+ * image: "nginx:alpine",
72
+ * replicas: 2,
73
+ * ports: [{ external: 8080, internal: 80 }],
74
+ * });
75
+ * ```
76
+ */
77
+ export const Swarm = Resource("Docker.Swarm");
78
+ export const SwarmProvider = () => Provider.effect(Swarm, Effect.gen(function* () {
79
+ const docker = yield* Docker;
80
+ /** Active-manager info, or undefined when the engine isn't one. */
81
+ const observe = Effect.fn(function* (context) {
82
+ const info = yield* docker.swarm.info(context);
83
+ if (info.LocalNodeState !== "active" ||
84
+ !info.ControlAvailable ||
85
+ !info.Cluster?.ID) {
86
+ return undefined;
87
+ }
88
+ return info;
89
+ });
90
+ return Swarm.Provider.of({
91
+ list: () => Effect.succeed([]),
92
+ read: Effect.fn(function* ({ olds, output }) {
93
+ const context = dockerContextName(olds?.context);
94
+ const info = yield* observe(context);
95
+ if (!info)
96
+ return undefined;
97
+ const attrs = toSwarmAttributes(info, context);
98
+ if (output)
99
+ return attrs;
100
+ // A swarm carries no labels to brand, so an already-initialized
101
+ // engine can never be proven ours — adoption is gated behind
102
+ // `--adopt` / `adopt(true)`.
103
+ return Unowned(attrs);
104
+ }),
105
+ diff: Effect.fn(function* ({ news, olds }) {
106
+ if (!isResolved(news))
107
+ return undefined;
108
+ if (dockerContextName(olds?.context) !==
109
+ dockerContextName(news?.context)) {
110
+ return { action: "replace", deleteFirst: true };
111
+ }
112
+ // The remaining props only apply at `swarm init`; changing them on
113
+ // a live swarm is a no-op rather than a destructive re-init.
114
+ return { action: "noop" };
115
+ }),
116
+ reconcile: Effect.fn(function* ({ news }) {
117
+ const context = dockerContextName(news?.context);
118
+ const existing = yield* observe(context);
119
+ if (existing)
120
+ return toSwarmAttributes(existing, context);
121
+ yield* docker.swarm
122
+ .init({
123
+ context,
124
+ "advertise-addr": news?.advertiseAddr,
125
+ "listen-addr": news?.listenAddr,
126
+ "default-addr-pool": news?.defaultAddrPool,
127
+ "default-addr-pool-mask-length": news?.subnetSize,
128
+ })
129
+ .pipe(
130
+ // A concurrent init (or an interrupted prior reconcile) already
131
+ // made this node a swarm member — converge on the observation.
132
+ Effect.catchIf((error) => /already part of a swarm/i.test(String(error)), () => Effect.void));
133
+ const info = yield* observe(context);
134
+ if (!info) {
135
+ return yield* Effect.die(new Error("docker swarm init succeeded but the engine did not become an active swarm manager"));
136
+ }
137
+ return toSwarmAttributes(info, context);
138
+ }),
139
+ delete: Effect.fn(({ output }) => docker.swarm.leave(true, output.context).pipe(Effect.catchIf((error) => /not part of a swarm/i.test(String(error)), () => Effect.void), Effect.asVoid)),
140
+ });
141
+ }));
142
+ const toSwarmAttributes = (info, context) => ({
143
+ id: info.Cluster.ID,
144
+ nodeId: info.NodeID,
145
+ context,
146
+ managers: info.Managers ?? 1,
147
+ nodes: info.Nodes ?? 1,
148
+ });
149
+ //# sourceMappingURL=Swarm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Swarm.js","sourceRoot":"","sources":["../../src/Docker/Swarm.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,8 @@ export interface VolumeProps {
21
21
  driverOpts?: Record<string, string>;
22
22
  /** Custom metadata labels. */
23
23
  labels?: Record<string, string>;
24
+ /** Docker context name or context resource. */
25
+ context?: Docker.ContextRef;
24
26
  }
25
27
  export interface Volume extends Resource<"Docker.Volume", VolumeProps, {
26
28
  /** Docker volume name. */
@@ -74,6 +76,15 @@ export interface Volume extends Resource<"Docker.Volume", VolumeProps, {
74
76
  * },
75
77
  * });
76
78
  * ```
79
+ *
80
+ * @section Docker Context
81
+ * @example Create a volume in a named Docker context
82
+ * ```typescript
83
+ * const data = yield* Docker.Volume("data", {
84
+ * name: "app-data",
85
+ * context: "remote-build",
86
+ * });
87
+ * ```
77
88
  */
78
89
  export declare const Volume: import("../Resource.ts").ResourceClass<Volume>;
79
90
  export declare const VolumeProvider: () => import("effect/Layer").Layer<Provider.Provider<Volume>, never, Docker | import("../Stack.ts").Stack | import("../Stage.ts").Stage>;
@@ -1 +1 @@
1
- {"version":3,"file":"Volume.d.ts","sourceRoot":"","sources":["../../src/Docker/Volume.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAM1C,OAAO,EAAE,MAAM,EAAsB,MAAM,aAAa,CAAC;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,MAAM,WAAW,WAAW;IAC1B,kBAAkB;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,mBAAmB;IACnB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,sCAAsC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+BAA+B;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,8BAA8B;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,MAAO,SAAQ,QAAQ,CACtC,eAAe,EACf,WAAW,EACX;IACE,0BAA0B;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,qBAAqB;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,kDAAkD;IAClD,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,iCAAiC;IACjC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,4BAA4B;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sDAAsD;IACtD,SAAS,EAAE,MAAM,CAAC;CACnB,EACD,KAAK,EACL,SAAS,CACV;CAAG;AAEJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,eAAO,MAAM,MAAM,gDAAoC,CAAC;AAExD,eAAO,MAAM,cAAc,0IAyExB,CAAC;AAcJ,eAAO,MAAM,kBAAkB,SACvB,MAAM,CAAC,MAAM,KAClB,MAAM,CAAC,YAAY,CAQpB,CAAC"}
1
+ {"version":3,"file":"Volume.d.ts","sourceRoot":"","sources":["../../src/Docker/Volume.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAM1C,OAAO,EAAE,MAAM,EAAyC,MAAM,aAAa,CAAC;AAC5E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,MAAM,WAAW,WAAW;IAC1B,kBAAkB;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,mBAAmB;IACnB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,sCAAsC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+BAA+B;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,8BAA8B;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,+CAA+C;IAC/C,OAAO,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;CAC7B;AAED,MAAM,WAAW,MAAO,SAAQ,QAAQ,CACtC,eAAe,EACf,WAAW,EACX;IACE,0BAA0B;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,qBAAqB;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,kDAAkD;IAClD,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,iCAAiC;IACjC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,4BAA4B;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sDAAsD;IACtD,SAAS,EAAE,MAAM,CAAC;CACnB,EACD,KAAK,EACL,SAAS,CACV;CAAG;AAEJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,eAAO,MAAM,MAAM,gDAAoC,CAAC;AAExD,eAAO,MAAM,cAAc,0IAiFxB,CAAC;AAcJ,eAAO,MAAM,kBAAkB,SACvB,MAAM,CAAC,MAAM,KAClB,MAAM,CAAC,YAAY,CAQpB,CAAC"}