alchemy 2.0.0-beta.44 → 2.0.0-beta.46

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 (443) hide show
  1. package/bin/exec.js +67 -8
  2. package/bin/exec.js.map +1 -1
  3. package/lib/AWS/Lambda/Function.d.ts +17 -0
  4. package/lib/AWS/Lambda/Function.d.ts.map +1 -1
  5. package/lib/AWS/Lambda/Function.js +61 -16
  6. package/lib/AWS/Lambda/Function.js.map +1 -1
  7. package/lib/AWS/Providers.d.ts +2 -1
  8. package/lib/AWS/Providers.d.ts.map +1 -1
  9. package/lib/AWS/Providers.js +3 -1
  10. package/lib/AWS/Providers.js.map +1 -1
  11. package/lib/AlchemyContext.d.ts +0 -1
  12. package/lib/AlchemyContext.d.ts.map +1 -1
  13. package/lib/AlchemyContext.js.map +1 -1
  14. package/lib/Apply.js +17 -1
  15. package/lib/Apply.js.map +1 -1
  16. package/lib/Auth/AuthProvider.d.ts.map +1 -1
  17. package/lib/Auth/AuthProvider.js +24 -6
  18. package/lib/Auth/AuthProvider.js.map +1 -1
  19. package/lib/Auth/Credentials.d.ts.map +1 -1
  20. package/lib/Auth/Credentials.js +3 -3
  21. package/lib/Auth/Credentials.js.map +1 -1
  22. package/lib/Cli/commands/_shared.d.ts +13 -1
  23. package/lib/Cli/commands/_shared.d.ts.map +1 -1
  24. package/lib/Cli/commands/_shared.js +33 -2
  25. package/lib/Cli/commands/_shared.js.map +1 -1
  26. package/lib/Cli/commands/cloudflare.d.ts.map +1 -1
  27. package/lib/Cli/commands/cloudflare.js +5 -1
  28. package/lib/Cli/commands/cloudflare.js.map +1 -1
  29. package/lib/Cli/commands/dev.d.ts.map +1 -1
  30. package/lib/Cli/commands/dev.js +10 -1
  31. package/lib/Cli/commands/dev.js.map +1 -1
  32. package/lib/Cli/commands/login.d.ts.map +1 -1
  33. package/lib/Cli/commands/login.js +19 -5
  34. package/lib/Cli/commands/login.js.map +1 -1
  35. package/lib/Cli/commands/profile.d.ts.map +1 -1
  36. package/lib/Cli/commands/profile.js +7 -27
  37. package/lib/Cli/commands/profile.js.map +1 -1
  38. package/lib/Cli/main.d.ts.map +1 -1
  39. package/lib/Cli/main.js +0 -2
  40. package/lib/Cli/main.js.map +1 -1
  41. package/lib/Cloudflare/AiGateway/AiGateway.d.ts +0 -2
  42. package/lib/Cloudflare/AiGateway/AiGateway.d.ts.map +1 -1
  43. package/lib/Cloudflare/AiGateway/AiGateway.js +2 -4
  44. package/lib/Cloudflare/AiGateway/AiGateway.js.map +1 -1
  45. package/lib/Cloudflare/BrowserRendering/BrowserRendering.d.ts +116 -0
  46. package/lib/Cloudflare/BrowserRendering/BrowserRendering.d.ts.map +1 -0
  47. package/lib/Cloudflare/BrowserRendering/BrowserRendering.js +92 -0
  48. package/lib/Cloudflare/BrowserRendering/BrowserRendering.js.map +1 -0
  49. package/lib/Cloudflare/BrowserRendering/BrowserRenderingBinding.d.ts +55 -0
  50. package/lib/Cloudflare/BrowserRendering/BrowserRenderingBinding.d.ts.map +1 -0
  51. package/lib/Cloudflare/BrowserRendering/BrowserRenderingBinding.js +55 -0
  52. package/lib/Cloudflare/BrowserRendering/BrowserRenderingBinding.js.map +1 -0
  53. package/lib/Cloudflare/BrowserRendering/index.d.ts +3 -0
  54. package/lib/Cloudflare/BrowserRendering/index.d.ts.map +1 -0
  55. package/lib/Cloudflare/BrowserRendering/index.js +3 -0
  56. package/lib/Cloudflare/BrowserRendering/index.js.map +1 -0
  57. package/lib/Cloudflare/Container/Container.d.ts +3 -3
  58. package/lib/Cloudflare/Container/Container.js +3 -3
  59. package/lib/Cloudflare/Container/StartContainer.d.ts.map +1 -1
  60. package/lib/Cloudflare/Container/StartContainer.js.map +1 -1
  61. package/lib/Cloudflare/D1/D1Database.d.ts +1 -0
  62. package/lib/Cloudflare/D1/D1Database.d.ts.map +1 -1
  63. package/lib/Cloudflare/D1/D1Database.js +2 -1
  64. package/lib/Cloudflare/D1/D1Database.js.map +1 -1
  65. package/lib/Cloudflare/D1/D1DatabaseBinding.js +1 -1
  66. package/lib/Cloudflare/D1/D1DatabaseBinding.js.map +1 -1
  67. package/lib/Cloudflare/Fetcher.d.ts.map +1 -1
  68. package/lib/Cloudflare/Fetcher.js +0 -2
  69. package/lib/Cloudflare/Fetcher.js.map +1 -1
  70. package/lib/Cloudflare/Hyperdrive/Hyperdrive.d.ts +1 -0
  71. package/lib/Cloudflare/Hyperdrive/Hyperdrive.d.ts.map +1 -1
  72. package/lib/Cloudflare/Hyperdrive/Hyperdrive.js +3 -0
  73. package/lib/Cloudflare/Hyperdrive/Hyperdrive.js.map +1 -1
  74. package/lib/Cloudflare/Hyperdrive/HyperdriveBinding.d.ts +3 -2
  75. package/lib/Cloudflare/Hyperdrive/HyperdriveBinding.d.ts.map +1 -1
  76. package/lib/Cloudflare/Hyperdrive/HyperdriveBinding.js +32 -33
  77. package/lib/Cloudflare/Hyperdrive/HyperdriveBinding.js.map +1 -1
  78. package/lib/Cloudflare/KV/KVNamespace.d.ts +1 -0
  79. package/lib/Cloudflare/KV/KVNamespace.d.ts.map +1 -1
  80. package/lib/Cloudflare/KV/KVNamespace.js +2 -0
  81. package/lib/Cloudflare/KV/KVNamespace.js.map +1 -1
  82. package/lib/Cloudflare/Local.js +1 -1
  83. package/lib/Cloudflare/Local.js.map +1 -1
  84. package/lib/Cloudflare/Providers.d.ts +2 -1
  85. package/lib/Cloudflare/Providers.d.ts.map +1 -1
  86. package/lib/Cloudflare/Providers.js +25 -17
  87. package/lib/Cloudflare/Providers.js.map +1 -1
  88. package/lib/Cloudflare/Queue/Queue.d.ts +1 -0
  89. package/lib/Cloudflare/Queue/Queue.d.ts.map +1 -1
  90. package/lib/Cloudflare/Queue/Queue.js +1 -0
  91. package/lib/Cloudflare/Queue/Queue.js.map +1 -1
  92. package/lib/Cloudflare/Queue/QueueConsumer.d.ts +2 -1
  93. package/lib/Cloudflare/Queue/QueueConsumer.d.ts.map +1 -1
  94. package/lib/Cloudflare/Queue/QueueConsumer.js +10 -3
  95. package/lib/Cloudflare/Queue/QueueConsumer.js.map +1 -1
  96. package/lib/Cloudflare/Queue/QueueEventSource.d.ts +30 -4
  97. package/lib/Cloudflare/Queue/QueueEventSource.d.ts.map +1 -1
  98. package/lib/Cloudflare/Queue/QueueEventSource.js +22 -1
  99. package/lib/Cloudflare/Queue/QueueEventSource.js.map +1 -1
  100. package/lib/Cloudflare/R2/R2Bucket.d.ts +1 -0
  101. package/lib/Cloudflare/R2/R2Bucket.d.ts.map +1 -1
  102. package/lib/Cloudflare/R2/R2Bucket.js +18 -0
  103. package/lib/Cloudflare/R2/R2Bucket.js.map +1 -1
  104. package/lib/Cloudflare/SecretsStore/Secret.d.ts.map +1 -1
  105. package/lib/Cloudflare/SecretsStore/Secret.js +13 -34
  106. package/lib/Cloudflare/SecretsStore/Secret.js.map +1 -1
  107. package/lib/Cloudflare/SecretsStore/SecretBinding.d.ts +3 -2
  108. package/lib/Cloudflare/SecretsStore/SecretBinding.d.ts.map +1 -1
  109. package/lib/Cloudflare/SecretsStore/SecretBinding.js +3 -2
  110. package/lib/Cloudflare/SecretsStore/SecretBinding.js.map +1 -1
  111. package/lib/Cloudflare/StateStore/Api.d.ts +5 -13
  112. package/lib/Cloudflare/StateStore/Api.d.ts.map +1 -1
  113. package/lib/Cloudflare/StateStore/Api.js +14 -8
  114. package/lib/Cloudflare/StateStore/Api.js.map +1 -1
  115. package/lib/Cloudflare/StateStore/State.d.ts +11 -65
  116. package/lib/Cloudflare/StateStore/State.d.ts.map +1 -1
  117. package/lib/Cloudflare/StateStore/State.js +320 -343
  118. package/lib/Cloudflare/StateStore/State.js.map +1 -1
  119. package/lib/Cloudflare/StateStore/Store.d.ts.map +1 -1
  120. package/lib/Cloudflare/StateStore/Store.js +21 -31
  121. package/lib/Cloudflare/StateStore/Store.js.map +1 -1
  122. package/lib/Cloudflare/Vectorize/VectorizeIndex.d.ts +114 -0
  123. package/lib/Cloudflare/Vectorize/VectorizeIndex.d.ts.map +1 -0
  124. package/lib/Cloudflare/Vectorize/VectorizeIndex.js +157 -0
  125. package/lib/Cloudflare/Vectorize/VectorizeIndex.js.map +1 -0
  126. package/lib/Cloudflare/Vectorize/VectorizeIndexBinding.d.ts +38 -0
  127. package/lib/Cloudflare/Vectorize/VectorizeIndexBinding.d.ts.map +1 -0
  128. package/lib/Cloudflare/Vectorize/VectorizeIndexBinding.js +44 -0
  129. package/lib/Cloudflare/Vectorize/VectorizeIndexBinding.js.map +1 -0
  130. package/lib/Cloudflare/Vectorize/VectorizeMetadataIndex.d.ts +72 -0
  131. package/lib/Cloudflare/Vectorize/VectorizeMetadataIndex.d.ts.map +1 -0
  132. package/lib/Cloudflare/Vectorize/VectorizeMetadataIndex.js +131 -0
  133. package/lib/Cloudflare/Vectorize/VectorizeMetadataIndex.js.map +1 -0
  134. package/lib/Cloudflare/Vectorize/index.d.ts +4 -0
  135. package/lib/Cloudflare/Vectorize/index.d.ts.map +1 -0
  136. package/lib/Cloudflare/Vectorize/index.js +4 -0
  137. package/lib/Cloudflare/Vectorize/index.js.map +1 -0
  138. package/lib/Cloudflare/VpcService/VpcService.d.ts +2 -2
  139. package/lib/Cloudflare/VpcService/VpcService.d.ts.map +1 -1
  140. package/lib/Cloudflare/Website/StaticSite.d.ts +5 -5
  141. package/lib/Cloudflare/Website/StaticSite.d.ts.map +1 -1
  142. package/lib/Cloudflare/Website/StaticSite.js +3 -0
  143. package/lib/Cloudflare/Website/StaticSite.js.map +1 -1
  144. package/lib/Cloudflare/Website/Vite.d.ts +5 -5
  145. package/lib/Cloudflare/Website/Vite.d.ts.map +1 -1
  146. package/lib/Cloudflare/Website/Vite.js.map +1 -1
  147. package/lib/Cloudflare/Workers/Assets.d.ts.map +1 -1
  148. package/lib/Cloudflare/Workers/Assets.js +1 -1
  149. package/lib/Cloudflare/Workers/Assets.js.map +1 -1
  150. package/lib/Cloudflare/Workers/DurableObjectBridge.d.ts.map +1 -1
  151. package/lib/Cloudflare/Workers/DurableObjectBridge.js +4 -2
  152. package/lib/Cloudflare/Workers/DurableObjectBridge.js.map +1 -1
  153. package/lib/Cloudflare/Workers/DurableObjectNamespace.d.ts +183 -6
  154. package/lib/Cloudflare/Workers/DurableObjectNamespace.d.ts.map +1 -1
  155. package/lib/Cloudflare/Workers/DurableObjectNamespace.js +279 -76
  156. package/lib/Cloudflare/Workers/DurableObjectNamespace.js.map +1 -1
  157. package/lib/Cloudflare/Workers/HttpServer.d.ts +6 -4
  158. package/lib/Cloudflare/Workers/HttpServer.d.ts.map +1 -1
  159. package/lib/Cloudflare/Workers/HttpServer.js +20 -15
  160. package/lib/Cloudflare/Workers/HttpServer.js.map +1 -1
  161. package/lib/Cloudflare/Workers/InferEnv.d.ts +3 -2
  162. package/lib/Cloudflare/Workers/InferEnv.d.ts.map +1 -1
  163. package/lib/Cloudflare/Workers/LocalWorkerProvider.d.ts +4 -7
  164. package/lib/Cloudflare/Workers/LocalWorkerProvider.d.ts.map +1 -1
  165. package/lib/Cloudflare/Workers/LocalWorkerProvider.js +111 -66
  166. package/lib/Cloudflare/Workers/LocalWorkerProvider.js.map +1 -1
  167. package/lib/Cloudflare/Workers/Rpc.d.ts +16 -0
  168. package/lib/Cloudflare/Workers/Rpc.d.ts.map +1 -1
  169. package/lib/Cloudflare/Workers/Rpc.js +22 -0
  170. package/lib/Cloudflare/Workers/Rpc.js.map +1 -1
  171. package/lib/Cloudflare/Workers/RpcDurableObjectNamespace.d.ts +285 -0
  172. package/lib/Cloudflare/Workers/RpcDurableObjectNamespace.d.ts.map +1 -0
  173. package/lib/Cloudflare/Workers/RpcDurableObjectNamespace.js +288 -0
  174. package/lib/Cloudflare/Workers/RpcDurableObjectNamespace.js.map +1 -0
  175. package/lib/Cloudflare/Workers/RpcWorker.d.ts +305 -0
  176. package/lib/Cloudflare/Workers/RpcWorker.d.ts.map +1 -0
  177. package/lib/Cloudflare/Workers/RpcWorker.js +350 -0
  178. package/lib/Cloudflare/Workers/RpcWorker.js.map +1 -0
  179. package/lib/Cloudflare/Workers/Vite.d.ts +1 -1
  180. package/lib/Cloudflare/Workers/Vite.d.ts.map +1 -1
  181. package/lib/Cloudflare/Workers/Vite.js +2 -1
  182. package/lib/Cloudflare/Workers/Vite.js.map +1 -1
  183. package/lib/Cloudflare/Workers/Worker.d.ts +69 -24
  184. package/lib/Cloudflare/Workers/Worker.d.ts.map +1 -1
  185. package/lib/Cloudflare/Workers/Worker.js +168 -47
  186. package/lib/Cloudflare/Workers/Worker.js.map +1 -1
  187. package/lib/Cloudflare/Workers/WorkerAsyncBindings.d.ts +1 -1
  188. package/lib/Cloudflare/Workers/WorkerAsyncBindings.d.ts.map +1 -1
  189. package/lib/Cloudflare/Workers/WorkerAsyncBindings.js +166 -97
  190. package/lib/Cloudflare/Workers/WorkerAsyncBindings.js.map +1 -1
  191. package/lib/Cloudflare/Workers/WorkerBinding.d.ts +12 -23
  192. package/lib/Cloudflare/Workers/WorkerBinding.d.ts.map +1 -1
  193. package/lib/Cloudflare/Workers/WorkerBinding.js +3 -0
  194. package/lib/Cloudflare/Workers/WorkerBinding.js.map +1 -1
  195. package/lib/Cloudflare/Workers/WorkerBridge.d.ts.map +1 -1
  196. package/lib/Cloudflare/Workers/WorkerBridge.js +5 -2
  197. package/lib/Cloudflare/Workers/WorkerBridge.js.map +1 -1
  198. package/lib/Cloudflare/Workers/WorkerBundle.d.ts.map +1 -1
  199. package/lib/Cloudflare/Workers/WorkerBundle.js +4 -1
  200. package/lib/Cloudflare/Workers/WorkerBundle.js.map +1 -1
  201. package/lib/Cloudflare/Workers/WorkerRuntimeContext.d.ts.map +1 -1
  202. package/lib/Cloudflare/Workers/WorkerRuntimeContext.js +9 -10
  203. package/lib/Cloudflare/Workers/WorkerRuntimeContext.js.map +1 -1
  204. package/lib/Cloudflare/Workers/Workflow.d.ts +5 -3
  205. package/lib/Cloudflare/Workers/Workflow.d.ts.map +1 -1
  206. package/lib/Cloudflare/Workers/Workflow.js +19 -1
  207. package/lib/Cloudflare/Workers/Workflow.js.map +1 -1
  208. package/lib/Cloudflare/Workers/index.d.ts +2 -0
  209. package/lib/Cloudflare/Workers/index.d.ts.map +1 -1
  210. package/lib/Cloudflare/Workers/index.js +2 -0
  211. package/lib/Cloudflare/Workers/index.js.map +1 -1
  212. package/lib/Cloudflare/index.d.ts +2 -0
  213. package/lib/Cloudflare/index.d.ts.map +1 -1
  214. package/lib/Cloudflare/index.js +2 -0
  215. package/lib/Cloudflare/index.js.map +1 -1
  216. package/lib/Dependencies.d.ts +10 -0
  217. package/lib/Dependencies.d.ts.map +1 -0
  218. package/lib/Dependencies.js +1 -0
  219. package/lib/Dependencies.js.map +1 -0
  220. package/lib/Deploy.d.ts +2 -1
  221. package/lib/Deploy.d.ts.map +1 -1
  222. package/lib/Deploy.js +2 -2
  223. package/lib/Deploy.js.map +1 -1
  224. package/lib/Diff.d.ts +11 -0
  225. package/lib/Diff.d.ts.map +1 -1
  226. package/lib/Diff.js +11 -0
  227. package/lib/Diff.js.map +1 -1
  228. package/lib/Input.d.ts +2 -1
  229. package/lib/Input.d.ts.map +1 -1
  230. package/lib/KeyPair.d.ts +77 -0
  231. package/lib/KeyPair.d.ts.map +1 -0
  232. package/lib/KeyPair.js +102 -0
  233. package/lib/KeyPair.js.map +1 -0
  234. package/lib/Local/RpcProvider.d.ts +3 -1
  235. package/lib/Local/RpcProvider.d.ts.map +1 -1
  236. package/lib/Local/RpcProvider.js +28 -2
  237. package/lib/Local/RpcProvider.js.map +1 -1
  238. package/lib/Local/RpcServerEnvironment.js +1 -1
  239. package/lib/Local/RpcServerEnvironment.js.map +1 -1
  240. package/lib/Neon/Project.d.ts.map +1 -1
  241. package/lib/Neon/Project.js +14 -3
  242. package/lib/Neon/Project.js.map +1 -1
  243. package/lib/Output.d.ts.map +1 -1
  244. package/lib/Output.js +9 -2
  245. package/lib/Output.js.map +1 -1
  246. package/lib/Phase.d.ts +2 -1
  247. package/lib/Phase.d.ts.map +1 -1
  248. package/lib/Phase.js +6 -1
  249. package/lib/Phase.js.map +1 -1
  250. package/lib/Plan.d.ts.map +1 -1
  251. package/lib/Plan.js +14 -3
  252. package/lib/Plan.js.map +1 -1
  253. package/lib/Platform.d.ts +8 -6
  254. package/lib/Platform.d.ts.map +1 -1
  255. package/lib/Platform.js +33 -3
  256. package/lib/Platform.js.map +1 -1
  257. package/lib/Random.d.ts.map +1 -1
  258. package/lib/Random.js +9 -14
  259. package/lib/Random.js.map +1 -1
  260. package/lib/RuntimeContext.d.ts +21 -1
  261. package/lib/RuntimeContext.d.ts.map +1 -1
  262. package/lib/RuntimeContext.js +12 -0
  263. package/lib/RuntimeContext.js.map +1 -1
  264. package/lib/Stack.d.ts +3 -3
  265. package/lib/Stack.d.ts.map +1 -1
  266. package/lib/Stack.js.map +1 -1
  267. package/lib/State/HttpStateApi.d.ts +2 -2
  268. package/lib/State/HttpStateStore.d.ts +4 -0
  269. package/lib/State/HttpStateStore.d.ts.map +1 -1
  270. package/lib/State/HttpStateStore.js +13 -0
  271. package/lib/State/HttpStateStore.js.map +1 -1
  272. package/lib/State/StateEncoding.d.ts +8 -0
  273. package/lib/State/StateEncoding.d.ts.map +1 -1
  274. package/lib/State/StateEncoding.js +55 -5
  275. package/lib/State/StateEncoding.js.map +1 -1
  276. package/lib/Test/Bun.d.ts.map +1 -1
  277. package/lib/Test/Bun.js +0 -2
  278. package/lib/Test/Bun.js.map +1 -1
  279. package/lib/Test/Vitest.d.ts.map +1 -1
  280. package/lib/Test/Vitest.js +0 -2
  281. package/lib/Test/Vitest.js.map +1 -1
  282. package/lib/Util/Duration.d.ts +14 -0
  283. package/lib/Util/Duration.d.ts.map +1 -0
  284. package/lib/Util/Duration.js +18 -0
  285. package/lib/Util/Duration.js.map +1 -0
  286. package/lib/Util/index.d.ts +0 -6
  287. package/lib/Util/index.d.ts.map +1 -1
  288. package/lib/Util/index.js +0 -6
  289. package/lib/Util/index.js.map +1 -1
  290. package/lib/Util/poll.d.ts +30 -0
  291. package/lib/Util/poll.d.ts.map +1 -0
  292. package/lib/Util/poll.js +26 -0
  293. package/lib/Util/poll.js.map +1 -0
  294. package/lib/Util/types.d.ts +3 -1
  295. package/lib/Util/types.d.ts.map +1 -1
  296. package/lib/Util/types.js +5 -1
  297. package/lib/Util/types.js.map +1 -1
  298. package/lib/index.d.ts +2 -3
  299. package/lib/index.d.ts.map +1 -1
  300. package/lib/index.js +1 -3
  301. package/lib/index.js.map +1 -1
  302. package/lib/tsconfig.test.tsbuildinfo +1 -1
  303. package/package.json +20 -19
  304. package/src/AWS/Lambda/Function.ts +87 -34
  305. package/src/AWS/Providers.ts +3 -0
  306. package/src/AlchemyContext.ts +0 -1
  307. package/src/Apply.ts +18 -1
  308. package/src/Auth/AuthProvider.ts +25 -5
  309. package/src/Auth/Credentials.ts +8 -7
  310. package/src/Cli/commands/_shared.ts +47 -4
  311. package/src/Cli/commands/cloudflare.ts +5 -3
  312. package/src/Cli/commands/dev.ts +13 -1
  313. package/src/Cli/commands/login.ts +20 -4
  314. package/src/Cli/commands/profile.ts +24 -34
  315. package/src/Cli/main.ts +0 -3
  316. package/src/Cloudflare/AiGateway/AiGateway.ts +2 -6
  317. package/src/Cloudflare/BrowserRendering/BrowserRendering.ts +132 -0
  318. package/src/Cloudflare/BrowserRendering/BrowserRenderingBinding.ts +137 -0
  319. package/src/Cloudflare/BrowserRendering/index.ts +11 -0
  320. package/src/Cloudflare/Container/Container.ts +3 -3
  321. package/src/Cloudflare/Container/StartContainer.ts +1 -2
  322. package/src/Cloudflare/D1/D1Database.ts +4 -1
  323. package/src/Cloudflare/D1/D1DatabaseBinding.ts +1 -1
  324. package/src/Cloudflare/Fetcher.ts +0 -2
  325. package/src/Cloudflare/Hyperdrive/Hyperdrive.ts +5 -0
  326. package/src/Cloudflare/Hyperdrive/HyperdriveBinding.ts +41 -43
  327. package/src/Cloudflare/KV/KVNamespace.ts +4 -0
  328. package/src/Cloudflare/Local.ts +1 -1
  329. package/src/Cloudflare/Providers.ts +32 -16
  330. package/src/Cloudflare/Queue/Queue.ts +3 -0
  331. package/src/Cloudflare/Queue/QueueConsumer.ts +21 -8
  332. package/src/Cloudflare/Queue/QueueEventSource.ts +33 -5
  333. package/src/Cloudflare/R2/R2Bucket.ts +26 -0
  334. package/src/Cloudflare/SecretsStore/Secret.ts +14 -41
  335. package/src/Cloudflare/SecretsStore/SecretBinding.ts +11 -11
  336. package/src/Cloudflare/StateStore/Api.ts +15 -15
  337. package/src/Cloudflare/StateStore/State.ts +468 -468
  338. package/src/Cloudflare/StateStore/Store.ts +27 -37
  339. package/src/Cloudflare/Vectorize/VectorizeIndex.ts +261 -0
  340. package/src/Cloudflare/Vectorize/VectorizeIndexBinding.ts +103 -0
  341. package/src/Cloudflare/Vectorize/VectorizeMetadataIndex.ts +208 -0
  342. package/src/Cloudflare/Vectorize/index.ts +3 -0
  343. package/src/Cloudflare/VpcService/VpcService.ts +2 -2
  344. package/src/Cloudflare/Website/StaticSite.ts +8 -10
  345. package/src/Cloudflare/Website/Vite.ts +4 -7
  346. package/src/Cloudflare/Workers/Assets.ts +1 -1
  347. package/src/Cloudflare/Workers/DurableObjectBridge.ts +7 -4
  348. package/src/Cloudflare/Workers/DurableObjectNamespace.ts +380 -121
  349. package/src/Cloudflare/Workers/HttpServer.ts +31 -25
  350. package/src/Cloudflare/Workers/InferEnv.ts +15 -8
  351. package/src/Cloudflare/Workers/LocalWorkerProvider.ts +139 -78
  352. package/src/Cloudflare/Workers/Rpc.ts +50 -0
  353. package/src/Cloudflare/Workers/RpcDurableObjectNamespace.ts +502 -0
  354. package/src/Cloudflare/Workers/RpcWorker.ts +562 -0
  355. package/src/Cloudflare/Workers/Vite.ts +2 -0
  356. package/src/Cloudflare/Workers/Worker.ts +274 -93
  357. package/src/Cloudflare/Workers/WorkerAsyncBindings.ts +165 -103
  358. package/src/Cloudflare/Workers/WorkerBinding.ts +12 -0
  359. package/src/Cloudflare/Workers/WorkerBridge.ts +7 -4
  360. package/src/Cloudflare/Workers/WorkerBundle.ts +4 -1
  361. package/src/Cloudflare/Workers/WorkerRuntimeContext.ts +8 -15
  362. package/src/Cloudflare/Workers/Workflow.ts +22 -3
  363. package/src/Cloudflare/Workers/index.ts +2 -0
  364. package/src/Cloudflare/index.ts +2 -0
  365. package/src/Dependencies.ts +10 -0
  366. package/src/Deploy.ts +3 -1
  367. package/src/Diff.ts +13 -0
  368. package/src/Input.ts +2 -0
  369. package/src/KeyPair.ts +146 -0
  370. package/src/Local/RpcProvider.ts +45 -1
  371. package/src/Local/RpcServerEnvironment.ts +1 -1
  372. package/src/Neon/Project.ts +16 -3
  373. package/src/Output.ts +8 -2
  374. package/src/Phase.ts +8 -0
  375. package/src/Plan.ts +16 -3
  376. package/src/Platform.ts +74 -27
  377. package/src/Random.ts +22 -27
  378. package/src/RuntimeContext.ts +23 -1
  379. package/src/Stack.ts +3 -3
  380. package/src/State/HttpStateStore.ts +28 -0
  381. package/src/State/StateEncoding.ts +58 -7
  382. package/src/Test/Bun.ts +0 -3
  383. package/src/Test/Vitest.ts +0 -3
  384. package/src/Util/Duration.ts +21 -0
  385. package/src/Util/index.ts +0 -6
  386. package/src/Util/poll.ts +47 -0
  387. package/src/Util/types.ts +9 -2
  388. package/src/index.ts +2 -3
  389. package/lib/Secret.d.ts +0 -50
  390. package/lib/Secret.d.ts.map +0 -1
  391. package/lib/Secret.js +0 -23
  392. package/lib/Secret.js.map +0 -1
  393. package/lib/Trait.d.ts +0 -43
  394. package/lib/Trait.d.ts.map +0 -1
  395. package/lib/Trait.js +0 -17
  396. package/lib/Trait.js.map +0 -1
  397. package/lib/Util/LocalhostDns.d.ts +0 -23
  398. package/lib/Util/LocalhostDns.d.ts.map +0 -1
  399. package/lib/Util/LocalhostDns.js +0 -46
  400. package/lib/Util/LocalhostDns.js.map +0 -1
  401. package/lib/Util/assert-never.d.ts +0 -12
  402. package/lib/Util/assert-never.d.ts.map +0 -1
  403. package/lib/Util/assert-never.js +0 -11
  404. package/lib/Util/assert-never.js.map +0 -1
  405. package/lib/Util/class.d.ts +0 -3
  406. package/lib/Util/class.d.ts.map +0 -1
  407. package/lib/Util/class.js +0 -1
  408. package/lib/Util/class.js.map +0 -1
  409. package/lib/Util/ignore.d.ts +0 -40
  410. package/lib/Util/ignore.d.ts.map +0 -1
  411. package/lib/Util/ignore.js +0 -591
  412. package/lib/Util/ignore.js.map +0 -1
  413. package/lib/Util/instance.d.ts +0 -4
  414. package/lib/Util/instance.d.ts.map +0 -1
  415. package/lib/Util/instance.js +0 -1
  416. package/lib/Util/instance.js.map +0 -1
  417. package/lib/Util/pointer.d.ts +0 -5
  418. package/lib/Util/pointer.d.ts.map +0 -1
  419. package/lib/Util/pointer.js +0 -1
  420. package/lib/Util/pointer.js.map +0 -1
  421. package/lib/Util/schema-to-type.d.ts +0 -42
  422. package/lib/Util/schema-to-type.d.ts.map +0 -1
  423. package/lib/Util/schema-to-type.js +0 -364
  424. package/lib/Util/schema-to-type.js.map +0 -1
  425. package/lib/Util/todo.d.ts +0 -3
  426. package/lib/Util/todo.d.ts.map +0 -1
  427. package/lib/Util/todo.js +0 -3
  428. package/lib/Util/todo.js.map +0 -1
  429. package/lib/Variable.d.ts +0 -29
  430. package/lib/Variable.d.ts.map +0 -1
  431. package/lib/Variable.js +0 -9
  432. package/lib/Variable.js.map +0 -1
  433. package/src/Secret.ts +0 -87
  434. package/src/Trait.ts +0 -105
  435. package/src/Util/LocalhostDns.ts +0 -52
  436. package/src/Util/assert-never.ts +0 -18
  437. package/src/Util/class.ts +0 -7
  438. package/src/Util/ignore.ts +0 -815
  439. package/src/Util/instance.ts +0 -9
  440. package/src/Util/pointer.ts +0 -5
  441. package/src/Util/schema-to-type.ts +0 -456
  442. package/src/Util/todo.ts +0 -4
  443. package/src/Variable.ts +0 -44
@@ -1 +1 @@
1
- {"version":3,"file":"Phase.d.ts","sourceRoot":"","sources":["../src/Phase.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,eAAO,MAAM,aAAa,qCAGzB,CAAC"}
1
+ {"version":3,"file":"Phase.d.ts","sourceRoot":"","sources":["../src/Phase.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,SAAS,CAAC;AAE9C,eAAO,MAAM,aAAa,2CASzB,CAAC"}
package/lib/Phase.js CHANGED
@@ -1,4 +1,9 @@
1
1
  import * as Config from "effect/Config";
2
2
  import * as Effect from "effect/Effect";
3
- export const ALCHEMY_PHASE = Config.string("ALCHEMY_PHASE").pipe(Config.withDefault("plan"), Effect.orDie);
3
+ export const ALCHEMY_PHASE = Config.string("ALCHEMY_PHASE").pipe(Config.withDefault("plan"), Config.mapOrFail((value) => {
4
+ if (value !== "plan" && value !== "runtime") {
5
+ return Effect.die(new Error(`Invalid ALCHEMY_PHASE: ${value}`));
6
+ }
7
+ return Effect.succeed(value);
8
+ }), Effect.orDie);
4
9
  //# sourceMappingURL=Phase.js.map
package/lib/Phase.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Phase.js","sourceRoot":"","sources":["../src/Phase.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,IAAI,CAC9D,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,EAC1B,MAAM,CAAC,KAAK,CACb,CAAC"}
1
+ {"version":3,"file":"Phase.js","sourceRoot":"","sources":["../src/Phase.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAIxC,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,IAAI,CAC9D,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,EAC1B,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;IACzB,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QAC5C,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,0BAA0B,KAAK,EAAE,CAAC,CAAC,CAAC;IAClE,CAAC;IACD,OAAO,MAAM,CAAC,OAAO,CAAC,KAAqB,CAAC,CAAC;AAC/C,CAAC,CAAC,EACF,MAAM,CAAC,KAAK,CACb,CAAC"}
package/lib/Plan.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Plan.d.ts","sourceRoot":"","sources":["../src/Plan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Plan.d.ts","sourceRoot":"","sources":["../src/Plan.ts"],"names":[],"mappings":"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"}
package/lib/Plan.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import * as Data from "effect/Data";
2
+ import * as Duration from "effect/Duration";
2
3
  import * as Effect from "effect/Effect";
3
4
  import * as Option from "effect/Option";
4
5
  import * as Redacted from "effect/Redacted";
@@ -6,7 +7,7 @@ import { asEffect } from ".//Util/types.js";
6
7
  import { AdoptPolicy, OwnedBySomeoneElse, stripUnowned, Unowned, } from "./AdoptPolicy.js";
7
8
  import { AlchemyContext } from "./AlchemyContext.js";
8
9
  import { Artifacts, ArtifactStore, createArtifactStore, ensureArtifactStore, makeScopedArtifacts, } from "./Artifacts.js";
9
- import { diffBindings, havePropsChanged, isResolved, } from "./Diff.js";
10
+ import { dedupeBindings, diffBindings, havePropsChanged, isResolved, } from "./Diff.js";
10
11
  import { parseFqn } from "./FQN.js";
11
12
  import { generateInstanceId, InstanceId } from "./InstanceId.js";
12
13
  import * as Output from "./Output.js";
@@ -82,7 +83,9 @@ Effect.gen(function* () {
82
83
  ? oldState.old.props
83
84
  : oldState.props;
84
85
  const oldBindings = oldState.bindings ?? [];
85
- const newBindings = stack.bindings[resource.FQN] ?? [];
86
+ // Collapse duplicate bindings by sid so the binding set handed to
87
+ // `diff` matches what `reconcile` receives (see `dedupeBindings`).
88
+ const newBindings = dedupeBindings(stack.bindings[resource.FQN] ?? []);
86
89
  const diff = yield* provider.diff
87
90
  ? provider
88
91
  .diff({
@@ -139,6 +142,12 @@ Effect.gen(function* () {
139
142
  else if (Redacted.isRedacted(input)) {
140
143
  return input;
141
144
  }
145
+ else if (Duration.isDuration(input)) {
146
+ // Duration is an opaque value; walking its internal `.value`
147
+ // would destroy the prototype and produce a plain `{ value: ... }`
148
+ // object that downstream consumers can't interpret.
149
+ return input;
150
+ }
142
151
  else if (Array.isArray(input)) {
143
152
  return yield* Effect.all(input.map(resolveInput), {
144
153
  concurrency: "unbounded",
@@ -340,7 +349,9 @@ Effect.gen(function* () {
340
349
  const fqn = resource.FQN;
341
350
  const news = yield* resolveInput(resource.Props);
342
351
  const downstream = newDownstreamDependencies[fqn] ?? [];
343
- const newBindings = yield* resolveInput(stack.bindings[fqn] ?? []);
352
+ // Collapse duplicate bindings by sid so the binding set handed to
353
+ // `diff` matches what `reconcile` receives (see `dedupeBindings`).
354
+ const newBindings = dedupeBindings(yield* resolveInput(stack.bindings[fqn] ?? []));
344
355
  const persisted = yield* state.get({
345
356
  stack: stackName,
346
357
  stage: stage,
package/lib/Plan.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Plan.js","sourceRoot":"","sources":["../src/Plan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Plan.js","sourceRoot":"","sources":["../src/Plan.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,aAAa,CAAC;AACpC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,YAAY,EACZ,OAAO,GACR,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EACL,SAAS,EACT,aAAa,EACb,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,UAAU,GAGX,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,EACL,kBAAkB,EAClB,QAAQ,GAET,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,UAAU,GAGX,MAAM,eAAe,CAAC;AACvB,OAAO,EAAkB,MAAM,YAAY,CAAC;AAC5C,OAAO,EACL,KAAK,EAGL,aAAa,GAQd,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAmB,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAIjD,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,IAAS,EAAgB,EAAE;IAChD,OAAO,CACL,IAAI;QACJ,OAAO,IAAI,KAAK,QAAQ;QACxB,CAAC,IAAI,CAAC,MAAM,KAAK,QAAQ;YACvB,IAAI,CAAC,MAAM,KAAK,QAAQ;YACxB,IAAI,CAAC,MAAM,KAAK,SAAS;YACzB,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,CAC1B,CAAC;AACJ,CAAC,CAAC;AAkKF,MAAM,CAAC,MAAM,IAAI,GAAG,CAClB,KAAmB,EACnB,UAA2B,EAAE,EACS,EAAE;AACxC,mBAAmB;AACnB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC;IAE3B,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACjD,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;IAEnD,yCAAyC;IACzC,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC;IAC7B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;IAE1B,oEAAoE;IACpE,wEAAwE;IACxE,sEAAsE;IACtE,wBAAwB;IACxB,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QACtC,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QAC7D,IAAI,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC;YAAE,OAAO,WAAW,CAAC,KAAK,CAAC;QACzD,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;QACxD,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE;YACvB,MAAM,EAAE,GAAG,EAAE,CAAC,KAAK;YACnB,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK;SACvB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;QACrC,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE,KAAK;KACb,CAAC,CAAC;IACH,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CACpC,YAAY,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CACvB,KAAK,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CACnD,EACD,EAAE,WAAW,EAAE,WAAW,EAAE,CAC7B,CAAC;IAEF,MAAM,iBAAiB,GAAuC,EAAE,CAAC;IAEjE,MAAM,eAAe,GAAG,CACtB,YAA2C,EACvB,EAAE,CACtB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClB,gEAAgE;QAChE,6DAA6D;QAC7D,kEAAkE;QAClE,IAAI,QAAQ,CAAC,YAAY,CAAC,GAAU,CAAC,EAAE,CAAC;YACtC,OAAO,YAAY,CAAC;QACtB,CAAC;QACD,mBAAmB;QACnB,OAAO,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC;YACpD,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAClB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;gBAClB,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC;gBAElC,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC1D,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAClD,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC;oBACjC,KAAK,EAAE,SAAS;oBAChB,KAAK,EAAE,KAAK;oBACZ,GAAG,EAAE,QAAQ,CAAC,GAAG;iBAClB,CAAC,CAAC;gBACH,MAAM,QAAQ,GAA8B,aAAa,CACvD,SAAS,CACV;oBACC,CAAC,CAAC,SAAS;oBACX,CAAC,CAAE,SAAuC,CAAC;gBAE7C,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;oBAChD,OAAO,YAAY,CAAC;gBACtB,CAAC;gBAED,MAAM,QAAQ,GACZ,QAAQ,CAAC,MAAM,KAAK,UAAU;oBAC5B,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK;oBACpB,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAErB,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,IAAI,EAAE,CAAC;gBAC5C,kEAAkE;gBAClE,mEAAmE;gBACnE,MAAM,WAAW,GAAG,cAAc,CAChC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,CACnC,CAAC;gBAEF,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI;oBAC/B,CAAC,CAAC,QAAQ;yBACL,IAAI,CAAC;wBACJ,EAAE,EAAE,QAAQ,CAAC,SAAS;wBACtB,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE,QAAQ,CAAC,UAAU;wBAC/B,IAAI,EAAE,KAAK;wBACX,MAAM,EAAE,QAAQ,CAAC,IAAI;wBACrB,WAAW;wBACX,WAAW;qBACZ,CAAC;yBACD,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;oBAC9D,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBAE9B,MAAM,OAAO,GAAa;oBACxB,GAAG,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC;oBAC3B,GAAG,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,CAAC;iBACzB,CAAC;gBAEF,MAAM,WAAW,GAAG,CAAC,MAAW,EAAE,EAAE,CAClC,OAAO,CAAC,MAAM,GAAG,CAAC;oBAChB,CAAC,CAAC,IAAI,MAAM,CAAC,YAAY,CACrB,YAAY,CAAC,GAAG,EAChB,MAAM,CAAC,WAAW,CAChB,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CACpD,CACF;oBACH,CAAC,CAAC,qEAAqE;wBACrE,YAAY,CAAC;gBAEnB,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;oBACjB,IAAI,gBAAgB,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;wBACtC,yFAAyF;wBACzF,2CAA2C;wBAC3C,OAAO,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;oBACrC,CAAC;gBACH,CAAC;qBAAM,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;oBACpC,OAAO,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;gBACrC,CAAC;qBAAM,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oBACrC,OAAO,YAAY,CAAC;gBACtB,CAAC;gBACD,IACE,QAAQ,CAAC,MAAM,KAAK,SAAS;oBAC7B,QAAQ,CAAC,MAAM,KAAK,SAAS;oBAC7B,QAAQ,CAAC,MAAM,KAAK,UAAU,EAC9B,CAAC;oBACD,sEAAsE;oBACtE,OAAO,QAAQ,EAAE,IAAI,CAAC;gBACxB,CAAC;qBAAM,CAAC;oBACN,oEAAoE;oBACpE,OAAO,YAAY,CAAC;gBACtB,CAAC;YACH,CAAC,CAAC,CACH,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEL,MAAM,YAAY,GAAG,CAAC,KAAU,EAAsB,EAAE,CACtD,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClB,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,KAAK,CAAC;QACf,CAAC;aAAM,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAChC,OAAO,KAAK,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACrC,CAAC;aAAM,IAAI,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YACtC,OAAO,KAAK,CAAC;QACf,CAAC;aAAM,IAAI,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YACtC,6DAA6D;YAC7D,mEAAmE;YACnE,oDAAoD;YACpD,OAAO,KAAK,CAAC;QACf,CAAC;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAChC,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;gBAChD,WAAW,EAAE,WAAW;aACzB,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YAC7B,uEAAuE;YACvE,gFAAgF;YAChF,4EAA4E;YAC5E,8CAA8C;YAC9C,MAAM,YAAY,GAAG,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;YACtC,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;YACpD,OAAO,KAAK,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QACvC,CAAC;aAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACrC,OAAO,MAAM,CAAC,WAAW,CACvB,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CACf,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CACzC,YAAY,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAC9D,EACD,EAAE,WAAW,EAAE,WAAW,EAAE,CAC7B,CACF,CAAC;QACJ,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;IAEL,MAAM,aAAa,GAAG,CAAC,IAAsB,EAAsB,EAAE,CACnE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClB,IAAI,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YAChC,OAAO,KAAK,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC;aAAM,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACnC,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjD,OAAO,QAAQ,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACrC,CAAC;aAAM,IAAI,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;YACpC,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjD,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QAC/D,CAAC;aAAM,IAAI,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjD,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QACtE,CAAC;aAAM,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE;gBACrD,WAAW,EAAE,WAAW;aACzB,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;YACtC,OAAO,IAAI,CAAC,KAAK,CAAC;QACpB,CAAC;aAAM,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,IAAI,SAAS,CAAC;YACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC;YACrC,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,KAAK;iBAC1B,GAAG,CAAC;gBACH,KAAK,EAAE,QAAQ;gBACf,KAAK,EAAE,QAAQ;gBACf,GAAG,EAAE,IAAI,CAAC,UAAU;aACrB,CAAC;iBACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtB,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CACtB,IAAI,MAAM,CAAC,qBAAqB,CAAC;oBAC/B,OAAO,EAAE,iBAAiB,IAAI,CAAC,UAAU,eAAe,QAAQ,gBAAgB,QAAQ,mCAAmC,QAAQ,SAAS,QAAQ,IAAI;oBACxJ,KAAK,EAAE,QAAQ;oBACf,KAAK,EAAE,QAAQ;oBACf,UAAU,EAAE,IAAI,CAAC,UAAU;iBAC5B,CAAC,CACH,CAAC;YACJ,CAAC;YACD,OAAQ,QAAgB,CAAC,IAAI,IAAK,QAAgB,CAAC,MAAM,CAAC;QAC5D,CAAC;aAAM,IAAI,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC;YAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC;YACrC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,KAAK;iBACxB,SAAS,CAAC;gBACT,KAAK,EAAE,QAAQ;gBACf,KAAK,EAAE,QAAQ;aAChB,CAAC;iBACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtB,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;gBACnB,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CACtB,IAAI,MAAM,CAAC,qBAAqB,CAAC;oBAC/B,OAAO,EAAE,uBAAuB,QAAQ,eAAe,QAAQ,yCAAyC,QAAQ,SAAS,QAAQ,IAAI;oBACrI,KAAK,EAAE,QAAQ;oBACf,KAAK,EAAE,QAAQ;oBACf,UAAU,EAAE,QAAQ;iBACrB,CAAC,CACH,CAAC;YACJ,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;aAAM,IAAI,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;YACpC,OAAO,KAAK,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC;QACD,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CACtB,IAAI,KAAK,CAAC,qBAAqB,GAAI,IAAY,CAAC,IAAI,CAAC,CACtD,CAAC;IACJ,CAAC,CAAC,CAAC;IAEL,mFAAmF;IACnF,MAAM,yBAAyB,GAE3B,MAAM,CAAC,WAAW,CACpB,YAAY;SACT,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;SAChC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAC1D,CAAC;IAEF,8DAA8D;IAC9D,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7D,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACzD,6DAA6D;IAC7D,MAAM,WAAW,GAAG,IAAI,GAAG,CAAS,CAAC,GAAG,eAAe,EAAE,GAAG,aAAa,CAAC,CAAC,CAAC;IAE5E,8EAA8E;IAC9E,oEAAoE;IACpE,MAAM,uBAAuB,GAEzB,MAAM,CAAC,WAAW,CAAC;QACrB,GAAG,SAAS,CAAC,GAAG,CACd,CAAC,QAAQ,EAAE,EAAE,CACX;YACE,QAAQ,CAAC,GAAG;YACZ,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;SAC3D,CACb;QACD,GAAG,OAAO,CAAC,GAAG,CACZ,CAAC,MAAM,EAAE,EAAE,CACT;YACE,MAAM,CAAC,GAAG;YACV,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;SACzD,CACb;KACF,CAAC,CAAC;IAEH,iDAAiD;IACjD,MAAM,2BAA2B,GAE7B,MAAM,CAAC,WAAW,CACpB,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC;QAC1B,QAAQ,CAAC,GAAG;QACZ,MAAM,CAAC,MAAM,CACX,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CACvD,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;KACpB,CAAC,CACH,CAAC;IAEF,oEAAoE;IACpE,6EAA6E;IAC7E,iEAAiE;IACjE,MAAM,uBAAuB,GAEzB,MAAM,CAAC,WAAW,CAAW;QAC/B,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAsB,EAAE;YAChD,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC;YACzB,MAAM,QAAQ,GAAG,uBAAuB,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;YACpD,MAAM,QAAQ,GAAG,2BAA2B,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;YACxD,OAAO,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,QAAQ,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,CAAC,CAAC;QACF,mEAAmE;QACnE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAsB,EAAE;YAC5C,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;YACvB,OAAO,CAAC,GAAG,EAAE,uBAAuB,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC,CAAC;KACH,CAAC,CAAC;IAEH,wEAAwE;IACxE,4CAA4C;IAC5C,MAAM,uBAAuB,GAEzB,MAAM,CAAC,WAAW,CAAC;QACrB,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;YAC5B,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC;YACzB,MAAM,IAAI,GAAG,uBAAuB,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;YAChD,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAU,CAAC;QACpE,CAAC,CAAC;QACF,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YACxB,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;YACvB,MAAM,IAAI,GAAG,uBAAuB,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;YAChD,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAU,CAAC;QACpE,CAAC,CAAC;KACH,CAAC,CAAC;IAEH,mEAAmE;IACnE,gEAAgE;IAChE,qDAAqD;IACrD,MAAM,oBAAoB,GAAG,gBAAgB,CAAC,uBAAuB,CAAC,CAAC;IAEvE,uEAAuE;IACvE,aAAa;IACb,EAAE;IACF,qEAAqE;IACrE,oEAAoE;IACpE,oEAAoE;IACpE,qEAAqE;IACrE,kEAAkE;IAClE,oEAAoE;IACpE,oEAAoE;IACpE,sBAAsB;IACtB,EAAE;IACF,kEAAkE;IAClE,gEAAgE;IAChE,kEAAkE;IAClE,qEAAqE;IACrE,oEAAoE;IACpE,kDAAkD;IAClD,4BAA4B;IAC5B,EAAE;IACF,mEAAmE;IACnE,oEAAoE;IACpE,MAAM,iBAAiB,GAAG,CAAC,KAAa,EAAY,EAAE;QACpD,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,KAAK,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAC/C,uBAAuB,CACxB,EAAE,CAAC;YACF,IAAI,OAAO,KAAK,KAAK;gBAAE,SAAS;YAChC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAAE,SAAS;YACzC,MAAM,UAAU,GAAG,CAAC,uBAAuB,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAClE,KAAK,CACN,CAAC;YACF,IAAI,UAAU,EAAE,CAAC;gBACf,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACzB,SAAS;YACX,CAAC;YACD,6DAA6D;YAC7D,sCAAsC;YACtC,IACE,oBAAoB,CAAC,GAAG,CAAC,KAAK,CAAC;gBAC/B,oBAAoB,CAAC,GAAG,CAAC,OAAO,CAAC,EACjC,CAAC;gBACD,SAAS;YACX,CAAC;YACD,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3B,CAAC;QACD,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;IAEF,MAAM,yBAAyB,GAE3B,MAAM,CAAC,WAAW,CAAC;QACrB,GAAG,SAAS,CAAC,GAAG,CACd,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,iBAAiB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAU,CACvE;QACD,GAAG,OAAO,CAAC,GAAG,CACZ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAU,CACjE;KACF,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,MAAM,CAAC,WAAW,CACtC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CAChB,SAAS,CAAC,GAAG,CACX,MAAM,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC,QAAQ,CAAC,EAAE,QAAQ;QACjD,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,EAAE,GAAG,QAAQ,CAAC,SAAS,CAAC;QAC9B,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC;QACzB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,UAAU,GAAG,yBAAyB,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QAExD,kEAAkE;QAClE,mEAAmE;QACnE,MAAM,WAAW,GAAsB,cAAc,CACnD,KAAK,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAC/C,CAAC;QACF,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC;YACjC,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,KAAK;YACZ,GAAG;SACJ,CAAC,CAAC;QACH,6DAA6D;QAC7D,mEAAmE;QACnE,8CAA8C;QAC9C,IAAI,QAAQ,GAA8B,aAAa,CAAC,SAAS,CAAC;YAChE,CAAC,CAAC,SAAS;YACX,CAAC,CAAE,SAAuC,CAAC;QAE7C,8DAA8D;QAC9D,+DAA+D;QAC/D,iEAAiE;QACjE,EAAE;QACF,+BAA+B;QAC/B,6DAA6D;QAC7D,mEAAmE;QACnE,oDAAoD;QACpD,EAAE;QACF,WAAW;QACX,+DAA+D;QAC/D,+DAA+D;QAC/D,+DAA+D;QAC/D,iEAAiE;QACjE,kEAAkE;QAClE,oEAAoE;QACpE,8DAA8D;QAC9D,oEAAoE;QACpE,iDAAiD;QACjD,6DAA6D;QAC7D,yDAAyD;QACzD,0DAA0D;QAC1D,6DAA6D;QAC7D,uDAAuD;QACvD,6DAA6D;QAC7D,4DAA4D;QAC5D,0DAA0D;QAC1D,6DAA6D;QAC7D,wDAAwD;QACxD,EAAE;QACF,8DAA8D;QAC9D,8DAA8D;QAC9D,gEAAgE;QAChE,6DAA6D;QAC7D,sDAAsD;QACtD,8DAA8D;QAC9D,8BAA8B;QAC9B,IAAI,wBAAwB,GAAG,KAAK,CAAC;QACrC,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,IAAI,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAChE,MAAM,eAAe,GAAG,KAAK,CAAC,CAAC,kBAAkB,EAAE,CAAC;YACpD,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,QAAQ;iBAC/B,IAAI,CAAC;gBACJ,EAAE;gBACF,UAAU,EAAE,eAAe;gBAC3B,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,SAAS;aAClB,CAAC;iBACD,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC,CAAC;YAChD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC7B,MAAM,SAAS,GAAG,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;gBACzC,IAAI,SAAS,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC;oBACvC,OAAO,KAAK,CAAC,CAAC,IAAI,kBAAkB,CAAC;wBACnC,OAAO,EACL,0BAA0B,GAAG,MAAM,QAAQ,CAAC,IAAI,KAAK;4BACrD,kDAAkD;4BAClD,oDAAoD;4BACpD,oDAAoD;wBACtD,YAAY,EAAE,QAAQ,CAAC,IAAI;wBAC3B,SAAS,EAAE,EAAE;qBACd,CAAC,CAAC;gBACL,CAAC;gBACD,MAAM,YAAY,GAAG;oBACnB,MAAM,EAAE,SAAkB;oBAC1B,GAAG;oBACH,SAAS,EAAE,EAAE;oBACb,UAAU,EAAE,eAAe;oBAC3B,SAAS,EAAE,QAAQ,CAAC,SAAS;oBAC7B,YAAY,EAAE,QAAQ,CAAC,IAAI;oBAC3B,KAAK,EAAE,IAAI;oBACX,IAAI,EAAE,YAAY,CAAC,UAAU,CAAC;oBAC9B,eAAe,EAAE,QAAQ,CAAC,OAAO,IAAI,CAAC;oBACtC,QAAQ,EAAE,EAAE;oBACZ,UAAU;oBACV,aAAa,EAAE,QAAQ,CAAC,aAAa;iBACP,CAAC;gBACjC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC;oBACf,KAAK,EAAE,SAAS;oBAChB,KAAK,EAAE,KAAK;oBACZ,GAAG;oBACH,KAAK,EAAE,YAAY;iBACpB,CAAC,CAAC;gBACH,QAAQ,GAAG,YAAY,CAAC;gBACxB,wBAAwB,GAAG,IAAI,CAAC;YAClC,CAAC;QACH,CAAC;QAED,MAAM,WAAW,GAAG,QAAQ,EAAE,QAAQ,IAAI,EAAE,CAAC;QAC7C,MAAM,YAAY,GAAG,YAAY,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QAE5D,MAAM,IAAI,GAAG,CACX,IAGC,EACD,EAAE,CACF,CAAC;YACC,GAAG,IAAI;YACP,QAAQ;YACR,QAAQ;YACR,QAAQ,EAAE,YAAY;YACtB,UAAU;SACX,CAAa,CAAC;QAEjB,yEAAyE;QACzE,kEAAkE;QAClE,oDAAoD;QACpD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAS;gBAClB,MAAM,EAAE,QAAQ;gBAChB,KAAK,EAAE,IAAI;gBACX,KAAK,EAAE,QAAQ;aAChB,CAAC,CAAC;QACL,CAAC;aAAM,IACL,QAAQ,CAAC,MAAM,KAAK,UAAU;YAC9B,QAAQ,CAAC,IAAI,KAAK,SAAS,EAC3B,CAAC;YACD,sEAAsE;YACtE,oEAAoE;YACpE,2CAA2C;YAC3C,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;gBAClB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,QAAQ;qBACzB,IAAI,CAAC;oBACJ,EAAE;oBACF,UAAU,EAAE,QAAQ,CAAC,UAAU;oBAC/B,IAAI,EAAE,QAAQ,CAAC,KAAK;oBACpB,MAAM,EAAE,QAAQ,CAAC,IAAI;iBACtB,CAAC;qBACD,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;gBACpD,IAAI,IAAI,EAAE,CAAC;oBACT,OAAO,IAAI,CAAS;wBAClB,MAAM,EAAE,QAAQ;wBAChB,KAAK,EAAE,IAAI;wBACX,KAAK,EAAE,EAAE,GAAG,QAAQ,EAAE,IAAI,EAAE;qBAC7B,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;QAED,wEAAwE;QACxE,uEAAuE;QACvE,gDAAgD;QAChD,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC;QAEhC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,QAAQ,CAC1B,QAAQ;YACN,EAAE,IAAI,EAAE,CAAC;YACP,EAAE;YACF,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,MAAM,EAAE,QAAQ,CAAC,IAAI;YACrB,IAAI;YACJ,WAAW;YACX,WAAW;SACZ,CAAC;aACD,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CACpD,CAAC,IAAI,CACJ,MAAM,CAAC,GAAG,CACR,CAAC,IAAI,EAAE,EAAE,CACP,IAAI;YACH;gBACC,MAAM,EACJ,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC;oBAChC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC;oBAC3C,CAAC,CAAC,QAAQ;oBACV,CAAC,CAAC,MAAM;aACa,CAC9B,EACD,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAClB,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM;YACrC,CAAC,CAAE;gBACC,MAAM,EAAE,QAAQ;aACK;YACzB,CAAC,CAAC,IAAI,CACT;QACD,6DAA6D;QAC7D,4DAA4D;QAC5D,yDAAyD;QACzD,sDAAsD;QACtD,6DAA6D;QAC7D,6BAA6B;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAClB,wBAAwB,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM;YAChD,CAAC,CAAE,EAAE,MAAM,EAAE,QAAQ,EAAwB;YAC7C,CAAC,CAAC,IAAI,CACT,CACF,CAAC;QAEF,IAAI,QAAQ,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YACnC,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBAC3B,uDAAuD;gBACvD,wCAAwC;gBACxC,OAAO,IAAI,CAAS;oBAClB,MAAM,EAAE,QAAQ;oBAChB,KAAK,EAAE,IAAI;oBACX,KAAK,EAAE,QAAQ;iBAChB,CAAC,CAAC;YACL,CAAC;iBAAM,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACpC,gDAAgD;gBAChD,uCAAuC;gBACvC,oDAAoD;gBACpD,OAAO,IAAI,CAAS;oBAClB,MAAM,EAAE,QAAQ;oBAChB,KAAK,EAAE,IAAI;oBACX,KAAK,EAAE,QAAQ;iBAChB,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,4CAA4C;gBAC5C,+EAA+E;gBAC/E,kFAAkF;gBAClF,OAAO,IAAI,CAAU;oBACnB,MAAM,EAAE,SAAS;oBACjB,KAAK,EAAE,IAAI;oBACX,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,KAAK;oBACtC,KAAK,EAAE,QAAQ;iBAChB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YAC1C,uEAAuE;YACvE,oEAAoE;YACpE,4BAA4B;YAC5B,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBACvD,oCAAoC;gBACpC,OAAO,IAAI,CAAS;oBAClB,MAAM,EAAE,QAAQ;oBAChB,KAAK,EAAE,IAAI;oBACX,KAAK,EAAE,QAAQ;iBAChB,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,uEAAuE;gBACvE,OAAO,IAAI,CAAU;oBACnB,MAAM,EAAE,SAAS;oBACjB,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,KAAK;oBACtC,KAAK,EAAE,IAAI;oBACX,uFAAuF;oBACvF,wFAAwF;oBACxF,KAAK,EAAE,QAAQ;iBAChB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAC3C,qEAAqE;YACrE,sEAAsE;YACtE,8DAA8D;YAC9D,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBAC3B,0EAA0E;gBAC1E,OAAO,IAAI,CAAU;oBACnB,MAAM,EAAE,SAAS;oBACjB,WAAW,EAAE,QAAQ,CAAC,WAAW;oBACjC,KAAK,EAAE,IAAI;oBACX,KAAK,EAAE,QAAQ;iBAChB,CAAC,CAAC;YACL,CAAC;iBAAM,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACpC,6EAA6E;gBAC7E,8EAA8E;gBAC9E,0FAA0F;gBAC1F,iEAAiE;gBACjE,OAAO,IAAI,CAAU;oBACnB,MAAM,EAAE,SAAS;oBACjB,WAAW,EAAE,QAAQ,CAAC,WAAW;oBACjC,KAAK,EAAE,IAAI;oBACX,KAAK,EAAE,QAAQ;iBAChB,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,oEAAoE;gBACpE,qEAAqE;gBACrE,4CAA4C;gBAC5C,OAAO,IAAI,CAAU;oBACnB,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,SAAS;oBACjB,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,QAAQ,CAAC,WAAW;oBACrD,KAAK,EAAE,IAAI;oBACX,KAAK,EAAE,QAAQ;iBAChB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YAC1C,oEAAoE;YACpE,oEAAoE;YACpE,oEAAoE;YACpE,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBAC3B,iFAAiF;gBACjF,OAAO,IAAI,CAAU;oBACnB,MAAM,EAAE,SAAS;oBACjB,WAAW,EAAE,QAAQ,CAAC,WAAW;oBACjC,KAAK,EAAE,IAAI;oBACX,KAAK,EAAE,QAAQ;iBAChB,CAAC,CAAC;YACL,CAAC;iBAAM,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACpC,oEAAoE;gBACpE,gCAAgC;gBAChC,mDAAmD;gBACnD,2GAA2G;gBAC3G,OAAO,IAAI,CAAS;oBAClB,MAAM,EAAE,QAAQ;oBAChB,KAAK,EAAE,IAAI;oBACX,KAAK,EAAE,QAAQ;iBAChB,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,uEAAuE;gBACvE,qEAAqE;gBACrE,iEAAiE;gBACjE,OAAO,IAAI,CAAU;oBACnB,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,SAAS;oBACjB,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,QAAQ,CAAC,WAAW;oBACrD,KAAK,EAAE,IAAI;oBACX,KAAK,EAAE,QAAQ;iBAChB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YAC1C,sFAAsF;YACtF,2EAA2E;YAC3E,OAAO,IAAI,CAAS;gBAClB,MAAM,EAAE,QAAQ;gBAChB,KAAK,EAAE,IAAI;gBACX,KAAK,EAAE;oBACL,GAAG,QAAQ;oBACX,MAAM,EAAE,UAAU;oBAClB,KAAK,EAAE,IAAI;iBACZ;aACF,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACpC,mEAAmE;YACnE,OAAO,IAAI,CAAS;gBAClB,MAAM,EAAE,QAAQ;gBAChB,KAAK,EAAE,IAAI;gBACX,KAAK,EAAE,QAAQ;aAChB,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACrC,OAAO,IAAI,CAAU;gBACnB,MAAM,EAAE,SAAS;gBACjB,KAAK,EAAE,IAAI;gBACX,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,IAAI,EAAE,WAAW,IAAI,KAAK;aACxC,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,CAAa;gBACtB,MAAM,EAAE,MAAM;gBACd,KAAK,EAAE,QAAQ;aAChB,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CACH,EACD,EAAE,WAAW,EAAE,WAAW,EAAE,CAC7B,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAC7B,CAAC;IAEvB,wEAAwE;IACxE,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CACpC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CAChB,OAAO,CAAC,GAAG,CACT,MAAM,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,EAAE,MAAM;QAC7C,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;QACvB,MAAM,UAAU,GAAG,yBAAyB,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QACxD,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACxD,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC;YAChC,KAAK,EAAE,SAAS;YAChB,KAAK;YACL,GAAG;SACJ,CAAC,CAAC;QAEH,IAAI,QAAQ,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC;YACzC,8DAA8D;YAC9D,iDAAiD;YACjD,OAAO;gBACL,GAAG;gBACH;oBACE,IAAI,EAAE,QAAQ;oBACd,MAAM,EAAE,KAAK;oBACb,GAAG,EAAE,MAAM;oBACX,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,KAAK,EAAE,SAAS;oBAChB,UAAU;oBACV,MAAM,EAAE,KAAK;iBACM;aACb,CAAC;QACb,CAAC;QAED,MAAM,KAAK,GAAG,QAAmC,CAAC;QAClD,MAAM,SAAS,GACb,KAAK,EAAE,MAAM,KAAK,KAAK,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC;QAC3D,IAAI,SAAS,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YAChC,OAAO;gBACL,GAAG;gBACH;oBACE,IAAI,EAAE,QAAQ;oBACd,MAAM,EAAE,MAAM;oBACd,GAAG,EAAE,MAAM;oBACX,KAAK,EAAE,KAAuB;oBAC9B,UAAU;iBACU;aACd,CAAC;QACb,CAAC;QACD,OAAO;YACL,GAAG;YACH;gBACE,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,KAAK;gBACb,GAAG,EAAE,MAAM;gBACX,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,KAAK,EAAE,KAAK;gBACZ,UAAU;gBACV,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK;aACJ;SACb,CAAC;IACb,CAAC,CAAC,CACH,EACD,EAAE,WAAW,EAAE,WAAW,EAAE,CAC7B,CAAkD,CACjC,CAAC;IAErB,kEAAkE;IAClE,qEAAqE;IACrE,kEAAkE;IAClE,qEAAqE;IACrE,MAAM,YAAY,GAAG,oBAAoB,CAAC;IAE1C,qEAAqE;IACrE,uEAAuE;IACvE,kEAAkE;IAClE,oEAAoE;IACpE,8DAA8D;IAC9D,sEAAsE;IACtE,wBAAwB;IACxB,CAAC;QACC,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAChC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC;aAC1B,MAAM,CACL,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,CACZ,IAAI,CAAC,MAAM,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,CACxD;aACA,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CACvB,CAAC;QAEF,IAAI,kBAAkB,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAChC,MAAM,YAAY,GAAG,IAAI,GAAG,CAC1B,CAAC,GAAG,kBAAkB,CAAC,CAAC,MAAM,CAC5B,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,SAAS,CACnD,CACF,CAAC;YAEF,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;YACvC,IAAI,OAAO,GAAG,IAAI,CAAC;YACnB,OAAO,OAAO,EAAE,CAAC;gBACf,OAAO,GAAG,KAAK,CAAC;gBAChB,KAAK,MAAM,GAAG,IAAI,kBAAkB,EAAE,CAAC;oBACrC,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC;wBAAE,SAAS;oBAChC,MAAM,IAAI,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAC/D,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,CAC5B,CAAC;oBACF,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;wBAC3C,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;wBAClB,OAAO,GAAG,IAAI,CAAC;oBACjB,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,UAAU,GAAG,CAAC,GAAG,kBAAkB,CAAC,CAAC,MAAM,CAC/C,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAC5B,CAAC;YACF,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1B,MAAM,gBAAgB,GAAG,UAAU,CAAC,MAAM,CACxC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAChC,CAAC;gBACF,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CACtB,IAAI,wBAAwB,CAAC;oBAC3B,OAAO,EACL,0DAA0D,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;wBACpF,2CAA2C,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;wBAC3E,wFAAwF;oBAC1F,KAAK,EAAE,UAAU;oBACjB,gBAAgB;iBACjB,CAAC,CACH,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,iEAAiE;IACjE,qEAAqE;IACrE,WAAW;IACX,MAAM,eAAe,GAA4B,MAAM,CAAC,WAAW,CACjE,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CAChB,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAClD,MAAM,CAAC,EAAE,CAAC,0BAA0B,CAAC,CAAC,QAAQ,CAAC,EAAE,GAAG;QAClD,IAAI,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO;QAC/D,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC;YACjC,KAAK,EAAE,SAAS;YAChB,KAAK;YACL,GAAG;SACJ,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC;YAAE,OAAO;QACtC,MAAM,EAAE,SAAS,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;QACpC,OAAO;YACL,GAAG;YACH;gBACE,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,QAAQ;gBAChB,KAAK,EAAE,SAAS;gBAChB,UAAU,EAAE,SAAS,CAAC,UAAU,IAAI,EAAE;gBACtC,GAAG,EAAE;oBACH,IAAI,EAAE,QAAQ;oBACd,SAAS,EAAE,SAAS,CAAC,SAAS;oBAC9B,GAAG,EAAE,GAAG;oBACR,SAAS,EAAE,SAAS;oBACpB,IAAI,EAAE,SAAS,CAAC,UAAU;oBAC1B,KAAK,EAAE,SAAS,CAAC,KAAK;oBACtB,GAAG,EAAE,GAAG,EAAE,CAAC,SAAgB;oBAC3B,MAAM,EAAE,SAAgB;iBACJ;aACA;SAChB,CAAC;IACb,CAAC,CAAC,CACH,EACD,EAAE,WAAW,EAAE,WAAW,EAAE,CAC7B,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAA8B,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAClD,CAAC;IAEF,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAClC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CAChB,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CACzD,MAAM,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC,QAAQ,CAAC,EAAE,GAAG;QAC5C,IAAI,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACvD,OAAO;QACT,CAAC;QACD,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC;YACjC,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,KAAK;YACZ,GAAG;SACJ,CAAC,CAAC;QACH,oDAAoD;QACpD,IAAI,aAAa,CAAC,SAAS,CAAC;YAAE,OAAO;QACrC,MAAM,QAAQ,GAAG,SAAsC,CAAC;QACxD,IAAI,IAAI,GAAQ,QAAQ,EAAE,IAAI,CAAC;QAC/B,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,EAAE,SAAS,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;YACpC,MAAM,YAAY,GAAG,QAAQ,CAAC,YAAY,CAAC;YAC3C,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;YACzD,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAChC,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;oBAClB,IAAI,GAAG,KAAK,CAAC,CAAC,QAAQ;yBACnB,IAAI,CAAC;wBACJ,EAAE,EAAE,SAAS;wBACb,UAAU,EAAE,QAAQ,CAAC,UAAU;wBAC/B,IAAI,EAAE,QAAQ,CAAC,KAAc;wBAC7B,MAAM,EAAE,QAAQ,CAAC,IAAa;qBAC/B,CAAC;yBACD,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;gBACtD,CAAC;YACH,CAAC;YACD,OAAO;gBACL,GAAG;gBACH;oBACE,MAAM,EAAE,QAAQ;oBAChB,KAAK,EAAE,EAAE,GAAG,QAAQ,EAAE,IAAI,EAAE;oBAC5B,QAAQ,EAAE,QAAQ;oBAClB,QAAQ,EAAE;wBACR,SAAS,EAAE,QAAQ,CAAC,SAAS;wBAC7B,GAAG,EAAE,GAAG;wBACR,SAAS,EAAE,SAAS;wBACpB,IAAI,EAAE,QAAQ,CAAC,YAAY;wBAC3B,UAAU,EAAE,IAAI;wBAChB,KAAK,EAAE,QAAQ,CAAC,KAAK;wBACrB,OAAO,EAAE,SAAU;wBACnB,QAAQ,EAAE,QAAQ,CAAC,YAAY,CAAC;wBAChC,aAAa,EAAE,QAAQ,CAAC,aAAa;wBACrC,cAAc,EAAE,SAAU;wBAC1B,SAAS,EAAE,SAAS;qBACL;oBACjB,UAAU,EAAE,yBAAyB,CAAC,GAAG,CAAC,IAAI,EAAE;oBAChD,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;wBAC5C,GAAG,EAAE,OAAO,CAAC,GAAG;wBAChB,MAAM,EAAE,QAAiB;wBACzB,IAAI,EAAE,OAAO,CAAC,IAAI;qBACnB,CAAC,CAAC;iBACa;aACV,CAAC;QACb,CAAC;IACH,CAAC,CAAC,CACH,EACD,EAAE,WAAW,EAAE,WAAW,EAAE,CAC7B,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CACtB,CAAC;IAEF,KAAK,MAAM,WAAW,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QACjD,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,uBAAuB,CAAC;aACzD,MAAM,CACL,CAAC,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE,EAAE,CAC1B,WAAW,IAAI,aAAa,IAAI,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,CACjE;aACA,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC;QACvC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC,CAAC,IAAI,uCAAuC,CAAC;gBACxD,OAAO,EAAE,YAAY,WAAW,8BAA8B;gBAC9D,UAAU,EAAE,WAAW;gBACvB,YAAY;aACb,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO;QACL,SAAS,EAAE,aAAa;QACxB,OAAO,EAAE,WAAW;QACpB,SAAS;QACT,eAAe;QACf,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,YAAY;KACgB,CAAC;AACjC,CAAC,CAAC,CAAC,IAAI,CACL,mBAAmB,EACnB,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE;IAC3B,UAAU,EAAE;QACV,eAAe,EAAE,KAAK,CAAC,IAAI;QAC3B,eAAe,EAAE,KAAK,CAAC,KAAK;QAC5B,yBAAyB,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,MAAM;QAC9D,eAAe,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK;KACjC;CACF,CAAC,CACH,CAAC;AAEJ,MAAM,gBAAgB,GACpB,CAAC,GAAW,EAAE,UAAkB,EAAE,EAAE,CACpC,CACE,MAA8B,EAC2B,EAAE,CAC3D,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,IAAI,CACtC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC,EACjD,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CACvB,MAAM,CAAC,IAAI,CACT,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,mBAAmB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,EACjE,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,UAAU,CAAC,CAC9C,CACF,CACyD,CAAC;AAEjE,MAAM,OAAO,uCAAwC,SAAQ,IAAI,CAAC,WAAW,CAC3E,yCAAyC,CAKzC;CAAG;AAEL,MAAM,OAAO,wBAAyB,SAAQ,IAAI,CAAC,WAAW,CAC5D,0BAA0B,CAK1B;CAAG;AAEL,2BAA2B;AAC3B,yCAAyC;AAEzC;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,IAAU,EAAU,EAAE;IAC9C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,QAAQ,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;IAE1D,gDAAgD;IAChD,MAAM,WAAW,GAA6B,EAAE,CAAC;IACjD,KAAK,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5C,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;IACvB,CAAC;IACD,KAAK,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAClD,IAAI,CAAC,IAAI;YAAE,SAAS;QACpB,KAAK,MAAM,YAAY,IAAI,IAAI,CAAC,KAAK,EAAE,UAAU,IAAI,EAAE,EAAE,CAAC;YACxD,IAAI,WAAW,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC9B,WAAW,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACrC,CAAC;QACH,CAAC;IACH,CAAC;IAED,iBAAiB;IACjB,MAAM,YAAY,GAAG,CAAC,MAAc,EAAE,EAAE;QACtC,QAAQ,MAAM,EAAE,CAAC;YACf,KAAK,QAAQ;gBACX,OAAO,GAAG,CAAC;YACb,KAAK,QAAQ;gBACX,OAAO,GAAG,CAAC;YACb,KAAK,QAAQ;gBACX,OAAO,GAAG,CAAC;YACb,KAAK,SAAS;gBACZ,OAAO,GAAG,CAAC;YACb,KAAK,MAAM;gBACT,OAAO,GAAG,CAAC;YACb;gBACE,OAAO,GAAG,CAAC;QACf,CAAC;IACH,CAAC,CAAC;IAEF,eAAe;IACf,KAAK,CAAC,IAAI,CACR,oEAAoE,CACrE,CAAC;IACF,KAAK,CAAC,IAAI,CACR,oEAAoE,CACrE,CAAC;IACF,KAAK,CAAC,IAAI,CACR,oEAAoE,CACrE,CAAC;IACF,KAAK,CAAC,IAAI,CACR,oEAAoE,CACrE,CAAC;IACF,KAAK,CAAC,IAAI,CACR,oEAAoE,CACrE,CAAC;IACF,KAAK,CAAC,IAAI,CACR,oEAAoE,CACrE,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,0BAA0B;IAC1B,KAAK,CAAC,IAAI,CACR,oEAAoE,CACrE,CAAC;IACF,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC;IACvD,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;QAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAChC,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,SAAS,CAAC;QAC9C,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM;YAC/C,CAAC,CAAC,OAAO,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;YAC7C,CAAC,CAAC,EAAE,CAAC;QACP,KAAK,CAAC,IAAI,CAAC,MAAM,MAAM,KAAK,EAAE,KAAK,IAAI,IAAI,UAAU,EAAE,CAAC,CAAC;IAC3D,CAAC;IACD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACzB,CAAC;IACD,KAAK,CAAC,IAAI,CACR,oEAAoE,CACrE,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,sBAAsB;IACtB,KAAK,CAAC,IAAI,CACR,oEAAoE,CACrE,CAAC;IACF,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACvD,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QACjD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;QAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM;YACvC,CAAC,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;YACtC,CAAC,CAAC,EAAE,CAAC;QACP,KAAK,CAAC,IAAI,CAAC,MAAM,MAAM,KAAK,EAAE,KAAK,IAAI,IAAI,UAAU,EAAE,CAAC,CAAC;IAC3D,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACzB,CAAC;IACD,KAAK,CAAC,IAAI,CACR,oEAAoE,CACrE,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,0BAA0B;IAC1B,KAAK,CAAC,IAAI,CACR,oEAAoE,CACrE,CAAC;IACF,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC;IACvD,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;QAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAE,CAAC;QACjC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,SAAS,CAAC;QAC9C,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,MAAM;YAC9C,CAAC,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;YAC5C,CAAC,CAAC,EAAE,CAAC;QACP,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,IAAI,IAAI,UAAU,EAAE,CAAC,CAAC;IACnD,CAAC;IACD,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACvE,KAAK,MAAM,EAAE,IAAI,eAAe,EAAE,CAAC;QACjC,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,EAAE,CAAE,CAAC;QACvC,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7D,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACzB,CAAC;IACD,KAAK,CAAC,IAAI,CACR,oEAAoE,CACrE,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC,CAAC"}
package/lib/Platform.d.ts CHANGED
@@ -1,8 +1,10 @@
1
+ import * as ConfigError from "effect/Config";
1
2
  import * as Effect from "effect/Effect";
2
3
  import * as Layer from "effect/Layer";
3
4
  import type { Scope } from "effect/Scope";
4
5
  import type { HttpClient } from "effect/unstable/http/HttpClient";
5
6
  import type { PolicyLike } from "./Binding.ts";
7
+ import type { Dependencies } from "./Dependencies.ts";
6
8
  import type { ExecutionContext } from "./ExecutionContext.ts";
7
9
  import type { HttpEffect } from "./Http.ts";
8
10
  import type { InputProps } from "./Input.ts";
@@ -26,23 +28,23 @@ export type PlatformServices = RuntimeContext | ExecutionContext | HttpClient |
26
28
  export interface Platform<Resource extends ResourceLike<string, PlatformProps>, Services, MainShape, RuntimeContext extends BaseRuntimeContext, BaseShape = {}> extends Effect.Effect<Resource & RuntimeContext, never, Services | PlatformServices> {
27
29
  Type: Resource["Type"];
28
30
  Provider: Provider<Resource>;
29
- <Self, Shape>(): {
30
- <PropsReq = never>(id: string, props: InputProps<Resource["Props"]> | Effect.Effect<InputProps<Resource["Props"]>, never, PropsReq>): Effect.Effect<Resource & Rpc<Self>, never, Self | Resource["Providers"] | PropsReq> & {
31
- make<InitReq = never>(impl: Effect.Effect<Shape, never, InitReq>): Layer.Layer<Self, never, Resource["Providers"] | Exclude<PropsReq | InitReq, Services | PlatformServices>>;
31
+ <Self, Shape, Deps = never>(): {
32
+ <PropsReq = never>(id: string, props: InputProps<Resource["Props"]> | Effect.Effect<InputProps<Resource["Props"]>, never, PropsReq>): Effect.Effect<Resource & Rpc<Self> & Dependencies<Deps>, never, Resource["Providers"] | PropsReq> & {
33
+ make<InitReq = never>(impl: Effect.Effect<Shape, ConfigError.ConfigError, InitReq>): Layer.Layer<Self, never, Resource["Providers"] | Exclude<PropsReq | InitReq, Services | PlatformServices>>;
32
34
  new (_: never): MakeShape<Shape, BaseShape>;
33
35
  of(shape: Shape & MainShape): MakeShape<Shape, BaseShape>;
34
36
  };
35
37
  };
36
38
  <Self>(): {
37
- <Shape extends MainShape, PropsReq = never, InitReq extends Services | PlatformServices = never>(id: string, props: InputProps<Resource["Props"]> | Effect.Effect<Resource["Props"], never, PropsReq>, impl: Effect.Effect<Shape, never, InitReq>): Effect.Effect<Resource & Rpc<Self>, never, Resource["Providers"] | PropsReq | Exclude<InitReq, Services | PlatformServices>> & {
39
+ <Shape extends MainShape, PropsReq = never, InitReq extends Services | PlatformServices = never>(id: string, props: InputProps<Resource["Props"]> | Effect.Effect<Resource["Props"], never, PropsReq>, impl: Effect.Effect<Shape, ConfigError.ConfigError, InitReq>): Effect.Effect<Resource & Rpc<Self>, never, Resource["Providers"] | PropsReq | Exclude<InitReq, Services | PlatformServices>> & {
38
40
  new (_: never): MakeShape<Shape, BaseShape>;
39
41
  };
40
42
  <Shape, PropsReq = never>(id: string, props: InputProps<Resource["Props"]> | Effect.Effect<InputProps<Resource["Props"]>, never, PropsReq>): Effect.Effect<Resource & Rpc<Self>, never, Resource["Providers"] | PropsReq> & {
41
- make<InitReq extends Services | PlatformServices = never>(impl: Effect.Effect<Shape, never, InitReq>): Layer.Layer<Self, never, Resource["Providers"] | Exclude<PropsReq | InitReq, Services | PlatformServices>>;
43
+ make<InitReq extends Services | PlatformServices = never>(impl: Effect.Effect<Shape, ConfigError.ConfigError, InitReq>): Layer.Layer<Self, never, Resource["Providers"] | Exclude<PropsReq | InitReq, Services | PlatformServices>>;
42
44
  new (_: never): MakeShape<Shape, BaseShape>;
43
45
  } & (<InitReq extends Services | PlatformServices = never>(impl: Effect.Effect<Shape, never, InitReq>) => Effect.Effect<Resource & Rpc<Self>, never, Resource["Providers"] | PropsReq | Exclude<InitReq, Services | PlatformServices>>);
44
46
  };
45
- <Shape extends MainShape, PropsReq = never, InitReq extends Services | PlatformServices = never>(id: string, props: InputProps<Resource["Props"]> | Effect.Effect<InputProps<Resource["Props"]>, never, PropsReq>, impl: Effect.Effect<Shape, never, InitReq>): Effect.Effect<Resource & Rpc<Shape>, never, Resource["Providers"] | PropsReq | Exclude<InitReq, Services | PlatformServices>>;
47
+ <Shape extends MainShape, PropsReq = never, InitReq extends Services | PlatformServices = never>(id: string, props: InputProps<Resource["Props"]> | Effect.Effect<InputProps<Resource["Props"]>, never, PropsReq>, impl: Effect.Effect<Shape, ConfigError.ConfigError, InitReq>): Effect.Effect<Resource & Rpc<Shape>, never, Resource["Providers"] | PropsReq | Exclude<InitReq, Services | PlatformServices>>;
46
48
  }
47
49
  type MakeShape<Shape, BaseShape> = Shape extends never | undefined | void ? BaseShape : Shape & BaseShape;
48
50
  export declare const Platform: <R extends ResourceLike<string, {
@@ -1 +1 @@
1
- {"version":3,"file":"Platform.d.ts","sourceRoot":"","sources":["../src/Platform.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Platform.d.ts","sourceRoot":"","sources":["../src/Platform.ts"],"names":[],"mappings":"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"}
package/lib/Platform.js CHANGED
@@ -1,12 +1,15 @@
1
+ import * as ConfigError from "effect/Config";
2
+ import * as ConfigProvider from "effect/ConfigProvider";
1
3
  import * as Context from "effect/Context";
2
4
  import * as Effect from "effect/Effect";
3
5
  import { pipe } from "effect/Function";
4
6
  import * as Layer from "effect/Layer";
5
7
  import * as Option from "effect/Option";
6
8
  import { SingleShotGen } from "effect/Utils";
9
+ import * as Output from "./Output.js";
7
10
  import { ALCHEMY_PHASE } from "./Phase.js";
8
11
  import { Resource } from "./Resource.js";
9
- import { RuntimeContext } from "./RuntimeContext.js";
12
+ import { CurrentRuntimeContext, RuntimeContext, sanitizeKey, } from "./RuntimeContext.js";
10
13
  import { Self } from "./Self.js";
11
14
  import { effectClass } from "./Util/effect.js";
12
15
  export const Platform = (type, hooks, methods) => {
@@ -112,11 +115,38 @@ export const Platform = (type, hooks, methods) => {
112
115
  (runtimeContext.serve?.(impl.fetch, {
113
116
  shape: impl,
114
117
  }) ?? Effect.die("No serve handler"))
115
- : Effect.void), Effect.provide(Layer.provideMerge(Layer.mergeAll(Layer.succeed(Platform.Platform, runtimeContext), Layer.succeed(PlatformContext, runtimeContext), Layer.succeed(RuntimeContext, runtimeContext), Layer.succeed(resource.Self, instance), Layer.succeed(Platform.Self, instance), Layer.succeed(Self, instance), runtimeContext.planServices
118
+ : Effect.void), Effect.provide(Layer.effect(ConfigProvider.ConfigProvider, Effect.gen(function* () {
119
+ // a Config Provider that we use to intercept config lookups and bind them to the RuntimeContext
120
+ const configProvider = yield* ConfigProvider.ConfigProvider;
121
+ const phase = yield* ALCHEMY_PHASE;
122
+ return ConfigProvider.make(Effect.fnUntraced(function* (path) {
123
+ const ctx = yield* CurrentRuntimeContext;
124
+ // `set`/`get` store keys verbatim, so canonicalize the
125
+ // logical config path here (the caller's job) before
126
+ // handing it to the RuntimeContext.
127
+ const key = sanitizeKey(path.map((p) => p.toString()).join("_"));
128
+ const node = yield* configProvider.get(path);
129
+ if (phase === "plan" && node) {
130
+ // bind it to the RuntimeContext if running in plan phase
131
+ const output = Output.literal(node.value);
132
+ yield* ctx?.set(key, output) ?? Effect.void;
133
+ return node;
134
+ }
135
+ else if (phase === "runtime" && ctx) {
136
+ // retrieve from the RuntimeContext if running in runtime phase
137
+ const value = yield* ctx.get(key);
138
+ if (value) {
139
+ return ConfigProvider.makeValue(value);
140
+ }
141
+ }
142
+ // fallback to the config provider otherwise
143
+ return node;
144
+ }));
145
+ })).pipe(Layer.provideMerge(Layer.mergeAll(Layer.succeed(Platform.Platform, runtimeContext), Layer.succeed(PlatformContext, runtimeContext), Layer.succeed(RuntimeContext, runtimeContext), Layer.succeed(resource.Self, instance), Layer.succeed(Platform.Self, instance), Layer.succeed(Self, instance), runtimeContext.planServices
116
146
  ? Layer.unwrap(ALCHEMY_PHASE.pipe(Effect.map((phase) => phase === "plan"
117
147
  ? runtimeContext.planServices
118
148
  : Layer.empty)))
119
- : Layer.empty), Layer.succeedContext(outerServices))));
149
+ : Layer.empty)), Layer.provideMerge(Layer.succeedContext(outerServices)))));
120
150
  instance.Props = {
121
151
  ...props,
122
152
  env: {
@@ -1 +1 @@
1
- {"version":3,"file":"Platform.js","sourceRoot":"","sources":["../src/Platform.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Platform.js","sourceRoot":"","sources":["../src/Platform.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Random.d.ts","sourceRoot":"","sources":["../src/Random.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,MAAM,GAAG,QAAQ,CAC3B,gBAAgB,EAChB,WAAW,EACX;IACE,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;CACjC,CACF,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,IAAI,MAAM,EAAE,QAAQ,WAAW,oHACD,CAAC;AAE1D;;;;;GAKG;AACH,eAAO,MAAM,MAAM,+CAAqC,CAAC;AAEzD,eAAO,MAAM,cAAc,6EAgCvB,CAAC"}
1
+ {"version":3,"file":"Random.d.ts","sourceRoot":"","sources":["../src/Random.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,MAAM,GAAG,QAAQ,CAC3B,gBAAgB,EAChB,WAAW,EACX;IACE,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;CACjC,CACF,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,IAAI,MAAM,EAAE,QAAQ,WAAW,oHACD,CAAC;AAE1D;;;;;GAKG;AACH,eAAO,MAAM,MAAM,+CAAqC,CAAC;AAEzD,eAAO,MAAM,cAAc,6EA2BvB,CAAC"}
package/lib/Random.js CHANGED
@@ -11,7 +11,7 @@ export const makeRandom = (id, props) => Random(id, props).pipe(Effect.map((rand
11
11
  */
12
12
  export const Random = Resource("Alchemy.Random");
13
13
  export const RandomProvider = () => Provider.succeed(Random, {
14
- reconcile: Effect.fn(function* ({ news = {}, output }) {
14
+ reconcile: ({ news = {}, output }) => Effect.sync(() => {
15
15
  // Observe — there is no remote state. The cached `output.text` is
16
16
  // the authoritative current value; once minted it is preserved
17
17
  // across reconciles to keep the secret stable.
@@ -22,20 +22,15 @@ export const RandomProvider = () => Provider.succeed(Random, {
22
22
  // return it. The next reconcile will see this in `output` and
23
23
  // short-circuit above.
24
24
  const byteLength = news.bytes ?? 32;
25
- const text = yield* Effect.sync(() => {
26
- const bytes = new Uint8Array(byteLength);
27
- crypto.getRandomValues(bytes);
28
- return Redacted.make(Array.from(bytes)
25
+ const bytes = new Uint8Array(byteLength);
26
+ crypto.getRandomValues(bytes);
27
+ return {
28
+ text: Redacted.make(Array.from(bytes)
29
29
  .map((b) => b.toString(16).padStart(2, "0"))
30
- .join(""));
31
- });
32
- return { text };
33
- }),
34
- delete: Effect.fn(function* () {
35
- return undefined;
36
- }),
37
- read: Effect.fn(function* ({ output }) {
38
- return output;
30
+ .join("")),
31
+ };
39
32
  }),
33
+ delete: () => Effect.void,
34
+ read: ({ output }) => Effect.succeed(output),
40
35
  });
41
36
  //# sourceMappingURL=Random.js.map
package/lib/Random.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Random.js","sourceRoot":"","sources":["../src/Random.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAkBzC,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,EAAU,EAAE,KAAmB,EAAE,EAAE,CAC5D,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAE1D;;;;;GAKG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,QAAQ,CAAS,gBAAgB,CAAC,CAAC;AAEzD,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE,CACjC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE;IACvB,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,GAAG,EAAE,EAAE,MAAM,EAAE;QACnD,kEAAkE;QAClE,+DAA+D;QAC/D,+CAA+C;QAC/C,IAAI,MAAM,EAAE,IAAI,EAAE,CAAC;YACjB,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,6DAA6D;QAC7D,8DAA8D;QAC9D,uBAAuB;QACvB,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;YACnC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,UAAU,CAAC,CAAC;YACzC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;YAC9B,OAAO,QAAQ,CAAC,IAAI,CAClB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;iBACd,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;iBAC3C,IAAI,CAAC,EAAE,CAAC,CACZ,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,OAAO,EAAE,IAAI,EAAE,CAAC;IAClB,CAAC,CAAC;IACF,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC;QACzB,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC;IACF,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE;QACnC,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;CACH,CAAC,CAAC"}
1
+ {"version":3,"file":"Random.js","sourceRoot":"","sources":["../src/Random.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAkBzC,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,EAAU,EAAE,KAAmB,EAAE,EAAE,CAC5D,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAE1D;;;;;GAKG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,QAAQ,CAAS,gBAAgB,CAAC,CAAC;AAEzD,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,EAAE,CACjC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE;IACvB,SAAS,EAAE,CAAC,EAAE,IAAI,GAAG,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CACnC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;QACf,kEAAkE;QAClE,+DAA+D;QAC/D,+CAA+C;QAC/C,IAAI,MAAM,EAAE,IAAI,EAAE,CAAC;YACjB,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,6DAA6D;QAC7D,8DAA8D;QAC9D,uBAAuB;QACvB,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;QACpC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,UAAU,CAAC,CAAC;QACzC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAC9B,OAAO;YACL,IAAI,EAAE,QAAQ,CAAC,IAAI,CACjB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;iBACd,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;iBAC3C,IAAI,CAAC,EAAE,CAAC,CACZ;SACF,CAAC;IACJ,CAAC,CAAC;IACJ,MAAM,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI;IACzB,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;CAC7C,CAAC,CAAC"}
@@ -7,7 +7,15 @@ export interface BaseRuntimeContext {
7
7
  Type: string;
8
8
  id: string;
9
9
  env: Record<string, any>;
10
- get<T>(key: string): Effect.Effect<T>;
10
+ /**
11
+ * Read a value by its (already-canonical) key. The key is used verbatim;
12
+ * callers must {@link sanitizeKey} first. See {@link sanitizeKey}.
13
+ */
14
+ get<T>(key: string): Effect.Effect<T | undefined>;
15
+ /**
16
+ * Store an output under the given (already-canonical) key, returning the key.
17
+ * The key is used verbatim; callers must {@link sanitizeKey} first.
18
+ */
11
19
  set(id: string, output: Output): Effect.Effect<string>;
12
20
  exports?: Effect.Effect<Record<string, any>>;
13
21
  serve?<Req = never>(handler: HttpEffect<Req>, options?: {
@@ -17,6 +25,18 @@ export interface BaseRuntimeContext {
17
25
  /** additional services to provide to the plan */
18
26
  planServices?: Layer.Layer<any>;
19
27
  }
28
+ /**
29
+ * Canonicalize a logical key into a key that is safe to use as the name of an
30
+ * environment variable / binding (`[a-zA-Z][a-zA-Z0-9_]*`).
31
+ *
32
+ * `RuntimeContext.set`/`get` are dumb key/value stores: they read and write the
33
+ * key **verbatim**. It is the *caller's* responsibility to hand them a
34
+ * canonical key, since the caller is the one that knows the logical key may
35
+ * contain `.`/`-` (e.g. a dotted config name from `Platform`, or an
36
+ * `Output.toString()` like `"QueueSinkQueue.queueUrl"`). Callers run the key
37
+ * through this before calling `set`/`get` so both sides agree.
38
+ */
39
+ export declare const sanitizeKey: (key: string) => string;
20
40
  declare const RuntimeContext_base: Context.ServiceClass<RuntimeContext, "RuntimeContext", BaseRuntimeContext>;
21
41
  /**
22
42
  * Context of the runtime environment.
@@ -1 +1 @@
1
- {"version":3,"file":"RuntimeContext.d.ts","sourceRoot":"","sources":["../src/RuntimeContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACzB,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACtC,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACvD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;IAC7C,KAAK,CAAC,CAAC,GAAG,GAAG,KAAK,EAChB,OAAO,EAAE,UAAU,CAAC,GAAG,CAAC,EACxB,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,GAC5C,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IACnC,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,kDAAkD;IAClD,YAAY,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;CACjC;;AAED;;;;GAIG;AACH,qBAAa,cAAe,SAAQ,mBAGf;CAAG;AAExB,eAAO,MAAM,qBAAqB,6DAEjC,CAAC"}
1
+ {"version":3,"file":"RuntimeContext.d.ts","sourceRoot":"","sources":["../src/RuntimeContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACzB;;;OAGG;IACH,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;IAClD;;;OAGG;IACH,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACvD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;IAC7C,KAAK,CAAC,CAAC,GAAG,GAAG,KAAK,EAChB,OAAO,EAAE,UAAU,CAAC,GAAG,CAAC,EACxB,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,GAC5C,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IACnC,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,kDAAkD;IAClD,YAAY,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;CACjC;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,WAAW,GAAI,KAAK,MAAM,KAAG,MACJ,CAAC;;AAEvC;;;;GAIG;AACH,qBAAa,cAAe,SAAQ,mBAGf;CAAG;AAExB,eAAO,MAAM,qBAAqB,6DAEjC,CAAC"}
@@ -2,6 +2,18 @@ import * as Context from "effect/Context";
2
2
  import * as Effect from "effect/Effect";
3
3
  import * as Layer from "effect/Layer";
4
4
  import * as Option from "effect/Option";
5
+ /**
6
+ * Canonicalize a logical key into a key that is safe to use as the name of an
7
+ * environment variable / binding (`[a-zA-Z][a-zA-Z0-9_]*`).
8
+ *
9
+ * `RuntimeContext.set`/`get` are dumb key/value stores: they read and write the
10
+ * key **verbatim**. It is the *caller's* responsibility to hand them a
11
+ * canonical key, since the caller is the one that knows the logical key may
12
+ * contain `.`/`-` (e.g. a dotted config name from `Platform`, or an
13
+ * `Output.toString()` like `"QueueSinkQueue.queueUrl"`). Callers run the key
14
+ * through this before calling `set`/`get` so both sides agree.
15
+ */
16
+ export const sanitizeKey = (key) => key.replaceAll(/[^a-zA-Z0-9]/g, "_");
5
17
  /**
6
18
  * Context of the runtime environment.
7
19
  *
@@ -1 +1 @@
1
- {"version":3,"file":"RuntimeContext.js","sourceRoot":"","sources":["../src/RuntimeContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAoBxC;;;;GAIG;AACH,MAAM,OAAO,cAAe,SAAQ,OAAO,CAAC,OAAO,EAGhD,CAAC,gBAAgB,CAAC;CAAG;AAExB,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,IAAI,CAC5E,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,CAClC,CAAC"}
1
+ {"version":3,"file":"RuntimeContext.js","sourceRoot":"","sources":["../src/RuntimeContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AA4BxC;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAW,EAAU,EAAE,CACjD,GAAG,CAAC,UAAU,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;AAEvC;;;;GAIG;AACH,MAAM,OAAO,cAAe,SAAQ,OAAO,CAAC,OAAO,EAGhD,CAAC,gBAAgB,CAAC;CAAG;AAExB,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,IAAI,CAC5E,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,CAClC,CAAC"}
package/lib/Stack.d.ts CHANGED
@@ -6,6 +6,7 @@ import { Path } from "effect/Path";
6
6
  import * as Scope from "effect/Scope";
7
7
  import type { HttpClient } from "effect/unstable/http/HttpClient";
8
8
  import type { ChildProcessSpawner } from "effect/unstable/process/ChildProcessSpawner";
9
+ import type { ActionLike } from "./Action.ts";
9
10
  import { AlchemyContext } from "./AlchemyContext.ts";
10
11
  import { AuthProviders } from "./Auth/AuthProvider.ts";
11
12
  import { CredentialsStore } from "./Auth/Credentials.ts";
@@ -15,7 +16,6 @@ import type { Input, InputProps } from "./Input.ts";
15
16
  import * as Output from "./Output.ts";
16
17
  import type { ResourceBinding, ResourceLike } from "./Resource.ts";
17
18
  import { Stage } from "./Stage.ts";
18
- import type { ActionLike } from "./Action.ts";
19
19
  import type { State } from "./State/State.ts";
20
20
  import { PlatformServices } from "./Util/PlatformServices.ts";
21
21
  export type StackServices = Stack | Stage | Scope.Scope | FileSystem | Path | AlchemyContext | HttpClient | ChildProcessSpawner | AuthProviders | Profile | CredentialsStore | Cli;
@@ -77,7 +77,7 @@ export interface MakeStackProps<ROut = never> {
77
77
  }
78
78
  export declare const make: <ROut = never>(options: MakeStackProps<ROut>) => <A, Err = never, Req extends ROut | StackServices = never>(effect: Effect.Effect<A, Err, Req>) => Effect.Effect<CompiledStack<A, StackServices | ROut>, Err, Scope.Scope | ChildProcessSpawner | FileSystem | Path | HttpClient | AlchemyContext | Profile | AuthProviders | CredentialsStore | Cli | Stage | Exclude<Scope.Scope, State | Stack | ROut> | Exclude<ChildProcessSpawner, State | Stack | ROut> | Exclude<FileSystem, State | Stack | ROut> | Exclude<Path, State | Stack | ROut> | Exclude<HttpClient, State | Stack | ROut> | Exclude<AlchemyContext, State | Stack | ROut> | Exclude<Profile, State | Stack | ROut> | Exclude<AuthProviders, State | Stack | ROut> | Exclude<CredentialsStore, State | Stack | ROut> | Exclude<Cli, State | Stack | ROut> | Exclude<Stage, State | Stack | ROut> | Exclude<Stack, State | Stack | ROut> | Exclude<ROut, State | Stack | ROut> | Exclude<Req, State | Stack | ROut>>;
79
79
  export declare const CurrentStack: Effect.Effect<Omit<StackSpec<any>, "output"> | undefined, never, never>;
80
- export declare const evalStack: <A, B, Err, Req>(effect: StackEffect<CompiledStack<A>, Stage | AlchemyContext>, fn: (stack: CompiledStack<A>) => Effect.Effect<B, Err, Req>, options: {
80
+ export declare const evalStack: <A, B, StackErr, Err, Req>(effect: StackEffect<CompiledStack<A>, StackErr, Stage | AlchemyContext>, fn: (stack: CompiledStack<A>) => Effect.Effect<B, Err, Req>, options: {
81
81
  stage: string;
82
82
  dev?: boolean;
83
83
  /**
@@ -89,5 +89,5 @@ export declare const evalStack: <A, B, Err, Req>(effect: StackEffect<CompiledSta
89
89
  * private scope closed on completion.
90
90
  */
91
91
  scope?: Scope.Scope;
92
- }) => Effect.Effect<B, AlchemyContext | import("effect/PlatformError").PlatformError | Stage | Err, FileSystem | Path | AlchemyContext | State | Cli>;
92
+ }) => Effect.Effect<B, import("effect/PlatformError").PlatformError | StackErr | Err, FileSystem | Path | AlchemyContext | State | Cli>;
93
93
  //# sourceMappingURL=Stack.d.ts.map