sst 3.0.0 → 3.0.1-1

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 +7 -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,232 +0,0 @@
1
- import { Construct } from "constructs";
2
- import { SSTConstruct } from "./Construct.js";
3
- import { Function as Fn, FunctionProps, FunctionDefinition } from "./Function.js";
4
- import { Permissions } from "./util/permission.js";
5
- import { CfnIdentityPool, CfnIdentityPoolProps, CfnIdentityPoolRoleAttachment, IUserPool, IUserPoolClient, UserPoolClientOptions, UserPoolProps } from "aws-cdk-lib/aws-cognito";
6
- import { Role } from "aws-cdk-lib/aws-iam";
7
- export interface CognitoUserPoolTriggers {
8
- createAuthChallenge?: FunctionDefinition;
9
- customEmailSender?: FunctionDefinition;
10
- customMessage?: FunctionDefinition;
11
- customSmsSender?: FunctionDefinition;
12
- defineAuthChallenge?: FunctionDefinition;
13
- postAuthentication?: FunctionDefinition;
14
- postConfirmation?: FunctionDefinition;
15
- preAuthentication?: FunctionDefinition;
16
- preSignUp?: FunctionDefinition;
17
- preTokenGeneration?: FunctionDefinition;
18
- userMigration?: FunctionDefinition;
19
- verifyAuthChallengeResponse?: FunctionDefinition;
20
- }
21
- export interface CognitoAuth0Props {
22
- domain: string;
23
- clientId: string;
24
- }
25
- export interface CognitoAmazonProps {
26
- appId: string;
27
- }
28
- export interface CognitoAppleProps {
29
- servicesId: string;
30
- }
31
- export interface CognitoFacebookProps {
32
- appId: string;
33
- }
34
- export interface CognitoGoogleProps {
35
- clientId: string;
36
- }
37
- export interface CognitoTwitterProps {
38
- consumerKey: string;
39
- consumerSecret: string;
40
- }
41
- export interface CognitoCdkCfnIdentityPoolProps extends Omit<CfnIdentityPoolProps, "allowUnauthenticatedIdentities"> {
42
- allowUnauthenticatedIdentities?: boolean;
43
- }
44
- export interface CognitoIdentityPoolFederationProps {
45
- auth0?: CognitoAuth0Props;
46
- amazon?: CognitoAmazonProps;
47
- apple?: CognitoAppleProps;
48
- facebook?: CognitoFacebookProps;
49
- google?: CognitoGoogleProps;
50
- twitter?: CognitoTwitterProps;
51
- cdk?: {
52
- cfnIdentityPool?: CognitoCdkCfnIdentityPoolProps;
53
- };
54
- }
55
- export interface CognitoProps {
56
- defaults?: {
57
- /**
58
- * The default function props to be applied to all the triggers in the UserPool. The `environment`, `permissions` and `layers` properties will be merged with per route definitions if they are defined.
59
- *
60
- * @example
61
- *
62
- * ```js
63
- * new Cognito(stack, "Auth", {
64
- * defaults: {
65
- * function: {
66
- * timeout: 20,
67
- * environment: { topicName: topic.topicName },
68
- * permissions: [topic],
69
- * }
70
- * },
71
- * });
72
- * ```
73
- */
74
- function?: FunctionProps;
75
- };
76
- /**
77
- * Configure the different ways a user can sign in to our application for our User Pool. For example, you might want a user to be able to sign in with their email or username. Or with their phone number.
78
- *
79
- * :::caution
80
- * You cannot change the login property once the User Pool has been created.
81
- * :::
82
- *
83
- * @default `["username"]`
84
- */
85
- login?: ("email" | "phone" | "username" | "preferredUsername")[];
86
- /**
87
- * Configure triggers for this User Pool
88
- * @default No triggers
89
- *
90
- * @example
91
- *
92
- * ```js
93
- * new Cognito(stack, "Auth", {
94
- * triggers: {
95
- * preAuthentication: "src/preAuthentication.main",
96
- * postAuthentication: "src/postAuthentication.main",
97
- * },
98
- * });
99
- * ```
100
- */
101
- triggers?: CognitoUserPoolTriggers;
102
- /**
103
- * Configure the Cognito Identity Pool and its authentication providers.
104
- * @default Identity Pool created with the User Pool as the authentication provider
105
- */
106
- identityPoolFederation?: boolean | CognitoIdentityPoolFederationProps;
107
- cdk?: {
108
- /**
109
- * Allows you to override default id for this construct.
110
- */
111
- id?: string;
112
- /**
113
- * This allows you to override the default settings this construct uses internally to create the User Pool.
114
- */
115
- userPool?: UserPoolProps | IUserPool;
116
- /**
117
- * This allows you to override the default settings this construct uses internally to create the User Pool client.
118
- */
119
- userPoolClient?: UserPoolClientOptions | IUserPoolClient;
120
- };
121
- }
122
- /**
123
- * The `Cognito` construct is a higher level CDK construct that makes it easy to configure a Cognito User Pool and Cognito Identity Pool.
124
- *
125
- * @example
126
- *
127
- * ```js
128
- * import { Cognito } from "sst/constructs";
129
- *
130
- * new Cognito(stack, "Cognito");
131
- * ```
132
- */
133
- export declare class Cognito extends Construct implements SSTConstruct {
134
- readonly id: string;
135
- readonly cdk: {
136
- userPool: IUserPool;
137
- userPoolClient: IUserPoolClient;
138
- cfnIdentityPool?: CfnIdentityPool;
139
- cfnIdentityPoolRoleAttachment?: CfnIdentityPoolRoleAttachment;
140
- authRole: Role;
141
- unauthRole: Role;
142
- };
143
- private functions;
144
- private props;
145
- constructor(scope: Construct, id: string, props?: CognitoProps);
146
- /**
147
- * The id of the internally created Cognito User Pool.
148
- */
149
- get userPoolId(): string;
150
- /**
151
- * The ARN of the internally created Cognito User Pool.
152
- */
153
- get userPoolArn(): string;
154
- /**
155
- * The id of the internally created Cognito User Pool client.
156
- */
157
- get userPoolClientId(): string;
158
- /**
159
- * The id of the internally created `IdentityPool` instance.
160
- */
161
- get cognitoIdentityPoolId(): string | undefined;
162
- /**
163
- * Attaches the given list of permissions to the authenticated users. This allows the authenticated users to access other AWS resources.
164
- *
165
- * @example
166
- * ```js
167
- * auth.attachPermissionsForAuthUsers(stack, ["s3"]);
168
- * ```
169
- */
170
- attachPermissionsForAuthUsers(scope: Construct, permissions: Permissions): void;
171
- /**
172
- * @deprecated You are now required to pass in a scope as the first argument.
173
- *
174
- * ```js
175
- * // Change
176
- * auth.attachPermissionsForAuthUsers(["s3"]);
177
- * // to
178
- * auth.attachPermissionsForAuthUsers(auth, ["s3"]);
179
- * ```
180
- */
181
- attachPermissionsForAuthUsers(permissions: Permissions): void;
182
- /**
183
- * Attaches the given list of permissions to the authenticated users. This allows the authenticated users to access other AWS resources.
184
- *
185
- * @example
186
- * ```js
187
- * auth.attachPermissionsForUnauthUsers(stack, ["s3"]);
188
- * ```
189
- */
190
- attachPermissionsForUnauthUsers(scope: Construct, permissions: Permissions): void;
191
- /**
192
- * @deprecated You are now required to pass in a scope as the first argument.
193
- * ```js
194
- * // Change
195
- * auth.attachPermissionsForUnauthUsers(["s3"]);
196
- * // to
197
- * auth.attachPermissionsForUnauthUsers(auth, ["s3"]);
198
- * ```
199
- */
200
- attachPermissionsForUnauthUsers(permissions: Permissions): void;
201
- bindForTriggers(constructs: SSTConstruct[]): void;
202
- bindForTrigger(triggerKey: keyof CognitoUserPoolTriggers, constructs: SSTConstruct[]): void;
203
- attachPermissionsForTriggers(permissions: Permissions): void;
204
- attachPermissionsForTrigger(triggerKey: keyof CognitoUserPoolTriggers, permissions: Permissions): void;
205
- getFunction(triggerKey: keyof CognitoUserPoolTriggers): Fn | undefined;
206
- getConstructMetadata(): {
207
- type: "Cognito";
208
- data: {
209
- identityPoolId: string | undefined;
210
- userPoolId: string;
211
- triggers: {
212
- name: string;
213
- fn: {
214
- node: string;
215
- stack: string;
216
- } | undefined;
217
- }[];
218
- };
219
- };
220
- /** @internal */
221
- getFunctionBinding(): undefined;
222
- private attachPermissionsForUsers;
223
- private createUserPool;
224
- private createUserPoolClient;
225
- private createIdentityPool;
226
- private addTriggers;
227
- private addTrigger;
228
- private createAuthRole;
229
- private createUnauthRole;
230
- private buildSignInAliases;
231
- private cognitoIdentityName;
232
- }
@@ -1,370 +0,0 @@
1
- import { Construct } from "constructs";
2
- import { Stack } from "./Stack.js";
3
- import { getFunctionRef, isCDKConstruct } from "./Construct.js";
4
- import { Function as Fn, } from "./Function.js";
5
- import { attachPermissionsToRole, attachPermissionsToPolicy, } from "./util/permission.js";
6
- import { CfnIdentityPool, CfnIdentityPoolRoleAttachment, UserPool, UserPoolClient, UserPoolOperation, } from "aws-cdk-lib/aws-cognito";
7
- import { Effect, FederatedPrincipal, OpenIdConnectProvider, Policy, PolicyStatement, Role, } from "aws-cdk-lib/aws-iam";
8
- const CognitoUserPoolTriggerOperationMapping = {
9
- createAuthChallenge: UserPoolOperation.CREATE_AUTH_CHALLENGE,
10
- customEmailSender: UserPoolOperation.CUSTOM_EMAIL_SENDER,
11
- customMessage: UserPoolOperation.CUSTOM_MESSAGE,
12
- customSmsSender: UserPoolOperation.CUSTOM_SMS_SENDER,
13
- defineAuthChallenge: UserPoolOperation.DEFINE_AUTH_CHALLENGE,
14
- postAuthentication: UserPoolOperation.POST_AUTHENTICATION,
15
- postConfirmation: UserPoolOperation.POST_CONFIRMATION,
16
- preAuthentication: UserPoolOperation.PRE_AUTHENTICATION,
17
- preSignUp: UserPoolOperation.PRE_SIGN_UP,
18
- preTokenGeneration: UserPoolOperation.PRE_TOKEN_GENERATION,
19
- userMigration: UserPoolOperation.USER_MIGRATION,
20
- verifyAuthChallengeResponse: UserPoolOperation.VERIFY_AUTH_CHALLENGE_RESPONSE,
21
- };
22
- /////////////////////
23
- // Construct
24
- /////////////////////
25
- /**
26
- * The `Cognito` construct is a higher level CDK construct that makes it easy to configure a Cognito User Pool and Cognito Identity Pool.
27
- *
28
- * @example
29
- *
30
- * ```js
31
- * import { Cognito } from "sst/constructs";
32
- *
33
- * new Cognito(stack, "Cognito");
34
- * ```
35
- */
36
- export class Cognito extends Construct {
37
- id;
38
- cdk;
39
- functions = {};
40
- props;
41
- constructor(scope, id, props) {
42
- super(scope, props?.cdk?.id || id);
43
- this.id = id;
44
- this.props = props || {};
45
- this.cdk = {};
46
- this.createUserPool();
47
- this.createUserPoolClient();
48
- this.addTriggers();
49
- this.createIdentityPool();
50
- }
51
- /**
52
- * The id of the internally created Cognito User Pool.
53
- */
54
- get userPoolId() {
55
- return this.cdk.userPool.userPoolId;
56
- }
57
- /**
58
- * The ARN of the internally created Cognito User Pool.
59
- */
60
- get userPoolArn() {
61
- return this.cdk.userPool.userPoolArn;
62
- }
63
- /**
64
- * The id of the internally created Cognito User Pool client.
65
- */
66
- get userPoolClientId() {
67
- return this.cdk.userPoolClient.userPoolClientId;
68
- }
69
- /**
70
- * The id of the internally created `IdentityPool` instance.
71
- */
72
- get cognitoIdentityPoolId() {
73
- return this.cdk.cfnIdentityPool?.ref;
74
- }
75
- attachPermissionsForAuthUsers(arg1, arg2) {
76
- return this.attachPermissionsForUsers(this.cdk.authRole, arg1, arg2);
77
- }
78
- attachPermissionsForUnauthUsers(arg1, arg2) {
79
- return this.attachPermissionsForUsers(this.cdk.unauthRole, arg1, arg2);
80
- }
81
- bindForTriggers(constructs) {
82
- Object.values(this.functions).forEach((fn) => fn.bind(constructs));
83
- }
84
- bindForTrigger(triggerKey, constructs) {
85
- const fn = this.getFunction(triggerKey);
86
- if (!fn) {
87
- throw new Error(`Failed to bind resources. Trigger "${triggerKey}" does not exist.`);
88
- }
89
- fn.bind(constructs);
90
- }
91
- attachPermissionsForTriggers(permissions) {
92
- Object.values(this.functions).forEach((fn) => fn.attachPermissions(permissions));
93
- }
94
- attachPermissionsForTrigger(triggerKey, permissions) {
95
- const fn = this.getFunction(triggerKey);
96
- if (!fn) {
97
- throw new Error(`Failed to attach permissions. Trigger "${triggerKey}" does not exist.`);
98
- }
99
- fn.attachPermissions(permissions);
100
- }
101
- getFunction(triggerKey) {
102
- return this.functions[triggerKey];
103
- }
104
- getConstructMetadata() {
105
- return {
106
- type: "Cognito",
107
- data: {
108
- identityPoolId: this.cdk.cfnIdentityPool?.ref,
109
- userPoolId: this.cdk.userPool.userPoolId,
110
- triggers: Object.entries(this.functions).map(([name, fun]) => ({
111
- name,
112
- fn: getFunctionRef(fun),
113
- })),
114
- },
115
- };
116
- }
117
- /** @internal */
118
- getFunctionBinding() {
119
- return undefined;
120
- }
121
- attachPermissionsForUsers(role, arg1, arg2) {
122
- let scope;
123
- let permissions;
124
- if (arg2) {
125
- scope = arg1;
126
- permissions = arg2;
127
- }
128
- else {
129
- scope = this;
130
- permissions = arg1;
131
- }
132
- // If the scope is within the same stack as the `Auth` construct, attach the permissions
133
- // directly to the auth role.
134
- if (Stack.of(scope) === Stack.of(this)) {
135
- attachPermissionsToRole(role, permissions);
136
- }
137
- // If the scope is within a different stack, we need to create a new role and attach the permissions to that role.
138
- else {
139
- const policyId = role === this.cdk.authRole
140
- ? `Auth-${this.node.id}-${scope.node.id}-AuthRole`
141
- : `Auth-${this.node.id}-${scope.node.id}-UnauthRole`;
142
- let policy = scope.node.tryFindChild(policyId);
143
- if (!policy) {
144
- policy = new Policy(scope, policyId);
145
- }
146
- role.attachInlinePolicy(policy);
147
- attachPermissionsToPolicy(policy, permissions);
148
- }
149
- }
150
- createUserPool() {
151
- const { login, cdk } = this.props;
152
- const app = this.node.root;
153
- if (isCDKConstruct(cdk?.userPool)) {
154
- this.cdk.userPool = cdk?.userPool;
155
- }
156
- else {
157
- const cognitoUserPoolProps = (cdk?.userPool || {});
158
- // validate `lambdaTriggers` is not specified
159
- if (cognitoUserPoolProps.lambdaTriggers) {
160
- throw new Error(`Cannot configure the "cdk.userPool.lambdaTriggers" in the Cognito construct. Use the "triggers" instead.`);
161
- }
162
- // validate `cdk.userPoolClient` is not imported
163
- if (isCDKConstruct(cdk?.userPoolClient)) {
164
- throw new Error(`Cannot import the "userPoolClient" when the "userPool" is not imported.`);
165
- }
166
- this.cdk.userPool = new UserPool(this, "UserPool", {
167
- userPoolName: app.logicalPrefixedName(this.node.id),
168
- selfSignUpEnabled: true,
169
- signInCaseSensitive: false,
170
- signInAliases: this.buildSignInAliases(login),
171
- ...cognitoUserPoolProps,
172
- });
173
- }
174
- }
175
- createUserPoolClient() {
176
- const { cdk } = this.props;
177
- if (isCDKConstruct(cdk?.userPoolClient)) {
178
- this.cdk.userPoolClient = cdk?.userPoolClient;
179
- }
180
- else {
181
- const clientProps = (cdk?.userPoolClient || {});
182
- this.cdk.userPoolClient = new UserPoolClient(this, "UserPoolClient", {
183
- userPool: this.cdk.userPool,
184
- ...clientProps,
185
- });
186
- }
187
- }
188
- createIdentityPool() {
189
- const { identityPoolFederation } = this.props;
190
- if (identityPoolFederation === false) {
191
- return;
192
- }
193
- const id = this.node.id;
194
- const app = this.node.root;
195
- const cognitoIdentityProviders = [];
196
- const openIdConnectProviderArns = [];
197
- const supportedLoginProviders = {};
198
- ////////////////////
199
- // Handle Cognito Identity Providers (ie. User Pool)
200
- ////////////////////
201
- const urlSuffix = Stack.of(this).urlSuffix;
202
- cognitoIdentityProviders.push({
203
- providerName: `cognito-idp.${app.region}.${urlSuffix}/${this.cdk.userPool.userPoolId}`,
204
- clientId: this.cdk.userPoolClient.userPoolClientId,
205
- });
206
- if (typeof identityPoolFederation === "object") {
207
- const { auth0, amazon, apple, facebook, google, twitter } = identityPoolFederation;
208
- ////////////////////
209
- // Handle OpenId Connect Providers (ie. Cognito)
210
- ////////////////////
211
- if (auth0) {
212
- if (!auth0.domain) {
213
- throw new Error(`Auth0Domain: No Auth0 domain defined for the "${id}" Auth`);
214
- }
215
- if (!auth0.clientId) {
216
- throw new Error(`Auth0ClientId: No Auth0 clientId defined for the "${id}" Auth`);
217
- }
218
- const provider = new OpenIdConnectProvider(this, "Auth0Provider", {
219
- url: auth0.domain.startsWith("https://")
220
- ? auth0.domain
221
- : `https://${auth0.domain}`,
222
- clientIds: [auth0.clientId],
223
- });
224
- openIdConnectProviderArns.push(provider.openIdConnectProviderArn);
225
- }
226
- ////////////////////
227
- // Handle Social Identity Providers
228
- ////////////////////
229
- if (amazon) {
230
- if (!amazon.appId) {
231
- throw new Error(`AmazonAppId: No Amazon appId defined for the "${id}" Auth`);
232
- }
233
- supportedLoginProviders["www.amazon.com"] = amazon.appId;
234
- }
235
- if (facebook) {
236
- if (!facebook.appId) {
237
- throw new Error(`FacebookAppId: No Facebook appId defined for the "${id}" Auth`);
238
- }
239
- supportedLoginProviders["graph.facebook.com"] = facebook.appId;
240
- }
241
- if (google) {
242
- if (!google.clientId) {
243
- throw new Error(`GoogleClientId: No Google appId defined for the "${id}" Auth`);
244
- }
245
- supportedLoginProviders["accounts.google.com"] = google.clientId;
246
- }
247
- if (twitter) {
248
- if (!twitter.consumerKey) {
249
- throw new Error(`TwitterConsumerKey: No Twitter consumer key defined for the "${id}" Auth`);
250
- }
251
- if (!twitter.consumerSecret) {
252
- throw new Error(`TwitterConsumerSecret: No Twitter consumer secret defined for the "${id}" Auth`);
253
- }
254
- supportedLoginProviders["api.twitter.com"] = `${twitter.consumerKey};${twitter.consumerSecret}`;
255
- }
256
- if (apple) {
257
- if (!apple.servicesId) {
258
- throw new Error(`AppleServicesId: No Apple servicesId defined for the "${id}" Auth`);
259
- }
260
- supportedLoginProviders["appleid.apple.com"] = apple.servicesId;
261
- }
262
- }
263
- // Create Cognito Identity Pool
264
- const identityPoolProps = typeof identityPoolFederation === "object"
265
- ? identityPoolFederation.cdk?.cfnIdentityPool || {}
266
- : {};
267
- this.cdk.cfnIdentityPool = new CfnIdentityPool(this, "IdentityPool", {
268
- identityPoolName: app.logicalPrefixedName(id),
269
- allowUnauthenticatedIdentities: true,
270
- cognitoIdentityProviders,
271
- supportedLoginProviders,
272
- openIdConnectProviderArns,
273
- ...identityPoolProps,
274
- });
275
- this.cdk.authRole = this.createAuthRole(this.cdk.cfnIdentityPool);
276
- this.cdk.unauthRole = this.createUnauthRole(this.cdk.cfnIdentityPool);
277
- // Attach roles to Identity Pool
278
- this.cdk.cfnIdentityPoolRoleAttachment = new CfnIdentityPoolRoleAttachment(this, "IdentityPoolRoleAttachment", {
279
- identityPoolId: this.cdk.cfnIdentityPool.ref,
280
- roles: {
281
- authenticated: this.cdk.authRole.roleArn,
282
- unauthenticated: this.cdk.unauthRole.roleArn,
283
- },
284
- });
285
- }
286
- addTriggers() {
287
- const { triggers, defaults } = this.props;
288
- if (!triggers || Object.keys(triggers).length === 0) {
289
- return;
290
- }
291
- // Validate cognito user pool is not imported
292
- // ie. imported IUserPool does not have the "addTrigger" function
293
- if (!this.cdk.userPool.addTrigger) {
294
- throw new Error(`Cannot add triggers when the "userPool" is imported.`);
295
- }
296
- Object.entries(triggers).forEach(([triggerKey, triggerValue]) => this.addTrigger(this, triggerKey, triggerValue, defaults?.function));
297
- }
298
- addTrigger(scope, triggerKey, triggerValue, functionProps) {
299
- // Validate cognito user pool is defined
300
- if (!this.cdk.userPool) {
301
- throw new Error(`Triggers cannot be added. No Cognito UserPool defined for the Cognito construct.`);
302
- }
303
- // Create Function
304
- const lambda = Fn.fromDefinition(scope, triggerKey, triggerValue, functionProps, `The "defaults.function" cannot be applied if an instance of a Function construct is passed in. Make sure to define all the triggers using FunctionProps, so the Cognito construct can apply the "defaults.function" to them.`);
305
- // Create trigger
306
- const operation = CognitoUserPoolTriggerOperationMapping[triggerKey];
307
- this.cdk.userPool.addTrigger(operation, lambda);
308
- // Store function
309
- this.functions[triggerKey] = lambda;
310
- return lambda;
311
- }
312
- createAuthRole(identityPool) {
313
- const identityName = this.cognitoIdentityName();
314
- const role = new Role(this, "IdentityPoolAuthRole", {
315
- assumedBy: new FederatedPrincipal(identityName, {
316
- StringEquals: {
317
- [`${identityName}:aud`]: identityPool.ref,
318
- },
319
- "ForAnyValue:StringLike": {
320
- [`${identityName}:amr`]: "authenticated",
321
- },
322
- }, "sts:AssumeRoleWithWebIdentity"),
323
- });
324
- role.addToPolicy(new PolicyStatement({
325
- effect: Effect.ALLOW,
326
- actions: [
327
- "mobileanalytics:PutEvents",
328
- "cognito-sync:*",
329
- "cognito-identity:*",
330
- ],
331
- resources: ["*"],
332
- }));
333
- return role;
334
- }
335
- createUnauthRole(identityPool) {
336
- const identityName = this.cognitoIdentityName();
337
- const role = new Role(this, "IdentityPoolUnauthRole", {
338
- assumedBy: new FederatedPrincipal(identityName, {
339
- StringEquals: {
340
- [`${identityName}:aud`]: identityPool.ref,
341
- },
342
- "ForAnyValue:StringLike": {
343
- [`${identityName}:amr`]: "unauthenticated",
344
- },
345
- }, "sts:AssumeRoleWithWebIdentity"),
346
- });
347
- role.addToPolicy(new PolicyStatement({
348
- effect: Effect.ALLOW,
349
- actions: ["mobileanalytics:PutEvents", "cognito-sync:*"],
350
- resources: ["*"],
351
- }));
352
- return role;
353
- }
354
- buildSignInAliases(login) {
355
- if (!login) {
356
- return;
357
- }
358
- return {
359
- email: login.includes("email"),
360
- phone: login.includes("phone"),
361
- username: login.includes("username"),
362
- preferredUsername: login.includes("preferredUsername"),
363
- };
364
- }
365
- cognitoIdentityName() {
366
- return Stack.of(this).region.startsWith("us-gov-")
367
- ? "cognito-identity-us-gov.amazonaws.com"
368
- : "cognito-identity.amazonaws.com";
369
- }
370
- }
@@ -1,3 +0,0 @@
1
- import { Secret } from "./Secret.js";
2
- import { Parameter } from "./Parameter.js";
3
- export { Secret, Parameter };
@@ -1,3 +0,0 @@
1
- import { Secret } from "./Secret.js";
2
- import { Parameter } from "./Parameter.js";
3
- export { Secret, Parameter };
@@ -1,23 +0,0 @@
1
- import { Construct } from "constructs";
2
- import { Stack as CDKStack } from "aws-cdk-lib/core";
3
- import { FunctionBindingProps } from "./util/functionBinding.js";
4
- export interface SSTConstructMetadata<T extends string = string, D extends Record<string, any> = Record<string, any>, L extends Record<string, any> = Record<string, any>> {
5
- type: T;
6
- data: D;
7
- local?: L;
8
- }
9
- export interface SSTConstruct extends Construct {
10
- id: string;
11
- getConstructMetadata(): SSTConstructMetadata;
12
- getFunctionBinding(): FunctionBindingProps | undefined;
13
- }
14
- export declare function getFunctionRef(fn?: any): {
15
- node: string;
16
- stack: string;
17
- } | undefined;
18
- export declare function isConstruct(construct: any): boolean;
19
- export declare function isStackConstruct(construct: any): construct is CDKStack;
20
- export declare function isSSTConstruct(construct: any): construct is SSTConstruct;
21
- export declare function isSSTDebugStack(construct: any): construct is CDKStack;
22
- export declare function isCDKConstructOf(construct: any, moduleName: string): construct is Construct;
23
- export declare function isCDKConstruct(construct: any): construct is Construct;
@@ -1,46 +0,0 @@
1
- import { Function as Fn } from "aws-cdk-lib/aws-lambda";
2
- import { Stack } from "./Stack.js";
3
- const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
4
- export function getFunctionRef(fn) {
5
- if (!fn)
6
- return undefined;
7
- if (!(fn instanceof Fn))
8
- return undefined;
9
- return {
10
- node: fn.node.addr,
11
- stack: Stack.of(fn).stackName,
12
- };
13
- }
14
- export function isConstruct(construct) {
15
- return isSSTConstruct(construct) || isCDKConstruct(construct);
16
- }
17
- export function isStackConstruct(construct) {
18
- return isCDKConstructOf(construct, "aws-cdk-lib.Stack");
19
- }
20
- export function isSSTConstruct(construct) {
21
- return typeof construct === "object" && "getConstructMetadata" in construct;
22
- }
23
- export function isSSTDebugStack(construct) {
24
- return (isStackConstruct(construct) && construct.constructor.name === "DebugStack");
25
- }
26
- export function isCDKConstructOf(construct, moduleName) {
27
- // We need to check if construct is an CDK construct. To do that:
28
- // - we cannot use the `construct instanceof` check because ie. the PolicyStatement
29
- // instance in the user's app might come from a different npm package version
30
- // - we cannot use the `construct.constructor.name` check because the constructor
31
- // name can be prefixed with a number ie. PolicyStatement2
32
- //
33
- // Therefore we are going to get the constructor's fqn. The constructor for a CDK
34
- // construct looks like:
35
- // [class Bucket2 extends BucketBase] {
36
- // [Symbol(jsii.rtti)]: { fqn: '@aws-cdk/aws-s3.Bucket', version: '1.91.0' }
37
- // }
38
- // We will check against `fqn`.
39
- const fqn = construct?.constructor?.[JSII_RTTI_SYMBOL_1]?.fqn;
40
- return typeof fqn === "string" && fqn === moduleName;
41
- }
42
- export function isCDKConstruct(construct) {
43
- const fqn = construct?.constructor?.[JSII_RTTI_SYMBOL_1]?.fqn;
44
- return (typeof fqn === "string" &&
45
- (fqn.startsWith("@aws-cdk/") || fqn.startsWith("aws-cdk-lib")));
46
- }