alchemy-effect 0.2.0 → 0.3.0

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 (428) hide show
  1. package/bin/alchemy-effect.js +55038 -8
  2. package/bin/alchemy-effect.js.map +1 -1
  3. package/bin/alchemy-effect.ts +266 -10
  4. package/lib/$.d.ts +5 -0
  5. package/lib/$.d.ts.map +1 -0
  6. package/lib/$.js +9 -0
  7. package/lib/$.js.map +1 -0
  8. package/lib/app.d.ts +4 -17
  9. package/lib/app.d.ts.map +1 -1
  10. package/lib/app.js +0 -20
  11. package/lib/app.js.map +1 -1
  12. package/lib/apply.d.ts +14 -74
  13. package/lib/apply.d.ts.map +1 -1
  14. package/lib/apply.js +62 -57
  15. package/lib/apply.js.map +1 -1
  16. package/lib/assert-never.d.ts +12 -0
  17. package/lib/assert-never.d.ts.map +1 -0
  18. package/lib/assert-never.js +11 -0
  19. package/lib/assert-never.js.map +1 -0
  20. package/lib/aws/account.d.ts +10 -1
  21. package/lib/aws/account.d.ts.map +1 -1
  22. package/lib/aws/account.js +18 -3
  23. package/lib/aws/account.js.map +1 -1
  24. package/lib/aws/client.d.ts.map +1 -1
  25. package/lib/aws/client.js +0 -1
  26. package/lib/aws/client.js.map +1 -1
  27. package/lib/aws/config.d.ts +15 -0
  28. package/lib/aws/config.d.ts.map +1 -0
  29. package/lib/aws/config.js +1 -0
  30. package/lib/aws/config.js.map +1 -0
  31. package/lib/aws/credentials.d.ts +10 -0
  32. package/lib/aws/credentials.d.ts.map +1 -1
  33. package/lib/aws/credentials.js +73 -47
  34. package/lib/aws/credentials.js.map +1 -1
  35. package/lib/aws/dynamodb/client.d.ts +1 -1
  36. package/lib/aws/dynamodb/client.d.ts.map +1 -1
  37. package/lib/aws/dynamodb/index.d.ts +2 -1
  38. package/lib/aws/dynamodb/index.d.ts.map +1 -1
  39. package/lib/aws/dynamodb/index.js +1 -2
  40. package/lib/aws/dynamodb/index.js.map +1 -1
  41. package/lib/aws/dynamodb/secondary-index.d.ts +5 -4
  42. package/lib/aws/dynamodb/secondary-index.d.ts.map +1 -1
  43. package/lib/aws/dynamodb/table.d.ts +23 -20
  44. package/lib/aws/dynamodb/table.d.ts.map +1 -1
  45. package/lib/aws/dynamodb/table.get-item.d.ts +8 -6
  46. package/lib/aws/dynamodb/table.get-item.d.ts.map +1 -1
  47. package/lib/aws/dynamodb/table.get-item.js +4 -2
  48. package/lib/aws/dynamodb/table.get-item.js.map +1 -1
  49. package/lib/aws/dynamodb/table.js.map +1 -1
  50. package/lib/aws/dynamodb/table.provider.d.ts +3 -4
  51. package/lib/aws/dynamodb/table.provider.d.ts.map +1 -1
  52. package/lib/aws/dynamodb/table.provider.js +17 -29
  53. package/lib/aws/dynamodb/table.provider.js.map +1 -1
  54. package/lib/aws/ec2/client.d.ts +1 -1
  55. package/lib/aws/ec2/client.d.ts.map +1 -1
  56. package/lib/aws/ec2/index.d.ts +3 -0
  57. package/lib/aws/ec2/index.d.ts.map +1 -1
  58. package/lib/aws/ec2/index.js +3 -0
  59. package/lib/aws/ec2/index.js.map +1 -1
  60. package/lib/aws/ec2/subnet.d.ts +175 -0
  61. package/lib/aws/ec2/subnet.d.ts.map +1 -0
  62. package/lib/aws/ec2/subnet.js +4 -0
  63. package/lib/aws/ec2/subnet.js.map +1 -0
  64. package/lib/aws/ec2/subnet.provider.d.ts +4 -0
  65. package/lib/aws/ec2/subnet.provider.d.ts.map +1 -0
  66. package/lib/aws/ec2/subnet.provider.js +250 -0
  67. package/lib/aws/ec2/subnet.provider.js.map +1 -0
  68. package/lib/aws/ec2/vpc.d.ts +12 -8
  69. package/lib/aws/ec2/vpc.d.ts.map +1 -1
  70. package/lib/aws/ec2/vpc.js +1 -0
  71. package/lib/aws/ec2/vpc.js.map +1 -1
  72. package/lib/aws/ec2/vpc.provider.d.ts +3 -4
  73. package/lib/aws/ec2/vpc.provider.d.ts.map +1 -1
  74. package/lib/aws/ec2/vpc.provider.js +11 -26
  75. package/lib/aws/ec2/vpc.provider.js.map +1 -1
  76. package/lib/aws/index.d.ts +16 -19
  77. package/lib/aws/index.d.ts.map +1 -1
  78. package/lib/aws/index.js +7 -10
  79. package/lib/aws/index.js.map +1 -1
  80. package/lib/aws/lambda/consume.d.ts +10 -11
  81. package/lib/aws/lambda/consume.d.ts.map +1 -1
  82. package/lib/aws/lambda/consume.js +3 -3
  83. package/lib/aws/lambda/consume.js.map +1 -1
  84. package/lib/aws/lambda/function.d.ts +7 -7
  85. package/lib/aws/lambda/function.d.ts.map +1 -1
  86. package/lib/aws/lambda/function.handler.d.ts +1 -1
  87. package/lib/aws/lambda/function.handler.d.ts.map +1 -1
  88. package/lib/aws/lambda/function.handler.js.map +1 -1
  89. package/lib/aws/lambda/function.invoke.d.ts +6 -4
  90. package/lib/aws/lambda/function.invoke.d.ts.map +1 -1
  91. package/lib/aws/lambda/function.invoke.js +3 -1
  92. package/lib/aws/lambda/function.invoke.js.map +1 -1
  93. package/lib/aws/lambda/function.js +1 -1
  94. package/lib/aws/lambda/function.js.map +1 -1
  95. package/lib/aws/lambda/function.provider.d.ts +5 -4
  96. package/lib/aws/lambda/function.provider.d.ts.map +1 -1
  97. package/lib/aws/lambda/function.provider.js +16 -14
  98. package/lib/aws/lambda/function.provider.js.map +1 -1
  99. package/lib/aws/lambda/index.d.ts +1 -0
  100. package/lib/aws/lambda/index.d.ts.map +1 -1
  101. package/lib/aws/lambda/index.js +1 -0
  102. package/lib/aws/lambda/index.js.map +1 -1
  103. package/lib/aws/lambda/serve.d.ts +2 -4
  104. package/lib/aws/lambda/serve.d.ts.map +1 -1
  105. package/lib/aws/profile.d.ts +2 -2
  106. package/lib/aws/profile.d.ts.map +1 -1
  107. package/lib/aws/profile.js +1 -1
  108. package/lib/aws/profile.js.map +1 -1
  109. package/lib/aws/region.d.ts +14 -2
  110. package/lib/aws/region.d.ts.map +1 -1
  111. package/lib/aws/region.js +26 -1
  112. package/lib/aws/region.js.map +1 -1
  113. package/lib/aws/sqs/client.d.ts +1 -1
  114. package/lib/aws/sqs/client.d.ts.map +1 -1
  115. package/lib/aws/sqs/index.d.ts +1 -0
  116. package/lib/aws/sqs/index.d.ts.map +1 -1
  117. package/lib/aws/sqs/index.js +1 -0
  118. package/lib/aws/sqs/index.js.map +1 -1
  119. package/lib/aws/sqs/queue.consume.d.ts +1 -1
  120. package/lib/aws/sqs/queue.consume.d.ts.map +1 -1
  121. package/lib/aws/sqs/queue.consume.js +0 -1
  122. package/lib/aws/sqs/queue.consume.js.map +1 -1
  123. package/lib/aws/sqs/queue.d.ts +6 -4
  124. package/lib/aws/sqs/queue.d.ts.map +1 -1
  125. package/lib/aws/sqs/queue.event-source.d.ts +8 -6
  126. package/lib/aws/sqs/queue.event-source.d.ts.map +1 -1
  127. package/lib/aws/sqs/queue.event-source.js +26 -44
  128. package/lib/aws/sqs/queue.event-source.js.map +1 -1
  129. package/lib/aws/sqs/queue.js +1 -1
  130. package/lib/aws/sqs/queue.js.map +1 -1
  131. package/lib/aws/sqs/queue.provider.d.ts +4 -4
  132. package/lib/aws/sqs/queue.provider.d.ts.map +1 -1
  133. package/lib/aws/sqs/queue.provider.js +3 -3
  134. package/lib/aws/sqs/queue.provider.js.map +1 -1
  135. package/lib/aws/sqs/queue.send-message.d.ts +7 -5
  136. package/lib/aws/sqs/queue.send-message.d.ts.map +1 -1
  137. package/lib/aws/sqs/queue.send-message.js +4 -2
  138. package/lib/aws/sqs/queue.send-message.js.map +1 -1
  139. package/lib/binding.d.ts +12 -12
  140. package/lib/binding.d.ts.map +1 -1
  141. package/lib/binding.js.map +1 -1
  142. package/lib/cli/components/ApprovePlan.d.ts +2 -2
  143. package/lib/cli/components/ApprovePlan.d.ts.map +1 -1
  144. package/lib/cli/components/ApprovePlan.js.map +1 -1
  145. package/lib/cli/components/Plan.d.ts +2 -2
  146. package/lib/cli/components/Plan.d.ts.map +1 -1
  147. package/lib/cli/components/Plan.js.map +1 -1
  148. package/lib/cli/components/PlanProgress.d.ts +8 -4
  149. package/lib/cli/components/PlanProgress.d.ts.map +1 -1
  150. package/lib/cli/components/PlanProgress.js +11 -1
  151. package/lib/cli/components/PlanProgress.js.map +1 -1
  152. package/lib/cli/index.d.ts +265 -224
  153. package/lib/cli/index.d.ts.map +1 -1
  154. package/lib/cli/index.js +57 -65
  155. package/lib/cli/index.js.map +1 -1
  156. package/lib/cli/ink-service.d.ts +4 -0
  157. package/lib/cli/ink-service.d.ts.map +1 -0
  158. package/lib/cli/ink-service.js +43 -0
  159. package/lib/cli/ink-service.js.map +1 -0
  160. package/lib/cli/service.d.ts +21 -0
  161. package/lib/cli/service.d.ts.map +1 -0
  162. package/lib/cli/service.js +5 -0
  163. package/lib/cli/service.js.map +1 -0
  164. package/lib/cloudflare/account.d.ts +10 -0
  165. package/lib/cloudflare/account.d.ts.map +1 -0
  166. package/lib/cloudflare/account.js +24 -0
  167. package/lib/cloudflare/account.js.map +1 -0
  168. package/lib/cloudflare/api.d.ts +7 -7
  169. package/lib/cloudflare/api.d.ts.map +1 -1
  170. package/lib/cloudflare/api.js +18 -17
  171. package/lib/cloudflare/api.js.map +1 -1
  172. package/lib/cloudflare/config.d.ts +9 -0
  173. package/lib/cloudflare/config.d.ts.map +1 -0
  174. package/lib/cloudflare/config.js +1 -0
  175. package/lib/cloudflare/config.js.map +1 -0
  176. package/lib/cloudflare/index.d.ts +3 -1
  177. package/lib/cloudflare/index.d.ts.map +1 -1
  178. package/lib/cloudflare/index.js +3 -0
  179. package/lib/cloudflare/index.js.map +1 -1
  180. package/lib/cloudflare/kv/namespace.binding.d.ts +5 -3
  181. package/lib/cloudflare/kv/namespace.binding.d.ts.map +1 -1
  182. package/lib/cloudflare/kv/namespace.binding.js +1 -1
  183. package/lib/cloudflare/kv/namespace.binding.js.map +1 -1
  184. package/lib/cloudflare/kv/namespace.d.ts +3 -2
  185. package/lib/cloudflare/kv/namespace.d.ts.map +1 -1
  186. package/lib/cloudflare/kv/namespace.js.map +1 -1
  187. package/lib/cloudflare/kv/namespace.provider.d.ts +3 -2
  188. package/lib/cloudflare/kv/namespace.provider.d.ts.map +1 -1
  189. package/lib/cloudflare/kv/namespace.provider.js +8 -7
  190. package/lib/cloudflare/kv/namespace.provider.js.map +1 -1
  191. package/lib/cloudflare/live.d.ts +5 -5
  192. package/lib/cloudflare/live.d.ts.map +1 -1
  193. package/lib/cloudflare/live.js +5 -8
  194. package/lib/cloudflare/live.js.map +1 -1
  195. package/lib/cloudflare/r2/bucket.binding.d.ts +5 -3
  196. package/lib/cloudflare/r2/bucket.binding.d.ts.map +1 -1
  197. package/lib/cloudflare/r2/bucket.binding.js +1 -1
  198. package/lib/cloudflare/r2/bucket.binding.js.map +1 -1
  199. package/lib/cloudflare/r2/bucket.d.ts +3 -2
  200. package/lib/cloudflare/r2/bucket.d.ts.map +1 -1
  201. package/lib/cloudflare/r2/bucket.js.map +1 -1
  202. package/lib/cloudflare/r2/bucket.provider.d.ts +3 -2
  203. package/lib/cloudflare/r2/bucket.provider.d.ts.map +1 -1
  204. package/lib/cloudflare/r2/bucket.provider.js +8 -7
  205. package/lib/cloudflare/r2/bucket.provider.js.map +1 -1
  206. package/lib/cloudflare/worker/assets.fetch.d.ts +3 -2
  207. package/lib/cloudflare/worker/assets.fetch.d.ts.map +1 -1
  208. package/lib/cloudflare/worker/assets.fetch.js +2 -1
  209. package/lib/cloudflare/worker/assets.fetch.js.map +1 -1
  210. package/lib/cloudflare/worker/assets.provider.d.ts +1 -1
  211. package/lib/cloudflare/worker/assets.provider.d.ts.map +1 -1
  212. package/lib/cloudflare/worker/index.d.ts +0 -1
  213. package/lib/cloudflare/worker/index.d.ts.map +1 -1
  214. package/lib/cloudflare/worker/worker.d.ts +5 -6
  215. package/lib/cloudflare/worker/worker.d.ts.map +1 -1
  216. package/lib/cloudflare/worker/worker.handler.d.ts +1 -1
  217. package/lib/cloudflare/worker/worker.handler.d.ts.map +1 -1
  218. package/lib/cloudflare/worker/worker.handler.js.map +1 -1
  219. package/lib/cloudflare/worker/worker.js.map +1 -1
  220. package/lib/cloudflare/worker/worker.provider.d.ts +3 -2
  221. package/lib/cloudflare/worker/worker.provider.d.ts.map +1 -1
  222. package/lib/cloudflare/worker/worker.provider.js +7 -6
  223. package/lib/cloudflare/worker/worker.provider.js.map +1 -1
  224. package/lib/cloudflare/worker/worker.serve.d.ts +7 -7
  225. package/lib/cloudflare/worker/worker.serve.d.ts.map +1 -1
  226. package/lib/cloudflare/worker/worker.serve.js.map +1 -1
  227. package/lib/data.d.ts +3 -0
  228. package/lib/data.d.ts.map +1 -0
  229. package/lib/data.js +8 -0
  230. package/lib/data.js.map +1 -0
  231. package/lib/destroy.d.ts +1 -1
  232. package/lib/destroy.d.ts.map +1 -1
  233. package/lib/destroy.js +1 -4
  234. package/lib/destroy.js.map +1 -1
  235. package/lib/diff.d.ts +16 -0
  236. package/lib/diff.d.ts.map +1 -0
  237. package/lib/diff.js +9 -0
  238. package/lib/diff.js.map +1 -0
  239. package/lib/env.d.ts +5 -0
  240. package/lib/env.d.ts.map +1 -1
  241. package/lib/env.js +15 -29
  242. package/lib/env.js.map +1 -1
  243. package/lib/exports.d.ts +9 -0
  244. package/lib/exports.d.ts.map +1 -0
  245. package/lib/exports.js +13 -0
  246. package/lib/exports.js.map +1 -0
  247. package/lib/index.d.ts +10 -2
  248. package/lib/index.d.ts.map +1 -1
  249. package/lib/index.js +10 -5
  250. package/lib/index.js.map +1 -1
  251. package/lib/input.d.ts +32 -0
  252. package/lib/input.d.ts.map +1 -0
  253. package/lib/input.js +1 -0
  254. package/lib/input.js.map +1 -0
  255. package/lib/output.d.ts +143 -0
  256. package/lib/output.d.ts.map +1 -0
  257. package/lib/output.js +269 -0
  258. package/lib/output.js.map +1 -0
  259. package/lib/plan.d.ts +47 -28
  260. package/lib/plan.d.ts.map +1 -1
  261. package/lib/plan.js +257 -151
  262. package/lib/plan.js.map +1 -1
  263. package/lib/policy.d.ts +3 -4
  264. package/lib/policy.d.ts.map +1 -1
  265. package/lib/policy.js +0 -1
  266. package/lib/policy.js.map +1 -1
  267. package/lib/provider.d.ts +14 -16
  268. package/lib/provider.d.ts.map +1 -1
  269. package/lib/ref.d.ts +14 -0
  270. package/lib/ref.d.ts.map +1 -0
  271. package/lib/ref.js +21 -0
  272. package/lib/ref.js.map +1 -0
  273. package/lib/resource.d.ts +11 -6
  274. package/lib/resource.d.ts.map +1 -1
  275. package/lib/resource.js.map +1 -1
  276. package/lib/runtime.d.ts +7 -6
  277. package/lib/runtime.d.ts.map +1 -1
  278. package/lib/runtime.js.map +1 -1
  279. package/lib/service.d.ts +9 -6
  280. package/lib/service.d.ts.map +1 -1
  281. package/lib/service.js.map +1 -1
  282. package/lib/stack.d.ts +60 -0
  283. package/lib/stack.d.ts.map +1 -0
  284. package/lib/stack.js +11 -0
  285. package/lib/stack.js.map +1 -0
  286. package/lib/stage.d.ts +39 -0
  287. package/lib/stage.d.ts.map +1 -0
  288. package/lib/stage.js +32 -0
  289. package/lib/stage.js.map +1 -0
  290. package/lib/state.d.ts +51 -10
  291. package/lib/state.d.ts.map +1 -1
  292. package/lib/state.js +30 -29
  293. package/lib/state.js.map +1 -1
  294. package/lib/test.d.ts +25 -4
  295. package/lib/test.d.ts.map +1 -1
  296. package/lib/test.js +54 -14
  297. package/lib/test.js.map +1 -1
  298. package/lib/tsconfig.test.tsbuildinfo +1 -1
  299. package/lib/type.d.ts +3 -0
  300. package/lib/type.d.ts.map +1 -1
  301. package/lib/unknown.d.ts +4 -0
  302. package/lib/unknown.d.ts.map +1 -0
  303. package/lib/unknown.js +4 -0
  304. package/lib/unknown.js.map +1 -0
  305. package/lib/user.d.ts +3 -0
  306. package/lib/user.d.ts.map +1 -0
  307. package/lib/user.js +3 -0
  308. package/lib/user.js.map +1 -0
  309. package/lib/util.d.ts +6 -0
  310. package/lib/util.d.ts.map +1 -0
  311. package/lib/util.js +9 -0
  312. package/lib/util.js.map +1 -0
  313. package/package.json +18 -12
  314. package/src/$.ts +17 -0
  315. package/src/app.ts +3 -32
  316. package/src/apply.ts +429 -441
  317. package/src/assert-never.ts +18 -0
  318. package/src/aws/account.ts +23 -3
  319. package/src/aws/client.ts +0 -1
  320. package/src/aws/config.ts +16 -0
  321. package/src/aws/credentials.ts +212 -177
  322. package/src/aws/dynamodb/index.ts +3 -3
  323. package/src/aws/dynamodb/table.get-item.ts +5 -9
  324. package/src/aws/dynamodb/table.provider.ts +35 -39
  325. package/src/aws/dynamodb/table.ts +29 -84
  326. package/src/aws/ec2/index.ts +4 -0
  327. package/src/aws/ec2/subnet.provider.ts +358 -0
  328. package/src/aws/ec2/subnet.ts +213 -0
  329. package/src/aws/ec2/vpc.provider.ts +20 -36
  330. package/src/aws/ec2/vpc.ts +19 -8
  331. package/src/aws/index.ts +46 -40
  332. package/src/aws/lambda/consume.ts +8 -7
  333. package/src/aws/lambda/function.handler.ts +1 -1
  334. package/src/aws/lambda/function.invoke.ts +6 -2
  335. package/src/aws/lambda/function.provider.ts +28 -21
  336. package/src/aws/lambda/function.ts +7 -4
  337. package/src/aws/lambda/index.ts +2 -0
  338. package/src/aws/profile.ts +1 -4
  339. package/src/aws/region.ts +42 -3
  340. package/src/aws/sqs/index.ts +2 -0
  341. package/src/aws/sqs/queue.consume.ts +1 -1
  342. package/src/aws/sqs/queue.event-source.ts +29 -55
  343. package/src/aws/sqs/queue.provider.ts +11 -4
  344. package/src/aws/sqs/queue.send-message.ts +5 -8
  345. package/src/aws/sqs/queue.ts +9 -4
  346. package/src/binding.ts +19 -19
  347. package/src/cli/components/ApprovePlan.tsx +2 -2
  348. package/src/cli/components/Plan.tsx +3 -2
  349. package/src/cli/components/PlanProgress.tsx +32 -14
  350. package/src/cli/index.ts +2 -6
  351. package/src/cli/ink-service.tsx +61 -0
  352. package/src/cli/service.ts +23 -0
  353. package/src/cloudflare/account.ts +37 -0
  354. package/src/cloudflare/api.ts +33 -29
  355. package/src/cloudflare/config.ts +7 -0
  356. package/src/cloudflare/index.ts +3 -1
  357. package/src/cloudflare/kv/namespace.binding.ts +3 -1
  358. package/src/cloudflare/kv/namespace.provider.ts +9 -8
  359. package/src/cloudflare/kv/namespace.ts +3 -2
  360. package/src/cloudflare/live.ts +11 -17
  361. package/src/cloudflare/r2/bucket.binding.ts +3 -1
  362. package/src/cloudflare/r2/bucket.provider.ts +9 -8
  363. package/src/cloudflare/r2/bucket.ts +8 -2
  364. package/src/cloudflare/worker/assets.fetch.ts +3 -1
  365. package/src/cloudflare/worker/assets.provider.ts +1 -1
  366. package/src/cloudflare/worker/index.ts +0 -2
  367. package/src/cloudflare/worker/worker.handler.ts +1 -1
  368. package/src/cloudflare/worker/worker.provider.ts +16 -13
  369. package/src/cloudflare/worker/worker.serve.ts +5 -2
  370. package/src/cloudflare/worker/worker.ts +4 -3
  371. package/src/data.ts +18 -0
  372. package/src/destroy.ts +1 -5
  373. package/src/diff.ts +30 -0
  374. package/src/env.ts +20 -32
  375. package/src/exports.ts +21 -0
  376. package/src/index.ts +10 -5
  377. package/src/input.ts +81 -0
  378. package/src/output.ts +518 -0
  379. package/src/plan.ts +380 -192
  380. package/src/policy.ts +3 -5
  381. package/src/provider.ts +25 -23
  382. package/src/ref.ts +48 -0
  383. package/src/resource.ts +20 -6
  384. package/src/runtime.ts +15 -8
  385. package/src/service.ts +11 -7
  386. package/src/stack.ts +116 -0
  387. package/src/stage.ts +85 -0
  388. package/src/state.ts +138 -60
  389. package/src/test.ts +117 -16
  390. package/src/type.ts +4 -0
  391. package/src/unknown.ts +6 -0
  392. package/src/user.ts +4 -0
  393. package/src/util.ts +21 -0
  394. package/lib/approve.d.ts +0 -15
  395. package/lib/approve.d.ts.map +0 -1
  396. package/lib/approve.js +0 -7
  397. package/lib/approve.js.map +0 -1
  398. package/lib/cli/approve.d.ts +0 -4
  399. package/lib/cli/approve.d.ts.map +0 -1
  400. package/lib/cli/approve.js +0 -18
  401. package/lib/cli/approve.js.map +0 -1
  402. package/lib/cli/clack.d.ts +0 -14
  403. package/lib/cli/clack.d.ts.map +0 -1
  404. package/lib/cli/clack.js +0 -12
  405. package/lib/cli/clack.js.map +0 -1
  406. package/lib/cli/main.d.ts +0 -2
  407. package/lib/cli/main.d.ts.map +0 -1
  408. package/lib/cli/main.js +0 -1
  409. package/lib/cli/main.js.map +0 -1
  410. package/lib/cli/plan.d.ts +0 -13
  411. package/lib/cli/plan.d.ts.map +0 -1
  412. package/lib/cli/plan.js +0 -1
  413. package/lib/cli/plan.js.map +0 -1
  414. package/lib/cli/progress.d.ts +0 -7
  415. package/lib/cli/progress.d.ts.map +0 -1
  416. package/lib/cli/progress.js +0 -30
  417. package/lib/cli/progress.js.map +0 -1
  418. package/lib/cli/spinner.d.ts +0 -2
  419. package/lib/cli/spinner.d.ts.map +0 -1
  420. package/lib/cli/spinner.js +0 -13
  421. package/lib/cli/spinner.js.map +0 -1
  422. package/src/approve.ts +0 -13
  423. package/src/cli/approve.tsx +0 -30
  424. package/src/cli/clack.ts +0 -22
  425. package/src/cli/main.ts +0 -0
  426. package/src/cli/plan.ts +0 -16
  427. package/src/cli/progress.tsx +0 -46
  428. package/src/cli/spinner.ts +0 -14
@@ -0,0 +1,4 @@
1
+ import { CLI } from "./service.ts";
2
+ import * as Layer from "effect/Layer";
3
+ export declare const inkCLI: () => Layer.Layer<CLI, never, never>;
4
+ //# sourceMappingURL=ink-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ink-service.d.ts","sourceRoot":"","sources":["../../src/cli/ink-service.tsx"],"names":[],"mappings":"AAEA,OAAO,EAA0B,GAAG,EAAE,MAAM,cAAc,CAAC;AAE3D,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAQtC,eAAO,MAAM,MAAM,sCAQhB,CAAC"}
@@ -0,0 +1,43 @@
1
+ import React from "react";
2
+ import { CLI } from "./service.js";
3
+ import * as Effect from "effect/Effect";
4
+ import * as Layer from "effect/Layer";
5
+ import { render } from "ink";
6
+ import { ApprovePlan } from "./components/ApprovePlan.js";
7
+ import { Plan } from "./components/Plan.js";
8
+ import { PlanProgress } from "./components/PlanProgress.js";
9
+ export const inkCLI = () => Layer.succeed(CLI, CLI.of({
10
+ approvePlan,
11
+ displayPlan,
12
+ startApplySession,
13
+ }));
14
+ const approvePlan = Effect.fn(function* (plan) {
15
+ let approved = false;
16
+ const { waitUntilExit } = render(React.createElement(ApprovePlan, { plan: plan, approve: (a) => (approved = a) }));
17
+ yield* Effect.promise(waitUntilExit);
18
+ return approved;
19
+ });
20
+ const displayPlan = (plan) => Effect.sync(() => {
21
+ const { unmount } = render(React.createElement(Plan, { plan: plan }));
22
+ unmount();
23
+ });
24
+ const startApplySession = Effect.fn(function* (plan) {
25
+ const listeners = new Set();
26
+ const { unmount } = render(React.createElement(PlanProgress, { plan: plan, source: {
27
+ subscribe(listener) {
28
+ listeners.add(listener);
29
+ return () => listeners.delete(listener);
30
+ },
31
+ } }));
32
+ return {
33
+ done: Effect.fn(function* () {
34
+ yield* Effect.sleep(10); // give the react event loop time to re-render
35
+ yield* Effect.sync(() => unmount());
36
+ }),
37
+ emit: (event) => Effect.sync(() => {
38
+ for (const listener of listeners)
39
+ listener(event);
40
+ }),
41
+ };
42
+ });
43
+ //# sourceMappingURL=ink-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ink-service.js","sourceRoot":"","sources":["../../src/cli/ink-service.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAA0B,GAAG,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA8B,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAuB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA+B,CAAC;AAG7D,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,EAAE,CACzB,KAAK,CAAC,OAAO,CACX,GAAG,EACH,GAAG,CAAC,EAAE,CAAC;IACL,WAAW;IACX,WAAW;IACX,iBAAiB;CAClB,CAAC,CACH,CAAC;AAEJ,MAAM,WAAW,GAAG,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAmB,IAAO;IAC/D,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,CAC9B,oBAAC,WAAW,IAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,GAAI,CAC5D,CAAC;IACF,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACrC,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,MAAM,WAAW,GAAG,CAAkB,IAAO,EAAuB,EAAE,CACpE,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;IACf,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,oBAAC,IAAI,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC,CAAC;IACjD,OAAO,EAAE,CAAC;AACZ,CAAC,CAAC,CAAC;AAEL,MAAM,iBAAiB,GAAG,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAmB,IAAO;IACrE,MAAM,SAAS,GAAG,IAAI,GAAG,EAA+B,CAAC;IACzD,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CACxB,oBAAC,YAAY,IACX,IAAI,EAAE,IAAI,EACV,MAAM,EAAE;YACN,SAAS,CAAC,QAAQ;gBAChB,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACxB,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC1C,CAAC;SACF,GACD,CACH,CAAC;IACF,OAAO;QACL,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC;YACvB,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,8CAA8C;YACvE,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;QACtC,CAAC,CAAC;QACF,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,CACd,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;YACf,KAAK,MAAM,QAAQ,IAAI,SAAS;gBAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;QACpD,CAAC,CAAC;KACuB,CAAC;AAChC,CAAC,CAAC,CAAC"}
@@ -0,0 +1,21 @@
1
+ import type { IPlan } from "../plan.ts";
2
+ import * as Effect from "effect/Effect";
3
+ import * as Context from "effect/Context";
4
+ import type { ApplyEvent } from "../event.ts";
5
+ export interface PlanStatusSession {
6
+ emit: (event: ApplyEvent) => Effect.Effect<void>;
7
+ done: () => Effect.Effect<void>;
8
+ }
9
+ export interface ScopedPlanStatusSession extends PlanStatusSession {
10
+ note: (note: string) => Effect.Effect<void>;
11
+ }
12
+ export interface CLIService {
13
+ approvePlan: <P extends IPlan>(plan: P) => Effect.Effect<boolean>;
14
+ displayPlan: <P extends IPlan>(plan: P) => Effect.Effect<void>;
15
+ startApplySession: <P extends IPlan>(plan: P) => Effect.Effect<PlanStatusSession>;
16
+ }
17
+ declare const CLI_base: Context.TagClass<CLI, "CLIService", CLIService>;
18
+ export declare class CLI extends CLI_base {
19
+ }
20
+ export {};
21
+ //# sourceMappingURL=service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/cli/service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACjD,IAAI,EAAE,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,uBAAwB,SAAQ,iBAAiB;IAChE,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;CAC7C;AAED,MAAM,WAAW,UAAU;IACzB,WAAW,EAAE,CAAC,CAAC,SAAS,KAAK,EAAE,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAClE,WAAW,EAAE,CAAC,CAAC,SAAS,KAAK,EAAE,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC/D,iBAAiB,EAAE,CAAC,CAAC,SAAS,KAAK,EACjC,IAAI,EAAE,CAAC,KACJ,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;CACvC;;AAED,qBAAa,GAAI,SAAQ,QAA4C;CAAG"}
@@ -0,0 +1,5 @@
1
+ import * as Effect from "effect/Effect";
2
+ import * as Context from "effect/Context";
3
+ export class CLI extends Context.Tag("CLIService")() {
4
+ }
5
+ //# sourceMappingURL=service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/cli/service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAoB1C,MAAM,OAAO,GAAI,SAAQ,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,EAAmB;CAAG"}
@@ -0,0 +1,10 @@
1
+ import * as Layer from "effect/Layer";
2
+ import * as Context from "effect/Context";
3
+ import { App } from "../app.ts";
4
+ declare const Account_base: Context.TagClass<Account, "cloudflare/account-id", string>;
5
+ export declare class Account extends Account_base {
6
+ }
7
+ export declare const fromEnv: () => Layer.Layer<Account, import("effect/ConfigError").ConfigError, never>;
8
+ export declare const fromStageConfig: () => Layer.Layer<Account, import("effect/ConfigError").ConfigError, App>;
9
+ export {};
10
+ //# sourceMappingURL=account.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"account.d.ts","sourceRoot":"","sources":["../../src/cloudflare/account.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAG1C,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;;AAEhC,qBAAa,OAAQ,SAAQ,YAG1B;CAAG;AAEN,eAAO,MAAM,OAAO,6EAUjB,CAAC;AAEJ,eAAO,MAAM,eAAe,2EAazB,CAAC"}
@@ -0,0 +1,24 @@
1
+ import * as Layer from "effect/Layer";
2
+ import * as Context from "effect/Context";
3
+ import * as Effect from "effect/Effect";
4
+ import * as Config from "effect/Config";
5
+ import { App } from "../app.js";
6
+ export class Account extends Context.Tag("cloudflare/account-id")() {
7
+ }
8
+ export const fromEnv = () => Layer.effect(Account, Effect.gen(function* () {
9
+ const accountId = yield* Config.string("CLOUDFLARE_ACCOUNT_ID");
10
+ if (!accountId) {
11
+ return yield* Effect.die("CLOUDFLARE_ACCOUNT_ID is not set");
12
+ }
13
+ return accountId;
14
+ }));
15
+ export const fromStageConfig = () => Layer.effect(Account, Effect.gen(function* () {
16
+ const app = yield* App;
17
+ const accountId = app.config.cloudflare?.account ??
18
+ (yield* Config.string("CLOUDFLARE_ACCOUNT_ID"));
19
+ if (!accountId) {
20
+ return yield* Effect.die("CLOUDFLARE_ACCOUNT_ID is not set");
21
+ }
22
+ return accountId;
23
+ }));
24
+ //# sourceMappingURL=account.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"account.js","sourceRoot":"","sources":["../../src/cloudflare/account.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAEhC,MAAM,OAAO,OAAQ,SAAQ,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,EAG9D;CAAG;AAEN,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,EAAE,CAC1B,KAAK,CAAC,MAAM,CACV,OAAO,EACP,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;IAChE,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC,CACH,CAAC;AAEJ,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE,CAClC,KAAK,CAAC,MAAM,CACV,OAAO,EACP,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC;IACvB,MAAM,SAAS,GACb,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO;QAC9B,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC;IAClD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC,CACH,CAAC"}
@@ -1,21 +1,21 @@
1
1
  import { Cloudflare, type APIError } from "cloudflare";
2
2
  import { type APIPromise } from "cloudflare/core";
3
3
  import type { ErrorData } from "cloudflare/resources";
4
- import { Layer } from "effect";
5
- import * as Context from "effect/Context";
6
4
  import * as Data from "effect/Data";
5
+ import * as Option from "effect/Option";
7
6
  import * as Effect from "effect/Effect";
8
- declare const CloudflareAccountId_base: Context.TagClass<CloudflareAccountId, "cloudflare/account-id", string>;
9
- export declare class CloudflareAccountId extends CloudflareAccountId_base {
10
- static readonly fromEnv: Layer.Layer<CloudflareAccountId, never, never>;
11
- }
7
+ import { Config } from "effect";
8
+ export declare const CLOUDFLARE_BASE_URL: Config.Config<Option.Option<string>>;
9
+ export declare const CLOUDFLARE_API_TOKEN: Config.Config<Option.Option<string>>;
10
+ export declare const CLOUDFLARE_API_KEY: Config.Config<Option.Option<string>>;
11
+ export declare const CLOUDFLARE_API_EMAIL: Config.Config<Option.Option<string>>;
12
12
  declare const CloudflareApi_base: Effect.Service.Class<CloudflareApi, "cloudflare/api", {
13
13
  readonly effect: (options?: {
14
14
  baseUrl?: string;
15
15
  apiToken?: string;
16
16
  apiKey?: string;
17
17
  apiEmail?: string;
18
- }) => Effect.Effect<ToEffect<Cloudflare>, never, never>;
18
+ } | undefined) => Effect.Effect<ToEffect<Cloudflare>, import("effect/ConfigError").ConfigError, never>;
19
19
  }>;
20
20
  export declare class CloudflareApi extends CloudflareApi_base {
21
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/cloudflare/api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,UAAU,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3E,OAAO,EAEL,KAAK,UAAU,EAEhB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,IAAI,MAAM,aAAa,CAAC;AACpC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;;AAExC,qBAAa,mBAAoB,SAAQ,wBAGtC;IACD,MAAM,CAAC,QAAQ,CAAC,OAAO,iDASrB;CACH;;gCAKsB;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB;;AARL,qBAAa,aAAc,SAAQ,kBAoBlC;CAAG;AAEJ,qBAAa,kBAAmB,SAAQ,IAAI,CAAC,KAAK,CAAC;IACjD,IAAI,EACA,YAAY,GACZ,YAAY,GACZ,gBAAgB,GAChB,kBAAkB,GAClB,UAAU,GACV,UAAU,GACV,qBAAqB,GACrB,WAAW,GACX,qBAAqB,GACrB,SAAS,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,KAAK,EAAE,QAAQ,CAAC;CACjB,CAAC;IACA,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,GAAG,kBAAkB;IAUhD,OAAO,CAAC,MAAM,CAAC,MAAM;CAyBtB;AAED,KAAK,QAAQ,CAAC,CAAC,IAAI;KAChB,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,GAChD,CACE,GAAG,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KACtB,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC,GAC1E,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC9B,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GACd,CAAC,CAAC,CAAC,CAAC;CACX,CAAC;AAEF,KAAK,gBAAgB,CAAC,CAAC,IAAI,CAAC,SAAS,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/cloudflare/api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,UAAU,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3E,OAAO,EAEL,KAAK,UAAU,EAEhB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,IAAI,MAAM,aAAa,CAAC;AACpC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,eAAO,MAAM,mBAAmB,sCAE/B,CAAC;AACF,eAAO,MAAM,oBAAoB,sCAEhC,CAAC;AACF,eAAO,MAAM,kBAAkB,sCAE9B,CAAC;AACF,eAAO,MAAM,oBAAoB,sCAEhC,CAAC;;;kBAMc,MAAM;mBACL,MAAM;iBACR,MAAM;mBACJ,MAAM;;;AAPvB,qBAAa,aAAc,SAAQ,kBA2BlC;CAAG;AAEJ,qBAAa,kBAAmB,SAAQ,IAAI,CAAC,KAAK,CAAC;IACjD,IAAI,EACA,YAAY,GACZ,YAAY,GACZ,gBAAgB,GAChB,kBAAkB,GAClB,UAAU,GACV,UAAU,GACV,qBAAqB,GACrB,WAAW,GACX,qBAAqB,GACrB,SAAS,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,KAAK,EAAE,QAAQ,CAAC;CACjB,CAAC;IACA,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,GAAG,kBAAkB;IAUhD,OAAO,CAAC,MAAM,CAAC,MAAM;CAyBtB;AAED,KAAK,QAAQ,CAAC,CAAC,IAAI;KAChB,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,GAChD,CACE,GAAG,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KACtB,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC,GAC1E,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC9B,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GACd,CAAC,CAAC,CAAC,CAAC;CACX,CAAC;AAEF,KAAK,gBAAgB,CAAC,CAAC,IAAI,CAAC,SAAS,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC"}
@@ -1,25 +1,26 @@
1
1
  import { APIConnectionError, Cloudflare } from "cloudflare";
2
2
  import { isRequestOptions, } from "cloudflare/core";
3
- import { Layer } from "effect";
4
- import * as Context from "effect/Context";
5
3
  import * as Data from "effect/Data";
4
+ import * as Option from "effect/Option";
6
5
  import * as Effect from "effect/Effect";
7
- export class CloudflareAccountId extends Context.Tag("cloudflare/account-id")() {
8
- static fromEnv = Layer.effect(CloudflareAccountId, Effect.gen(function* () {
9
- const accountId = process.env.CLOUDFLARE_ACCOUNT_ID;
10
- if (!accountId) {
11
- return yield* Effect.die("CLOUDFLARE_ACCOUNT_ID is not set");
12
- }
13
- return accountId;
14
- }));
15
- }
6
+ import { Config } from "effect";
7
+ export const CLOUDFLARE_BASE_URL = Config.string("CLOUDFLARE_BASE_URL").pipe(Config.option);
8
+ export const CLOUDFLARE_API_TOKEN = Config.string("CLOUDFLARE_API_TOKEN").pipe(Config.option);
9
+ export const CLOUDFLARE_API_KEY = Config.string("CLOUDFLARE_API_KEY").pipe(Config.option);
10
+ export const CLOUDFLARE_API_EMAIL = Config.string("CLOUDFLARE_API_EMAIL").pipe(Config.option);
16
11
  export class CloudflareApi extends Effect.Service()("cloudflare/api", {
17
- effect: (options) => Effect.succeed(createRecursiveProxy(new Cloudflare({
18
- baseURL: options?.baseUrl ?? import.meta.env.CLOUDFLARE_BASE_URL,
19
- apiToken: options?.apiToken ?? import.meta.env.CLOUDFLARE_API_TOKEN,
20
- apiKey: options?.apiKey ?? import.meta.env.CLOUDFLARE_API_KEY,
21
- apiEmail: options?.apiEmail ?? import.meta.env.CLOUDFLARE_API_EMAIL,
22
- }))),
12
+ effect: Effect.fn(function* (options) {
13
+ return createRecursiveProxy(new Cloudflare({
14
+ baseURL: options?.baseUrl ??
15
+ (yield* CLOUDFLARE_BASE_URL).pipe(Option.getOrUndefined),
16
+ apiToken: options?.apiToken ??
17
+ (yield* CLOUDFLARE_API_TOKEN).pipe(Option.getOrUndefined),
18
+ apiKey: options?.apiKey ??
19
+ (yield* CLOUDFLARE_API_KEY).pipe(Option.getOrUndefined),
20
+ apiEmail: options?.apiEmail ??
21
+ (yield* CLOUDFLARE_API_EMAIL).pipe(Option.getOrUndefined),
22
+ }));
23
+ }),
23
24
  }) {
24
25
  }
25
26
  export class CloudflareApiError extends Data.Error {
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/cloudflare/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/cloudflare/api.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ declare module "../stage.ts" {
2
+ interface StageConfig {
3
+ cloudflare?: {
4
+ account: string;
5
+ };
6
+ }
7
+ }
8
+ export {};
9
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/cloudflare/config.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,aAAa,CAAC;IAC3B,UAAU,WAAW;QACnB,UAAU,CAAC,EAAE;YACX,OAAO,EAAE,MAAM,CAAC;SACjB,CAAC;KACH;CACF"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/cloudflare/config.ts"],"names":[],"mappings":""}
@@ -2,5 +2,7 @@ export * as KV from "./kv/index.ts";
2
2
  export * as R2 from "./r2/index.ts";
3
3
  export * as Assets from "./worker/assets.fetch.ts";
4
4
  export * as Worker from "./worker/index.ts";
5
- export type * as Alchemy from "../index.ts";
5
+ export * from "./account.ts";
6
+ export * from "./live.ts";
7
+ import "./config.ts";
6
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cloudflare/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,KAAK,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,KAAK,MAAM,MAAM,0BAA0B,CAAC;AACnD,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAE5C,YAAY,KAAK,OAAO,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cloudflare/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,KAAK,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,KAAK,MAAM,MAAM,0BAA0B,CAAC;AACnD,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAE1B,OAAO,aAAa,CAAC"}
@@ -2,4 +2,7 @@ export * as KV from "./kv/index.js";
2
2
  export * as R2 from "./r2/index.js";
3
3
  export * as Assets from "./worker/assets.fetch.js";
4
4
  export * as Worker from "./worker/index.js";
5
+ export * from "./account.js";
6
+ export * from "./live.js";
7
+ import "./config.js";
5
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cloudflare/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,KAAK,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,KAAK,MAAM,MAAM,0BAA0B,CAAC;AACnD,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cloudflare/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,KAAK,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,KAAK,MAAM,MAAM,0BAA0B,CAAC;AACnD,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAE1B,OAAO,aAAa,CAAC"}
@@ -1,8 +1,10 @@
1
- import { Binding, type Capability, type To } from "alchemy-effect";
1
+ import { Binding } from "../../binding.ts";
2
+ import type { Capability } from "../../capability.ts";
3
+ import type { To } from "../../policy.ts";
2
4
  import { Worker } from "../worker/worker.ts";
3
5
  import type { Namespace, NamespaceProps } from "./namespace.ts";
4
6
  export interface Bind<B = Namespace<string, NamespaceProps>> extends Capability<"Cloudflare.KV.Namespace.Bind", B> {
5
7
  }
6
- export declare const Bind: (<B extends Namespace<string, NamespaceProps>>(namespace: B) => Binding<Worker, Bind<To<B>>>) & import("alchemy-effect").BindingDeclaration<Worker, <B extends Namespace<string, NamespaceProps>>(namespace: B) => Binding<Worker, Bind<To<B>>>, "Cloudflare.KV.Namespace.Bind", Bind<Namespace<string, NamespaceProps>>>;
7
- export declare const bindFromWorker: () => import("effect/Layer").Layer<import("alchemy-effect").Bind<Worker, Bind<Namespace<string, NamespaceProps>>, "Cloudflare.KV.Namespace.Bind">, never, never>;
8
+ export declare const Bind: (<B extends Namespace<string, NamespaceProps>>(namespace: B) => Binding<Worker, Bind<To<B>>>) & import("../../binding.ts").BindingDeclaration<Worker, <B extends Namespace<string, NamespaceProps>>(namespace: B) => Binding<Worker, Bind<To<B>>>, "Cloudflare.KV.Namespace.Bind", Bind<Namespace<string, NamespaceProps>>>;
9
+ export declare const bindFromWorker: () => import("effect/Layer").Layer<import("../../binding.ts").Bind<Worker, Bind<Namespace<string, NamespaceProps>>, "Cloudflare.KV.Namespace.Bind">, never, never>;
8
10
  //# sourceMappingURL=namespace.binding.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"namespace.binding.d.ts","sourceRoot":"","sources":["../../../src/cloudflare/kv/namespace.binding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,EAAE,EAAE,MAAM,gBAAgB,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhE,MAAM,WAAW,IAAI,CAAC,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,cAAc,CAAC,CACzD,SAAQ,UAAU,CAAC,8BAA8B,EAAE,CAAC,CAAC;CAAG;AAE1D,eAAO,MAAM,IAAI,IACd,CAAC,SAAS,SAAS,CAAC,MAAM,EAAE,cAAc,CAAC,aAC/B,CAAC,KACT,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,yDAFhC,CAAC,SAAS,SAAS,CAAC,MAAM,EAAE,cAAc,CAAC,aAC/B,CAAC,KACT,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,0EACM,CAAC;AAE1C,eAAO,MAAM,cAAc,kKAWvB,CAAC"}
1
+ {"version":3,"file":"namespace.binding.d.ts","sourceRoot":"","sources":["../../../src/cloudflare/kv/namespace.binding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhE,MAAM,WAAW,IAAI,CAAC,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,cAAc,CAAC,CACzD,SAAQ,UAAU,CAAC,8BAA8B,EAAE,CAAC,CAAC;CAAG;AAE1D,eAAO,MAAM,IAAI,IACd,CAAC,SAAS,SAAS,CAAC,MAAM,EAAE,cAAc,CAAC,aAC/B,CAAC,KACT,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,2DAFhC,CAAC,SAAS,SAAS,CAAC,MAAM,EAAE,cAAc,CAAC,aAC/B,CAAC,KACT,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,0EACM,CAAC;AAE1C,eAAO,MAAM,cAAc,oKAWvB,CAAC"}
@@ -1,4 +1,4 @@
1
- import { Binding } from "alchemy-effect";
1
+ import { Binding } from "../../binding.js";
2
2
  import { Worker } from "../worker/worker.js";
3
3
  export const Bind = Binding(Worker, "Cloudflare.KV.Namespace.Bind");
4
4
  export const bindFromWorker = () => Bind.provider.succeed({
@@ -1 +1 @@
1
- {"version":3,"file":"namespace.binding.js","sourceRoot":"","sources":["../../../src/cloudflare/kv/namespace.binding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAA4B,MAAM,gBAAgB,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAM7C,MAAM,CAAC,MAAM,IAAI,GAAG,OAAO,CAIzB,MAAM,EAAE,8BAA8B,CAAC,CAAC;AAE1C,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE,CACjC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;IACpB,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;QACvB,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,MAAM,CAAC,EAAE;gBACf,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW;aACtC;SACF;KACF,CAAC;CACH,CAAC,CAAC"}
1
+ {"version":3,"file":"namespace.binding.js","sourceRoot":"","sources":["../../../src/cloudflare/kv/namespace.binding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAG3C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAM7C,MAAM,CAAC,MAAM,IAAI,GAAG,OAAO,CAIzB,MAAM,EAAE,8BAA8B,CAAC,CAAC;AAE1C,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE,CACjC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;IACpB,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;QACvB,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,MAAM,CAAC,EAAE;gBACf,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW;aACtC;SACF;KACF,CAAC;CACH,CAAC,CAAC"}
@@ -8,13 +8,14 @@ export type NamespaceAttr<Props extends NamespaceProps> = {
8
8
  supportsUrlEncoding?: boolean;
9
9
  accountId: string;
10
10
  };
11
- export interface Namespace<ID extends string = string, Props extends NamespaceProps = NamespaceProps> extends Resource<"Cloudflare.KV.Namespace", ID, Props, NamespaceAttr<Props>> {
11
+ export interface Namespace<ID extends string = string, Props extends NamespaceProps = NamespaceProps> extends Resource<"Cloudflare.KV.Namespace", ID, Props, NamespaceAttr<Props>, Namespace> {
12
12
  }
13
- export declare const Namespace: (<const ID extends string, const Props extends NamespaceProps>(id: ID, props: Props) => Namespace<ID, Props>) & {
13
+ export declare const Namespace: (<const ID extends string, const Props extends NamespaceProps>(id: ID, props?: Props) => Namespace<ID, Props>) & {
14
14
  new (): Namespace<string, NamespaceProps> & {
15
15
  parent: Namespace<string, NamespaceProps>;
16
16
  };
17
17
  type: "Cloudflare.KV.Namespace";
18
+ parent: Namespace<string, NamespaceProps>;
18
19
  provider: import("../../resource.ts").ResourceTags<Namespace<string, NamespaceProps>>;
19
20
  } & {
20
21
  type: "Cloudflare.KV.Namespace";
@@ -1 +1 @@
1
- {"version":3,"file":"namespace.d.ts","sourceRoot":"","sources":["../../../src/cloudflare/kv/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,aAAa,CAAC,KAAK,SAAS,cAAc,IAAI;IACxD,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC;IAC/D,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,WAAW,SAAS,CACxB,EAAE,SAAS,MAAM,GAAG,MAAM,EAC1B,KAAK,SAAS,cAAc,GAAG,cAAc,CAC7C,SAAQ,QAAQ,CACd,yBAAyB,EACzB,EAAE,EACF,KAAK,EACL,aAAa,CAAC,KAAK,CAAC,CACrB;CAAG;AAEN,eAAO,MAAM,SAAS,UACb,EAAE,SAAS,MAAM,QAAQ,KAAK,SAAS,cAAc,MACtD,EAAE,SACC,KAAK,KACX,SAAS,CAAC,EAAE,EAAE,KAAK,CAAC;;;;;;;;;CACI,CAAC"}
1
+ {"version":3,"file":"namespace.d.ts","sourceRoot":"","sources":["../../../src/cloudflare/kv/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,aAAa,CAAC,KAAK,SAAS,cAAc,IAAI;IACxD,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC;IAC/D,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,WAAW,SAAS,CACxB,EAAE,SAAS,MAAM,GAAG,MAAM,EAC1B,KAAK,SAAS,cAAc,GAAG,cAAc,CAC7C,SAAQ,QAAQ,CACd,yBAAyB,EACzB,EAAE,EACF,KAAK,EACL,aAAa,CAAC,KAAK,CAAC,EACpB,SAAS,CACV;CAAG;AAEN,eAAO,MAAM,SAAS,UACb,EAAE,SAAS,MAAM,QAAQ,KAAK,SAAS,cAAc,MACtD,EAAE,UACE,KAAK,KACZ,SAAS,CAAC,EAAE,EAAE,KAAK,CAAC;;;;;;;;;;CACI,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"namespace.js","sourceRoot":"","sources":["../../../src/cloudflare/kv/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAuB7C,MAAM,CAAC,MAAM,SAAS,GAAG,QAAQ,CAK9B,yBAAyB,CAAC,CAAC"}
1
+ {"version":3,"file":"namespace.js","sourceRoot":"","sources":["../../../src/cloudflare/kv/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAwB7C,MAAM,CAAC,MAAM,SAAS,GAAG,QAAQ,CAK9B,yBAAyB,CAAC,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { App } from "../../app.ts";
2
- import { CloudflareAccountId, CloudflareApi } from "../api.ts";
2
+ import { Account } from "../account.ts";
3
+ import { CloudflareApi } from "../api.ts";
3
4
  import { Namespace, type NamespaceProps } from "./namespace.ts";
4
- export declare const namespaceProvider: () => import("effect/Layer").Layer<import("../../provider.ts").Provider<Namespace<string, NamespaceProps>>, never, App | CloudflareAccountId | CloudflareApi>;
5
+ export declare const namespaceProvider: () => import("effect/Layer").Layer<import("../../provider.ts").Provider<Namespace<string, NamespaceProps>>, never, App | Account | CloudflareApi>;
5
6
  //# sourceMappingURL=namespace.provider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"namespace.provider.d.ts","sourceRoot":"","sources":["../../../src/cloudflare/kv/namespace.provider.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,EACL,SAAS,EAET,KAAK,cAAc,EACpB,MAAM,gBAAgB,CAAC;AAExB,eAAO,MAAM,iBAAiB,+JAwF3B,CAAC"}
1
+ {"version":3,"file":"namespace.provider.d.ts","sourceRoot":"","sources":["../../../src/cloudflare/kv/namespace.provider.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EACL,SAAS,EAET,KAAK,cAAc,EACpB,MAAM,gBAAgB,CAAC;AAExB,eAAO,MAAM,iBAAiB,mJAwF3B,CAAC"}
@@ -1,12 +1,13 @@
1
1
  import * as Effect from "effect/Effect";
2
2
  import { App } from "../../app.js";
3
- import { CloudflareAccountId, CloudflareApi } from "../api.js";
3
+ import { Account } from "../account.js";
4
+ import { CloudflareApi } from "../api.js";
4
5
  import { Namespace, } from "./namespace.js";
5
6
  export const namespaceProvider = () => Namespace.provider.effect(Effect.gen(function* () {
6
7
  const app = yield* App;
7
8
  const api = yield* CloudflareApi;
8
- const accountId = yield* CloudflareAccountId;
9
- const createTitle = (id, news) => news.title ?? `${app.name}-${id}-${app.stage}`;
9
+ const accountId = yield* Account;
10
+ const createTitle = (id, title) => title ?? `${app.name}-${id}-${app.stage}`;
10
11
  const mapResult = (result) => ({
11
12
  title: result.title,
12
13
  namespaceId: result.id,
@@ -18,7 +19,7 @@ export const namespaceProvider = () => Namespace.provider.effect(Effect.gen(func
18
19
  if (output.accountId !== accountId) {
19
20
  return { action: "replace" };
20
21
  }
21
- const title = createTitle(id, news);
22
+ const title = createTitle(id, news.title);
22
23
  if (title !== output.title) {
23
24
  return { action: "update" };
24
25
  }
@@ -27,7 +28,7 @@ export const namespaceProvider = () => Namespace.provider.effect(Effect.gen(func
27
28
  return yield* api.kv.namespaces
28
29
  .create({
29
30
  account_id: accountId,
30
- title: createTitle(id, news),
31
+ title: createTitle(id, news.title),
31
32
  })
32
33
  .pipe(Effect.map((mapResult)));
33
34
  }),
@@ -35,7 +36,7 @@ export const namespaceProvider = () => Namespace.provider.effect(Effect.gen(func
35
36
  return yield* api.kv.namespaces
36
37
  .update(output.namespaceId, {
37
38
  account_id: accountId,
38
- title: createTitle(id, news),
39
+ title: createTitle(id, news.title),
39
40
  })
40
41
  .pipe(Effect.map((mapResult)));
41
42
  }),
@@ -54,7 +55,7 @@ export const namespaceProvider = () => Namespace.provider.effect(Effect.gen(func
54
55
  })
55
56
  .pipe(Effect.map((mapResult)), Effect.catchTag("NotFound", () => Effect.succeed(undefined)));
56
57
  }
57
- const title = createTitle(id, olds ?? {}); // why is olds optional?
58
+ const title = createTitle(id, olds?.title); // why is olds optional? because read can be called before the resource exists (sync)
58
59
  let page = 1;
59
60
  while (true) {
60
61
  // todo: abstract pagination
@@ -1 +1 @@
1
- {"version":3,"file":"namespace.provider.js","sourceRoot":"","sources":["../../../src/cloudflare/kv/namespace.provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"namespace.provider.js","sourceRoot":"","sources":["../../../src/cloudflare/kv/namespace.provider.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
1
  import * as Layer from "effect/Layer";
2
2
  import * as ESBuild from "../esbuild.ts";
3
- import { CloudflareAccountId, CloudflareApi } from "./api.ts";
3
+ import { CloudflareApi } from "./api.ts";
4
+ import * as Account from "./account.ts";
4
5
  import * as KV from "./kv/index.ts";
5
6
  import * as R2 from "./r2/index.ts";
6
- export declare const providers: () => Layer.Layer<ESBuild.ESBuild | import("../provider.ts").Provider<KV.Namespace<string, KV.NamespaceProps>> | import("../provider.ts").Provider<R2.Bucket<string, R2.BucketProps>> | import("./worker/assets.provider.ts").Assets | import("../provider.ts").Provider<import("./worker/worker.ts").Worker>, never, import("../app.ts").App | import("@effect/platform/FileSystem").FileSystem | import("@effect/platform/Path").Path | import("../dot-alchemy.ts").DotAlchemy | CloudflareAccountId | CloudflareApi>;
7
+ import "./config.ts";
7
8
  export declare const bindings: () => Layer.Layer<import("../binding.ts").Bind<import("./worker/worker.ts").Worker, KV.Bind<KV.Namespace<string, KV.NamespaceProps>>, "Cloudflare.KV.Namespace.Bind"> | import("../binding.ts").Bind<import("./worker/worker.ts").Worker, R2.Bind<R2.Bucket<string, R2.BucketProps>>, "Cloudflare.R2.Bucket.Bind">, never, never>;
8
- export declare const defaultProviders: () => Layer.Layer<ESBuild.ESBuild | import("../binding.ts").Bind<import("./worker/worker.ts").Worker, KV.Bind<KV.Namespace<string, KV.NamespaceProps>>, "Cloudflare.KV.Namespace.Bind"> | import("../binding.ts").Bind<import("./worker/worker.ts").Worker, R2.Bind<R2.Bucket<string, R2.BucketProps>>, "Cloudflare.R2.Bucket.Bind"> | import("../provider.ts").Provider<KV.Namespace<string, KV.NamespaceProps>> | import("../provider.ts").Provider<R2.Bucket<string, R2.BucketProps>> | import("./worker/assets.provider.ts").Assets | import("../provider.ts").Provider<import("./worker/worker.ts").Worker>, never, import("../app.ts").App | import("@effect/platform/FileSystem").FileSystem | import("@effect/platform/Path").Path | import("../dot-alchemy.ts").DotAlchemy | CloudflareAccountId | CloudflareApi>;
9
- export declare const live: () => Layer.Layer<ESBuild.ESBuild | CloudflareAccountId | CloudflareApi | import("../binding.ts").Bind<import("./worker/worker.ts").Worker, KV.Bind<KV.Namespace<string, KV.NamespaceProps>>, "Cloudflare.KV.Namespace.Bind"> | import("../binding.ts").Bind<import("./worker/worker.ts").Worker, R2.Bind<R2.Bucket<string, R2.BucketProps>>, "Cloudflare.R2.Bucket.Bind"> | import("../provider.ts").Provider<KV.Namespace<string, KV.NamespaceProps>> | import("../provider.ts").Provider<R2.Bucket<string, R2.BucketProps>> | import("./worker/assets.provider.ts").Assets | import("../provider.ts").Provider<import("./worker/worker.ts").Worker>, never, import("../app.ts").App | import("@effect/platform/FileSystem").FileSystem | import("@effect/platform/Path").Path | import("../dot-alchemy.ts").DotAlchemy>;
10
- export default live;
9
+ export declare const defaultProviders: () => Layer.Layer<ESBuild.ESBuild | import("../binding.ts").Bind<import("./worker/worker.ts").Worker, KV.Bind<KV.Namespace<string, KV.NamespaceProps>>, "Cloudflare.KV.Namespace.Bind"> | import("../binding.ts").Bind<import("./worker/worker.ts").Worker, R2.Bind<R2.Bucket<string, R2.BucketProps>>, "Cloudflare.R2.Bucket.Bind"> | import("../provider.ts").Provider<KV.Namespace<string, KV.NamespaceProps>> | import("../provider.ts").Provider<R2.Bucket<string, R2.BucketProps>> | import("./worker/assets.provider.ts").Assets | import("../provider.ts").Provider<import("./worker/worker.ts").Worker>, never, import("@effect/platform/FileSystem").FileSystem | import("@effect/platform/Path").Path | import("../app.ts").App | import("../dot-alchemy.ts").DotAlchemy | Account.Account | CloudflareApi>;
10
+ export declare const providers: () => Layer.Layer<ESBuild.ESBuild | Account.Account | CloudflareApi | import("../binding.ts").Bind<import("./worker/worker.ts").Worker, KV.Bind<KV.Namespace<string, KV.NamespaceProps>>, "Cloudflare.KV.Namespace.Bind"> | import("../binding.ts").Bind<import("./worker/worker.ts").Worker, R2.Bind<R2.Bucket<string, R2.BucketProps>>, "Cloudflare.R2.Bucket.Bind"> | import("../provider.ts").Provider<KV.Namespace<string, KV.NamespaceProps>> | import("../provider.ts").Provider<R2.Bucket<string, R2.BucketProps>> | import("./worker/assets.provider.ts").Assets | import("../provider.ts").Provider<import("./worker/worker.ts").Worker>, import("effect/ConfigError").ConfigError, import("@effect/platform/FileSystem").FileSystem | import("@effect/platform/Path").Path | import("../app.ts").App | import("../dot-alchemy.ts").DotAlchemy>;
11
11
  //# sourceMappingURL=live.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"live.d.ts","sourceRoot":"","sources":["../../src/cloudflare/live.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9D,OAAO,KAAK,EAAE,MAAM,eAAe,CAAC;AAGpC,OAAO,KAAK,EAAE,MAAM,eAAe,CAAC;AAIpC,eAAO,MAAM,SAAS,yfAQnB,CAAC;AAEJ,eAAO,MAAM,QAAQ,mUACqC,CAAC;AAE3D,eAAO,MAAM,gBAAgB,4xBACqB,CAAC;AAEnD,eAAO,MAAM,IAAI,4xBAKd,CAAC;AAEJ,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"live.d.ts","sourceRoot":"","sources":["../../src/cloudflare/live.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AACxC,OAAO,KAAK,EAAE,MAAM,eAAe,CAAC;AAGpC,OAAO,KAAK,EAAE,MAAM,eAAe,CAAC;AAIpC,OAAO,aAAa,CAAC;AAErB,eAAO,MAAM,QAAQ,mUACqC,CAAC;AAE3D,eAAO,MAAM,gBAAgB,wxBAQW,CAAC;AAEzC,eAAO,MAAM,SAAS,2zBAKnB,CAAC"}
@@ -1,18 +1,15 @@
1
1
  import * as Layer from "effect/Layer";
2
2
  import * as ESBuild from "../esbuild.js";
3
- import { CloudflareAccountId, CloudflareApi } from "./api.js";
3
+ import { CloudflareApi } from "./api.js";
4
+ import * as Account from "./account.js";
4
5
  import * as KV from "./kv/index.js";
5
6
  import { namespaceProvider } from "./kv/namespace.provider.js";
6
7
  import { bucketProvider } from "./r2/bucket.provider.js";
7
8
  import * as R2 from "./r2/index.js";
8
9
  import { assetsProvider } from "./worker/assets.provider.js";
9
10
  import { workerProvider } from "./worker/worker.provider.js";
10
- export const providers = () => Layer.mergeAll(Layer.provideMerge(workerProvider(), Layer.mergeAll(ESBuild.layer(), assetsProvider())), namespaceProvider(), bucketProvider());
11
+ import "./config.js";
11
12
  export const bindings = () => Layer.mergeAll(KV.bindFromWorker(), R2.bindFromWorker());
12
- export const defaultProviders = () => providers().pipe(Layer.provideMerge(bindings()));
13
- export const live = () => defaultProviders().pipe(Layer.provideMerge(Layer.mergeAll(CloudflareAccountId.fromEnv, CloudflareApi.Default())));
14
- export default live;
15
- // Layer.mergeAll
16
- // Layer.provide
17
- // Layer.provideMerge
13
+ export const defaultProviders = () => Layer.mergeAll(Layer.provideMerge(workerProvider(), Layer.mergeAll(ESBuild.layer(), assetsProvider())), namespaceProvider(), bucketProvider()).pipe(Layer.provideMerge(bindings()));
14
+ export const providers = () => defaultProviders().pipe(Layer.provideMerge(Layer.mergeAll(Account.fromStageConfig(), CloudflareApi.Default())));
18
15
  //# sourceMappingURL=live.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"live.js","sourceRoot":"","sources":["../../src/cloudflare/live.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9D,OAAO,KAAK,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,KAAK,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,EAAE,CAC5B,KAAK,CAAC,QAAQ,CACZ,KAAK,CAAC,YAAY,CAChB,cAAc,EAAE,EAChB,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,cAAc,EAAE,CAAC,CAClD,EACD,iBAAiB,EAAE,EACnB,cAAc,EAAE,CACjB,CAAC;AAEJ,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,EAAE,CAC3B,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,cAAc,EAAE,EAAE,EAAE,CAAC,cAAc,EAAE,CAAC,CAAC;AAE3D,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,EAAE,CACnC,SAAS,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;AAEnD,MAAM,CAAC,MAAM,IAAI,GAAG,GAAG,EAAE,CACvB,gBAAgB,EAAE,CAAC,IAAI,CACrB,KAAK,CAAC,YAAY,CAChB,KAAK,CAAC,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,EAAE,CAAC,CACrE,CACF,CAAC;AAEJ,eAAe,IAAI,CAAC;AAEpB,iBAAiB;AACjB,gBAAgB;AAChB,qBAAqB"}
1
+ {"version":3,"file":"live.js","sourceRoot":"","sources":["../../src/cloudflare/live.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AACxC,OAAO,KAAK,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,KAAK,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D,OAAO,aAAa,CAAC;AAErB,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,EAAE,CAC3B,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,cAAc,EAAE,EAAE,EAAE,CAAC,cAAc,EAAE,CAAC,CAAC;AAE3D,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,EAAE,CACnC,KAAK,CAAC,QAAQ,CACZ,KAAK,CAAC,YAAY,CAChB,cAAc,EAAE,EAChB,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,cAAc,EAAE,CAAC,CAClD,EACD,iBAAiB,EAAE,EACnB,cAAc,EAAE,CACjB,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;AAEzC,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,EAAE,CAC5B,gBAAgB,EAAE,CAAC,IAAI,CACrB,KAAK,CAAC,YAAY,CAChB,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,aAAa,CAAC,OAAO,EAAE,CAAC,CACnE,CACF,CAAC"}
@@ -1,8 +1,10 @@
1
- import { Binding, type Capability, type To } from "alchemy-effect";
1
+ import { Binding } from "../../binding.ts";
2
+ import type { Capability } from "../../capability.ts";
3
+ import type { To } from "../../policy.ts";
2
4
  import { Worker } from "../worker/worker.ts";
3
5
  import type { Bucket } from "./bucket.ts";
4
6
  export interface Bind<B = Bucket> extends Capability<"Cloudflare.R2.Bucket.Bind", B> {
5
7
  }
6
- export declare const Bind: (<B extends Bucket>(bucket: B) => Binding<Worker, Bind<To<B>>>) & import("alchemy-effect").BindingDeclaration<Worker, <B extends Bucket>(bucket: B) => Binding<Worker, Bind<To<B>>>, "Cloudflare.R2.Bucket.Bind", Bind<Bucket<string, import("./bucket.ts").BucketProps>>>;
7
- export declare const bindFromWorker: () => import("effect/Layer").Layer<import("alchemy-effect").Bind<Worker, Bind<Bucket<string, import("./bucket.ts").BucketProps>>, "Cloudflare.R2.Bucket.Bind">, never, never>;
8
+ export declare const Bind: (<B extends Bucket>(bucket: B) => Binding<Worker, Bind<To<B>>>) & import("../../binding.ts").BindingDeclaration<Worker, <B extends Bucket>(bucket: B) => Binding<Worker, Bind<To<B>>>, "Cloudflare.R2.Bucket.Bind", Bind<Bucket<string, import("./bucket.ts").BucketProps>>>;
9
+ export declare const bindFromWorker: () => import("effect/Layer").Layer<import("../../binding.ts").Bind<Worker, Bind<Bucket<string, import("./bucket.ts").BucketProps>>, "Cloudflare.R2.Bucket.Bind">, never, never>;
8
10
  //# sourceMappingURL=bucket.binding.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bucket.binding.d.ts","sourceRoot":"","sources":["../../../src/cloudflare/r2/bucket.binding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,EAAE,EAAE,MAAM,gBAAgB,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,WAAW,IAAI,CAAC,CAAC,GAAG,MAAM,CAC9B,SAAQ,UAAU,CAAC,2BAA2B,EAAE,CAAC,CAAC;CAAG;AAEvD,eAAO,MAAM,IAAI,IACd,CAAC,SAAS,MAAM,UAAU,CAAC,KAAK,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,yDAA5D,CAAC,SAAS,MAAM,UAAU,CAAC,KAAK,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,uFACzB,CAAC;AAEvC,eAAO,MAAM,cAAc,+KAevB,CAAC"}
1
+ {"version":3,"file":"bucket.binding.d.ts","sourceRoot":"","sources":["../../../src/cloudflare/r2/bucket.binding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,WAAW,IAAI,CAAC,CAAC,GAAG,MAAM,CAC9B,SAAQ,UAAU,CAAC,2BAA2B,EAAE,CAAC,CAAC;CAAG;AAEvD,eAAO,MAAM,IAAI,IACd,CAAC,SAAS,MAAM,UAAU,CAAC,KAAK,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,2DAA5D,CAAC,SAAS,MAAM,UAAU,CAAC,KAAK,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,uFACzB,CAAC;AAEvC,eAAO,MAAM,cAAc,iLAevB,CAAC"}
@@ -1,4 +1,4 @@
1
- import { Binding } from "alchemy-effect";
1
+ import { Binding } from "../../binding.js";
2
2
  import { Worker } from "../worker/worker.js";
3
3
  export const Bind = Binding(Worker, "Cloudflare.R2.Bucket.Bind");
4
4
  export const bindFromWorker = () => Bind.provider.succeed({
@@ -1 +1 @@
1
- {"version":3,"file":"bucket.binding.js","sourceRoot":"","sources":["../../../src/cloudflare/r2/bucket.binding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAA4B,MAAM,gBAAgB,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAM7C,MAAM,CAAC,MAAM,IAAI,GAAG,OAAO,CAEzB,MAAM,EAAE,2BAA2B,CAAC,CAAC;AAEvC,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE,CACjC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;IACpB,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;QACvB,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,MAAM,CAAC,EAAE;gBACf,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI;gBAC7B,YAAY,EACV,MAAM,CAAC,IAAI,CAAC,YAAY,KAAK,SAAS;oBACpC,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY;aAC/B;SACF;KACF,CAAC;CACH,CAAC,CAAC"}
1
+ {"version":3,"file":"bucket.binding.js","sourceRoot":"","sources":["../../../src/cloudflare/r2/bucket.binding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAG3C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAM7C,MAAM,CAAC,MAAM,IAAI,GAAG,OAAO,CAEzB,MAAM,EAAE,2BAA2B,CAAC,CAAC;AAEvC,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE,CACjC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;IACpB,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;QACvB,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,MAAM,CAAC,EAAE;gBACf,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI;gBAC7B,YAAY,EACV,MAAM,CAAC,IAAI,CAAC,YAAY,KAAK,SAAS;oBACpC,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY;aAC/B;SACF;KACF,CAAC;CACH,CAAC,CAAC"}
@@ -12,13 +12,14 @@ export type BucketAttr<Props extends BucketProps> = {
12
12
  location: Bucket.Location | undefined;
13
13
  accountId: string;
14
14
  };
15
- export interface Bucket<ID extends string = string, Props extends BucketProps = BucketProps> extends Resource<"Cloudflare.R2.Bucket", ID, Props, BucketAttr<Props>> {
15
+ export interface Bucket<ID extends string = string, Props extends BucketProps = BucketProps> extends Resource<"Cloudflare.R2.Bucket", ID, Props, BucketAttr<Props>, Bucket> {
16
16
  }
17
- export declare const Bucket: (<const ID extends string, const Props extends BucketProps>(id: ID, props: Props) => Bucket<ID, Props>) & {
17
+ export declare const Bucket: (<const ID extends string, const Props extends BucketProps>(id: ID, props?: Props) => Bucket<ID, Props>) & {
18
18
  new (): Bucket<string, BucketProps> & {
19
19
  parent: Bucket<string, BucketProps>;
20
20
  };
21
21
  type: "Cloudflare.R2.Bucket";
22
+ parent: Bucket<string, BucketProps>;
22
23
  provider: import("../../resource.ts").ResourceTags<Bucket<string, BucketProps>>;
23
24
  } & {
24
25
  type: "Cloudflare.R2.Bucket";