@takumi-stack/core 1.0.0 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (664) hide show
  1. package/common/archive/commons/get-function-entry.d.ts +2 -0
  2. package/common/archive/commons/get-function-entry.d.ts.map +1 -0
  3. package/common/archive/commons/get-function-entry.js +10 -0
  4. package/common/archive/commons/get-function-entry.js.map +1 -0
  5. package/common/archive/commons/get-logical-name.d.ts +2 -0
  6. package/common/archive/commons/get-logical-name.d.ts.map +1 -0
  7. package/common/archive/commons/get-logical-name.js +6 -0
  8. package/common/archive/commons/get-logical-name.js.map +1 -0
  9. package/common/archive/commons/naming/get-deploy-config.d.ts +2 -0
  10. package/common/archive/commons/naming/get-deploy-config.d.ts.map +1 -0
  11. package/common/archive/commons/naming/get-deploy-config.js +7 -0
  12. package/common/archive/commons/naming/get-deploy-config.js.map +1 -0
  13. package/common/archive/commons/naming/get-domain.d.ts +2 -0
  14. package/common/archive/commons/naming/get-domain.d.ts.map +1 -0
  15. package/common/archive/commons/naming/get-domain.js +15 -0
  16. package/common/archive/commons/naming/get-domain.js.map +1 -0
  17. package/common/archive/commons/naming/get-resource-name.d.ts +2 -0
  18. package/common/archive/commons/naming/get-resource-name.d.ts.map +1 -0
  19. package/common/archive/commons/naming/get-resource-name.js +73 -0
  20. package/common/archive/commons/naming/get-resource-name.js.map +1 -0
  21. package/common/archive/commons/naming/get-service-name.d.ts +2 -0
  22. package/common/archive/commons/naming/get-service-name.d.ts.map +1 -0
  23. package/common/archive/commons/naming/get-service-name.js +14 -0
  24. package/common/archive/commons/naming/get-service-name.js.map +1 -0
  25. package/common/archive/commons/naming/index.d.ts +5 -0
  26. package/common/archive/commons/naming/index.d.ts.map +1 -0
  27. package/common/{naming → archive/commons/naming}/index.js +3 -3
  28. package/common/archive/commons/naming/index.js.map +1 -0
  29. package/{script → common/archive/commons/script}/config-command/bootstrap.d.ts +1 -2
  30. package/common/archive/commons/script/config-command/bootstrap.d.ts.map +1 -0
  31. package/{script → common/archive/commons/script}/config-command/bootstrap.js +3 -4
  32. package/common/archive/commons/script/config-command/bootstrap.js.map +1 -0
  33. package/{script → common/archive/commons/script}/config-command/deploy-spa.d.ts +1 -2
  34. package/common/archive/commons/script/config-command/deploy-spa.d.ts.map +1 -0
  35. package/{script → common/archive/commons/script}/config-command/deploy-spa.js +4 -6
  36. package/common/archive/commons/script/config-command/deploy-spa.js.map +1 -0
  37. package/{script → common/archive/commons/script}/config-command/deploy.d.ts +1 -2
  38. package/common/archive/commons/script/config-command/deploy.d.ts.map +1 -0
  39. package/{script → common/archive/commons/script}/config-command/deploy.js +2 -2
  40. package/common/archive/commons/script/config-command/deploy.js.map +1 -0
  41. package/{script → common/archive/commons/script}/config-command/destroy.d.ts +1 -2
  42. package/common/archive/commons/script/config-command/destroy.d.ts.map +1 -0
  43. package/{script → common/archive/commons/script}/config-command/destroy.js +2 -2
  44. package/common/archive/commons/script/config-command/destroy.js.map +1 -0
  45. package/{script → common/archive/commons/script}/config-command/env-ssr.d.ts +1 -2
  46. package/common/archive/commons/script/config-command/env-ssr.d.ts.map +1 -0
  47. package/{script → common/archive/commons/script}/config-command/env-ssr.js +4 -6
  48. package/common/archive/commons/script/config-command/env-ssr.js.map +1 -0
  49. package/{script → common/archive/commons/script}/config-command/invalidation-ssr.d.ts +1 -2
  50. package/common/archive/commons/script/config-command/invalidation-ssr.d.ts.map +1 -0
  51. package/{script → common/archive/commons/script}/config-command/invalidation-ssr.js +4 -6
  52. package/common/archive/commons/script/config-command/invalidation-ssr.js.map +1 -0
  53. package/{script → common/archive/commons/script}/config-command/rds-migration.d.ts +1 -3
  54. package/common/archive/commons/script/config-command/rds-migration.d.ts.map +1 -0
  55. package/common/archive/commons/script/config-command/rds-migration.js.map +1 -0
  56. package/{script → common/archive/commons/script}/config-command/rds-sync.d.ts +1 -2
  57. package/common/archive/commons/script/config-command/rds-sync.d.ts.map +1 -0
  58. package/common/archive/commons/script/config-command/rds-sync.js.map +1 -0
  59. package/{script → common/archive/commons/script}/config-command/ssm-connect.d.ts +1 -2
  60. package/common/archive/commons/script/config-command/ssm-connect.d.ts.map +1 -0
  61. package/common/archive/commons/script/config-command/ssm-connect.js.map +1 -0
  62. package/{script → common/archive/commons/script}/config-command/start-spa.d.ts +1 -2
  63. package/common/archive/commons/script/config-command/start-spa.d.ts.map +1 -0
  64. package/{script → common/archive/commons/script}/config-command/start-spa.js +4 -6
  65. package/common/archive/commons/script/config-command/start-spa.js.map +1 -0
  66. package/{script → common/archive/commons/script}/config-command/start-ssr.d.ts +1 -2
  67. package/common/archive/commons/script/config-command/start-ssr.d.ts.map +1 -0
  68. package/{script → common/archive/commons/script}/config-command/start-ssr.js +4 -6
  69. package/common/archive/commons/script/config-command/start-ssr.js.map +1 -0
  70. package/{script → common/archive/commons/script}/config-command/synth.d.ts +1 -2
  71. package/common/archive/commons/script/config-command/synth.d.ts.map +1 -0
  72. package/{script → common/archive/commons/script}/config-command/synth.js +2 -2
  73. package/common/archive/commons/script/config-command/synth.js.map +1 -0
  74. package/common/archive/commons/script/index.d.ts +7 -0
  75. package/common/archive/commons/script/index.d.ts.map +1 -0
  76. package/common/archive/commons/script/index.js.map +1 -0
  77. package/common/archive/commons/script/output-command/create-user.d.ts +3 -0
  78. package/common/archive/commons/script/output-command/create-user.d.ts.map +1 -0
  79. package/common/archive/commons/script/output-command/create-user.js.map +1 -0
  80. package/common/archive/commons/script/output-command/gen-postman-env.d.ts +3 -0
  81. package/common/archive/commons/script/output-command/gen-postman-env.d.ts.map +1 -0
  82. package/{script → common/archive/commons/script}/output-command/gen-postman-env.js +1 -2
  83. package/common/archive/commons/script/output-command/gen-postman-env.js.map +1 -0
  84. package/common/{synth → archive/commons/synth}/account-mapping.d.ts +1 -1
  85. package/common/archive/commons/synth/account-mapping.d.ts.map +1 -0
  86. package/common/archive/commons/synth/account-mapping.js.map +1 -0
  87. package/common/archive/commons/synth/assume-role.d.ts +2 -0
  88. package/common/archive/commons/synth/assume-role.d.ts.map +1 -0
  89. package/common/archive/commons/synth/assume-role.js +37 -0
  90. package/common/archive/commons/synth/assume-role.js.map +1 -0
  91. package/common/archive/commons/synth/get-global-props.d.ts +2 -0
  92. package/common/archive/commons/synth/get-global-props.d.ts.map +1 -0
  93. package/common/archive/commons/synth/get-global-props.js +42 -0
  94. package/common/archive/commons/synth/get-global-props.js.map +1 -0
  95. package/common/archive/commons/synth/get-service-props.d.ts +2 -0
  96. package/common/archive/commons/synth/get-service-props.d.ts.map +1 -0
  97. package/common/archive/commons/synth/get-service-props.js +18 -0
  98. package/common/archive/commons/synth/get-service-props.js.map +1 -0
  99. package/common/{synth → archive/commons/synth}/index.d.ts +3 -2
  100. package/common/archive/commons/synth/index.d.ts.map +1 -0
  101. package/common/{synth → archive/commons/synth}/index.js +2 -1
  102. package/common/archive/commons/synth/index.js.map +1 -0
  103. package/common/archive/commons/synth/pre-script.d.ts +15 -0
  104. package/common/archive/commons/synth/pre-script.d.ts.map +1 -0
  105. package/common/{synth → archive/commons/synth}/pre-script.js +4 -2
  106. package/common/archive/commons/synth/pre-script.js.map +1 -0
  107. package/common/archive/commons/synth/props-types.d.ts +2 -0
  108. package/common/archive/commons/synth/props-types.d.ts.map +1 -0
  109. package/common/archive/commons/synth/props-types.js +56 -0
  110. package/common/archive/commons/synth/props-types.js.map +1 -0
  111. package/common/archive/commons/synth/synth-error.d.ts +2 -0
  112. package/common/archive/commons/synth/synth-error.d.ts.map +1 -0
  113. package/common/archive/commons/synth/synth-error.js +15 -0
  114. package/common/archive/commons/synth/synth-error.js.map +1 -0
  115. package/{prefab/analytics/events → common/archive/prefabs/analytics/events-analytics}/handlers/ingestion-transform/handler.d.ts +1 -2
  116. package/common/archive/prefabs/analytics/events-analytics/handlers/ingestion-transform/handler.d.ts.map +1 -0
  117. package/common/archive/prefabs/analytics/events-analytics/handlers/ingestion-transform/handler.js.map +1 -0
  118. package/common/archive/prefabs/analytics/events-analytics/index.d.ts +2 -0
  119. package/common/archive/prefabs/analytics/events-analytics/index.d.ts.map +1 -0
  120. package/common/archive/prefabs/analytics/events-analytics/index.js +180 -0
  121. package/common/archive/prefabs/analytics/events-analytics/index.js.map +1 -0
  122. package/common/archive/prefabs/analytics/index.d.ts +2 -0
  123. package/common/archive/prefabs/analytics/index.d.ts.map +1 -0
  124. package/common/archive/prefabs/analytics/index.js +4 -0
  125. package/common/archive/prefabs/analytics/index.js.map +1 -0
  126. package/common/archive/prefabs/app-sync/index.d.ts +2 -0
  127. package/common/archive/prefabs/app-sync/index.d.ts.map +1 -0
  128. package/common/archive/prefabs/app-sync/index.js +104 -0
  129. package/common/archive/prefabs/app-sync/index.js.map +1 -0
  130. package/common/archive/prefabs/app-sync/resolver-aggregate.d.ts +2 -0
  131. package/common/archive/prefabs/app-sync/resolver-aggregate.d.ts.map +1 -0
  132. package/common/archive/prefabs/app-sync/resolver-aggregate.js +128 -0
  133. package/common/archive/prefabs/app-sync/resolver-aggregate.js.map +1 -0
  134. package/common/archive/prefabs/app-sync/types.d.ts +2 -0
  135. package/common/archive/prefabs/app-sync/types.d.ts.map +1 -0
  136. package/common/archive/prefabs/app-sync/types.js +28 -0
  137. package/common/archive/prefabs/app-sync/types.js.map +1 -0
  138. package/common/archive/prefabs/dns-domain-ref/index.d.ts +2 -0
  139. package/common/archive/prefabs/dns-domain-ref/index.d.ts.map +1 -0
  140. package/common/archive/prefabs/dns-domain-ref/index.js +26 -0
  141. package/common/archive/prefabs/dns-domain-ref/index.js.map +1 -0
  142. package/common/helpers/deep-merge.d.ts +4 -0
  143. package/common/helpers/deep-merge.d.ts.map +1 -0
  144. package/common/helpers/deep-merge.js +58 -0
  145. package/common/helpers/deep-merge.js.map +1 -0
  146. package/common/helpers/index.d.ts +4 -0
  147. package/common/helpers/index.d.ts.map +1 -0
  148. package/{prefab/compute/function/api-function → common/helpers}/index.js +3 -2
  149. package/common/helpers/index.js.map +1 -0
  150. package/common/helpers/string-parser.d.ts +7 -0
  151. package/common/helpers/string-parser.d.ts.map +1 -0
  152. package/common/helpers/string-parser.js +52 -0
  153. package/common/helpers/string-parser.js.map +1 -0
  154. package/common/helpers/types.d.ts +7 -0
  155. package/common/helpers/types.d.ts.map +1 -0
  156. package/common/helpers/types.js.map +1 -0
  157. package/common/index.d.ts +4 -6
  158. package/common/index.d.ts.map +1 -1
  159. package/common/index.js +3 -5
  160. package/common/index.js.map +1 -1
  161. package/common/main/index.d.ts +5 -0
  162. package/common/main/index.d.ts.map +1 -0
  163. package/{prefab/compute/function/cognito-function → common/main}/index.js +4 -2
  164. package/common/main/index.js.map +1 -0
  165. package/common/{modifier.d.ts → main/mods.d.ts} +1 -2
  166. package/common/main/mods.d.ts.map +1 -0
  167. package/common/{modifier.js → main/mods.js} +1 -1
  168. package/common/{modifier.js.map → main/mods.js.map} +1 -1
  169. package/common/main/prefab.d.ts +21 -0
  170. package/common/main/prefab.d.ts.map +1 -0
  171. package/common/main/prefab.js +29 -0
  172. package/common/main/prefab.js.map +1 -0
  173. package/common/main/takumi-app.d.ts +18 -0
  174. package/common/main/takumi-app.d.ts.map +1 -0
  175. package/common/{coordinator.js → main/takumi-app.js} +31 -31
  176. package/common/main/takumi-app.js.map +1 -0
  177. package/common/main/takumi-stack.d.ts +14 -0
  178. package/common/main/takumi-stack.d.ts.map +1 -0
  179. package/common/main/takumi-stack.js +30 -0
  180. package/common/main/takumi-stack.js.map +1 -0
  181. package/common/props/default-config.d.ts +3 -0
  182. package/common/props/default-config.d.ts.map +1 -0
  183. package/common/props/default-config.js +21 -0
  184. package/common/props/default-config.js.map +1 -0
  185. package/common/props/global-config.d.ts +40 -0
  186. package/common/props/global-config.d.ts.map +1 -0
  187. package/common/{synth/props-types.js → props/global-config.js} +1 -1
  188. package/common/props/global-config.js.map +1 -0
  189. package/common/props/global-props.d.ts +12 -0
  190. package/common/props/global-props.d.ts.map +1 -0
  191. package/common/props/global-props.js +41 -0
  192. package/common/props/global-props.js.map +1 -0
  193. package/common/props/index.d.ts +6 -0
  194. package/common/props/index.d.ts.map +1 -0
  195. package/common/props/index.js +22 -0
  196. package/common/props/index.js.map +1 -0
  197. package/common/props/naming.d.ts +38 -0
  198. package/common/props/naming.d.ts.map +1 -0
  199. package/common/props/naming.js +88 -0
  200. package/common/props/naming.js.map +1 -0
  201. package/common/props/prefab-props.d.ts +14 -0
  202. package/common/props/prefab-props.d.ts.map +1 -0
  203. package/common/props/prefab-props.js +37 -0
  204. package/common/props/prefab-props.js.map +1 -0
  205. package/common/props/stack-props.d.ts +9 -0
  206. package/common/props/stack-props.d.ts.map +1 -0
  207. package/common/props/stack-props.js +16 -0
  208. package/common/props/stack-props.js.map +1 -0
  209. package/index.d.ts +1 -2
  210. package/index.d.ts.map +1 -1
  211. package/index.js +1 -1
  212. package/index.js.map +1 -1
  213. package/package.json +3 -6
  214. package/prefab/auth/cognito-user-pool/index.d.ts +43 -0
  215. package/prefab/auth/cognito-user-pool/index.d.ts.map +1 -0
  216. package/prefab/auth/{cognito-pool → cognito-user-pool}/index.js +94 -102
  217. package/prefab/auth/cognito-user-pool/index.js.map +1 -0
  218. package/prefab/auth/index.d.ts +2 -2
  219. package/prefab/auth/index.d.ts.map +1 -1
  220. package/prefab/auth/index.js +1 -1
  221. package/prefab/auth/index.js.map +1 -1
  222. package/prefab/cdn/api/index.d.ts +54 -0
  223. package/prefab/cdn/api/index.d.ts.map +1 -0
  224. package/prefab/cdn/{cdn-api → api}/index.js +75 -49
  225. package/prefab/cdn/api/index.js.map +1 -0
  226. package/prefab/cdn/assets/index.d.ts +26 -0
  227. package/prefab/cdn/assets/index.d.ts.map +1 -0
  228. package/prefab/cdn/assets/index.js +110 -0
  229. package/prefab/cdn/assets/index.js.map +1 -0
  230. package/prefab/cdn/index.d.ts +4 -5
  231. package/prefab/cdn/index.d.ts.map +1 -1
  232. package/prefab/cdn/index.js +3 -4
  233. package/prefab/cdn/index.js.map +1 -1
  234. package/prefab/cdn/web/index.d.ts +31 -0
  235. package/prefab/cdn/web/index.d.ts.map +1 -0
  236. package/prefab/cdn/web/index.js +149 -0
  237. package/prefab/cdn/web/index.js.map +1 -0
  238. package/prefab/compute/ecs/cluster.d.ts +19 -0
  239. package/prefab/compute/ecs/cluster.d.ts.map +1 -0
  240. package/prefab/compute/ecs/cluster.js +21 -0
  241. package/prefab/compute/ecs/cluster.js.map +1 -0
  242. package/prefab/compute/{fargate → ecs}/index.d.ts +1 -1
  243. package/prefab/compute/ecs/index.d.ts.map +1 -0
  244. package/prefab/compute/ecs/index.js.map +1 -0
  245. package/prefab/compute/ecs/service.d.ts +44 -0
  246. package/prefab/compute/ecs/service.d.ts.map +1 -0
  247. package/prefab/compute/ecs/service.js +98 -0
  248. package/prefab/compute/ecs/service.js.map +1 -0
  249. package/prefab/compute/function/api/index.d.ts +21 -0
  250. package/prefab/compute/function/api/index.d.ts.map +1 -0
  251. package/prefab/compute/function/api/index.js +40 -0
  252. package/prefab/compute/function/api/index.js.map +1 -0
  253. package/prefab/compute/function/base/index.d.ts +34 -0
  254. package/prefab/compute/function/base/index.d.ts.map +1 -0
  255. package/prefab/compute/function/base/index.js +76 -0
  256. package/prefab/compute/function/base/index.js.map +1 -0
  257. package/prefab/compute/function/cognito/index.d.ts +20 -0
  258. package/prefab/compute/function/cognito/index.d.ts.map +1 -0
  259. package/prefab/compute/function/cognito/index.js +35 -0
  260. package/prefab/compute/function/cognito/index.js.map +1 -0
  261. package/prefab/compute/function/cron/index.d.ts +20 -0
  262. package/prefab/compute/function/cron/index.d.ts.map +1 -0
  263. package/prefab/compute/function/cron/index.js +30 -0
  264. package/prefab/compute/function/cron/index.js.map +1 -0
  265. package/prefab/compute/function/event/index.d.ts +20 -0
  266. package/prefab/compute/function/event/index.d.ts.map +1 -0
  267. package/prefab/compute/function/event/index.js +38 -0
  268. package/prefab/compute/function/event/index.js.map +1 -0
  269. package/prefab/compute/function/index.d.ts +9 -8
  270. package/prefab/compute/function/index.d.ts.map +1 -1
  271. package/prefab/compute/function/index.js +8 -7
  272. package/prefab/compute/function/index.js.map +1 -1
  273. package/prefab/compute/function/queue/index.d.ts +19 -0
  274. package/prefab/compute/function/queue/index.d.ts.map +1 -0
  275. package/prefab/compute/function/queue/index.js +32 -0
  276. package/prefab/compute/function/queue/index.js.map +1 -0
  277. package/prefab/compute/function/scheduled/index.d.ts +21 -0
  278. package/prefab/compute/function/scheduled/index.d.ts.map +1 -0
  279. package/prefab/compute/function/scheduled/index.js +56 -0
  280. package/prefab/compute/function/scheduled/index.js.map +1 -0
  281. package/prefab/compute/function/topic/index.d.ts +20 -0
  282. package/prefab/compute/function/topic/index.d.ts.map +1 -0
  283. package/prefab/compute/function/topic/index.js +30 -0
  284. package/prefab/compute/function/topic/index.js.map +1 -0
  285. package/prefab/compute/index.d.ts +1 -2
  286. package/prefab/compute/index.d.ts.map +1 -1
  287. package/prefab/compute/index.js +1 -1
  288. package/prefab/compute/index.js.map +1 -1
  289. package/prefab/database/dynamo/index.d.ts +18 -10
  290. package/prefab/database/dynamo/index.d.ts.map +1 -1
  291. package/prefab/database/dynamo/index.js +41 -89
  292. package/prefab/database/dynamo/index.js.map +1 -1
  293. package/prefab/database/index.d.ts +1 -1
  294. package/prefab/database/rds/handlers/start-cluster/handler.d.ts +1 -1
  295. package/prefab/database/rds/handlers/stop-cluster/handler.d.ts +1 -1
  296. package/prefab/database/rds/index.d.ts +74 -46
  297. package/prefab/database/rds/index.d.ts.map +1 -1
  298. package/prefab/database/rds/index.js +207 -160
  299. package/prefab/database/rds/index.js.map +1 -1
  300. package/prefab/database/timestream/index.d.ts +1 -1
  301. package/prefab/database/timestream/timestream-database.d.ts +14 -11
  302. package/prefab/database/timestream/timestream-database.d.ts.map +1 -1
  303. package/prefab/database/timestream/timestream-database.js +9 -7
  304. package/prefab/database/timestream/timestream-database.js.map +1 -1
  305. package/prefab/database/timestream/timestream-table.d.ts +21 -21
  306. package/prefab/database/timestream/timestream-table.d.ts.map +1 -1
  307. package/prefab/database/timestream/timestream-table.js +22 -22
  308. package/prefab/database/timestream/timestream-table.js.map +1 -1
  309. package/prefab/gateway/alb-public/index.d.ts +36 -37
  310. package/prefab/gateway/alb-public/index.d.ts.map +1 -1
  311. package/prefab/gateway/alb-public/index.js +55 -48
  312. package/prefab/gateway/alb-public/index.js.map +1 -1
  313. package/prefab/gateway/api-gateway/api-http.d.ts +29 -18
  314. package/prefab/gateway/api-gateway/api-http.d.ts.map +1 -1
  315. package/prefab/gateway/api-gateway/api-http.js +76 -29
  316. package/prefab/gateway/api-gateway/api-http.js.map +1 -1
  317. package/prefab/gateway/api-gateway/api-rest.d.ts +41 -22
  318. package/prefab/gateway/api-gateway/api-rest.d.ts.map +1 -1
  319. package/prefab/gateway/api-gateway/api-rest.js +63 -40
  320. package/prefab/gateway/api-gateway/api-rest.js.map +1 -1
  321. package/prefab/gateway/api-gateway/index.d.ts +1 -1
  322. package/prefab/gateway/index.d.ts +1 -2
  323. package/prefab/gateway/index.d.ts.map +1 -1
  324. package/prefab/gateway/index.js +1 -1
  325. package/prefab/gateway/index.js.map +1 -1
  326. package/prefab/index.d.ts +2 -2
  327. package/prefab/index.d.ts.map +1 -1
  328. package/prefab/index.js +1 -1
  329. package/prefab/index.js.map +1 -1
  330. package/prefab/integration/event-bus/index.d.ts +21 -17
  331. package/prefab/integration/event-bus/index.d.ts.map +1 -1
  332. package/prefab/integration/event-bus/index.js +36 -29
  333. package/prefab/integration/event-bus/index.js.map +1 -1
  334. package/prefab/integration/index.d.ts +1 -1
  335. package/prefab/integration/queue/index.d.ts +26 -18
  336. package/prefab/integration/queue/index.d.ts.map +1 -1
  337. package/prefab/integration/queue/index.js +50 -47
  338. package/prefab/integration/queue/index.js.map +1 -1
  339. package/prefab/integration/topic/index.d.ts +23 -18
  340. package/prefab/integration/topic/index.d.ts.map +1 -1
  341. package/prefab/integration/topic/index.js +23 -29
  342. package/prefab/integration/topic/index.js.map +1 -1
  343. package/prefab/networking/certificate/index.d.ts +19 -0
  344. package/prefab/networking/certificate/index.d.ts.map +1 -0
  345. package/prefab/networking/certificate/index.js +39 -0
  346. package/prefab/networking/certificate/index.js.map +1 -0
  347. package/prefab/networking/hosted-zone/index.d.ts +21 -0
  348. package/prefab/networking/hosted-zone/index.d.ts.map +1 -0
  349. package/prefab/networking/hosted-zone/index.js +38 -0
  350. package/prefab/networking/hosted-zone/index.js.map +1 -0
  351. package/prefab/networking/index.d.ts +3 -4
  352. package/prefab/networking/index.d.ts.map +1 -1
  353. package/prefab/networking/index.js +2 -3
  354. package/prefab/networking/index.js.map +1 -1
  355. package/prefab/networking/vpc/index.d.ts +13 -16
  356. package/prefab/networking/vpc/index.d.ts.map +1 -1
  357. package/prefab/networking/vpc/index.js +10 -18
  358. package/prefab/networking/vpc/index.js.map +1 -1
  359. package/prefab/networking/waf/index.d.ts +15 -12
  360. package/prefab/networking/waf/index.d.ts.map +1 -1
  361. package/prefab/networking/waf/index.js +11 -11
  362. package/prefab/networking/waf/index.js.map +1 -1
  363. package/prefab/secrets/index.d.ts +3 -0
  364. package/prefab/secrets/index.d.ts.map +1 -0
  365. package/prefab/{analytics → secrets}/index.js +2 -1
  366. package/prefab/secrets/index.js.map +1 -0
  367. package/prefab/secrets/sm-secret/index.d.ts +22 -0
  368. package/prefab/secrets/sm-secret/index.d.ts.map +1 -0
  369. package/prefab/secrets/sm-secret/index.js +39 -0
  370. package/prefab/secrets/sm-secret/index.js.map +1 -0
  371. package/prefab/secrets/ssm-parameter/index.d.ts +23 -0
  372. package/prefab/secrets/ssm-parameter/index.d.ts.map +1 -0
  373. package/prefab/secrets/ssm-parameter/index.js +43 -0
  374. package/prefab/secrets/ssm-parameter/index.js.map +1 -0
  375. package/prefab/storage/bucket/index.d.ts +42 -3
  376. package/prefab/storage/bucket/index.d.ts.map +1 -1
  377. package/prefab/storage/bucket/index.js +61 -16
  378. package/prefab/storage/bucket/index.js.map +1 -1
  379. package/prefab/storage/index.d.ts +1 -1
  380. package/prefab/utils/deploy-pipeline/catalog/integrations/index.d.ts +1 -1
  381. package/prefab/utils/deploy-pipeline/catalog/integrations/slack.d.ts +4 -4
  382. package/prefab/utils/deploy-pipeline/catalog/integrations/slack.d.ts.map +1 -1
  383. package/prefab/utils/deploy-pipeline/entities/index.d.ts +23 -23
  384. package/prefab/utils/deploy-pipeline/index.d.ts +2 -15
  385. package/prefab/utils/deploy-pipeline/index.d.ts.map +1 -1
  386. package/prefab/utils/deploy-pipeline/index.js +159 -169
  387. package/prefab/utils/deploy-pipeline/index.js.map +1 -1
  388. package/prefab/utils/deploy-pipeline/platform/get-pipeline-detail.d.ts +3 -3
  389. package/prefab/utils/deploy-pipeline/platform/get-slack-payload.d.ts +1 -2
  390. package/prefab/utils/deploy-pipeline/platform/get-slack-payload.d.ts.map +1 -1
  391. package/prefab/utils/deploy-pipeline/platform/get-slack-payload.js.map +1 -1
  392. package/prefab/utils/deploy-pipeline/platform/send-to-slack.d.ts.map +1 -1
  393. package/prefab/utils/deploy-pipeline/platform/send-to-slack.js.map +1 -1
  394. package/prefab/utils/exports.d.ts +4 -0
  395. package/prefab/utils/exports.d.ts.map +1 -0
  396. package/prefab/utils/exports.js +26 -0
  397. package/prefab/utils/exports.js.map +1 -0
  398. package/prefab/utils/frontend-builder/index.d.ts +21 -0
  399. package/prefab/utils/frontend-builder/index.d.ts.map +1 -0
  400. package/prefab/utils/frontend-builder/index.js +54 -0
  401. package/prefab/utils/frontend-builder/index.js.map +1 -0
  402. package/prefab/utils/index.d.ts +3 -3
  403. package/prefab/utils/index.d.ts.map +1 -1
  404. package/prefab/utils/index.js +2 -2
  405. package/prefab/utils/index.js.map +1 -1
  406. package/prefab/utils/ses/index.d.ts +20 -21
  407. package/prefab/utils/ses/index.d.ts.map +1 -1
  408. package/prefab/utils/ses/index.js +33 -53
  409. package/prefab/utils/ses/index.js.map +1 -1
  410. package/readme.md +78 -0
  411. package/tsconfig.tsbuildinfo +1 -1
  412. package/common/coordinator.d.ts +0 -28
  413. package/common/coordinator.d.ts.map +0 -1
  414. package/common/coordinator.js.map +0 -1
  415. package/common/modifier.d.ts.map +0 -1
  416. package/common/naming/get-deploy-config.d.ts +0 -9
  417. package/common/naming/get-deploy-config.d.ts.map +0 -1
  418. package/common/naming/get-deploy-config.js +0 -8
  419. package/common/naming/get-deploy-config.js.map +0 -1
  420. package/common/naming/get-domain.d.ts +0 -9
  421. package/common/naming/get-domain.d.ts.map +0 -1
  422. package/common/naming/get-domain.js +0 -13
  423. package/common/naming/get-domain.js.map +0 -1
  424. package/common/naming/get-function-entry.d.ts +0 -4
  425. package/common/naming/get-function-entry.d.ts.map +0 -1
  426. package/common/naming/get-function-entry.js +0 -14
  427. package/common/naming/get-function-entry.js.map +0 -1
  428. package/common/naming/get-logical-name.d.ts +0 -2
  429. package/common/naming/get-logical-name.d.ts.map +0 -1
  430. package/common/naming/get-logical-name.js +0 -8
  431. package/common/naming/get-logical-name.js.map +0 -1
  432. package/common/naming/get-resource-name.d.ts +0 -47
  433. package/common/naming/get-resource-name.d.ts.map +0 -1
  434. package/common/naming/get-resource-name.js +0 -38
  435. package/common/naming/get-resource-name.js.map +0 -1
  436. package/common/naming/get-service-name.d.ts +0 -10
  437. package/common/naming/get-service-name.d.ts.map +0 -1
  438. package/common/naming/get-service-name.js +0 -10
  439. package/common/naming/get-service-name.js.map +0 -1
  440. package/common/naming/index.d.ts +0 -8
  441. package/common/naming/index.d.ts.map +0 -1
  442. package/common/naming/index.js.map +0 -1
  443. package/common/naming/string-parser.d.ts +0 -4
  444. package/common/naming/string-parser.d.ts.map +0 -1
  445. package/common/naming/string-parser.js +0 -22
  446. package/common/naming/string-parser.js.map +0 -1
  447. package/common/service.d.ts +0 -29
  448. package/common/service.d.ts.map +0 -1
  449. package/common/service.js +0 -28
  450. package/common/service.js.map +0 -1
  451. package/common/synth/account-mapping.d.ts.map +0 -1
  452. package/common/synth/account-mapping.js.map +0 -1
  453. package/common/synth/assume-role.d.ts +0 -18
  454. package/common/synth/assume-role.d.ts.map +0 -1
  455. package/common/synth/assume-role.js +0 -25
  456. package/common/synth/assume-role.js.map +0 -1
  457. package/common/synth/get-global-props.d.ts +0 -16
  458. package/common/synth/get-global-props.d.ts.map +0 -1
  459. package/common/synth/get-global-props.js +0 -34
  460. package/common/synth/get-global-props.js.map +0 -1
  461. package/common/synth/get-service-props.d.ts +0 -11
  462. package/common/synth/get-service-props.d.ts.map +0 -1
  463. package/common/synth/get-service-props.js +0 -12
  464. package/common/synth/get-service-props.js.map +0 -1
  465. package/common/synth/index.d.ts.map +0 -1
  466. package/common/synth/index.js.map +0 -1
  467. package/common/synth/pre-script.d.ts +0 -32
  468. package/common/synth/pre-script.d.ts.map +0 -1
  469. package/common/synth/pre-script.js.map +0 -1
  470. package/common/synth/props-types.d.ts +0 -60
  471. package/common/synth/props-types.d.ts.map +0 -1
  472. package/common/synth/props-types.js.map +0 -1
  473. package/common/synth/synth-error.d.ts +0 -8
  474. package/common/synth/synth-error.d.ts.map +0 -1
  475. package/common/synth/synth-error.js +0 -17
  476. package/common/synth/synth-error.js.map +0 -1
  477. package/prefab/analytics/events/handlers/ingestion-transform/handler.d.ts.map +0 -1
  478. package/prefab/analytics/events/handlers/ingestion-transform/handler.js.map +0 -1
  479. package/prefab/analytics/events/index.d.ts +0 -31
  480. package/prefab/analytics/events/index.d.ts.map +0 -1
  481. package/prefab/analytics/events/index.js +0 -163
  482. package/prefab/analytics/events/index.js.map +0 -1
  483. package/prefab/analytics/index.d.ts +0 -2
  484. package/prefab/analytics/index.d.ts.map +0 -1
  485. package/prefab/analytics/index.js.map +0 -1
  486. package/prefab/auth/cognito-pool/index.d.ts +0 -65
  487. package/prefab/auth/cognito-pool/index.d.ts.map +0 -1
  488. package/prefab/auth/cognito-pool/index.js.map +0 -1
  489. package/prefab/cdn/cdn-api/index.d.ts +0 -38
  490. package/prefab/cdn/cdn-api/index.d.ts.map +0 -1
  491. package/prefab/cdn/cdn-api/index.js.map +0 -1
  492. package/prefab/cdn/cdn-asset/index.d.ts +0 -27
  493. package/prefab/cdn/cdn-asset/index.d.ts.map +0 -1
  494. package/prefab/cdn/cdn-asset/index.js +0 -96
  495. package/prefab/cdn/cdn-asset/index.js.map +0 -1
  496. package/prefab/cdn/cdn-spa/index.d.ts +0 -27
  497. package/prefab/cdn/cdn-spa/index.d.ts.map +0 -1
  498. package/prefab/cdn/cdn-spa/index.js +0 -138
  499. package/prefab/cdn/cdn-spa/index.js.map +0 -1
  500. package/prefab/cdn/cdn-ssr/index.d.ts +0 -36
  501. package/prefab/cdn/cdn-ssr/index.d.ts.map +0 -1
  502. package/prefab/cdn/cdn-ssr/index.js +0 -271
  503. package/prefab/cdn/cdn-ssr/index.js.map +0 -1
  504. package/prefab/compute/fargate/cluster.d.ts +0 -16
  505. package/prefab/compute/fargate/cluster.d.ts.map +0 -1
  506. package/prefab/compute/fargate/cluster.js +0 -42
  507. package/prefab/compute/fargate/cluster.js.map +0 -1
  508. package/prefab/compute/fargate/index.d.ts.map +0 -1
  509. package/prefab/compute/fargate/index.js.map +0 -1
  510. package/prefab/compute/fargate/service.d.ts +0 -49
  511. package/prefab/compute/fargate/service.d.ts.map +0 -1
  512. package/prefab/compute/fargate/service.js +0 -109
  513. package/prefab/compute/fargate/service.js.map +0 -1
  514. package/prefab/compute/function/api-function/api-aggregate.d.ts +0 -32
  515. package/prefab/compute/function/api-function/api-aggregate.d.ts.map +0 -1
  516. package/prefab/compute/function/api-function/api-aggregate.js +0 -54
  517. package/prefab/compute/function/api-function/api-aggregate.js.map +0 -1
  518. package/prefab/compute/function/api-function/api-function.d.ts +0 -22
  519. package/prefab/compute/function/api-function/api-function.d.ts.map +0 -1
  520. package/prefab/compute/function/api-function/api-function.js +0 -45
  521. package/prefab/compute/function/api-function/api-function.js.map +0 -1
  522. package/prefab/compute/function/api-function/index.d.ts +0 -3
  523. package/prefab/compute/function/api-function/index.d.ts.map +0 -1
  524. package/prefab/compute/function/api-function/index.js.map +0 -1
  525. package/prefab/compute/function/base-function/index.d.ts +0 -33
  526. package/prefab/compute/function/base-function/index.d.ts.map +0 -1
  527. package/prefab/compute/function/base-function/index.js +0 -70
  528. package/prefab/compute/function/base-function/index.js.map +0 -1
  529. package/prefab/compute/function/cognito-function/cognito-aggregate.d.ts +0 -18
  530. package/prefab/compute/function/cognito-function/cognito-aggregate.d.ts.map +0 -1
  531. package/prefab/compute/function/cognito-function/cognito-aggregate.js +0 -22
  532. package/prefab/compute/function/cognito-function/cognito-aggregate.js.map +0 -1
  533. package/prefab/compute/function/cognito-function/cognito-function.d.ts +0 -19
  534. package/prefab/compute/function/cognito-function/cognito-function.d.ts.map +0 -1
  535. package/prefab/compute/function/cognito-function/cognito-function.js +0 -24
  536. package/prefab/compute/function/cognito-function/cognito-function.js.map +0 -1
  537. package/prefab/compute/function/cognito-function/index.d.ts +0 -3
  538. package/prefab/compute/function/cognito-function/index.d.ts.map +0 -1
  539. package/prefab/compute/function/cognito-function/index.js.map +0 -1
  540. package/prefab/compute/function/cron-function/cron-aggregate.d.ts +0 -17
  541. package/prefab/compute/function/cron-function/cron-aggregate.d.ts.map +0 -1
  542. package/prefab/compute/function/cron-function/cron-aggregate.js +0 -22
  543. package/prefab/compute/function/cron-function/cron-aggregate.js.map +0 -1
  544. package/prefab/compute/function/cron-function/cron-function.d.ts +0 -17
  545. package/prefab/compute/function/cron-function/cron-function.d.ts.map +0 -1
  546. package/prefab/compute/function/cron-function/cron-function.js +0 -24
  547. package/prefab/compute/function/cron-function/cron-function.js.map +0 -1
  548. package/prefab/compute/function/cron-function/index.d.ts +0 -3
  549. package/prefab/compute/function/cron-function/index.d.ts.map +0 -1
  550. package/prefab/compute/function/cron-function/index.js +0 -19
  551. package/prefab/compute/function/cron-function/index.js.map +0 -1
  552. package/prefab/compute/function/event-function/event-aggregate.d.ts +0 -20
  553. package/prefab/compute/function/event-function/event-aggregate.d.ts.map +0 -1
  554. package/prefab/compute/function/event-function/event-aggregate.js +0 -25
  555. package/prefab/compute/function/event-function/event-aggregate.js.map +0 -1
  556. package/prefab/compute/function/event-function/event-function.d.ts +0 -14
  557. package/prefab/compute/function/event-function/event-function.d.ts.map +0 -1
  558. package/prefab/compute/function/event-function/event-function.js +0 -33
  559. package/prefab/compute/function/event-function/event-function.js.map +0 -1
  560. package/prefab/compute/function/event-function/index.d.ts +0 -3
  561. package/prefab/compute/function/event-function/index.d.ts.map +0 -1
  562. package/prefab/compute/function/event-function/index.js +0 -19
  563. package/prefab/compute/function/event-function/index.js.map +0 -1
  564. package/prefab/compute/function/queue-function/index.d.ts +0 -25
  565. package/prefab/compute/function/queue-function/index.d.ts.map +0 -1
  566. package/prefab/compute/function/queue-function/index.js +0 -46
  567. package/prefab/compute/function/queue-function/index.js.map +0 -1
  568. package/prefab/compute/function/topic-function/index.d.ts +0 -23
  569. package/prefab/compute/function/topic-function/index.d.ts.map +0 -1
  570. package/prefab/compute/function/topic-function/index.js +0 -23
  571. package/prefab/compute/function/topic-function/index.js.map +0 -1
  572. package/prefab/gateway/app-sync/index.d.ts +0 -36
  573. package/prefab/gateway/app-sync/index.d.ts.map +0 -1
  574. package/prefab/gateway/app-sync/index.js +0 -114
  575. package/prefab/gateway/app-sync/index.js.map +0 -1
  576. package/prefab/gateway/app-sync/resolver-aggregate.d.ts +0 -33
  577. package/prefab/gateway/app-sync/resolver-aggregate.d.ts.map +0 -1
  578. package/prefab/gateway/app-sync/resolver-aggregate.js +0 -125
  579. package/prefab/gateway/app-sync/resolver-aggregate.js.map +0 -1
  580. package/prefab/gateway/app-sync/types.d.ts +0 -29
  581. package/prefab/gateway/app-sync/types.d.ts.map +0 -1
  582. package/prefab/gateway/app-sync/types.js.map +0 -1
  583. package/prefab/networking/dns-domain-ref/index.d.ts +0 -16
  584. package/prefab/networking/dns-domain-ref/index.d.ts.map +0 -1
  585. package/prefab/networking/dns-domain-ref/index.js +0 -28
  586. package/prefab/networking/dns-domain-ref/index.js.map +0 -1
  587. package/prefab/networking/dns-subdomain-certificate/index.d.ts +0 -13
  588. package/prefab/networking/dns-subdomain-certificate/index.d.ts.map +0 -1
  589. package/prefab/networking/dns-subdomain-certificate/index.js +0 -28
  590. package/prefab/networking/dns-subdomain-certificate/index.js.map +0 -1
  591. package/prefab/networking/dns-subdomain-hosted-zone/index.d.ts +0 -12
  592. package/prefab/networking/dns-subdomain-hosted-zone/index.d.ts.map +0 -1
  593. package/prefab/networking/dns-subdomain-hosted-zone/index.js +0 -27
  594. package/prefab/networking/dns-subdomain-hosted-zone/index.js.map +0 -1
  595. package/prefab/storage/bucket/asset-bucket.d.ts +0 -12
  596. package/prefab/storage/bucket/asset-bucket.d.ts.map +0 -1
  597. package/prefab/storage/bucket/asset-bucket.js +0 -19
  598. package/prefab/storage/bucket/asset-bucket.js.map +0 -1
  599. package/prefab/storage/bucket/private-bucket.d.ts +0 -26
  600. package/prefab/storage/bucket/private-bucket.d.ts.map +0 -1
  601. package/prefab/storage/bucket/private-bucket.js +0 -82
  602. package/prefab/storage/bucket/private-bucket.js.map +0 -1
  603. package/prefab/utils/config/frontend-env-builder.d.ts +0 -14
  604. package/prefab/utils/config/frontend-env-builder.d.ts.map +0 -1
  605. package/prefab/utils/config/frontend-env-builder.js +0 -25
  606. package/prefab/utils/config/frontend-env-builder.js.map +0 -1
  607. package/prefab/utils/config/index.d.ts +0 -4
  608. package/prefab/utils/config/index.d.ts.map +0 -1
  609. package/prefab/utils/config/index.js +0 -20
  610. package/prefab/utils/config/index.js.map +0 -1
  611. package/prefab/utils/config/parameter-secret.d.ts +0 -21
  612. package/prefab/utils/config/parameter-secret.d.ts.map +0 -1
  613. package/prefab/utils/config/parameter-secret.js +0 -42
  614. package/prefab/utils/config/parameter-secret.js.map +0 -1
  615. package/prefab/utils/config/runtime-secret.d.ts +0 -20
  616. package/prefab/utils/config/runtime-secret.d.ts.map +0 -1
  617. package/prefab/utils/config/runtime-secret.js +0 -37
  618. package/prefab/utils/config/runtime-secret.js.map +0 -1
  619. package/prefab/utils/duration.d.ts +0 -2
  620. package/prefab/utils/duration.d.ts.map +0 -1
  621. package/prefab/utils/duration.js +0 -6
  622. package/prefab/utils/duration.js.map +0 -1
  623. package/script/config-command/bootstrap.d.ts.map +0 -1
  624. package/script/config-command/bootstrap.js.map +0 -1
  625. package/script/config-command/deploy-spa.d.ts.map +0 -1
  626. package/script/config-command/deploy-spa.js.map +0 -1
  627. package/script/config-command/deploy.d.ts.map +0 -1
  628. package/script/config-command/deploy.js.map +0 -1
  629. package/script/config-command/destroy.d.ts.map +0 -1
  630. package/script/config-command/destroy.js.map +0 -1
  631. package/script/config-command/env-ssr.d.ts.map +0 -1
  632. package/script/config-command/env-ssr.js.map +0 -1
  633. package/script/config-command/invalidation-ssr.d.ts.map +0 -1
  634. package/script/config-command/invalidation-ssr.js.map +0 -1
  635. package/script/config-command/rds-migration.d.ts.map +0 -1
  636. package/script/config-command/rds-migration.js.map +0 -1
  637. package/script/config-command/rds-sync.d.ts.map +0 -1
  638. package/script/config-command/rds-sync.js.map +0 -1
  639. package/script/config-command/ssm-connect.d.ts.map +0 -1
  640. package/script/config-command/ssm-connect.js.map +0 -1
  641. package/script/config-command/start-spa.d.ts.map +0 -1
  642. package/script/config-command/start-spa.js.map +0 -1
  643. package/script/config-command/start-ssr.d.ts.map +0 -1
  644. package/script/config-command/start-ssr.js.map +0 -1
  645. package/script/config-command/synth.d.ts.map +0 -1
  646. package/script/config-command/synth.js.map +0 -1
  647. package/script/index.d.ts +0 -25
  648. package/script/index.d.ts.map +0 -1
  649. package/script/index.js.map +0 -1
  650. package/script/output-command/create-user.d.ts +0 -9
  651. package/script/output-command/create-user.d.ts.map +0 -1
  652. package/script/output-command/create-user.js.map +0 -1
  653. package/script/output-command/gen-postman-env.d.ts +0 -28
  654. package/script/output-command/gen-postman-env.d.ts.map +0 -1
  655. package/script/output-command/gen-postman-env.js.map +0 -1
  656. /package/{script → common/archive/commons/script}/config-command/rds-migration.js +0 -0
  657. /package/{script → common/archive/commons/script}/config-command/rds-sync.js +0 -0
  658. /package/{script → common/archive/commons/script}/config-command/ssm-connect.js +0 -0
  659. /package/{script → common/archive/commons/script}/index.js +0 -0
  660. /package/{script → common/archive/commons/script}/output-command/create-user.js +0 -0
  661. /package/common/{synth → archive/commons/synth}/account-mapping.js +0 -0
  662. /package/{prefab/analytics/events → common/archive/prefabs/analytics/events-analytics}/handlers/ingestion-transform/handler.js +0 -0
  663. /package/{prefab/gateway/app-sync → common/helpers}/types.js +0 -0
  664. /package/prefab/compute/{fargate → ecs}/index.js +0 -0
@@ -1,26 +1,45 @@
1
1
  import * as awsApigateway from 'aws-cdk-lib/aws-apigateway';
2
- import { UserPool } from 'aws-cdk-lib/aws-cognito';
3
2
  import { IFunction } from 'aws-cdk-lib/aws-lambda';
4
- import { Construct } from 'constructs';
5
-
6
- import { ServiceStack } from '../../../common';
7
-
8
- import { CdnApiPrefab } from '../../../prefab/cdn';
9
-
10
- export type ApiRestPrefabParams = {
11
- basePath: string;
12
- cdnApiPrefab?: CdnApiPrefab;
13
- userPool?: UserPool;
14
- customAuthorizerHandler?: IFunction;
15
- stageName?: string;
16
- stageVariables?: Record<string, string>;
17
- httpProxyIntegrationUrl?: string;
18
- apiKeyRequired?: boolean;
3
+ import { ApiDefinition, ApiInterface } from '@takumi-stack/sdk';
4
+ import { BaseCustomConfigs, Prefab, PrefabPropsOverride, TakumiStack } from '../../../common';
5
+ import { CognitoUserPoolPrefab } from '../../auth';
6
+ import { CdnApiPrefab } from '../../cdn';
7
+ import { ApiFunctionsPrefab, FunctionPrefab } from '../../compute';
8
+ export type ApiRestPrefabParams<CustomConfigs extends BaseCustomConfigs = BaseCustomConfigs> = {
9
+ name: string;
10
+ basePath?: string;
11
+ cdnApiPrefab?: CdnApiPrefab<CustomConfigs>;
12
+ authorizerConfig?: {
13
+ cognitoUserPoolPrefab?: CognitoUserPoolPrefab<CustomConfigs>;
14
+ lambdaAuthorizer?: FunctionPrefab<CustomConfigs>;
15
+ };
16
+ deployOptions?: awsApigateway.StageOptions;
17
+ httpProxyIntegration?: {
18
+ httpProxyIntegrationUrl?: string;
19
+ apiKeyRequired?: boolean;
20
+ };
21
+ resourceProps?: {
22
+ cognitoUserPoolPrefab?: Partial<awsApigateway.CognitoUserPoolsAuthorizerProps>;
23
+ lambdaAuthorizer?: Partial<awsApigateway.RequestAuthorizerProps>;
24
+ api?: Partial<awsApigateway.RestApiProps>;
25
+ };
26
+ existingResource?: {
27
+ apiId?: string;
28
+ api?: awsApigateway.RestApi;
29
+ authorizer?: awsApigateway.IAuthorizer;
30
+ };
19
31
  };
20
- export declare class ApiRestPrefab extends Construct {
21
- readonly api: awsApigateway.RestApi;
22
- readonly authorizer: awsApigateway.IAuthorizer;
23
- readonly basePath: awsApigateway.Resource;
24
- constructor(service: ServiceStack, params: ApiRestPrefabParams);
32
+ export declare class ApiRestPrefab<CustomConfigs extends BaseCustomConfigs = BaseCustomConfigs> extends Prefab<ApiRestPrefabParams<CustomConfigs>, CustomConfigs> {
33
+ readonly apiUrl: string;
34
+ readonly basePath: string;
35
+ readonly basePathResource: awsApigateway.Resource;
36
+ readonly api: awsApigateway.RestApi;
37
+ readonly authorizer: awsApigateway.IAuthorizer | undefined;
38
+ constructor(service: TakumiStack<CustomConfigs>, params: ApiRestPrefabParams<CustomConfigs>, propsOverride?: PrefabPropsOverride<CustomConfigs>);
39
+ addPath(params: {
40
+ apiDefinition: ApiDefinition<ApiInterface>;
41
+ apiFunctionsPrefab: ApiFunctionsPrefab<CustomConfigs>;
42
+ lambdaFunction: IFunction;
43
+ }): void;
25
44
  }
26
- //# sourceMappingURL=api-rest.d.ts.map
45
+ //# sourceMappingURL=api-rest.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"api-rest.d.ts","sourceRoot":"","sources":["../../../../prefab/gateway/api-gateway/api-rest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,EAAE,YAAY,EAAmC,MAAM,QAAQ,CAAC;AAEvE,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,uBAAuB,CAAC,EAAE,SAAS,CAAC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,qBAAa,aAAc,SAAQ,SAAS;IAC1C,SAAgB,GAAG,EAAE,aAAa,CAAC,OAAO,CAAC;IAC3C,SAAgB,UAAU,EAAG,aAAa,CAAC,WAAW,CAAC;IACvD,SAAgB,QAAQ,EAAE,aAAa,CAAC,QAAQ,CAAC;gBAErC,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,mBAAmB;CAmE/D"}
1
+ {"version":3,"file":"api-rest.d.ts","sourceRoot":"","sources":["../../../../prefab/gateway/api-gateway/api-rest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEhE,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9F,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEnE,MAAM,MAAM,mBAAmB,CAAC,aAAa,SAAS,iBAAiB,GAAG,iBAAiB,IAAI;IAC7F,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,YAAY,CAAC,aAAa,CAAC,CAAC;IAC3C,gBAAgB,CAAC,EAAE;QACjB,qBAAqB,CAAC,EAAE,qBAAqB,CAAC,aAAa,CAAC,CAAC;QAC7D,gBAAgB,CAAC,EAAE,cAAc,CAAC,aAAa,CAAC,CAAC;KAClD,CAAC;IACF,aAAa,CAAC,EAAE,aAAa,CAAC,YAAY,CAAC;IAC3C,oBAAoB,CAAC,EAAE;QACrB,uBAAuB,CAAC,EAAE,MAAM,CAAC;QACjC,cAAc,CAAC,EAAE,OAAO,CAAC;KAC1B,CAAC;IACF,aAAa,CAAC,EAAE;QACd,qBAAqB,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,+BAA+B,CAAC,CAAC;QAC/E,gBAAgB,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC;QACjE,GAAG,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;KAC3C,CAAC;IACF,gBAAgB,CAAC,EAAE;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,GAAG,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC;QAC5B,UAAU,CAAC,EAAE,aAAa,CAAC,WAAW,CAAC;KACxC,CAAC;CACH,CAAC;AAEF,qBAAa,aAAa,CAAC,aAAa,SAAS,iBAAiB,GAAG,iBAAiB,CAAE,SAAQ,MAAM,CACpG,mBAAmB,CAAC,aAAa,CAAC,EAClC,aAAa,CACd;IACC,SAAgB,MAAM,EAAE,MAAM,CAAC;IAC/B,SAAgB,QAAQ,EAAE,MAAM,CAAC;IACjC,SAAgB,gBAAgB,EAAE,aAAa,CAAC,QAAQ,CAAC;IACzD,SAAgB,GAAG,EAAE,aAAa,CAAC,OAAO,CAAC;IAC3C,SAAgB,UAAU,EAAE,aAAa,CAAC,WAAW,GAAG,SAAS,CAAC;gBAGhE,OAAO,EAAE,WAAW,CAAC,aAAa,CAAC,EACnC,MAAM,EAAE,mBAAmB,CAAC,aAAa,CAAC,EAC1C,aAAa,CAAC,EAAE,mBAAmB,CAAC,aAAa,CAAC;IAwE7C,OAAO,CAAC,MAAM,EAAE;QACrB,aAAa,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;QAC3C,kBAAkB,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;QACtD,cAAc,EAAE,SAAS,CAAC;KAC3B,GAAG,IAAI;CAsBT"}
@@ -26,52 +26,57 @@ Object.defineProperty(exports, "__esModule", { value: true });
26
26
  exports.ApiRestPrefab = void 0;
27
27
  const awsApigateway = __importStar(require("aws-cdk-lib/aws-apigateway"));
28
28
  const aws_cdk_lib_1 = require("aws-cdk-lib");
29
- const constructs_1 = require("constructs");
30
29
  const common_1 = require("../../../common");
31
- class ApiRestPrefab extends constructs_1.Construct {
30
+ class ApiRestPrefab extends common_1.Prefab {
31
+ apiUrl;
32
+ basePath;
33
+ basePathResource;
32
34
  api;
33
35
  authorizer;
34
- basePath;
35
- constructor(service, params) {
36
- super(service, (0, common_1.getLogicalName)(ApiRestPrefab.name));
37
- if (params.userPool) {
38
- this.authorizer = new awsApigateway.CognitoUserPoolsAuthorizer(this, 'Authorizer', {
39
- cognitoUserPools: [params.userPool],
36
+ constructor(service, params, propsOverride) {
37
+ super(ApiRestPrefab.name, service, params, propsOverride);
38
+ if (params.authorizerConfig?.cognitoUserPoolPrefab && params.authorizerConfig?.lambdaAuthorizer) {
39
+ throw new Error('Cannot specify both cognitoUserPoolPrefab and lambdaAuthorizer.');
40
+ }
41
+ this.authorizer = params.existingResource?.authorizer;
42
+ if (params.authorizerConfig?.cognitoUserPoolPrefab) {
43
+ this.authorizer = new awsApigateway.CognitoUserPoolsAuthorizer(this, this.getId('Authorizer'), {
44
+ cognitoUserPools: [params.authorizerConfig.cognitoUserPoolPrefab.userPool],
45
+ ...params.resourceProps?.cognitoUserPoolPrefab,
40
46
  });
41
47
  }
42
- if (params.customAuthorizerHandler) {
43
- this.authorizer = new awsApigateway.RequestAuthorizer(this, 'LambdaAuthorizer', {
48
+ if (params.authorizerConfig?.lambdaAuthorizer) {
49
+ this.authorizer = new awsApigateway.RequestAuthorizer(this, this.getId('LambdaAuthorizer'), {
44
50
  identitySources: ['$request.header.Authorization'],
45
- handler: params.customAuthorizerHandler,
51
+ handler: params.authorizerConfig?.lambdaAuthorizer.lambdaFunction,
52
+ ...params.resourceProps?.lambdaAuthorizer,
46
53
  });
47
54
  }
48
- this.api = new awsApigateway.RestApi(this, 'RestApi', {
49
- restApiName: (0, common_1.getResourceName)('', service.props),
50
- deploy: true,
51
- deployOptions: {
52
- tracingEnabled: true,
53
- stageName: params.stageName || 'default',
54
- variables: params.stageVariables,
55
- },
56
- defaultCorsPreflightOptions: {
57
- allowOrigins: awsApigateway.Cors.ALL_ORIGINS,
58
- },
59
- });
60
- const apiUrl = aws_cdk_lib_1.Fn.join('', [this.api.restApiId, '.execute-api.', service.props.regionName, '.amazonaws.com']);
61
- this.basePath = this.api.root.resourceForPath(params.basePath);
62
- if (params.httpProxyIntegrationUrl) {
63
- const proxy = this.basePath.addProxy({ anyMethod: false });
64
- proxy.addMethod('ANY', new awsApigateway.HttpIntegration(params.httpProxyIntegrationUrl, {
55
+ this.api =
56
+ params.existingResource?.api ||
57
+ new awsApigateway.RestApi(this, this.getId('RestApi'), {
58
+ restApiName: this.getResourceName('rest-api'),
59
+ endpointConfiguration: { types: [awsApigateway.EndpointType.REGIONAL] },
60
+ deploy: true,
61
+ deployOptions: {
62
+ stageName: 'default',
63
+ ...params.deployOptions,
64
+ },
65
+ defaultCorsPreflightOptions: {
66
+ allowOrigins: awsApigateway.Cors.ALL_ORIGINS,
67
+ },
68
+ ...params.resourceProps?.api,
69
+ });
70
+ this.apiUrl = aws_cdk_lib_1.Fn.join('', [this.api.restApiId, '.execute-api.', service.props.regionName, '.amazonaws.com']);
71
+ this.basePath = params.basePath || '/';
72
+ this.basePathResource = this.api.root.resourceForPath(this.basePath);
73
+ if (params.httpProxyIntegration?.httpProxyIntegrationUrl) {
74
+ const proxy = this.basePathResource.addProxy({ anyMethod: false });
75
+ proxy.addMethod('ANY', new awsApigateway.HttpIntegration(params.httpProxyIntegration.httpProxyIntegrationUrl, {
65
76
  httpMethod: 'ANY',
66
77
  proxy: true,
67
78
  options: { requestParameters: { 'integration.request.path.proxy': 'method.request.path.proxy' } },
68
- }), { requestParameters: { 'method.request.path.proxy': true }, apiKeyRequired: params.apiKeyRequired });
69
- // I'm sorry for this, but there isn't a better way to do this...
70
- this.api.methods
71
- .filter((method) => method.httpMethod === 'OPTIONS')
72
- .forEach((m) => {
73
- proxy.node.tryRemoveChild(m.node.id);
74
- });
79
+ }), { requestParameters: { 'method.request.path.proxy': true }, apiKeyRequired: params.httpProxyIntegration.apiKeyRequired });
75
80
  proxy.addCorsPreflight({
76
81
  allowOrigins: ['*'],
77
82
  allowHeaders: ['*'],
@@ -79,11 +84,29 @@ class ApiRestPrefab extends constructs_1.Construct {
79
84
  statusCode: 204,
80
85
  });
81
86
  }
82
- if (params.cdnApiPrefab)
83
- params.cdnApiPrefab.addApiGateway(params.basePath, apiUrl, {
84
- originPath: `/${this.api.deploymentStage.stageName}`,
85
- });
86
- new aws_cdk_lib_1.CfnOutput(this, 'RestApiUrl', { value: apiUrl });
87
+ // If CDN present, add it
88
+ params.cdnApiPrefab?.addApiGateway(this.basePath, this.apiUrl, { originPath: `/${this.api.deploymentStage.stageName}` });
89
+ new aws_cdk_lib_1.CfnOutput(this, this.getId('RestApiUrl'), { value: this.apiUrl });
90
+ }
91
+ addPath(params) {
92
+ const { apiDefinition, apiFunctionsPrefab, lambdaFunction } = params;
93
+ if (!apiDefinition.isPublic && !this.authorizer) {
94
+ throw new Error('Missing Authorizer. Provide one, or change the API to be public (isPublic: true)');
95
+ }
96
+ if (this.basePath !== apiDefinition.basePath) {
97
+ throw new Error('basePath does not match with current ApiGateway basePath');
98
+ }
99
+ const basePath = apiDefinition.basePath === '/' ? '' : apiDefinition.basePath;
100
+ const resourcePath = apiDefinition.path === '/' ? '' : apiDefinition.path;
101
+ const path = `${basePath}${resourcePath}`;
102
+ const resource = new awsApigateway.Resource(apiFunctionsPrefab, this.getId(`${apiDefinition.method}-${path}`), {
103
+ parent: this.basePathResource,
104
+ pathPart: path,
105
+ });
106
+ // resource.addMethod(apiDefinition.method, new awsApigateway.LambdaIntegration(lambdaFunction), {
107
+ // operationName: this.getId(`${apiDefinition.method}-${path}`),
108
+ // ...(apiDefinition.isPublic ? {} : { authorizer: this.authorizer }),
109
+ // });
87
110
  }
88
111
  }
89
112
  exports.ApiRestPrefab = ApiRestPrefab;
@@ -1 +1 @@
1
- {"version":3,"file":"api-rest.js","sourceRoot":"","sources":["../../../../prefab/gateway/api-gateway/api-rest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api-rest.js","sourceRoot":"","sources":["../../../../prefab/gateway/api-gateway/api-rest.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  export * from './api-http';
2
2
  export * from './api-rest';
3
- //# sourceMappingURL=index.d.ts.map
3
+ //# sourceMappingURL=index.d.ts.map
@@ -1,4 +1,3 @@
1
1
  export * from './alb-public';
2
2
  export * from './api-gateway';
3
- export * from './app-sync';
4
- //# sourceMappingURL=index.d.ts.map
3
+ //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../prefab/gateway/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../prefab/gateway/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC"}
@@ -16,5 +16,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./alb-public"), exports);
18
18
  __exportStar(require("./api-gateway"), exports);
19
- __exportStar(require("./app-sync"), exports);
19
+ // export * from './app-sync';
20
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../prefab/gateway/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,gDAA8B;AAC9B,6CAA2B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../prefab/gateway/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,gDAA8B;AAC9B,8BAA8B"}
package/prefab/index.d.ts CHANGED
@@ -1,4 +1,3 @@
1
- export * from './analytics';
2
1
  export * from './auth';
3
2
  export * from './cdn';
4
3
  export * from './compute';
@@ -7,5 +6,6 @@ export * from './gateway';
7
6
  export * from './integration';
8
7
  export * from './networking';
9
8
  export * from './storage';
9
+ export * from './secrets';
10
10
  export * from './utils';
11
- //# sourceMappingURL=index.d.ts.map
11
+ //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../prefab/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,QAAQ,CAAC;AACvB,cAAc,OAAO,CAAC;AACtB,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../prefab/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,OAAO,CAAC;AACtB,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC"}
package/prefab/index.js CHANGED
@@ -14,7 +14,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./analytics"), exports);
18
17
  __exportStar(require("./auth"), exports);
19
18
  __exportStar(require("./cdn"), exports);
20
19
  __exportStar(require("./compute"), exports);
@@ -23,5 +22,6 @@ __exportStar(require("./gateway"), exports);
23
22
  __exportStar(require("./integration"), exports);
24
23
  __exportStar(require("./networking"), exports);
25
24
  __exportStar(require("./storage"), exports);
25
+ __exportStar(require("./secrets"), exports);
26
26
  __exportStar(require("./utils"), exports);
27
27
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../prefab/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,yCAAuB;AACvB,wCAAsB;AACtB,4CAA0B;AAC1B,6CAA2B;AAC3B,4CAA0B;AAC1B,gDAA8B;AAC9B,+CAA6B;AAC7B,4CAA0B;AAC1B,0CAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../prefab/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAuB;AACvB,wCAAsB;AACtB,4CAA0B;AAC1B,6CAA2B;AAC3B,4CAA0B;AAC1B,gDAA8B;AAC9B,+CAA6B;AAC7B,4CAA0B;AAC1B,4CAA0B;AAC1B,0CAAwB"}
@@ -1,20 +1,24 @@
1
- import { IEventBus } from 'aws-cdk-lib/aws-events';
2
- import { NodejsFunction } from 'aws-cdk-lib/aws-lambda-nodejs';
3
- import { Construct } from 'constructs';
4
-
5
- import { ServiceStack, Modifier } from '../../../common';
6
-
1
+ import { CronOptions, EventBusProps, EventPattern, IEventBus } from 'aws-cdk-lib/aws-events';
2
+ import { IFunction } from 'aws-cdk-lib/aws-lambda';
3
+ import { TakumiStack, Modifier, Prefab, PrefabPropsOverride, BaseCustomConfigs } from '../../../common';
7
4
  export type EventBusPrefabParams = {
8
- defaultEventBus?: true;
5
+ name: string;
6
+ useDefaultEventBus?: boolean;
7
+ resourceProps?: {
8
+ eventBus: Partial<EventBusProps>;
9
+ };
10
+ existingResource?: {
11
+ eventBus?: IEventBus;
12
+ };
9
13
  };
10
- export declare class EventBusPrefab extends Construct {
11
- readonly bus: IEventBus;
12
- constructor(service: ServiceStack, params?: EventBusPrefabParams);
13
- useMod(variableName: string | undefined, mods: ((bus: IEventBus) => any)[]): Modifier;
14
- static modifier: {
15
- writer: (bus: IEventBus) => Modifier;
16
- };
17
- useModWriter(variableName?: string): Modifier;
18
- static addBus(lambdaFunction: NodejsFunction, eventBus?: IEventBus): void;
14
+ export declare class EventBusPrefab<CustomConfigs extends BaseCustomConfigs = BaseCustomConfigs> extends Prefab<EventBusPrefabParams, CustomConfigs> {
15
+ readonly eventBus: IEventBus;
16
+ constructor(service: TakumiStack<CustomConfigs>, params: EventBusPrefabParams, propsOverride?: PrefabPropsOverride<CustomConfigs>);
17
+ addRule(name: string, eventPattern: EventPattern, lambdaFunction: IFunction): void;
18
+ addCronRule(name: string, cronOptions: CronOptions, lambdaFunction: IFunction): void;
19
+ static mods: {
20
+ writer: (eventBusPrefab: EventBusPrefab) => Modifier;
21
+ };
22
+ applyMods<K extends keyof typeof EventBusPrefab.mods>(mods: K[], envVar?: string): Modifier;
19
23
  }
20
- //# sourceMappingURL=index.d.ts.map
24
+ //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../prefab/integration/event-bus/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,EAAE,YAAY,EAAmC,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAEjF,MAAM,MAAM,oBAAoB,GAAG;IACjC,eAAe,CAAC,EAAE,IAAI,CAAC;CACxB,CAAC;AACF,qBAAa,cAAe,SAAQ,SAAS;IAC3C,SAAgB,GAAG,EAAE,SAAS,CAAC;gBAEnB,OAAO,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,oBAAoB;IAWzD,MAAM,CAAC,YAAY,oBAAc,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,EAAE,SAAS,KAAK,GAAG,CAAC,EAAE,GAAG,QAAQ;IAQtF,OAAc,QAAQ;sBACN,SAAS,KAAG,QAAQ;MAKlC;IAGK,YAAY,CAAC,YAAY,SAAc,GAAG,QAAQ;WAK3C,MAAM,CAAC,cAAc,EAAE,cAAc,EAAE,QAAQ,CAAC,EAAE,SAAS,GAAG,IAAI;CAMjF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../prefab/integration/event-bus/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAY,aAAa,EAAE,YAAY,EAAE,SAAS,EAAkB,MAAM,wBAAwB,CAAC;AAEvH,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,mBAAmB,EAAE,iBAAiB,EAAkB,MAAM,iBAAiB,CAAC;AAExH,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,aAAa,CAAC,EAAE;QACd,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;KAClC,CAAC;IACF,gBAAgB,CAAC,EAAE;QACjB,QAAQ,CAAC,EAAE,SAAS,CAAC;KACtB,CAAC;CACH,CAAC;AACF,qBAAa,cAAc,CAAC,aAAa,SAAS,iBAAiB,GAAG,iBAAiB,CAAE,SAAQ,MAAM,CACrG,oBAAoB,EACpB,aAAa,CACd;IACC,SAAgB,QAAQ,EAAE,SAAS,CAAC;gBAGlC,OAAO,EAAE,WAAW,CAAC,aAAa,CAAC,EACnC,MAAM,EAAE,oBAAoB,EAC5B,aAAa,CAAC,EAAE,mBAAmB,CAAC,aAAa,CAAC;IAkB7C,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,SAAS;IAQ3E,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,EAAE,SAAS;IAQpF,OAAc,IAAI;iCACS,cAAc,KAAG,QAAQ;MAKlD;IAEK,SAAS,CAAC,CAAC,SAAS,MAAM,OAAO,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,SAAc,GAAG,QAAQ;CAMxG"}
@@ -2,44 +2,51 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.EventBusPrefab = void 0;
4
4
  const aws_events_1 = require("aws-cdk-lib/aws-events");
5
- const constructs_1 = require("constructs");
5
+ const aws_events_targets_1 = require("aws-cdk-lib/aws-events-targets");
6
6
  const common_1 = require("../../../common");
7
- class EventBusPrefab extends constructs_1.Construct {
8
- bus;
9
- constructor(service, params) {
10
- super(service, (0, common_1.getLogicalName)(EventBusPrefab.name));
11
- if (params?.defaultEventBus) {
12
- this.bus = aws_events_1.EventBus.fromEventBusName(service, 'DefaultEventBus', 'default');
13
- }
14
- else {
15
- this.bus = new aws_events_1.EventBus(this, 'bus', { eventBusName: (0, common_1.getResourceName)('', service.props) });
7
+ class EventBusPrefab extends common_1.Prefab {
8
+ eventBus;
9
+ constructor(service, params, propsOverride) {
10
+ super(EventBusPrefab.name, service, params, propsOverride);
11
+ if (params?.existingResource && params.useDefaultEventBus && params.existingResource.eventBus) {
12
+ throw new Error('Cannot specify both useDefaultEventBus and a custom bus at same time');
16
13
  }
14
+ this.eventBus =
15
+ params?.existingResource?.eventBus || params.useDefaultEventBus
16
+ ? aws_events_1.EventBus.fromEventBusName(this, this.getId('default'), 'default')
17
+ : new aws_events_1.EventBus(this, this.getId('bus'), {
18
+ eventBusName: this.getResourceName('bus'),
19
+ ...params?.resourceProps?.eventBus,
20
+ });
17
21
  }
18
22
  // Mods
19
- useMod(variableName = 'EVENT_BUS', mods) {
20
- return (lambda) => {
21
- lambda.addEnvironment(variableName, this.bus.eventBusName);
22
- mods.map((fn) => fn(this.bus)(lambda));
23
- };
23
+ addRule(name, eventPattern, lambdaFunction) {
24
+ new aws_events_1.Rule(this, this.getId(`Rule-${(0, common_1.capFirstLetter)(name)}`), {
25
+ ruleName: this.getResourceName(`${name}-rule`),
26
+ eventBus: this.eventBus,
27
+ eventPattern: eventPattern,
28
+ targets: [new aws_events_targets_1.LambdaFunction(lambdaFunction)],
29
+ });
30
+ }
31
+ addCronRule(name, cronOptions, lambdaFunction) {
32
+ new aws_events_1.Rule(this, this.getId(`Rule-${(0, common_1.capFirstLetter)(name)}`), {
33
+ ruleName: this.getResourceName(`${name}-cron-rule`),
34
+ schedule: aws_events_1.Schedule.cron(cronOptions),
35
+ targets: [new aws_events_targets_1.LambdaFunction(lambdaFunction)],
36
+ });
24
37
  }
25
- // Class Mods
26
- static modifier = {
27
- writer: (bus) => {
38
+ static mods = {
39
+ writer: (eventBusPrefab) => {
28
40
  return (lambda) => {
29
- bus.grantPutEventsTo(lambda);
41
+ eventBusPrefab.eventBus.grantPutEventsTo(lambda);
30
42
  };
31
43
  },
32
44
  };
33
- // Instance Mods
34
- useModWriter(variableName = 'EVENT_BUS') {
35
- return this.useMod(variableName, [EventBusPrefab.modifier.writer]);
36
- }
37
- // addBus is used inside aggregates in order to apply permissions if EventBus is there.
38
- static addBus(lambdaFunction, eventBus) {
39
- if (eventBus instanceof aws_events_1.EventBus) {
40
- eventBus.grantPutEventsTo(lambdaFunction);
41
- lambdaFunction.addEnvironment('EVENT_BUS', eventBus.eventBusName);
42
- }
45
+ applyMods(mods, envVar = 'EVENT_BUS') {
46
+ return (lambda) => {
47
+ lambda.addEnvironment(envVar, this.eventBus.eventBusName);
48
+ mods.map((key) => EventBusPrefab.mods[key](this)(lambda));
49
+ };
43
50
  }
44
51
  }
45
52
  exports.EventBusPrefab = EventBusPrefab;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../prefab/integration/event-bus/index.ts"],"names":[],"mappings":";;;AAAA,uDAA6D;AAE7D,2CAAuC;AAEvC,mCAAiF;AAKjF,MAAa,cAAe,SAAQ,sBAAS;IAC3B,GAAG,CAAY;IAE/B,YAAY,OAAqB,EAAE,MAA6B;QAC9D,KAAK,CAAC,OAAO,EAAE,IAAA,uBAAc,EAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;QAEpD,IAAI,MAAM,EAAE,eAAe,EAAE,CAAC;YAC5B,IAAI,CAAC,GAAG,GAAG,qBAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,iBAAiB,EAAE,SAAS,CAAC,CAAC;QAC9E,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,GAAG,GAAG,IAAI,qBAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,IAAA,wBAAe,EAAC,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC7F,CAAC;IACH,CAAC;IAED,OAAO;IACA,MAAM,CAAC,YAAY,GAAG,WAAW,EAAE,IAAiC;QACzE,OAAO,CAAC,MAAM,EAAE,EAAE;YAChB,MAAM,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAC3D,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QACzC,CAAC,CAAC;IACJ,CAAC;IAED,aAAa;IACN,MAAM,CAAC,QAAQ,GAAG;QACvB,MAAM,EAAE,CAAC,GAAc,EAAY,EAAE;YACnC,OAAO,CAAC,MAAM,EAAE,EAAE;gBAChB,GAAG,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;YAC/B,CAAC,CAAC;QACJ,CAAC;KACF,CAAC;IAEF,gBAAgB;IACT,YAAY,CAAC,YAAY,GAAG,WAAW;QAC5C,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IACrE,CAAC;IAED,uFAAuF;IAChF,MAAM,CAAC,MAAM,CAAC,cAA8B,EAAE,QAAoB;QACvE,IAAI,QAAQ,YAAY,qBAAQ,EAAE,CAAC;YACjC,QAAQ,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;YAC1C,cAAc,CAAC,cAAc,CAAC,WAAW,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;;AAzCH,wCA0CC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../prefab/integration/event-bus/index.ts"],"names":[],"mappings":";;;AAAA,uDAAuH;AACvH,uEAAgE;AAGhE,4CAAwH;AAYxH,MAAa,cAA4E,SAAQ,eAGhG;IACiB,QAAQ,CAAY;IAEpC,YACE,OAAmC,EACnC,MAA4B,EAC5B,aAAkD;QAElD,KAAK,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;QAE3D,IAAI,MAAM,EAAE,gBAAgB,IAAI,MAAM,CAAC,kBAAkB,IAAI,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC;YAC9F,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;QAC1F,CAAC;QAED,IAAI,CAAC,QAAQ;YACX,MAAM,EAAE,gBAAgB,EAAE,QAAQ,IAAI,MAAM,CAAC,kBAAkB;gBAC7D,CAAC,CAAC,qBAAQ,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC;gBACnE,CAAC,CAAC,IAAI,qBAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;oBACpC,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;oBACzC,GAAG,MAAM,EAAE,aAAa,EAAE,QAAQ;iBACnC,CAAC,CAAC;IACX,CAAC;IAED,OAAO;IACA,OAAO,CAAC,IAAY,EAAE,YAA0B,EAAE,cAAyB;QAChF,IAAI,iBAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAA,uBAAc,EAAC,IAAI,CAAC,EAAE,CAAC,EAAE;YACzD,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,OAAO,CAAC;YAC9C,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,YAAY,EAAE,YAAY;YAC1B,OAAO,EAAE,CAAC,IAAI,mCAAc,CAAC,cAAc,CAAC,CAAC;SAC9C,CAAC,CAAC;IACL,CAAC;IACM,WAAW,CAAC,IAAY,EAAE,WAAwB,EAAE,cAAyB;QAClF,IAAI,iBAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAA,uBAAc,EAAC,IAAI,CAAC,EAAE,CAAC,EAAE;YACzD,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,YAAY,CAAC;YACnD,QAAQ,EAAE,qBAAQ,CAAC,IAAI,CAAC,WAAW,CAAC;YACpC,OAAO,EAAE,CAAC,IAAI,mCAAc,CAAC,cAAc,CAAC,CAAC;SAC9C,CAAC,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,IAAI,GAAG;QACnB,MAAM,EAAE,CAAC,cAA8B,EAAY,EAAE;YACnD,OAAO,CAAC,MAAM,EAAE,EAAE;gBAChB,cAAc,CAAC,QAAQ,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;YACnD,CAAC,CAAC;QACJ,CAAC;KACF,CAAC;IAEK,SAAS,CAA6C,IAAS,EAAE,MAAM,GAAG,WAAW;QAC1F,OAAO,CAAC,MAAM,EAAE,EAAE;YAChB,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;YAC1D,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAyC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QACjG,CAAC,CAAC;IACJ,CAAC;;AAxDH,wCAyDC"}
@@ -1,4 +1,4 @@
1
1
  export * from './event-bus';
2
2
  export * from './queue';
3
3
  export * from './topic';
4
- //# sourceMappingURL=index.d.ts.map
4
+ //# sourceMappingURL=index.d.ts.map
@@ -1,29 +1,37 @@
1
1
  import { Duration } from 'aws-cdk-lib';
2
+ import { Rule, RuleProps } from 'aws-cdk-lib/aws-events';
2
3
  import { Queue, QueueProps } from 'aws-cdk-lib/aws-sqs';
3
- import { Construct } from 'constructs';
4
- import { EventConfig } from '@takumi-stack/sdk';
5
- import { Modifier, ServiceStack } from '../../../common';
4
+ import { EventDefinition } from '@takumi-stack/sdk';
5
+ import { BaseCustomConfigs, Modifier, Prefab, PrefabPropsOverride, TakumiStack } from '../../../common';
6
6
  import { EventBusPrefab } from '../event-bus';
7
- export type FifoProperties = Pick<QueueProps, 'contentBasedDeduplication' | 'deduplicationScope' | 'fifoThroughputLimit'>;
8
7
  export type QueuePrefabParams = {
9
8
  name: string;
9
+ fifo?: boolean;
10
10
  maxRetries?: number;
11
- dlqRetention?: Duration;
12
- visibilityTimeout?: Duration;
13
- deliveryDelay?: Duration;
14
- dlq?: Queue;
15
- fifo?: FifoProperties;
16
- eventBus?: EventBusPrefab;
17
- eventConfig?: EventConfig[];
11
+ fromEventBusConfig?: {
12
+ eventBusPrefab: EventBusPrefab;
13
+ eventConfig: EventDefinition[];
14
+ };
15
+ resourceProps?: {
16
+ queueProps?: Partial<QueueProps>;
17
+ dqlProps?: Partial<QueueProps>;
18
+ ruleProps?: Partial<RuleProps>;
19
+ };
20
+ useExistingResource?: {
21
+ queue?: Queue;
22
+ dlq?: Queue;
23
+ rule?: Rule;
24
+ };
18
25
  };
19
- export declare class QueuePrefab extends Construct {
20
- readonly dlq: Queue;
26
+ export declare class QueuePrefab<CustomConfigs extends BaseCustomConfigs = BaseCustomConfigs> extends Prefab<QueuePrefabParams, CustomConfigs> {
21
27
  readonly queue: Queue;
22
- constructor(service: ServiceStack, params: QueuePrefabParams);
23
- useMod(variableName: string | undefined, mods: ((queue: Queue) => any)[]): Modifier;
24
- static modifier: {
25
- writer: (queue: Queue) => Modifier;
28
+ readonly visibilityTimeout: Duration;
29
+ readonly dlq: Queue;
30
+ readonly rule?: Rule;
31
+ constructor(service: TakumiStack<CustomConfigs>, params: QueuePrefabParams, propsOverride?: PrefabPropsOverride<CustomConfigs>);
32
+ static mods: {
33
+ writer: (queuePrefab: QueuePrefab) => Modifier;
26
34
  };
27
- useModWriter(variableName?: string): Modifier;
35
+ applyMods<K extends keyof typeof QueuePrefab.mods>(mods: K[], envVar?: string): Modifier;
28
36
  }
29
37
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../prefab/integration/queue/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGvC,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAyD,QAAQ,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEvG,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,MAAM,MAAM,cAAc,GAAG,IAAI,CAAC,UAAU,EAAE,2BAA2B,GAAG,oBAAoB,GAAG,qBAAqB,CAAC,CAAC;AAE1H,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,QAAQ,CAAC;IACxB,iBAAiB,CAAC,EAAE,QAAQ,CAAC;IAC7B,aAAa,CAAC,EAAE,QAAQ,CAAC;IACzB,GAAG,CAAC,EAAE,KAAK,CAAC;IACZ,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,WAAW,CAAC,EAAE,WAAW,EAAE,CAAC;CAC7B,CAAC;AAEF,qBAAa,WAAY,SAAQ,SAAS;IACxC,SAAgB,GAAG,EAAE,KAAK,CAAC;IAC3B,SAAgB,KAAK,EAAE,KAAK,CAAC;gBAEjB,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,iBAAiB;IA2CrD,MAAM,CAAC,YAAY,oBAAe,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,GAAG,CAAC,EAAE,GAAG,QAAQ;IAQrF,OAAc,QAAQ;wBACJ,KAAK,KAAG,QAAQ;MAKhC;IAGK,YAAY,CAAC,YAAY,SAAe,GAAG,QAAQ;CAG3D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../prefab/integration/queue/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEzD,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACxG,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kBAAkB,CAAC,EAAE;QACnB,cAAc,EAAE,cAAc,CAAC;QAC/B,WAAW,EAAE,eAAe,EAAE,CAAC;KAChC,CAAC;IACF,aAAa,CAAC,EAAE;QACd,UAAU,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;QACjC,QAAQ,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;QAC/B,SAAS,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;KAChC,CAAC;IACF,mBAAmB,CAAC,EAAE;QACpB,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,IAAI,CAAC;KACb,CAAC;CACH,CAAC;AAEF,qBAAa,WAAW,CAAC,aAAa,SAAS,iBAAiB,GAAG,iBAAiB,CAAE,SAAQ,MAAM,CAClG,iBAAiB,EACjB,aAAa,CACd;IACC,SAAgB,KAAK,EAAE,KAAK,CAAC;IAC7B,SAAgB,iBAAiB,EAAE,QAAQ,CAAC;IAC5C,SAAgB,GAAG,EAAE,KAAK,CAAC;IAC3B,SAAgB,IAAI,CAAC,EAAE,IAAI,CAAC;gBAG1B,OAAO,EAAE,WAAW,CAAC,aAAa,CAAC,EACnC,MAAM,EAAE,iBAAiB,EACzB,aAAa,CAAC,EAAE,mBAAmB,CAAC,aAAa,CAAC;IAoDpD,OAAc,IAAI;8BACM,WAAW,KAAG,QAAQ;MAK5C;IAEK,SAAS,CAAC,CAAC,SAAS,MAAM,OAAO,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,SAAU,GAAG,QAAQ;CAMjG"}