@takumi-stack/core 1.0.1 → 1.0.3

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 (799) hide show
  1. package/common/helpers/deep-merge.d.ts +4 -0
  2. package/common/helpers/deep-merge.d.ts.map +1 -0
  3. package/common/helpers/deep-merge.js +58 -0
  4. package/common/helpers/deep-merge.js.map +1 -0
  5. package/common/helpers/index.d.ts +4 -0
  6. package/common/helpers/index.d.ts.map +1 -0
  7. package/common/helpers/index.js +20 -0
  8. package/common/helpers/index.js.map +1 -0
  9. package/common/helpers/string-parser.d.ts +7 -0
  10. package/common/helpers/string-parser.d.ts.map +1 -0
  11. package/common/helpers/string-parser.js +52 -0
  12. package/common/helpers/string-parser.js.map +1 -0
  13. package/common/helpers/types.d.ts +7 -0
  14. package/common/helpers/types.d.ts.map +1 -0
  15. package/common/helpers/types.js.map +1 -0
  16. package/common/index.d.ts +4 -0
  17. package/common/index.d.ts.map +1 -0
  18. package/common/index.js +20 -0
  19. package/common/index.js.map +1 -0
  20. package/common/main/index.d.ts +5 -0
  21. package/common/main/index.d.ts.map +1 -0
  22. package/{.dist/prefab/cdn → common/main}/index.js +4 -4
  23. package/common/main/index.js.map +1 -0
  24. package/{.dist/common/modifier.d.ts → common/main/mods.d.ts} +1 -1
  25. package/common/main/mods.d.ts.map +1 -0
  26. package/{.dist/common/modifier.js → common/main/mods.js} +1 -1
  27. package/{.dist/common/modifier.js.map → common/main/mods.js.map} +1 -1
  28. package/common/main/prefab.d.ts +21 -0
  29. package/common/main/prefab.d.ts.map +1 -0
  30. package/common/main/prefab.js +29 -0
  31. package/common/main/prefab.js.map +1 -0
  32. package/common/main/takumi-app.d.ts +18 -0
  33. package/common/main/takumi-app.d.ts.map +1 -0
  34. package/{.dist/common/coordinator.js → common/main/takumi-app.js} +31 -31
  35. package/common/main/takumi-app.js.map +1 -0
  36. package/common/main/takumi-stack.d.ts +14 -0
  37. package/common/main/takumi-stack.d.ts.map +1 -0
  38. package/common/main/takumi-stack.js +30 -0
  39. package/common/main/takumi-stack.js.map +1 -0
  40. package/common/props/default-config.d.ts +3 -0
  41. package/common/props/default-config.d.ts.map +1 -0
  42. package/common/props/default-config.js +21 -0
  43. package/common/props/default-config.js.map +1 -0
  44. package/common/props/global-config.d.ts +40 -0
  45. package/common/props/global-config.d.ts.map +1 -0
  46. package/{.dist/common/synth/props-types.js → common/props/global-config.js} +1 -1
  47. package/common/props/global-config.js.map +1 -0
  48. package/common/props/global-props.d.ts +12 -0
  49. package/common/props/global-props.d.ts.map +1 -0
  50. package/common/props/global-props.js +41 -0
  51. package/common/props/global-props.js.map +1 -0
  52. package/common/props/index.d.ts +6 -0
  53. package/common/props/index.d.ts.map +1 -0
  54. package/{.dist/common → common/props}/index.js +5 -5
  55. package/common/props/index.js.map +1 -0
  56. package/common/props/naming.d.ts +38 -0
  57. package/common/props/naming.d.ts.map +1 -0
  58. package/common/props/naming.js +88 -0
  59. package/common/props/naming.js.map +1 -0
  60. package/common/props/prefab-props.d.ts +14 -0
  61. package/common/props/prefab-props.d.ts.map +1 -0
  62. package/common/props/prefab-props.js +37 -0
  63. package/common/props/prefab-props.js.map +1 -0
  64. package/common/props/stack-props.d.ts +9 -0
  65. package/common/props/stack-props.d.ts.map +1 -0
  66. package/common/props/stack-props.js +16 -0
  67. package/common/props/stack-props.js.map +1 -0
  68. package/{index.ts → index.d.ts} +1 -1
  69. package/{.dist/index.d.ts.map → index.d.ts.map} +1 -1
  70. package/{.dist/index.js → index.js} +1 -1
  71. package/{.dist/index.js.map → index.js.map} +1 -1
  72. package/package.json +3 -5
  73. package/prefab/auth/cognito-user-pool/index.d.ts +43 -0
  74. package/prefab/auth/cognito-user-pool/index.d.ts.map +1 -0
  75. package/{.dist/prefab/auth/cognito-pool → prefab/auth/cognito-user-pool}/index.js +94 -102
  76. package/prefab/auth/cognito-user-pool/index.js.map +1 -0
  77. package/prefab/auth/index.d.ts +2 -0
  78. package/prefab/auth/index.d.ts.map +1 -0
  79. package/{.dist/prefab → prefab}/auth/index.js +1 -1
  80. package/{.dist/prefab → prefab}/auth/index.js.map +1 -1
  81. package/prefab/cdn/api/index.d.ts +54 -0
  82. package/prefab/cdn/api/index.d.ts.map +1 -0
  83. package/{.dist/prefab/cdn/cdn-api → prefab/cdn/api}/index.js +75 -49
  84. package/prefab/cdn/api/index.js.map +1 -0
  85. package/prefab/cdn/assets/index.d.ts +26 -0
  86. package/prefab/cdn/assets/index.d.ts.map +1 -0
  87. package/prefab/cdn/assets/index.js +110 -0
  88. package/prefab/cdn/assets/index.js.map +1 -0
  89. package/prefab/cdn/index.d.ts +4 -0
  90. package/prefab/cdn/index.d.ts.map +1 -0
  91. package/{.dist/prefab/compute/function/api-function → prefab/cdn}/index.js +3 -2
  92. package/{.dist/prefab → prefab}/cdn/index.js.map +1 -1
  93. package/prefab/cdn/web/index.d.ts +31 -0
  94. package/prefab/cdn/web/index.d.ts.map +1 -0
  95. package/prefab/cdn/web/index.js +149 -0
  96. package/prefab/cdn/web/index.js.map +1 -0
  97. package/prefab/compute/ecs/cluster.d.ts +19 -0
  98. package/prefab/compute/ecs/cluster.d.ts.map +1 -0
  99. package/prefab/compute/ecs/cluster.js +21 -0
  100. package/prefab/compute/ecs/cluster.js.map +1 -0
  101. package/prefab/compute/ecs/index.d.ts.map +1 -0
  102. package/prefab/compute/ecs/index.js.map +1 -0
  103. package/prefab/compute/ecs/service.d.ts +44 -0
  104. package/prefab/compute/ecs/service.d.ts.map +1 -0
  105. package/prefab/compute/ecs/service.js +98 -0
  106. package/prefab/compute/ecs/service.js.map +1 -0
  107. package/prefab/compute/function/api/index.d.ts +21 -0
  108. package/prefab/compute/function/api/index.d.ts.map +1 -0
  109. package/prefab/compute/function/api/index.js +40 -0
  110. package/prefab/compute/function/api/index.js.map +1 -0
  111. package/prefab/compute/function/base/index.d.ts +34 -0
  112. package/prefab/compute/function/base/index.d.ts.map +1 -0
  113. package/prefab/compute/function/base/index.js +76 -0
  114. package/prefab/compute/function/base/index.js.map +1 -0
  115. package/prefab/compute/function/cognito/index.d.ts +20 -0
  116. package/prefab/compute/function/cognito/index.d.ts.map +1 -0
  117. package/prefab/compute/function/cognito/index.js +35 -0
  118. package/prefab/compute/function/cognito/index.js.map +1 -0
  119. package/prefab/compute/function/cron/index.d.ts +20 -0
  120. package/prefab/compute/function/cron/index.d.ts.map +1 -0
  121. package/prefab/compute/function/cron/index.js +30 -0
  122. package/prefab/compute/function/cron/index.js.map +1 -0
  123. package/prefab/compute/function/event/index.d.ts +20 -0
  124. package/prefab/compute/function/event/index.d.ts.map +1 -0
  125. package/prefab/compute/function/event/index.js +38 -0
  126. package/prefab/compute/function/event/index.js.map +1 -0
  127. package/prefab/compute/function/index.d.ts +9 -0
  128. package/prefab/compute/function/index.d.ts.map +1 -0
  129. package/prefab/compute/function/index.js +25 -0
  130. package/{.dist/prefab → prefab}/compute/function/index.js.map +1 -1
  131. package/prefab/compute/function/queue/index.d.ts +19 -0
  132. package/prefab/compute/function/queue/index.d.ts.map +1 -0
  133. package/prefab/compute/function/queue/index.js +32 -0
  134. package/prefab/compute/function/queue/index.js.map +1 -0
  135. package/prefab/compute/function/scheduled/index.d.ts +21 -0
  136. package/prefab/compute/function/scheduled/index.d.ts.map +1 -0
  137. package/prefab/compute/function/scheduled/index.js +56 -0
  138. package/prefab/compute/function/scheduled/index.js.map +1 -0
  139. package/prefab/compute/function/topic/index.d.ts +20 -0
  140. package/prefab/compute/function/topic/index.d.ts.map +1 -0
  141. package/prefab/compute/function/topic/index.js +30 -0
  142. package/prefab/compute/function/topic/index.js.map +1 -0
  143. package/prefab/compute/index.d.ts +2 -0
  144. package/prefab/compute/index.d.ts.map +1 -0
  145. package/{.dist/prefab → prefab}/compute/index.js +1 -1
  146. package/{.dist/prefab → prefab}/compute/index.js.map +1 -1
  147. package/prefab/database/dynamo/index.d.ts +22 -0
  148. package/prefab/database/dynamo/index.d.ts.map +1 -0
  149. package/prefab/database/dynamo/index.js +58 -0
  150. package/prefab/database/dynamo/index.js.map +1 -0
  151. package/prefab/database/rds/index.d.ts +82 -0
  152. package/prefab/database/rds/index.d.ts.map +1 -0
  153. package/prefab/database/rds/index.js +270 -0
  154. package/prefab/database/rds/index.js.map +1 -0
  155. package/prefab/database/timestream/timestream-database.d.ts +16 -0
  156. package/prefab/database/timestream/timestream-database.d.ts.map +1 -0
  157. package/{.dist/prefab → prefab}/database/timestream/timestream-database.js +9 -7
  158. package/prefab/database/timestream/timestream-database.js.map +1 -0
  159. package/prefab/database/timestream/timestream-table.d.ts +23 -0
  160. package/prefab/database/timestream/timestream-table.d.ts.map +1 -0
  161. package/{.dist/prefab → prefab}/database/timestream/timestream-table.js +22 -22
  162. package/prefab/database/timestream/timestream-table.js.map +1 -0
  163. package/prefab/gateway/alb-public/index.d.ts +43 -0
  164. package/prefab/gateway/alb-public/index.d.ts.map +1 -0
  165. package/prefab/gateway/alb-public/index.js +123 -0
  166. package/prefab/gateway/alb-public/index.js.map +1 -0
  167. package/prefab/gateway/api-gateway/api-http.d.ts +38 -0
  168. package/prefab/gateway/api-gateway/api-http.d.ts.map +1 -0
  169. package/prefab/gateway/api-gateway/api-http.js +95 -0
  170. package/prefab/gateway/api-gateway/api-http.js.map +1 -0
  171. package/prefab/gateway/api-gateway/api-rest.d.ts +45 -0
  172. package/prefab/gateway/api-gateway/api-rest.d.ts.map +1 -0
  173. package/prefab/gateway/api-gateway/api-rest.js +113 -0
  174. package/prefab/gateway/api-gateway/api-rest.js.map +1 -0
  175. package/prefab/gateway/{index.ts → index.d.ts} +1 -1
  176. package/{.dist/prefab → prefab}/gateway/index.d.ts.map +1 -1
  177. package/{.dist/prefab → prefab}/gateway/index.js +1 -1
  178. package/{.dist/prefab → prefab}/gateway/index.js.map +1 -1
  179. package/{.dist/prefab → prefab}/index.d.ts +2 -1
  180. package/prefab/index.d.ts.map +1 -0
  181. package/{.dist/prefab → prefab}/index.js +2 -1
  182. package/prefab/index.js.map +1 -0
  183. package/prefab/integration/event-bus/index.d.ts +24 -0
  184. package/prefab/integration/event-bus/index.d.ts.map +1 -0
  185. package/prefab/integration/event-bus/index.js +53 -0
  186. package/prefab/integration/event-bus/index.js.map +1 -0
  187. package/prefab/integration/queue/index.d.ts +37 -0
  188. package/prefab/integration/queue/index.d.ts.map +1 -0
  189. package/prefab/integration/queue/index.js +73 -0
  190. package/prefab/integration/queue/index.js.map +1 -0
  191. package/prefab/integration/topic/index.d.ts +26 -0
  192. package/prefab/integration/topic/index.d.ts.map +1 -0
  193. package/prefab/integration/topic/index.js +42 -0
  194. package/prefab/integration/topic/index.js.map +1 -0
  195. package/prefab/networking/certificate/index.d.ts +19 -0
  196. package/prefab/networking/certificate/index.d.ts.map +1 -0
  197. package/prefab/networking/certificate/index.js +39 -0
  198. package/prefab/networking/certificate/index.js.map +1 -0
  199. package/prefab/networking/hosted-zone/index.d.ts +21 -0
  200. package/prefab/networking/hosted-zone/index.d.ts.map +1 -0
  201. package/prefab/networking/hosted-zone/index.js +38 -0
  202. package/prefab/networking/hosted-zone/index.js.map +1 -0
  203. package/prefab/networking/index.d.ts +5 -0
  204. package/{.dist/prefab → prefab}/networking/index.d.ts.map +1 -1
  205. package/{.dist/prefab → prefab}/networking/index.js +2 -3
  206. package/{.dist/prefab → prefab}/networking/index.js.map +1 -1
  207. package/prefab/networking/vpc/index.d.ts +17 -0
  208. package/prefab/networking/vpc/index.d.ts.map +1 -0
  209. package/prefab/networking/vpc/index.js +20 -0
  210. package/prefab/networking/vpc/index.js.map +1 -0
  211. package/prefab/networking/waf/index.d.ts +17 -0
  212. package/prefab/networking/waf/index.d.ts.map +1 -0
  213. package/{.dist/prefab → prefab}/networking/waf/index.js +11 -11
  214. package/prefab/networking/waf/index.js.map +1 -0
  215. package/prefab/secrets/index.d.ts +3 -0
  216. package/prefab/secrets/index.d.ts.map +1 -0
  217. package/prefab/secrets/index.js +19 -0
  218. package/prefab/secrets/index.js.map +1 -0
  219. package/prefab/secrets/sm-secret/index.d.ts +22 -0
  220. package/prefab/secrets/sm-secret/index.d.ts.map +1 -0
  221. package/prefab/secrets/sm-secret/index.js +39 -0
  222. package/prefab/secrets/sm-secret/index.js.map +1 -0
  223. package/prefab/secrets/ssm-parameter/index.d.ts +23 -0
  224. package/prefab/secrets/ssm-parameter/index.d.ts.map +1 -0
  225. package/prefab/secrets/ssm-parameter/index.js +43 -0
  226. package/prefab/secrets/ssm-parameter/index.js.map +1 -0
  227. package/prefab/ssr/index.d.ts +2 -0
  228. package/prefab/ssr/index.d.ts.map +1 -0
  229. package/{.dist/prefab/analytics → prefab/ssr}/index.js +1 -1
  230. package/prefab/ssr/index.js.map +1 -0
  231. package/prefab/ssr/next/index.d.ts +28 -0
  232. package/prefab/ssr/next/index.d.ts.map +1 -0
  233. package/prefab/ssr/next/index.js +77 -0
  234. package/prefab/ssr/next/index.js.map +1 -0
  235. package/prefab/storage/bucket/index.d.ts +42 -0
  236. package/prefab/storage/bucket/index.d.ts.map +1 -0
  237. package/prefab/storage/bucket/index.js +64 -0
  238. package/prefab/storage/bucket/index.js.map +1 -0
  239. package/{.dist/prefab → prefab}/utils/deploy-pipeline/catalog/integrations/slack.d.ts +4 -4
  240. package/prefab/utils/deploy-pipeline/catalog/integrations/slack.d.ts.map +1 -0
  241. package/prefab/utils/deploy-pipeline/index.d.ts +2 -0
  242. package/prefab/utils/deploy-pipeline/index.d.ts.map +1 -0
  243. package/prefab/utils/deploy-pipeline/index.js +163 -0
  244. package/prefab/utils/deploy-pipeline/index.js.map +1 -0
  245. package/{.dist/prefab → prefab}/utils/deploy-pipeline/platform/get-slack-payload.d.ts.map +1 -1
  246. package/prefab/utils/deploy-pipeline/platform/get-slack-payload.js.map +1 -0
  247. package/{.dist/prefab → prefab}/utils/deploy-pipeline/platform/send-to-slack.d.ts.map +1 -1
  248. package/prefab/utils/deploy-pipeline/platform/send-to-slack.js.map +1 -0
  249. package/prefab/utils/exports.d.ts +4 -0
  250. package/prefab/utils/exports.d.ts.map +1 -0
  251. package/prefab/utils/exports.js +26 -0
  252. package/prefab/utils/exports.js.map +1 -0
  253. package/prefab/utils/frontend-builder/index.d.ts +21 -0
  254. package/prefab/utils/frontend-builder/index.d.ts.map +1 -0
  255. package/prefab/utils/frontend-builder/index.js +54 -0
  256. package/prefab/utils/frontend-builder/index.js.map +1 -0
  257. package/prefab/utils/index.d.ts +5 -0
  258. package/prefab/utils/index.d.ts.map +1 -0
  259. package/{.dist/prefab → prefab}/utils/index.js +2 -2
  260. package/{.dist/prefab → prefab}/utils/index.js.map +1 -1
  261. package/prefab/utils/ses/index.d.ts +21 -0
  262. package/prefab/utils/ses/index.d.ts.map +1 -0
  263. package/{.dist/prefab → prefab}/utils/ses/index.js +33 -53
  264. package/prefab/utils/ses/index.js.map +1 -0
  265. package/tsconfig.tsbuildinfo +1 -0
  266. package/.dist/common/coordinator.d.ts +0 -18
  267. package/.dist/common/coordinator.d.ts.map +0 -1
  268. package/.dist/common/coordinator.js.map +0 -1
  269. package/.dist/common/index.d.ts +0 -6
  270. package/.dist/common/index.d.ts.map +0 -1
  271. package/.dist/common/index.js.map +0 -1
  272. package/.dist/common/modifier.d.ts.map +0 -1
  273. package/.dist/common/naming/get-deploy-config.d.ts +0 -5
  274. package/.dist/common/naming/get-deploy-config.d.ts.map +0 -1
  275. package/.dist/common/naming/get-deploy-config.js +0 -8
  276. package/.dist/common/naming/get-deploy-config.js.map +0 -1
  277. package/.dist/common/naming/get-domain.d.ts +0 -8
  278. package/.dist/common/naming/get-domain.d.ts.map +0 -1
  279. package/.dist/common/naming/get-domain.js +0 -13
  280. package/.dist/common/naming/get-domain.js.map +0 -1
  281. package/.dist/common/naming/get-function-entry.d.ts +0 -3
  282. package/.dist/common/naming/get-function-entry.d.ts.map +0 -1
  283. package/.dist/common/naming/get-function-entry.js +0 -14
  284. package/.dist/common/naming/get-function-entry.js.map +0 -1
  285. package/.dist/common/naming/get-logical-name.d.ts +0 -2
  286. package/.dist/common/naming/get-logical-name.d.ts.map +0 -1
  287. package/.dist/common/naming/get-logical-name.js +0 -8
  288. package/.dist/common/naming/get-logical-name.js.map +0 -1
  289. package/.dist/common/naming/get-resource-name.d.ts +0 -26
  290. package/.dist/common/naming/get-resource-name.d.ts.map +0 -1
  291. package/.dist/common/naming/get-resource-name.js +0 -38
  292. package/.dist/common/naming/get-resource-name.js.map +0 -1
  293. package/.dist/common/naming/get-service-name.d.ts +0 -9
  294. package/.dist/common/naming/get-service-name.d.ts.map +0 -1
  295. package/.dist/common/naming/get-service-name.js +0 -10
  296. package/.dist/common/naming/get-service-name.js.map +0 -1
  297. package/.dist/common/naming/index.d.ts +0 -8
  298. package/.dist/common/naming/index.d.ts.map +0 -1
  299. package/.dist/common/naming/index.js +0 -24
  300. package/.dist/common/naming/index.js.map +0 -1
  301. package/.dist/common/naming/string-parser.d.ts +0 -4
  302. package/.dist/common/naming/string-parser.d.ts.map +0 -1
  303. package/.dist/common/naming/string-parser.js +0 -22
  304. package/.dist/common/naming/string-parser.js.map +0 -1
  305. package/.dist/common/service.d.ts +0 -21
  306. package/.dist/common/service.d.ts.map +0 -1
  307. package/.dist/common/service.js +0 -28
  308. package/.dist/common/service.js.map +0 -1
  309. package/.dist/common/synth/account-mapping.d.ts +0 -2
  310. package/.dist/common/synth/account-mapping.d.ts.map +0 -1
  311. package/.dist/common/synth/account-mapping.js +0 -18
  312. package/.dist/common/synth/account-mapping.js.map +0 -1
  313. package/.dist/common/synth/assume-role.d.ts +0 -17
  314. package/.dist/common/synth/assume-role.d.ts.map +0 -1
  315. package/.dist/common/synth/assume-role.js +0 -25
  316. package/.dist/common/synth/assume-role.js.map +0 -1
  317. package/.dist/common/synth/get-global-props.d.ts +0 -4
  318. package/.dist/common/synth/get-global-props.d.ts.map +0 -1
  319. package/.dist/common/synth/get-global-props.js +0 -34
  320. package/.dist/common/synth/get-global-props.js.map +0 -1
  321. package/.dist/common/synth/get-service-props.d.ts +0 -3
  322. package/.dist/common/synth/get-service-props.d.ts.map +0 -1
  323. package/.dist/common/synth/get-service-props.js +0 -12
  324. package/.dist/common/synth/get-service-props.js.map +0 -1
  325. package/.dist/common/synth/index.d.ts +0 -8
  326. package/.dist/common/synth/index.d.ts.map +0 -1
  327. package/.dist/common/synth/index.js +0 -24
  328. package/.dist/common/synth/index.js.map +0 -1
  329. package/.dist/common/synth/pre-script.d.ts +0 -21
  330. package/.dist/common/synth/pre-script.d.ts.map +0 -1
  331. package/.dist/common/synth/pre-script.js +0 -74
  332. package/.dist/common/synth/pre-script.js.map +0 -1
  333. package/.dist/common/synth/props-types.d.ts +0 -41
  334. package/.dist/common/synth/props-types.d.ts.map +0 -1
  335. package/.dist/common/synth/props-types.js.map +0 -1
  336. package/.dist/common/synth/synth-error.d.ts +0 -7
  337. package/.dist/common/synth/synth-error.d.ts.map +0 -1
  338. package/.dist/common/synth/synth-error.js +0 -17
  339. package/.dist/common/synth/synth-error.js.map +0 -1
  340. package/.dist/index.d.ts +0 -4
  341. package/.dist/package.json +0 -43
  342. package/.dist/prefab/analytics/events/handlers/ingestion-transform/handler.d.ts +0 -3
  343. package/.dist/prefab/analytics/events/handlers/ingestion-transform/handler.d.ts.map +0 -1
  344. package/.dist/prefab/analytics/events/handlers/ingestion-transform/handler.js +0 -34
  345. package/.dist/prefab/analytics/events/handlers/ingestion-transform/handler.js.map +0 -1
  346. package/.dist/prefab/analytics/events/index.d.ts +0 -28
  347. package/.dist/prefab/analytics/events/index.d.ts.map +0 -1
  348. package/.dist/prefab/analytics/events/index.js +0 -163
  349. package/.dist/prefab/analytics/events/index.js.map +0 -1
  350. package/.dist/prefab/analytics/index.d.ts +0 -2
  351. package/.dist/prefab/analytics/index.d.ts.map +0 -1
  352. package/.dist/prefab/analytics/index.js.map +0 -1
  353. package/.dist/prefab/auth/cognito-pool/index.d.ts +0 -57
  354. package/.dist/prefab/auth/cognito-pool/index.d.ts.map +0 -1
  355. package/.dist/prefab/auth/cognito-pool/index.js.map +0 -1
  356. package/.dist/prefab/auth/index.d.ts +0 -2
  357. package/.dist/prefab/auth/index.d.ts.map +0 -1
  358. package/.dist/prefab/cdn/cdn-api/index.d.ts +0 -34
  359. package/.dist/prefab/cdn/cdn-api/index.d.ts.map +0 -1
  360. package/.dist/prefab/cdn/cdn-api/index.js.map +0 -1
  361. package/.dist/prefab/cdn/cdn-asset/index.d.ts +0 -24
  362. package/.dist/prefab/cdn/cdn-asset/index.d.ts.map +0 -1
  363. package/.dist/prefab/cdn/cdn-asset/index.js +0 -96
  364. package/.dist/prefab/cdn/cdn-asset/index.js.map +0 -1
  365. package/.dist/prefab/cdn/cdn-spa/index.d.ts +0 -24
  366. package/.dist/prefab/cdn/cdn-spa/index.d.ts.map +0 -1
  367. package/.dist/prefab/cdn/cdn-spa/index.js +0 -138
  368. package/.dist/prefab/cdn/cdn-spa/index.js.map +0 -1
  369. package/.dist/prefab/cdn/cdn-ssr/index.d.ts +0 -33
  370. package/.dist/prefab/cdn/cdn-ssr/index.d.ts.map +0 -1
  371. package/.dist/prefab/cdn/cdn-ssr/index.js +0 -271
  372. package/.dist/prefab/cdn/cdn-ssr/index.js.map +0 -1
  373. package/.dist/prefab/cdn/index.d.ts +0 -5
  374. package/.dist/prefab/cdn/index.d.ts.map +0 -1
  375. package/.dist/prefab/compute/fargate/cluster.d.ts +0 -13
  376. package/.dist/prefab/compute/fargate/cluster.d.ts.map +0 -1
  377. package/.dist/prefab/compute/fargate/cluster.js +0 -42
  378. package/.dist/prefab/compute/fargate/cluster.js.map +0 -1
  379. package/.dist/prefab/compute/fargate/index.d.ts.map +0 -1
  380. package/.dist/prefab/compute/fargate/index.js.map +0 -1
  381. package/.dist/prefab/compute/fargate/service.d.ts +0 -45
  382. package/.dist/prefab/compute/fargate/service.d.ts.map +0 -1
  383. package/.dist/prefab/compute/fargate/service.js +0 -109
  384. package/.dist/prefab/compute/fargate/service.js.map +0 -1
  385. package/.dist/prefab/compute/function/api-function/api-aggregate.d.ts +0 -31
  386. package/.dist/prefab/compute/function/api-function/api-aggregate.d.ts.map +0 -1
  387. package/.dist/prefab/compute/function/api-function/api-aggregate.js +0 -53
  388. package/.dist/prefab/compute/function/api-function/api-aggregate.js.map +0 -1
  389. package/.dist/prefab/compute/function/api-function/api-function.d.ts +0 -22
  390. package/.dist/prefab/compute/function/api-function/api-function.d.ts.map +0 -1
  391. package/.dist/prefab/compute/function/api-function/api-function.js +0 -44
  392. package/.dist/prefab/compute/function/api-function/api-function.js.map +0 -1
  393. package/.dist/prefab/compute/function/api-function/index.d.ts +0 -3
  394. package/.dist/prefab/compute/function/api-function/index.d.ts.map +0 -1
  395. package/.dist/prefab/compute/function/api-function/index.js.map +0 -1
  396. package/.dist/prefab/compute/function/base-function/index.d.ts +0 -33
  397. package/.dist/prefab/compute/function/base-function/index.d.ts.map +0 -1
  398. package/.dist/prefab/compute/function/base-function/index.js +0 -70
  399. package/.dist/prefab/compute/function/base-function/index.js.map +0 -1
  400. package/.dist/prefab/compute/function/cognito-function/cognito-aggregate.d.ts +0 -15
  401. package/.dist/prefab/compute/function/cognito-function/cognito-aggregate.d.ts.map +0 -1
  402. package/.dist/prefab/compute/function/cognito-function/cognito-aggregate.js +0 -22
  403. package/.dist/prefab/compute/function/cognito-function/cognito-aggregate.js.map +0 -1
  404. package/.dist/prefab/compute/function/cognito-function/cognito-function.d.ts +0 -17
  405. package/.dist/prefab/compute/function/cognito-function/cognito-function.d.ts.map +0 -1
  406. package/.dist/prefab/compute/function/cognito-function/cognito-function.js +0 -24
  407. package/.dist/prefab/compute/function/cognito-function/cognito-function.js.map +0 -1
  408. package/.dist/prefab/compute/function/cognito-function/index.d.ts +0 -3
  409. package/.dist/prefab/compute/function/cognito-function/index.d.ts.map +0 -1
  410. package/.dist/prefab/compute/function/cognito-function/index.js +0 -19
  411. package/.dist/prefab/compute/function/cognito-function/index.js.map +0 -1
  412. package/.dist/prefab/compute/function/cron-function/cron-aggregate.d.ts +0 -14
  413. package/.dist/prefab/compute/function/cron-function/cron-aggregate.d.ts.map +0 -1
  414. package/.dist/prefab/compute/function/cron-function/cron-aggregate.js +0 -22
  415. package/.dist/prefab/compute/function/cron-function/cron-aggregate.js.map +0 -1
  416. package/.dist/prefab/compute/function/cron-function/cron-function.d.ts +0 -15
  417. package/.dist/prefab/compute/function/cron-function/cron-function.d.ts.map +0 -1
  418. package/.dist/prefab/compute/function/cron-function/cron-function.js +0 -24
  419. package/.dist/prefab/compute/function/cron-function/cron-function.js.map +0 -1
  420. package/.dist/prefab/compute/function/cron-function/index.d.ts +0 -3
  421. package/.dist/prefab/compute/function/cron-function/index.d.ts.map +0 -1
  422. package/.dist/prefab/compute/function/cron-function/index.js +0 -19
  423. package/.dist/prefab/compute/function/cron-function/index.js.map +0 -1
  424. package/.dist/prefab/compute/function/event-function/EventAggregateParams.d.ts +0 -9
  425. package/.dist/prefab/compute/function/event-function/EventAggregateParams.d.ts.map +0 -1
  426. package/.dist/prefab/compute/function/event-function/EventAggregateParams.js +0 -3
  427. package/.dist/prefab/compute/function/event-function/EventAggregateParams.js.map +0 -1
  428. package/.dist/prefab/compute/function/event-function/event-aggregate.d.ts +0 -16
  429. package/.dist/prefab/compute/function/event-function/event-aggregate.d.ts.map +0 -1
  430. package/.dist/prefab/compute/function/event-function/event-aggregate.js +0 -25
  431. package/.dist/prefab/compute/function/event-function/event-aggregate.js.map +0 -1
  432. package/.dist/prefab/compute/function/event-function/event-function.d.ts +0 -14
  433. package/.dist/prefab/compute/function/event-function/event-function.d.ts.map +0 -1
  434. package/.dist/prefab/compute/function/event-function/event-function.js +0 -33
  435. package/.dist/prefab/compute/function/event-function/event-function.js.map +0 -1
  436. package/.dist/prefab/compute/function/event-function/index.d.ts +0 -3
  437. package/.dist/prefab/compute/function/event-function/index.d.ts.map +0 -1
  438. package/.dist/prefab/compute/function/event-function/index.js +0 -19
  439. package/.dist/prefab/compute/function/event-function/index.js.map +0 -1
  440. package/.dist/prefab/compute/function/index.d.ts +0 -8
  441. package/.dist/prefab/compute/function/index.d.ts.map +0 -1
  442. package/.dist/prefab/compute/function/index.js +0 -24
  443. package/.dist/prefab/compute/function/queue-function/index.d.ts +0 -22
  444. package/.dist/prefab/compute/function/queue-function/index.d.ts.map +0 -1
  445. package/.dist/prefab/compute/function/queue-function/index.js +0 -46
  446. package/.dist/prefab/compute/function/queue-function/index.js.map +0 -1
  447. package/.dist/prefab/compute/function/topic-function/index.d.ts +0 -20
  448. package/.dist/prefab/compute/function/topic-function/index.d.ts.map +0 -1
  449. package/.dist/prefab/compute/function/topic-function/index.js +0 -23
  450. package/.dist/prefab/compute/function/topic-function/index.js.map +0 -1
  451. package/.dist/prefab/compute/index.d.ts +0 -3
  452. package/.dist/prefab/compute/index.d.ts.map +0 -1
  453. package/.dist/prefab/database/dynamo/index.d.ts +0 -13
  454. package/.dist/prefab/database/dynamo/index.d.ts.map +0 -1
  455. package/.dist/prefab/database/dynamo/index.js +0 -106
  456. package/.dist/prefab/database/dynamo/index.js.map +0 -1
  457. package/.dist/prefab/database/rds/index.d.ts +0 -51
  458. package/.dist/prefab/database/rds/index.d.ts.map +0 -1
  459. package/.dist/prefab/database/rds/index.js +0 -223
  460. package/.dist/prefab/database/rds/index.js.map +0 -1
  461. package/.dist/prefab/database/timestream/timestream-database.d.ts +0 -11
  462. package/.dist/prefab/database/timestream/timestream-database.d.ts.map +0 -1
  463. package/.dist/prefab/database/timestream/timestream-database.js.map +0 -1
  464. package/.dist/prefab/database/timestream/timestream-table.d.ts +0 -21
  465. package/.dist/prefab/database/timestream/timestream-table.d.ts.map +0 -1
  466. package/.dist/prefab/database/timestream/timestream-table.js.map +0 -1
  467. package/.dist/prefab/gateway/alb-public/index.d.ts +0 -41
  468. package/.dist/prefab/gateway/alb-public/index.d.ts.map +0 -1
  469. package/.dist/prefab/gateway/alb-public/index.js +0 -116
  470. package/.dist/prefab/gateway/alb-public/index.js.map +0 -1
  471. package/.dist/prefab/gateway/api-gateway/api-http.d.ts +0 -27
  472. package/.dist/prefab/gateway/api-gateway/api-http.d.ts.map +0 -1
  473. package/.dist/prefab/gateway/api-gateway/api-http.js +0 -48
  474. package/.dist/prefab/gateway/api-gateway/api-http.js.map +0 -1
  475. package/.dist/prefab/gateway/api-gateway/api-rest.d.ts +0 -23
  476. package/.dist/prefab/gateway/api-gateway/api-rest.d.ts.map +0 -1
  477. package/.dist/prefab/gateway/api-gateway/api-rest.js +0 -90
  478. package/.dist/prefab/gateway/api-gateway/api-rest.js.map +0 -1
  479. package/.dist/prefab/gateway/app-sync/index.d.ts +0 -31
  480. package/.dist/prefab/gateway/app-sync/index.d.ts.map +0 -1
  481. package/.dist/prefab/gateway/app-sync/index.js +0 -114
  482. package/.dist/prefab/gateway/app-sync/index.js.map +0 -1
  483. package/.dist/prefab/gateway/app-sync/resolver-aggregate.d.ts +0 -33
  484. package/.dist/prefab/gateway/app-sync/resolver-aggregate.d.ts.map +0 -1
  485. package/.dist/prefab/gateway/app-sync/resolver-aggregate.js +0 -125
  486. package/.dist/prefab/gateway/app-sync/resolver-aggregate.js.map +0 -1
  487. package/.dist/prefab/gateway/app-sync/types.d.ts +0 -29
  488. package/.dist/prefab/gateway/app-sync/types.d.ts.map +0 -1
  489. package/.dist/prefab/gateway/app-sync/types.js.map +0 -1
  490. package/.dist/prefab/gateway/index.d.ts +0 -4
  491. package/.dist/prefab/index.d.ts.map +0 -1
  492. package/.dist/prefab/index.js.map +0 -1
  493. package/.dist/prefab/integration/event-bus/index.d.ts +0 -18
  494. package/.dist/prefab/integration/event-bus/index.d.ts.map +0 -1
  495. package/.dist/prefab/integration/event-bus/index.js +0 -46
  496. package/.dist/prefab/integration/event-bus/index.js.map +0 -1
  497. package/.dist/prefab/integration/queue/index.d.ts +0 -29
  498. package/.dist/prefab/integration/queue/index.d.ts.map +0 -1
  499. package/.dist/prefab/integration/queue/index.js +0 -70
  500. package/.dist/prefab/integration/queue/index.js.map +0 -1
  501. package/.dist/prefab/integration/topic/index.d.ts +0 -19
  502. package/.dist/prefab/integration/topic/index.d.ts.map +0 -1
  503. package/.dist/prefab/integration/topic/index.js +0 -48
  504. package/.dist/prefab/integration/topic/index.js.map +0 -1
  505. package/.dist/prefab/networking/dns-domain-ref/index.d.ts +0 -14
  506. package/.dist/prefab/networking/dns-domain-ref/index.d.ts.map +0 -1
  507. package/.dist/prefab/networking/dns-domain-ref/index.js +0 -28
  508. package/.dist/prefab/networking/dns-domain-ref/index.js.map +0 -1
  509. package/.dist/prefab/networking/dns-subdomain-certificate/index.d.ts +0 -11
  510. package/.dist/prefab/networking/dns-subdomain-certificate/index.d.ts.map +0 -1
  511. package/.dist/prefab/networking/dns-subdomain-certificate/index.js +0 -28
  512. package/.dist/prefab/networking/dns-subdomain-certificate/index.js.map +0 -1
  513. package/.dist/prefab/networking/dns-subdomain-hosted-zone/index.d.ts +0 -10
  514. package/.dist/prefab/networking/dns-subdomain-hosted-zone/index.d.ts.map +0 -1
  515. package/.dist/prefab/networking/dns-subdomain-hosted-zone/index.js +0 -27
  516. package/.dist/prefab/networking/dns-subdomain-hosted-zone/index.js.map +0 -1
  517. package/.dist/prefab/networking/index.d.ts +0 -6
  518. package/.dist/prefab/networking/vpc/index.d.ts +0 -18
  519. package/.dist/prefab/networking/vpc/index.d.ts.map +0 -1
  520. package/.dist/prefab/networking/vpc/index.js +0 -28
  521. package/.dist/prefab/networking/vpc/index.js.map +0 -1
  522. package/.dist/prefab/networking/waf/index.d.ts +0 -12
  523. package/.dist/prefab/networking/waf/index.d.ts.map +0 -1
  524. package/.dist/prefab/networking/waf/index.js.map +0 -1
  525. package/.dist/prefab/storage/bucket/asset-bucket.d.ts +0 -10
  526. package/.dist/prefab/storage/bucket/asset-bucket.d.ts.map +0 -1
  527. package/.dist/prefab/storage/bucket/asset-bucket.js +0 -19
  528. package/.dist/prefab/storage/bucket/asset-bucket.js.map +0 -1
  529. package/.dist/prefab/storage/bucket/index.d.ts +0 -3
  530. package/.dist/prefab/storage/bucket/index.d.ts.map +0 -1
  531. package/.dist/prefab/storage/bucket/index.js +0 -19
  532. package/.dist/prefab/storage/bucket/index.js.map +0 -1
  533. package/.dist/prefab/storage/bucket/private-bucket.d.ts +0 -32
  534. package/.dist/prefab/storage/bucket/private-bucket.d.ts.map +0 -1
  535. package/.dist/prefab/storage/bucket/private-bucket.js +0 -82
  536. package/.dist/prefab/storage/bucket/private-bucket.js.map +0 -1
  537. package/.dist/prefab/utils/config/frontend-env-builder.d.ts +0 -12
  538. package/.dist/prefab/utils/config/frontend-env-builder.d.ts.map +0 -1
  539. package/.dist/prefab/utils/config/frontend-env-builder.js +0 -25
  540. package/.dist/prefab/utils/config/frontend-env-builder.js.map +0 -1
  541. package/.dist/prefab/utils/config/index.d.ts +0 -4
  542. package/.dist/prefab/utils/config/index.d.ts.map +0 -1
  543. package/.dist/prefab/utils/config/index.js +0 -20
  544. package/.dist/prefab/utils/config/index.js.map +0 -1
  545. package/.dist/prefab/utils/config/parameter-secret.d.ts +0 -19
  546. package/.dist/prefab/utils/config/parameter-secret.d.ts.map +0 -1
  547. package/.dist/prefab/utils/config/parameter-secret.js +0 -42
  548. package/.dist/prefab/utils/config/parameter-secret.js.map +0 -1
  549. package/.dist/prefab/utils/config/runtime-secret.d.ts +0 -20
  550. package/.dist/prefab/utils/config/runtime-secret.d.ts.map +0 -1
  551. package/.dist/prefab/utils/config/runtime-secret.js +0 -37
  552. package/.dist/prefab/utils/config/runtime-secret.js.map +0 -1
  553. package/.dist/prefab/utils/deploy-pipeline/catalog/integrations/slack.d.ts.map +0 -1
  554. package/.dist/prefab/utils/deploy-pipeline/index.d.ts +0 -13
  555. package/.dist/prefab/utils/deploy-pipeline/index.d.ts.map +0 -1
  556. package/.dist/prefab/utils/deploy-pipeline/index.js +0 -173
  557. package/.dist/prefab/utils/deploy-pipeline/index.js.map +0 -1
  558. package/.dist/prefab/utils/deploy-pipeline/platform/get-slack-payload.js.map +0 -1
  559. package/.dist/prefab/utils/deploy-pipeline/platform/send-to-slack.js.map +0 -1
  560. package/.dist/prefab/utils/duration.d.ts +0 -2
  561. package/.dist/prefab/utils/duration.d.ts.map +0 -1
  562. package/.dist/prefab/utils/duration.js +0 -6
  563. package/.dist/prefab/utils/duration.js.map +0 -1
  564. package/.dist/prefab/utils/index.d.ts +0 -5
  565. package/.dist/prefab/utils/index.d.ts.map +0 -1
  566. package/.dist/prefab/utils/ses/index.d.ts +0 -20
  567. package/.dist/prefab/utils/ses/index.d.ts.map +0 -1
  568. package/.dist/prefab/utils/ses/index.js.map +0 -1
  569. package/.dist/script/config-command/bootstrap.d.ts +0 -3
  570. package/.dist/script/config-command/bootstrap.d.ts.map +0 -1
  571. package/.dist/script/config-command/bootstrap.js +0 -65
  572. package/.dist/script/config-command/bootstrap.js.map +0 -1
  573. package/.dist/script/config-command/deploy-spa.d.ts +0 -3
  574. package/.dist/script/config-command/deploy-spa.d.ts.map +0 -1
  575. package/.dist/script/config-command/deploy-spa.js +0 -82
  576. package/.dist/script/config-command/deploy-spa.js.map +0 -1
  577. package/.dist/script/config-command/deploy.d.ts +0 -3
  578. package/.dist/script/config-command/deploy.d.ts.map +0 -1
  579. package/.dist/script/config-command/deploy.js +0 -26
  580. package/.dist/script/config-command/deploy.js.map +0 -1
  581. package/.dist/script/config-command/destroy.d.ts +0 -3
  582. package/.dist/script/config-command/destroy.d.ts.map +0 -1
  583. package/.dist/script/config-command/destroy.js +0 -26
  584. package/.dist/script/config-command/destroy.js.map +0 -1
  585. package/.dist/script/config-command/env-ssr.d.ts +0 -3
  586. package/.dist/script/config-command/env-ssr.d.ts.map +0 -1
  587. package/.dist/script/config-command/env-ssr.js +0 -49
  588. package/.dist/script/config-command/env-ssr.js.map +0 -1
  589. package/.dist/script/config-command/invalidation-ssr.d.ts +0 -3
  590. package/.dist/script/config-command/invalidation-ssr.d.ts.map +0 -1
  591. package/.dist/script/config-command/invalidation-ssr.js +0 -53
  592. package/.dist/script/config-command/invalidation-ssr.js.map +0 -1
  593. package/.dist/script/config-command/rds-migration.d.ts +0 -5
  594. package/.dist/script/config-command/rds-migration.d.ts.map +0 -1
  595. package/.dist/script/config-command/rds-migration.js +0 -125
  596. package/.dist/script/config-command/rds-migration.js.map +0 -1
  597. package/.dist/script/config-command/rds-sync.d.ts +0 -3
  598. package/.dist/script/config-command/rds-sync.d.ts.map +0 -1
  599. package/.dist/script/config-command/rds-sync.js +0 -66
  600. package/.dist/script/config-command/rds-sync.js.map +0 -1
  601. package/.dist/script/config-command/ssm-connect.d.ts +0 -3
  602. package/.dist/script/config-command/ssm-connect.d.ts.map +0 -1
  603. package/.dist/script/config-command/ssm-connect.js +0 -86
  604. package/.dist/script/config-command/ssm-connect.js.map +0 -1
  605. package/.dist/script/config-command/start-spa.d.ts +0 -3
  606. package/.dist/script/config-command/start-spa.d.ts.map +0 -1
  607. package/.dist/script/config-command/start-spa.js +0 -53
  608. package/.dist/script/config-command/start-spa.js.map +0 -1
  609. package/.dist/script/config-command/start-ssr.d.ts +0 -3
  610. package/.dist/script/config-command/start-ssr.d.ts.map +0 -1
  611. package/.dist/script/config-command/start-ssr.js +0 -53
  612. package/.dist/script/config-command/start-ssr.js.map +0 -1
  613. package/.dist/script/config-command/synth.d.ts +0 -3
  614. package/.dist/script/config-command/synth.d.ts.map +0 -1
  615. package/.dist/script/config-command/synth.js +0 -26
  616. package/.dist/script/config-command/synth.js.map +0 -1
  617. package/.dist/script/index.d.ts +0 -7
  618. package/.dist/script/index.d.ts.map +0 -1
  619. package/.dist/script/index.js +0 -70
  620. package/.dist/script/index.js.map +0 -1
  621. package/.dist/script/output-command/create-user.d.ts +0 -9
  622. package/.dist/script/output-command/create-user.d.ts.map +0 -1
  623. package/.dist/script/output-command/create-user.js +0 -61
  624. package/.dist/script/output-command/create-user.js.map +0 -1
  625. package/.dist/script/output-command/gen-postman-env.d.ts +0 -9
  626. package/.dist/script/output-command/gen-postman-env.d.ts.map +0 -1
  627. package/.dist/script/output-command/gen-postman-env.js +0 -55
  628. package/.dist/script/output-command/gen-postman-env.js.map +0 -1
  629. package/.dist/tsconfig.tsbuildinfo +0 -1
  630. package/.prettierignore +0 -10
  631. package/.prettierrc.json +0 -12
  632. package/.turbo/turbo-build.log +0 -5
  633. package/.turbo/turbo-release.log +0 -7
  634. package/CHANGELOG.md +0 -8
  635. package/common/coordinator.ts +0 -103
  636. package/common/index.ts +0 -5
  637. package/common/modifier.ts +0 -11
  638. package/common/naming/get-deploy-config.ts +0 -5
  639. package/common/naming/get-domain.ts +0 -14
  640. package/common/naming/get-function-entry.ts +0 -11
  641. package/common/naming/get-logical-name.ts +0 -3
  642. package/common/naming/get-resource-name.ts +0 -77
  643. package/common/naming/get-service-name.ts +0 -13
  644. package/common/naming/index.ts +0 -7
  645. package/common/naming/string-parser.ts +0 -17
  646. package/common/service.ts +0 -48
  647. package/common/synth/account-mapping.ts +0 -16
  648. package/common/synth/assume-role.ts +0 -39
  649. package/common/synth/get-global-props.ts +0 -46
  650. package/common/synth/get-service-props.ts +0 -16
  651. package/common/synth/index.ts +0 -7
  652. package/common/synth/pre-script.ts +0 -103
  653. package/common/synth/props-types.ts +0 -79
  654. package/common/synth/synth-error.ts +0 -13
  655. package/prefab/analytics/events/handlers/ingestion-transform/handler.ts +0 -35
  656. package/prefab/analytics/events/index.ts +0 -192
  657. package/prefab/analytics/index.ts +0 -1
  658. package/prefab/auth/cognito-pool/index.ts +0 -263
  659. package/prefab/auth/index.ts +0 -1
  660. package/prefab/cdn/cdn-api/index.ts +0 -169
  661. package/prefab/cdn/cdn-asset/index.ts +0 -89
  662. package/prefab/cdn/cdn-spa/index.ts +0 -136
  663. package/prefab/cdn/cdn-ssr/index.ts +0 -288
  664. package/prefab/cdn/index.ts +0 -4
  665. package/prefab/compute/fargate/cluster.ts +0 -24
  666. package/prefab/compute/fargate/index.ts +0 -2
  667. package/prefab/compute/fargate/service.ts +0 -130
  668. package/prefab/compute/function/api-function/api-aggregate.ts +0 -73
  669. package/prefab/compute/function/api-function/api-function.ts +0 -63
  670. package/prefab/compute/function/api-function/index.ts +0 -2
  671. package/prefab/compute/function/base-function/index.ts +0 -102
  672. package/prefab/compute/function/cognito-function/cognito-aggregate.ts +0 -29
  673. package/prefab/compute/function/cognito-function/cognito-function.ts +0 -36
  674. package/prefab/compute/function/cognito-function/index.ts +0 -2
  675. package/prefab/compute/function/cron-function/cron-aggregate.ts +0 -28
  676. package/prefab/compute/function/cron-function/cron-function.ts +0 -32
  677. package/prefab/compute/function/cron-function/index.ts +0 -2
  678. package/prefab/compute/function/event-function/EventAggregateParams.ts +0 -9
  679. package/prefab/compute/function/event-function/event-aggregate.ts +0 -33
  680. package/prefab/compute/function/event-function/event-function.ts +0 -42
  681. package/prefab/compute/function/event-function/index.ts +0 -2
  682. package/prefab/compute/function/index.ts +0 -7
  683. package/prefab/compute/function/queue-function/index.ts +0 -67
  684. package/prefab/compute/function/topic-function/index.ts +0 -36
  685. package/prefab/compute/index.ts +0 -2
  686. package/prefab/database/dynamo/index.ts +0 -113
  687. package/prefab/database/index.ts +0 -3
  688. package/prefab/database/rds/handlers/start-cluster/handler.ts +0 -7
  689. package/prefab/database/rds/handlers/stop-cluster/handler.ts +0 -7
  690. package/prefab/database/rds/index.ts +0 -248
  691. package/prefab/database/timestream/index.ts +0 -2
  692. package/prefab/database/timestream/timestream-database.ts +0 -24
  693. package/prefab/database/timestream/timestream-table.ts +0 -76
  694. package/prefab/gateway/alb-public/index.ts +0 -124
  695. package/prefab/gateway/api-gateway/api-http.ts +0 -71
  696. package/prefab/gateway/api-gateway/api-rest.ts +0 -93
  697. package/prefab/gateway/api-gateway/index.ts +0 -2
  698. package/prefab/gateway/app-sync/index.ts +0 -117
  699. package/prefab/gateway/app-sync/resolver-aggregate.ts +0 -138
  700. package/prefab/gateway/app-sync/types.ts +0 -29
  701. package/prefab/index.ts +0 -10
  702. package/prefab/integration/event-bus/index.ts +0 -52
  703. package/prefab/integration/index.ts +0 -3
  704. package/prefab/integration/queue/index.ts +0 -94
  705. package/prefab/integration/topic/index.ts +0 -57
  706. package/prefab/networking/dns-domain-ref/index.ts +0 -32
  707. package/prefab/networking/dns-subdomain-certificate/index.ts +0 -30
  708. package/prefab/networking/dns-subdomain-hosted-zone/index.ts +0 -30
  709. package/prefab/networking/index.ts +0 -5
  710. package/prefab/networking/vpc/index.ts +0 -39
  711. package/prefab/networking/waf/index.ts +0 -49
  712. package/prefab/storage/bucket/asset-bucket.ts +0 -24
  713. package/prefab/storage/bucket/index.ts +0 -2
  714. package/prefab/storage/bucket/private-bucket.ts +0 -74
  715. package/prefab/storage/index.ts +0 -1
  716. package/prefab/utils/config/frontend-env-builder.ts +0 -30
  717. package/prefab/utils/config/index.ts +0 -3
  718. package/prefab/utils/config/parameter-secret.ts +0 -52
  719. package/prefab/utils/config/runtime-secret.ts +0 -48
  720. package/prefab/utils/deploy-pipeline/catalog/integrations/index.ts +0 -1
  721. package/prefab/utils/deploy-pipeline/catalog/integrations/slack.ts +0 -23
  722. package/prefab/utils/deploy-pipeline/entities/index.ts +0 -23
  723. package/prefab/utils/deploy-pipeline/handlers/send-to-slack/handler.ts +0 -32
  724. package/prefab/utils/deploy-pipeline/index.ts +0 -172
  725. package/prefab/utils/deploy-pipeline/platform/get-pipeline-detail.ts +0 -31
  726. package/prefab/utils/deploy-pipeline/platform/get-slack-payload.ts +0 -38
  727. package/prefab/utils/deploy-pipeline/platform/send-to-slack.ts +0 -16
  728. package/prefab/utils/duration.ts +0 -1
  729. package/prefab/utils/index.ts +0 -4
  730. package/prefab/utils/ses/index.ts +0 -134
  731. package/script/config-command/bootstrap.ts +0 -108
  732. package/script/config-command/deploy-spa.ts +0 -126
  733. package/script/config-command/deploy.ts +0 -50
  734. package/script/config-command/destroy.ts +0 -49
  735. package/script/config-command/env-ssr.ts +0 -85
  736. package/script/config-command/invalidation-ssr.ts +0 -88
  737. package/script/config-command/rds-migration.ts +0 -177
  738. package/script/config-command/rds-sync.ts +0 -108
  739. package/script/config-command/ssm-connect.ts +0 -129
  740. package/script/config-command/start-spa.ts +0 -93
  741. package/script/config-command/start-ssr.ts +0 -91
  742. package/script/config-command/synth.ts +0 -50
  743. package/script/index.ts +0 -86
  744. package/script/output-command/create-user.ts +0 -89
  745. package/script/output-command/gen-postman-env.ts +0 -75
  746. package/tsconfig.json +0 -26
  747. /package/{.dist/prefab/gateway/app-sync → common/helpers}/types.js +0 -0
  748. /package/{.dist/prefab/compute/fargate → prefab/compute/ecs}/index.d.ts +0 -0
  749. /package/{.dist/prefab/compute/fargate → prefab/compute/ecs}/index.js +0 -0
  750. /package/{.dist/prefab → prefab}/database/index.d.ts +0 -0
  751. /package/{.dist/prefab → prefab}/database/index.d.ts.map +0 -0
  752. /package/{.dist/prefab → prefab}/database/index.js +0 -0
  753. /package/{.dist/prefab → prefab}/database/index.js.map +0 -0
  754. /package/{.dist/prefab → prefab}/database/rds/handlers/start-cluster/handler.d.ts +0 -0
  755. /package/{.dist/prefab → prefab}/database/rds/handlers/start-cluster/handler.d.ts.map +0 -0
  756. /package/{.dist/prefab → prefab}/database/rds/handlers/start-cluster/handler.js +0 -0
  757. /package/{.dist/prefab → prefab}/database/rds/handlers/start-cluster/handler.js.map +0 -0
  758. /package/{.dist/prefab → prefab}/database/rds/handlers/stop-cluster/handler.d.ts +0 -0
  759. /package/{.dist/prefab → prefab}/database/rds/handlers/stop-cluster/handler.d.ts.map +0 -0
  760. /package/{.dist/prefab → prefab}/database/rds/handlers/stop-cluster/handler.js +0 -0
  761. /package/{.dist/prefab → prefab}/database/rds/handlers/stop-cluster/handler.js.map +0 -0
  762. /package/{.dist/prefab → prefab}/database/timestream/index.d.ts +0 -0
  763. /package/{.dist/prefab → prefab}/database/timestream/index.d.ts.map +0 -0
  764. /package/{.dist/prefab → prefab}/database/timestream/index.js +0 -0
  765. /package/{.dist/prefab → prefab}/database/timestream/index.js.map +0 -0
  766. /package/{.dist/prefab → prefab}/gateway/api-gateway/index.d.ts +0 -0
  767. /package/{.dist/prefab → prefab}/gateway/api-gateway/index.d.ts.map +0 -0
  768. /package/{.dist/prefab → prefab}/gateway/api-gateway/index.js +0 -0
  769. /package/{.dist/prefab → prefab}/gateway/api-gateway/index.js.map +0 -0
  770. /package/{.dist/prefab → prefab}/integration/index.d.ts +0 -0
  771. /package/{.dist/prefab → prefab}/integration/index.d.ts.map +0 -0
  772. /package/{.dist/prefab → prefab}/integration/index.js +0 -0
  773. /package/{.dist/prefab → prefab}/integration/index.js.map +0 -0
  774. /package/{.dist/prefab → prefab}/storage/index.d.ts +0 -0
  775. /package/{.dist/prefab → prefab}/storage/index.d.ts.map +0 -0
  776. /package/{.dist/prefab → prefab}/storage/index.js +0 -0
  777. /package/{.dist/prefab → prefab}/storage/index.js.map +0 -0
  778. /package/{.dist/prefab → prefab}/utils/deploy-pipeline/catalog/integrations/index.d.ts +0 -0
  779. /package/{.dist/prefab → prefab}/utils/deploy-pipeline/catalog/integrations/index.d.ts.map +0 -0
  780. /package/{.dist/prefab → prefab}/utils/deploy-pipeline/catalog/integrations/index.js +0 -0
  781. /package/{.dist/prefab → prefab}/utils/deploy-pipeline/catalog/integrations/index.js.map +0 -0
  782. /package/{.dist/prefab → prefab}/utils/deploy-pipeline/catalog/integrations/slack.js +0 -0
  783. /package/{.dist/prefab → prefab}/utils/deploy-pipeline/catalog/integrations/slack.js.map +0 -0
  784. /package/{.dist/prefab → prefab}/utils/deploy-pipeline/entities/index.d.ts +0 -0
  785. /package/{.dist/prefab → prefab}/utils/deploy-pipeline/entities/index.d.ts.map +0 -0
  786. /package/{.dist/prefab → prefab}/utils/deploy-pipeline/entities/index.js +0 -0
  787. /package/{.dist/prefab → prefab}/utils/deploy-pipeline/entities/index.js.map +0 -0
  788. /package/{.dist/prefab → prefab}/utils/deploy-pipeline/handlers/send-to-slack/handler.d.ts +0 -0
  789. /package/{.dist/prefab → prefab}/utils/deploy-pipeline/handlers/send-to-slack/handler.d.ts.map +0 -0
  790. /package/{.dist/prefab → prefab}/utils/deploy-pipeline/handlers/send-to-slack/handler.js +0 -0
  791. /package/{.dist/prefab → prefab}/utils/deploy-pipeline/handlers/send-to-slack/handler.js.map +0 -0
  792. /package/{.dist/prefab → prefab}/utils/deploy-pipeline/platform/get-pipeline-detail.d.ts +0 -0
  793. /package/{.dist/prefab → prefab}/utils/deploy-pipeline/platform/get-pipeline-detail.d.ts.map +0 -0
  794. /package/{.dist/prefab → prefab}/utils/deploy-pipeline/platform/get-pipeline-detail.js +0 -0
  795. /package/{.dist/prefab → prefab}/utils/deploy-pipeline/platform/get-pipeline-detail.js.map +0 -0
  796. /package/{.dist/prefab → prefab}/utils/deploy-pipeline/platform/get-slack-payload.d.ts +0 -0
  797. /package/{.dist/prefab → prefab}/utils/deploy-pipeline/platform/get-slack-payload.js +0 -0
  798. /package/{.dist/prefab → prefab}/utils/deploy-pipeline/platform/send-to-slack.d.ts +0 -0
  799. /package/{.dist/prefab → prefab}/utils/deploy-pipeline/platform/send-to-slack.js +0 -0
@@ -1,67 +0,0 @@
1
- import { Duration } from 'aws-cdk-lib';
2
- import { SqsEventSource } from 'aws-cdk-lib/aws-lambda-event-sources';
3
- import { NodejsFunction } from 'aws-cdk-lib/aws-lambda-nodejs';
4
- import { Construct } from 'constructs';
5
-
6
- import { ServiceStack, getLogicalName, SynthError } from '../../../../common';
7
- import { QueuePrefab, QueuePrefabParams } from '../../../integration';
8
- import { BaseAggregateParams } from '../base-function';
9
- import { BaseFunction, BaseHandlerParams, FUNCTION_DEFAULT_TIMEOUT } from '../base-function';
10
-
11
- export type QueueHandlerParams = BaseHandlerParams & {
12
- queuePrefab?: QueuePrefab;
13
- queuePrefabParams?: Partial<QueuePrefabParams>;
14
- maxConcurrency?: number;
15
- batchSize?: number;
16
- batchWindow?: Duration;
17
- visibilityTimeoutRatio?: number;
18
- };
19
-
20
- export type QueueFunctionParams = BaseAggregateParams;
21
-
22
- export class QueueFunction extends Construct {
23
- public readonly lambdaFunction: NodejsFunction;
24
- public readonly queuePrefab: QueuePrefab;
25
-
26
- constructor(service: ServiceStack, params: QueueFunctionParams & QueueHandlerParams) {
27
- super(service, getLogicalName(QueueFunction.name, params.name));
28
-
29
- if (params.visibilityTimeoutRatio && params.visibilityTimeoutRatio < 1) {
30
- throw new SynthError('Visibility timeout ratio must be greater than or equal to 1', service.props);
31
- }
32
-
33
- // Visibility timeout is declared, must be greater than or equal to the timeout
34
- if (
35
- params.queuePrefabParams?.visibilityTimeout &&
36
- (params.timeout?.toSeconds() || FUNCTION_DEFAULT_TIMEOUT) > params.queuePrefabParams?.visibilityTimeout.toSeconds()
37
- ) {
38
- throw new SynthError('Visibility timeout must be greater than or equal to the function timeout', service.props);
39
- }
40
-
41
- this.queuePrefab =
42
- params.queuePrefab ||
43
- new QueuePrefab(service, {
44
- name: params.name,
45
- visibilityTimeout: Duration.seconds((params.timeout?.toSeconds() || 6) * (params.visibilityTimeoutRatio || 2)),
46
- ...params.queuePrefabParams,
47
- });
48
-
49
- this.lambdaFunction = new BaseFunction(service, {
50
- ...params,
51
- environment: { ...params.environment, CC_FUNCTION_TYPE: 'QUEUE' },
52
- }).lambdaFunction;
53
-
54
- this.lambdaFunction.addEventSource(
55
- new SqsEventSource(this.queuePrefab.queue, {
56
- ...(params.maxConcurrency ? { maxConcurrency: params.maxConcurrency } : {}),
57
- batchSize: params.batchSize || 10,
58
- maxBatchingWindow: params.batchWindow,
59
- reportBatchItemFailures: true,
60
- })
61
- );
62
-
63
- // In case the lambda function needs to operate on the queue manually
64
- this.lambdaFunction.addEnvironment('ORIGIN_QUEUE', this.queuePrefab.queue.queueUrl);
65
- this.queuePrefab.queue.grantConsumeMessages(this.lambdaFunction);
66
- }
67
- }
@@ -1,36 +0,0 @@
1
- import { Duration } from 'aws-cdk-lib';
2
- import { SnsEventSource } from 'aws-cdk-lib/aws-lambda-event-sources';
3
- import { NodejsFunction } from 'aws-cdk-lib/aws-lambda-nodejs';
4
- import { Construct } from 'constructs';
5
-
6
- import { ServiceStack, getLogicalName } from '../../../../common';
7
- import { CustomTopicParams, TopicPrefab } from '../../../integration';
8
- import { BaseAggregateParams } from '../base-function';
9
- import { BaseHandlerParams, BaseFunction } from '../base-function';
10
-
11
- export type TopicHandlerParams = BaseHandlerParams & {
12
- topic?: TopicPrefab;
13
- customTopicParams?: CustomTopicParams;
14
- batchSize?: number;
15
- batchWindow?: Duration;
16
- };
17
-
18
- export type TopicFunctionParams = BaseAggregateParams;
19
-
20
- export class TopicFunction extends Construct {
21
- public readonly lambdaFunction: NodejsFunction;
22
- public readonly customTopic: TopicPrefab;
23
-
24
- constructor(service: ServiceStack, params: TopicFunctionParams & TopicHandlerParams) {
25
- super(service, getLogicalName(TopicFunction.name, params.name));
26
-
27
- this.customTopic = params.topic || new TopicPrefab(service, { name: params.name, ...params.customTopicParams });
28
-
29
- this.lambdaFunction = new BaseFunction(service, {
30
- ...params,
31
- environment: { ...params.environment, CC_FUNCTION_TYPE: 'TOPIC' },
32
- }).lambdaFunction;
33
-
34
- this.lambdaFunction.addEventSource(new SnsEventSource(this.customTopic.topic));
35
- }
36
- }
@@ -1,2 +0,0 @@
1
- export * from './fargate';
2
- export * from './function';
@@ -1,113 +0,0 @@
1
- import { RemovalPolicy } from 'aws-cdk-lib';
2
- import { AttributeType, BillingMode, Table } from 'aws-cdk-lib/aws-dynamodb';
3
- import { NodejsFunction } from 'aws-cdk-lib/aws-lambda-nodejs';
4
- import { Construct } from 'constructs';
5
-
6
- import { TableStoreBuilder, TablePermission } from '@takumi-stack/sdk';
7
-
8
- import { ServiceStack, SynthError, getLogicalName, getResourceName } from '../../../common';
9
-
10
- export class DynamoTablePrefab extends Construct {
11
- public readonly table: Table;
12
- public readonly tableName: string;
13
- public readonly dynamoTableNameEnvVar: string;
14
-
15
- constructor(service: ServiceStack, params: typeof TableStoreBuilder<any>) {
16
- super(service, getLogicalName(DynamoTablePrefab.name, new params().tableName));
17
-
18
- const definition = new params();
19
- if (!definition.tableName)
20
- throw new SynthError('Bad implementation of TableStoreBuilder (remember use implements instead of extends in you class)', service.props);
21
-
22
- this.dynamoTableNameEnvVar = definition.dynamoTableNameEnvVar || parseTableName(definition.tableName);
23
- this.tableName = definition.tableName;
24
-
25
- if (definition.keyMapping.PK !== 'PK') {
26
- throw new SynthError('Bad implementation of TableStoreBuilder (PK must be PK)', service.props);
27
- }
28
- if (definition.keyMapping.SK && definition.keyMapping.SK !== 'SK') {
29
- throw new SynthError('Bad implementation of TableStoreBuilder (SK must be SK)', service.props);
30
- }
31
- this.table = new Table(this, definition.tableName, {
32
- tableName: getResourceName(definition.tableName, service.props),
33
- billingMode: BillingMode.PAY_PER_REQUEST,
34
- partitionKey: { name: 'PK', type: AttributeType.STRING },
35
- timeToLiveAttribute: 'deleteTTL',
36
- ...(definition.keyMapping.SK ? { sortKey: { name: 'SK', type: AttributeType.STRING } } : {}),
37
- // stream: params.stream,
38
- });
39
-
40
- const indexes = { ...definition.attIndexes, ...definition.genericIndexes };
41
- if (indexes) {
42
- const indexKeys = Object.keys(indexes);
43
- indexKeys.forEach((indexKey) => {
44
- const index = indexes[indexKey];
45
- if (index) {
46
- this.table.addGlobalSecondaryIndex({
47
- indexName: indexKey,
48
- partitionKey: { name: index.PK, type: AttributeType.STRING },
49
- ...(index.SK ? { sortKey: { name: index.SK, type: AttributeType.STRING } } : {}),
50
- });
51
- }
52
- });
53
- }
54
-
55
- this.table.applyRemovalPolicy(RemovalPolicy.DESTROY);
56
- if (service.props.envName === 'prod') this.table.applyRemovalPolicy(RemovalPolicy.RETAIN);
57
- }
58
-
59
- // public useMod(variableName = 'TABLE', mods: ((table: Table) => any)[]): Modifier {
60
- // return (lambda: NodejsFunction): void => {
61
- // lambda.addEnvironment(variableName, this.table.tableName);
62
- // mods.map((fn) => fn(this.table)(lambda));
63
- // };
64
- // }
65
-
66
- // public useModPermission(variableName = 'TABLE', tablePermission: TablePermission): Modifier {
67
- // return (lambda: NodejsFunction): void => {
68
- // lambda.addEnvironment(variableName, this.table.tableName);
69
- // DynamoTablePrefab.modifier.permission(this.table, tablePermission)(lambda);
70
- // };
71
- // }
72
-
73
- // public static modifier = {
74
- // permission: (table: Table, tablePermission: TablePermission): ((lambda: NodejsFunction) => void) => {
75
- // return (lambda: NodejsFunction): void => {
76
- // if (tablePermission === 'none') return;
77
- // const permissionMapper = {
78
- // read: () => table.grantReadData(lambda),
79
- // write: () => table.grantWriteData(lambda),
80
- // readWrite: () => table.grantReadWriteData(lambda),
81
- // };
82
- // permissionMapper[tablePermission]();
83
- // };
84
- // },
85
- // writer: (table: Table): ((lambda: NodejsFunction) => void) => {
86
- // return (lambda: NodejsFunction): void => {
87
- // table.grantWriteData(lambda);
88
- // };
89
- // },
90
- // reader: (table: Table): ((lambda: NodejsFunction) => void) => {
91
- // return (lambda: NodejsFunction): void => {
92
- // table.grantReadData(lambda);
93
- // };
94
- // },
95
- // };
96
-
97
- public static addTable(lambdaFunction: NodejsFunction, tablePrefab?: DynamoTablePrefab, tablePermission?: TablePermission): void {
98
- if (tablePrefab instanceof DynamoTablePrefab) {
99
- if (!tablePermission) throw new Error('tablePermission is required when table is used');
100
- lambdaFunction.addEnvironment(tablePrefab.dynamoTableNameEnvVar, tablePrefab.table.tableName);
101
- if (tablePermission === 'none') return;
102
- const permissionMapper = {
103
- read: () => tablePrefab.table.grantReadData(lambdaFunction),
104
- write: () => tablePrefab.table.grantWriteData(lambdaFunction),
105
- readWrite: () => tablePrefab.table.grantReadWriteData(lambdaFunction),
106
- };
107
- permissionMapper[tablePermission]();
108
- }
109
- }
110
- }
111
- function parseTableName(tableName: any): string {
112
- throw new Error('Function not implemented.');
113
- }
@@ -1,3 +0,0 @@
1
- export * from './dynamo';
2
- export * from './rds';
3
- export * from './timestream';
@@ -1,7 +0,0 @@
1
- import { RDSClient, StartDBClusterCommand } from '@aws-sdk/client-rds';
2
-
3
- const client = new RDSClient({ region: process.env.REGION });
4
-
5
- export const handler = async (): Promise<any> => {
6
- await client.send(new StartDBClusterCommand({ DBClusterIdentifier: process.env.DB_CLUSTER_NAME! }));
7
- };
@@ -1,7 +0,0 @@
1
- import { RDSClient, StopDBClusterCommand } from '@aws-sdk/client-rds';
2
-
3
- const client = new RDSClient({ region: process.env.REGION });
4
-
5
- export const handler = async (): Promise<any> => {
6
- await client.send(new StopDBClusterCommand({ DBClusterIdentifier: process.env.DB_CLUSTER_NAME! }));
7
- };
@@ -1,248 +0,0 @@
1
- import * as awsEc2 from 'aws-cdk-lib/aws-ec2';
2
- import * as awsRds from 'aws-cdk-lib/aws-rds';
3
- import { Fn, RemovalPolicy } from 'aws-cdk-lib';
4
- import { CronOptions } from 'aws-cdk-lib/aws-events';
5
- import { ManagedPolicy, PolicyStatement, Role, ServicePrincipal } from 'aws-cdk-lib/aws-iam';
6
- import { ISecret } from 'aws-cdk-lib/aws-secretsmanager';
7
- import { StringParameter } from 'aws-cdk-lib/aws-ssm';
8
- import { Construct } from 'constructs';
9
-
10
- import { Modifier, ServiceStack, SynthError, getLogicalName, getResourceName, getShortResourceName } from '../../../common';
11
- import { CronAggregate, BaseAggregateParams } from '../../compute';
12
- import { VpcPrefab } from '../../networking';
13
-
14
- export type AuroraPerformanceTuning = {
15
- writeInstanceProps?: awsRds.ServerlessV2ClusterInstanceProps;
16
- readInstanceProps?: awsRds.ServerlessV2ClusterInstanceProps;
17
- readInstances?: number;
18
- readers?: awsRds.IClusterInstance[];
19
- minCapacity?: number;
20
- maxCapacity?: number;
21
- };
22
-
23
- export type AuroraServerlessV2PrefabParams = {
24
- clusterName: string;
25
- vpcPrefab: VpcPrefab;
26
- performanceTuning: AuroraPerformanceTuning;
27
- port?: number;
28
- engine?: awsRds.IClusterEngine;
29
- publicAccess: boolean;
30
- baseDir?: string;
31
- scheduledPause?: {
32
- startCron: CronOptions;
33
- stopCron: CronOptions;
34
- };
35
- vpcSubnets?: awsEc2.SubnetSelection;
36
- securityGroupProps?: Partial<awsEc2.SecurityGroupProps>;
37
- databaseClusterProps?: Partial<awsRds.DatabaseClusterProps>;
38
- databaseProxyProps?: Partial<awsRds.DatabaseProxyProps>;
39
- };
40
-
41
- export class RdsClusterPrefab extends Construct {
42
- public readonly cluster: awsRds.DatabaseCluster;
43
- public readonly securityGroupForLambda: awsEc2.SecurityGroup;
44
- public readonly securityGroup: awsEc2.SecurityGroup;
45
- public readonly securityGroupBastion!: awsEc2.SecurityGroup;
46
- public readonly roleBastion!: Role;
47
- public readonly ec2Bastion!: awsEc2.Instance;
48
- public readonly vpcSubnets?: awsEc2.SubnetSelection;
49
- public readonly proxy: awsRds.DatabaseProxy;
50
- public readonly secret: ISecret;
51
- public readonly cronAggregate!: CronAggregate;
52
- public readonly readonlyRdsProxyEndpoint!: awsRds.CfnDBProxyEndpoint;
53
-
54
- constructor(service: ServiceStack, params: AuroraServerlessV2PrefabParams) {
55
- super(service, getLogicalName(RdsClusterPrefab.name, params.clusterName));
56
-
57
- if (!params.publicAccess) {
58
- // Create SG for EC2 Bastion
59
- this.securityGroupBastion = new awsEc2.SecurityGroup(this, 'BastionSecurityGroup', {
60
- securityGroupName: getResourceName('ec2Bastion', service.props),
61
- vpc: params.vpcPrefab.vpc,
62
- allowAllOutbound: false,
63
- });
64
- this.securityGroupBastion.addEgressRule(awsEc2.Peer.anyIpv4(), awsEc2.Port.tcp(params.port || 5432), 'RdsBastionPort');
65
- this.securityGroupBastion.addEgressRule(awsEc2.Peer.anyIpv4(), awsEc2.Port.tcp(params.port || 443), 'HttpsBastionPort');
66
-
67
- // Create Role for EC2 to allow use SSMManagedInstance
68
- this.roleBastion = new Role(this, getLogicalName('role', 'ec2Bastion'), {
69
- assumedBy: new ServicePrincipal('ec2.amazonaws.com'),
70
- roleName: getShortResourceName('ec2BastionSSM', service.props),
71
- });
72
- this.roleBastion.addManagedPolicy(ManagedPolicy.fromAwsManagedPolicyName('AmazonSSMManagedInstanceCore'));
73
- }
74
-
75
- this.securityGroupForLambda = new awsEc2.SecurityGroup(this, 'LambdaSecurityGroup', {
76
- securityGroupName: getResourceName(`LambdaToCluster${params.clusterName}`, service.props),
77
- vpc: params.vpcPrefab.vpc,
78
- allowAllOutbound: true,
79
- });
80
-
81
- this.securityGroup = new awsEc2.SecurityGroup(this, 'ClusterSecurityGroup', {
82
- securityGroupName: getResourceName(params.clusterName, service.props),
83
- vpc: params.vpcPrefab.vpc,
84
- allowAllOutbound: true,
85
- ...params.securityGroupProps,
86
- });
87
- this.securityGroup.addIngressRule(awsEc2.Peer.anyIpv4(), awsEc2.Port.tcp(params.port || 5432), 'DefaultClusterPort');
88
- // Allow SG EC2 in Inbound Rules SG RDS
89
- if (!params.publicAccess)
90
- this.securityGroup.connections.allowFrom(this.securityGroupBastion, awsEc2.Port.tcp(params.port || 5432), 'BastionInboundRule');
91
-
92
- this.cluster = new awsRds.DatabaseCluster(this, 'Cluster', {
93
- port: params.port || 5432, // Default port for postgres
94
- clusterIdentifier: getResourceName(params.clusterName, service.props),
95
- vpc: params.vpcPrefab.vpc,
96
- ...(params.vpcSubnets || params.publicAccess ? { vpcSubnets: { subnetType: awsEc2.SubnetType.PUBLIC } } : {}),
97
- securityGroups: [this.securityGroup],
98
- engine:
99
- params.engine ||
100
- awsRds.DatabaseClusterEngine.auroraPostgres({
101
- version: awsRds.AuroraPostgresEngineVersion.VER_15_2,
102
- }),
103
- credentials: awsRds.Credentials.fromGeneratedSecret('postgres', {
104
- secretName: getResourceName(params.clusterName, service.props),
105
- }),
106
- writer: awsRds.ClusterInstance.serverlessV2('writer', {
107
- instanceIdentifier: getResourceName('writer-master', service.props),
108
- publiclyAccessible: params.publicAccess,
109
- caCertificate: awsRds.CaCertificate.RDS_CA_RDS2048_G1,
110
- ...params.performanceTuning.writeInstanceProps,
111
- }),
112
- readers:
113
- params.performanceTuning.readers ||
114
- [...Array(params.performanceTuning.readInstances).keys()].map((i) =>
115
- awsRds.ClusterInstance.serverlessV2(`reader-${i}`, {
116
- instanceIdentifier: getResourceName(`reader-${i}`, service.props),
117
- publiclyAccessible: params.publicAccess,
118
- caCertificate: awsRds.CaCertificate.RDS_CA_RDS2048_G1,
119
- ...params.performanceTuning.readInstanceProps,
120
- ...(params.performanceTuning.readInstanceProps?.scaleWithWriter === undefined
121
- ? { scaleWithWriter: true }
122
- : { scaleWithWriter: params.performanceTuning.readInstanceProps?.scaleWithWriter }),
123
- })
124
- ),
125
- serverlessV2MinCapacity: params.performanceTuning.minCapacity,
126
- serverlessV2MaxCapacity: params.performanceTuning.maxCapacity,
127
- ...params.databaseClusterProps,
128
- });
129
- if (!params.publicAccess) {
130
- // Create EC2 Instance
131
- this.ec2Bastion = new awsEc2.Instance(this, 'EC2BastionInstance', {
132
- vpc: params.vpcPrefab.vpc,
133
- vpcSubnets: this.cluster.vpcSubnets,
134
- role: this.roleBastion,
135
- securityGroup: this.securityGroupBastion,
136
- instanceType: awsEc2.InstanceType.of(awsEc2.InstanceClass.T2, awsEc2.InstanceSize.MICRO),
137
- machineImage: new awsEc2.AmazonLinuxImage({
138
- generation: awsEc2.AmazonLinuxGeneration.AMAZON_LINUX_2,
139
- }),
140
- });
141
- }
142
-
143
- this.vpcSubnets = this.cluster.vpcSubnets;
144
-
145
- // RDS Proxy
146
- const rdsRole = new Role(this, 'ProxyRole', {
147
- roleName: getResourceName('proxy', service.props),
148
- assumedBy: new ServicePrincipal('rds.amazonaws.com'),
149
- });
150
- this.proxy = new awsRds.DatabaseProxy(this, 'Proxy', {
151
- dbProxyName: getResourceName('proxy', service.props),
152
- proxyTarget: awsRds.ProxyTarget.fromCluster(this.cluster),
153
- secrets: [this.cluster.secret!],
154
- iamAuth: true,
155
- vpc: params.vpcPrefab.vpc,
156
- securityGroups: [this.securityGroup],
157
- role: rdsRole,
158
- ...params.databaseProxyProps,
159
- });
160
-
161
- // Read-only endpoint
162
- if ((params.performanceTuning?.readInstances || params.performanceTuning?.readers?.length || 0) > 0) {
163
- this.readonlyRdsProxyEndpoint = new awsRds.CfnDBProxyEndpoint(this, 'ReadReplicaEndpoint', {
164
- dbProxyName: this.proxy.dbProxyName,
165
- dbProxyEndpointName: this.proxy.dbProxyName + '-read-replica',
166
- vpcSubnetIds: params.vpcPrefab.vpc.selectSubnets(this.cluster.vpcSubnets).subnetIds,
167
- vpcSecurityGroupIds: [this.securityGroup.securityGroupId],
168
- targetRole: 'READ_ONLY',
169
- });
170
- this.readonlyRdsProxyEndpoint.node.addDependency(this.proxy);
171
- }
172
-
173
- // Command Execution Parameter
174
- this.secret = this.cluster.secret!;
175
- new StringParameter(this, 'Config', {
176
- simpleName: true,
177
- parameterName: getResourceName('config', service.props),
178
- stringValue: JSON.stringify({
179
- baseDir: params.baseDir || `support/${service.props.serviceName}`.toLowerCase(),
180
- clusterSecretArn: this.cluster.secret?.secretArn,
181
- publicAccess: params.publicAccess,
182
- ...(!params.publicAccess ? { ec2InstanceId: this.ec2Bastion.instanceId } : {}),
183
- }),
184
- });
185
-
186
- this.cluster.applyRemovalPolicy(RemovalPolicy.DESTROY);
187
- if (service.props.envName === 'prod') this.cluster.applyRemovalPolicy(RemovalPolicy.RETAIN);
188
-
189
- // Scheduled Pause
190
- if (params.scheduledPause) {
191
- this.cronAggregate = new CronAggregate(service, {
192
- baseFunctionFolder: __dirname,
193
- ...(service.props.isDemoProject ? {} : { compiled: true }),
194
- handlers: {
195
- start: {
196
- name: 'start-cluster',
197
- cronOptions: params.scheduledPause.startCron,
198
- environment: { DB_CLUSTER_NAME: this.cluster.clusterIdentifier },
199
- },
200
- stop: {
201
- name: 'stop-cluster',
202
- cronOptions: params.scheduledPause.stopCron,
203
- environment: { DB_CLUSTER_NAME: this.cluster.clusterIdentifier },
204
- },
205
- },
206
- });
207
- if (this.cronAggregate.handlers?.start?.role) {
208
- this.cronAggregate.handlers.start.role.addToPrincipalPolicy(
209
- new PolicyStatement({
210
- actions: ['rds:StartDBCluster'],
211
- resources: [Fn.join('', [`arn:aws:rds:${service.props.regionName}:${service.account}:cluster:`, this.cluster.clusterIdentifier])],
212
- })
213
- );
214
- }
215
- if (this.cronAggregate.handlers.stop?.role) {
216
- this.cronAggregate.handlers.stop.role.addToPrincipalPolicy(
217
- new PolicyStatement({
218
- actions: ['rds:StopDBCluster'],
219
- resources: [Fn.join('', [`arn:aws:rds:${service.props.regionName}:${service.account}:cluster:`, this.cluster.clusterIdentifier])],
220
- })
221
- );
222
- }
223
- }
224
- }
225
-
226
- public useClusterVpcGlobalConfigs(): BaseAggregateParams['globalConfigs'] {
227
- return {
228
- vpc: this.cluster.vpc,
229
- securityGroups: [this.securityGroupForLambda],
230
- };
231
- }
232
-
233
- public useModAccess(access: 'readWrite' | 'readOnly' = 'readWrite', variableName = 'DB'): Modifier {
234
- return (lambda) => {
235
- if (!lambda.isBoundToVpc) {
236
- throw new SynthError('Your lambda must run in the same VPC you passed to this RDSClusterPrefab');
237
- }
238
- this.proxy.grantConnect(lambda);
239
- this.secret.grantRead(lambda);
240
-
241
- if (access === 'readOnly' && this.readonlyRdsProxyEndpoint) {
242
- lambda.addEnvironment(variableName, this.readonlyRdsProxyEndpoint.attrEndpoint);
243
- } else {
244
- lambda.addEnvironment(variableName, this.proxy.endpoint);
245
- }
246
- };
247
- }
248
- }
@@ -1,2 +0,0 @@
1
- export * from './timestream-database';
2
- export * from './timestream-table';
@@ -1,24 +0,0 @@
1
- import { RemovalPolicy } from 'aws-cdk-lib';
2
- import { CfnDatabase } from 'aws-cdk-lib/aws-timestream';
3
- import { Construct } from 'constructs';
4
-
5
- import { ServiceStack, getLogicalName, getResourceName } from '../../../common';
6
-
7
- export type TimeStreamDBParams = {
8
- databaseName: string;
9
- };
10
-
11
- export class TimestreamDatabasePrefab extends Construct {
12
- public readonly database: CfnDatabase;
13
-
14
- constructor(service: ServiceStack, params: TimeStreamDBParams) {
15
- super(service, getLogicalName(TimestreamDatabasePrefab.name, params.databaseName));
16
-
17
- this.database = new CfnDatabase(this, 'Database', {
18
- databaseName: getResourceName(params.databaseName, service.props),
19
- });
20
-
21
- this.database.applyRemovalPolicy(RemovalPolicy.DESTROY);
22
- if (service.props.envName === 'prod') this.database.applyRemovalPolicy(RemovalPolicy.RETAIN);
23
- }
24
- }
@@ -1,76 +0,0 @@
1
- import { RemovalPolicy } from 'aws-cdk-lib';
2
- import { Effect, PolicyStatement } from 'aws-cdk-lib/aws-iam';
3
- import { NodejsFunction } from 'aws-cdk-lib/aws-lambda-nodejs';
4
- import { CfnDatabase, CfnTable } from 'aws-cdk-lib/aws-timestream';
5
- import { Construct } from 'constructs';
6
-
7
- import { ServiceStack, getLogicalName, getResourceName } from '../../../common';
8
-
9
- export type TimestreamTableParams = {
10
- tableName: string;
11
- database: CfnDatabase;
12
- memoryHoursRetention?: string;
13
- diskDaysRetention?: string;
14
- };
15
-
16
- export class TimestreamTablePrefab extends Construct {
17
- public readonly table: CfnTable;
18
- public readonly database: CfnDatabase;
19
-
20
- constructor(service: ServiceStack, params: TimestreamTableParams) {
21
- super(service, getLogicalName(TimestreamTablePrefab.name, params.tableName));
22
-
23
- this.database = params.database;
24
-
25
- this.table = new CfnTable(this, getLogicalName('TimestreamTable', params.tableName), {
26
- tableName: getResourceName(params.tableName, service.props),
27
- databaseName: params.database.databaseName!,
28
- magneticStoreWriteProperties: {
29
- enableMagneticStoreWrites: true,
30
- },
31
- retentionProperties: {
32
- MemoryStoreRetentionPeriodInHours: params.memoryHoursRetention || '24',
33
- MagneticStoreRetentionPeriodInDays: params.diskDaysRetention || '365',
34
- },
35
- });
36
-
37
- this.table.addDependency(this.database);
38
- this.table.applyRemovalPolicy(RemovalPolicy.DESTROY);
39
- if (service.props.envName === 'prod') this.table.applyRemovalPolicy(RemovalPolicy.RETAIN);
40
- }
41
-
42
- public useMod(mods: ((table: CfnTable) => any)[]): (lambda: NodejsFunction) => void {
43
- return (lambda: NodejsFunction): void => {
44
- lambda.addEnvironment('TIMESTREAM_TABLE', this.table.tableName!);
45
- lambda.addEnvironment('TIMESTREAM_DB', this.database.databaseName!);
46
- mods.map((fn) => fn(this.table)(lambda));
47
- };
48
- }
49
-
50
- public static modifier = {
51
- writer: (table: CfnTable): ((lambda: NodejsFunction) => void) => {
52
- return (lambda: NodejsFunction): void => {
53
- lambda.addToRolePolicy(
54
- new PolicyStatement({
55
- effect: Effect.ALLOW,
56
- actions: ['timestream:WriteRecords'],
57
- resources: [table.attrArn],
58
- })
59
- );
60
- lambda.addToRolePolicy(new PolicyStatement({ effect: Effect.ALLOW, actions: ['timestream:DescribeEndpoints'], resources: ['*'] }));
61
- };
62
- },
63
- reader: (table: CfnTable): ((lambda: NodejsFunction) => void) => {
64
- return (lambda: NodejsFunction): void => {
65
- lambda.addToRolePolicy(
66
- new PolicyStatement({
67
- effect: Effect.ALLOW,
68
- actions: ['timestream:Select', 'timestream:SelectValues'],
69
- resources: [table.attrArn],
70
- })
71
- );
72
- lambda.addToRolePolicy(new PolicyStatement({ effect: Effect.ALLOW, actions: ['timestream:DescribeEndpoints'], resources: ['*'] }));
73
- };
74
- },
75
- };
76
- }