sst 3.0.0 → 3.0.1-2

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 (457) hide show
  1. package/package.json +8 -139
  2. package/src/index.ts +1 -0
  3. package/src/resource.ts +15 -0
  4. package/tsconfig.json +11 -0
  5. package/LICENSE +0 -21
  6. package/README.md +0 -43
  7. package/bootstrap.d.ts +0 -5
  8. package/bootstrap.js +0 -318
  9. package/bus.d.ts +0 -20
  10. package/bus.js +0 -52
  11. package/cache.d.ts +0 -4
  12. package/cache.js +0 -31
  13. package/cdk/deploy-stack.d.ts +0 -223
  14. package/cdk/deploy-stack.js +0 -562
  15. package/cdk/deployments-wrapper.d.ts +0 -3
  16. package/cdk/deployments-wrapper.js +0 -135
  17. package/cdk/deployments.d.ts +0 -327
  18. package/cdk/deployments.js +0 -360
  19. package/cdk/util.d.ts +0 -1
  20. package/cdk/util.js +0 -17
  21. package/cli/ci-info.d.ts +0 -4
  22. package/cli/ci-info.js +0 -8
  23. package/cli/colors.d.ts +0 -17
  24. package/cli/colors.js +0 -27
  25. package/cli/commands/bind.d.ts +0 -19
  26. package/cli/commands/bind.js +0 -360
  27. package/cli/commands/bootstrap.d.ts +0 -15
  28. package/cli/commands/bootstrap.js +0 -11
  29. package/cli/commands/build.d.ts +0 -17
  30. package/cli/commands/build.js +0 -25
  31. package/cli/commands/connect.d.ts +0 -17
  32. package/cli/commands/connect.js +0 -55
  33. package/cli/commands/console.d.ts +0 -15
  34. package/cli/commands/console.js +0 -22
  35. package/cli/commands/deploy.d.ts +0 -19
  36. package/cli/commands/deploy.js +0 -112
  37. package/cli/commands/dev.d.ts +0 -25
  38. package/cli/commands/dev.js +0 -351
  39. package/cli/commands/diff.d.ts +0 -19
  40. package/cli/commands/diff.js +0 -89
  41. package/cli/commands/plugins/kysely.d.ts +0 -1
  42. package/cli/commands/plugins/kysely.js +0 -87
  43. package/cli/commands/plugins/pothos.d.ts +0 -1
  44. package/cli/commands/plugins/pothos.js +0 -58
  45. package/cli/commands/plugins/warmer.d.ts +0 -1
  46. package/cli/commands/plugins/warmer.js +0 -33
  47. package/cli/commands/remove.d.ts +0 -19
  48. package/cli/commands/remove.js +0 -62
  49. package/cli/commands/secrets/get.d.ts +0 -19
  50. package/cli/commands/secrets/get.js +0 -27
  51. package/cli/commands/secrets/list.d.ts +0 -19
  52. package/cli/commands/secrets/list.js +0 -69
  53. package/cli/commands/secrets/load.d.ts +0 -17
  54. package/cli/commands/secrets/load.js +0 -47
  55. package/cli/commands/secrets/remove.d.ts +0 -19
  56. package/cli/commands/secrets/remove.js +0 -27
  57. package/cli/commands/secrets/secrets.d.ts +0 -2
  58. package/cli/commands/secrets/secrets.js +0 -16
  59. package/cli/commands/secrets/set.d.ts +0 -21
  60. package/cli/commands/secrets/set.js +0 -54
  61. package/cli/commands/telemetry.d.ts +0 -17
  62. package/cli/commands/telemetry.js +0 -24
  63. package/cli/commands/transform.d.ts +0 -17
  64. package/cli/commands/transform.js +0 -62
  65. package/cli/commands/types.d.ts +0 -15
  66. package/cli/commands/types.js +0 -25
  67. package/cli/commands/update.d.ts +0 -17
  68. package/cli/commands/update.js +0 -116
  69. package/cli/commands/version.d.ts +0 -15
  70. package/cli/commands/version.js +0 -15
  71. package/cli/local/router.d.ts +0 -44
  72. package/cli/local/router.js +0 -43
  73. package/cli/local/server.d.ts +0 -22
  74. package/cli/local/server.js +0 -319
  75. package/cli/program.d.ts +0 -19
  76. package/cli/program.js +0 -87
  77. package/cli/spinner.d.ts +0 -3
  78. package/cli/spinner.js +0 -14
  79. package/cli/sst.d.ts +0 -2
  80. package/cli/sst.js +0 -74
  81. package/cli/telemetry/environment.d.ts +0 -15
  82. package/cli/telemetry/environment.js +0 -27
  83. package/cli/telemetry/post-payload.d.ts +0 -1
  84. package/cli/telemetry/post-payload.js +0 -27
  85. package/cli/telemetry/project-id.d.ts +0 -2
  86. package/cli/telemetry/project-id.js +0 -47
  87. package/cli/telemetry/telemetry.d.ts +0 -19
  88. package/cli/telemetry/telemetry.js +0 -103
  89. package/cli/terminal.d.ts +0 -1
  90. package/cli/terminal.js +0 -8
  91. package/cli/ui/deploy.d.ts +0 -10
  92. package/cli/ui/deploy.js +0 -172
  93. package/cli/ui/functions.d.ts +0 -2
  94. package/cli/ui/functions.js +0 -130
  95. package/cli/ui/header.d.ts +0 -5
  96. package/cli/ui/header.js +0 -16
  97. package/cli/ui/stack.d.ts +0 -1
  98. package/cli/ui/stack.js +0 -6
  99. package/config.d.ts +0 -56
  100. package/config.js +0 -244
  101. package/constructs/Api.d.ts +0 -814
  102. package/constructs/Api.js +0 -743
  103. package/constructs/ApiGatewayV1Api.d.ts +0 -642
  104. package/constructs/ApiGatewayV1Api.js +0 -767
  105. package/constructs/App.d.ts +0 -168
  106. package/constructs/App.js +0 -493
  107. package/constructs/AppSyncApi.d.ts +0 -550
  108. package/constructs/AppSyncApi.js +0 -493
  109. package/constructs/AstroSite.d.ts +0 -39
  110. package/constructs/AstroSite.js +0 -78
  111. package/constructs/AstroSite.tsdoc.d.ts +0 -2
  112. package/constructs/AstroSite.tsdoc.js +0 -2
  113. package/constructs/Auth.d.ts +0 -100
  114. package/constructs/Auth.js +0 -177
  115. package/constructs/BaseSite.d.ts +0 -29
  116. package/constructs/BaseSite.js +0 -43
  117. package/constructs/Bucket.d.ts +0 -364
  118. package/constructs/Bucket.js +0 -327
  119. package/constructs/Cognito.d.ts +0 -232
  120. package/constructs/Cognito.js +0 -370
  121. package/constructs/Config.d.ts +0 -3
  122. package/constructs/Config.js +0 -3
  123. package/constructs/Construct.d.ts +0 -23
  124. package/constructs/Construct.js +0 -46
  125. package/constructs/Cron.d.ts +0 -164
  126. package/constructs/Cron.js +0 -114
  127. package/constructs/Distribution.d.ts +0 -143
  128. package/constructs/Distribution.js +0 -260
  129. package/constructs/EdgeFunction.d.ts +0 -49
  130. package/constructs/EdgeFunction.js +0 -442
  131. package/constructs/EventBus.d.ts +0 -444
  132. package/constructs/EventBus.js +0 -440
  133. package/constructs/Function.d.ts +0 -690
  134. package/constructs/Function.js +0 -583
  135. package/constructs/FunctionalStack.d.ts +0 -13
  136. package/constructs/FunctionalStack.js +0 -62
  137. package/constructs/Job.d.ts +0 -337
  138. package/constructs/Job.js +0 -404
  139. package/constructs/KinesisStream.d.ts +0 -224
  140. package/constructs/KinesisStream.js +0 -207
  141. package/constructs/Metadata.d.ts +0 -60
  142. package/constructs/Metadata.js +0 -1
  143. package/constructs/NextjsSite.d.ts +0 -104
  144. package/constructs/NextjsSite.js +0 -308
  145. package/constructs/Parameter.d.ts +0 -37
  146. package/constructs/Parameter.js +0 -53
  147. package/constructs/Queue.d.ts +0 -194
  148. package/constructs/Queue.js +0 -204
  149. package/constructs/RDS.d.ts +0 -221
  150. package/constructs/RDS.js +0 -363
  151. package/constructs/RemixSite.d.ts +0 -42
  152. package/constructs/RemixSite.js +0 -158
  153. package/constructs/RemixSite.tsdoc.d.ts +0 -2
  154. package/constructs/RemixSite.tsdoc.js +0 -2
  155. package/constructs/Script.d.ts +0 -160
  156. package/constructs/Script.js +0 -179
  157. package/constructs/Secret.d.ts +0 -30
  158. package/constructs/Secret.js +0 -59
  159. package/constructs/Service.d.ts +0 -487
  160. package/constructs/Service.js +0 -655
  161. package/constructs/SolidStartSite.d.ts +0 -37
  162. package/constructs/SolidStartSite.js +0 -66
  163. package/constructs/SolidStartSite.tsdoc.d.ts +0 -2
  164. package/constructs/SolidStartSite.tsdoc.js +0 -2
  165. package/constructs/SsrFunction.d.ts +0 -60
  166. package/constructs/SsrFunction.js +0 -226
  167. package/constructs/SsrSite.d.ts +0 -407
  168. package/constructs/SsrSite.js +0 -850
  169. package/constructs/Stack.d.ts +0 -127
  170. package/constructs/Stack.js +0 -243
  171. package/constructs/StaticSite.d.ts +0 -348
  172. package/constructs/StaticSite.js +0 -468
  173. package/constructs/SvelteKitSite.d.ts +0 -40
  174. package/constructs/SvelteKitSite.js +0 -106
  175. package/constructs/SvelteKitSite.tsdoc.d.ts +0 -2
  176. package/constructs/SvelteKitSite.tsdoc.js +0 -2
  177. package/constructs/Table.d.ts +0 -410
  178. package/constructs/Table.js +0 -425
  179. package/constructs/Topic.d.ts +0 -257
  180. package/constructs/Topic.js +0 -273
  181. package/constructs/WebSocketApi.d.ts +0 -355
  182. package/constructs/WebSocketApi.js +0 -404
  183. package/constructs/cdk/HttpAwsIntegration.d.ts +0 -32
  184. package/constructs/cdk/HttpAwsIntegration.js +0 -24
  185. package/constructs/cdk/certificate-base.d.ts +0 -18
  186. package/constructs/cdk/certificate-base.js +0 -26
  187. package/constructs/cdk/dns-validated-certificate.d.ts +0 -77
  188. package/constructs/cdk/dns-validated-certificate.js +0 -125
  189. package/constructs/cdk/website-redirect.d.ts +0 -53
  190. package/constructs/cdk/website-redirect.js +0 -77
  191. package/constructs/context.d.ts +0 -3
  192. package/constructs/context.js +0 -27
  193. package/constructs/deferred_task.d.ts +0 -6
  194. package/constructs/deferred_task.js +0 -45
  195. package/constructs/deprecated/NextjsSite.d.ts +0 -309
  196. package/constructs/deprecated/NextjsSite.js +0 -1074
  197. package/constructs/deprecated/cross-region-helper.d.ts +0 -7
  198. package/constructs/deprecated/cross-region-helper.js +0 -152
  199. package/constructs/deprecated/index.d.ts +0 -1
  200. package/constructs/deprecated/index.js +0 -1
  201. package/constructs/future/Auth.d.ts +0 -80
  202. package/constructs/future/Auth.js +0 -122
  203. package/constructs/future/index.d.ts +0 -1
  204. package/constructs/future/index.js +0 -1
  205. package/constructs/index.d.ts +0 -32
  206. package/constructs/index.js +0 -32
  207. package/constructs/static-file-list.d.ts +0 -1
  208. package/constructs/static-file-list.js +0 -51
  209. package/constructs/util/apiGatewayV1AccessLog.d.ts +0 -15
  210. package/constructs/util/apiGatewayV1AccessLog.js +0 -76
  211. package/constructs/util/apiGatewayV2AccessLog.d.ts +0 -10
  212. package/constructs/util/apiGatewayV2AccessLog.js +0 -107
  213. package/constructs/util/apiGatewayV2Cors.d.ts +0 -67
  214. package/constructs/util/apiGatewayV2Cors.js +0 -21
  215. package/constructs/util/apiGatewayV2Domain.d.ts +0 -47
  216. package/constructs/util/apiGatewayV2Domain.js +0 -208
  217. package/constructs/util/appSyncApiDomain.d.ts +0 -41
  218. package/constructs/util/appSyncApiDomain.js +0 -176
  219. package/constructs/util/builder.d.ts +0 -3
  220. package/constructs/util/builder.js +0 -9
  221. package/constructs/util/duration.d.ts +0 -3
  222. package/constructs/util/duration.js +0 -19
  223. package/constructs/util/functionBinding.d.ts +0 -31
  224. package/constructs/util/functionBinding.js +0 -104
  225. package/constructs/util/functionUrlCors.d.ts +0 -67
  226. package/constructs/util/functionUrlCors.js +0 -23
  227. package/constructs/util/permission.d.ts +0 -8
  228. package/constructs/util/permission.js +0 -228
  229. package/constructs/util/size.d.ts +0 -3
  230. package/constructs/util/size.js +0 -12
  231. package/constructs/util/warning.d.ts +0 -11
  232. package/constructs/util/warning.js +0 -21
  233. package/context/context.d.ts +0 -13
  234. package/context/context.js +0 -69
  235. package/context/context2.d.ts +0 -16
  236. package/context/context2.js +0 -108
  237. package/context/handler.d.ts +0 -25
  238. package/context/handler.js +0 -21
  239. package/context/index.d.ts +0 -2
  240. package/context/index.js +0 -2
  241. package/credentials.d.ts +0 -9
  242. package/credentials.js +0 -145
  243. package/error.d.ts +0 -6
  244. package/error.js +0 -10
  245. package/index.d.ts +0 -1
  246. package/index.js +0 -1
  247. package/iot.d.ts +0 -6
  248. package/iot.js +0 -163
  249. package/logger.d.ts +0 -3
  250. package/logger.js +0 -32
  251. package/node/actor/index.d.ts +0 -29
  252. package/node/actor/index.js +0 -17
  253. package/node/api/index.d.ts +0 -64
  254. package/node/api/index.js +0 -179
  255. package/node/auth/adapter/adapter.d.ts +0 -3
  256. package/node/auth/adapter/adapter.js +0 -3
  257. package/node/auth/adapter/facebook.d.ts +0 -2
  258. package/node/auth/adapter/facebook.js +0 -26
  259. package/node/auth/adapter/github.d.ts +0 -2
  260. package/node/auth/adapter/github.js +0 -21
  261. package/node/auth/adapter/google.d.ts +0 -9
  262. package/node/auth/adapter/google.js +0 -18
  263. package/node/auth/adapter/link.d.ts +0 -8
  264. package/node/auth/adapter/link.js +0 -39
  265. package/node/auth/adapter/oauth.d.ts +0 -25
  266. package/node/auth/adapter/oauth.js +0 -52
  267. package/node/auth/adapter/oidc.d.ts +0 -17
  268. package/node/auth/adapter/oidc.js +0 -50
  269. package/node/auth/adapter/twitch.d.ts +0 -2
  270. package/node/auth/adapter/twitch.js +0 -11
  271. package/node/auth/auth.d.ts +0 -24
  272. package/node/auth/auth.js +0 -74
  273. package/node/auth/index.d.ts +0 -13
  274. package/node/auth/index.js +0 -12
  275. package/node/auth/session.d.ts +0 -76
  276. package/node/auth/session.js +0 -121
  277. package/node/bucket/index.d.ts +0 -3
  278. package/node/bucket/index.js +0 -2
  279. package/node/config/index.d.ts +0 -13
  280. package/node/config/index.js +0 -22
  281. package/node/event-bus/index.d.ts +0 -51
  282. package/node/event-bus/index.js +0 -76
  283. package/node/function/index.d.ts +0 -3
  284. package/node/function/index.js +0 -3
  285. package/node/future/auth/adapter/adapter.d.ts +0 -10
  286. package/node/future/auth/adapter/adapter.js +0 -1
  287. package/node/future/auth/adapter/code.d.ts +0 -17
  288. package/node/future/auth/adapter/code.js +0 -68
  289. package/node/future/auth/adapter/facebook.d.ts +0 -16
  290. package/node/future/auth/adapter/facebook.js +0 -27
  291. package/node/future/auth/adapter/github.d.ts +0 -23
  292. package/node/future/auth/adapter/github.js +0 -23
  293. package/node/future/auth/adapter/google.d.ts +0 -28
  294. package/node/future/auth/adapter/google.js +0 -22
  295. package/node/future/auth/adapter/link.d.ts +0 -13
  296. package/node/future/auth/adapter/link.js +0 -47
  297. package/node/future/auth/adapter/microsoft.d.ts +0 -22
  298. package/node/future/auth/adapter/microsoft.js +0 -16
  299. package/node/future/auth/adapter/oauth.d.ts +0 -41
  300. package/node/future/auth/adapter/oauth.js +0 -67
  301. package/node/future/auth/adapter/oidc.d.ts +0 -30
  302. package/node/future/auth/adapter/oidc.js +0 -63
  303. package/node/future/auth/adapter/spotify.d.ts +0 -23
  304. package/node/future/auth/adapter/spotify.js +0 -22
  305. package/node/future/auth/encryption.d.ts +0 -2
  306. package/node/future/auth/encryption.js +0 -30
  307. package/node/future/auth/handler.d.ts +0 -46
  308. package/node/future/auth/handler.js +0 -280
  309. package/node/future/auth/index.d.ts +0 -17
  310. package/node/future/auth/index.js +0 -15
  311. package/node/future/auth/session.d.ts +0 -71
  312. package/node/future/auth/session.js +0 -146
  313. package/node/graphql/index.d.ts +0 -15
  314. package/node/graphql/index.js +0 -32
  315. package/node/job/index.d.ts +0 -37
  316. package/node/job/index.js +0 -64
  317. package/node/kinesis-stream/index.d.ts +0 -3
  318. package/node/kinesis-stream/index.js +0 -3
  319. package/node/queue/index.d.ts +0 -3
  320. package/node/queue/index.js +0 -2
  321. package/node/rds/index.d.ts +0 -3
  322. package/node/rds/index.js +0 -2
  323. package/node/service/index.d.ts +0 -3
  324. package/node/service/index.js +0 -4
  325. package/node/site/index.d.ts +0 -18
  326. package/node/site/index.js +0 -18
  327. package/node/table/index.d.ts +0 -3
  328. package/node/table/index.js +0 -4
  329. package/node/topic/index.d.ts +0 -3
  330. package/node/topic/index.js +0 -4
  331. package/node/util/index.d.ts +0 -2
  332. package/node/util/index.js +0 -196
  333. package/node/util/loader.d.ts +0 -2
  334. package/node/util/loader.js +0 -51
  335. package/node/websocket-api/index.d.ts +0 -23
  336. package/node/websocket-api/index.js +0 -48
  337. package/pothos.d.ts +0 -7
  338. package/pothos.js +0 -160
  339. package/project.d.ts +0 -75
  340. package/project.js +0 -188
  341. package/runtime/handlers/container.d.ts +0 -2
  342. package/runtime/handlers/container.js +0 -263
  343. package/runtime/handlers/dotnet.d.ts +0 -2
  344. package/runtime/handlers/dotnet.js +0 -115
  345. package/runtime/handlers/go.d.ts +0 -2
  346. package/runtime/handlers/go.js +0 -126
  347. package/runtime/handlers/java.d.ts +0 -2
  348. package/runtime/handlers/java.js +0 -103
  349. package/runtime/handlers/node.d.ts +0 -2
  350. package/runtime/handlers/node.js +0 -269
  351. package/runtime/handlers/python.d.ts +0 -2
  352. package/runtime/handlers/python.js +0 -141
  353. package/runtime/handlers/pythonBundling.d.ts +0 -82
  354. package/runtime/handlers/pythonBundling.js +0 -80
  355. package/runtime/handlers/rust.d.ts +0 -2
  356. package/runtime/handlers/rust.js +0 -110
  357. package/runtime/handlers.d.ts +0 -74
  358. package/runtime/handlers.js +0 -151
  359. package/runtime/iot.d.ts +0 -1
  360. package/runtime/iot.js +0 -17
  361. package/runtime/runtime.d.ts +0 -32
  362. package/runtime/runtime.js +0 -1
  363. package/runtime/server.d.ts +0 -6
  364. package/runtime/server.js +0 -150
  365. package/runtime/workers.d.ts +0 -37
  366. package/runtime/workers.js +0 -85
  367. package/stacks/app-metadata.d.ts +0 -7
  368. package/stacks/app-metadata.js +0 -75
  369. package/stacks/assembly.d.ts +0 -1
  370. package/stacks/assembly.js +0 -4
  371. package/stacks/build.d.ts +0 -9
  372. package/stacks/build.js +0 -110
  373. package/stacks/deploy.d.ts +0 -9
  374. package/stacks/deploy.js +0 -240
  375. package/stacks/diff.d.ts +0 -8
  376. package/stacks/diff.js +0 -62
  377. package/stacks/index.d.ts +0 -10
  378. package/stacks/index.js +0 -10
  379. package/stacks/metadata.d.ts +0 -11
  380. package/stacks/metadata.js +0 -83
  381. package/stacks/monitor.d.ts +0 -32
  382. package/stacks/monitor.js +0 -151
  383. package/stacks/remove.d.ts +0 -8
  384. package/stacks/remove.js +0 -76
  385. package/stacks/synth.d.ts +0 -12
  386. package/stacks/synth.js +0 -94
  387. package/support/base-site-archiver.mjs +0 -99
  388. package/support/base-site-custom-resource/s3-handler.py +0 -195
  389. package/support/base-site-custom-resource/s3-upload.py +0 -89
  390. package/support/bootstrap-metadata-function/index.mjs +0 -58011
  391. package/support/bridge/Dockerfile +0 -3
  392. package/support/bridge/bridge.mjs +0 -146
  393. package/support/certificate-requestor/index.js +0 -549
  394. package/support/custom-resources/index.mjs +0 -180627
  395. package/support/dotnet31-bootstrap/Program.cs +0 -17
  396. package/support/dotnet31-bootstrap/dotnet-bootstrap.csproj +0 -12
  397. package/support/dotnet31-bootstrap/release/Amazon.Lambda.Core.dll +0 -0
  398. package/support/dotnet31-bootstrap/release/Amazon.Lambda.RuntimeSupport.dll +0 -0
  399. package/support/dotnet31-bootstrap/release/System.Runtime.CompilerServices.Unsafe.dll +0 -0
  400. package/support/dotnet31-bootstrap/release/System.Text.Encodings.Web.dll +0 -0
  401. package/support/dotnet31-bootstrap/release/System.Text.Json.dll +0 -0
  402. package/support/dotnet31-bootstrap/release/dotnet-bootstrap +0 -0
  403. package/support/dotnet31-bootstrap/release/dotnet-bootstrap.deps.json +0 -230
  404. package/support/dotnet31-bootstrap/release/dotnet-bootstrap.dll +0 -0
  405. package/support/dotnet31-bootstrap/release/dotnet-bootstrap.pdb +0 -0
  406. package/support/dotnet31-bootstrap/release/dotnet-bootstrap.runtimeconfig.json +0 -9
  407. package/support/dotnet6-bootstrap/Program.cs +0 -17
  408. package/support/dotnet6-bootstrap/dotnet-bootstrap.csproj +0 -12
  409. package/support/dotnet6-bootstrap/release/Amazon.Lambda.Core.dll +0 -0
  410. package/support/dotnet6-bootstrap/release/Amazon.Lambda.RuntimeSupport.dll +0 -0
  411. package/support/dotnet6-bootstrap/release/dotnet-bootstrap +0 -0
  412. package/support/dotnet6-bootstrap/release/dotnet-bootstrap.deps.json +0 -59
  413. package/support/dotnet6-bootstrap/release/dotnet-bootstrap.dll +0 -0
  414. package/support/dotnet6-bootstrap/release/dotnet-bootstrap.pdb +0 -0
  415. package/support/dotnet6-bootstrap/release/dotnet-bootstrap.runtimeconfig.json +0 -12
  416. package/support/edge-function/edge-lambda-version.mjs +0 -3
  417. package/support/edge-function/edge-lambda.mjs +0 -3
  418. package/support/edge-function/s3-bucket.mjs +0 -3
  419. package/support/event-bus-retrier/index.mjs +0 -75
  420. package/support/java-runtime/install.sh +0 -25
  421. package/support/java-runtime/pom.xml +0 -39
  422. package/support/java-runtime/release/aws-lambda-java-core-1.2.0.jar +0 -0
  423. package/support/java-runtime/release/aws-lambda-java-runtime-interface-client-1.1.0.jar +0 -0
  424. package/support/java-runtime/release/aws-lambda-java-serialization-1.0.0.jar +0 -0
  425. package/support/job-manager/index.mjs +0 -57679
  426. package/support/nixpacks/Dockerfile +0 -6
  427. package/support/nodejs-runtime/index.mjs +0 -169
  428. package/support/python-runtime/Dockerfile +0 -9
  429. package/support/python-runtime/Dockerfile.custom +0 -21
  430. package/support/python-runtime/Dockerfile.dependencies +0 -26
  431. package/support/python-runtime/runtime.py +0 -127
  432. package/support/rds-migrator/index.mjs +0 -49
  433. package/support/remix-site-function/edge-server.js +0 -161
  434. package/support/remix-site-function/polyfill.js +0 -24
  435. package/support/remix-site-function/regional-server.js +0 -164
  436. package/support/script-function/index.mjs +0 -48760
  437. package/support/service-dev-function/index.js +0 -1
  438. package/support/signing-function/index.mjs +0 -3769
  439. package/support/sls-nextjs-site-build-helper/build.cjs +0 -91
  440. package/support/sls-nextjs-site-build-helper/index-wrapper.js +0 -19
  441. package/support/sls-nextjs-site-function-code-replacer/lambda-code-updater.py +0 -156
  442. package/support/sls-nextjs-site-stub/index.html +0 -99
  443. package/support/ssr-site-function-archiver.mjs +0 -96
  444. package/support/ssr-site-function-stub/index.js +0 -5
  445. package/support/ssr-warmer/index.mjs +0 -34235
  446. package/util/error.d.ts +0 -3
  447. package/util/error.js +0 -6
  448. package/util/fs.d.ts +0 -4
  449. package/util/fs.js +0 -46
  450. package/util/lazy.d.ts +0 -1
  451. package/util/lazy.js +0 -11
  452. package/util/module.d.ts +0 -1
  453. package/util/module.js +0 -5
  454. package/util/process.d.ts +0 -2
  455. package/util/process.js +0 -3
  456. package/watcher.d.ts +0 -14
  457. package/watcher.js +0 -35
@@ -1,440 +0,0 @@
1
- import { Construct } from "constructs";
2
- import * as lambda from "aws-cdk-lib/aws-lambda";
3
- import * as sqs from "aws-cdk-lib/aws-sqs";
4
- import * as events from "aws-cdk-lib/aws-events";
5
- import { LambdaFunction as LambdaFunctionTarget, SqsQueue as SqsQueueTarget, CloudWatchLogGroup as LogGroupTarget, } from "aws-cdk-lib/aws-events-targets";
6
- import { Queue } from "./Queue.js";
7
- import { getFunctionRef, isCDKConstruct } from "./Construct.js";
8
- import { Function as Fn, } from "./Function.js";
9
- import { SqsEventSource } from "aws-cdk-lib/aws-lambda-event-sources";
10
- import { SqsDestination } from "aws-cdk-lib/aws-lambda-destinations";
11
- import url from "url";
12
- import path from "path";
13
- import { Effect, PolicyStatement } from "aws-cdk-lib/aws-iam";
14
- import { Duration } from "aws-cdk-lib/core";
15
- import { Stack } from "./Stack.js";
16
- const __dirname = path.dirname(url.fileURLToPath(import.meta.url));
17
- /////////////////////
18
- // Construct
19
- /////////////////////
20
- /**
21
- * The `EventBus` construct is a higher level CDK construct that makes it easy to create an EventBridge Event Bus.
22
- *
23
- * @example
24
- *
25
- * ```js
26
- * import { EventBus } from "sst/constructs";
27
- *
28
- * new EventBus(stack, "Bus", {
29
- * rules: {
30
- * myRule: {
31
- * pattern: { source: ["myevent"] },
32
- * targets: {
33
- * myTarget1: "src/function1.handler",
34
- * myTarget2: "src/function2.handler"
35
- * },
36
- * },
37
- * },
38
- * });
39
- * ```
40
- */
41
- export class EventBus extends Construct {
42
- id;
43
- cdk;
44
- rulesData = {};
45
- targetsData = {};
46
- bindingForAllTargets = [];
47
- permissionsAttachedForAllTargets = [];
48
- props;
49
- constructor(scope, id, props) {
50
- super(scope, props?.cdk?.id || id);
51
- this.id = id;
52
- this.props = props || {};
53
- this.cdk = {};
54
- this.createEventBus();
55
- this.addRules(this, props?.rules || {});
56
- }
57
- /**
58
- * The ARN of the internally created `EventBus` instance.
59
- */
60
- get eventBusArn() {
61
- return this.cdk.eventBus.eventBusArn;
62
- }
63
- /**
64
- * The name of the internally created `EventBus` instance.
65
- */
66
- get eventBusName() {
67
- return this.cdk.eventBus.eventBusName;
68
- }
69
- /**
70
- * Get a rule
71
- *
72
- * @example
73
- * ```js
74
- * bus.getRule("myRule");
75
- * ```
76
- */
77
- getRule(key) {
78
- return this.rulesData[key];
79
- }
80
- /**
81
- * Add rules after the EventBus has been created.
82
- *
83
- * @example
84
- * ```js
85
- * bus.addRules(stack, {
86
- * myRule2: {
87
- * pattern: { source: ["myevent"] },
88
- * targets: {
89
- * myTarget3: "src/function3.handler"
90
- * myTarget4: "src/function4.handler"
91
- * },
92
- * },
93
- * });
94
- * ```
95
- */
96
- addRules(scope, rules) {
97
- Object.entries(rules).forEach(([ruleKey, rule]) => this.addRule(scope, ruleKey, rule));
98
- }
99
- /**
100
- * Add targets to existing rules.
101
- *
102
- * @example
103
- * ```js
104
- * bus.addRules(stack, "myRule", {
105
- * myTarget1: "src/function1.handler"
106
- * myTarget2: "src/function2.handler"
107
- * });
108
- * ```
109
- */
110
- addTargets(scope, ruleKey, targets) {
111
- // Get rule
112
- const eventsRule = this.getRule(ruleKey);
113
- if (!eventsRule) {
114
- throw new Error(`Cannot find the rule "${ruleKey}" in the "${this.node.id}" EventBus.`);
115
- }
116
- // Add targets
117
- Object.entries(targets).forEach(([targetName, target]) => this.addTarget(scope, ruleKey, eventsRule, targetName, target));
118
- }
119
- /**
120
- * Binds the given list of resources to all event targets in this EventBus.
121
- *
122
- * @example
123
- * ```js
124
- * bus.bind([STRIPE_KEY, bucket]);
125
- * ```
126
- */
127
- bind(constructs) {
128
- Object.values(this.targetsData).forEach((rule) => Object.values(rule)
129
- .filter((target) => target instanceof Fn)
130
- .forEach((target) => target.bind(constructs)));
131
- this.bindingForAllTargets.push(...constructs);
132
- }
133
- /**
134
- * Binds the given list of resources to a specific event bus rule target
135
- *
136
- * @example
137
- * ```js
138
- * const bus = new EventBus(stack, "Bus", {
139
- * rules: {
140
- * myRule: {
141
- * pattern: { source: ["myevent"] },
142
- * targets: {
143
- * myTarget1: "src/function1.handler"
144
- * myTarget2: "src/function2.handler"
145
- * },
146
- * },
147
- * },
148
- * });
149
- *
150
- * bus.bindToTarget("myRule", 0, [STRIPE_KEY, bucket]);
151
- * ```
152
- */
153
- bindToTarget(ruleKey, targetName, constructs) {
154
- const rule = this.targetsData[ruleKey];
155
- if (!rule) {
156
- throw new Error(`Cannot find the rule "${ruleKey}" in the "${this.node.id}" EventBus.`);
157
- }
158
- const target = rule[targetName];
159
- if (!(target instanceof Fn)) {
160
- throw new Error(`Cannot bind to the "${this.node.id}" EventBus target because it's not a Lambda function`);
161
- }
162
- target.bind(constructs);
163
- }
164
- /**
165
- * Add permissions to all event targets in this EventBus.
166
- *
167
- * @example
168
- * ```js
169
- * bus.attachPermissions(["s3"]);
170
- * ```
171
- */
172
- attachPermissions(permissions) {
173
- Object.values(this.targetsData).forEach((rule) => Object.values(rule)
174
- .filter((target) => target instanceof Fn)
175
- .forEach((target) => target.attachPermissions(permissions)));
176
- this.permissionsAttachedForAllTargets.push(permissions);
177
- }
178
- /**
179
- * Add permissions to a specific event bus rule target
180
- *
181
- * @example
182
- * ```js
183
- * const bus = new EventBus(stack, "Bus", {
184
- * rules: {
185
- * myRule: {
186
- * pattern: { source: ["myevent"] },
187
- * targets: {
188
- * myTarget1: "src/function1.handler"
189
- * myTarget2: "src/function2.handler"
190
- * },
191
- * },
192
- * },
193
- * });
194
- *
195
- * bus.attachPermissionsToTarget("myRule", 0, ["s3"]);
196
- * ```
197
- */
198
- attachPermissionsToTarget(ruleKey, targetName, permissions) {
199
- const rule = this.targetsData[ruleKey];
200
- if (!rule) {
201
- throw new Error(`Cannot find the rule "${ruleKey}" in the "${this.node.id}" EventBus.`);
202
- }
203
- const target = rule[targetName];
204
- if (!(target instanceof Fn)) {
205
- throw new Error(`Cannot attach permissions to the "${this.node.id}" EventBus target because it's not a Lambda function`);
206
- }
207
- target.attachPermissions(permissions);
208
- }
209
- getConstructMetadata() {
210
- return {
211
- type: "EventBus",
212
- data: {
213
- eventBusName: this.cdk.eventBus.eventBusName,
214
- rules: Object.entries(this.targetsData).map(([ruleName, rule]) => ({
215
- key: ruleName,
216
- targets: Object.values(rule).map(getFunctionRef).filter(Boolean),
217
- targetNames: Object.keys(rule),
218
- })),
219
- },
220
- };
221
- }
222
- /** @internal */
223
- getFunctionBinding() {
224
- return {
225
- clientPackage: "event-bus",
226
- variables: {
227
- eventBusName: {
228
- type: "plain",
229
- value: this.eventBusName,
230
- },
231
- },
232
- permissions: {
233
- "events:*": [this.eventBusArn],
234
- },
235
- };
236
- }
237
- retrierQueue;
238
- retrierFn;
239
- getRetrier() {
240
- const app = this.node.root;
241
- if (this.retrierFn && this.retrierQueue) {
242
- return { fn: this.retrierFn, queue: this.retrierQueue };
243
- }
244
- this.retrierQueue = new sqs.Queue(this, `RetrierQueue`, {
245
- queueName: app.logicalPrefixedName(this.node.id + "Retrier"),
246
- });
247
- this.retrierFn = new lambda.Function(this, `RetrierFunction`, {
248
- functionName: app.logicalPrefixedName(this.node.id + "Retrier"),
249
- runtime: lambda.Runtime.NODEJS_16_X,
250
- timeout: Duration.seconds(30),
251
- handler: "index.handler",
252
- code: lambda.Code.fromAsset(path.join(__dirname, "../support/event-bus-retrier")),
253
- environment: {
254
- RETRIER_QUEUE_URL: this.retrierQueue.queueUrl,
255
- },
256
- });
257
- this.retrierFn.addToRolePolicy(new PolicyStatement({
258
- effect: Effect.ALLOW,
259
- actions: ["lambda:InvokeFunction", "lambda:GetFunction"],
260
- resources: [
261
- `arn:${Stack.of(this).partition}:lambda:${app.region}:${app.account}:function:*`,
262
- ],
263
- conditions: {
264
- StringEquals: {
265
- "aws:ResourceTag/sst:app": app.name,
266
- "aws:ResourceTag/sst:stage": app.stage,
267
- },
268
- },
269
- }));
270
- this.retrierFn.addEventSource(new SqsEventSource(this.retrierQueue));
271
- this.retrierQueue.grantSendMessages(this.retrierFn);
272
- return { fn: this.retrierFn, queue: this.retrierQueue };
273
- }
274
- createEventBus() {
275
- const app = this.node.root;
276
- const id = this.node.id;
277
- const { cdk } = this.props;
278
- if (isCDKConstruct(cdk?.eventBus)) {
279
- this.cdk.eventBus = cdk?.eventBus;
280
- }
281
- else {
282
- const ebProps = (cdk?.eventBus || {});
283
- this.cdk.eventBus = new events.EventBus(this, "EventBus", {
284
- // Note: Set default eventBusName only if eventSourceName is not configured.
285
- // This is because both cannot be configured at the same time.
286
- eventBusName: ebProps.eventSourceName
287
- ? undefined
288
- : app.logicalPrefixedName(id),
289
- ...ebProps,
290
- });
291
- }
292
- }
293
- addRule(scope, ruleKey, rule) {
294
- // Validate input
295
- // @ts-expect-error "eventBus" is not a prop
296
- if (rule.cdk?.rule.eventBus) {
297
- throw new Error(`Cannot configure the "rule.cdk.rule.eventBus" in the "${this.node.id}" EventBus`);
298
- }
299
- // Validate rule not redefined
300
- if (this.targetsData[ruleKey]) {
301
- throw new Error(`A rule already exists for "${ruleKey}"`);
302
- }
303
- // Create Rule
304
- const root = this.node.root;
305
- const eventsRule = new events.Rule(scope, ruleKey, {
306
- ruleName: root.logicalPrefixedName(ruleKey),
307
- ...rule.cdk?.rule,
308
- eventPattern: rule.pattern
309
- ? { ...rule.pattern }
310
- : rule.cdk?.rule?.eventPattern,
311
- eventBus: this.cdk.eventBus,
312
- targets: [],
313
- });
314
- this.rulesData[ruleKey] = eventsRule;
315
- // Create Targets
316
- this.addTargets(scope, ruleKey, rule.targets || {});
317
- }
318
- addTarget(scope, ruleKey, eventsRule, targetName, target) {
319
- this.targetsData[ruleKey] = this.targetsData[ruleKey] || {};
320
- // Validate rule not redefined
321
- if (this.targetsData[ruleKey][targetName]) {
322
- throw new Error(`A target with name "${targetName}" already exists in rule "${ruleKey}"`);
323
- }
324
- if (target instanceof Queue || target.queue) {
325
- target = target;
326
- this.addQueueTarget(scope, ruleKey, eventsRule, targetName, target);
327
- }
328
- else if (target.cdk?.logGroup) {
329
- target = target;
330
- this.addLogGroupTarget(scope, ruleKey, eventsRule, targetName, target);
331
- }
332
- else if (target.cdk?.function) {
333
- target = target;
334
- this.addCdkFunctionTarget(scope, ruleKey, eventsRule, targetName, target);
335
- }
336
- else {
337
- target = target;
338
- this.addFunctionTarget(scope, ruleKey, eventsRule, targetName, target);
339
- }
340
- }
341
- addQueueTarget(scope, ruleKey, eventsRule, targetName, target) {
342
- // Parse target props
343
- let targetProps;
344
- let queue;
345
- if (target instanceof Queue) {
346
- target = target;
347
- queue = target;
348
- }
349
- else {
350
- target = target;
351
- targetProps = target.cdk?.target;
352
- queue = target.queue;
353
- }
354
- this.targetsData[ruleKey][targetName] = queue;
355
- // Create target
356
- eventsRule.addTarget(new SqsQueueTarget(queue.cdk.queue, targetProps));
357
- }
358
- addLogGroupTarget(scope, ruleKey, eventsRule, targetName, target) {
359
- const { logGroup, target: targetProps } = target.cdk;
360
- this.targetsData[ruleKey][targetName] = logGroup;
361
- eventsRule.addTarget(new LogGroupTarget(logGroup, targetProps));
362
- }
363
- addCdkFunctionTarget(scope, ruleKey, eventsRule, targetName, target) {
364
- // Parse target props
365
- const targetProps = target.cdk.target;
366
- const fn = target.cdk.function;
367
- this.targetsData[ruleKey][targetName] = fn;
368
- // Create target
369
- eventsRule.addTarget(new LambdaFunctionTarget(fn, targetProps));
370
- }
371
- subs = new Map();
372
- subscribe(scope_or_type, type_or_target, target_or_props, maybe_props) {
373
- let [scope, type, target, props] = (() => {
374
- if (scope_or_type instanceof Construct) {
375
- return [
376
- scope_or_type,
377
- type_or_target,
378
- target_or_props,
379
- maybe_props,
380
- ];
381
- }
382
- return [this, scope_or_type, type_or_target, maybe_props];
383
- })();
384
- type = Array.isArray(type) ? type : [type];
385
- const joined = type.length > 1 ? "multi" : type.join("_");
386
- const count = (this.subs.get(joined) || 0) + 1;
387
- this.subs.set(joined, count);
388
- const name = `${joined.replaceAll(/[^a-zA-Z_]/g, "_")}_${count}`;
389
- const retries = props?.retries || this.props.defaults?.retries;
390
- const fn = (() => {
391
- if (retries) {
392
- const retrier = this.getRetrier();
393
- const fn = Fn.fromDefinition(scope, name, target, {
394
- onFailure: new SqsDestination(retrier.queue),
395
- });
396
- fn.addEnvironment("SST_RETRIES", retries.toString());
397
- return fn;
398
- }
399
- return Fn.fromDefinition(scope, name, target);
400
- })();
401
- this.addRule(scope, name + "_rule", {
402
- pattern: {
403
- detailType: type,
404
- },
405
- targets: {
406
- [name + "_target"]: {
407
- type: "function",
408
- function: fn,
409
- retries: props?.retries,
410
- },
411
- },
412
- });
413
- return this;
414
- }
415
- addFunctionTarget(scope, ruleKey, eventsRule, targetName, target) {
416
- // Parse target props
417
- let targetProps;
418
- let functionDefinition;
419
- let retries = this.props.defaults?.retries;
420
- if (target.function) {
421
- target = target;
422
- targetProps = target.cdk?.target;
423
- functionDefinition = target.function;
424
- if (target.retries)
425
- retries = target.retries;
426
- }
427
- else {
428
- target = target;
429
- functionDefinition = target;
430
- }
431
- // Create function
432
- const fn = Fn.fromDefinition(scope, `Target_${this.node.id}_${ruleKey}_${targetName}`, functionDefinition, this.props.defaults?.function, `The "defaults.function" cannot be applied if an instance of a Function construct is passed in. Make sure to define all the targets using FunctionProps, so the EventBus construct can apply the "defaults.function" to them.`);
433
- this.targetsData[ruleKey][targetName] = fn;
434
- // Create target
435
- eventsRule.addTarget(new LambdaFunctionTarget(fn, targetProps));
436
- // Attach existing permissions
437
- this.permissionsAttachedForAllTargets.forEach((permissions) => fn.attachPermissions(permissions));
438
- fn.bind(this.bindingForAllTargets);
439
- }
440
- }