@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
@@ -1,16 +1,3 @@
1
- /**
2
- * Cookie-backed sessions for the management dashboard.
3
- *
4
- * Sessions are stateless signed tokens (`payload.signature`, HMAC-SHA256) so
5
- * they survive a dashboard restart without a session store. The payload carries
6
- * only the username and an expiry; every request re-loads the user from the
7
- * store, so a revoked or downgraded grant takes effect immediately rather than
8
- * lingering until the token expires.
9
- *
10
- * The signing secret is resolved from `TS_CLOUD_DASHBOARD_SECRET`, else
11
- * generated once and persisted to `.ts-cloud/dashboard-secret`. Rotating it
12
- * invalidates every outstanding session.
13
- */
14
1
  export declare const SESSION_COOKIE = "ts_cloud_session";
15
2
  export declare const SECRET_FILE: string;
16
3
  /** Eight hours: long enough to work through a deploy, short enough to expire. */
@@ -20,6 +7,8 @@ export interface SessionPayload {
20
7
  u: string;
21
8
  /** Expiry, epoch milliseconds. */
22
9
  exp: number;
10
+ /** Organization membership versions at issuance; changes revoke the session. */
11
+ mv?: Record<string, number>;
23
12
  }
24
13
  /**
25
14
  * Resolve the HMAC signing secret, generating and persisting one on first use.
@@ -27,7 +16,7 @@ export interface SessionPayload {
27
16
  */
28
17
  export declare function resolveSessionSecret(cwd: string): string;
29
18
  /** Issue a signed session token for `username`. */
30
- export declare function createSessionToken(username: string, secret: string, ttlMs?: number): string;
19
+ export declare function createSessionToken(username: string, secret: string, ttlMs?: number, membershipVersions?: Record<string, number>): string;
31
20
  /**
32
21
  * Verify a token and return its payload, or null when the signature is invalid,
33
22
  * the token is malformed, or it has expired. Signature is compared before the
@@ -0,0 +1 @@
1
+ export {};
@@ -35,6 +35,7 @@ export interface UpsertMemberInput {
35
35
  username: string;
36
36
  password?: string;
37
37
  name?: string;
38
+ email?: string;
38
39
  sites: Record<string, SiteRole>;
39
40
  }
40
41
  /**
@@ -48,6 +49,8 @@ export declare function upsertMember(cwd: string, input: UpsertMemberInput): {
48
49
  user: DashboardUser;
49
50
  password?: string;
50
51
  };
52
+ /** Replace a local credential while preserving the user's role and grants. */
53
+ export declare function updateUserPassword(cwd: string, username: string, passwordHash: string): DashboardUser;
51
54
  /**
52
55
  * Remove a user. The last admin cannot be removed — that would lock everyone
53
56
  * out of the box with no way back in short of editing the file by hand.
@@ -0,0 +1,87 @@
1
+ import type { DnsProvider } from '../dns/types';
2
+ import { CloudFormationClient } from '../aws/cloudformation';
3
+ import { CloudFrontClient } from '../aws/cloudfront';
4
+ import { STSClient } from '../aws/sts';
5
+ export interface ExistingStaticFullStackOptions {
6
+ name: string;
7
+ slug: string;
8
+ imageUri: string;
9
+ distributionId: string;
10
+ expectedAlias: string;
11
+ stackName?: string;
12
+ region?: string;
13
+ profile?: string;
14
+ pathPattern?: string;
15
+ originId?: string;
16
+ originDomain?: string;
17
+ certificateArn?: string;
18
+ originVerifySecret?: string;
19
+ desiredCount?: number;
20
+ database?: boolean;
21
+ cache?: boolean;
22
+ queue?: boolean;
23
+ apply?: boolean;
24
+ confirm?: string;
25
+ skipHealthCheck?: boolean;
26
+ }
27
+ export interface ExistingStaticFullStackPlan {
28
+ mode: 'plan' | 'apply';
29
+ accountId: string;
30
+ stack: {
31
+ name: string;
32
+ existed: boolean;
33
+ status?: string;
34
+ templateSha256: string;
35
+ resourceCount: number;
36
+ resourceTypes: Record<string, number>;
37
+ };
38
+ distribution: {
39
+ id: string;
40
+ alias: string;
41
+ domainName: string;
42
+ status: string;
43
+ pathPattern: string;
44
+ originId: string;
45
+ };
46
+ artifact: {
47
+ imageUri: string;
48
+ digest: string;
49
+ };
50
+ services: {
51
+ database: boolean;
52
+ cache: boolean;
53
+ queue: boolean;
54
+ mail: 'ses';
55
+ desiredCount: number;
56
+ };
57
+ outputs?: Record<string, string>;
58
+ health?: {
59
+ url: string;
60
+ status: number;
61
+ latencyMs: number;
62
+ body: unknown;
63
+ };
64
+ cloudFrontApplied: boolean;
65
+ dnsApplied: boolean;
66
+ applied: boolean;
67
+ rollback: string[];
68
+ }
69
+ export interface ExistingStaticFullStackDependencies {
70
+ cloudformation: Pick<CloudFormationClient, 'describeStacks' | 'createStack' | 'updateStack' | 'waitForStack'>;
71
+ cloudfront: Pick<CloudFrontClient, 'getDistribution' | 'upsertExistingDistributionOrigin'>;
72
+ sts: Pick<STSClient, 'getCallerIdentity'>;
73
+ dns?: Pick<DnsProvider, 'upsertRecord'>;
74
+ fetch: typeof fetch;
75
+ sleep: (milliseconds: number) => Promise<void>;
76
+ }
77
+ export declare function createExistingStaticFullStackDependencies(options: Pick<ExistingStaticFullStackOptions, 'region' | 'profile'>): ExistingStaticFullStackDependencies;
78
+ export declare function generateExistingStaticFullStackTemplate(options: ExistingStaticFullStackOptions): Record<string, any>;
79
+ export declare function deployExistingStaticFullStack(options: ExistingStaticFullStackOptions, injected?: ExistingStaticFullStackDependencies): Promise<ExistingStaticFullStackPlan>;
80
+ export declare function estimateExistingStaticFullStackMonthlyCost(options?: {
81
+ desiredCount?: number;
82
+ multiAzDatabase?: boolean;
83
+ }): {
84
+ monthlyUsd: number;
85
+ components: Record<string, number>;
86
+ assumptions: string[];
87
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -4,11 +4,16 @@
4
4
  */
5
5
  export * from './site-target';
6
6
  export * from './server-dns';
7
+ export * from './dashboard-control-plane';
8
+ export * from './dashboard-route-manifest';
7
9
  export * from './static-site';
8
10
  export * from './static-site-external-dns';
9
11
  export * from './static-site-helper';
12
+ export * from './static-api-origin';
13
+ export * from './fullstack-container';
14
+ export * from './container-image';
10
15
  export { buildFunctionEnv, type CodeSource, deployServerlessApp, type DeployServerlessOptions, infraEnvFromOutputs, redeployServerlessApp, type ResolvedContext, rollbackServerlessApp, runRemoteCommand, setMaintenance, } from './serverless-app';
11
- export { buildAndPushServerlessImage, type BuildImageOptions, type BuiltImage, } from './serverless-image';
12
- export { type DashboardData, resolveDashboardData, } from './dashboard-data';
16
+ export { buildAndPushServerlessImage, type BuildImageOptions, type BuiltImage } from './serverless-image';
17
+ export { type DashboardData, resolveDashboardData } from './dashboard-data';
13
18
  export { dashboardActions, resolveDashboardAction, sanitizeCloudConfig, startLocalDashboardServer, type DashboardAction, type LocalDashboardServer, type LocalDashboardServerOptions, } from './local-dashboard-server';
14
19
  export { buildManagementDashboardArtifact, DASHBOARD_CREDENTIALS_FILE, ensureManagementDashboard, type EnsureDashboardLogger, MANAGEMENT_DASHBOARD_SITE, resolveDashboardAuth, type ResolvedDashboardAuth, resolveUiSource, } from './management-dashboard';
@@ -1,25 +1,57 @@
1
1
  import {
2
+ buildAndPushContainerImage,
2
3
  buildFunctionEnv,
3
4
  collectServerDnsDomains,
5
+ createContainerImageDependencies,
6
+ createExistingStaticFullStackDependencies,
7
+ createStaticApiOriginDependencies,
4
8
  dashboardActions,
9
+ dashboardPageRoutes,
10
+ deployExistingStaticFullStack,
5
11
  deployServerlessApp,
6
12
  deploySite,
13
+ deployStaticApiOrigin,
14
+ ensureDashboardActor,
15
+ estimateExistingStaticFullStackMonthlyCost,
16
+ estimateStaticApiOriginMonthlyCost,
17
+ generateExistingStaticFullStackTemplate,
18
+ hashContainerContext,
7
19
  infraEnvFromOutputs,
20
+ initializeDashboardControlPlane,
8
21
  redeployServerlessApp,
9
22
  removeStaleServerAddressRecords,
10
23
  resolveDashboardAction,
11
24
  resolveDashboardData,
25
+ resolveLegacyDashboardRoute,
12
26
  rollbackServerlessApp,
27
+ routesForDashboard,
13
28
  runRemoteCommand,
14
29
  sanitizeCloudConfig,
15
30
  setMaintenance,
16
- startLocalDashboardServer
17
- } from "../chunk-b17vf1g1.js";
31
+ startLocalDashboardServer,
32
+ synchronizeDashboardUsers,
33
+ trackDashboardOperation,
34
+ verifyStaticApiOrigin
35
+ } from "../chunk-fw3q88wk.js";
36
+ import {
37
+ deleteStaticSite,
38
+ deployStaticSite,
39
+ deployStaticSiteFull,
40
+ deployStaticSiteWithExternalDns,
41
+ deployStaticSiteWithExternalDnsFull,
42
+ generateExternalDnsStaticSiteTemplate,
43
+ generateStaticSiteTemplate,
44
+ invalidateCache,
45
+ uploadStaticFiles
46
+ } from "../chunk-vvkd46k1.js";
18
47
  import {
19
48
  buildAndPushServerlessImage
20
- } from "../chunk-f29w04w5.js";
21
- import"../chunk-b82pbxyp.js";
22
- import"../chunk-hsk6fe6x.js";
49
+ } from "../chunk-exbcsab2.js";
50
+ import"../chunk-ybcz6sxc.js";
51
+ import"../chunk-01d86gt1.js";
52
+ import"../chunk-50jpda9q.js";
53
+ import"../chunk-he9a874b.js";
54
+ import"../chunk-fv1bj3yt.js";
23
55
  import {
24
56
  DASHBOARD_CREDENTIALS_FILE,
25
57
  MANAGEMENT_DASHBOARD_SITE,
@@ -30,41 +62,36 @@ import {
30
62
  resolveSiteDeployTarget,
31
63
  resolveSiteKind,
32
64
  resolveUiSource,
65
+ shipsARelease,
33
66
  siteInstallBase,
34
67
  validateDeploymentConfig
35
- } from "../chunk-d5vqwj8s.js";
36
- import"../chunk-r16e02bc.js";
37
- import"../chunk-93hjhs78.js";
38
- import {
39
- deleteStaticSite,
40
- deployStaticSite,
41
- deployStaticSiteFull,
42
- deployStaticSiteWithExternalDns,
43
- deployStaticSiteWithExternalDnsFull,
44
- generateExternalDnsStaticSiteTemplate,
45
- generateStaticSiteTemplate,
46
- invalidateCache,
47
- uploadStaticFiles
48
- } from "../chunk-jp2a8yad.js";
49
- import"../chunk-tjjgajbh.js";
50
- import"../chunk-3bfv1z4v.js";
51
- import"../chunk-tnztxpcb.js";
52
- import"../chunk-qpj3edwz.js";
53
- import"../chunk-vd87cpvn.js";
54
- import"../chunk-arsh1g5h.js";
68
+ } from "../chunk-9m6b4m74.js";
69
+ import"../chunk-vdk53yyq.js";
70
+ import"../chunk-703nkybg.js";
71
+ import"../chunk-4cjrg98a.js";
72
+ import"../chunk-hpv68b4a.js";
73
+ import"../chunk-32e7ya18.js";
74
+ import"../chunk-wj3s95p9.js";
75
+ import"../chunk-zqtpg06c.js";
55
76
  import"../chunk-v0bahtg2.js";
56
77
  export {
78
+ verifyStaticApiOrigin,
57
79
  validateDeploymentConfig,
58
80
  uploadStaticFiles,
81
+ trackDashboardOperation,
82
+ synchronizeDashboardUsers,
59
83
  startLocalDashboardServer,
60
84
  siteInstallBase,
85
+ shipsARelease,
61
86
  setMaintenance,
62
87
  sanitizeCloudConfig,
63
88
  runRemoteCommand,
89
+ routesForDashboard,
64
90
  rollbackServerlessApp,
65
91
  resolveUiSource,
66
92
  resolveSiteKind,
67
93
  resolveSiteDeployTarget,
94
+ resolveLegacyDashboardRoute,
68
95
  resolveDashboardData,
69
96
  resolveDashboardAuth,
70
97
  resolveDashboardAction,
@@ -72,22 +99,35 @@ export {
72
99
  redeployServerlessApp,
73
100
  isPhpSite,
74
101
  invalidateCache,
102
+ initializeDashboardControlPlane,
75
103
  infraEnvFromOutputs,
104
+ hashContainerContext,
76
105
  generateStaticSiteTemplate,
77
106
  generateExternalDnsStaticSiteTemplate,
107
+ generateExistingStaticFullStackTemplate,
108
+ estimateStaticApiOriginMonthlyCost,
109
+ estimateExistingStaticFullStackMonthlyCost,
78
110
  ensureManagementDashboard,
111
+ ensureDashboardActor,
79
112
  deployStaticSiteWithExternalDnsFull,
80
113
  deployStaticSiteWithExternalDns,
81
114
  deployStaticSiteFull,
82
115
  deployStaticSite,
116
+ deployStaticApiOrigin,
83
117
  deploySite,
84
118
  deployServerlessApp,
119
+ deployExistingStaticFullStack,
85
120
  deleteStaticSite,
121
+ dashboardPageRoutes,
86
122
  dashboardActions,
123
+ createStaticApiOriginDependencies,
124
+ createExistingStaticFullStackDependencies,
125
+ createContainerImageDependencies,
87
126
  collectServerDnsDomains,
88
127
  buildManagementDashboardArtifact,
89
128
  buildFunctionEnv,
90
129
  buildAndPushServerlessImage,
130
+ buildAndPushContainerImage,
91
131
  MANAGEMENT_DASHBOARD_SITE,
92
132
  DASHBOARD_CREDENTIALS_FILE
93
133
  };
@@ -1,4 +1,8 @@
1
1
  import type { CloudConfig, EnvironmentType } from '@ts-cloud/core';
2
+ import type { OidcFetch } from '../auth';
3
+ import type { AuthorizationCapability, JsonValue } from '../control-plane';
4
+ import type { ReleaseDriverResolver } from '../release';
5
+ import type { DashboardUser } from './dashboard-auth';
2
6
  export interface LocalDashboardServerOptions {
3
7
  host?: string;
4
8
  port?: number;
@@ -12,6 +16,16 @@ export interface LocalDashboardServerOptions {
12
16
  * reaching out over SSH/SSM.
13
17
  */
14
18
  box?: boolean;
19
+ /** Explicit config for embedded/test callers; CLI callers load the project config. */
20
+ config?: CloudConfig;
21
+ /** Injectable OIDC transport for deterministic integration tests. */
22
+ oidcFetch?: OidcFetch;
23
+ /** Run the persistent deployment worker in this process. Defaults off in tests. */
24
+ queueWorker?: boolean;
25
+ /** Maximum number of operations this process may execute in parallel. */
26
+ queueParallelism?: number;
27
+ /** Resolve the provider-specific immutable activation primitive for release jobs. */
28
+ releaseDriver?: ReleaseDriverResolver;
15
29
  }
16
30
  export interface LocalDashboardServer {
17
31
  url: string;
@@ -26,8 +40,24 @@ export interface DashboardAction {
26
40
  confirm?: string;
27
41
  }
28
42
  export declare function pruneDashboardTempRoots(root?: string, running?: (pid: number) => boolean): number;
43
+ export declare function dashboardMutationAuditPayload(method: string, path: string, input: unknown, status: number, durationMs: number): {
44
+ [key: string]: JsonValue;
45
+ };
46
+ export declare function resolveOidcDashboardOrigin(host: string, port: number, env?: NodeJS.ProcessEnv): string | undefined;
47
+ export declare function resolveDashboardEnvironment(available: readonly string[], fallback: EnvironmentType, requested?: string | null): EnvironmentType;
48
+ /** Reject browser cross-site mutations while retaining header-light CLI access. */
49
+ export declare function isTrustedMutationRequest(req: Request): boolean;
29
50
  export declare function sanitizeCloudConfig(config: CloudConfig): Record<string, any>;
30
51
  export declare function dashboardActions(environment: EnvironmentType): DashboardAction[];
31
52
  export declare function resolveDashboardAction(id: string, environment: EnvironmentType): DashboardAction | undefined;
53
+ export declare function runDashboardAction(action: DashboardAction, options: Required<Pick<LocalDashboardServerOptions, 'cwd' | 'cliEntry'>> & {
54
+ signal?: AbortSignal;
55
+ onOutput?: (kind: 'stdout' | 'stderr', chunk: string) => void;
56
+ env?: Record<string, string>;
57
+ }): Promise<Record<string, any>>;
32
58
  export declare function isBoxOnlyPage(pathname: string): boolean;
59
+ export declare function canOpenDashboardPage(pathname: string, user: DashboardUser & {
60
+ capabilities?: AuthorizationCapability[];
61
+ organizationSource?: string;
62
+ }): boolean;
33
63
  export declare function startLocalDashboardServer(options?: LocalDashboardServerOptions): Promise<LocalDashboardServer>;
@@ -6,7 +6,7 @@
6
6
  * The provider can come from a configured site repository or from the CLI's
7
7
  * origin-remote detection, while the branch belongs to the target environment.
8
8
  */
9
- import { type CloudConfig } from '@ts-cloud/core';
9
+ import type { CloudConfig } from '@ts-cloud/core';
10
10
  export type QuickDeployProvider = 'github' | 'gitlab' | 'bitbucket';
11
11
  export interface QuickDeployOptions {
12
12
  /** Provider override, normally inferred from the origin remote by the CLI. */
@@ -128,6 +128,7 @@ export declare function createAlarm(config: CloudConfig, environment: Environmen
128
128
  export declare function deleteAlarm(config: CloudConfig, environment: EnvironmentType, alarmName: string): Promise<ServerlessOperationResult>;
129
129
  export interface ShapedTrace {
130
130
  id: string;
131
+ timestamp?: string;
131
132
  durationMs: number;
132
133
  responseMs: number;
133
134
  status: 'ok' | 'error' | 'fault' | 'throttle';
@@ -64,3 +64,19 @@ export interface DeploymentValidationResult {
64
64
  * on any error and print warnings while continuing.
65
65
  */
66
66
  export declare function validateDeploymentConfig(config: CloudConfig): DeploymentValidationResult;
67
+ /**
68
+ * Does this site produce a release the compute deploy has to build, package and
69
+ * ship?
70
+ *
71
+ * `false` for the two kinds that ship nothing:
72
+ * - `bucket` — handled by the S3/CloudFront static-site path instead;
73
+ * - `redirect` — the gateway answers the domain with a Location header, so
74
+ * there is no `root` to package. Filtering these BEFORE the packaging loop
75
+ * matters: that loop reads `site.root` to build a tarball, and a redirect
76
+ * site has none, which failed the whole deploy with
77
+ * "Build output not found at undefined".
78
+ *
79
+ * Excluding a site here never drops its routes — the rpx gateway is
80
+ * regenerated from the full `sites` model, not from this list.
81
+ */
82
+ export declare function shipsARelease(site: SiteConfig): boolean;
@@ -0,0 +1,107 @@
1
+ import { CloudFrontClient } from '../aws/cloudfront';
2
+ import { CloudWatchLogsClient } from '../aws/cloudwatch-logs';
3
+ import { IAMClient } from '../aws/iam';
4
+ import { LambdaClient } from '../aws/lambda';
5
+ import { STSClient } from '../aws/sts';
6
+ export interface StaticApiOriginOptions {
7
+ distributionId: string;
8
+ expectedAlias: string;
9
+ functionName: string;
10
+ profile?: string;
11
+ region?: string;
12
+ pathPattern?: string;
13
+ originId?: string;
14
+ roleName?: string;
15
+ memorySize?: number;
16
+ timeout?: number;
17
+ logRetentionDays?: number;
18
+ code?: string;
19
+ apply?: boolean;
20
+ confirm?: string;
21
+ }
22
+ export interface StaticApiOriginPlan {
23
+ mode: 'plan' | 'apply';
24
+ accountId: string;
25
+ identityArn?: string;
26
+ distribution: {
27
+ id: string;
28
+ arn: string;
29
+ alias: string;
30
+ domainName: string;
31
+ status: string;
32
+ };
33
+ function: {
34
+ name: string;
35
+ existed: boolean;
36
+ runtime: 'nodejs22.x';
37
+ urlExisted: boolean;
38
+ url?: string;
39
+ };
40
+ role: {
41
+ name: string;
42
+ existed: boolean;
43
+ arn: string;
44
+ };
45
+ origin: {
46
+ id: string;
47
+ pathPattern: string;
48
+ existed: boolean;
49
+ behaviorExisted: boolean;
50
+ accessControlExisted: boolean;
51
+ };
52
+ changes: string[];
53
+ rollback: {
54
+ command: string;
55
+ removeFunction: boolean;
56
+ removeRole: boolean;
57
+ };
58
+ applied: boolean;
59
+ }
60
+ export interface StaticApiOriginVerification {
61
+ frontend: {
62
+ url: string;
63
+ status: number;
64
+ sha256: string;
65
+ unchanged?: boolean;
66
+ bytes: number;
67
+ };
68
+ api: {
69
+ url: string;
70
+ status: number;
71
+ latencyMs: number;
72
+ healthy: boolean;
73
+ body: unknown;
74
+ };
75
+ coldStart: {
76
+ observed: boolean;
77
+ initDurationMs?: number;
78
+ };
79
+ verifiedAt: string;
80
+ }
81
+ export interface StaticApiOriginDependencies {
82
+ cloudfront: Pick<CloudFrontClient, 'getDistribution' | 'getDistributionConfig' | 'listOriginAccessControls' | 'findOrCreateOriginAccessControl' | 'upsertExistingDistributionOrigin'>;
83
+ iam: Pick<IAMClient, 'getRole' | 'createRole' | 'putRolePolicy'>;
84
+ lambda: Pick<LambdaClient, 'functionExists' | 'getFunction' | 'createFunctionWithCode' | 'updateFunctionCodeInline' | 'updateFunctionConfiguration' | 'waitForFunctionActive' | 'getFunctionUrl' | 'createFunctionUrl' | 'addPermission'>;
85
+ logs: Pick<CloudWatchLogsClient, 'createLogGroup' | 'putRetentionPolicy'>;
86
+ sts: Pick<STSClient, 'getCallerIdentity'>;
87
+ sleep: (milliseconds: number) => Promise<void>;
88
+ }
89
+ export declare function createStaticApiOriginDependencies(options: Pick<StaticApiOriginOptions, 'profile' | 'region'>): StaticApiOriginDependencies;
90
+ export declare function deployStaticApiOrigin(options: StaticApiOriginOptions, injected?: StaticApiOriginDependencies): Promise<StaticApiOriginPlan>;
91
+ export declare function verifyStaticApiOrigin(options: {
92
+ alias: string;
93
+ expectedFrontendSha256?: string;
94
+ logs?: Pick<CloudWatchLogsClient, 'filterLogEvents'>;
95
+ functionName?: string;
96
+ now?: () => Date;
97
+ }): Promise<StaticApiOriginVerification>;
98
+ export declare function estimateStaticApiOriginMonthlyCost(options: {
99
+ requests: number;
100
+ averageDurationMs: number;
101
+ memoryMb?: number;
102
+ includeFreeTier?: boolean;
103
+ }): {
104
+ lambdaUsd: number;
105
+ alwaysOnFargateAndAlbUsd: number;
106
+ assumptions: string[];
107
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -1,19 +1,3 @@
1
- /**
2
- * High-level static site deployer with smart defaults.
3
- *
4
- * Most callers don't need the full surface of
5
- * `deployStaticSiteWithExternalDnsFull` — they want to point a build
6
- * directory at a domain and let the helper sort out:
7
- * - Porkbun DNS (default for non-Route53 setups)
8
- * - Non-SPA error handling (so /favicon.ico, /robots.txt, etc. don't
9
- * masquerade as the homepage)
10
- * - AWS env-var validation up front
11
- * - Sensible cache-control headers
12
- *
13
- * `deploySite` is the one-call entrypoint; the lower-level
14
- * `deployStaticSiteWithExternalDnsFull` and `deployStaticSiteFull`
15
- * remain available for callers that need the full surface.
16
- */
17
1
  export type StaticSiteDnsProvider = 'porkbun' | 'godaddy' | {
18
2
  provider: 'porkbun';
19
3
  apiKey?: string;
@@ -0,0 +1,5 @@
1
+ export interface TelemetryResourceReference {
2
+ id: string;
3
+ slug: string;
4
+ }
5
+ export declare function resolveTelemetryResourceIds(resources: TelemetryResourceReference[], environmentWide: boolean, value: unknown): string[] | undefined;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,44 @@
1
+ import type { CloudConfig, EnvironmentType } from '@ts-cloud/core';
2
+ import type { ControlPlaneStore } from '../control-plane';
3
+ import type { AppendTelemetryInput, TelemetryCollectionStatus, TelemetryPolicy } from '../telemetry';
4
+ export declare class TelemetryCollectionCache<T> {
5
+ private readonly now;
6
+ private readonly entries;
7
+ constructor(now?: () => number);
8
+ getOrCreate(key: string, ttlMs: number, force: boolean, loader: () => Promise<T>): Promise<{
9
+ value: T;
10
+ cached: boolean;
11
+ }>;
12
+ invalidate(prefix: string): void;
13
+ }
14
+ export interface TelemetryCollectionResult {
15
+ collected: number;
16
+ cached: boolean;
17
+ generatedAt: string;
18
+ statuses: TelemetryCollectionStatus[];
19
+ errors: Array<{
20
+ source: string;
21
+ message: string;
22
+ }>;
23
+ policy: TelemetryPolicy;
24
+ }
25
+ export interface TelemetryCollectionContext {
26
+ controlPlane: ControlPlaneStore;
27
+ projectId: string;
28
+ environmentId?: string;
29
+ config: CloudConfig;
30
+ environment: EnvironmentType;
31
+ force?: boolean;
32
+ }
33
+ export declare function telemetryRecordsFromLog(input: {
34
+ projectId: string;
35
+ environmentId?: string;
36
+ resourceId?: string;
37
+ source: string;
38
+ name: string;
39
+ timestamp?: string;
40
+ message: string;
41
+ workloadId?: string;
42
+ }): AppendTelemetryInput[];
43
+ export declare function collectDashboardTelemetry(context: TelemetryCollectionContext): Promise<TelemetryCollectionResult>;
44
+ export declare function invalidateDashboardTelemetryCache(projectId: string): void;
@@ -0,0 +1 @@
1
+ export {};
package/dist/dns/index.js CHANGED
@@ -11,9 +11,9 @@ import {
11
11
  createRoute53Validator,
12
12
  detectDnsProvider,
13
13
  dnsProviders
14
- } from "../chunk-3bfv1z4v.js";
15
- import"../chunk-tnztxpcb.js";
16
- import"../chunk-arsh1g5h.js";
14
+ } from "../chunk-fv1bj3yt.js";
15
+ import"../chunk-32e7ya18.js";
16
+ import"../chunk-zqtpg06c.js";
17
17
  import"../chunk-v0bahtg2.js";
18
18
  export {
19
19
  dnsProviders,
@@ -2,8 +2,8 @@
2
2
  * Route53 DNS Provider Adapter
3
3
  * Wraps the existing Route53Client to implement the DnsProvider interface
4
4
  */
5
- import { Route53Client } from '../aws/route53';
6
5
  import type { CreateRecordResult, DeleteRecordResult, DnsProvider, DnsRecord, DnsRecordType, ListRecordsResult } from './types';
6
+ import { Route53Client } from '../aws/route53';
7
7
  export declare class Route53Provider implements DnsProvider {
8
8
  readonly name = "route53";
9
9
  private client;
@@ -6,7 +6,7 @@
6
6
  * the golden-image bake). `generateUbuntuAppCloudInit` is kept as a back-compat
7
7
  * alias for the shared builder.
8
8
  */
9
- export { buildUbuntuBootstrapScript as generateUbuntuAppCloudInit, type UbuntuBootstrapOptions } from '../shared/ubuntu-bootstrap';
9
+ export { buildUbuntuBootstrapScript as generateUbuntuAppCloudInit, type UbuntuBootstrapOptions, } from '../shared/ubuntu-bootstrap';
10
10
  /**
11
11
  * Wrap a bash bootstrap script as Hetzner cloud-init user_data (#cloud-config).
12
12
  *
@@ -11,8 +11,8 @@ export type { RemoteExecOptions, RemoteExecResult, WaitOptions } from './shared/
11
11
  export { AwsBoxProvisioner, buildBoxUserData, createBoxProvisioner, HetznerBoxProvisioner, UBUNTU_2404_AMI_PARAM, } from './shared/box-provision';
12
12
  export type { AwsBoxProvisionerOptions, BoxPort, BoxProviderName, BoxProvisioner, BoxSpec, CreateBoxProvisionerOptions, ProvisionedBox, } from './shared/box-provision';
13
13
  export { buildAwsArtifactFetch, buildHostCleanupScript, buildLocalArtifactFetch, buildSiteDeployScript, buildStaticSiteDeployScript, releaseTarballTmpPath, resolveExecStart, } from './shared/deploy-script';
14
- export { deployAllComputeSites, deploySiteRelease, reloadRpxGateway, renewRpxCertificates } from './shared/compute-deploy';
14
+ export { deployAllComputeSites, deploySiteRelease, reloadRpxGateway, renewRpxCertificates, } from './shared/compute-deploy';
15
15
  export { buildRpxConfig, buildRpxFragmentRefreshScript, buildRpxLbConfig, buildRpxProvisionScript, deriveRouteId, normalizeRoutePath, renderRpxLauncher, DEFAULT_RPX_CERTS_DIR, RPX_DIR, RPX_LAUNCHER_PATH, RPX_SERVICE_NAME, } from './shared/rpx-gateway';
16
16
  export type { BuildRpxConfigOptions, BuildRpxFragmentRefreshOptions, BuildRpxProvisionOptions, RpxGatewayConfig, RpxLbAppBox, RpxRoute, } from './shared/rpx-gateway';
17
17
  export { buildCloudFrontOriginConfig, MANAGED_CACHE_POLICY_DISABLED, MANAGED_CACHE_POLICY_OPTIMIZED, MANAGED_ORIGIN_REQUEST_POLICY_ALL_VIEWER, } from './shared/cloudfront-origin';
18
- export type { BuildCloudFrontOriginOptions, OriginFrontedBehavior, } from './shared/cloudfront-origin';
18
+ export type { BuildCloudFrontOriginOptions, OriginFrontedBehavior } from './shared/cloudfront-origin';
@@ -52,12 +52,12 @@ import {
52
52
  waitForCloudInit,
53
53
  waitForSsh,
54
54
  wrapCloudInitUserData
55
- } from "../chunk-d5vqwj8s.js";
56
- import"../chunk-r16e02bc.js";
57
- import"../chunk-93hjhs78.js";
58
- import"../chunk-qpj3edwz.js";
59
- import"../chunk-vd87cpvn.js";
60
- import"../chunk-arsh1g5h.js";
55
+ } from "../chunk-9m6b4m74.js";
56
+ import"../chunk-vdk53yyq.js";
57
+ import"../chunk-703nkybg.js";
58
+ import"../chunk-4cjrg98a.js";
59
+ import"../chunk-wj3s95p9.js";
60
+ import"../chunk-zqtpg06c.js";
61
61
  import"../chunk-v0bahtg2.js";
62
62
  export {
63
63
  wrapCloudInitUserData,