alchemy 2.0.0-beta.37 → 2.0.0-beta.39

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 (640) hide show
  1. package/bin/exec.js +488 -69
  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 +7 -11
  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 +222 -3
  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/AnalyticsEngineDatasetBinding.js +1 -1
  120. package/lib/Cloudflare/AnalyticsEngine/AnalyticsEngineDatasetBinding.js.map +1 -1
  121. package/lib/Cloudflare/Artifacts/ArtifactsBinding.js +1 -1
  122. package/lib/Cloudflare/Artifacts/ArtifactsBinding.js.map +1 -1
  123. package/lib/Cloudflare/CloudflareEnvironment.d.ts +1 -1
  124. package/lib/Cloudflare/Container/Container.js +0 -1
  125. package/lib/Cloudflare/Container/Container.js.map +1 -1
  126. package/lib/Cloudflare/Container/ContainerApplication.d.ts +1 -1
  127. package/lib/Cloudflare/Container/ContainerApplication.d.ts.map +1 -1
  128. package/lib/Cloudflare/Container/ContainerApplication.js +4 -6
  129. package/lib/Cloudflare/Container/ContainerApplication.js.map +1 -1
  130. package/lib/Cloudflare/Container/ContainerBinding.js +2 -2
  131. package/lib/Cloudflare/Container/ContainerBinding.js.map +1 -1
  132. package/lib/Cloudflare/D1/D1Database.d.ts +1 -1
  133. package/lib/Cloudflare/D1/D1SqlFile.d.ts +2 -2
  134. package/lib/Cloudflare/Email/EmailAddress.d.ts +45 -0
  135. package/lib/Cloudflare/Email/EmailAddress.d.ts.map +1 -0
  136. package/lib/Cloudflare/Email/EmailAddress.js +99 -0
  137. package/lib/Cloudflare/Email/EmailAddress.js.map +1 -0
  138. package/lib/Cloudflare/Email/EmailRouting.d.ts +42 -0
  139. package/lib/Cloudflare/Email/EmailRouting.d.ts.map +1 -0
  140. package/lib/Cloudflare/Email/EmailRouting.js +89 -0
  141. package/lib/Cloudflare/Email/EmailRouting.js.map +1 -0
  142. package/lib/Cloudflare/Email/EmailRule.d.ts +80 -0
  143. package/lib/Cloudflare/Email/EmailRule.d.ts.map +1 -0
  144. package/lib/Cloudflare/Email/EmailRule.js +110 -0
  145. package/lib/Cloudflare/Email/EmailRule.js.map +1 -0
  146. package/lib/Cloudflare/Email/SendEmail.d.ts +74 -0
  147. package/lib/Cloudflare/Email/SendEmail.d.ts.map +1 -0
  148. package/lib/Cloudflare/Email/SendEmail.js +19 -0
  149. package/lib/Cloudflare/Email/SendEmail.js.map +1 -0
  150. package/lib/Cloudflare/Email/SendEmailBinding.d.ts +64 -0
  151. package/lib/Cloudflare/Email/SendEmailBinding.d.ts.map +1 -0
  152. package/lib/Cloudflare/Email/SendEmailBinding.js +54 -0
  153. package/lib/Cloudflare/Email/SendEmailBinding.js.map +1 -0
  154. package/lib/Cloudflare/Email/index.d.ts +6 -0
  155. package/lib/Cloudflare/Email/index.d.ts.map +1 -0
  156. package/lib/Cloudflare/Email/index.js +6 -0
  157. package/lib/Cloudflare/Email/index.js.map +1 -0
  158. package/lib/Cloudflare/Hyperdrive/Hyperdrive.d.ts +1 -1
  159. package/lib/Cloudflare/Images/ImagesBinding.js +1 -1
  160. package/lib/Cloudflare/Images/ImagesBinding.js.map +1 -1
  161. package/lib/Cloudflare/KV/KVNamespaceBinding.js +1 -1
  162. package/lib/Cloudflare/KV/KVNamespaceBinding.js.map +1 -1
  163. package/lib/Cloudflare/Local/Sidecar.d.ts +1 -1
  164. package/lib/Cloudflare/Local/SidecarHandlers.d.ts +1 -1
  165. package/lib/Cloudflare/Local/SidecarServer.js +1 -1
  166. package/lib/Cloudflare/Local/SidecarServer.js.map +1 -1
  167. package/lib/Cloudflare/Providers.d.ts.map +1 -1
  168. package/lib/Cloudflare/Providers.js +6 -1
  169. package/lib/Cloudflare/Providers.js.map +1 -1
  170. package/lib/Cloudflare/Queue/QueueBinding.js +1 -1
  171. package/lib/Cloudflare/Queue/QueueBinding.js.map +1 -1
  172. package/lib/Cloudflare/R2/R2BucketBinding.js +1 -1
  173. package/lib/Cloudflare/R2/R2BucketBinding.js.map +1 -1
  174. package/lib/Cloudflare/SecretsStore/SecretBinding.js +1 -1
  175. package/lib/Cloudflare/SecretsStore/SecretBinding.js.map +1 -1
  176. package/lib/Cloudflare/StateStore/Api.d.ts +1 -1
  177. package/lib/Cloudflare/StateStore/State.d.ts +2 -2
  178. package/lib/Cloudflare/Workers/Assets.d.ts +2 -2
  179. package/lib/Cloudflare/Workers/Assets.d.ts.map +1 -1
  180. package/lib/Cloudflare/Workers/Assets.js +5 -4
  181. package/lib/Cloudflare/Workers/Assets.js.map +1 -1
  182. package/lib/Cloudflare/Workers/HttpServer.d.ts.map +1 -1
  183. package/lib/Cloudflare/Workers/HttpServer.js +25 -3
  184. package/lib/Cloudflare/Workers/HttpServer.js.map +1 -1
  185. package/lib/Cloudflare/Workers/InferEnv.d.ts +1 -1
  186. package/lib/Cloudflare/Workers/InferEnv.d.ts.map +1 -1
  187. package/lib/Cloudflare/Workers/Worker.d.ts +4 -3
  188. package/lib/Cloudflare/Workers/Worker.d.ts.map +1 -1
  189. package/lib/Cloudflare/Workers/Worker.js +67 -32
  190. package/lib/Cloudflare/Workers/Worker.js.map +1 -1
  191. package/lib/Cloudflare/Workers/WorkerBundle.d.ts +1 -1
  192. package/lib/Cloudflare/Workers/WorkerBundle.d.ts.map +1 -1
  193. package/lib/Cloudflare/Workers/WorkerBundle.js +4 -6
  194. package/lib/Cloudflare/Workers/WorkerBundle.js.map +1 -1
  195. package/lib/Cloudflare/Workers/WorkerName.d.ts +1 -1
  196. package/lib/Cloudflare/Workers/Workflow.js +2 -2
  197. package/lib/Cloudflare/Workers/Workflow.js.map +1 -1
  198. package/lib/Cloudflare/index.d.ts +1 -0
  199. package/lib/Cloudflare/index.d.ts.map +1 -1
  200. package/lib/Cloudflare/index.js +1 -0
  201. package/lib/Cloudflare/index.js.map +1 -1
  202. package/lib/Construct.d.ts +3 -3
  203. package/lib/Construct.d.ts.map +1 -1
  204. package/lib/Construct.js.map +1 -1
  205. package/lib/Deploy.d.ts +1 -1
  206. package/lib/Destroy.d.ts +1 -1
  207. package/lib/Destroy.d.ts.map +1 -1
  208. package/lib/Destroy.js +1 -0
  209. package/lib/Destroy.js.map +1 -1
  210. package/lib/Drizzle/Providers.d.ts +1 -1
  211. package/lib/Drizzle/Schema.d.ts +1 -1
  212. package/lib/GitHub/Providers.d.ts +1 -1
  213. package/lib/Http.d.ts +1 -1
  214. package/lib/Http.d.ts.map +1 -1
  215. package/lib/Http.js +1 -1
  216. package/lib/Http.js.map +1 -1
  217. package/lib/Namespace.d.ts.map +1 -1
  218. package/lib/Namespace.js +3 -4
  219. package/lib/Namespace.js.map +1 -1
  220. package/lib/Neon/Branch.d.ts +2 -2
  221. package/lib/Neon/Branch.d.ts.map +1 -1
  222. package/lib/Neon/Branch.js +59 -27
  223. package/lib/Neon/Branch.js.map +1 -1
  224. package/lib/Neon/Credentials.d.ts +2 -2
  225. package/lib/Neon/Credentials.d.ts.map +1 -1
  226. package/lib/Neon/Credentials.js +2 -2
  227. package/lib/Neon/Credentials.js.map +1 -1
  228. package/lib/Neon/NeonEnvironment.d.ts +1 -1
  229. package/lib/Neon/Project.d.ts +25 -1
  230. package/lib/Neon/Project.d.ts.map +1 -1
  231. package/lib/Neon/Project.js +121 -42
  232. package/lib/Neon/Project.js.map +1 -1
  233. package/lib/Neon/Providers.d.ts +1 -1
  234. package/lib/Neon/SqlFile.d.ts +2 -2
  235. package/lib/Output.d.ts +3 -4
  236. package/lib/Output.d.ts.map +1 -1
  237. package/lib/Output.js +7 -4
  238. package/lib/Output.js.map +1 -1
  239. package/lib/PhysicalName.d.ts +1 -1
  240. package/lib/Plan.d.ts +36 -1
  241. package/lib/Plan.d.ts.map +1 -1
  242. package/lib/Plan.js +197 -31
  243. package/lib/Plan.js.map +1 -1
  244. package/lib/Platform.js +6 -6
  245. package/lib/Platform.js.map +1 -1
  246. package/lib/Provider.d.ts +1 -1
  247. package/lib/Provider.d.ts.map +1 -1
  248. package/lib/Provider.js +1 -1
  249. package/lib/Provider.js.map +1 -1
  250. package/lib/Random.d.ts +1 -1
  251. package/lib/Random.d.ts.map +1 -1
  252. package/lib/Random.js +1 -1
  253. package/lib/Random.js.map +1 -1
  254. package/lib/Resource.d.ts.map +1 -1
  255. package/lib/Resource.js +2 -25
  256. package/lib/Resource.js.map +1 -1
  257. package/lib/Runtime.d.ts +24 -0
  258. package/lib/Runtime.d.ts.map +1 -0
  259. package/lib/Runtime.js +31 -0
  260. package/lib/Runtime.js.map +1 -0
  261. package/lib/Secret.js +1 -1
  262. package/lib/Secret.js.map +1 -1
  263. package/lib/Sidecar/RpcClient.d.ts +1 -1
  264. package/lib/Sidecar/RpcPaths.d.ts +1 -1
  265. package/lib/Sidecar/RpcServer.d.ts +1 -1
  266. package/lib/Sidecar/RpcServices.d.ts +1 -1
  267. package/lib/Stack.d.ts +7 -2
  268. package/lib/Stack.d.ts.map +1 -1
  269. package/lib/Stack.js +4 -4
  270. package/lib/Stack.js.map +1 -1
  271. package/lib/State/ActionState.d.ts +48 -0
  272. package/lib/State/ActionState.d.ts.map +1 -0
  273. package/lib/State/ActionState.js +1 -0
  274. package/lib/State/ActionState.js.map +1 -0
  275. package/lib/State/HttpStateStore.d.ts.map +1 -1
  276. package/lib/State/HttpStateStore.js +1 -1
  277. package/lib/State/HttpStateStore.js.map +1 -1
  278. package/lib/State/InMemoryState.d.ts.map +1 -1
  279. package/lib/State/InMemoryState.js.map +1 -1
  280. package/lib/State/LocalState.d.ts +2 -2
  281. package/lib/State/ResourceState.d.ts +5 -0
  282. package/lib/State/ResourceState.d.ts.map +1 -1
  283. package/lib/State/State.d.ts +10 -2
  284. package/lib/State/State.d.ts.map +1 -1
  285. package/lib/State/State.js +2 -0
  286. package/lib/State/State.js.map +1 -1
  287. package/lib/State/index.d.ts +1 -0
  288. package/lib/State/index.d.ts.map +1 -1
  289. package/lib/State/index.js +1 -0
  290. package/lib/State/index.js.map +1 -1
  291. package/lib/Test/Core.d.ts +2 -2
  292. package/lib/Test/Core.d.ts.map +1 -1
  293. package/lib/Test/Core.js +4 -1
  294. package/lib/Test/Core.js.map +1 -1
  295. package/lib/Util/FileLogger.d.ts +1 -1
  296. package/lib/Util/effect.js +4 -4
  297. package/lib/Util/effect.js.map +1 -1
  298. package/lib/Util/exec.d.ts.map +1 -0
  299. package/lib/Util/exec.js.map +1 -0
  300. package/lib/Util/hash.d.ts +8 -0
  301. package/lib/Util/hash.d.ts.map +1 -0
  302. package/lib/Util/hash.js +11 -0
  303. package/lib/Util/hash.js.map +1 -0
  304. package/lib/Util/ignore.d.ts +40 -0
  305. package/lib/Util/ignore.d.ts.map +1 -0
  306. package/lib/Util/ignore.js +591 -0
  307. package/lib/Util/ignore.js.map +1 -0
  308. package/lib/index.d.ts +1 -0
  309. package/lib/index.d.ts.map +1 -1
  310. package/lib/index.js +1 -0
  311. package/lib/index.js.map +1 -1
  312. package/lib/tsconfig.test.tsbuildinfo +1 -1
  313. package/package.json +22 -28
  314. package/src/AWS/Credentials.ts +1 -2
  315. package/src/AWS/DynamoDB/Stream.ts +1 -4
  316. package/src/AWS/EC2/hosted.ts +14 -16
  317. package/src/AWS/ECS/Task.ts +14 -16
  318. package/src/AWS/Endpoint.ts +2 -5
  319. package/src/AWS/EventBridge/EventSource.ts +1 -4
  320. package/src/AWS/Kinesis/StreamEventSource.ts +1 -4
  321. package/src/AWS/Lambda/Function.ts +31 -35
  322. package/src/AWS/Providers.ts +22 -3
  323. package/src/AWS/Region.ts +2 -3
  324. package/src/AWS/S3/Bucket.ts +7 -2
  325. package/src/AWS/S3/BucketNotifications.ts +1 -4
  326. package/src/AWS/SNS/TopicEventSource.ts +1 -4
  327. package/src/AWS/SQS/Queue.ts +40 -6
  328. package/src/Action.ts +280 -0
  329. package/src/Apply.ts +351 -23
  330. package/src/Artifacts.ts +2 -4
  331. package/src/Auth/AuthProvider.ts +1 -1
  332. package/src/Auth/Env.ts +12 -20
  333. package/src/Binding.ts +5 -9
  334. package/src/Bundle/Docker.ts +1 -1
  335. package/src/Cli/Event.ts +4 -0
  336. package/src/Cli/NamespaceTree.ts +52 -5
  337. package/src/Cli/commands/_shared.ts +2 -2
  338. package/src/Cli/commands/deploy.ts +1 -1
  339. package/src/Cli/commands/logs.ts +4 -4
  340. package/src/Cli/commands/tail.ts +4 -4
  341. package/src/Cli/tui/components/Plan.tsx +65 -17
  342. package/src/Cli/tui/components/PlanProgress.tsx +142 -32
  343. package/src/Cloudflare/Access.ts +1 -1
  344. package/src/Cloudflare/AnalyticsEngine/AnalyticsEngineDatasetBinding.ts +1 -1
  345. package/src/Cloudflare/Artifacts/ArtifactsBinding.ts +1 -1
  346. package/src/Cloudflare/Container/Container.ts +1 -1
  347. package/src/Cloudflare/Container/ContainerApplication.ts +4 -6
  348. package/src/Cloudflare/Container/ContainerBinding.ts +2 -2
  349. package/src/Cloudflare/Email/EmailAddress.ts +155 -0
  350. package/src/Cloudflare/Email/EmailRouting.ts +138 -0
  351. package/src/Cloudflare/Email/EmailRule.ts +210 -0
  352. package/src/Cloudflare/Email/SendEmail.ts +95 -0
  353. package/src/Cloudflare/Email/SendEmailBinding.ts +124 -0
  354. package/src/Cloudflare/Email/index.ts +5 -0
  355. package/src/Cloudflare/Images/ImagesBinding.ts +1 -1
  356. package/src/Cloudflare/KV/KVNamespaceBinding.ts +1 -1
  357. package/src/Cloudflare/Local/SidecarServer.ts +1 -1
  358. package/src/Cloudflare/Providers.ts +9 -0
  359. package/src/Cloudflare/Queue/QueueBinding.ts +1 -1
  360. package/src/Cloudflare/R2/R2BucketBinding.ts +1 -1
  361. package/src/Cloudflare/SecretsStore/SecretBinding.ts +1 -1
  362. package/src/Cloudflare/Workers/Assets.ts +5 -6
  363. package/src/Cloudflare/Workers/HttpServer.ts +37 -5
  364. package/src/Cloudflare/Workers/InferEnv.ts +15 -11
  365. package/src/Cloudflare/Workers/Worker.ts +78 -36
  366. package/src/Cloudflare/Workers/WorkerBundle.ts +4 -6
  367. package/src/Cloudflare/Workers/Workflow.ts +2 -2
  368. package/src/Cloudflare/index.ts +1 -0
  369. package/src/Construct.ts +3 -7
  370. package/src/Destroy.ts +1 -0
  371. package/src/Http.ts +1 -1
  372. package/src/Namespace.ts +4 -4
  373. package/src/Neon/Branch.ts +93 -59
  374. package/src/Neon/Credentials.ts +2 -2
  375. package/src/Neon/Project.ts +193 -64
  376. package/src/Output.ts +9 -7
  377. package/src/Plan.ts +303 -53
  378. package/src/Platform.ts +7 -7
  379. package/src/Provider.ts +8 -3
  380. package/src/Random.ts +1 -1
  381. package/src/Resource.ts +2 -25
  382. package/src/Runtime.ts +38 -0
  383. package/src/Secret.ts +1 -1
  384. package/src/Stack.ts +10 -6
  385. package/src/State/ActionState.ts +51 -0
  386. package/src/State/HttpStateStore.ts +6 -2
  387. package/src/State/InMemoryState.ts +3 -3
  388. package/src/State/ResourceState.ts +5 -0
  389. package/src/State/State.ts +17 -2
  390. package/src/State/index.ts +1 -0
  391. package/src/Test/Core.ts +4 -3
  392. package/src/Util/effect.ts +4 -4
  393. package/src/Util/hash.ts +14 -0
  394. package/src/Util/ignore.ts +815 -0
  395. package/src/index.ts +6 -0
  396. package/lib/Agent/Agent.d.ts +0 -9
  397. package/lib/Agent/Agent.d.ts.map +0 -1
  398. package/lib/Agent/Agent.js +0 -10
  399. package/lib/Agent/Agent.js.map +0 -1
  400. package/lib/Agent/Aspect.d.ts +0 -51
  401. package/lib/Agent/Aspect.d.ts.map +0 -1
  402. package/lib/Agent/Aspect.js +0 -45
  403. package/lib/Agent/Aspect.js.map +0 -1
  404. package/lib/Agent/AspectGraph.d.ts +0 -45
  405. package/lib/Agent/AspectGraph.d.ts.map +0 -1
  406. package/lib/Agent/AspectGraph.js +0 -39
  407. package/lib/Agent/AspectGraph.js.map +0 -1
  408. package/lib/Agent/ContextPlugin.d.ts +0 -8
  409. package/lib/Agent/ContextPlugin.d.ts.map +0 -1
  410. package/lib/Agent/ContextPlugin.js +0 -3
  411. package/lib/Agent/ContextPlugin.js.map +0 -1
  412. package/lib/Agent/Plugin.d.ts +0 -18
  413. package/lib/Agent/Plugin.d.ts.map +0 -1
  414. package/lib/Agent/Plugin.js +0 -8
  415. package/lib/Agent/Plugin.js.map +0 -1
  416. package/lib/Agent/chat/channel.d.ts +0 -9
  417. package/lib/Agent/chat/channel.d.ts.map +0 -1
  418. package/lib/Agent/chat/channel.js +0 -10
  419. package/lib/Agent/chat/channel.js.map +0 -1
  420. package/lib/Agent/chat/event.d.ts +0 -32
  421. package/lib/Agent/chat/event.d.ts.map +0 -1
  422. package/lib/Agent/chat/event.js +0 -32
  423. package/lib/Agent/chat/event.js.map +0 -1
  424. package/lib/Agent/chat/message.d.ts +0 -22
  425. package/lib/Agent/chat/message.d.ts.map +0 -1
  426. package/lib/Agent/chat/message.js +0 -31
  427. package/lib/Agent/chat/message.js.map +0 -1
  428. package/lib/Agent/chat/service.d.ts +0 -102
  429. package/lib/Agent/chat/service.d.ts.map +0 -1
  430. package/lib/Agent/chat/service.js +0 -79
  431. package/lib/Agent/chat/service.js.map +0 -1
  432. package/lib/Agent/chat/thread.d.ts +0 -13
  433. package/lib/Agent/chat/thread.d.ts.map +0 -1
  434. package/lib/Agent/chat/thread.js +0 -16
  435. package/lib/Agent/chat/thread.js.map +0 -1
  436. package/lib/Agent/coding/bash.d.ts +0 -36
  437. package/lib/Agent/coding/bash.d.ts.map +0 -1
  438. package/lib/Agent/coding/bash.js +0 -170
  439. package/lib/Agent/coding/bash.js.map +0 -1
  440. package/lib/Agent/coding/edit.d.ts +0 -31
  441. package/lib/Agent/coding/edit.d.ts.map +0 -1
  442. package/lib/Agent/coding/edit.js +0 -90
  443. package/lib/Agent/coding/edit.js.map +0 -1
  444. package/lib/Agent/coding/glob.d.ts +0 -23
  445. package/lib/Agent/coding/glob.d.ts.map +0 -1
  446. package/lib/Agent/coding/glob.js +0 -78
  447. package/lib/Agent/coding/glob.js.map +0 -1
  448. package/lib/Agent/coding/grep.d.ts +0 -26
  449. package/lib/Agent/coding/grep.d.ts.map +0 -1
  450. package/lib/Agent/coding/grep.js +0 -105
  451. package/lib/Agent/coding/grep.js.map +0 -1
  452. package/lib/Agent/coding/index.d.ts +0 -8
  453. package/lib/Agent/coding/index.d.ts.map +0 -1
  454. package/lib/Agent/coding/index.js +0 -8
  455. package/lib/Agent/coding/index.js.map +0 -1
  456. package/lib/Agent/coding/read.d.ts +0 -27
  457. package/lib/Agent/coding/read.d.ts.map +0 -1
  458. package/lib/Agent/coding/read.js +0 -89
  459. package/lib/Agent/coding/read.js.map +0 -1
  460. package/lib/Agent/coding/readlints.d.ts +0 -19
  461. package/lib/Agent/coding/readlints.d.ts.map +0 -1
  462. package/lib/Agent/coding/readlints.js +0 -53
  463. package/lib/Agent/coding/readlints.js.map +0 -1
  464. package/lib/Agent/coding/write.d.ts +0 -22
  465. package/lib/Agent/coding/write.d.ts.map +0 -1
  466. package/lib/Agent/coding/write.js +0 -53
  467. package/lib/Agent/coding/write.js.map +0 -1
  468. package/lib/Agent/fs/file.d.ts +0 -12
  469. package/lib/Agent/fs/file.d.ts.map +0 -1
  470. package/lib/Agent/fs/file.js +0 -8
  471. package/lib/Agent/fs/file.js.map +0 -1
  472. package/lib/Agent/fs/folder.d.ts +0 -5
  473. package/lib/Agent/fs/folder.d.ts.map +0 -1
  474. package/lib/Agent/fs/folder.js +0 -3
  475. package/lib/Agent/fs/folder.js.map +0 -1
  476. package/lib/Agent/index.d.ts +0 -9
  477. package/lib/Agent/index.d.ts.map +0 -1
  478. package/lib/Agent/index.js +0 -9
  479. package/lib/Agent/index.js.map +0 -1
  480. package/lib/Agent/llm/error.d.ts +0 -208
  481. package/lib/Agent/llm/error.d.ts.map +0 -1
  482. package/lib/Agent/llm/error.js +0 -209
  483. package/lib/Agent/llm/error.js.map +0 -1
  484. package/lib/Agent/llm/index.d.ts +0 -5
  485. package/lib/Agent/llm/index.d.ts.map +0 -1
  486. package/lib/Agent/llm/index.js +0 -5
  487. package/lib/Agent/llm/index.js.map +0 -1
  488. package/lib/Agent/llm/llm.d.ts +0 -32
  489. package/lib/Agent/llm/llm.d.ts.map +0 -1
  490. package/lib/Agent/llm/llm.js +0 -74
  491. package/lib/Agent/llm/llm.js.map +0 -1
  492. package/lib/Agent/llm/stream-collectors.d.ts +0 -46
  493. package/lib/Agent/llm/stream-collectors.d.ts.map +0 -1
  494. package/lib/Agent/llm/stream-collectors.js +0 -33
  495. package/lib/Agent/llm/stream-collectors.js.map +0 -1
  496. package/lib/Agent/llm/stream-text-part.d.ts +0 -5
  497. package/lib/Agent/llm/stream-text-part.d.ts.map +0 -1
  498. package/lib/Agent/llm/stream-text-part.js +0 -4
  499. package/lib/Agent/llm/stream-text-part.js.map +0 -1
  500. package/lib/Agent/lsp/client.d.ts +0 -122
  501. package/lib/Agent/lsp/client.d.ts.map +0 -1
  502. package/lib/Agent/lsp/client.js +0 -180
  503. package/lib/Agent/lsp/client.js.map +0 -1
  504. package/lib/Agent/lsp/diagnostics.d.ts +0 -16
  505. package/lib/Agent/lsp/diagnostics.d.ts.map +0 -1
  506. package/lib/Agent/lsp/diagnostics.js +0 -48
  507. package/lib/Agent/lsp/diagnostics.js.map +0 -1
  508. package/lib/Agent/lsp/jsonrpc.d.ts +0 -90
  509. package/lib/Agent/lsp/jsonrpc.d.ts.map +0 -1
  510. package/lib/Agent/lsp/jsonrpc.js +0 -178
  511. package/lib/Agent/lsp/jsonrpc.js.map +0 -1
  512. package/lib/Agent/lsp/manager.d.ts +0 -38
  513. package/lib/Agent/lsp/manager.d.ts.map +0 -1
  514. package/lib/Agent/lsp/manager.js +0 -98
  515. package/lib/Agent/lsp/manager.js.map +0 -1
  516. package/lib/Agent/lsp/servers.d.ts +0 -28
  517. package/lib/Agent/lsp/servers.d.ts.map +0 -1
  518. package/lib/Agent/lsp/servers.js +0 -21
  519. package/lib/Agent/lsp/servers.js.map +0 -1
  520. package/lib/Agent/process/driver.d.ts +0 -10
  521. package/lib/Agent/process/driver.d.ts.map +0 -1
  522. package/lib/Agent/process/driver.js +0 -153
  523. package/lib/Agent/process/driver.js.map +0 -1
  524. package/lib/Agent/process/issue-service.d.ts +0 -44
  525. package/lib/Agent/process/issue-service.d.ts.map +0 -1
  526. package/lib/Agent/process/issue-service.js +0 -28
  527. package/lib/Agent/process/issue-service.js.map +0 -1
  528. package/lib/Agent/process/issue-tools.d.ts +0 -28
  529. package/lib/Agent/process/issue-tools.d.ts.map +0 -1
  530. package/lib/Agent/process/issue-tools.js +0 -28
  531. package/lib/Agent/process/issue-tools.js.map +0 -1
  532. package/lib/Agent/process/issue.d.ts +0 -16
  533. package/lib/Agent/process/issue.d.ts.map +0 -1
  534. package/lib/Agent/process/issue.js +0 -17
  535. package/lib/Agent/process/issue.js.map +0 -1
  536. package/lib/Agent/process/organization.d.ts +0 -4
  537. package/lib/Agent/process/organization.d.ts.map +0 -1
  538. package/lib/Agent/process/organization.js +0 -3
  539. package/lib/Agent/process/organization.js.map +0 -1
  540. package/lib/Agent/process/process.d.ts +0 -5
  541. package/lib/Agent/process/process.d.ts.map +0 -1
  542. package/lib/Agent/process/process.js +0 -3
  543. package/lib/Agent/process/process.js.map +0 -1
  544. package/lib/Agent/process/reply.d.ts +0 -16
  545. package/lib/Agent/process/reply.d.ts.map +0 -1
  546. package/lib/Agent/process/reply.js +0 -18
  547. package/lib/Agent/process/reply.js.map +0 -1
  548. package/lib/Agent/process/task.d.ts +0 -25
  549. package/lib/Agent/process/task.d.ts.map +0 -1
  550. package/lib/Agent/process/task.js +0 -26
  551. package/lib/Agent/process/task.js.map +0 -1
  552. package/lib/Agent/tool/index.d.ts +0 -4
  553. package/lib/Agent/tool/index.d.ts.map +0 -1
  554. package/lib/Agent/tool/index.js +0 -4
  555. package/lib/Agent/tool/index.js.map +0 -1
  556. package/lib/Agent/tool/parameter.d.ts +0 -12
  557. package/lib/Agent/tool/parameter.d.ts.map +0 -1
  558. package/lib/Agent/tool/parameter.js +0 -6
  559. package/lib/Agent/tool/parameter.js.map +0 -1
  560. package/lib/Agent/tool/result.d.ts +0 -17
  561. package/lib/Agent/tool/result.d.ts.map +0 -1
  562. package/lib/Agent/tool/result.js +0 -6
  563. package/lib/Agent/tool/result.js.map +0 -1
  564. package/lib/Agent/tool/tool.d.ts +0 -32
  565. package/lib/Agent/tool/tool.d.ts.map +0 -1
  566. package/lib/Agent/tool/tool.js +0 -16
  567. package/lib/Agent/tool/tool.js.map +0 -1
  568. package/lib/Agent/util/command-validator.d.ts +0 -12
  569. package/lib/Agent/util/command-validator.d.ts.map +0 -1
  570. package/lib/Agent/util/command-validator.js +0 -74
  571. package/lib/Agent/util/command-validator.js.map +0 -1
  572. package/lib/Agent/util/exec.d.ts.map +0 -1
  573. package/lib/Agent/util/exec.js.map +0 -1
  574. package/lib/Agent/util/parser.d.ts +0 -5
  575. package/lib/Agent/util/parser.d.ts.map +0 -1
  576. package/lib/Agent/util/parser.js +0 -41
  577. package/lib/Agent/util/parser.js.map +0 -1
  578. package/lib/Agent/util/replace.d.ts +0 -38
  579. package/lib/Agent/util/replace.d.ts.map +0 -1
  580. package/lib/Agent/util/replace.js +0 -458
  581. package/lib/Agent/util/replace.js.map +0 -1
  582. package/lib/Agent/util/ripgrep.d.ts +0 -109
  583. package/lib/Agent/util/ripgrep.d.ts.map +0 -1
  584. package/lib/Agent/util/ripgrep.js +0 -221
  585. package/lib/Agent/util/ripgrep.js.map +0 -1
  586. package/lib/Neon/api.d.ts +0 -258
  587. package/lib/Neon/api.d.ts.map +0 -1
  588. package/lib/Neon/api.js +0 -215
  589. package/lib/Neon/api.js.map +0 -1
  590. package/src/Agent/Agent.ts +0 -26
  591. package/src/Agent/Aspect.ts +0 -173
  592. package/src/Agent/AspectGraph.ts +0 -98
  593. package/src/Agent/ContextPlugin.ts +0 -18
  594. package/src/Agent/Plugin.ts +0 -29
  595. package/src/Agent/chat/channel.ts +0 -26
  596. package/src/Agent/chat/event.ts +0 -43
  597. package/src/Agent/chat/message.ts +0 -35
  598. package/src/Agent/chat/service.ts +0 -133
  599. package/src/Agent/chat/thread.ts +0 -17
  600. package/src/Agent/coding/bash.ts +0 -197
  601. package/src/Agent/coding/edit.ts +0 -152
  602. package/src/Agent/coding/glob.ts +0 -96
  603. package/src/Agent/coding/grep.ts +0 -143
  604. package/src/Agent/coding/index.ts +0 -7
  605. package/src/Agent/coding/read.ts +0 -119
  606. package/src/Agent/coding/readlints.ts +0 -78
  607. package/src/Agent/coding/write.ts +0 -79
  608. package/src/Agent/fs/file.ts +0 -22
  609. package/src/Agent/fs/folder.ts +0 -16
  610. package/src/Agent/index.ts +0 -9
  611. package/src/Agent/llm/error.ts +0 -330
  612. package/src/Agent/llm/index.ts +0 -4
  613. package/src/Agent/llm/llm.ts +0 -131
  614. package/src/Agent/llm/stream-collectors.ts +0 -58
  615. package/src/Agent/llm/stream-text-part.ts +0 -7
  616. package/src/Agent/lsp/client.ts +0 -293
  617. package/src/Agent/lsp/diagnostics.ts +0 -64
  618. package/src/Agent/lsp/jsonrpc.ts +0 -317
  619. package/src/Agent/lsp/manager.ts +0 -213
  620. package/src/Agent/lsp/servers.ts +0 -37
  621. package/src/Agent/process/driver.ts +0 -168
  622. package/src/Agent/process/issue-service.ts +0 -48
  623. package/src/Agent/process/issue-tools.ts +0 -33
  624. package/src/Agent/process/issue.ts +0 -22
  625. package/src/Agent/process/organization.ts +0 -16
  626. package/src/Agent/process/process.ts +0 -16
  627. package/src/Agent/process/reply.ts +0 -21
  628. package/src/Agent/process/task.ts +0 -34
  629. package/src/Agent/tool/index.ts +0 -3
  630. package/src/Agent/tool/parameter.ts +0 -35
  631. package/src/Agent/tool/result.ts +0 -51
  632. package/src/Agent/tool/tool.ts +0 -74
  633. package/src/Agent/util/command-validator.ts +0 -98
  634. package/src/Agent/util/parser.ts +0 -39
  635. package/src/Agent/util/replace.ts +0 -559
  636. package/src/Agent/util/ripgrep.ts +0 -256
  637. package/src/Neon/api.ts +0 -579
  638. /package/lib/{Agent/util → Util}/exec.d.ts +0 -0
  639. /package/lib/{Agent/util → Util}/exec.js +0 -0
  640. /package/src/{Agent/util → Util}/exec.ts +0 -0
@@ -1,178 +0,0 @@
1
- import * as Data from "effect/Data";
2
- import * as Deferred from "effect/Deferred";
3
- import * as Effect from "effect/Effect";
4
- import * as Fiber from "effect/Fiber";
5
- import * as HashMap from "effect/HashMap";
6
- import * as Option from "effect/Option";
7
- import * as Ref from "effect/Ref";
8
- import * as Stream from "effect/Stream";
9
- /**
10
- * Error from JSON-RPC protocol.
11
- */
12
- export class JsonRpcProtocolError extends Data.TaggedError("JsonRpcProtocolError") {
13
- }
14
- /**
15
- * Error parsing JSON-RPC messages from stream.
16
- */
17
- export class JsonRpcParseError extends Data.TaggedError("JsonRpcParseError") {
18
- }
19
- /**
20
- * Encode a JSON-RPC message with LSP wire format headers.
21
- * Format: Content-Length: <length>\r\n\r\n<json>
22
- */
23
- export const encodeMessage = (msg) => {
24
- const json = JSON.stringify(msg);
25
- const body = new TextEncoder().encode(json);
26
- const header = `Content-Length: ${body.byteLength}\r\n\r\n`;
27
- const headerBytes = new TextEncoder().encode(header);
28
- const result = new Uint8Array(headerBytes.length + body.length);
29
- result.set(headerBytes);
30
- result.set(body, headerBytes.length);
31
- return result;
32
- };
33
- /**
34
- * Parse LSP messages from a byte buffer.
35
- * Returns parsed messages and remaining buffer.
36
- * Works with bytes to correctly handle Content-Length (which is in bytes, not characters).
37
- */
38
- export const parseBuffer = (buffer) => {
39
- const messages = [];
40
- let offset = 0;
41
- const decoder = new TextDecoder();
42
- while (offset < buffer.length) {
43
- // Look for \r\n\r\n header terminator
44
- const headerEnd = findHeaderEnd(buffer, offset);
45
- if (headerEnd === -1)
46
- break;
47
- const headerPart = decoder.decode(buffer.subarray(offset, headerEnd));
48
- const match = /Content-Length:\s*(\d+)/i.exec(headerPart);
49
- if (!match)
50
- break;
51
- const contentLength = parseInt(match[1], 10);
52
- const bodyStart = headerEnd + 4; // Skip \r\n\r\n
53
- const bodyEnd = bodyStart + contentLength;
54
- // Check if we have the full body (in bytes)
55
- if (buffer.length < bodyEnd)
56
- break;
57
- const body = decoder.decode(buffer.subarray(bodyStart, bodyEnd));
58
- try {
59
- const parsed = JSON.parse(body);
60
- messages.push(parsed);
61
- }
62
- catch {
63
- // Invalid JSON, skip this message
64
- }
65
- offset = bodyEnd;
66
- }
67
- // Create a new array for remaining bytes to ensure ArrayBuffer type
68
- const remainingLength = buffer.length - offset;
69
- const remaining = new Uint8Array(remainingLength);
70
- remaining.set(buffer.subarray(offset));
71
- return { messages, remaining };
72
- };
73
- /**
74
- * Find the index of \r\n\r\n in a byte array starting from offset.
75
- */
76
- const findHeaderEnd = (buffer, offset) => {
77
- const CR = 13; // \r
78
- const LF = 10; // \n
79
- for (let i = offset; i < buffer.length - 3; i++) {
80
- if (buffer[i] === CR &&
81
- buffer[i + 1] === LF &&
82
- buffer[i + 2] === CR &&
83
- buffer[i + 3] === LF) {
84
- return i;
85
- }
86
- }
87
- return -1;
88
- };
89
- /**
90
- * Concatenate two Uint8Arrays.
91
- */
92
- const concatBytes = (a, b) => {
93
- const result = new Uint8Array(a.length + b.length);
94
- result.set(a);
95
- result.set(b, a.length);
96
- return result;
97
- };
98
- /**
99
- * Parse LSP messages from a ReadableStream.
100
- * Uses Stream.mapAccum to maintain buffer state across chunks.
101
- */
102
- const parseMessages = (stdout) => Stream.fromReadableStream({
103
- evaluate: () => stdout,
104
- onError: (cause) => new JsonRpcParseError({ cause }),
105
- }).pipe(Stream.mapAccum(() => new Uint8Array(0), (buffer, chunk) => {
106
- const combined = concatBytes(buffer, chunk);
107
- const { messages, remaining } = parseBuffer(combined);
108
- return [remaining, messages];
109
- }));
110
- /**
111
- * Create a JSON-RPC connection from a subprocess.
112
- */
113
- export const make = (proc) => Effect.gen(function* () {
114
- // Pending requests: id -> Deferred<response>
115
- const pending = yield* Ref.make(HashMap.empty());
116
- const nextId = yield* Ref.make(0);
117
- // Notification handlers
118
- const notificationHandlers = yield* Ref.make(HashMap.empty());
119
- // Background fiber reading stdout
120
- const reader = yield* parseMessages(proc.stdout).pipe(Stream.runForEach((msg) => Effect.gen(function* () {
121
- if ("id" in msg && ("result" in msg || "error" in msg)) {
122
- // Response to our request
123
- const response = msg;
124
- const maybeDeferred = yield* Ref.get(pending).pipe(Effect.map((m) => HashMap.get(m, response.id)));
125
- if (Option.isSome(maybeDeferred)) {
126
- if (response.error) {
127
- yield* Deferred.fail(maybeDeferred.value, new JsonRpcProtocolError({
128
- code: response.error.code,
129
- message: response.error.message,
130
- data: response.error.data,
131
- }));
132
- }
133
- else {
134
- yield* Deferred.succeed(maybeDeferred.value, response.result);
135
- }
136
- // Clean up the pending request
137
- yield* Ref.update(pending, (m) => HashMap.remove(m, response.id));
138
- }
139
- }
140
- else if ("method" in msg && !("id" in msg)) {
141
- // Notification from server
142
- const notification = msg;
143
- const maybeHandler = yield* Ref.get(notificationHandlers).pipe(Effect.map((m) => HashMap.get(m, notification.method)));
144
- if (Option.isSome(maybeHandler)) {
145
- yield* maybeHandler.value(notification.params);
146
- }
147
- }
148
- })), Effect.catch((e) => Effect.logWarning(`JSON-RPC reader error: ${e}`)), Effect.forkDetach);
149
- const connection = {
150
- request: (method, params) => Effect.gen(function* () {
151
- const id = yield* Ref.getAndUpdate(nextId, (n) => n + 1);
152
- const deferred = yield* Deferred.make();
153
- yield* Ref.update(pending, (m) => HashMap.set(m, id, deferred));
154
- yield* Effect.sync(() => {
155
- const msg = { jsonrpc: "2.0", id, method, params };
156
- const stdin = proc.stdin;
157
- if (stdin && typeof stdin === "object" && "write" in stdin) {
158
- stdin.write(encodeMessage(msg));
159
- }
160
- });
161
- return yield* Deferred.await(deferred);
162
- }),
163
- notify: (method, params) => Effect.sync(() => {
164
- const msg = { jsonrpc: "2.0", method, params };
165
- const stdin = proc.stdin;
166
- if (stdin && typeof stdin === "object" && "write" in stdin) {
167
- stdin.write(encodeMessage(msg));
168
- }
169
- }),
170
- onNotification: (method, handler) => Ref.update(notificationHandlers, (m) => HashMap.set(m, method, handler)),
171
- shutdown: Effect.gen(function* () {
172
- yield* Fiber.interrupt(reader);
173
- yield* Effect.sync(() => proc.kill());
174
- }),
175
- };
176
- return connection;
177
- });
178
- //# sourceMappingURL=jsonrpc.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"jsonrpc.js","sourceRoot":"","sources":["../../../src/Agent/lsp/jsonrpc.ts"],"names":[],"mappings":"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"}
@@ -1,38 +0,0 @@
1
- import * as Context from "effect/Context";
2
- import * as Effect from "effect/Effect";
3
- import * as Layer from "effect/Layer";
4
- import { type Diagnostic } from "./client.ts";
5
- import { type ServerConfig } from "./servers.ts";
6
- /**
7
- * Create an LSPManager layer.
8
- *
9
- * @param servers - List of servers to use. Defaults to DefaultServers.
10
- */
11
- export declare const LSPManagerLive: (servers?: ServerConfig[]) => Layer.Layer<LSPManager, never, never>;
12
- /**
13
- * LSP Manager interface.
14
- */
15
- export interface LSPManager {
16
- /**
17
- * Initialize all available LSP servers.
18
- */
19
- initialize(root: string): Effect.Effect<void, never, never>;
20
- /**
21
- * Notify all servers that a file has changed.
22
- */
23
- notifyFileChanged(path: string, content: string): Effect.Effect<void, never, never>;
24
- /**
25
- * Wait for diagnostics from all servers and return aggregated results.
26
- */
27
- waitForDiagnostics(path: string, timeout?: number): Effect.Effect<Diagnostic[], never, never>;
28
- /**
29
- * Get current diagnostics for a file (without waiting).
30
- */
31
- getDiagnostics(path: string): Effect.Effect<Diagnostic[], never, never>;
32
- /**
33
- * Shutdown all servers.
34
- */
35
- readonly shutdown: Effect.Effect<void, never, never>;
36
- }
37
- export declare const LSPManager: Context.Service<LSPManager, LSPManager>;
38
- //# sourceMappingURL=manager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/Agent/lsp/manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAGtC,OAAO,EAAE,KAAK,UAAU,EAAiC,MAAM,aAAa,CAAC;AAC7E,OAAO,EAAE,KAAK,YAAY,EAAkB,MAAM,cAAc,CAAC;AAEjE;;;;GAIG;AACH,eAAO,MAAM,cAAc,GAAI,UAAS,YAAY,EAAmB,0CACpB,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAE5D;;OAEG;IACH,iBAAiB,CACf,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GACd,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAErC;;OAEG;IACH,kBAAkB,CAChB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,MAAM,GACf,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAE7C;;OAEG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAExE;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;CACtD;AAED,eAAO,MAAM,UAAU,yCAA4C,CAAC"}
@@ -1,98 +0,0 @@
1
- import * as Context from "effect/Context";
2
- import * as Effect from "effect/Effect";
3
- import * as HashMap from "effect/HashMap";
4
- import * as Layer from "effect/Layer";
5
- import * as Option from "effect/Option";
6
- import * as Ref from "effect/Ref";
7
- import { makeLSPClient } from "./client.js";
8
- import { DefaultServers } from "./servers.js";
9
- /**
10
- * Create an LSPManager layer.
11
- *
12
- * @param servers - List of servers to use. Defaults to DefaultServers.
13
- */
14
- export const LSPManagerLive = (servers = DefaultServers) => Layer.effect(LSPManager, makeLSPManager(servers));
15
- export const LSPManager = Context.Service("LSPManager");
16
- /**
17
- * Create an LSPManager implementation.
18
- */
19
- const makeLSPManager = (servers) => Effect.gen(function* () {
20
- // Map of serverId -> LSPClient
21
- const clients = yield* Ref.make(HashMap.empty());
22
- // Aggregated diagnostics: uri -> Map<serverId, Diagnostic[]>
23
- const diagnosticsMap = yield* Ref.make(HashMap.empty());
24
- // Initialization state
25
- const initialized = yield* Ref.make(false);
26
- return LSPManager.of({
27
- initialize: Effect.fnUntraced(function* (root) {
28
- const alreadyInitialized = yield* Ref.get(initialized);
29
- if (alreadyInitialized)
30
- return;
31
- yield* Effect.logDebug("[LSPManager] Initializing LSP servers...");
32
- // Spawn all available servers in parallel
33
- yield* Effect.forEach(servers, (config) => Effect.gen(function* () {
34
- yield* Effect.logDebug(`[LSPManager] Starting ${config.id} server...`);
35
- const proc = yield* spawnServer(config, root);
36
- if (!proc) {
37
- yield* Effect.logWarning(`[LSPManager] ${config.id} server not available`);
38
- return;
39
- }
40
- const client = yield* makeLSPClient(config.id, proc, root);
41
- // Wire up diagnostics aggregation
42
- yield* client.onDiagnostics((uri, diags) => Ref.update(diagnosticsMap, (m) => {
43
- const existing = HashMap.get(m, uri).pipe(Option.getOrElse(() => HashMap.empty()));
44
- const updated = HashMap.set(existing, config.id, diags);
45
- return HashMap.set(m, uri, updated);
46
- }));
47
- yield* Ref.update(clients, (m) => HashMap.set(m, config.id, client));
48
- yield* Effect.logDebug(`[LSPManager] ${config.id} server started`);
49
- }).pipe(Effect.catch((e) => Effect.logWarning(`[LSPManager] Failed to start ${config.id}: ${e}`))), { concurrency: "unbounded" });
50
- yield* Ref.set(initialized, true);
51
- yield* Effect.logDebug("[LSPManager] All LSP servers initialized");
52
- }),
53
- notifyFileChanged: Effect.fnUntraced(function* (path, content) {
54
- yield* Effect.logDebug(`[LSPManager] Notifying ${path} of changes`);
55
- const allClients = yield* Ref.get(clients);
56
- yield* Effect.forEach(HashMap.values(allClients), (client) => client.notifyFileChanged(path, content), { concurrency: "unbounded" }).pipe(Effect.catch(() => Effect.void));
57
- }),
58
- waitForDiagnostics: Effect.fnUntraced(function* (path, timeout = 3000) {
59
- yield* Effect.logDebug(`[LSPManager] Waiting for diagnostics for ${path}`);
60
- const allClients = yield* Ref.get(clients);
61
- const uri = `file://${path}`;
62
- // Wait for all servers to report diagnostics
63
- yield* Effect.forEach(HashMap.values(allClients), (client) => client.waitForDiagnostics(path, timeout), { concurrency: "unbounded" }).pipe(Effect.catch(() => Effect.void));
64
- // Aggregate diagnostics from all servers
65
- const allDiagnostics = yield* Ref.get(diagnosticsMap).pipe(Effect.map((m) => {
66
- const byServer = HashMap.get(m, uri).pipe(Option.getOrElse(() => HashMap.empty()));
67
- return Array.from(HashMap.values(byServer)).flat();
68
- }));
69
- return allDiagnostics;
70
- }),
71
- getDiagnostics: Effect.fnUntraced(function* (path) {
72
- const uri = `file://${path}`;
73
- const allDiagnostics = yield* Ref.get(diagnosticsMap).pipe(Effect.map((m) => {
74
- const byServer = HashMap.get(m, uri).pipe(Option.getOrElse(() => HashMap.empty()));
75
- return Array.from(HashMap.values(byServer)).flat();
76
- }));
77
- return allDiagnostics;
78
- }),
79
- shutdown: Effect.gen(function* () {
80
- yield* Effect.logDebug("[LSPManager] Shutting down LSP servers...");
81
- const allClients = yield* Ref.get(clients);
82
- yield* Effect.forEach(HashMap.values(allClients), (client) => client.shutdown, { concurrency: "unbounded" }).pipe(Effect.catch(() => Effect.void));
83
- yield* Ref.set(clients, HashMap.empty());
84
- yield* Ref.set(initialized, false);
85
- yield* Effect.logDebug("[LSPManager] All LSP servers shut down");
86
- }),
87
- });
88
- });
89
- /**
90
- * Spawn an LSP server process.
91
- */
92
- const spawnServer = (config, cwd) => Effect.sync(() => Bun.spawn(config.command, {
93
- cwd,
94
- stdin: "pipe",
95
- stdout: "pipe",
96
- stderr: "inherit",
97
- }));
98
- //# sourceMappingURL=manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../src/Agent/lsp/manager.ts"],"names":[],"mappings":"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"}
@@ -1,28 +0,0 @@
1
- /**
2
- * Configuration for an LSP server.
3
- */
4
- export interface ServerConfig {
5
- /**
6
- * Unique identifier for the server.
7
- */
8
- id: string;
9
- /**
10
- * Command to run (e.g. ["typescript-language-server", "--stdio"])
11
- */
12
- command: string[];
13
- }
14
- /**
15
- * TypeScript Language Server configuration.
16
- * Uses typescript-language-server which wraps tsserver.
17
- */
18
- export declare const TypeScriptServer: ServerConfig;
19
- /**
20
- * oxlint Language Server configuration.
21
- * Uses oxlint --lsp for fast linting.
22
- */
23
- export declare const OxlintServer: ServerConfig;
24
- /**
25
- * Default LSP servers.
26
- */
27
- export declare const DefaultServers: ServerConfig[];
28
- //# sourceMappingURL=servers.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"servers.d.ts","sourceRoot":"","sources":["../../../src/Agent/lsp/servers.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,YAG9B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,YAG1B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,YAAY,EAAqC,CAAC"}
@@ -1,21 +0,0 @@
1
- /**
2
- * TypeScript Language Server configuration.
3
- * Uses typescript-language-server which wraps tsserver.
4
- */
5
- export const TypeScriptServer = {
6
- id: "typescript",
7
- command: ["typescript-language-server", "--stdio"],
8
- };
9
- /**
10
- * oxlint Language Server configuration.
11
- * Uses oxlint --lsp for fast linting.
12
- */
13
- export const OxlintServer = {
14
- id: "oxlint",
15
- command: ["bun", "oxlint", "--lsp"],
16
- };
17
- /**
18
- * Default LSP servers.
19
- */
20
- export const DefaultServers = [TypeScriptServer, OxlintServer];
21
- //# sourceMappingURL=servers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"servers.js","sourceRoot":"","sources":["../../../src/Agent/lsp/servers.ts"],"names":[],"mappings":"AAeA;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAiB;IAC5C,EAAE,EAAE,YAAY;IAChB,OAAO,EAAE,CAAC,4BAA4B,EAAE,SAAS,CAAC;CACnD,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAiB;IACxC,EAAE,EAAE,QAAQ;IACZ,OAAO,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC;CACpC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAmB,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC"}
@@ -1,10 +0,0 @@
1
- import * as Effect from "effect/Effect";
2
- import { AspectGraph } from "../AspectGraph.ts";
3
- import { Thread } from "../chat/thread.ts";
4
- /**
5
- * Called whenever a message is sent by a user to a Thread.
6
- *
7
- * This uses an LLM to choose which agents should respond to the message.
8
- */
9
- export declare const driveThread: (thread: Thread) => Effect.Effect<void, never, AspectGraph>;
10
- //# sourceMappingURL=driver.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../../../src/Agent/process/driver.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAOxC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAK3C;;;;GAIG;AACH,eAAO,MAAM,WAAW,6DAmJtB,CAAC"}
@@ -1,153 +0,0 @@
1
- // @ts-nocheck - uncomment this once we are working on AI again
2
- import * as Effect from "effect/Effect";
3
- import * as S from "effect/Schema";
4
- import * as Stream from "effect/Stream";
5
- import * as util from "node:util";
6
- import * as vm from "node:vm";
7
- import { schemaToType } from "../../Util/schema-to-type.js";
8
- import { Agent, AgentId } from "../Agent.js";
9
- import { AspectGraph } from "../AspectGraph.js";
10
- import { Chat } from "../chat/service.js";
11
- import { Thread } from "../chat/thread.js";
12
- import { LLM } from "../llm/llm.js";
13
- import { lastMessageText } from "../llm/stream-collectors.js";
14
- import { Tool } from "../tool/tool.js";
15
- /**
16
- * Called whenever a message is sent by a user to a Thread.
17
- *
18
- * This uses an LLM to choose which agents should respond to the message.
19
- */
20
- export const driveThread = Effect.fn("driveThread")(function* (thread) {
21
- const graph = yield* AspectGraph;
22
- const { exprs: [env], types, } = schemaToType(graph.schema);
23
- class code extends Tool.input("code") `
24
- JavaScript code to evaluate (must be a valid JavaScript module.
25
- Using modern ESM syntax only.
26
- The code is running in a Bun REPL environment.
27
- Use arbitrary JavaScript code to explore the environment and` {
28
- }
29
- class evaluate extends Tool("eval") `
30
- Evaluates ${code} in a REPL in an Agent's environment and returns the console.log
31
- output and result of the evaluation as a ${S.String}.
32
- Use this tool to explore the Chat environment and find relevant information.
33
- \`\`\`typescript
34
- ${types}
35
- /** The environment of the Agent. */
36
- declare const env: ${env};
37
- /** The current issue
38
- declare const issue: Issue;
39
- /** The current prompt to the Agent. */
40
- declare const query: string;
41
- /** A function that can be used to recursively call the LLM to explore the environment. */
42
- declare function recursiveLLM(subQuery: string): Promise<string>;
43
- \`\`\`
44
- `(function* ({ code }) {
45
- const logs = [];
46
- const capture = (...args) => logs.push(args
47
- .map((a) => typeof a === "string" ? a : util.inspect(a, { depth: null }))
48
- .join(" "));
49
- const context = vm.createContext({
50
- env: graph.aspects,
51
- issue: undefined, // TODO(sam): provide the current issue
52
- console: {
53
- log: capture,
54
- info: capture,
55
- warn: capture,
56
- error: capture,
57
- debug: capture,
58
- },
59
- });
60
- try {
61
- const script = new vm.Script(code);
62
- const result = script.runInContext(context);
63
- return `${logs.join("\n")}${logs.length > 0 ? "\n" : ""}${typeof result === "string" ? result : util.inspect(result, { depth: null })}`;
64
- }
65
- catch (err) {
66
- const error = err instanceof Error ? err.message : String(err);
67
- return `${logs.join("\n")}${logs.length > 0 ? "\n" : ""}${error}`;
68
- }
69
- }) {
70
- }
71
- // TODO(sam): use examples of agents in the graph, agents.map((a) => a.id).slice(0, 3).join(", ")
72
- // or -> make it a literal type of all agent IDs
73
- class agentId extends Tool.input("agentId", AgentId) `
74
- The ID of the Agent to create a Task for, e.g. @ceo, @sde, @cfo.` {
75
- }
76
- class prompt extends Tool.input("prompt") `
77
- The prompt to start the Task with.` {
78
- }
79
- class query extends Tool("query") `
80
- You are a Recursive Language Model. You interact with context through a JavaScript Bun REPL environment.
81
-
82
- The Aspect environment is stored in the variable \`env\`.
83
- IMPORTANT: You cannot see the context directly. You MUST write JavaScript code to search and explore it.
84
-
85
- Available in environment:
86
- \`\`\`typescript
87
- ${types}
88
- /** The environment of the Agent. */
89
- declare const env: ${env};
90
- // The current Issue (similar to a GitHub Issue)
91
- declare const issue: Issue;
92
- /** The current query to answer. */
93
- declare const query: string;
94
- /** A function that can be used to recursively call the LLM to explore the environment. */
95
- declare function query(subQuery: string): Promise<string>;
96
- \`\`\`
97
-
98
- Write JavaScript code to answer the query. The last expression and all console.log() output will be shown to you.
99
-
100
- Examples:
101
- - console.log(issue.messages[issue.messages.length-1]) // See the last message in the issue
102
- - issue.messages[issue.messages.length-1] // Print the last message in the issue (because this is the last expression in the code)
103
- - matches = re.findall(r'keyword.*', context); print(matches[:5])
104
- - idx = context.find('search term'); print(context[idx:idx+200])
105
-
106
- CRITICAL: Do NOT guess or make up answers. You MUST search the context first to find the actual information.
107
- Only finish your response after you have found concrete evidence in the context.
108
- Finish by providing a detailed textual answer to the query.
109
-
110
- Depth: {depth}`(function* () { }) {
111
- }
112
- class reply extends Tool("reply") `
113
- Prompt an Agent (by ${agentId}) to reply in a Thread.
114
- The agent is given a ${prompt} to orient the direction of the task, but is otherwise free to choose how to complete the task.
115
- Available agents: ${Object.keys(graph.aspects.agent).join(", ")}
116
- If the reply fails, a ${S.String} message will be returned.
117
- Use the ${recursiveLLM} tool to explore and query the contextual encironment you are operating in.
118
- `(function* ({ agentId, prompt }) {
119
- // TODO(sam): look up in the graph?
120
- const agent = graph.aspects.agent[agentId];
121
- if (!agent) {
122
- return `Agent '${agentId}' not found, available agents: ${Object.keys(graph.aspects.agent).join(", ")}`;
123
- }
124
- const task = yield* Chat.createTask({
125
- threadId: thread.threadId,
126
- agentId,
127
- });
128
- const lastMessage = yield* LLM.stream({
129
- model: "anthropic/claude-opus-4.5",
130
- system: ``,
131
- messages: [{ role: "user", content: prompt }],
132
- tools: [],
133
- }).pipe(Stream.tapSink(Chat.sinkTask(task.taskId)), Stream.run(lastMessageText));
134
- if (!lastMessage) {
135
- return yield* Effect.die(`No message returned from agent '${agentId}'`);
136
- }
137
- // TODO(sam): submit the result message to the issue
138
- return lastMessage;
139
- }) {
140
- }
141
- const stream = Effect.gen(function* () {
142
- const llm = yield* LLM;
143
- const chat = yield* Chat;
144
- return yield* llm
145
- .stream({
146
- system: "You are a helpful assistant.",
147
- messages: [],
148
- tools: [evaluate, reply],
149
- })
150
- .pipe(Stream.tapSink(chat.sinkThreadDriver(thread.threadId)));
151
- });
152
- });
153
- //# sourceMappingURL=driver.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"driver.js","sourceRoot":"","sources":["../../../src/Agent/process/driver.ts"],"names":[],"mappings":"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"}
@@ -1,44 +0,0 @@
1
- import * as Context from "effect/Context";
2
- import type { Effect } from "effect/Effect";
3
- import * as S from "effect/Schema";
4
- import { Issue, IssueId } from "./issue.ts";
5
- import { Reply, ReplyId } from "./reply.ts";
6
- declare const CreateIssueRequest_base: S.Class<CreateIssueRequest, S.Struct<{
7
- readonly title: S.String;
8
- readonly description: S.String;
9
- }>, {}>;
10
- export declare class CreateIssueRequest extends CreateIssueRequest_base {
11
- }
12
- declare const UpdateIssueRequest_base: S.Class<UpdateIssueRequest, S.Struct<{
13
- readonly issueId: S.Int;
14
- readonly title: S.optional<S.String>;
15
- readonly description: S.optional<S.String>;
16
- }>, {}>;
17
- export declare class UpdateIssueRequest extends UpdateIssueRequest_base {
18
- }
19
- declare const SendReplyRequest_base: S.Class<SendReplyRequest, S.Struct<{
20
- readonly issueId: S.Int;
21
- readonly content: S.String;
22
- }>, {}>;
23
- export declare class SendReplyRequest extends SendReplyRequest_base {
24
- }
25
- declare const UpdateReplyRequest_base: S.Class<UpdateReplyRequest, S.Struct<{
26
- readonly replyId: S.Int;
27
- readonly content: S.optional<S.String>;
28
- }>, {}>;
29
- export declare class UpdateReplyRequest extends UpdateReplyRequest_base {
30
- }
31
- declare const Issues_base: Context.ServiceClass<Issues, "Issues", {
32
- listIssues: () => Effect<Issue[]>;
33
- readIssue: (issueId: IssueId) => Effect<Issue>;
34
- createIssue: (input: CreateIssueRequest) => Effect<Issue>;
35
- updateIssue: (input: UpdateIssueRequest) => Effect<Issue>;
36
- closeIssue: (issueId: IssueId) => Effect<Issue>;
37
- sendReply: (input: SendReplyRequest) => Effect<Reply>;
38
- updateReply: (input: UpdateReplyRequest) => Effect<Reply>;
39
- deleteReply: (replyId: ReplyId) => Effect<void>;
40
- }>;
41
- export declare class Issues extends Issues_base {
42
- }
43
- export {};
44
- //# sourceMappingURL=issue-service.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"issue-service.d.ts","sourceRoot":"","sources":["../../../src/Agent/process/issue-service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,CAAC,MAAM,eAAe,CAAC;AACnC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;;;;;AAE5C,qBAAa,kBAAmB,SAAQ,uBAKtC;CAAG;;;;;;AAEL,qBAAa,kBAAmB,SAAQ,uBAMtC;CAAG;;;;;AAEL,qBAAa,gBAAiB,SAAQ,qBAKpC;CAAG;;;;;AAEL,qBAAa,kBAAmB,SAAQ,uBAKtC;CAAG;;gBAKW,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;eACtB,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,CAAC,KAAK,CAAC;iBACjC,CAAC,KAAK,EAAE,kBAAkB,KAAK,MAAM,CAAC,KAAK,CAAC;iBAC5C,CAAC,KAAK,EAAE,kBAAkB,KAAK,MAAM,CAAC,KAAK,CAAC;gBAC7C,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,CAAC,KAAK,CAAC;eACpC,CAAC,KAAK,EAAE,gBAAgB,KAAK,MAAM,CAAC,KAAK,CAAC;iBACxC,CAAC,KAAK,EAAE,kBAAkB,KAAK,MAAM,CAAC,KAAK,CAAC;iBAC5C,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,CAAC,IAAI,CAAC;;AAVnD,qBAAa,MAAO,SAAQ,WAYf;CAAG"}