alchemy 2.0.0-beta.36 → 2.0.0-beta.38

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 (741) hide show
  1. package/bin/exec.js +646 -104
  2. package/bin/exec.js.map +1 -1
  3. package/lib/AWS/AutoScaling/LaunchTemplate.d.ts +1 -1
  4. package/lib/AWS/CloudWatch/common.d.ts +1 -1
  5. package/lib/AWS/Credentials.d.ts.map +1 -1
  6. package/lib/AWS/Credentials.js +1 -2
  7. package/lib/AWS/Credentials.js.map +1 -1
  8. package/lib/AWS/DynamoDB/Stream.d.ts.map +1 -1
  9. package/lib/AWS/DynamoDB/Stream.js +1 -1
  10. package/lib/AWS/DynamoDB/Stream.js.map +1 -1
  11. package/lib/AWS/EC2/Instance.d.ts +1 -1
  12. package/lib/AWS/EC2/hosted.d.ts +1 -1
  13. package/lib/AWS/EC2/hosted.d.ts.map +1 -1
  14. package/lib/AWS/EC2/hosted.js +3 -5
  15. package/lib/AWS/EC2/hosted.js.map +1 -1
  16. package/lib/AWS/ECS/Task.d.ts +1 -1
  17. package/lib/AWS/ECS/Task.d.ts.map +1 -1
  18. package/lib/AWS/ECS/Task.js +3 -5
  19. package/lib/AWS/ECS/Task.js.map +1 -1
  20. package/lib/AWS/Endpoint.d.ts.map +1 -1
  21. package/lib/AWS/Endpoint.js +1 -2
  22. package/lib/AWS/Endpoint.js.map +1 -1
  23. package/lib/AWS/Environment.d.ts +2 -2
  24. package/lib/AWS/EventBridge/EventSource.d.ts.map +1 -1
  25. package/lib/AWS/EventBridge/EventSource.js +1 -1
  26. package/lib/AWS/EventBridge/EventSource.js.map +1 -1
  27. package/lib/AWS/Kinesis/StreamEventSource.d.ts.map +1 -1
  28. package/lib/AWS/Kinesis/StreamEventSource.js +1 -1
  29. package/lib/AWS/Kinesis/StreamEventSource.js.map +1 -1
  30. package/lib/AWS/Lambda/BucketEventSource.d.ts +1 -1
  31. package/lib/AWS/Lambda/EventBridgeEventSource.d.ts +1 -1
  32. package/lib/AWS/Lambda/Function.d.ts +1 -1
  33. package/lib/AWS/Lambda/Function.d.ts.map +1 -1
  34. package/lib/AWS/Lambda/Function.js +29 -13
  35. package/lib/AWS/Lambda/Function.js.map +1 -1
  36. package/lib/AWS/Lambda/QueueEventSource.d.ts +1 -1
  37. package/lib/AWS/Lambda/StreamEventSource.d.ts +1 -1
  38. package/lib/AWS/Lambda/TableEventSource.d.ts +1 -1
  39. package/lib/AWS/Lambda/TopicEventSource.d.ts +1 -1
  40. package/lib/AWS/Organizations/common.d.ts +1 -1
  41. package/lib/AWS/Providers.d.ts.map +1 -1
  42. package/lib/AWS/Providers.js +21 -3
  43. package/lib/AWS/Providers.js.map +1 -1
  44. package/lib/AWS/Region.d.ts +1 -1
  45. package/lib/AWS/Region.d.ts.map +1 -1
  46. package/lib/AWS/Region.js +2 -3
  47. package/lib/AWS/Region.js.map +1 -1
  48. package/lib/AWS/S3/Bucket.d.ts.map +1 -1
  49. package/lib/AWS/S3/Bucket.js +5 -2
  50. package/lib/AWS/S3/Bucket.js.map +1 -1
  51. package/lib/AWS/S3/BucketNotifications.d.ts.map +1 -1
  52. package/lib/AWS/S3/BucketNotifications.js +1 -1
  53. package/lib/AWS/S3/BucketNotifications.js.map +1 -1
  54. package/lib/AWS/SNS/TopicEventSource.d.ts.map +1 -1
  55. package/lib/AWS/SNS/TopicEventSource.js +1 -1
  56. package/lib/AWS/SNS/TopicEventSource.js.map +1 -1
  57. package/lib/AWS/SQS/Queue.d.ts.map +1 -1
  58. package/lib/AWS/SQS/Queue.js +23 -5
  59. package/lib/AWS/SQS/Queue.js.map +1 -1
  60. package/lib/Action.d.ts +77 -0
  61. package/lib/Action.d.ts.map +1 -0
  62. package/lib/Action.js +89 -0
  63. package/lib/Action.js.map +1 -0
  64. package/lib/AlchemyContext.d.ts +1 -1
  65. package/lib/Apply.d.ts.map +1 -1
  66. package/lib/Apply.js +228 -4
  67. package/lib/Apply.js.map +1 -1
  68. package/lib/Artifacts.d.ts +1 -1
  69. package/lib/Artifacts.d.ts.map +1 -1
  70. package/lib/Artifacts.js +1 -1
  71. package/lib/Artifacts.js.map +1 -1
  72. package/lib/Auth/AuthProvider.js +1 -1
  73. package/lib/Auth/AuthProvider.js.map +1 -1
  74. package/lib/Auth/Env.d.ts.map +1 -1
  75. package/lib/Auth/Env.js +4 -12
  76. package/lib/Auth/Env.js.map +1 -1
  77. package/lib/Binding.d.ts.map +1 -1
  78. package/lib/Binding.js +5 -5
  79. package/lib/Binding.js.map +1 -1
  80. package/lib/Build/Command.d.ts +1 -1
  81. package/lib/Build/Memo.d.ts +1 -1
  82. package/lib/Bundle/Docker.d.ts +3 -3
  83. package/lib/Bundle/Docker.js +1 -1
  84. package/lib/Bundle/Docker.js.map +1 -1
  85. package/lib/Bundle/TempRoot.d.ts +3 -3
  86. package/lib/Cli/Event.d.ts +1 -1
  87. package/lib/Cli/Event.d.ts.map +1 -1
  88. package/lib/Cli/NamespaceTree.d.ts +11 -5
  89. package/lib/Cli/NamespaceTree.d.ts.map +1 -1
  90. package/lib/Cli/NamespaceTree.js +28 -1
  91. package/lib/Cli/NamespaceTree.js.map +1 -1
  92. package/lib/Cli/commands/_shared.d.ts +1 -1
  93. package/lib/Cli/commands/_shared.js +2 -2
  94. package/lib/Cli/commands/_shared.js.map +1 -1
  95. package/lib/Cli/commands/aws.d.ts +1 -1
  96. package/lib/Cli/commands/cloudflare.d.ts +2 -2
  97. package/lib/Cli/commands/cloudflare.d.ts.map +1 -1
  98. package/lib/Cli/commands/deploy.d.ts +9 -9
  99. package/lib/Cli/commands/deploy.js +1 -1
  100. package/lib/Cli/commands/deploy.js.map +1 -1
  101. package/lib/Cli/commands/login.d.ts +1 -1
  102. package/lib/Cli/commands/logs.d.ts +1 -1
  103. package/lib/Cli/commands/logs.js.map +1 -1
  104. package/lib/Cli/commands/profile.d.ts +1 -3
  105. package/lib/Cli/commands/profile.d.ts.map +1 -1
  106. package/lib/Cli/commands/state.d.ts +1 -1
  107. package/lib/Cli/commands/state.d.ts.map +1 -1
  108. package/lib/Cli/commands/tail.d.ts +1 -1
  109. package/lib/Cli/commands/tail.js.map +1 -1
  110. package/lib/Cli/tui/components/Plan.d.ts.map +1 -1
  111. package/lib/Cli/tui/components/Plan.js +27 -13
  112. package/lib/Cli/tui/components/Plan.js.map +1 -1
  113. package/lib/Cli/tui/components/PlanProgress.d.ts +8 -1
  114. package/lib/Cli/tui/components/PlanProgress.d.ts.map +1 -1
  115. package/lib/Cli/tui/components/PlanProgress.js +95 -16
  116. package/lib/Cli/tui/components/PlanProgress.js.map +1 -1
  117. package/lib/Cloudflare/Access.js +0 -1
  118. package/lib/Cloudflare/Access.js.map +1 -1
  119. package/lib/Cloudflare/AnalyticsEngine/AnalyticsEngineDataset.d.ts +54 -0
  120. package/lib/Cloudflare/AnalyticsEngine/AnalyticsEngineDataset.d.ts.map +1 -0
  121. package/lib/Cloudflare/AnalyticsEngine/AnalyticsEngineDataset.js +17 -0
  122. package/lib/Cloudflare/AnalyticsEngine/AnalyticsEngineDataset.js.map +1 -0
  123. package/lib/Cloudflare/AnalyticsEngine/AnalyticsEngineDatasetBinding.d.ts +37 -0
  124. package/lib/Cloudflare/AnalyticsEngine/AnalyticsEngineDatasetBinding.d.ts.map +1 -0
  125. package/lib/Cloudflare/AnalyticsEngine/AnalyticsEngineDatasetBinding.js +45 -0
  126. package/lib/Cloudflare/AnalyticsEngine/AnalyticsEngineDatasetBinding.js.map +1 -0
  127. package/lib/Cloudflare/AnalyticsEngine/index.d.ts +3 -0
  128. package/lib/Cloudflare/AnalyticsEngine/index.d.ts.map +1 -0
  129. package/lib/Cloudflare/AnalyticsEngine/index.js +3 -0
  130. package/lib/Cloudflare/AnalyticsEngine/index.js.map +1 -0
  131. package/lib/Cloudflare/Artifacts/ArtifactsBinding.js +1 -1
  132. package/lib/Cloudflare/Artifacts/ArtifactsBinding.js.map +1 -1
  133. package/lib/Cloudflare/CloudflareEnvironment.d.ts +1 -1
  134. package/lib/Cloudflare/Container/Container.js +0 -1
  135. package/lib/Cloudflare/Container/Container.js.map +1 -1
  136. package/lib/Cloudflare/Container/ContainerApplication.d.ts +1 -1
  137. package/lib/Cloudflare/Container/ContainerApplication.d.ts.map +1 -1
  138. package/lib/Cloudflare/Container/ContainerApplication.js +4 -6
  139. package/lib/Cloudflare/Container/ContainerApplication.js.map +1 -1
  140. package/lib/Cloudflare/Container/ContainerBinding.js +2 -2
  141. package/lib/Cloudflare/Container/ContainerBinding.js.map +1 -1
  142. package/lib/Cloudflare/D1/D1Connection.d.ts +47 -3
  143. package/lib/Cloudflare/D1/D1Connection.d.ts.map +1 -1
  144. package/lib/Cloudflare/D1/D1Connection.js +62 -5
  145. package/lib/Cloudflare/D1/D1Connection.js.map +1 -1
  146. package/lib/Cloudflare/D1/D1Database.d.ts +1 -1
  147. package/lib/Cloudflare/D1/D1SqlFile.d.ts +2 -2
  148. package/lib/Cloudflare/Email/EmailAddress.d.ts +45 -0
  149. package/lib/Cloudflare/Email/EmailAddress.d.ts.map +1 -0
  150. package/lib/Cloudflare/Email/EmailAddress.js +99 -0
  151. package/lib/Cloudflare/Email/EmailAddress.js.map +1 -0
  152. package/lib/Cloudflare/Email/EmailRouting.d.ts +42 -0
  153. package/lib/Cloudflare/Email/EmailRouting.d.ts.map +1 -0
  154. package/lib/Cloudflare/Email/EmailRouting.js +89 -0
  155. package/lib/Cloudflare/Email/EmailRouting.js.map +1 -0
  156. package/lib/Cloudflare/Email/EmailRule.d.ts +80 -0
  157. package/lib/Cloudflare/Email/EmailRule.d.ts.map +1 -0
  158. package/lib/Cloudflare/Email/EmailRule.js +110 -0
  159. package/lib/Cloudflare/Email/EmailRule.js.map +1 -0
  160. package/lib/Cloudflare/Email/SendEmail.d.ts +74 -0
  161. package/lib/Cloudflare/Email/SendEmail.d.ts.map +1 -0
  162. package/lib/Cloudflare/Email/SendEmail.js +19 -0
  163. package/lib/Cloudflare/Email/SendEmail.js.map +1 -0
  164. package/lib/Cloudflare/Email/SendEmailBinding.d.ts +64 -0
  165. package/lib/Cloudflare/Email/SendEmailBinding.d.ts.map +1 -0
  166. package/lib/Cloudflare/Email/SendEmailBinding.js +54 -0
  167. package/lib/Cloudflare/Email/SendEmailBinding.js.map +1 -0
  168. package/lib/Cloudflare/Email/index.d.ts +6 -0
  169. package/lib/Cloudflare/Email/index.d.ts.map +1 -0
  170. package/lib/Cloudflare/Email/index.js +6 -0
  171. package/lib/Cloudflare/Email/index.js.map +1 -0
  172. package/lib/Cloudflare/Hyperdrive/Hyperdrive.d.ts +1 -1
  173. package/lib/Cloudflare/Images/ImagesBinding.js +1 -1
  174. package/lib/Cloudflare/Images/ImagesBinding.js.map +1 -1
  175. package/lib/Cloudflare/KV/KVNamespaceBinding.js +1 -1
  176. package/lib/Cloudflare/KV/KVNamespaceBinding.js.map +1 -1
  177. package/lib/Cloudflare/Local/Sidecar.d.ts +1 -1
  178. package/lib/Cloudflare/Local/SidecarHandlers.d.ts +1 -1
  179. package/lib/Cloudflare/Local/SidecarHandlers.js +9 -1
  180. package/lib/Cloudflare/Local/SidecarHandlers.js.map +1 -1
  181. package/lib/Cloudflare/Local/SidecarServer.js +1 -1
  182. package/lib/Cloudflare/Local/SidecarServer.js.map +1 -1
  183. package/lib/Cloudflare/Providers.d.ts.map +1 -1
  184. package/lib/Cloudflare/Providers.js +9 -1
  185. package/lib/Cloudflare/Providers.js.map +1 -1
  186. package/lib/Cloudflare/Queue/QueueBinding.js +1 -1
  187. package/lib/Cloudflare/Queue/QueueBinding.js.map +1 -1
  188. package/lib/Cloudflare/R2/R2Bucket.d.ts.map +1 -1
  189. package/lib/Cloudflare/R2/R2Bucket.js +16 -0
  190. package/lib/Cloudflare/R2/R2Bucket.js.map +1 -1
  191. package/lib/Cloudflare/R2/R2BucketBinding.js +1 -1
  192. package/lib/Cloudflare/R2/R2BucketBinding.js.map +1 -1
  193. package/lib/Cloudflare/SecretsStore/SecretBinding.js +1 -1
  194. package/lib/Cloudflare/SecretsStore/SecretBinding.js.map +1 -1
  195. package/lib/Cloudflare/StateStore/Api.d.ts +7 -2
  196. package/lib/Cloudflare/StateStore/Api.d.ts.map +1 -1
  197. package/lib/Cloudflare/StateStore/Api.js +23 -1
  198. package/lib/Cloudflare/StateStore/Api.js.map +1 -1
  199. package/lib/Cloudflare/StateStore/State.d.ts +2 -2
  200. package/lib/Cloudflare/StateStore/Store.d.ts +16 -1
  201. package/lib/Cloudflare/StateStore/Store.d.ts.map +1 -1
  202. package/lib/Cloudflare/StateStore/Store.js +22 -5
  203. package/lib/Cloudflare/StateStore/Store.js.map +1 -1
  204. package/lib/Cloudflare/Workers/Assets.d.ts +2 -2
  205. package/lib/Cloudflare/Workers/Assets.d.ts.map +1 -1
  206. package/lib/Cloudflare/Workers/Assets.js +5 -4
  207. package/lib/Cloudflare/Workers/Assets.js.map +1 -1
  208. package/lib/Cloudflare/Workers/CronEventSource.d.ts +35 -0
  209. package/lib/Cloudflare/Workers/CronEventSource.d.ts.map +1 -0
  210. package/lib/Cloudflare/Workers/CronEventSource.js +55 -0
  211. package/lib/Cloudflare/Workers/CronEventSource.js.map +1 -0
  212. package/lib/Cloudflare/Workers/InferEnv.d.ts +37 -2
  213. package/lib/Cloudflare/Workers/InferEnv.d.ts.map +1 -1
  214. package/lib/Cloudflare/Workers/LocalWorkerProvider.d.ts.map +1 -1
  215. package/lib/Cloudflare/Workers/LocalWorkerProvider.js +2 -1
  216. package/lib/Cloudflare/Workers/LocalWorkerProvider.js.map +1 -1
  217. package/lib/Cloudflare/Workers/Rpc.d.ts +76 -3
  218. package/lib/Cloudflare/Workers/Rpc.d.ts.map +1 -1
  219. package/lib/Cloudflare/Workers/Rpc.js +197 -13
  220. package/lib/Cloudflare/Workers/Rpc.js.map +1 -1
  221. package/lib/Cloudflare/Workers/Worker.d.ts +24 -4
  222. package/lib/Cloudflare/Workers/Worker.d.ts.map +1 -1
  223. package/lib/Cloudflare/Workers/Worker.js +187 -45
  224. package/lib/Cloudflare/Workers/Worker.js.map +1 -1
  225. package/lib/Cloudflare/Workers/WorkerBundle.d.ts +1 -1
  226. package/lib/Cloudflare/Workers/WorkerBundle.d.ts.map +1 -1
  227. package/lib/Cloudflare/Workers/WorkerBundle.js +19 -11
  228. package/lib/Cloudflare/Workers/WorkerBundle.js.map +1 -1
  229. package/lib/Cloudflare/Workers/WorkerName.d.ts +1 -1
  230. package/lib/Cloudflare/Workers/Workflow.d.ts +50 -47
  231. package/lib/Cloudflare/Workers/Workflow.d.ts.map +1 -1
  232. package/lib/Cloudflare/Workers/Workflow.js +43 -37
  233. package/lib/Cloudflare/Workers/Workflow.js.map +1 -1
  234. package/lib/Cloudflare/Workers/index.d.ts +1 -0
  235. package/lib/Cloudflare/Workers/index.d.ts.map +1 -1
  236. package/lib/Cloudflare/Workers/index.js +1 -0
  237. package/lib/Cloudflare/Workers/index.js.map +1 -1
  238. package/lib/Cloudflare/index.d.ts +2 -0
  239. package/lib/Cloudflare/index.d.ts.map +1 -1
  240. package/lib/Cloudflare/index.js +2 -0
  241. package/lib/Cloudflare/index.js.map +1 -1
  242. package/lib/Construct.d.ts +3 -3
  243. package/lib/Construct.d.ts.map +1 -1
  244. package/lib/Construct.js.map +1 -1
  245. package/lib/Deploy.d.ts +5 -2
  246. package/lib/Deploy.d.ts.map +1 -1
  247. package/lib/Deploy.js +2 -2
  248. package/lib/Deploy.js.map +1 -1
  249. package/lib/Destroy.d.ts +5 -2
  250. package/lib/Destroy.d.ts.map +1 -1
  251. package/lib/Destroy.js +3 -2
  252. package/lib/Destroy.js.map +1 -1
  253. package/lib/Drizzle/Providers.d.ts +1 -1
  254. package/lib/Drizzle/Schema.d.ts +1 -1
  255. package/lib/GitHub/Providers.d.ts +1 -1
  256. package/lib/Http.d.ts +1 -1
  257. package/lib/Http.d.ts.map +1 -1
  258. package/lib/Http.js +1 -1
  259. package/lib/Http.js.map +1 -1
  260. package/lib/Namespace.d.ts.map +1 -1
  261. package/lib/Namespace.js +3 -4
  262. package/lib/Namespace.js.map +1 -1
  263. package/lib/Neon/Branch.d.ts +2 -2
  264. package/lib/Neon/Branch.d.ts.map +1 -1
  265. package/lib/Neon/Branch.js +59 -27
  266. package/lib/Neon/Branch.js.map +1 -1
  267. package/lib/Neon/Credentials.d.ts +2 -2
  268. package/lib/Neon/Credentials.d.ts.map +1 -1
  269. package/lib/Neon/Credentials.js +2 -2
  270. package/lib/Neon/Credentials.js.map +1 -1
  271. package/lib/Neon/NeonEnvironment.d.ts +1 -1
  272. package/lib/Neon/Project.d.ts +25 -1
  273. package/lib/Neon/Project.d.ts.map +1 -1
  274. package/lib/Neon/Project.js +121 -42
  275. package/lib/Neon/Project.js.map +1 -1
  276. package/lib/Neon/Providers.d.ts +1 -1
  277. package/lib/Neon/SqlFile.d.ts +2 -2
  278. package/lib/Output.d.ts +47 -8
  279. package/lib/Output.d.ts.map +1 -1
  280. package/lib/Output.js +106 -7
  281. package/lib/Output.js.map +1 -1
  282. package/lib/PhysicalName.d.ts +1 -1
  283. package/lib/Plan.d.ts +36 -1
  284. package/lib/Plan.d.ts.map +1 -1
  285. package/lib/Plan.js +284 -37
  286. package/lib/Plan.js.map +1 -1
  287. package/lib/Platform.d.ts.map +1 -1
  288. package/lib/Platform.js +22 -9
  289. package/lib/Platform.js.map +1 -1
  290. package/lib/Provider.d.ts +1 -1
  291. package/lib/Provider.d.ts.map +1 -1
  292. package/lib/Provider.js +1 -1
  293. package/lib/Provider.js.map +1 -1
  294. package/lib/Random.d.ts +1 -1
  295. package/lib/Random.d.ts.map +1 -1
  296. package/lib/Random.js +1 -1
  297. package/lib/Random.js.map +1 -1
  298. package/lib/Ref.d.ts +4 -1
  299. package/lib/Ref.d.ts.map +1 -1
  300. package/lib/Ref.js +1 -1
  301. package/lib/Ref.js.map +1 -1
  302. package/lib/Resource.d.ts +8 -0
  303. package/lib/Resource.d.ts.map +1 -1
  304. package/lib/Resource.js +12 -25
  305. package/lib/Resource.js.map +1 -1
  306. package/lib/Runtime.d.ts +24 -0
  307. package/lib/Runtime.d.ts.map +1 -0
  308. package/lib/Runtime.js +31 -0
  309. package/lib/Runtime.js.map +1 -0
  310. package/lib/RuntimeContext.d.ts +3 -1
  311. package/lib/RuntimeContext.d.ts.map +1 -1
  312. package/lib/RuntimeContext.js.map +1 -1
  313. package/lib/Secret.d.ts +50 -0
  314. package/lib/Secret.d.ts.map +1 -0
  315. package/lib/Secret.js +23 -0
  316. package/lib/Secret.js.map +1 -0
  317. package/lib/Serverless/Function.d.ts +9 -1
  318. package/lib/Serverless/Function.d.ts.map +1 -1
  319. package/lib/Sidecar/RpcClient.d.ts +1 -1
  320. package/lib/Sidecar/RpcPaths.d.ts +1 -1
  321. package/lib/Sidecar/RpcServer.d.ts +1 -1
  322. package/lib/Sidecar/RpcServices.d.ts +1 -1
  323. package/lib/Stack.d.ts +20 -6
  324. package/lib/Stack.d.ts.map +1 -1
  325. package/lib/Stack.js +35 -23
  326. package/lib/Stack.js.map +1 -1
  327. package/lib/State/ActionState.d.ts +48 -0
  328. package/lib/State/ActionState.d.ts.map +1 -0
  329. package/lib/State/ActionState.js +1 -0
  330. package/lib/State/ActionState.js.map +1 -0
  331. package/lib/State/HttpStateApi.d.ts +15 -1
  332. package/lib/State/HttpStateApi.d.ts.map +1 -1
  333. package/lib/State/HttpStateApi.js +11 -0
  334. package/lib/State/HttpStateApi.js.map +1 -1
  335. package/lib/State/HttpStateStore.d.ts.map +1 -1
  336. package/lib/State/HttpStateStore.js +12 -1
  337. package/lib/State/HttpStateStore.js.map +1 -1
  338. package/lib/State/InMemoryState.d.ts +2 -2
  339. package/lib/State/InMemoryState.d.ts.map +1 -1
  340. package/lib/State/InMemoryState.js +12 -6
  341. package/lib/State/InMemoryState.js.map +1 -1
  342. package/lib/State/LocalState.d.ts +2 -2
  343. package/lib/State/LocalState.d.ts.map +1 -1
  344. package/lib/State/LocalState.js +11 -2
  345. package/lib/State/LocalState.js.map +1 -1
  346. package/lib/State/ResourceState.d.ts +5 -0
  347. package/lib/State/ResourceState.d.ts.map +1 -1
  348. package/lib/State/State.d.ts +31 -2
  349. package/lib/State/State.d.ts.map +1 -1
  350. package/lib/State/State.js +2 -0
  351. package/lib/State/State.js.map +1 -1
  352. package/lib/State/index.d.ts +1 -0
  353. package/lib/State/index.d.ts.map +1 -1
  354. package/lib/State/index.js +1 -0
  355. package/lib/State/index.js.map +1 -1
  356. package/lib/Test/Bun.d.ts.map +1 -1
  357. package/lib/Test/Bun.js +30 -7
  358. package/lib/Test/Bun.js.map +1 -1
  359. package/lib/Test/Core.d.ts +19 -4
  360. package/lib/Test/Core.d.ts.map +1 -1
  361. package/lib/Test/Core.js +33 -12
  362. package/lib/Test/Core.js.map +1 -1
  363. package/lib/Test/Vitest.d.ts.map +1 -1
  364. package/lib/Test/Vitest.js +24 -5
  365. package/lib/Test/Vitest.js.map +1 -1
  366. package/lib/Util/FileLogger.d.ts +1 -1
  367. package/lib/Util/LocalhostDns.d.ts +14 -10
  368. package/lib/Util/LocalhostDns.d.ts.map +1 -1
  369. package/lib/Util/LocalhostDns.js +27 -36
  370. package/lib/Util/LocalhostDns.js.map +1 -1
  371. package/lib/Util/effect.d.ts +7 -0
  372. package/lib/Util/effect.d.ts.map +1 -1
  373. package/lib/Util/effect.js +10 -4
  374. package/lib/Util/effect.js.map +1 -1
  375. package/lib/Util/exec.d.ts.map +1 -0
  376. package/lib/Util/exec.js.map +1 -0
  377. package/lib/Util/hash.d.ts +8 -0
  378. package/lib/Util/hash.d.ts.map +1 -0
  379. package/lib/Util/hash.js +11 -0
  380. package/lib/Util/hash.js.map +1 -0
  381. package/lib/Util/ignore.d.ts +40 -0
  382. package/lib/Util/ignore.d.ts.map +1 -0
  383. package/lib/Util/ignore.js +591 -0
  384. package/lib/Util/ignore.js.map +1 -0
  385. package/lib/Variable.d.ts +29 -0
  386. package/lib/Variable.d.ts.map +1 -0
  387. package/lib/Variable.js +9 -0
  388. package/lib/Variable.js.map +1 -0
  389. package/lib/index.d.ts +4 -0
  390. package/lib/index.d.ts.map +1 -1
  391. package/lib/index.js +4 -0
  392. package/lib/index.js.map +1 -1
  393. package/lib/tsconfig.test.tsbuildinfo +1 -1
  394. package/package.json +22 -29
  395. package/src/AWS/Credentials.ts +1 -2
  396. package/src/AWS/DynamoDB/Stream.ts +1 -4
  397. package/src/AWS/EC2/hosted.ts +14 -16
  398. package/src/AWS/ECS/Task.ts +14 -16
  399. package/src/AWS/Endpoint.ts +2 -5
  400. package/src/AWS/EventBridge/EventSource.ts +1 -4
  401. package/src/AWS/Kinesis/StreamEventSource.ts +1 -4
  402. package/src/AWS/Lambda/Function.ts +47 -23
  403. package/src/AWS/Providers.ts +22 -3
  404. package/src/AWS/Region.ts +2 -3
  405. package/src/AWS/S3/Bucket.ts +7 -2
  406. package/src/AWS/S3/BucketNotifications.ts +1 -4
  407. package/src/AWS/SNS/TopicEventSource.ts +1 -4
  408. package/src/AWS/SQS/Queue.ts +40 -6
  409. package/src/Action.ts +280 -0
  410. package/src/Apply.ts +359 -24
  411. package/src/Artifacts.ts +2 -4
  412. package/src/Auth/AuthProvider.ts +1 -1
  413. package/src/Auth/Env.ts +12 -20
  414. package/src/Binding.ts +5 -9
  415. package/src/Bundle/Docker.ts +1 -1
  416. package/src/Cli/Event.ts +4 -0
  417. package/src/Cli/NamespaceTree.ts +52 -5
  418. package/src/Cli/commands/_shared.ts +2 -2
  419. package/src/Cli/commands/deploy.ts +1 -1
  420. package/src/Cli/commands/logs.ts +4 -4
  421. package/src/Cli/commands/tail.ts +4 -4
  422. package/src/Cli/tui/components/Plan.tsx +65 -17
  423. package/src/Cli/tui/components/PlanProgress.tsx +142 -32
  424. package/src/Cloudflare/Access.ts +1 -1
  425. package/src/Cloudflare/AnalyticsEngine/AnalyticsEngineDataset.ts +82 -0
  426. package/src/Cloudflare/AnalyticsEngine/AnalyticsEngineDatasetBinding.ts +106 -0
  427. package/src/Cloudflare/AnalyticsEngine/index.ts +2 -0
  428. package/src/Cloudflare/Artifacts/ArtifactsBinding.ts +1 -1
  429. package/src/Cloudflare/Container/Container.ts +1 -1
  430. package/src/Cloudflare/Container/ContainerApplication.ts +4 -6
  431. package/src/Cloudflare/Container/ContainerBinding.ts +2 -2
  432. package/src/Cloudflare/D1/D1Connection.ts +95 -12
  433. package/src/Cloudflare/Email/EmailAddress.ts +155 -0
  434. package/src/Cloudflare/Email/EmailRouting.ts +138 -0
  435. package/src/Cloudflare/Email/EmailRule.ts +210 -0
  436. package/src/Cloudflare/Email/SendEmail.ts +95 -0
  437. package/src/Cloudflare/Email/SendEmailBinding.ts +124 -0
  438. package/src/Cloudflare/Email/index.ts +5 -0
  439. package/src/Cloudflare/Images/ImagesBinding.ts +1 -1
  440. package/src/Cloudflare/KV/KVNamespaceBinding.ts +1 -1
  441. package/src/Cloudflare/Local/SidecarHandlers.ts +9 -1
  442. package/src/Cloudflare/Local/SidecarServer.ts +1 -1
  443. package/src/Cloudflare/Providers.ts +14 -0
  444. package/src/Cloudflare/Queue/QueueBinding.ts +1 -1
  445. package/src/Cloudflare/R2/R2Bucket.ts +31 -0
  446. package/src/Cloudflare/R2/R2BucketBinding.ts +1 -1
  447. package/src/Cloudflare/SecretsStore/SecretBinding.ts +1 -1
  448. package/src/Cloudflare/StateStore/Api.ts +34 -1
  449. package/src/Cloudflare/StateStore/Store.ts +40 -10
  450. package/src/Cloudflare/Workers/Assets.ts +5 -6
  451. package/src/Cloudflare/Workers/CronEventSource.ts +89 -0
  452. package/src/Cloudflare/Workers/InferEnv.ts +94 -20
  453. package/src/Cloudflare/Workers/LocalWorkerProvider.ts +9 -1
  454. package/src/Cloudflare/Workers/Rpc.ts +227 -18
  455. package/src/Cloudflare/Workers/Worker.ts +294 -65
  456. package/src/Cloudflare/Workers/WorkerBundle.ts +19 -11
  457. package/src/Cloudflare/Workers/Workflow.ts +76 -72
  458. package/src/Cloudflare/Workers/index.ts +1 -0
  459. package/src/Cloudflare/index.ts +2 -0
  460. package/src/Construct.ts +3 -7
  461. package/src/Deploy.ts +5 -1
  462. package/src/Destroy.ts +6 -1
  463. package/src/Http.ts +1 -1
  464. package/src/Namespace.ts +4 -4
  465. package/src/Neon/Branch.ts +93 -59
  466. package/src/Neon/Credentials.ts +2 -2
  467. package/src/Neon/Project.ts +193 -64
  468. package/src/Output.ts +129 -18
  469. package/src/Plan.ts +375 -36
  470. package/src/Platform.ts +26 -11
  471. package/src/Provider.ts +8 -3
  472. package/src/Random.ts +1 -1
  473. package/src/Ref.ts +10 -5
  474. package/src/Resource.ts +24 -25
  475. package/src/Runtime.ts +38 -0
  476. package/src/RuntimeContext.ts +1 -0
  477. package/src/Secret.ts +87 -0
  478. package/src/Serverless/Function.ts +10 -1
  479. package/src/Stack.ts +62 -35
  480. package/src/State/ActionState.ts +51 -0
  481. package/src/State/HttpStateApi.ts +21 -0
  482. package/src/State/HttpStateStore.ts +27 -2
  483. package/src/State/InMemoryState.ts +31 -10
  484. package/src/State/LocalState.ts +28 -4
  485. package/src/State/ResourceState.ts +5 -0
  486. package/src/State/State.ts +38 -2
  487. package/src/State/index.ts +1 -0
  488. package/src/Test/Bun.ts +43 -7
  489. package/src/Test/Core.ts +33 -11
  490. package/src/Test/Vitest.ts +33 -4
  491. package/src/Util/LocalhostDns.ts +30 -36
  492. package/src/Util/effect.ts +29 -4
  493. package/src/Util/hash.ts +14 -0
  494. package/src/Util/ignore.ts +815 -0
  495. package/src/Variable.ts +44 -0
  496. package/src/index.ts +9 -0
  497. package/lib/Agent/Agent.d.ts +0 -9
  498. package/lib/Agent/Agent.d.ts.map +0 -1
  499. package/lib/Agent/Agent.js +0 -10
  500. package/lib/Agent/Agent.js.map +0 -1
  501. package/lib/Agent/Aspect.d.ts +0 -51
  502. package/lib/Agent/Aspect.d.ts.map +0 -1
  503. package/lib/Agent/Aspect.js +0 -45
  504. package/lib/Agent/Aspect.js.map +0 -1
  505. package/lib/Agent/AspectGraph.d.ts +0 -45
  506. package/lib/Agent/AspectGraph.d.ts.map +0 -1
  507. package/lib/Agent/AspectGraph.js +0 -39
  508. package/lib/Agent/AspectGraph.js.map +0 -1
  509. package/lib/Agent/ContextPlugin.d.ts +0 -8
  510. package/lib/Agent/ContextPlugin.d.ts.map +0 -1
  511. package/lib/Agent/ContextPlugin.js +0 -3
  512. package/lib/Agent/ContextPlugin.js.map +0 -1
  513. package/lib/Agent/Plugin.d.ts +0 -18
  514. package/lib/Agent/Plugin.d.ts.map +0 -1
  515. package/lib/Agent/Plugin.js +0 -8
  516. package/lib/Agent/Plugin.js.map +0 -1
  517. package/lib/Agent/chat/channel.d.ts +0 -9
  518. package/lib/Agent/chat/channel.d.ts.map +0 -1
  519. package/lib/Agent/chat/channel.js +0 -10
  520. package/lib/Agent/chat/channel.js.map +0 -1
  521. package/lib/Agent/chat/event.d.ts +0 -32
  522. package/lib/Agent/chat/event.d.ts.map +0 -1
  523. package/lib/Agent/chat/event.js +0 -32
  524. package/lib/Agent/chat/event.js.map +0 -1
  525. package/lib/Agent/chat/message.d.ts +0 -22
  526. package/lib/Agent/chat/message.d.ts.map +0 -1
  527. package/lib/Agent/chat/message.js +0 -31
  528. package/lib/Agent/chat/message.js.map +0 -1
  529. package/lib/Agent/chat/service.d.ts +0 -102
  530. package/lib/Agent/chat/service.d.ts.map +0 -1
  531. package/lib/Agent/chat/service.js +0 -79
  532. package/lib/Agent/chat/service.js.map +0 -1
  533. package/lib/Agent/chat/thread.d.ts +0 -13
  534. package/lib/Agent/chat/thread.d.ts.map +0 -1
  535. package/lib/Agent/chat/thread.js +0 -16
  536. package/lib/Agent/chat/thread.js.map +0 -1
  537. package/lib/Agent/coding/bash.d.ts +0 -36
  538. package/lib/Agent/coding/bash.d.ts.map +0 -1
  539. package/lib/Agent/coding/bash.js +0 -170
  540. package/lib/Agent/coding/bash.js.map +0 -1
  541. package/lib/Agent/coding/edit.d.ts +0 -31
  542. package/lib/Agent/coding/edit.d.ts.map +0 -1
  543. package/lib/Agent/coding/edit.js +0 -90
  544. package/lib/Agent/coding/edit.js.map +0 -1
  545. package/lib/Agent/coding/glob.d.ts +0 -23
  546. package/lib/Agent/coding/glob.d.ts.map +0 -1
  547. package/lib/Agent/coding/glob.js +0 -78
  548. package/lib/Agent/coding/glob.js.map +0 -1
  549. package/lib/Agent/coding/grep.d.ts +0 -26
  550. package/lib/Agent/coding/grep.d.ts.map +0 -1
  551. package/lib/Agent/coding/grep.js +0 -105
  552. package/lib/Agent/coding/grep.js.map +0 -1
  553. package/lib/Agent/coding/index.d.ts +0 -8
  554. package/lib/Agent/coding/index.d.ts.map +0 -1
  555. package/lib/Agent/coding/index.js +0 -8
  556. package/lib/Agent/coding/index.js.map +0 -1
  557. package/lib/Agent/coding/read.d.ts +0 -27
  558. package/lib/Agent/coding/read.d.ts.map +0 -1
  559. package/lib/Agent/coding/read.js +0 -89
  560. package/lib/Agent/coding/read.js.map +0 -1
  561. package/lib/Agent/coding/readlints.d.ts +0 -19
  562. package/lib/Agent/coding/readlints.d.ts.map +0 -1
  563. package/lib/Agent/coding/readlints.js +0 -53
  564. package/lib/Agent/coding/readlints.js.map +0 -1
  565. package/lib/Agent/coding/write.d.ts +0 -22
  566. package/lib/Agent/coding/write.d.ts.map +0 -1
  567. package/lib/Agent/coding/write.js +0 -53
  568. package/lib/Agent/coding/write.js.map +0 -1
  569. package/lib/Agent/fs/file.d.ts +0 -12
  570. package/lib/Agent/fs/file.d.ts.map +0 -1
  571. package/lib/Agent/fs/file.js +0 -8
  572. package/lib/Agent/fs/file.js.map +0 -1
  573. package/lib/Agent/fs/folder.d.ts +0 -5
  574. package/lib/Agent/fs/folder.d.ts.map +0 -1
  575. package/lib/Agent/fs/folder.js +0 -3
  576. package/lib/Agent/fs/folder.js.map +0 -1
  577. package/lib/Agent/index.d.ts +0 -9
  578. package/lib/Agent/index.d.ts.map +0 -1
  579. package/lib/Agent/index.js +0 -9
  580. package/lib/Agent/index.js.map +0 -1
  581. package/lib/Agent/llm/error.d.ts +0 -208
  582. package/lib/Agent/llm/error.d.ts.map +0 -1
  583. package/lib/Agent/llm/error.js +0 -209
  584. package/lib/Agent/llm/error.js.map +0 -1
  585. package/lib/Agent/llm/index.d.ts +0 -5
  586. package/lib/Agent/llm/index.d.ts.map +0 -1
  587. package/lib/Agent/llm/index.js +0 -5
  588. package/lib/Agent/llm/index.js.map +0 -1
  589. package/lib/Agent/llm/llm.d.ts +0 -32
  590. package/lib/Agent/llm/llm.d.ts.map +0 -1
  591. package/lib/Agent/llm/llm.js +0 -74
  592. package/lib/Agent/llm/llm.js.map +0 -1
  593. package/lib/Agent/llm/stream-collectors.d.ts +0 -46
  594. package/lib/Agent/llm/stream-collectors.d.ts.map +0 -1
  595. package/lib/Agent/llm/stream-collectors.js +0 -33
  596. package/lib/Agent/llm/stream-collectors.js.map +0 -1
  597. package/lib/Agent/llm/stream-text-part.d.ts +0 -5
  598. package/lib/Agent/llm/stream-text-part.d.ts.map +0 -1
  599. package/lib/Agent/llm/stream-text-part.js +0 -4
  600. package/lib/Agent/llm/stream-text-part.js.map +0 -1
  601. package/lib/Agent/lsp/client.d.ts +0 -122
  602. package/lib/Agent/lsp/client.d.ts.map +0 -1
  603. package/lib/Agent/lsp/client.js +0 -180
  604. package/lib/Agent/lsp/client.js.map +0 -1
  605. package/lib/Agent/lsp/diagnostics.d.ts +0 -16
  606. package/lib/Agent/lsp/diagnostics.d.ts.map +0 -1
  607. package/lib/Agent/lsp/diagnostics.js +0 -48
  608. package/lib/Agent/lsp/diagnostics.js.map +0 -1
  609. package/lib/Agent/lsp/jsonrpc.d.ts +0 -90
  610. package/lib/Agent/lsp/jsonrpc.d.ts.map +0 -1
  611. package/lib/Agent/lsp/jsonrpc.js +0 -178
  612. package/lib/Agent/lsp/jsonrpc.js.map +0 -1
  613. package/lib/Agent/lsp/manager.d.ts +0 -38
  614. package/lib/Agent/lsp/manager.d.ts.map +0 -1
  615. package/lib/Agent/lsp/manager.js +0 -98
  616. package/lib/Agent/lsp/manager.js.map +0 -1
  617. package/lib/Agent/lsp/servers.d.ts +0 -28
  618. package/lib/Agent/lsp/servers.d.ts.map +0 -1
  619. package/lib/Agent/lsp/servers.js +0 -21
  620. package/lib/Agent/lsp/servers.js.map +0 -1
  621. package/lib/Agent/process/driver.d.ts +0 -10
  622. package/lib/Agent/process/driver.d.ts.map +0 -1
  623. package/lib/Agent/process/driver.js +0 -153
  624. package/lib/Agent/process/driver.js.map +0 -1
  625. package/lib/Agent/process/issue-service.d.ts +0 -44
  626. package/lib/Agent/process/issue-service.d.ts.map +0 -1
  627. package/lib/Agent/process/issue-service.js +0 -28
  628. package/lib/Agent/process/issue-service.js.map +0 -1
  629. package/lib/Agent/process/issue-tools.d.ts +0 -28
  630. package/lib/Agent/process/issue-tools.d.ts.map +0 -1
  631. package/lib/Agent/process/issue-tools.js +0 -28
  632. package/lib/Agent/process/issue-tools.js.map +0 -1
  633. package/lib/Agent/process/issue.d.ts +0 -16
  634. package/lib/Agent/process/issue.d.ts.map +0 -1
  635. package/lib/Agent/process/issue.js +0 -17
  636. package/lib/Agent/process/issue.js.map +0 -1
  637. package/lib/Agent/process/organization.d.ts +0 -4
  638. package/lib/Agent/process/organization.d.ts.map +0 -1
  639. package/lib/Agent/process/organization.js +0 -3
  640. package/lib/Agent/process/organization.js.map +0 -1
  641. package/lib/Agent/process/process.d.ts +0 -5
  642. package/lib/Agent/process/process.d.ts.map +0 -1
  643. package/lib/Agent/process/process.js +0 -3
  644. package/lib/Agent/process/process.js.map +0 -1
  645. package/lib/Agent/process/reply.d.ts +0 -16
  646. package/lib/Agent/process/reply.d.ts.map +0 -1
  647. package/lib/Agent/process/reply.js +0 -18
  648. package/lib/Agent/process/reply.js.map +0 -1
  649. package/lib/Agent/process/task.d.ts +0 -25
  650. package/lib/Agent/process/task.d.ts.map +0 -1
  651. package/lib/Agent/process/task.js +0 -26
  652. package/lib/Agent/process/task.js.map +0 -1
  653. package/lib/Agent/tool/index.d.ts +0 -4
  654. package/lib/Agent/tool/index.d.ts.map +0 -1
  655. package/lib/Agent/tool/index.js +0 -4
  656. package/lib/Agent/tool/index.js.map +0 -1
  657. package/lib/Agent/tool/parameter.d.ts +0 -12
  658. package/lib/Agent/tool/parameter.d.ts.map +0 -1
  659. package/lib/Agent/tool/parameter.js +0 -6
  660. package/lib/Agent/tool/parameter.js.map +0 -1
  661. package/lib/Agent/tool/result.d.ts +0 -17
  662. package/lib/Agent/tool/result.d.ts.map +0 -1
  663. package/lib/Agent/tool/result.js +0 -6
  664. package/lib/Agent/tool/result.js.map +0 -1
  665. package/lib/Agent/tool/tool.d.ts +0 -32
  666. package/lib/Agent/tool/tool.d.ts.map +0 -1
  667. package/lib/Agent/tool/tool.js +0 -16
  668. package/lib/Agent/tool/tool.js.map +0 -1
  669. package/lib/Agent/util/command-validator.d.ts +0 -12
  670. package/lib/Agent/util/command-validator.d.ts.map +0 -1
  671. package/lib/Agent/util/command-validator.js +0 -74
  672. package/lib/Agent/util/command-validator.js.map +0 -1
  673. package/lib/Agent/util/exec.d.ts.map +0 -1
  674. package/lib/Agent/util/exec.js.map +0 -1
  675. package/lib/Agent/util/parser.d.ts +0 -5
  676. package/lib/Agent/util/parser.d.ts.map +0 -1
  677. package/lib/Agent/util/parser.js +0 -41
  678. package/lib/Agent/util/parser.js.map +0 -1
  679. package/lib/Agent/util/replace.d.ts +0 -38
  680. package/lib/Agent/util/replace.d.ts.map +0 -1
  681. package/lib/Agent/util/replace.js +0 -458
  682. package/lib/Agent/util/replace.js.map +0 -1
  683. package/lib/Agent/util/ripgrep.d.ts +0 -109
  684. package/lib/Agent/util/ripgrep.d.ts.map +0 -1
  685. package/lib/Agent/util/ripgrep.js +0 -221
  686. package/lib/Agent/util/ripgrep.js.map +0 -1
  687. package/lib/Neon/api.d.ts +0 -258
  688. package/lib/Neon/api.d.ts.map +0 -1
  689. package/lib/Neon/api.js +0 -215
  690. package/lib/Neon/api.js.map +0 -1
  691. package/src/Agent/Agent.ts +0 -26
  692. package/src/Agent/Aspect.ts +0 -173
  693. package/src/Agent/AspectGraph.ts +0 -98
  694. package/src/Agent/ContextPlugin.ts +0 -18
  695. package/src/Agent/Plugin.ts +0 -29
  696. package/src/Agent/chat/channel.ts +0 -26
  697. package/src/Agent/chat/event.ts +0 -43
  698. package/src/Agent/chat/message.ts +0 -35
  699. package/src/Agent/chat/service.ts +0 -133
  700. package/src/Agent/chat/thread.ts +0 -17
  701. package/src/Agent/coding/bash.ts +0 -197
  702. package/src/Agent/coding/edit.ts +0 -152
  703. package/src/Agent/coding/glob.ts +0 -96
  704. package/src/Agent/coding/grep.ts +0 -143
  705. package/src/Agent/coding/index.ts +0 -7
  706. package/src/Agent/coding/read.ts +0 -119
  707. package/src/Agent/coding/readlints.ts +0 -78
  708. package/src/Agent/coding/write.ts +0 -79
  709. package/src/Agent/fs/file.ts +0 -22
  710. package/src/Agent/fs/folder.ts +0 -16
  711. package/src/Agent/index.ts +0 -9
  712. package/src/Agent/llm/error.ts +0 -330
  713. package/src/Agent/llm/index.ts +0 -4
  714. package/src/Agent/llm/llm.ts +0 -131
  715. package/src/Agent/llm/stream-collectors.ts +0 -58
  716. package/src/Agent/llm/stream-text-part.ts +0 -7
  717. package/src/Agent/lsp/client.ts +0 -293
  718. package/src/Agent/lsp/diagnostics.ts +0 -64
  719. package/src/Agent/lsp/jsonrpc.ts +0 -317
  720. package/src/Agent/lsp/manager.ts +0 -213
  721. package/src/Agent/lsp/servers.ts +0 -37
  722. package/src/Agent/process/driver.ts +0 -168
  723. package/src/Agent/process/issue-service.ts +0 -48
  724. package/src/Agent/process/issue-tools.ts +0 -33
  725. package/src/Agent/process/issue.ts +0 -22
  726. package/src/Agent/process/organization.ts +0 -16
  727. package/src/Agent/process/process.ts +0 -16
  728. package/src/Agent/process/reply.ts +0 -21
  729. package/src/Agent/process/task.ts +0 -34
  730. package/src/Agent/tool/index.ts +0 -3
  731. package/src/Agent/tool/parameter.ts +0 -35
  732. package/src/Agent/tool/result.ts +0 -51
  733. package/src/Agent/tool/tool.ts +0 -74
  734. package/src/Agent/util/command-validator.ts +0 -98
  735. package/src/Agent/util/parser.ts +0 -39
  736. package/src/Agent/util/replace.ts +0 -559
  737. package/src/Agent/util/ripgrep.ts +0 -256
  738. package/src/Neon/api.ts +0 -579
  739. /package/lib/{Agent/util → Util}/exec.d.ts +0 -0
  740. /package/lib/{Agent/util → Util}/exec.js +0 -0
  741. /package/src/{Agent/util → Util}/exec.ts +0 -0
@@ -1,293 +0,0 @@
1
- import type { Subprocess } from "bun";
2
- import * as Effect from "effect/Effect";
3
- import * as HashMap from "effect/HashMap";
4
- import * as Option from "effect/Option";
5
- import * as PubSub from "effect/PubSub";
6
- import * as Ref from "effect/Ref";
7
- import * as S from "effect/Schema";
8
- import * as Stream from "effect/Stream";
9
- import { make as makeJsonRpc } from "./jsonrpc.ts";
10
-
11
- /**
12
- * LSP Position (0-indexed line and character)
13
- */
14
- export const Position = S.Struct({
15
- line: S.Number,
16
- character: S.Number,
17
- });
18
- export type Position = S.Schema.Type<typeof Position>;
19
-
20
- /**
21
- * LSP Range (start and end positions)
22
- */
23
- export const Range = S.Struct({
24
- start: Position,
25
- end: Position,
26
- });
27
- export type Range = S.Schema.Type<typeof Range>;
28
-
29
- /**
30
- * LSP Diagnostic severity
31
- */
32
- export const DiagnosticSeverity = {
33
- Error: 1,
34
- Warning: 2,
35
- Information: 3,
36
- Hint: 4,
37
- } as const;
38
-
39
- /**
40
- * LSP Diagnostic
41
- */
42
- export const Diagnostic = S.Struct({
43
- range: Range,
44
- severity: S.optional(S.Number),
45
- message: S.String,
46
- source: S.optional(S.String),
47
- code: S.optional(S.Union([S.String, S.Number])),
48
- });
49
- export type Diagnostic = S.Schema.Type<typeof Diagnostic>;
50
-
51
- /**
52
- * publishDiagnostics notification params
53
- */
54
- const PublishDiagnosticsParams = S.Struct({
55
- uri: S.String,
56
- diagnostics: S.Array(Diagnostic),
57
- });
58
-
59
- /**
60
- * A single LSP client connected to one server.
61
- */
62
- export interface LSPClient {
63
- readonly id: string;
64
-
65
- /**
66
- * Notify the server that a file has changed.
67
- */
68
- readonly notifyFileChanged: (
69
- path: string,
70
- content: string,
71
- ) => Effect.Effect<void>;
72
-
73
- /**
74
- * Wait for diagnostics for a file with debouncing.
75
- */
76
- readonly waitForDiagnostics: (
77
- path: string,
78
- timeout?: number,
79
- ) => Effect.Effect<Diagnostic[]>;
80
-
81
- /**
82
- * Get current diagnostics for a file.
83
- */
84
- readonly getDiagnostics: (path: string) => Effect.Effect<Diagnostic[]>;
85
-
86
- /**
87
- * Register a callback for when diagnostics are received.
88
- */
89
- readonly onDiagnostics: (
90
- callback: (uri: string, diagnostics: Diagnostic[]) => Effect.Effect<void>,
91
- ) => Effect.Effect<void>;
92
-
93
- /**
94
- * Shutdown the client.
95
- */
96
- readonly shutdown: Effect.Effect<void>;
97
- }
98
-
99
- /**
100
- * Create an LSP client from a subprocess.
101
- */
102
- export const makeLSPClient = (id: string, proc: Subprocess, root: string) =>
103
- Effect.gen(function* () {
104
- const rpc = yield* makeJsonRpc(proc);
105
-
106
- // Diagnostics storage: uri -> Diagnostic[]
107
- const diagnosticsMap = yield* Ref.make(
108
- HashMap.empty<string, Diagnostic[]>(),
109
- );
110
-
111
- // PubSub for diagnostic events
112
- const diagnosticsPubSub = yield* PubSub.unbounded<{ uri: string }>();
113
-
114
- // Track open files and their versions
115
- const openFiles = yield* Ref.make(HashMap.empty<string, number>());
116
-
117
- // External diagnostic callbacks
118
- const diagnosticCallbacks = yield* Ref.make<
119
- Array<(uri: string, diagnostics: Diagnostic[]) => Effect.Effect<void>>
120
- >([]);
121
-
122
- // Handle publishDiagnostics notifications
123
- yield* rpc.onNotification(
124
- "textDocument/publishDiagnostics",
125
- (params: unknown) =>
126
- Effect.gen(function* () {
127
- const decoded = yield* S.decodeUnknownEffect(
128
- PublishDiagnosticsParams,
129
- )(params).pipe(Effect.catch(() => Effect.succeed(null)));
130
-
131
- if (!decoded) return;
132
-
133
- // Convert readonly array to mutable for storage
134
- const diagnostics = [...decoded.diagnostics] as Diagnostic[];
135
-
136
- yield* Ref.update(diagnosticsMap, (m) =>
137
- HashMap.set(m, decoded.uri, diagnostics),
138
- );
139
-
140
- yield* PubSub.publish(diagnosticsPubSub, { uri: decoded.uri });
141
-
142
- // Call external callbacks
143
- const callbacks = yield* Ref.get(diagnosticCallbacks);
144
- yield* Effect.forEach(
145
- callbacks,
146
- (cb) => cb(decoded.uri, diagnostics),
147
- { concurrency: "unbounded" },
148
- ).pipe(Effect.catch(() => Effect.void));
149
- }),
150
- );
151
-
152
- // LSP initialize handshake
153
- yield* rpc.request("initialize", {
154
- processId: process.pid,
155
- rootUri: `file://${root}`,
156
- capabilities: {
157
- textDocument: {
158
- synchronization: {
159
- didOpen: true,
160
- didChange: true,
161
- willSave: false,
162
- willSaveWaitUntil: false,
163
- didSave: false,
164
- },
165
- publishDiagnostics: {
166
- relatedInformation: true,
167
- },
168
- },
169
- },
170
- });
171
-
172
- yield* rpc.notify("initialized", {});
173
-
174
- return {
175
- id,
176
-
177
- notifyFileChanged: (path: string, content: string) =>
178
- Effect.gen(function* () {
179
- const uri = `file://${path}`;
180
- const maybeVersion = yield* Ref.get(openFiles).pipe(
181
- Effect.map((m) => HashMap.get(m, path)),
182
- );
183
-
184
- if (Option.isNone(maybeVersion)) {
185
- // File not open yet, send didOpen
186
- yield* rpc.notify("textDocument/didOpen", {
187
- textDocument: {
188
- uri,
189
- languageId: getLanguageId(path),
190
- version: 0,
191
- text: content,
192
- },
193
- });
194
- yield* Ref.update(openFiles, (m) => HashMap.set(m, path, 0));
195
- } else {
196
- // File already open, send didChange with incremented version
197
- const newVersion = maybeVersion.value + 1;
198
- yield* rpc.notify("textDocument/didChange", {
199
- textDocument: { uri, version: newVersion },
200
- contentChanges: [{ text: content }],
201
- });
202
- yield* Ref.update(openFiles, (m) =>
203
- HashMap.set(m, path, newVersion),
204
- );
205
- }
206
- }),
207
-
208
- waitForDiagnostics: (path: string, timeout = 3000) =>
209
- Effect.gen(function* () {
210
- const uri = `file://${path}`;
211
-
212
- // Wait for diagnostics with 150ms debounce, scoped
213
- yield* Effect.scoped(
214
- Effect.gen(function* () {
215
- const subscription = yield* PubSub.subscribe(diagnosticsPubSub);
216
- yield* Stream.fromSubscription(subscription).pipe(
217
- Stream.filter((e) => e.uri === uri),
218
- Stream.debounce(150),
219
- Stream.take(1),
220
- Stream.runDrain,
221
- );
222
- }),
223
- ).pipe(
224
- Effect.timeout(timeout),
225
- Effect.catch(() => Effect.void),
226
- );
227
-
228
- // Return diagnostics for this file
229
- const diags = yield* Ref.get(diagnosticsMap).pipe(
230
- Effect.map((m) => HashMap.get(m, uri)),
231
- );
232
-
233
- return Option.getOrElse(diags, () => [] as Diagnostic[]);
234
- }),
235
-
236
- getDiagnostics: (path: string) =>
237
- Effect.gen(function* () {
238
- const uri = `file://${path}`;
239
- const diags = yield* Ref.get(diagnosticsMap).pipe(
240
- Effect.map((m) => HashMap.get(m, uri)),
241
- );
242
- return Option.getOrElse(diags, () => []);
243
- }),
244
-
245
- onDiagnostics: (
246
- callback: (
247
- uri: string,
248
- diagnostics: Diagnostic[],
249
- ) => Effect.Effect<void>,
250
- ) => Ref.update(diagnosticCallbacks, (cbs) => [...cbs, callback]),
251
-
252
- shutdown: Effect.gen(function* () {
253
- yield* rpc
254
- .request("shutdown", null)
255
- .pipe(Effect.catch(() => Effect.void));
256
- yield* rpc.notify("exit", null);
257
- yield* rpc.shutdown;
258
- }),
259
- };
260
- });
261
-
262
- /**
263
- * Get LSP language ID from file path.
264
- */
265
- const getLanguageId = (path: string): string => {
266
- const ext = path.split(".").pop()?.toLowerCase();
267
- switch (ext) {
268
- case "ts":
269
- case "mts":
270
- case "cts":
271
- return "typescript";
272
- case "tsx":
273
- case "mtsx":
274
- case "ctsx":
275
- return "typescriptreact";
276
- case "js":
277
- case "mjs":
278
- case "cjs":
279
- return "javascript";
280
- case "jsx":
281
- return "javascriptreact";
282
- case "json":
283
- return "json";
284
- case "vue":
285
- return "vue";
286
- case "svelte":
287
- return "svelte";
288
- case "astro":
289
- return "astro";
290
- default:
291
- return "plaintext";
292
- }
293
- };
@@ -1,64 +0,0 @@
1
- import * as Effect from "effect/Effect";
2
- import * as Option from "effect/Option";
3
- import { DiagnosticSeverity, type Diagnostic } from "./client.ts";
4
- import { LSPManager } from "./manager.ts";
5
-
6
- const MAX_DIAGNOSTICS_PER_FILE = 10;
7
-
8
- /**
9
- * Get diagnostics from LSP if available, otherwise return empty array.
10
- */
11
- export const getDiagnosticsIfAvailable = (
12
- filePath: string,
13
- content: string,
14
- ): Effect.Effect<Diagnostic[]> =>
15
- Effect.serviceOption(LSPManager).pipe(
16
- Effect.flatMap((maybeManager) => {
17
- if (Option.isNone(maybeManager)) {
18
- return Effect.succeed([] as Diagnostic[]);
19
- }
20
- const manager = maybeManager.value;
21
- return manager
22
- .notifyFileChanged(filePath, content)
23
- .pipe(Effect.andThen(manager.waitForDiagnostics(filePath)));
24
- }),
25
- Effect.catch(() => Effect.succeed([] as Diagnostic[])),
26
- );
27
-
28
- /**
29
- * Format a single diagnostic for display.
30
- */
31
- export const formatDiagnostic = (d: Diagnostic): string => {
32
- const severityMap: Record<number, string> = {
33
- [DiagnosticSeverity.Error]: "ERROR",
34
- [DiagnosticSeverity.Warning]: "WARN",
35
- [DiagnosticSeverity.Information]: "INFO",
36
- [DiagnosticSeverity.Hint]: "HINT",
37
- };
38
- const severity = severityMap[d.severity ?? DiagnosticSeverity.Error];
39
- const line = d.range.start.line + 1;
40
- const col = d.range.start.character + 1;
41
- return `${severity} [${line}:${col}] ${d.message}`;
42
- };
43
-
44
- /**
45
- * Format diagnostics for display (matching opencode format).
46
- * Only shows errors, limits output, and wraps in XML tags.
47
- */
48
- export const formatDiagnostics = (diagnostics: Diagnostic[]): string => {
49
- const errors = diagnostics.filter(
50
- (d) => d.severity === DiagnosticSeverity.Error,
51
- );
52
-
53
- if (errors.length === 0) {
54
- return "";
55
- }
56
-
57
- const limited = errors.slice(0, MAX_DIAGNOSTICS_PER_FILE);
58
- const suffix =
59
- errors.length > MAX_DIAGNOSTICS_PER_FILE
60
- ? `\n... and ${errors.length - MAX_DIAGNOSTICS_PER_FILE} more`
61
- : "";
62
-
63
- return `This file has errors, please fix\n<file_diagnostics>\n${limited.map(formatDiagnostic).join("\n")}${suffix}\n</file_diagnostics>`;
64
- };
@@ -1,317 +0,0 @@
1
- import type { Subprocess } from "bun";
2
- import * as Data from "effect/Data";
3
- import * as Deferred from "effect/Deferred";
4
- import * as Effect from "effect/Effect";
5
- import * as Fiber from "effect/Fiber";
6
- import * as HashMap from "effect/HashMap";
7
- import * as Option from "effect/Option";
8
- import * as Ref from "effect/Ref";
9
- import * as Stream from "effect/Stream";
10
-
11
- /**
12
- * JSON-RPC 2.0 message types
13
- */
14
- export interface JsonRpcRequest {
15
- jsonrpc: "2.0";
16
- id: number;
17
- method: string;
18
- params?: unknown;
19
- }
20
-
21
- export interface JsonRpcNotification {
22
- jsonrpc: "2.0";
23
- method: string;
24
- params?: unknown;
25
- }
26
-
27
- export interface JsonRpcResponse {
28
- jsonrpc: "2.0";
29
- id: number;
30
- result?: unknown;
31
- error?: {
32
- code: number;
33
- message: string;
34
- data?: unknown;
35
- };
36
- }
37
-
38
- export type JsonRpcMessage =
39
- | JsonRpcRequest
40
- | JsonRpcNotification
41
- | JsonRpcResponse;
42
-
43
- /**
44
- * Error from JSON-RPC protocol.
45
- */
46
- export class JsonRpcProtocolError extends Data.TaggedError(
47
- "JsonRpcProtocolError",
48
- )<{
49
- readonly code: number;
50
- readonly message: string;
51
- readonly data?: unknown;
52
- }> {}
53
-
54
- /**
55
- * Error parsing JSON-RPC messages from stream.
56
- */
57
- export class JsonRpcParseError extends Data.TaggedError("JsonRpcParseError")<{
58
- readonly cause: unknown;
59
- }> {}
60
-
61
- /**
62
- * Encode a JSON-RPC message with LSP wire format headers.
63
- * Format: Content-Length: <length>\r\n\r\n<json>
64
- */
65
- export const encodeMessage = (msg: JsonRpcMessage): Uint8Array => {
66
- const json = JSON.stringify(msg);
67
- const body = new TextEncoder().encode(json);
68
- const header = `Content-Length: ${body.byteLength}\r\n\r\n`;
69
- const headerBytes = new TextEncoder().encode(header);
70
-
71
- const result = new Uint8Array(headerBytes.length + body.length);
72
- result.set(headerBytes);
73
- result.set(body, headerBytes.length);
74
- return result;
75
- };
76
-
77
- /**
78
- * Parse LSP messages from a byte buffer.
79
- * Returns parsed messages and remaining buffer.
80
- * Works with bytes to correctly handle Content-Length (which is in bytes, not characters).
81
- */
82
- export const parseBuffer = (
83
- buffer: Uint8Array,
84
- ): { messages: JsonRpcMessage[]; remaining: Uint8Array<ArrayBuffer> } => {
85
- const messages: JsonRpcMessage[] = [];
86
- let offset = 0;
87
- const decoder = new TextDecoder();
88
-
89
- while (offset < buffer.length) {
90
- // Look for \r\n\r\n header terminator
91
- const headerEnd = findHeaderEnd(buffer, offset);
92
- if (headerEnd === -1) break;
93
-
94
- const headerPart = decoder.decode(buffer.subarray(offset, headerEnd));
95
- const match = /Content-Length:\s*(\d+)/i.exec(headerPart);
96
- if (!match) break;
97
-
98
- const contentLength = parseInt(match[1], 10);
99
- const bodyStart = headerEnd + 4; // Skip \r\n\r\n
100
- const bodyEnd = bodyStart + contentLength;
101
-
102
- // Check if we have the full body (in bytes)
103
- if (buffer.length < bodyEnd) break;
104
-
105
- const body = decoder.decode(buffer.subarray(bodyStart, bodyEnd));
106
- try {
107
- const parsed = JSON.parse(body) as JsonRpcMessage;
108
- messages.push(parsed);
109
- } catch {
110
- // Invalid JSON, skip this message
111
- }
112
-
113
- offset = bodyEnd;
114
- }
115
-
116
- // Create a new array for remaining bytes to ensure ArrayBuffer type
117
- const remainingLength = buffer.length - offset;
118
- const remaining = new Uint8Array(remainingLength);
119
- remaining.set(buffer.subarray(offset));
120
-
121
- return { messages, remaining };
122
- };
123
-
124
- /**
125
- * Find the index of \r\n\r\n in a byte array starting from offset.
126
- */
127
- const findHeaderEnd = (buffer: Uint8Array, offset: number): number => {
128
- const CR = 13; // \r
129
- const LF = 10; // \n
130
- for (let i = offset; i < buffer.length - 3; i++) {
131
- if (
132
- buffer[i] === CR &&
133
- buffer[i + 1] === LF &&
134
- buffer[i + 2] === CR &&
135
- buffer[i + 3] === LF
136
- ) {
137
- return i;
138
- }
139
- }
140
- return -1;
141
- };
142
-
143
- /**
144
- * Concatenate two Uint8Arrays.
145
- */
146
- const concatBytes = (a: Uint8Array, b: Uint8Array): Uint8Array<ArrayBuffer> => {
147
- const result = new Uint8Array(a.length + b.length);
148
- result.set(a);
149
- result.set(b, a.length);
150
- return result;
151
- };
152
-
153
- /**
154
- * Parse LSP messages from a ReadableStream.
155
- * Uses Stream.mapAccum to maintain buffer state across chunks.
156
- */
157
- const parseMessages = (stdout: ReadableStream<Uint8Array>) =>
158
- Stream.fromReadableStream({
159
- evaluate: () => stdout,
160
- onError: (cause) => new JsonRpcParseError({ cause }),
161
- }).pipe(
162
- Stream.mapAccum(
163
- () => new Uint8Array(0) as Uint8Array<ArrayBuffer>,
164
- (buffer, chunk): [Uint8Array<ArrayBuffer>, JsonRpcMessage[]] => {
165
- const combined = concatBytes(buffer, chunk);
166
- const { messages, remaining } = parseBuffer(combined);
167
- return [remaining, messages];
168
- },
169
- ),
170
- );
171
-
172
- /**
173
- * A JSON-RPC connection over stdio.
174
- */
175
- export interface JsonRpcConnection {
176
- /**
177
- * Send a request and wait for a response.
178
- */
179
- readonly request: <A>(
180
- method: string,
181
- params: unknown,
182
- ) => Effect.Effect<A, JsonRpcProtocolError>;
183
-
184
- /**
185
- * Send a notification (no response expected).
186
- */
187
- readonly notify: (method: string, params: unknown) => Effect.Effect<void>;
188
-
189
- /**
190
- * Register a handler for server notifications.
191
- */
192
- readonly onNotification: (
193
- method: string,
194
- handler: (params: unknown) => Effect.Effect<void>,
195
- ) => Effect.Effect<void>;
196
-
197
- /**
198
- * Shutdown the connection.
199
- */
200
- readonly shutdown: Effect.Effect<void>;
201
- }
202
-
203
- /**
204
- * Create a JSON-RPC connection from a subprocess.
205
- */
206
- export const make = (proc: Subprocess) =>
207
- Effect.gen(function* () {
208
- // Pending requests: id -> Deferred<response>
209
- const pending = yield* Ref.make(
210
- HashMap.empty<number, Deferred.Deferred<unknown, JsonRpcProtocolError>>(),
211
- );
212
- const nextId = yield* Ref.make(0);
213
-
214
- // Notification handlers
215
- const notificationHandlers = yield* Ref.make(
216
- HashMap.empty<string, (params: unknown) => Effect.Effect<void>>(),
217
- );
218
-
219
- // Background fiber reading stdout
220
- const reader = yield* parseMessages(
221
- proc.stdout as ReadableStream<Uint8Array>,
222
- ).pipe(
223
- Stream.runForEach((msg) =>
224
- Effect.gen(function* () {
225
- if ("id" in msg && ("result" in msg || "error" in msg)) {
226
- // Response to our request
227
- const response = msg as JsonRpcResponse;
228
- const maybeDeferred = yield* Ref.get(pending).pipe(
229
- Effect.map((m) => HashMap.get(m, response.id)),
230
- );
231
-
232
- if (Option.isSome(maybeDeferred)) {
233
- if (response.error) {
234
- yield* Deferred.fail(
235
- maybeDeferred.value,
236
- new JsonRpcProtocolError({
237
- code: response.error.code,
238
- message: response.error.message,
239
- data: response.error.data,
240
- }),
241
- );
242
- } else {
243
- yield* Deferred.succeed(maybeDeferred.value, response.result);
244
- }
245
- // Clean up the pending request
246
- yield* Ref.update(pending, (m) => HashMap.remove(m, response.id));
247
- }
248
- } else if ("method" in msg && !("id" in msg)) {
249
- // Notification from server
250
- const notification = msg as JsonRpcNotification;
251
- const maybeHandler = yield* Ref.get(notificationHandlers).pipe(
252
- Effect.map((m) => HashMap.get(m, notification.method)),
253
- );
254
-
255
- if (Option.isSome(maybeHandler)) {
256
- yield* maybeHandler.value(notification.params);
257
- }
258
- }
259
- }),
260
- ),
261
- Effect.catch((e) => Effect.logWarning(`JSON-RPC reader error: ${e}`)),
262
- Effect.forkDetach,
263
- );
264
-
265
- const connection: JsonRpcConnection = {
266
- request: <A>(method: string, params: unknown) =>
267
- Effect.gen(function* () {
268
- const id = yield* Ref.getAndUpdate(nextId, (n) => n + 1);
269
- const deferred = yield* Deferred.make<A, JsonRpcProtocolError>();
270
- yield* Ref.update(pending, (m) =>
271
- HashMap.set(
272
- m,
273
- id,
274
- deferred as Deferred.Deferred<unknown, JsonRpcProtocolError>,
275
- ),
276
- );
277
-
278
- yield* Effect.sync(() => {
279
- const msg: JsonRpcRequest = { jsonrpc: "2.0", id, method, params };
280
- const stdin = proc.stdin;
281
- if (stdin && typeof stdin === "object" && "write" in stdin) {
282
- (stdin as { write: (data: Uint8Array) => void }).write(
283
- encodeMessage(msg),
284
- );
285
- }
286
- });
287
-
288
- return yield* Deferred.await(deferred);
289
- }),
290
-
291
- notify: (method: string, params: unknown) =>
292
- Effect.sync(() => {
293
- const msg: JsonRpcNotification = { jsonrpc: "2.0", method, params };
294
- const stdin = proc.stdin;
295
- if (stdin && typeof stdin === "object" && "write" in stdin) {
296
- (stdin as { write: (data: Uint8Array) => void }).write(
297
- encodeMessage(msg),
298
- );
299
- }
300
- }),
301
-
302
- onNotification: (
303
- method: string,
304
- handler: (params: unknown) => Effect.Effect<void>,
305
- ) =>
306
- Ref.update(notificationHandlers, (m) =>
307
- HashMap.set(m, method, handler),
308
- ),
309
-
310
- shutdown: Effect.gen(function* () {
311
- yield* Fiber.interrupt(reader);
312
- yield* Effect.sync(() => proc.kill());
313
- }),
314
- };
315
-
316
- return connection;
317
- });