sst 3.0.0 → 3.0.1-10

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 (460) hide show
  1. package/dist/index.d.ts +2 -0
  2. package/dist/index.js +2 -0
  3. package/dist/resource.d.ts +4 -0
  4. package/dist/resource.js +15 -0
  5. package/dist/vector-client.d.ts +126 -0
  6. package/dist/vector-client.js +38 -0
  7. package/package.json +16 -137
  8. package/LICENSE +0 -21
  9. package/README.md +0 -43
  10. package/bootstrap.d.ts +0 -5
  11. package/bootstrap.js +0 -318
  12. package/bus.d.ts +0 -20
  13. package/bus.js +0 -52
  14. package/cache.d.ts +0 -4
  15. package/cache.js +0 -31
  16. package/cdk/deploy-stack.d.ts +0 -223
  17. package/cdk/deploy-stack.js +0 -562
  18. package/cdk/deployments-wrapper.d.ts +0 -3
  19. package/cdk/deployments-wrapper.js +0 -135
  20. package/cdk/deployments.d.ts +0 -327
  21. package/cdk/deployments.js +0 -360
  22. package/cdk/util.d.ts +0 -1
  23. package/cdk/util.js +0 -17
  24. package/cli/ci-info.d.ts +0 -4
  25. package/cli/ci-info.js +0 -8
  26. package/cli/colors.d.ts +0 -17
  27. package/cli/colors.js +0 -27
  28. package/cli/commands/bind.d.ts +0 -19
  29. package/cli/commands/bind.js +0 -360
  30. package/cli/commands/bootstrap.d.ts +0 -15
  31. package/cli/commands/bootstrap.js +0 -11
  32. package/cli/commands/build.d.ts +0 -17
  33. package/cli/commands/build.js +0 -25
  34. package/cli/commands/connect.d.ts +0 -17
  35. package/cli/commands/connect.js +0 -55
  36. package/cli/commands/console.d.ts +0 -15
  37. package/cli/commands/console.js +0 -22
  38. package/cli/commands/deploy.d.ts +0 -19
  39. package/cli/commands/deploy.js +0 -112
  40. package/cli/commands/dev.d.ts +0 -25
  41. package/cli/commands/dev.js +0 -351
  42. package/cli/commands/diff.d.ts +0 -19
  43. package/cli/commands/diff.js +0 -89
  44. package/cli/commands/plugins/kysely.d.ts +0 -1
  45. package/cli/commands/plugins/kysely.js +0 -87
  46. package/cli/commands/plugins/pothos.d.ts +0 -1
  47. package/cli/commands/plugins/pothos.js +0 -58
  48. package/cli/commands/plugins/warmer.d.ts +0 -1
  49. package/cli/commands/plugins/warmer.js +0 -33
  50. package/cli/commands/remove.d.ts +0 -19
  51. package/cli/commands/remove.js +0 -62
  52. package/cli/commands/secrets/get.d.ts +0 -19
  53. package/cli/commands/secrets/get.js +0 -27
  54. package/cli/commands/secrets/list.d.ts +0 -19
  55. package/cli/commands/secrets/list.js +0 -69
  56. package/cli/commands/secrets/load.d.ts +0 -17
  57. package/cli/commands/secrets/load.js +0 -47
  58. package/cli/commands/secrets/remove.d.ts +0 -19
  59. package/cli/commands/secrets/remove.js +0 -27
  60. package/cli/commands/secrets/secrets.d.ts +0 -2
  61. package/cli/commands/secrets/secrets.js +0 -16
  62. package/cli/commands/secrets/set.d.ts +0 -21
  63. package/cli/commands/secrets/set.js +0 -54
  64. package/cli/commands/telemetry.d.ts +0 -17
  65. package/cli/commands/telemetry.js +0 -24
  66. package/cli/commands/transform.d.ts +0 -17
  67. package/cli/commands/transform.js +0 -62
  68. package/cli/commands/types.d.ts +0 -15
  69. package/cli/commands/types.js +0 -25
  70. package/cli/commands/update.d.ts +0 -17
  71. package/cli/commands/update.js +0 -116
  72. package/cli/commands/version.d.ts +0 -15
  73. package/cli/commands/version.js +0 -15
  74. package/cli/local/router.d.ts +0 -44
  75. package/cli/local/router.js +0 -43
  76. package/cli/local/server.d.ts +0 -22
  77. package/cli/local/server.js +0 -319
  78. package/cli/program.d.ts +0 -19
  79. package/cli/program.js +0 -87
  80. package/cli/spinner.d.ts +0 -3
  81. package/cli/spinner.js +0 -14
  82. package/cli/sst.d.ts +0 -2
  83. package/cli/sst.js +0 -74
  84. package/cli/telemetry/environment.d.ts +0 -15
  85. package/cli/telemetry/environment.js +0 -27
  86. package/cli/telemetry/post-payload.d.ts +0 -1
  87. package/cli/telemetry/post-payload.js +0 -27
  88. package/cli/telemetry/project-id.d.ts +0 -2
  89. package/cli/telemetry/project-id.js +0 -47
  90. package/cli/telemetry/telemetry.d.ts +0 -19
  91. package/cli/telemetry/telemetry.js +0 -103
  92. package/cli/terminal.d.ts +0 -1
  93. package/cli/terminal.js +0 -8
  94. package/cli/ui/deploy.d.ts +0 -10
  95. package/cli/ui/deploy.js +0 -172
  96. package/cli/ui/functions.d.ts +0 -2
  97. package/cli/ui/functions.js +0 -130
  98. package/cli/ui/header.d.ts +0 -5
  99. package/cli/ui/header.js +0 -16
  100. package/cli/ui/stack.d.ts +0 -1
  101. package/cli/ui/stack.js +0 -6
  102. package/config.d.ts +0 -56
  103. package/config.js +0 -244
  104. package/constructs/Api.d.ts +0 -814
  105. package/constructs/Api.js +0 -743
  106. package/constructs/ApiGatewayV1Api.d.ts +0 -642
  107. package/constructs/ApiGatewayV1Api.js +0 -767
  108. package/constructs/App.d.ts +0 -168
  109. package/constructs/App.js +0 -493
  110. package/constructs/AppSyncApi.d.ts +0 -550
  111. package/constructs/AppSyncApi.js +0 -493
  112. package/constructs/AstroSite.d.ts +0 -39
  113. package/constructs/AstroSite.js +0 -78
  114. package/constructs/AstroSite.tsdoc.d.ts +0 -2
  115. package/constructs/AstroSite.tsdoc.js +0 -2
  116. package/constructs/Auth.d.ts +0 -100
  117. package/constructs/Auth.js +0 -177
  118. package/constructs/BaseSite.d.ts +0 -29
  119. package/constructs/BaseSite.js +0 -43
  120. package/constructs/Bucket.d.ts +0 -364
  121. package/constructs/Bucket.js +0 -327
  122. package/constructs/Cognito.d.ts +0 -232
  123. package/constructs/Cognito.js +0 -370
  124. package/constructs/Config.d.ts +0 -3
  125. package/constructs/Config.js +0 -3
  126. package/constructs/Construct.d.ts +0 -23
  127. package/constructs/Construct.js +0 -46
  128. package/constructs/Cron.d.ts +0 -164
  129. package/constructs/Cron.js +0 -114
  130. package/constructs/Distribution.d.ts +0 -143
  131. package/constructs/Distribution.js +0 -260
  132. package/constructs/EdgeFunction.d.ts +0 -49
  133. package/constructs/EdgeFunction.js +0 -442
  134. package/constructs/EventBus.d.ts +0 -444
  135. package/constructs/EventBus.js +0 -440
  136. package/constructs/Function.d.ts +0 -690
  137. package/constructs/Function.js +0 -583
  138. package/constructs/FunctionalStack.d.ts +0 -13
  139. package/constructs/FunctionalStack.js +0 -62
  140. package/constructs/Job.d.ts +0 -337
  141. package/constructs/Job.js +0 -404
  142. package/constructs/KinesisStream.d.ts +0 -224
  143. package/constructs/KinesisStream.js +0 -207
  144. package/constructs/Metadata.d.ts +0 -60
  145. package/constructs/Metadata.js +0 -1
  146. package/constructs/NextjsSite.d.ts +0 -104
  147. package/constructs/NextjsSite.js +0 -308
  148. package/constructs/Parameter.d.ts +0 -37
  149. package/constructs/Parameter.js +0 -53
  150. package/constructs/Queue.d.ts +0 -194
  151. package/constructs/Queue.js +0 -204
  152. package/constructs/RDS.d.ts +0 -221
  153. package/constructs/RDS.js +0 -363
  154. package/constructs/RemixSite.d.ts +0 -42
  155. package/constructs/RemixSite.js +0 -158
  156. package/constructs/RemixSite.tsdoc.d.ts +0 -2
  157. package/constructs/RemixSite.tsdoc.js +0 -2
  158. package/constructs/Script.d.ts +0 -160
  159. package/constructs/Script.js +0 -179
  160. package/constructs/Secret.d.ts +0 -30
  161. package/constructs/Secret.js +0 -59
  162. package/constructs/Service.d.ts +0 -487
  163. package/constructs/Service.js +0 -655
  164. package/constructs/SolidStartSite.d.ts +0 -37
  165. package/constructs/SolidStartSite.js +0 -66
  166. package/constructs/SolidStartSite.tsdoc.d.ts +0 -2
  167. package/constructs/SolidStartSite.tsdoc.js +0 -2
  168. package/constructs/SsrFunction.d.ts +0 -60
  169. package/constructs/SsrFunction.js +0 -226
  170. package/constructs/SsrSite.d.ts +0 -407
  171. package/constructs/SsrSite.js +0 -850
  172. package/constructs/Stack.d.ts +0 -127
  173. package/constructs/Stack.js +0 -243
  174. package/constructs/StaticSite.d.ts +0 -348
  175. package/constructs/StaticSite.js +0 -468
  176. package/constructs/SvelteKitSite.d.ts +0 -40
  177. package/constructs/SvelteKitSite.js +0 -106
  178. package/constructs/SvelteKitSite.tsdoc.d.ts +0 -2
  179. package/constructs/SvelteKitSite.tsdoc.js +0 -2
  180. package/constructs/Table.d.ts +0 -410
  181. package/constructs/Table.js +0 -425
  182. package/constructs/Topic.d.ts +0 -257
  183. package/constructs/Topic.js +0 -273
  184. package/constructs/WebSocketApi.d.ts +0 -355
  185. package/constructs/WebSocketApi.js +0 -404
  186. package/constructs/cdk/HttpAwsIntegration.d.ts +0 -32
  187. package/constructs/cdk/HttpAwsIntegration.js +0 -24
  188. package/constructs/cdk/certificate-base.d.ts +0 -18
  189. package/constructs/cdk/certificate-base.js +0 -26
  190. package/constructs/cdk/dns-validated-certificate.d.ts +0 -77
  191. package/constructs/cdk/dns-validated-certificate.js +0 -125
  192. package/constructs/cdk/website-redirect.d.ts +0 -53
  193. package/constructs/cdk/website-redirect.js +0 -77
  194. package/constructs/context.d.ts +0 -3
  195. package/constructs/context.js +0 -27
  196. package/constructs/deferred_task.d.ts +0 -6
  197. package/constructs/deferred_task.js +0 -45
  198. package/constructs/deprecated/NextjsSite.d.ts +0 -309
  199. package/constructs/deprecated/NextjsSite.js +0 -1074
  200. package/constructs/deprecated/cross-region-helper.d.ts +0 -7
  201. package/constructs/deprecated/cross-region-helper.js +0 -152
  202. package/constructs/deprecated/index.d.ts +0 -1
  203. package/constructs/deprecated/index.js +0 -1
  204. package/constructs/future/Auth.d.ts +0 -80
  205. package/constructs/future/Auth.js +0 -122
  206. package/constructs/future/index.d.ts +0 -1
  207. package/constructs/future/index.js +0 -1
  208. package/constructs/index.d.ts +0 -32
  209. package/constructs/index.js +0 -32
  210. package/constructs/static-file-list.d.ts +0 -1
  211. package/constructs/static-file-list.js +0 -51
  212. package/constructs/util/apiGatewayV1AccessLog.d.ts +0 -15
  213. package/constructs/util/apiGatewayV1AccessLog.js +0 -76
  214. package/constructs/util/apiGatewayV2AccessLog.d.ts +0 -10
  215. package/constructs/util/apiGatewayV2AccessLog.js +0 -107
  216. package/constructs/util/apiGatewayV2Cors.d.ts +0 -67
  217. package/constructs/util/apiGatewayV2Cors.js +0 -21
  218. package/constructs/util/apiGatewayV2Domain.d.ts +0 -47
  219. package/constructs/util/apiGatewayV2Domain.js +0 -208
  220. package/constructs/util/appSyncApiDomain.d.ts +0 -41
  221. package/constructs/util/appSyncApiDomain.js +0 -176
  222. package/constructs/util/builder.d.ts +0 -3
  223. package/constructs/util/builder.js +0 -9
  224. package/constructs/util/duration.d.ts +0 -3
  225. package/constructs/util/duration.js +0 -19
  226. package/constructs/util/functionBinding.d.ts +0 -31
  227. package/constructs/util/functionBinding.js +0 -104
  228. package/constructs/util/functionUrlCors.d.ts +0 -67
  229. package/constructs/util/functionUrlCors.js +0 -23
  230. package/constructs/util/permission.d.ts +0 -8
  231. package/constructs/util/permission.js +0 -228
  232. package/constructs/util/size.d.ts +0 -3
  233. package/constructs/util/size.js +0 -12
  234. package/constructs/util/warning.d.ts +0 -11
  235. package/constructs/util/warning.js +0 -21
  236. package/context/context.d.ts +0 -13
  237. package/context/context.js +0 -69
  238. package/context/context2.d.ts +0 -16
  239. package/context/context2.js +0 -108
  240. package/context/handler.d.ts +0 -25
  241. package/context/handler.js +0 -21
  242. package/context/index.d.ts +0 -2
  243. package/context/index.js +0 -2
  244. package/credentials.d.ts +0 -9
  245. package/credentials.js +0 -145
  246. package/error.d.ts +0 -6
  247. package/error.js +0 -10
  248. package/index.d.ts +0 -1
  249. package/index.js +0 -1
  250. package/iot.d.ts +0 -6
  251. package/iot.js +0 -163
  252. package/logger.d.ts +0 -3
  253. package/logger.js +0 -32
  254. package/node/actor/index.d.ts +0 -29
  255. package/node/actor/index.js +0 -17
  256. package/node/api/index.d.ts +0 -64
  257. package/node/api/index.js +0 -179
  258. package/node/auth/adapter/adapter.d.ts +0 -3
  259. package/node/auth/adapter/adapter.js +0 -3
  260. package/node/auth/adapter/facebook.d.ts +0 -2
  261. package/node/auth/adapter/facebook.js +0 -26
  262. package/node/auth/adapter/github.d.ts +0 -2
  263. package/node/auth/adapter/github.js +0 -21
  264. package/node/auth/adapter/google.d.ts +0 -9
  265. package/node/auth/adapter/google.js +0 -18
  266. package/node/auth/adapter/link.d.ts +0 -8
  267. package/node/auth/adapter/link.js +0 -39
  268. package/node/auth/adapter/oauth.d.ts +0 -25
  269. package/node/auth/adapter/oauth.js +0 -52
  270. package/node/auth/adapter/oidc.d.ts +0 -17
  271. package/node/auth/adapter/oidc.js +0 -50
  272. package/node/auth/adapter/twitch.d.ts +0 -2
  273. package/node/auth/adapter/twitch.js +0 -11
  274. package/node/auth/auth.d.ts +0 -24
  275. package/node/auth/auth.js +0 -74
  276. package/node/auth/index.d.ts +0 -13
  277. package/node/auth/index.js +0 -12
  278. package/node/auth/session.d.ts +0 -76
  279. package/node/auth/session.js +0 -121
  280. package/node/bucket/index.d.ts +0 -3
  281. package/node/bucket/index.js +0 -2
  282. package/node/config/index.d.ts +0 -13
  283. package/node/config/index.js +0 -22
  284. package/node/event-bus/index.d.ts +0 -51
  285. package/node/event-bus/index.js +0 -76
  286. package/node/function/index.d.ts +0 -3
  287. package/node/function/index.js +0 -3
  288. package/node/future/auth/adapter/adapter.d.ts +0 -10
  289. package/node/future/auth/adapter/adapter.js +0 -1
  290. package/node/future/auth/adapter/code.d.ts +0 -17
  291. package/node/future/auth/adapter/code.js +0 -68
  292. package/node/future/auth/adapter/facebook.d.ts +0 -16
  293. package/node/future/auth/adapter/facebook.js +0 -27
  294. package/node/future/auth/adapter/github.d.ts +0 -23
  295. package/node/future/auth/adapter/github.js +0 -23
  296. package/node/future/auth/adapter/google.d.ts +0 -28
  297. package/node/future/auth/adapter/google.js +0 -22
  298. package/node/future/auth/adapter/link.d.ts +0 -13
  299. package/node/future/auth/adapter/link.js +0 -47
  300. package/node/future/auth/adapter/microsoft.d.ts +0 -22
  301. package/node/future/auth/adapter/microsoft.js +0 -16
  302. package/node/future/auth/adapter/oauth.d.ts +0 -41
  303. package/node/future/auth/adapter/oauth.js +0 -67
  304. package/node/future/auth/adapter/oidc.d.ts +0 -30
  305. package/node/future/auth/adapter/oidc.js +0 -63
  306. package/node/future/auth/adapter/spotify.d.ts +0 -23
  307. package/node/future/auth/adapter/spotify.js +0 -22
  308. package/node/future/auth/encryption.d.ts +0 -2
  309. package/node/future/auth/encryption.js +0 -30
  310. package/node/future/auth/handler.d.ts +0 -46
  311. package/node/future/auth/handler.js +0 -280
  312. package/node/future/auth/index.d.ts +0 -17
  313. package/node/future/auth/index.js +0 -15
  314. package/node/future/auth/session.d.ts +0 -71
  315. package/node/future/auth/session.js +0 -146
  316. package/node/graphql/index.d.ts +0 -15
  317. package/node/graphql/index.js +0 -32
  318. package/node/job/index.d.ts +0 -37
  319. package/node/job/index.js +0 -64
  320. package/node/kinesis-stream/index.d.ts +0 -3
  321. package/node/kinesis-stream/index.js +0 -3
  322. package/node/queue/index.d.ts +0 -3
  323. package/node/queue/index.js +0 -2
  324. package/node/rds/index.d.ts +0 -3
  325. package/node/rds/index.js +0 -2
  326. package/node/service/index.d.ts +0 -3
  327. package/node/service/index.js +0 -4
  328. package/node/site/index.d.ts +0 -18
  329. package/node/site/index.js +0 -18
  330. package/node/table/index.d.ts +0 -3
  331. package/node/table/index.js +0 -4
  332. package/node/topic/index.d.ts +0 -3
  333. package/node/topic/index.js +0 -4
  334. package/node/util/index.d.ts +0 -2
  335. package/node/util/index.js +0 -196
  336. package/node/util/loader.d.ts +0 -2
  337. package/node/util/loader.js +0 -51
  338. package/node/websocket-api/index.d.ts +0 -23
  339. package/node/websocket-api/index.js +0 -48
  340. package/pothos.d.ts +0 -7
  341. package/pothos.js +0 -160
  342. package/project.d.ts +0 -75
  343. package/project.js +0 -188
  344. package/runtime/handlers/container.d.ts +0 -2
  345. package/runtime/handlers/container.js +0 -263
  346. package/runtime/handlers/dotnet.d.ts +0 -2
  347. package/runtime/handlers/dotnet.js +0 -115
  348. package/runtime/handlers/go.d.ts +0 -2
  349. package/runtime/handlers/go.js +0 -126
  350. package/runtime/handlers/java.d.ts +0 -2
  351. package/runtime/handlers/java.js +0 -103
  352. package/runtime/handlers/node.d.ts +0 -2
  353. package/runtime/handlers/node.js +0 -269
  354. package/runtime/handlers/python.d.ts +0 -2
  355. package/runtime/handlers/python.js +0 -141
  356. package/runtime/handlers/pythonBundling.d.ts +0 -82
  357. package/runtime/handlers/pythonBundling.js +0 -80
  358. package/runtime/handlers/rust.d.ts +0 -2
  359. package/runtime/handlers/rust.js +0 -110
  360. package/runtime/handlers.d.ts +0 -74
  361. package/runtime/handlers.js +0 -151
  362. package/runtime/iot.d.ts +0 -1
  363. package/runtime/iot.js +0 -17
  364. package/runtime/runtime.d.ts +0 -32
  365. package/runtime/runtime.js +0 -1
  366. package/runtime/server.d.ts +0 -6
  367. package/runtime/server.js +0 -150
  368. package/runtime/workers.d.ts +0 -37
  369. package/runtime/workers.js +0 -85
  370. package/stacks/app-metadata.d.ts +0 -7
  371. package/stacks/app-metadata.js +0 -75
  372. package/stacks/assembly.d.ts +0 -1
  373. package/stacks/assembly.js +0 -4
  374. package/stacks/build.d.ts +0 -9
  375. package/stacks/build.js +0 -110
  376. package/stacks/deploy.d.ts +0 -9
  377. package/stacks/deploy.js +0 -240
  378. package/stacks/diff.d.ts +0 -8
  379. package/stacks/diff.js +0 -62
  380. package/stacks/index.d.ts +0 -10
  381. package/stacks/index.js +0 -10
  382. package/stacks/metadata.d.ts +0 -11
  383. package/stacks/metadata.js +0 -83
  384. package/stacks/monitor.d.ts +0 -32
  385. package/stacks/monitor.js +0 -151
  386. package/stacks/remove.d.ts +0 -8
  387. package/stacks/remove.js +0 -76
  388. package/stacks/synth.d.ts +0 -12
  389. package/stacks/synth.js +0 -94
  390. package/support/base-site-archiver.mjs +0 -99
  391. package/support/base-site-custom-resource/s3-handler.py +0 -195
  392. package/support/base-site-custom-resource/s3-upload.py +0 -89
  393. package/support/bootstrap-metadata-function/index.mjs +0 -58011
  394. package/support/bridge/Dockerfile +0 -3
  395. package/support/bridge/bridge.mjs +0 -146
  396. package/support/certificate-requestor/index.js +0 -549
  397. package/support/custom-resources/index.mjs +0 -180627
  398. package/support/dotnet31-bootstrap/Program.cs +0 -17
  399. package/support/dotnet31-bootstrap/dotnet-bootstrap.csproj +0 -12
  400. package/support/dotnet31-bootstrap/release/Amazon.Lambda.Core.dll +0 -0
  401. package/support/dotnet31-bootstrap/release/Amazon.Lambda.RuntimeSupport.dll +0 -0
  402. package/support/dotnet31-bootstrap/release/System.Runtime.CompilerServices.Unsafe.dll +0 -0
  403. package/support/dotnet31-bootstrap/release/System.Text.Encodings.Web.dll +0 -0
  404. package/support/dotnet31-bootstrap/release/System.Text.Json.dll +0 -0
  405. package/support/dotnet31-bootstrap/release/dotnet-bootstrap +0 -0
  406. package/support/dotnet31-bootstrap/release/dotnet-bootstrap.deps.json +0 -230
  407. package/support/dotnet31-bootstrap/release/dotnet-bootstrap.dll +0 -0
  408. package/support/dotnet31-bootstrap/release/dotnet-bootstrap.pdb +0 -0
  409. package/support/dotnet31-bootstrap/release/dotnet-bootstrap.runtimeconfig.json +0 -9
  410. package/support/dotnet6-bootstrap/Program.cs +0 -17
  411. package/support/dotnet6-bootstrap/dotnet-bootstrap.csproj +0 -12
  412. package/support/dotnet6-bootstrap/release/Amazon.Lambda.Core.dll +0 -0
  413. package/support/dotnet6-bootstrap/release/Amazon.Lambda.RuntimeSupport.dll +0 -0
  414. package/support/dotnet6-bootstrap/release/dotnet-bootstrap +0 -0
  415. package/support/dotnet6-bootstrap/release/dotnet-bootstrap.deps.json +0 -59
  416. package/support/dotnet6-bootstrap/release/dotnet-bootstrap.dll +0 -0
  417. package/support/dotnet6-bootstrap/release/dotnet-bootstrap.pdb +0 -0
  418. package/support/dotnet6-bootstrap/release/dotnet-bootstrap.runtimeconfig.json +0 -12
  419. package/support/edge-function/edge-lambda-version.mjs +0 -3
  420. package/support/edge-function/edge-lambda.mjs +0 -3
  421. package/support/edge-function/s3-bucket.mjs +0 -3
  422. package/support/event-bus-retrier/index.mjs +0 -75
  423. package/support/java-runtime/install.sh +0 -25
  424. package/support/java-runtime/pom.xml +0 -39
  425. package/support/java-runtime/release/aws-lambda-java-core-1.2.0.jar +0 -0
  426. package/support/java-runtime/release/aws-lambda-java-runtime-interface-client-1.1.0.jar +0 -0
  427. package/support/java-runtime/release/aws-lambda-java-serialization-1.0.0.jar +0 -0
  428. package/support/job-manager/index.mjs +0 -57679
  429. package/support/nixpacks/Dockerfile +0 -6
  430. package/support/nodejs-runtime/index.mjs +0 -169
  431. package/support/python-runtime/Dockerfile +0 -9
  432. package/support/python-runtime/Dockerfile.custom +0 -21
  433. package/support/python-runtime/Dockerfile.dependencies +0 -26
  434. package/support/python-runtime/runtime.py +0 -127
  435. package/support/rds-migrator/index.mjs +0 -49
  436. package/support/remix-site-function/edge-server.js +0 -161
  437. package/support/remix-site-function/polyfill.js +0 -24
  438. package/support/remix-site-function/regional-server.js +0 -164
  439. package/support/script-function/index.mjs +0 -48760
  440. package/support/service-dev-function/index.js +0 -1
  441. package/support/signing-function/index.mjs +0 -3769
  442. package/support/sls-nextjs-site-build-helper/build.cjs +0 -91
  443. package/support/sls-nextjs-site-build-helper/index-wrapper.js +0 -19
  444. package/support/sls-nextjs-site-function-code-replacer/lambda-code-updater.py +0 -156
  445. package/support/sls-nextjs-site-stub/index.html +0 -99
  446. package/support/ssr-site-function-archiver.mjs +0 -96
  447. package/support/ssr-site-function-stub/index.js +0 -5
  448. package/support/ssr-warmer/index.mjs +0 -34235
  449. package/util/error.d.ts +0 -3
  450. package/util/error.js +0 -6
  451. package/util/fs.d.ts +0 -4
  452. package/util/fs.js +0 -46
  453. package/util/lazy.d.ts +0 -1
  454. package/util/lazy.js +0 -11
  455. package/util/module.d.ts +0 -1
  456. package/util/module.js +0 -5
  457. package/util/process.d.ts +0 -2
  458. package/util/process.js +0 -3
  459. package/watcher.d.ts +0 -14
  460. package/watcher.js +0 -35
@@ -1,25 +0,0 @@
1
- /// <reference types="yargs" />
2
- import type { Program } from "../program.js";
3
- export declare const dev: (program: Program) => import("yargs").Argv<{
4
- stage: string | undefined;
5
- } & {
6
- profile: string | undefined;
7
- } & {
8
- region: string | undefined;
9
- } & {
10
- verbose: boolean | undefined;
11
- } & {
12
- role: string | undefined;
13
- } & {
14
- future: boolean | undefined;
15
- } & {
16
- "increase-timeout": boolean | undefined;
17
- }>;
18
- declare module "../../bus.js" {
19
- interface Events {
20
- "cli.dev": {
21
- app: string;
22
- stage: string;
23
- };
24
- }
25
- }
@@ -1,351 +0,0 @@
1
- import { lazy } from "../../util/lazy.js";
2
- export const dev = (program) => program.command(["dev", "start"], "Work on your app locally", (yargs) => yargs.option("increase-timeout", {
3
- type: "boolean",
4
- description: "Increase function timeout",
5
- }), async (args) => {
6
- const { Colors } = await import("../colors.js");
7
- const { printHeader } = await import("../ui/header.js");
8
- const { mapValues } = await import("remeda");
9
- const path = await import("path");
10
- const { useRuntimeWorkers } = await import("../../runtime/workers.js");
11
- const { useIOTBridge } = await import("../../runtime/iot.js");
12
- const { useRuntimeServer } = await import("../../runtime/server.js");
13
- const { useBus } = await import("../../bus.js");
14
- const { useWatcher } = await import("../../watcher.js");
15
- const { useAppMetadata, saveAppMetadata, Stacks } = await import("../../stacks/index.js");
16
- const { exit, exitWithError, trackDevError, trackDevRunning } = await import("../program.js");
17
- const { Logger } = await import("../../logger.js");
18
- const { createSpinner } = await import("../spinner.js");
19
- const { bold, dim, yellow } = await import("colorette");
20
- const { render } = await import("ink");
21
- const React = await import("react");
22
- const { Context } = await import("../../context/context.js");
23
- const { printDeploymentResults, DeploymentUI } = await import("../ui/deploy.js");
24
- const { useLocalServer } = await import("../local/server.js");
25
- const fs = await import("fs/promises");
26
- const crypto = await import("crypto");
27
- const { useFunctions } = await import("../../constructs/Function.js");
28
- const { useSites } = await import("../../constructs/SsrSite.js");
29
- const { usePothosBuilder } = await import("./plugins/pothos.js");
30
- const { useKyselyTypeGenerator } = await import("./plugins/kysely.js");
31
- const { useRDSWarmer } = await import("./plugins/warmer.js");
32
- const { useProject } = await import("../../project.js");
33
- const { useMetadataCache } = await import("../../stacks/metadata.js");
34
- const { useIOT } = await import("../../iot.js");
35
- const { clear } = await import("../terminal.js");
36
- const { getCiInfo } = await import("../ci-info.js");
37
- try {
38
- if (args._[0] === "start") {
39
- console.log(yellow(`Warning: ${bold(`sst start`)} has been renamed to ${bold(`sst dev`)}`));
40
- }
41
- const project = useProject();
42
- const useFunctionLogger = lazy(async () => {
43
- const bus = useBus();
44
- const colors = ["#01cdfe", "#ff71ce", "#05ffa1", "#b967ff"];
45
- let index = 0;
46
- const pending = new Map();
47
- function prefix(requestID) {
48
- const exists = pending.get(requestID);
49
- if (exists) {
50
- return Colors.hex(exists.color)(Colors.prefix);
51
- }
52
- pending.set(requestID, {
53
- requestID,
54
- started: Date.now(),
55
- color: colors[index % colors.length],
56
- });
57
- index++;
58
- return prefix(requestID);
59
- }
60
- function end(requestID) {
61
- // index--;
62
- // if (index < 0) index = colors.length - 1;
63
- pending.delete(requestID);
64
- }
65
- bus.subscribe("function.invoked", async (evt) => {
66
- Colors.line(prefix(evt.properties.requestID), Colors.dim.bold("Invoked"), Colors.dim(useFunctions().fromID(evt.properties.functionID)?.handler));
67
- });
68
- bus.subscribe("worker.stdout", async (evt) => {
69
- const info = useFunctions().fromID(evt.properties.functionID);
70
- prefix(evt.properties.requestID);
71
- const { started } = pending.get(evt.properties.requestID);
72
- for (let line of evt.properties.message.split("\n")) {
73
- // Remove prefix from container logs
74
- if (info?.runtime === "container") {
75
- // handle Node.js container logs
76
- // ie. 2023-07-05T00:13:42.448Z\td7330533-2429-4871-a632-ed29a1d32246\tINFO\tfoo!
77
- const parts = line.split("\t");
78
- if (parts.length >= 4 &&
79
- Date.parse(parts[0]) &&
80
- parts[1].length === 36) {
81
- line = parts.slice(3).join("\t");
82
- }
83
- }
84
- Colors.line(prefix(evt.properties.requestID), Colors.dim(("+" + (Date.now() - started) + "ms").padEnd(7)), Colors.dim(line));
85
- }
86
- });
87
- bus.subscribe("function.build.started", async (evt) => {
88
- const info = useFunctions().fromID(evt.properties.functionID);
89
- if (!info)
90
- return;
91
- if (info.enableLiveDev === false)
92
- return;
93
- if (info.runtime !== "container")
94
- return;
95
- Colors.line(Colors.dim(Colors.prefix, "Building", info.handler, "container"));
96
- });
97
- bus.subscribe("function.build.success", async (evt) => {
98
- const info = useFunctions().fromID(evt.properties.functionID);
99
- if (!info)
100
- return;
101
- if (info.enableLiveDev === false)
102
- return;
103
- Colors.line(info.runtime === "container"
104
- ? Colors.dim(Colors.prefix, "Built", info.handler, "container")
105
- : Colors.dim(Colors.prefix, "Built", info.handler));
106
- });
107
- bus.subscribe("function.build.failed", async (evt) => {
108
- const info = useFunctions().fromID(evt.properties.functionID);
109
- if (!info)
110
- return;
111
- if (info.enableLiveDev === false)
112
- return;
113
- Colors.gap();
114
- Colors.line(Colors.danger("✖ "), "Build failed", info.handler);
115
- for (const line of evt.properties.errors) {
116
- Colors.line(" ", line);
117
- }
118
- Colors.gap();
119
- });
120
- bus.subscribe("function.success", async (evt) => {
121
- // stdout logs sometimes come in after
122
- const p = prefix(evt.properties.requestID);
123
- const req = pending.get(evt.properties.requestID);
124
- setTimeout(() => {
125
- Colors.line(p, Colors.dim(`Done in ${Date.now() - req.started - 100}ms`));
126
- end(evt.properties.requestID);
127
- }, 100);
128
- });
129
- bus.subscribe("function.error", async (evt) => {
130
- setTimeout(() => {
131
- Colors.line(prefix(evt.properties.requestID), Colors.danger.bold("Error:"), Colors.danger.bold(evt.properties.errorMessage));
132
- for (const line of evt.properties.trace || []) {
133
- // Skip double printing error message
134
- if (line.includes(evt.properties.errorMessage))
135
- continue;
136
- Colors.line(" ", `${dim(line)}`);
137
- }
138
- end(evt.properties.requestID);
139
- }, 100);
140
- });
141
- });
142
- const useStackBuilder = lazy(async () => {
143
- const watcher = useWatcher();
144
- const scriptVersion = Date.now().toString();
145
- let lastDeployed;
146
- let isWorking = false;
147
- let isDirty = false;
148
- async function build() {
149
- if (isWorking) {
150
- isDirty = true;
151
- return;
152
- }
153
- isDirty = false;
154
- isWorking = true;
155
- Colors.gap();
156
- const spinner = createSpinner({
157
- color: "gray",
158
- text: lastDeployed
159
- ? ` Building...`
160
- : dim(` Checking for changes`),
161
- }).start();
162
- try {
163
- const [metafile, sstConfig] = await Stacks.load(project.paths.config);
164
- project.metafile = metafile;
165
- project.stacks = sstConfig.stacks;
166
- const assembly = await Stacks.synth({
167
- increaseTimeout: args["increase-timeout"],
168
- scriptVersion,
169
- fn: project.stacks,
170
- outDir: `.sst/cdk.out`,
171
- mode: "dev",
172
- });
173
- Logger.debug("Directory", assembly.directory);
174
- const next = await checksum(assembly.directory);
175
- Logger.debug("Checksum", "next", next, "old", lastDeployed);
176
- if (next === lastDeployed) {
177
- spinner.succeed(Colors.dim(" Built with no changes"));
178
- isWorking = false;
179
- if (isDirty)
180
- build();
181
- return;
182
- }
183
- if (!lastDeployed) {
184
- spinner.stop();
185
- spinner.clear();
186
- Colors.mode("gap");
187
- }
188
- else {
189
- spinner.succeed(Colors.dim(` Built`));
190
- Colors.gap();
191
- }
192
- deploy(assembly);
193
- }
194
- catch (ex) {
195
- isWorking = false;
196
- spinner.fail();
197
- Colors.line(ex.stack
198
- .split("\n")
199
- .map((line) => " " + line)
200
- .join("\n"));
201
- Colors.gap();
202
- if (!lastDeployed) {
203
- trackDevError(ex);
204
- }
205
- }
206
- }
207
- async function deploy(assembly) {
208
- const nextChecksum = await checksum(assembly.directory);
209
- const component = render(React.createElement(DeploymentUI, { assembly: assembly }));
210
- const results = await Stacks.deployMany(assembly.stacks);
211
- component.clear();
212
- component.unmount();
213
- printDeploymentResults(assembly, results);
214
- // Run after initial deploy
215
- if (!lastDeployed) {
216
- await saveAppMetadata({ mode: "dev" });
217
- // Check failed stacks
218
- const failed = Object.values(results).find((result) => Stacks.isFailed(result.status));
219
- failed
220
- ? trackDevError(new Error(`CloudFormation status ${failed.status}`))
221
- : trackDevRunning();
222
- // print start frontend commands
223
- useSites()
224
- .all.filter(({ props }) => props.dev?.deploy !== true)
225
- .forEach(({ type, props }) => {
226
- const framework = type === "AstroSite"
227
- ? "Astro"
228
- : type === "NextjsSite"
229
- ? "Next.js"
230
- : type === "RemixSite"
231
- ? "Remix"
232
- : type === "SolidStartSite"
233
- ? "SolidStart"
234
- : type === "SvelteKitSite"
235
- ? "SvelteKit"
236
- : undefined;
237
- if (framework) {
238
- const cdCmd = path.resolve(props.path) === process.cwd()
239
- ? ""
240
- : `cd ${props.path} && `;
241
- Colors.line(Colors.primary(`➜ `), Colors.bold(`Start ${framework}:`), `${cdCmd}npm run dev`);
242
- Colors.gap();
243
- }
244
- });
245
- }
246
- lastDeployed = nextChecksum;
247
- // Write outputs.json
248
- fs.writeFile(project.config.outputs ||
249
- path.join(project.paths.out, "outputs.json"), JSON.stringify(mapValues(results, (val) => val.outputs), null, 2));
250
- isWorking = false;
251
- if (isDirty)
252
- build();
253
- }
254
- async function checksum(cdkOutPath) {
255
- const manifestPath = path.join(cdkOutPath, "manifest.json");
256
- const cdkManifest = JSON.parse(await fs.readFile(manifestPath).then((x) => x.toString()));
257
- const checksumData = await Promise.all(Object.keys(cdkManifest.artifacts)
258
- .filter((key) => cdkManifest.artifacts[key].type ===
259
- "aws:cloudformation:stack")
260
- .map(async (key) => {
261
- const { templateFile } = cdkManifest.artifacts[key].properties;
262
- const templatePath = path.join(cdkOutPath, templateFile);
263
- const templateContent = await fs.readFile(templatePath);
264
- return templateContent;
265
- })).then((x) => x.join("\n"));
266
- const hash = crypto
267
- .createHash("sha256")
268
- .update(checksumData)
269
- .digest("hex");
270
- return hash;
271
- }
272
- watcher.subscribe("file.changed", async (evt) => {
273
- if (!project.metafile)
274
- return;
275
- if (!project.metafile.inputs[evt.properties.relative.split(path.sep).join(path.posix.sep)])
276
- return;
277
- build();
278
- });
279
- await build();
280
- });
281
- const useDisconnector = lazy(async () => {
282
- const bus = useBus();
283
- const iot = await useIOT();
284
- bus.subscribe("cli.dev", async (evt) => {
285
- const topic = `${iot.prefix}/events`;
286
- iot.publish(topic, "cli.dev", evt.properties);
287
- });
288
- bus.publish("cli.dev", {
289
- stage: project.config.stage,
290
- app: project.config.name,
291
- });
292
- bus.subscribe("cli.dev", async (evt) => {
293
- if (evt.properties.stage !== project.config.stage)
294
- return;
295
- if (evt.properties.app !== project.config.name)
296
- return;
297
- Colors.gap();
298
- Colors.line(Colors.danger(`➜ `), "Another `sst dev` session has been started for this stage. Exiting...");
299
- await exit();
300
- });
301
- });
302
- const [appMetadata] = await Promise.all([
303
- useAppMetadata(),
304
- useLocalServer({
305
- key: "",
306
- cert: "",
307
- live: true,
308
- }),
309
- ]);
310
- async function promptChangeMode() {
311
- const readline = await import("readline");
312
- const rl = readline.createInterface({
313
- input: process.stdin,
314
- output: process.stdout,
315
- });
316
- return new Promise((resolve) => {
317
- console.log("");
318
- rl.question(`You have previously deployed the stage "${project.config.stage}" in production. It is recommended that you use a different stage for development. Read more here — https://docs.sst.dev/live-lambda-development\n\nAre you sure you want to run this stage in dev mode? [y/N] `, async (input) => {
319
- rl.close();
320
- resolve(input.trim() === "y");
321
- });
322
- });
323
- }
324
- // Check app mode changed
325
- if (!project.config.advanced?.disableAppModeCheck &&
326
- !getCiInfo().isCI &&
327
- appMetadata &&
328
- appMetadata.mode !== "dev") {
329
- if (!(await promptChangeMode())) {
330
- await exit();
331
- }
332
- }
333
- clear();
334
- await printHeader({ console: true, hint: "ready!" });
335
- await useStackBuilder();
336
- await Promise.all([
337
- useDisconnector(),
338
- useRuntimeWorkers(),
339
- useIOTBridge(),
340
- useRuntimeServer(),
341
- usePothosBuilder(),
342
- useMetadataCache(),
343
- useKyselyTypeGenerator(),
344
- useRDSWarmer(),
345
- useFunctionLogger(),
346
- ]);
347
- }
348
- catch (e) {
349
- await exitWithError(e);
350
- }
351
- });
@@ -1,19 +0,0 @@
1
- /// <reference types="yargs" />
2
- import type { Program } from "../program.js";
3
- export declare const diff: (program: Program) => import("yargs").Argv<{
4
- stage: string | undefined;
5
- } & {
6
- profile: string | undefined;
7
- } & {
8
- region: string | undefined;
9
- } & {
10
- verbose: boolean | undefined;
11
- } & {
12
- role: string | undefined;
13
- } & {
14
- future: boolean | undefined;
15
- } & {
16
- dev: boolean | undefined;
17
- } & {
18
- to: string | undefined;
19
- }>;
@@ -1,89 +0,0 @@
1
- import { stackNameToId } from "../ui/stack.js";
2
- export const diff = (program) => program.command("diff", "Compare your app with what is deployed on AWS", (yargs) => yargs
3
- .option("dev", {
4
- type: "boolean",
5
- describe: "Compare in dev mode",
6
- })
7
- .option("to", {
8
- type: "string",
9
- describe: "Output directory, defaults to .sst/dist",
10
- }), async (args) => {
11
- const { exit, exitWithError } = await import("../program.js");
12
- const { useProject } = await import("../../project.js");
13
- const { Stacks } = await import("../../stacks/index.js");
14
- const { useAWSClient } = await import("../../credentials.js");
15
- const { CloudFormationClient, GetTemplateCommand } = await import("@aws-sdk/client-cloudformation");
16
- const { createSpinner } = await import("../spinner.js");
17
- const { Colors } = await import("../colors.js");
18
- try {
19
- // Build app
20
- const project = useProject();
21
- const [_metafile, sstConfig] = await Stacks.load(project.paths.config);
22
- const assembly = await Stacks.synth({
23
- fn: sstConfig.stacks,
24
- buildDir: args.to,
25
- mode: args.dev ? "dev" : "deploy",
26
- });
27
- // Diff each stack
28
- let changesAcc = 0;
29
- let changedStacks = 0;
30
- const cfn = useAWSClient(CloudFormationClient);
31
- for (const stack of assembly.stacks) {
32
- const spinner = createSpinner(`${stack.stackName}: Checking for changes...`);
33
- // get old template
34
- const oldTemplate = await getTemplate(stack.stackName);
35
- if (!oldTemplate) {
36
- spinner.clear();
37
- Colors.line(`➜ ${Colors.dim.bold(stackNameToId(stack.stackName) + ":")} New stack`);
38
- Colors.gap();
39
- continue;
40
- }
41
- // generate diff
42
- const { count, diff } = await Stacks.diff(stack, oldTemplate);
43
- spinner.clear();
44
- // print diff result
45
- if (count === 0) {
46
- Colors.line(`➜ ${Colors.dim.bold(stackNameToId(stack.stackName) + ":")} No changes`);
47
- Colors.gap();
48
- }
49
- else if (count === 1) {
50
- Colors.line(`➜ ${Colors.dim.bold(stackNameToId(stack.stackName) + ":")} ${count} change`);
51
- Colors.gap();
52
- console.log(diff);
53
- changesAcc += count;
54
- changedStacks++;
55
- }
56
- else {
57
- Colors.line(`➜ ${Colors.dim.bold(stackNameToId(stack.stackName) + ":")} ${count} changes`);
58
- Colors.gap();
59
- console.log(diff);
60
- changesAcc += count;
61
- changedStacks++;
62
- }
63
- }
64
- // Handle no changes
65
- if (changedStacks === 0) {
66
- Colors.line(Colors.success(`✔`), Colors.bold(" Diff:"), "No changes");
67
- }
68
- else {
69
- Colors.line(Colors.success(`✔`), Colors.bold(" Diff:"), changesAcc === 1 ? "1 change found in" : `${changesAcc} changes in`, changedStacks === 1 ? "1 stack" : `${changedStacks} stacks`);
70
- }
71
- async function getTemplate(stackName) {
72
- try {
73
- const response = await cfn.send(new GetTemplateCommand({ StackName: stackName }));
74
- return JSON.parse(response.TemplateBody);
75
- }
76
- catch (e) {
77
- if (e.name === "ValidationError" &&
78
- e.message.includes("does not exist")) {
79
- return;
80
- }
81
- throw e;
82
- }
83
- }
84
- await exit();
85
- }
86
- catch (e) {
87
- await exitWithError(e);
88
- }
89
- });
@@ -1 +0,0 @@
1
- export declare const useKyselyTypeGenerator: () => Promise<void>;
@@ -1,87 +0,0 @@
1
- import { Kysely } from "kysely";
2
- import { DataApiDialect } from "kysely-data-api";
3
- import { RDSData } from "@aws-sdk/client-rds-data";
4
- import * as fs from "fs/promises";
5
- import { PostgresDialect, MysqlDialect, Serializer, Transformer, } from "kysely-codegen";
6
- import { useBus } from "../../../bus.js";
7
- import { Logger } from "../../../logger.js";
8
- import { useAWSClient } from "../../../credentials.js";
9
- import { lazy } from "../../../util/lazy.js";
10
- export const useKyselyTypeGenerator = lazy(async () => {
11
- let databases = [];
12
- const bus = useBus();
13
- const logger = Logger.debug.bind(null, "[kysely-codegen]");
14
- async function generate(db) {
15
- if (!db.types)
16
- return;
17
- logger("generating types for", db.migratorID);
18
- const dataApi = new DataApiDialect({
19
- mode: db.engine.includes("postgres") ? "postgres" : "mysql",
20
- driver: {
21
- secretArn: db.secretArn,
22
- resourceArn: db.clusterArn,
23
- database: db.defaultDatabaseName,
24
- client: useAWSClient(RDSData),
25
- },
26
- });
27
- const k = new Kysely({
28
- dialect: dataApi,
29
- });
30
- const dialect = db.engine.includes("postgres")
31
- ? new PostgresDialect()
32
- : new MysqlDialect();
33
- const instrospection = await dialect.introspector.introspect({
34
- // @ts-ignore
35
- db: k,
36
- });
37
- logger("introspected tables");
38
- const transformer = new Transformer();
39
- const nodes = transformer.transform({
40
- dialect: dialect,
41
- camelCase: db.types.camelCase === true,
42
- metadata: instrospection,
43
- });
44
- logger("transformed nodes", nodes.length);
45
- const lastIndex = nodes.length - 1;
46
- const last = nodes[lastIndex];
47
- nodes[lastIndex] = {
48
- ...last,
49
- argument: {
50
- ...last.argument,
51
- name: "Database",
52
- },
53
- };
54
- const serializer = new Serializer();
55
- const data = serializer.serialize(nodes);
56
- await fs.writeFile(db.types.path, data);
57
- }
58
- bus.subscribe("stacks.metadata", (evt) => {
59
- const constructs = Object.values(evt.properties).flat();
60
- databases = constructs
61
- .filter((c) => c.type === "RDS")
62
- .filter((c) => c.data.migrator)
63
- .filter((c) => c.data.types)
64
- .map((c) => ({
65
- migratorID: constructs.find((fn) => fn.addr == c.data.migrator?.node).addr,
66
- clusterArn: c.data.clusterArn,
67
- types: c.data.types,
68
- engine: c.data.engine,
69
- defaultDatabaseName: c.data.defaultDatabaseName,
70
- secretArn: c.data.secretArn,
71
- }));
72
- databases.map((db) => generate(db).catch((err) => {
73
- logger(err);
74
- }));
75
- });
76
- bus.subscribe("function.success", async (evt) => {
77
- if (!evt.properties.body?.results)
78
- return;
79
- const db = databases.find((db) => db.migratorID === evt.properties.functionID);
80
- if (!db)
81
- return;
82
- generate(db).catch((err) => {
83
- logger(err);
84
- });
85
- });
86
- logger("Loaded kyseley type generator");
87
- });
@@ -1 +0,0 @@
1
- export declare const usePothosBuilder: () => void;
@@ -1,58 +0,0 @@
1
- import { useBus } from "../../../bus.js";
2
- import { Pothos } from "../../../pothos.js";
3
- import fs from "fs/promises";
4
- import { exec } from "child_process";
5
- import { promisify } from "util";
6
- const execAsync = promisify(exec);
7
- import path from "path";
8
- import { Colors } from "../../colors.js";
9
- import { lazy } from "../../../util/lazy.js";
10
- export const usePothosBuilder = lazy(() => {
11
- let routes = [];
12
- const bus = useBus();
13
- async function build(route) {
14
- try {
15
- const schema = await Pothos.generate({
16
- schema: route.schema,
17
- internalPackages: route.internalPackages,
18
- });
19
- await fs.writeFile(route.output, schema);
20
- // bus.publish("pothos.extracted", { file: route.output });
21
- if (Array.isArray(route.commands) && route.commands.length > 0) {
22
- await Promise.all(route.commands.map((cmd) => execAsync(cmd)));
23
- }
24
- Colors.line(Colors.success(`✔`), " Pothos: Extracted pothos schema");
25
- }
26
- catch (ex) {
27
- Colors.line(Colors.danger(`✖`), " Pothos: Failed to extract schema:");
28
- for (let line of ex.message.split("\n")) {
29
- console.log(` `, line);
30
- }
31
- }
32
- }
33
- bus.subscribe("file.changed", async (evt) => {
34
- if (evt.properties.file.endsWith("out.mjs"))
35
- return;
36
- for (const route of routes) {
37
- const dir = path.dirname(route.schema);
38
- const relative = path.relative(dir, evt.properties.file);
39
- if (relative && !relative.startsWith("..") && !path.isAbsolute(relative))
40
- build(route);
41
- }
42
- });
43
- let first = false;
44
- bus.subscribe("stacks.metadata", async (evt) => {
45
- routes = Object.values(evt.properties)
46
- .flat()
47
- .filter((c) => c.type == "Api")
48
- .flatMap((c) => c.data.routes)
49
- .filter((r) => ["pothos", "graphql"].includes(r.type))
50
- .filter((r) => r.schema);
51
- if (first)
52
- return;
53
- for (const route of routes) {
54
- build(route);
55
- first = true;
56
- }
57
- });
58
- });
@@ -1 +0,0 @@
1
- export declare const useRDSWarmer: () => Promise<void>;
@@ -1,33 +0,0 @@
1
- import { useBus } from "../../../bus.js";
2
- import { RDSDataClient, ExecuteStatementCommand, } from "@aws-sdk/client-rds-data";
3
- import { useAWSClient } from "../../../credentials.js";
4
- import { lazy } from "../../../util/lazy.js";
5
- export const useRDSWarmer = lazy(async () => {
6
- let interval;
7
- const bus = useBus();
8
- const client = useAWSClient(RDSDataClient);
9
- bus.subscribe("stacks.metadata", (evt) => {
10
- if (interval)
11
- clearInterval(interval);
12
- interval = setInterval(() => {
13
- Object.values(evt.properties)
14
- .flat()
15
- .filter((c) => c.type === "RDS")
16
- .map((c) => {
17
- try {
18
- client.send(new ExecuteStatementCommand({
19
- sql: "SELECT 1",
20
- secretArn: c.data.secretArn,
21
- resourceArn: c.data.clusterArn,
22
- database: c.data.defaultDatabaseName,
23
- }));
24
- }
25
- catch (e) {
26
- // Ignore error
27
- // If the cluster is not warm, this will throw:
28
- // BadRequestException: Communication link failure
29
- }
30
- });
31
- }, 1000 * 60);
32
- });
33
- });