@stacksjs/ts-cloud 0.7.56 → 0.7.58

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 (467) hide show
  1. package/dist/alerts/alerts.test.d.ts +1 -0
  2. package/dist/alerts/delivery.d.ts +45 -0
  3. package/dist/alerts/evaluator.d.ts +12 -0
  4. package/dist/alerts/health.d.ts +34 -0
  5. package/dist/alerts/index.d.ts +6 -0
  6. package/dist/alerts/model.d.ts +170 -0
  7. package/dist/alerts/store.d.ts +90 -0
  8. package/dist/alerts/telemetry.d.ts +3 -0
  9. package/dist/api/client.d.ts +197 -0
  10. package/dist/api/handler.d.ts +18 -0
  11. package/dist/api/handler.test.d.ts +1 -0
  12. package/dist/api/index.d.ts +6 -0
  13. package/dist/api/openapi.d.ts +2 -0
  14. package/dist/api/service.d.ts +28 -0
  15. package/dist/api/types.d.ts +119 -0
  16. package/dist/auth/encryption.d.ts +3 -0
  17. package/dist/auth/index.d.ts +8 -0
  18. package/dist/auth/mailer.d.ts +9 -0
  19. package/dist/auth/oidc.d.ts +36 -0
  20. package/dist/auth/oidc.test.d.ts +1 -0
  21. package/dist/auth/store.d.ts +121 -0
  22. package/dist/auth/store.test.d.ts +1 -0
  23. package/dist/auth/totp.d.ts +11 -0
  24. package/dist/auth/totp.test.d.ts +1 -0
  25. package/dist/auth/types.d.ts +138 -0
  26. package/dist/automation/index.d.ts +2 -0
  27. package/dist/automation/store.d.ts +46 -0
  28. package/dist/automation/store.test.d.ts +1 -0
  29. package/dist/automation/types.d.ts +66 -0
  30. package/dist/aws/acm.d.ts +0 -4
  31. package/dist/aws/application-autoscaling.d.ts +0 -5
  32. package/dist/aws/backup.d.ts +42 -0
  33. package/dist/aws/bedrock.d.ts +0 -5
  34. package/dist/aws/client.d.ts +3 -6
  35. package/dist/aws/cloudformation.d.ts +0 -4
  36. package/dist/aws/cloudfront-media.test.d.ts +1 -0
  37. package/dist/aws/cloudfront-origin.test.d.ts +1 -0
  38. package/dist/aws/cloudfront.d.ts +87 -3
  39. package/dist/aws/cloudwatch-logs.d.ts +2 -4
  40. package/dist/aws/cloudwatch.d.ts +1 -1
  41. package/dist/aws/comprehend.d.ts +0 -5
  42. package/dist/aws/connect.d.ts +0 -4
  43. package/dist/aws/cost-explorer-cache.d.ts +1 -15
  44. package/dist/aws/cost-explorer.d.ts +18 -9
  45. package/dist/aws/cost-explorer.test.d.ts +1 -0
  46. package/dist/aws/dynamodb.d.ts +0 -4
  47. package/dist/aws/ec2.d.ts +0 -4
  48. package/dist/aws/ecr.d.ts +0 -4
  49. package/dist/aws/ecs.d.ts +17 -7
  50. package/dist/aws/efs.d.ts +0 -4
  51. package/dist/aws/elasticache.d.ts +0 -4
  52. package/dist/aws/elbv2.d.ts +0 -7
  53. package/dist/aws/email.d.ts +0 -10
  54. package/dist/aws/eventbridge.d.ts +0 -4
  55. package/dist/aws/iam.d.ts +1 -5
  56. package/dist/aws/imap-server.d.ts +0 -7
  57. package/dist/aws/index.d.ts +4 -3
  58. package/dist/aws/index.js +31 -31
  59. package/dist/aws/kendra.d.ts +0 -5
  60. package/dist/aws/lambda.d.ts +3 -5
  61. package/dist/aws/opensearch.d.ts +0 -4
  62. package/dist/aws/personalize.d.ts +0 -5
  63. package/dist/aws/polly.d.ts +0 -5
  64. package/dist/aws/rds.d.ts +59 -4
  65. package/dist/aws/rekognition.d.ts +0 -5
  66. package/dist/aws/route53-domains.d.ts +0 -4
  67. package/dist/aws/route53.d.ts +0 -4
  68. package/dist/aws/s3.d.ts +10 -6
  69. package/dist/aws/scheduler.d.ts +0 -4
  70. package/dist/aws/secrets-manager.d.ts +0 -4
  71. package/dist/aws/setup-sms.d.ts +0 -14
  72. package/dist/aws/sms.d.ts +0 -10
  73. package/dist/aws/smtp-server.d.ts +0 -11
  74. package/dist/aws/sns.d.ts +0 -4
  75. package/dist/aws/sqs.d.ts +0 -4
  76. package/dist/aws/ssm.d.ts +0 -4
  77. package/dist/aws/sts.d.ts +0 -4
  78. package/dist/aws/support.d.ts +0 -4
  79. package/dist/aws/textract.d.ts +0 -5
  80. package/dist/aws/transcribe.d.ts +0 -4
  81. package/dist/aws/translate.d.ts +0 -5
  82. package/dist/aws/voice.d.ts +0 -11
  83. package/dist/aws/xray.d.ts +1 -0
  84. package/dist/backups/aws-database-source.d.ts +19 -0
  85. package/dist/backups/aws-database-source.test.d.ts +1 -0
  86. package/dist/backups/aws-infrastructure-source.d.ts +43 -0
  87. package/dist/backups/aws-infrastructure-source.test.d.ts +1 -0
  88. package/dist/backups/control-plane-source.d.ts +16 -0
  89. package/dist/backups/control-plane-source.test.d.ts +1 -0
  90. package/dist/backups/docker-volume-source.d.ts +31 -0
  91. package/dist/backups/docker-volume-source.test.d.ts +1 -0
  92. package/dist/backups/filesystem-source.d.ts +34 -0
  93. package/dist/backups/filesystem-source.test.d.ts +1 -0
  94. package/dist/backups/index.d.ts +10 -0
  95. package/dist/backups/logical-database-source.d.ts +16 -0
  96. package/dist/backups/logical-database-source.test.d.ts +1 -0
  97. package/dist/backups/model.d.ts +121 -0
  98. package/dist/backups/s3-destination.d.ts +85 -0
  99. package/dist/backups/s3-destination.test.d.ts +1 -0
  100. package/dist/backups/service.d.ts +80 -0
  101. package/dist/backups/service.test.d.ts +1 -0
  102. package/dist/backups/store.d.ts +30 -0
  103. package/dist/backups/store.test.d.ts +1 -0
  104. package/dist/bin/cli.js +3360 -1802
  105. package/dist/{chunk-tjjgajbh.js → chunk-01d86gt1.js} +301 -9
  106. package/dist/{chunk-73vcqg6z.js → chunk-0z43x8re.js} +7 -7
  107. package/dist/{chunk-tnztxpcb.js → chunk-32e7ya18.js} +61 -49
  108. package/dist/{chunk-qpj3edwz.js → chunk-4cjrg98a.js} +3 -7
  109. package/dist/{chunk-hsk6fe6x.js → chunk-50jpda9q.js} +2 -2
  110. package/dist/{chunk-93hjhs78.js → chunk-703nkybg.js} +1 -1
  111. package/dist/{chunk-d5vqwj8s.js → chunk-9m6b4m74.js} +755 -720
  112. package/dist/chunk-e05phx5f.js +10 -0
  113. package/dist/{chunk-f29w04w5.js → chunk-exbcsab2.js} +10 -4
  114. package/dist/{chunk-eq08r166.js → chunk-f55nkpvb.js} +2 -2
  115. package/dist/{chunk-3bfv1z4v.js → chunk-fv1bj3yt.js} +63 -56
  116. package/dist/chunk-fw3q88wk.js +48641 -0
  117. package/dist/{chunk-3knnr7wh.js → chunk-he9a874b.js} +170 -2
  118. package/dist/{chunk-zn0nxxa8.js → chunk-hpv68b4a.js} +1070 -1070
  119. package/dist/chunk-k114qwg9.js +12 -0
  120. package/dist/{chunk-r16e02bc.js → chunk-vdk53yyq.js} +3900 -4101
  121. package/dist/{chunk-jp2a8yad.js → chunk-vvkd46k1.js} +15 -13
  122. package/dist/{chunk-vd87cpvn.js → chunk-wj3s95p9.js} +62 -46
  123. package/dist/{chunk-mj1tmhte.js → chunk-x9s0cqfx.js} +1 -1
  124. package/dist/{chunk-3rsfns7x.js → chunk-ybcz6sxc.js} +2048 -387
  125. package/dist/{chunk-arsh1g5h.js → chunk-zqtpg06c.js} +14 -11
  126. package/dist/compose/index.d.ts +6 -0
  127. package/dist/compose/parser.d.ts +13 -0
  128. package/dist/compose/parser.test.d.ts +1 -0
  129. package/dist/compose/runtime.d.ts +10 -0
  130. package/dist/compose/service.d.ts +18 -0
  131. package/dist/compose/store.d.ts +59 -0
  132. package/dist/compose/store.test.d.ts +1 -0
  133. package/dist/compose/templates.d.ts +17 -0
  134. package/dist/compose/types.d.ts +164 -0
  135. package/dist/configuration/backends.d.ts +66 -0
  136. package/dist/configuration/backends.test.d.ts +1 -0
  137. package/dist/configuration/dotenv.d.ts +14 -0
  138. package/dist/configuration/dotenv.test.d.ts +1 -0
  139. package/dist/configuration/index.d.ts +6 -0
  140. package/dist/configuration/migrate.d.ts +10 -0
  141. package/dist/configuration/migrate.test.d.ts +1 -0
  142. package/dist/configuration/model.d.ts +50 -0
  143. package/dist/configuration/service.d.ts +144 -0
  144. package/dist/configuration/service.test.d.ts +1 -0
  145. package/dist/configuration/store.d.ts +33 -0
  146. package/dist/configuration/store.test.d.ts +1 -0
  147. package/dist/control-plane/authorization.d.ts +24 -0
  148. package/dist/control-plane/authorization.test.d.ts +1 -0
  149. package/dist/control-plane/index.d.ts +8 -0
  150. package/dist/control-plane/migrations.d.ts +7 -0
  151. package/dist/control-plane/search.d.ts +25 -0
  152. package/dist/control-plane/store.d.ts +117 -0
  153. package/dist/control-plane/store.test.d.ts +1 -0
  154. package/dist/control-plane/types.d.ts +381 -0
  155. package/dist/cost/reporting.d.ts +24 -0
  156. package/dist/cost/reporting.test.d.ts +1 -0
  157. package/dist/cost/resource-inventory.d.ts +32 -0
  158. package/dist/cost/resource-inventory.test.d.ts +1 -0
  159. package/dist/cost/resource-optimization.d.ts +59 -0
  160. package/dist/cost/resource-optimization.test.d.ts +1 -0
  161. package/dist/data-services/adapters.d.ts +39 -0
  162. package/dist/data-services/aws-transports.d.ts +29 -0
  163. package/dist/data-services/aws-transports.test.d.ts +1 -0
  164. package/dist/data-services/capabilities.d.ts +2 -0
  165. package/dist/data-services/data-services.test.d.ts +1 -0
  166. package/dist/data-services/docker-transport.d.ts +55 -0
  167. package/dist/data-services/docker-transport.test.d.ts +1 -0
  168. package/dist/data-services/index.d.ts +8 -0
  169. package/dist/data-services/model.d.ts +79 -0
  170. package/dist/data-services/secrets.d.ts +13 -0
  171. package/dist/data-services/secrets.test.d.ts +1 -0
  172. package/dist/data-services/service.d.ts +51 -0
  173. package/dist/data-services/store.d.ts +17 -0
  174. package/dist/deploy/container-image.d.ts +28 -0
  175. package/dist/deploy/container-image.test.d.ts +1 -0
  176. package/dist/deploy/dashboard-audit.test.d.ts +1 -0
  177. package/dist/deploy/dashboard-auth.d.ts +4 -23
  178. package/dist/deploy/dashboard-backups.integration.test.d.ts +1 -0
  179. package/dist/deploy/dashboard-configuration.integration.test.d.ts +1 -0
  180. package/dist/deploy/dashboard-control-plane.d.ts +37 -0
  181. package/dist/deploy/dashboard-control-plane.test.d.ts +1 -0
  182. package/dist/deploy/dashboard-data-services.integration.test.d.ts +1 -0
  183. package/dist/deploy/dashboard-environment-scope.test.d.ts +1 -0
  184. package/dist/deploy/dashboard-guard.d.ts +12 -0
  185. package/dist/deploy/dashboard-guard.test.d.ts +1 -0
  186. package/dist/deploy/dashboard-identities.d.ts +15 -0
  187. package/dist/deploy/dashboard-identities.test.d.ts +1 -0
  188. package/dist/deploy/dashboard-jobs.integration.test.d.ts +1 -0
  189. package/dist/deploy/dashboard-login-page.d.ts +5 -5
  190. package/dist/deploy/dashboard-login-page.test.d.ts +1 -0
  191. package/dist/deploy/dashboard-oidc.integration.test.d.ts +1 -0
  192. package/dist/deploy/dashboard-onboarding.integration.test.d.ts +1 -0
  193. package/dist/deploy/dashboard-policy.d.ts +4 -2
  194. package/dist/deploy/dashboard-queue-worker.integration.test.d.ts +1 -0
  195. package/dist/deploy/dashboard-release.integration.test.d.ts +1 -0
  196. package/dist/deploy/dashboard-route-manifest.d.ts +14 -0
  197. package/dist/deploy/dashboard-route-manifest.test.d.ts +1 -0
  198. package/dist/deploy/dashboard-security.integration.test.d.ts +1 -0
  199. package/dist/deploy/dashboard-session.d.ts +3 -14
  200. package/dist/deploy/dashboard-source.integration.test.d.ts +1 -0
  201. package/dist/deploy/dashboard-users.d.ts +3 -0
  202. package/dist/deploy/fullstack-container.d.ts +87 -0
  203. package/dist/deploy/fullstack-container.test.d.ts +1 -0
  204. package/dist/deploy/index.d.ts +7 -2
  205. package/dist/deploy/index.js +65 -25
  206. package/dist/deploy/local-dashboard-server.d.ts +30 -0
  207. package/dist/deploy/quick-deploy.d.ts +1 -1
  208. package/dist/deploy/serverless-operations.d.ts +1 -0
  209. package/dist/deploy/site-target.d.ts +16 -0
  210. package/dist/deploy/static-api-origin.d.ts +107 -0
  211. package/dist/deploy/static-api-origin.test.d.ts +1 -0
  212. package/dist/deploy/static-site-helper.d.ts +0 -16
  213. package/dist/deploy/telemetry-access.d.ts +5 -0
  214. package/dist/deploy/telemetry-access.test.d.ts +1 -0
  215. package/dist/deploy/telemetry-collection.d.ts +44 -0
  216. package/dist/deploy/telemetry-collection.test.d.ts +1 -0
  217. package/dist/dns/index.js +3 -3
  218. package/dist/dns/route53-adapter.d.ts +1 -1
  219. package/dist/drivers/hetzner/cloud-init.d.ts +1 -1
  220. package/dist/drivers/index.d.ts +2 -2
  221. package/dist/drivers/index.js +6 -6
  222. package/dist/drivers/shared/notifications.d.ts +1 -1
  223. package/dist/drivers/shared/rpx-gateway.d.ts +1 -0
  224. package/dist/fleet/fleet.test.d.ts +1 -0
  225. package/dist/fleet/index.d.ts +144 -0
  226. package/dist/fleet/queue.d.ts +3 -0
  227. package/dist/fleet/ssh-driver.d.ts +34 -0
  228. package/dist/index.d.ts +28 -4
  229. package/dist/index.js +1132 -424
  230. package/dist/jobs/adapters.d.ts +23 -0
  231. package/dist/jobs/index.d.ts +7 -0
  232. package/dist/jobs/jobs.test.d.ts +1 -0
  233. package/dist/jobs/model.d.ts +100 -0
  234. package/dist/jobs/provider-adapters.d.ts +49 -0
  235. package/dist/jobs/reconcile.d.ts +19 -0
  236. package/dist/jobs/schedule.d.ts +9 -0
  237. package/dist/jobs/service.d.ts +30 -0
  238. package/dist/jobs/store.d.ts +48 -0
  239. package/dist/maintenance/drivers.d.ts +117 -0
  240. package/dist/maintenance/index.d.ts +6 -0
  241. package/dist/maintenance/maintenance.test.d.ts +1 -0
  242. package/dist/maintenance/manifest.d.ts +15 -0
  243. package/dist/maintenance/queue.d.ts +9 -0
  244. package/dist/maintenance/service.d.ts +31 -0
  245. package/dist/maintenance/store.d.ts +84 -0
  246. package/dist/maintenance/types.d.ts +192 -0
  247. package/dist/media.d.ts +62 -0
  248. package/dist/media.test.d.ts +1 -0
  249. package/dist/object-storage/index.d.ts +0 -24
  250. package/dist/onboarding/archive.d.ts +12 -0
  251. package/dist/onboarding/artifact-store.d.ts +22 -0
  252. package/dist/onboarding/detection.d.ts +8 -0
  253. package/dist/onboarding/index.d.ts +9 -0
  254. package/dist/onboarding/migrations.d.ts +3 -0
  255. package/dist/onboarding/onboarding.test.d.ts +1 -0
  256. package/dist/onboarding/plan.d.ts +3 -0
  257. package/dist/onboarding/registry.d.ts +41 -0
  258. package/dist/onboarding/service.d.ts +16 -0
  259. package/dist/onboarding/store.d.ts +30 -0
  260. package/dist/onboarding/types.d.ts +204 -0
  261. package/dist/placement/builds.d.ts +20 -0
  262. package/dist/placement/drivers.d.ts +54 -0
  263. package/dist/placement/index.d.ts +6 -0
  264. package/dist/placement/placement.test.d.ts +1 -0
  265. package/dist/placement/queue.d.ts +4 -0
  266. package/dist/placement/service.d.ts +34 -0
  267. package/dist/placement/store.d.ts +49 -0
  268. package/dist/placement/types.d.ts +109 -0
  269. package/dist/preview/index.d.ts +3 -0
  270. package/dist/preview/service.d.ts +45 -0
  271. package/dist/preview/service.test.d.ts +1 -0
  272. package/dist/preview/store.d.ts +47 -0
  273. package/dist/preview/store.test.d.ts +1 -0
  274. package/dist/preview/types.d.ts +99 -0
  275. package/dist/push/apns.d.ts +0 -26
  276. package/dist/push/fcm.d.ts +0 -23
  277. package/dist/push/index.d.ts +2 -2
  278. package/dist/push/index.js +1 -1
  279. package/dist/queue/deployment-handlers.d.ts +27 -0
  280. package/dist/queue/deployment-handlers.test.d.ts +1 -0
  281. package/dist/queue/index.d.ts +4 -0
  282. package/dist/queue/queue.d.ts +57 -0
  283. package/dist/queue/queue.test.d.ts +1 -0
  284. package/dist/queue/types.d.ts +93 -0
  285. package/dist/queue/worker.d.ts +32 -0
  286. package/dist/queue/worker.test.d.ts +1 -0
  287. package/dist/regions/drivers.d.ts +139 -0
  288. package/dist/regions/index.d.ts +5 -0
  289. package/dist/regions/queue.d.ts +4 -0
  290. package/dist/regions/regions.test.d.ts +1 -0
  291. package/dist/regions/service.d.ts +23 -0
  292. package/dist/regions/store.d.ts +41 -0
  293. package/dist/regions/types.d.ts +132 -0
  294. package/dist/release/index.d.ts +6 -0
  295. package/dist/release/queue.d.ts +15 -0
  296. package/dist/release/queue.test.d.ts +1 -0
  297. package/dist/release/runtime.d.ts +35 -0
  298. package/dist/release/runtime.test.d.ts +1 -0
  299. package/dist/release/service.d.ts +28 -0
  300. package/dist/release/store.d.ts +88 -0
  301. package/dist/release/store.test.d.ts +1 -0
  302. package/dist/release/strategy.d.ts +8 -0
  303. package/dist/release/types.d.ts +103 -0
  304. package/dist/runtime/adapters/aws.d.ts +5 -0
  305. package/dist/runtime/adapters/docker.d.ts +53 -0
  306. package/dist/runtime/adapters/systemd.d.ts +26 -0
  307. package/dist/runtime/index.d.ts +9 -0
  308. package/dist/runtime/inventory.d.ts +6 -0
  309. package/dist/runtime/model.d.ts +130 -0
  310. package/dist/runtime/normalize.d.ts +5 -0
  311. package/dist/runtime/operations.d.ts +113 -0
  312. package/dist/runtime/service.d.ts +32 -0
  313. package/dist/runtime/streams.d.ts +49 -0
  314. package/dist/security/artifacts.d.ts +105 -0
  315. package/dist/security/artifacts.test.d.ts +1 -0
  316. package/dist/security/container-release.d.ts +35 -0
  317. package/dist/security/container-release.test.d.ts +1 -0
  318. package/dist/security/index.d.ts +8 -0
  319. package/dist/security/integration.d.ts +41 -0
  320. package/dist/security/integration.test.d.ts +1 -0
  321. package/dist/security/posture-store.d.ts +80 -0
  322. package/dist/security/posture-store.test.d.ts +1 -0
  323. package/dist/security/pre-deploy-scanner.d.ts +0 -4
  324. package/dist/security/scanners.d.ts +81 -0
  325. package/dist/security/scanners.test.d.ts +1 -0
  326. package/dist/security/types.d.ts +150 -0
  327. package/dist/source/git-workspace.d.ts +26 -0
  328. package/dist/source/git-workspace.test.d.ts +1 -0
  329. package/dist/source/index.d.ts +6 -0
  330. package/dist/source/providers.d.ts +199 -0
  331. package/dist/source/providers.test.d.ts +1 -0
  332. package/dist/source/service.d.ts +18 -0
  333. package/dist/source/store.d.ts +149 -0
  334. package/dist/source/store.test.d.ts +1 -0
  335. package/dist/source/types.d.ts +191 -0
  336. package/dist/source/webhooks.d.ts +33 -0
  337. package/dist/source/webhooks.test.d.ts +1 -0
  338. package/dist/ssl/acme-client.d.ts +0 -6
  339. package/dist/storage/compose.d.ts +4 -0
  340. package/dist/storage/compose.test.d.ts +1 -0
  341. package/dist/storage/drivers.d.ts +107 -0
  342. package/dist/storage/drivers.test.d.ts +1 -0
  343. package/dist/storage/index.d.ts +5 -0
  344. package/dist/storage/model.d.ts +112 -0
  345. package/dist/storage/service.d.ts +95 -0
  346. package/dist/storage/storage.test.d.ts +1 -0
  347. package/dist/storage/store.d.ts +40 -0
  348. package/dist/telemetry/correlation.test.d.ts +1 -0
  349. package/dist/telemetry/index.d.ts +4 -0
  350. package/dist/telemetry/model.d.ts +145 -0
  351. package/dist/telemetry/policy.d.ts +8 -0
  352. package/dist/telemetry/policy.test.d.ts +1 -0
  353. package/dist/telemetry/redaction.d.ts +9 -0
  354. package/dist/telemetry/store.d.ts +34 -0
  355. package/dist/telemetry/store.test.d.ts +1 -0
  356. package/dist/ui/404.html +1506 -17
  357. package/dist/ui/accept-invitation.html +1163 -0
  358. package/dist/ui/{server/backups.html → access-denied.html} +344 -55
  359. package/dist/ui/account/automation.html +1669 -0
  360. package/dist/ui/account/security.html +1646 -0
  361. package/dist/ui/applications/compose.html +1590 -0
  362. package/dist/ui/applications/new.html +1868 -0
  363. package/dist/ui/data/backups.html +1757 -0
  364. package/dist/ui/data/services.html +1723 -0
  365. package/dist/ui/data/volumes.html +1639 -0
  366. package/dist/ui/index.html +392 -29
  367. package/dist/ui/integrations.html +1865 -0
  368. package/dist/ui/operations/alerts.html +1610 -0
  369. package/dist/ui/operations/configuration.html +1746 -0
  370. package/dist/ui/operations/jobs.html +1709 -0
  371. package/dist/ui/operations/maintenance.html +1540 -0
  372. package/dist/ui/operations/observability.html +1742 -0
  373. package/dist/ui/{serverless/scheduler.html → operations/previews.html} +447 -46
  374. package/dist/ui/operations/queue.html +1615 -0
  375. package/dist/ui/{server/workers.html → operations/regions.html} +413 -49
  376. package/dist/ui/operations/releases.html +1596 -0
  377. package/dist/ui/operations/workloads.html +1775 -0
  378. package/dist/ui/security.html +1767 -0
  379. package/dist/ui/server/actions.html +446 -57
  380. package/dist/ui/server/activity.html +346 -1
  381. package/dist/ui/server/capacity.html +1542 -0
  382. package/dist/ui/server/database.html +443 -36
  383. package/dist/ui/server/deployments.html +439 -53
  384. package/dist/ui/server/diagnostics.html +346 -1
  385. package/dist/ui/server/firewall.html +476 -50
  386. package/dist/ui/server/fleet.html +1577 -0
  387. package/dist/ui/server/logs.html +389 -25
  388. package/dist/ui/server/metrics.html +346 -1
  389. package/dist/ui/server/security.html +346 -1
  390. package/dist/ui/server/services.html +421 -46
  391. package/dist/ui/server/sites.html +476 -95
  392. package/dist/ui/server/ssh-keys.html +476 -46
  393. package/dist/ui/server/team.html +700 -77
  394. package/dist/ui/server/terminal.html +444 -54
  395. package/dist/ui/serverless/alarms.html +430 -42
  396. package/dist/ui/serverless/assets.html +421 -46
  397. package/dist/ui/serverless/cost.html +346 -1
  398. package/dist/ui/serverless/data.html +422 -47
  399. package/dist/ui/serverless/deployments.html +421 -46
  400. package/dist/ui/serverless/firewall.html +346 -1
  401. package/dist/ui/serverless/functions.html +423 -48
  402. package/dist/ui/serverless/logs.html +389 -25
  403. package/dist/ui/serverless/metrics.html +346 -1
  404. package/dist/ui/serverless/queues.html +448 -62
  405. package/dist/ui/serverless/secrets.html +448 -42
  406. package/dist/ui/serverless/traces.html +350 -5
  407. package/dist/ui/serverless.html +434 -58
  408. package/dist/ui-src/pages/404.stx +18 -0
  409. package/dist/ui-src/pages/accept-invitation.stx +50 -0
  410. package/dist/ui-src/pages/access-denied.stx +18 -0
  411. package/dist/ui-src/pages/account/automation.stx +187 -0
  412. package/dist/ui-src/pages/account/security.stx +249 -0
  413. package/dist/ui-src/pages/applications/compose.stx +38 -0
  414. package/dist/ui-src/pages/applications/new.stx +76 -0
  415. package/dist/ui-src/pages/data/backups.stx +214 -0
  416. package/dist/ui-src/pages/data/services.stx +257 -0
  417. package/dist/ui-src/pages/data/volumes.stx +40 -0
  418. package/dist/ui-src/pages/index.stx +24 -10
  419. package/dist/ui-src/pages/integrations.stx +186 -0
  420. package/dist/ui-src/pages/operations/alerts.stx +40 -0
  421. package/dist/ui-src/pages/operations/configuration.stx +164 -0
  422. package/dist/ui-src/pages/operations/jobs.stx +238 -0
  423. package/dist/ui-src/pages/operations/maintenance.stx +15 -0
  424. package/dist/ui-src/pages/operations/observability.stx +76 -0
  425. package/dist/ui-src/pages/operations/previews.stx +62 -0
  426. package/dist/ui-src/pages/operations/queue.stx +158 -0
  427. package/dist/ui-src/pages/operations/regions.stx +12 -0
  428. package/dist/ui-src/pages/operations/releases.stx +39 -0
  429. package/dist/ui-src/pages/operations/workloads.stx +151 -0
  430. package/dist/ui-src/pages/partials/head.stx +148 -15
  431. package/dist/ui-src/pages/partials/nav.stx +491 -74
  432. package/dist/ui-src/pages/partials/op-confirm.stx +6 -6
  433. package/dist/ui-src/pages/security.stx +264 -0
  434. package/dist/ui-src/pages/server/actions.stx +17 -26
  435. package/dist/ui-src/pages/server/capacity.stx +16 -0
  436. package/dist/ui-src/pages/server/database.stx +31 -16
  437. package/dist/ui-src/pages/server/deployments.stx +28 -30
  438. package/dist/ui-src/pages/server/firewall.stx +25 -30
  439. package/dist/ui-src/pages/server/fleet.stx +10 -0
  440. package/dist/ui-src/pages/server/logs.stx +11 -9
  441. package/dist/ui-src/pages/server/metrics.stx +8 -16
  442. package/dist/ui-src/pages/server/services.stx +19 -28
  443. package/dist/ui-src/pages/server/sites.stx +75 -72
  444. package/dist/ui-src/pages/server/ssh-keys.stx +24 -30
  445. package/dist/ui-src/pages/server/team.stx +286 -149
  446. package/dist/ui-src/pages/server/terminal.stx +6 -28
  447. package/dist/ui-src/pages/serverless/alarms.stx +17 -31
  448. package/dist/ui-src/pages/serverless/assets.stx +13 -22
  449. package/dist/ui-src/pages/serverless/cost.stx +15 -3
  450. package/dist/ui-src/pages/serverless/data.stx +12 -25
  451. package/dist/ui-src/pages/serverless/deployments.stx +14 -23
  452. package/dist/ui-src/pages/serverless/firewall.stx +5 -1
  453. package/dist/ui-src/pages/serverless/functions.stx +20 -26
  454. package/dist/ui-src/pages/serverless/logs.stx +11 -10
  455. package/dist/ui-src/pages/serverless/metrics.stx +18 -17
  456. package/dist/ui-src/pages/serverless/queues.stx +34 -42
  457. package/dist/ui-src/pages/serverless/secrets.stx +31 -34
  458. package/dist/ui-src/pages/serverless/traces.stx +2 -6
  459. package/dist/ui-src/pages/serverless.stx +40 -74
  460. package/package.json +11 -11
  461. package/dist/chunk-b17vf1g1.js +0 -13787
  462. package/dist/chunk-b82pbxyp.js +0 -1572
  463. package/dist/chunk-pqfzdg68.js +0 -12
  464. package/dist/chunk-z58fqnjm.js +0 -10
  465. package/dist/ui-src/pages/server/backups.stx +0 -91
  466. package/dist/ui-src/pages/server/workers.stx +0 -99
  467. package/dist/ui-src/pages/serverless/scheduler.stx +0 -89
@@ -0,0 +1,54 @@
1
+ import type { JsonValue } from '../control-plane';
2
+ import type { CapacityPool, PoolBackend, RemoteBuild, RemoteBuildDriver } from './types';
3
+ export interface RemoteBuildTransport {
4
+ provision(input: {
5
+ backend: PoolBackend;
6
+ pool: CapacityPool;
7
+ build: RemoteBuild;
8
+ tokenExpiresAt: string;
9
+ }): Promise<{
10
+ handle: string;
11
+ }>;
12
+ execute(input: {
13
+ handle: string;
14
+ spec: JsonValue;
15
+ sourceSha: string;
16
+ signal: AbortSignal;
17
+ onLog(message: string): void;
18
+ }): Promise<void>;
19
+ publish(input: {
20
+ handle: string;
21
+ sourceSha: string;
22
+ }): Promise<{
23
+ artifactUri: string;
24
+ artifactDigest: string;
25
+ cacheKey?: string;
26
+ }>;
27
+ destroy(input: {
28
+ handle: string;
29
+ }): Promise<void>;
30
+ }
31
+ /** Provider-neutral orchestration over real server, ECS task, or ASG runner transports. */
32
+ export declare class TransportRemoteBuildDriver implements RemoteBuildDriver {
33
+ readonly backend: PoolBackend;
34
+ private transport;
35
+ private handles;
36
+ constructor(backend: PoolBackend, transport: RemoteBuildTransport);
37
+ run({ build, pool, signal, log, }: {
38
+ build: RemoteBuild;
39
+ pool: CapacityPool;
40
+ signal: AbortSignal;
41
+ log(message: string): void;
42
+ }): Promise<{
43
+ artifactUri: string;
44
+ artifactDigest: string;
45
+ cacheKey?: string;
46
+ }>;
47
+ cleanup({ build }: {
48
+ build: RemoteBuild;
49
+ pool: CapacityPool;
50
+ }): Promise<void>;
51
+ }
52
+ export declare const createServerBuildDriver: (transport: RemoteBuildTransport) => TransportRemoteBuildDriver;
53
+ export declare const createEcsBuildDriver: (transport: RemoteBuildTransport) => TransportRemoteBuildDriver;
54
+ export declare const createAsgBuildDriver: (transport: RemoteBuildTransport) => TransportRemoteBuildDriver;
@@ -0,0 +1,6 @@
1
+ export * from './types';
2
+ export * from './store';
3
+ export * from './service';
4
+ export * from './builds';
5
+ export * from './queue';
6
+ export * from './drivers';
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,4 @@
1
+ import type { QueueOperationHandler } from '../queue';
2
+ import type { RemoteBuildDriver } from './types';
3
+ import { PlacementStore } from './store';
4
+ export declare function createRemoteBuildQueueHandlers(store: PlacementStore, drivers: readonly RemoteBuildDriver[]): Record<string, QueueOperationHandler>;
@@ -0,0 +1,34 @@
1
+ import type { FleetStore } from '../fleet';
2
+ import type { CapacityPool, PlacementDecision, PlacementRequirements, WorkloadPlacement } from './types';
3
+ import { PlacementStore } from './store';
4
+ export declare class PlacementService {
5
+ readonly store: PlacementStore;
6
+ readonly fleet: FleetStore;
7
+ constructor(store: PlacementStore, fleet: FleetStore);
8
+ private poolCandidates;
9
+ private serverReasons;
10
+ private decision;
11
+ explain(projectId: string, requirements: PlacementRequirements): PlacementDecision[];
12
+ place(input: {
13
+ projectId: string;
14
+ environmentId?: string;
15
+ resourceId: string;
16
+ releaseId?: string;
17
+ requirements: PlacementRequirements;
18
+ }): WorkloadPlacement;
19
+ activate(id: string): WorkloadPlacement;
20
+ release(id: string): WorkloadPlacement;
21
+ drainPool(id: string): {
22
+ pool: CapacityPool;
23
+ moved: WorkloadPlacement[];
24
+ blocked: WorkloadPlacement[];
25
+ };
26
+ drainServer(poolId: string, serverId: string): {
27
+ moved: WorkloadPlacement[];
28
+ blocked: WorkloadPlacement[];
29
+ };
30
+ reconcileFailure(serverId: string): {
31
+ rescheduled: WorkloadPlacement[];
32
+ blocked: WorkloadPlacement[];
33
+ };
34
+ }
@@ -0,0 +1,49 @@
1
+ import type { ControlPlaneStore, JsonValue } from '../control-plane';
2
+ import type { CapacityPool, CapacityVector, PlacementDecision, PlacementRequirements, RemoteBuild, WorkloadPlacement } from './types';
3
+ export declare const zeroCapacity: () => CapacityVector;
4
+ export declare const capacity: (value?: Partial<CapacityVector>) => CapacityVector;
5
+ export declare class PlacementStore {
6
+ readonly control: ControlPlaneStore;
7
+ private now;
8
+ private id;
9
+ constructor(control: ControlPlaneStore, now?: () => Date, id?: () => string);
10
+ createPool(input: Omit<CapacityPool, 'id' | 'reserved' | 'version' | 'createdAt' | 'updatedAt'>): CapacityPool;
11
+ getPool(id: string): CapacityPool | undefined;
12
+ listPools(projectId: string): CapacityPool[];
13
+ updatePool(id: string, patch: Partial<Pick<CapacityPool, 'status' | 'reserved' | 'capacity' | 'concurrency'>>): CapacityPool;
14
+ addMember(poolId: string, serverId: string, override?: Partial<CapacityVector>): void;
15
+ members(poolId: string): Array<{
16
+ serverId: string;
17
+ status: string;
18
+ capacityOverride: Partial<CapacityVector>;
19
+ }>;
20
+ memberStatus(poolId: string, serverId: string, status: 'active' | 'draining' | 'offline'): void;
21
+ listPlacements(projectId: string, statuses?: WorkloadPlacement['status'][]): WorkloadPlacement[];
22
+ getPlacement(id: string): WorkloadPlacement | undefined;
23
+ activeUsage(poolId: string, serverId?: string): {
24
+ resources: CapacityVector;
25
+ count: number;
26
+ };
27
+ expireLeases(): number;
28
+ reserve(input: {
29
+ projectId: string;
30
+ environmentId?: string;
31
+ resourceId: string;
32
+ releaseId?: string;
33
+ requirements: PlacementRequirements;
34
+ decision: PlacementDecision;
35
+ }): WorkloadPlacement;
36
+ transitionPlacement(id: string, status: WorkloadPlacement['status']): WorkloadPlacement;
37
+ createBuild(input: {
38
+ projectId: string;
39
+ resourceId?: string;
40
+ poolId: string;
41
+ placementId?: string;
42
+ operationId?: string;
43
+ sourceSha: string;
44
+ buildSpec: JsonValue;
45
+ tokenExpiresAt: string;
46
+ }): RemoteBuild;
47
+ getBuild(id: string): RemoteBuild | undefined;
48
+ updateBuild(id: string, patch: Partial<Pick<RemoteBuild, 'status' | 'operationId' | 'workspace' | 'cacheKey' | 'artifactUri' | 'artifactDigest' | 'cleanupAt'>>): RemoteBuild;
49
+ }
@@ -0,0 +1,109 @@
1
+ import type { JsonValue } from '../control-plane';
2
+ export type PoolPurpose = 'application' | 'build' | 'worker' | 'monitoring' | 'backup';
3
+ export type PoolBackend = 'server' | 'ecs' | 'asg';
4
+ export type CapacityVector = Record<'cpu' | 'memoryBytes' | 'diskBytes' | 'gpu', number>;
5
+ export interface CapacityPool {
6
+ id: string;
7
+ organizationId: string;
8
+ projectId: string;
9
+ name: string;
10
+ purpose: PoolPurpose;
11
+ backend: PoolBackend;
12
+ region?: string;
13
+ architecture?: string;
14
+ labels: Record<string, string>;
15
+ requiredServerLabels: Record<string, string>;
16
+ toleratedTaints: string[];
17
+ capacity: CapacityVector;
18
+ reserved: Partial<CapacityVector>;
19
+ maxWorkloads: number;
20
+ costWeight: number;
21
+ spreadKey?: string;
22
+ concurrency: number;
23
+ ephemeralWorkspaces: boolean;
24
+ allowProductionSecrets: boolean;
25
+ status: 'active' | 'draining' | 'disabled';
26
+ version: number;
27
+ createdAt: string;
28
+ updatedAt: string;
29
+ }
30
+ export interface PlacementRequirements {
31
+ purpose: PoolPurpose;
32
+ resources: Partial<CapacityVector>;
33
+ region?: string;
34
+ architecture?: string;
35
+ labels?: Record<string, string>;
36
+ stateful?: boolean;
37
+ autoReschedule?: boolean;
38
+ leaseSeconds?: number;
39
+ }
40
+ export interface PlacementDecision {
41
+ poolId: string;
42
+ poolName: string;
43
+ serverId?: string;
44
+ eligible: boolean;
45
+ reasons: string[];
46
+ available: CapacityVector;
47
+ score: {
48
+ fit: number;
49
+ spread: number;
50
+ cost: number;
51
+ };
52
+ }
53
+ export interface WorkloadPlacement {
54
+ id: string;
55
+ projectId: string;
56
+ environmentId?: string;
57
+ resourceId: string;
58
+ releaseId?: string;
59
+ poolId: string;
60
+ serverId?: string;
61
+ purpose: PoolPurpose;
62
+ requirements: PlacementRequirements;
63
+ decision: PlacementDecision;
64
+ stateful: boolean;
65
+ autoReschedule: boolean;
66
+ status: 'reserved' | 'active' | 'moving' | 'blocked' | 'released' | 'failed';
67
+ version: number;
68
+ createdAt: string;
69
+ updatedAt: string;
70
+ }
71
+ export interface RemoteBuild {
72
+ id: string;
73
+ projectId: string;
74
+ resourceId?: string;
75
+ poolId: string;
76
+ placementId?: string;
77
+ operationId?: string;
78
+ sourceSha: string;
79
+ buildSpec: JsonValue;
80
+ credentialPolicy: {
81
+ productionSecrets: false;
82
+ shortLivedTokenExpiresAt: string;
83
+ };
84
+ workspace?: string;
85
+ cacheKey?: string;
86
+ artifactUri?: string;
87
+ artifactDigest?: string;
88
+ status: 'queued' | 'running' | 'uploading' | 'succeeded' | 'failed' | 'cancelled' | 'cleanup_required';
89
+ cleanupAt?: string;
90
+ createdAt: string;
91
+ updatedAt: string;
92
+ }
93
+ export interface RemoteBuildDriver {
94
+ backend: PoolBackend;
95
+ run(input: {
96
+ build: RemoteBuild;
97
+ pool: CapacityPool;
98
+ signal: AbortSignal;
99
+ log(message: string): void;
100
+ }): Promise<{
101
+ artifactUri: string;
102
+ artifactDigest: string;
103
+ cacheKey?: string;
104
+ }>;
105
+ cleanup(input: {
106
+ build: RemoteBuild;
107
+ pool: CapacityPool;
108
+ }): Promise<void>;
109
+ }
@@ -0,0 +1,3 @@
1
+ export * from './types';
2
+ export * from './store';
3
+ export * from './service';
@@ -0,0 +1,45 @@
1
+ import type { ControlPlaneOperation, ControlPlaneStore, JsonValue } from '../control-plane';
2
+ import type { PreviewInstance } from './types';
3
+ import { DurableOperationQueue } from '../queue';
4
+ import { PreviewEnvironmentStore } from './store';
5
+ export interface PreviewCleanupCandidate {
6
+ preview: PreviewInstance;
7
+ reasons: string[];
8
+ }
9
+ export interface PreviewCleanupResult {
10
+ candidates: PreviewCleanupCandidate[];
11
+ operations: ControlPlaneOperation[];
12
+ dryRun: boolean;
13
+ }
14
+ export interface DiscoveredPreviewResource {
15
+ provider: string;
16
+ providerResourceId: string;
17
+ kind: string;
18
+ tags: Record<string, string>;
19
+ observedState?: JsonValue;
20
+ estimatedMonthlyCost?: number;
21
+ }
22
+ export declare class PreviewEnvironmentService {
23
+ readonly controlPlane: ControlPlaneStore;
24
+ readonly previews: PreviewEnvironmentStore;
25
+ readonly queue: DurableOperationQueue;
26
+ constructor(controlPlane: ControlPlaneStore);
27
+ enqueueDeploy(preview: PreviewInstance, input?: {
28
+ created?: boolean;
29
+ actorId?: string;
30
+ reason?: string;
31
+ }): ControlPlaneOperation;
32
+ enqueueDestroy(preview: PreviewInstance, reason: string, actorId?: string): ControlPlaneOperation;
33
+ cleanup(input?: {
34
+ now?: Date;
35
+ maxAgeHours?: number;
36
+ keepCount?: number;
37
+ dryRun?: boolean;
38
+ actorId?: string;
39
+ }): PreviewCleanupResult;
40
+ reconcile(discovered: DiscoveredPreviewResource[]): {
41
+ matched: string[];
42
+ unknownPreviewResources: string[];
43
+ ignoredUntagged: string[];
44
+ };
45
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,47 @@
1
+ import type { ControlPlaneStore, JsonValue } from '../control-plane';
2
+ import type { CreatePreviewDefinitionInput, PreviewDefinition, PreviewInstance, PreviewResource, PreviewStatus, UpsertPreviewInput } from './types';
3
+ export declare class PreviewEnvironmentStore {
4
+ readonly controlPlane: ControlPlaneStore;
5
+ private readonly now;
6
+ private readonly id;
7
+ constructor(controlPlane: ControlPlaneStore, options?: {
8
+ now?: () => Date;
9
+ id?: () => string;
10
+ });
11
+ createDefinition(input: CreatePreviewDefinitionInput): PreviewDefinition;
12
+ getDefinition(id: string): PreviewDefinition | undefined;
13
+ getDefinitionForResource(resourceId: string): PreviewDefinition | undefined;
14
+ listDefinitions(projectId: string): PreviewDefinition[];
15
+ listInstances(input?: {
16
+ projectId?: string;
17
+ definitionId?: string;
18
+ status?: PreviewStatus;
19
+ }): PreviewInstance[];
20
+ getInstance(id: string): PreviewInstance | undefined;
21
+ findForPullRequest(definitionId: string, repository: string, pullRequestNumber: number): PreviewInstance | undefined;
22
+ findForBranch(definitionId: string, repository: string, branch: string): PreviewInstance | undefined;
23
+ upsert(input: UpsertPreviewInput): {
24
+ preview: PreviewInstance;
25
+ created: boolean;
26
+ changed: boolean;
27
+ inheritedSecrets: string[];
28
+ };
29
+ transition(id: string, status: PreviewStatus, input?: {
30
+ operationId?: string;
31
+ observedState?: JsonValue;
32
+ teardownError?: string;
33
+ costEstimate?: number;
34
+ }): PreviewInstance;
35
+ extend(id: string, hours: number): PreviewInstance;
36
+ expired(now?: Date): PreviewInstance[];
37
+ recordResource(input: {
38
+ previewId: string;
39
+ provider: string;
40
+ providerResourceId: string;
41
+ kind: string;
42
+ tags: Record<string, string>;
43
+ observedState?: JsonValue;
44
+ }): PreviewResource;
45
+ listResources(previewId: string): PreviewResource[];
46
+ markResourcesDeleted(previewId: string): number;
47
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,99 @@
1
+ import type { JsonValue } from '../control-plane';
2
+ export type PreviewDatabaseStrategy = 'disabled' | 'isolated' | 'snapshot' | 'shared_read_only';
3
+ export type PreviewStatus = 'queued' | 'deploying' | 'active' | 'updating' | 'destroying' | 'destroyed' | 'failed' | 'cleanup_failed';
4
+ export interface PreviewDefinition {
5
+ id: string;
6
+ projectId: string;
7
+ resourceId: string;
8
+ baseEnvironmentId: string;
9
+ enabled: boolean;
10
+ branchRule?: string;
11
+ domainPattern: string;
12
+ ttlHours: number;
13
+ keepCount: number;
14
+ publicAccess: boolean;
15
+ authenticationRequired: boolean;
16
+ allowForks: boolean;
17
+ inheritedSecrets: string[];
18
+ resourceOverrides: JsonValue;
19
+ databaseStrategy: PreviewDatabaseStrategy;
20
+ maxMonthlyCost: number;
21
+ maxCpu: number;
22
+ maxMemoryMb: number;
23
+ cleanupOnClose: boolean;
24
+ version: number;
25
+ createdByActorId?: string;
26
+ createdAt: string;
27
+ updatedAt: string;
28
+ }
29
+ export interface PreviewInstance {
30
+ id: string;
31
+ definitionId: string;
32
+ projectId: string;
33
+ resourceId: string;
34
+ baseEnvironmentId: string;
35
+ identityKey: string;
36
+ sourceProvider?: string;
37
+ repository?: string;
38
+ branch: string;
39
+ pullRequestNumber?: number;
40
+ fork: boolean;
41
+ commitSha: string;
42
+ name: string;
43
+ stackName: string;
44
+ url?: string;
45
+ status: PreviewStatus;
46
+ expiresAt: string;
47
+ latestOperationId?: string;
48
+ createdByActorId?: string;
49
+ costEstimate?: number;
50
+ desiredState: JsonValue;
51
+ observedState: JsonValue;
52
+ teardownError?: string;
53
+ version: number;
54
+ createdAt: string;
55
+ updatedAt: string;
56
+ destroyedAt?: string;
57
+ }
58
+ export interface PreviewResource {
59
+ id: string;
60
+ previewId: string;
61
+ provider: string;
62
+ providerResourceId: string;
63
+ kind: string;
64
+ tags: Record<string, string>;
65
+ observedState: JsonValue;
66
+ discoveredAt: string;
67
+ deletedAt?: string;
68
+ }
69
+ export interface CreatePreviewDefinitionInput {
70
+ projectId: string;
71
+ resourceId: string;
72
+ baseEnvironmentId: string;
73
+ branchRule?: string;
74
+ domainPattern: string;
75
+ ttlHours?: number;
76
+ keepCount?: number;
77
+ publicAccess?: boolean;
78
+ authenticationRequired?: boolean;
79
+ allowForks?: boolean;
80
+ inheritedSecrets?: string[];
81
+ resourceOverrides?: JsonValue;
82
+ databaseStrategy?: PreviewDatabaseStrategy;
83
+ maxMonthlyCost?: number;
84
+ maxCpu?: number;
85
+ maxMemoryMb?: number;
86
+ cleanupOnClose?: boolean;
87
+ createdByActorId?: string;
88
+ }
89
+ export interface UpsertPreviewInput {
90
+ definitionId: string;
91
+ sourceProvider?: string;
92
+ repository?: string;
93
+ branch: string;
94
+ pullRequestNumber?: number;
95
+ fork?: boolean;
96
+ commitSha: string;
97
+ createdByActorId?: string;
98
+ now?: Date;
99
+ }
@@ -1,29 +1,3 @@
1
- /**
2
- * Apple Push Notification Service (APNs) Client
3
- * Uses HTTP/2 with JWT token authentication
4
- *
5
- * Prerequisites:
6
- * - Apple Developer account
7
- * - APNs Key (p8 file) from Apple Developer Portal
8
- * - Key ID and Team ID
9
- *
10
- * @example
11
- * ```ts
12
- * const apns = new APNsClient({
13
- * keyId: 'ABC123DEFG',
14
- * teamId: 'DEF456GHIJ',
15
- * privateKey: fs.readFileSync('AuthKey_ABC123DEFG.p8', 'utf8'),
16
- * bundleId: 'com.example.app',
17
- * production: false // true for production, false for sandbox
18
- * })
19
- *
20
- * await apns.send({
21
- * deviceToken: '...',
22
- * title: 'Hello',
23
- * body: 'World',
24
- * })
25
- * ```
26
- */
27
1
  export interface APNsConfig {
28
2
  /** APNs Key ID from Apple Developer Portal */
29
3
  keyId: string;
@@ -1,26 +1,3 @@
1
- /**
2
- * Firebase Cloud Messaging (FCM) Client
3
- * Uses FCM HTTP v1 API with Google OAuth2 authentication
4
- *
5
- * Prerequisites:
6
- * - Firebase project
7
- * - Service account JSON key from Firebase Console
8
- *
9
- * @example
10
- * ```ts
11
- * const fcm = new FCMClient({
12
- * projectId: 'your-project-id',
13
- * clientEmail: 'firebase-adminsdk@project.iam.gserviceaccount.com',
14
- * privateKey: '-----BEGIN PRIVATE KEY-----\n...',
15
- * })
16
- *
17
- * await fcm.send({
18
- * token: '...',
19
- * title: 'Hello',
20
- * body: 'World',
21
- * })
22
- * ```
23
- */
24
1
  export interface FCMConfig {
25
2
  /** Firebase project ID */
26
3
  projectId: string;
@@ -40,5 +40,5 @@
40
40
  */
41
41
  export * from './apns';
42
42
  export * from './fcm';
43
- export type { APNsConfig, APNsNotification, APNsSendResult, APNsBatchResult, } from './apns';
44
- export type { FCMConfig, FCMNotification, FCMSendResult, FCMBatchResult, } from './fcm';
43
+ export type { APNsConfig, APNsNotification, APNsSendResult, APNsBatchResult } from './apns';
44
+ export type { FCMConfig, FCMNotification, FCMSendResult, FCMBatchResult } from './fcm';
@@ -1,8 +1,8 @@
1
1
  import"../chunk-v0bahtg2.js";
2
2
 
3
3
  // src/push/apns.ts
4
- import { createSign } from "node:crypto";
5
4
  import * as http2 from "node:http2";
5
+ import { createSign } from "node:crypto";
6
6
  var APNS_PRODUCTION_HOST = "api.push.apple.com";
7
7
  var APNS_SANDBOX_HOST = "api.sandbox.push.apple.com";
8
8
  var TOKEN_EXPIRY_MS = 45 * 60 * 1000;
@@ -0,0 +1,27 @@
1
+ import type { ControlPlaneOperation, ControlPlaneStore } from '../control-plane';
2
+ import type { QueueExecutionContext, QueueOperationHandler } from './types';
3
+ export declare const DEPLOYMENT_QUEUE_KINDS: readonly ['deployment.create', 'deployment.rollback', 'application.create', 'deploy.source', 'deploy.preview', 'preview.create', 'preview.update', 'preview.destroy', 'compose.deploy', 'compose.redeploy', 'compose.start', 'compose.stop', 'compose.delete', 'compose.scale'];
4
+ export interface QueuedDeploymentCommand {
5
+ id: string;
6
+ label: string;
7
+ description: string;
8
+ command: string[];
9
+ mutates: true;
10
+ target: {
11
+ environment: string;
12
+ resource?: string;
13
+ previewId?: string;
14
+ composeId?: string;
15
+ };
16
+ }
17
+ export interface QueuedDeploymentResult {
18
+ ok: boolean;
19
+ exitCode: number;
20
+ command?: string;
21
+ stderr?: string;
22
+ }
23
+ export declare function resolveQueuedDeploymentCommand(store: ControlPlaneStore, operation: ControlPlaneOperation): QueuedDeploymentCommand;
24
+ export declare function createDeploymentQueueHandlers(input: {
25
+ store: ControlPlaneStore;
26
+ execute: (command: QueuedDeploymentCommand, context: QueueExecutionContext) => Promise<QueuedDeploymentResult>;
27
+ }): Record<string, QueueOperationHandler>;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,4 @@
1
+ export * from './types';
2
+ export * from './queue';
3
+ export * from './worker';
4
+ export * from './deployment-handlers';
@@ -0,0 +1,57 @@
1
+ import type { ControlPlaneOperation, ControlPlaneStore, JsonValue, OperationState } from '../control-plane';
2
+ import type { EnqueueOperationInput, OperationJob, OperationLogEntry, QueueConcurrencyLimits, QueueLogInput, QueueOperationHandler, QueueOperationView, QueueRecoveryResult, QueueRunResult } from './types';
3
+ export declare class DurableOperationQueue {
4
+ readonly controlPlane: ControlPlaneStore;
5
+ private readonly nowFn;
6
+ private readonly idFn;
7
+ private readonly workerId;
8
+ private readonly leaseMs;
9
+ readonly limits: QueueConcurrencyLimits;
10
+ constructor(controlPlane: ControlPlaneStore, options?: {
11
+ workerId?: string;
12
+ leaseMs?: number;
13
+ limits?: Partial<QueueConcurrencyLimits>;
14
+ now?: () => Date;
15
+ id?: () => string;
16
+ });
17
+ private now;
18
+ private leaseExpiry;
19
+ enqueue(input: EnqueueOperationInput): QueueOperationView;
20
+ getJob(operationId: string): OperationJob | undefined;
21
+ view(operationId: string): QueueOperationView | undefined;
22
+ list(input?: {
23
+ projectId?: string;
24
+ state?: OperationState;
25
+ limit?: number;
26
+ }): QueueOperationView[];
27
+ configureConcurrency(limits: Partial<QueueConcurrencyLimits>, input?: {
28
+ organizationId?: string;
29
+ actorId?: string;
30
+ }): QueueConcurrencyLimits;
31
+ private runningCount;
32
+ private blockReason;
33
+ claim(operationId: string): QueueOperationView | undefined;
34
+ claimNext(kinds?: readonly string[]): QueueOperationView | undefined;
35
+ heartbeat(operationId: string, step?: string): void;
36
+ appendLog(operationId: string, message: string, input?: QueueLogInput): OperationLogEntry;
37
+ logs(operationId: string, input?: {
38
+ after?: number;
39
+ limit?: number;
40
+ }): OperationLogEntry[];
41
+ requestCancellation(operationId: string, actorId?: string): ControlPlaneOperation;
42
+ retry(operationId: string, errorClass: string, input?: {
43
+ delayMs?: number;
44
+ actorId?: string;
45
+ }): ControlPlaneOperation;
46
+ private release;
47
+ private finish;
48
+ complete(operationId: string, output?: JsonValue): ControlPlaneOperation;
49
+ fail(operationId: string, error: string, output?: JsonValue): ControlPlaneOperation;
50
+ runOne(handlers: Record<string, QueueOperationHandler>): Promise<QueueRunResult>;
51
+ recoverExpired(): QueueRecoveryResult;
52
+ clearCompleted(input?: {
53
+ before?: string;
54
+ actorId?: string;
55
+ projectId?: string;
56
+ }): number;
57
+ }
@@ -0,0 +1 @@
1
+ export {};