@gradientedge/cdk-utils 4.3.1 → 4.4.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 (606) hide show
  1. package/README.md +39 -28
  2. package/api-docs/AcmManager.html +622 -0
  3. package/api-docs/AcmProps.html +238 -0
  4. package/api-docs/AlarmProps.html +238 -0
  5. package/api-docs/AlarmStatusWidgetProps.html +238 -0
  6. package/api-docs/ApiDestinationEvent.html +297 -0
  7. package/api-docs/ApiDestinationEventType.html +238 -0
  8. package/api-docs/ApiDestinedLambda.html +297 -0
  9. package/api-docs/ApiDestinedLambdaEnvironment.html +238 -0
  10. package/api-docs/ApiDestinedLambdaType.html +238 -0
  11. package/api-docs/ApiDestinedRestApi.html +297 -0
  12. package/api-docs/ApiDestinedRestApiType.html +238 -0
  13. package/api-docs/ApiManager.html +766 -0
  14. package/api-docs/ApiToEventBridgeTarget.html +1877 -0
  15. package/api-docs/ApiToEventBridgeTarget.jpg +0 -0
  16. package/api-docs/ApiToEventBridgeTargetEventProps.html +238 -0
  17. package/api-docs/ApiToEventBridgeTargetLambdaProps.html +238 -0
  18. package/api-docs/ApiToEventBridgeTargetProps.html +238 -0
  19. package/api-docs/ApiToEventBridgeTargetRestApiProps.html +238 -0
  20. package/api-docs/AppConfigManager.html +1203 -0
  21. package/api-docs/AppConfigProps.html +238 -0
  22. package/api-docs/CloudFrontManager.html +2402 -0
  23. package/api-docs/CloudFrontProps.html +238 -0
  24. package/api-docs/CloudTrailManager.html +637 -0
  25. package/api-docs/CloudTrailProps.html +238 -0
  26. package/api-docs/CloudWatchManager.html +2986 -0
  27. package/api-docs/CloudfrontFunctionProps.html +238 -0
  28. package/api-docs/CodeBuildManager.html +736 -0
  29. package/api-docs/CommonConstruct.html +1299 -0
  30. package/api-docs/CommonStack.html +813 -0
  31. package/api-docs/CommonStackProps.html +238 -0
  32. package/api-docs/DashboardProps.html +238 -0
  33. package/api-docs/DistributionProps.html +238 -0
  34. package/api-docs/DynamodbManager.html +530 -0
  35. package/api-docs/EcrManager.html +530 -0
  36. package/api-docs/EcsClusterProps.html +238 -0
  37. package/api-docs/EcsManager.html +880 -0
  38. package/api-docs/EcsTaskProps.html +238 -0
  39. package/api-docs/EksClusterProps.html +238 -0
  40. package/api-docs/EksManager.html +580 -0
  41. package/api-docs/EventBusProps.html +238 -0
  42. package/api-docs/EventManager.html +1454 -0
  43. package/api-docs/EventRuleProps.html +238 -0
  44. package/api-docs/GraphQLApiLambda.html +1671 -0
  45. package/api-docs/GraphQLApiLambda.jpg +0 -0
  46. package/api-docs/GraphQlApiLambdaEnvironment.html +238 -0
  47. package/api-docs/GraphQlApiLambdaProps.html +238 -0
  48. package/api-docs/GraphWidgetProps.html +238 -0
  49. package/api-docs/HealthCheck.html +238 -0
  50. package/api-docs/IamManager.html +3821 -0
  51. package/api-docs/LambdaEdgeProps.html +238 -0
  52. package/api-docs/LambdaEnvironment.html +238 -0
  53. package/api-docs/LambdaManager.html +2378 -0
  54. package/api-docs/LambdaProps.html +238 -0
  55. package/api-docs/LifecycleRule.html +238 -0
  56. package/api-docs/LogManager.html +955 -0
  57. package/api-docs/LogProps.html +238 -0
  58. package/api-docs/LogQueryWidgetProps.html +238 -0
  59. package/api-docs/MetricFilterProps.html +238 -0
  60. package/api-docs/MetricProps.html +238 -0
  61. package/api-docs/NumericWidgetProps.html +238 -0
  62. package/api-docs/Route53Manager.html +1460 -0
  63. package/api-docs/Route53Props.html +238 -0
  64. package/api-docs/RuleProps.html +238 -0
  65. package/api-docs/S3BucketProps.html +238 -0
  66. package/api-docs/S3Manager.html +1546 -0
  67. package/api-docs/SSMParameterReader.html +431 -0
  68. package/api-docs/SSMParameterReaderProps.html +238 -0
  69. package/api-docs/SecretsManager.html +1140 -0
  70. package/api-docs/SiteWithEcsBackend.html +2391 -0
  71. package/api-docs/SiteWithEcsBackendProps.html +238 -0
  72. package/api-docs/SnsManager.html +780 -0
  73. package/api-docs/SsmManager.html +955 -0
  74. package/api-docs/StaticSite.html +1358 -0
  75. package/api-docs/StaticSiteProps.html +238 -0
  76. package/api-docs/SubscriptionProps.html +238 -0
  77. package/api-docs/TableProps.html +238 -0
  78. package/api-docs/TextWidgetProps.html +238 -0
  79. package/api-docs/VpcManager.html +986 -0
  80. package/api-docs/WafIPSetProps.html +238 -0
  81. package/api-docs/WafManager.html +730 -0
  82. package/api-docs/WafWebACLProps.html +238 -0
  83. package/api-docs/common_construct.ts.html +279 -0
  84. package/api-docs/common_stack.ts.html +303 -0
  85. package/api-docs/construct_api-to-eventbridge-target_api-destination-event.ts.html +175 -0
  86. package/api-docs/construct_api-to-eventbridge-target_api-destined-lambda.ts.html +178 -0
  87. package/api-docs/construct_api-to-eventbridge-target_api-destined-rest-api.ts.html +190 -0
  88. package/api-docs/construct_api-to-eventbridge-target_main.ts.html +751 -0
  89. package/api-docs/construct_graphql-api-lambda_main.ts.html +408 -0
  90. package/api-docs/construct_site-with-ecs-backend_main.ts.html +544 -0
  91. package/api-docs/construct_static-site_main.ts.html +374 -0
  92. package/api-docs/global.html +1530 -0
  93. package/api-docs/index.html +208 -0
  94. package/api-docs/logo.png +0 -0
  95. package/api-docs/manager_aws_acm-manager.ts.html +236 -0
  96. package/api-docs/manager_aws_api-manager.ts.html +260 -0
  97. package/api-docs/manager_aws_app-config-manager.ts.html +310 -0
  98. package/api-docs/manager_aws_cloudfront-manager.ts.html +491 -0
  99. package/api-docs/manager_aws_cloudtrail-manager.ts.html +251 -0
  100. package/api-docs/manager_aws_cloudwatch-manager.ts.html +553 -0
  101. package/api-docs/manager_aws_codebuild-manager.ts.html +240 -0
  102. package/api-docs/manager_aws_dynamodb-manager.ts.html +219 -0
  103. package/api-docs/manager_aws_ecr-manager.ts.html +199 -0
  104. package/api-docs/manager_aws_ecs-manager.ts.html +259 -0
  105. package/api-docs/manager_aws_eks-manager.ts.html +260 -0
  106. package/api-docs/manager_aws_event-manager.ts.html +336 -0
  107. package/api-docs/manager_aws_iam-manager.ts.html +573 -0
  108. package/api-docs/manager_aws_lambda-manager.ts.html +400 -0
  109. package/api-docs/manager_aws_log-manager.ts.html +259 -0
  110. package/api-docs/manager_aws_route53-manager.ts.html +333 -0
  111. package/api-docs/manager_aws_s3-manager.ts.html +361 -0
  112. package/api-docs/manager_aws_secrets-manager.ts.html +274 -0
  113. package/api-docs/manager_aws_sns-manager.ts.html +246 -0
  114. package/api-docs/manager_aws_ssm-manager.ts.html +273 -0
  115. package/api-docs/manager_aws_vpc-manager.ts.html +244 -0
  116. package/api-docs/manager_aws_waf-manager.ts.html +232 -0
  117. package/api-docs/scripts/app.min.js +1 -0
  118. package/api-docs/scripts/linenumber.js +26 -0
  119. package/api-docs/scripts/search.js +39 -0
  120. package/api-docs/styles/app.min.css +1 -0
  121. package/api-docs/styles/iframe.css +13 -0
  122. package/api-docs/styles/prettify-jsdoc.css +111 -0
  123. package/api-docs/styles/prettify-tomorrow.css +132 -0
  124. package/api-docs/styles/reset.css +44 -0
  125. package/api-docs/styles.css +113 -0
  126. package/api-docs/tutorial-Architecture.html +151 -0
  127. package/api-docs/tutorial-Build.html +150 -0
  128. package/api-docs/tutorial-CI-CD.html +154 -0
  129. package/api-docs/tutorial-Development.html +227 -0
  130. package/api-docs/types_aws_index.ts.html +665 -0
  131. package/api-docs/utils_aws_index.ts.html +192 -0
  132. package/api-docs/utils_index.ts.html +227 -0
  133. package/app/api-destined-function/node_modules/.yarn-integrity +180 -0
  134. package/app/api-destined-function/node_modules/@types/uuid/LICENSE +21 -0
  135. package/app/api-destined-function/node_modules/@types/uuid/README.md +16 -0
  136. package/app/api-destined-function/node_modules/@types/uuid/index.d.mts +10 -0
  137. package/app/api-destined-function/node_modules/@types/uuid/index.d.ts +80 -0
  138. package/app/api-destined-function/node_modules/@types/uuid/package.json +54 -0
  139. package/app/api-destined-function/node_modules/balanced-match/LICENSE.md +21 -0
  140. package/app/api-destined-function/node_modules/balanced-match/README.md +97 -0
  141. package/app/api-destined-function/node_modules/balanced-match/index.js +62 -0
  142. package/app/api-destined-function/node_modules/balanced-match/package.json +48 -0
  143. package/app/api-destined-function/node_modules/brace-expansion/LICENSE +21 -0
  144. package/app/api-destined-function/node_modules/brace-expansion/README.md +129 -0
  145. package/app/api-destined-function/node_modules/brace-expansion/index.js +201 -0
  146. package/app/api-destined-function/node_modules/brace-expansion/package.json +47 -0
  147. package/app/api-destined-function/node_modules/concat-map/.travis.yml +4 -0
  148. package/app/api-destined-function/node_modules/concat-map/LICENSE +18 -0
  149. package/app/api-destined-function/node_modules/concat-map/README.markdown +62 -0
  150. package/app/api-destined-function/node_modules/concat-map/example/map.js +6 -0
  151. package/app/api-destined-function/node_modules/concat-map/index.js +13 -0
  152. package/app/api-destined-function/node_modules/concat-map/package.json +43 -0
  153. package/app/api-destined-function/node_modules/fs.realpath/LICENSE +43 -0
  154. package/app/api-destined-function/node_modules/fs.realpath/README.md +33 -0
  155. package/app/api-destined-function/node_modules/fs.realpath/index.js +66 -0
  156. package/app/api-destined-function/node_modules/fs.realpath/old.js +303 -0
  157. package/app/api-destined-function/node_modules/fs.realpath/package.json +26 -0
  158. package/app/api-destined-function/node_modules/glob/LICENSE +21 -0
  159. package/app/api-destined-function/node_modules/glob/README.md +378 -0
  160. package/app/api-destined-function/node_modules/glob/common.js +236 -0
  161. package/app/api-destined-function/node_modules/glob/glob.js +787 -0
  162. package/app/api-destined-function/node_modules/glob/package.json +52 -0
  163. package/app/api-destined-function/node_modules/glob/sync.js +483 -0
  164. package/app/api-destined-function/node_modules/inflight/LICENSE +15 -0
  165. package/app/api-destined-function/node_modules/inflight/README.md +37 -0
  166. package/app/api-destined-function/node_modules/inflight/inflight.js +54 -0
  167. package/app/api-destined-function/node_modules/inflight/package.json +29 -0
  168. package/app/api-destined-function/node_modules/inherits/LICENSE +16 -0
  169. package/app/api-destined-function/node_modules/inherits/README.md +42 -0
  170. package/app/api-destined-function/node_modules/inherits/inherits.js +9 -0
  171. package/app/api-destined-function/node_modules/inherits/inherits_browser.js +27 -0
  172. package/app/api-destined-function/node_modules/inherits/package.json +29 -0
  173. package/app/api-destined-function/node_modules/minimatch/LICENSE +15 -0
  174. package/app/api-destined-function/node_modules/minimatch/README.md +209 -0
  175. package/app/api-destined-function/node_modules/minimatch/minimatch.js +923 -0
  176. package/app/api-destined-function/node_modules/minimatch/package.json +30 -0
  177. package/app/api-destined-function/node_modules/mkdirp/LICENSE +21 -0
  178. package/app/api-destined-function/node_modules/mkdirp/bin/cmd.js +68 -0
  179. package/app/api-destined-function/node_modules/mkdirp/index.js +31 -0
  180. package/app/api-destined-function/node_modules/mkdirp/lib/find-made.js +29 -0
  181. package/app/api-destined-function/node_modules/mkdirp/lib/mkdirp-manual.js +64 -0
  182. package/app/api-destined-function/node_modules/mkdirp/lib/mkdirp-native.js +39 -0
  183. package/app/api-destined-function/node_modules/mkdirp/lib/opts-arg.js +23 -0
  184. package/app/api-destined-function/node_modules/mkdirp/lib/path-arg.js +29 -0
  185. package/app/api-destined-function/node_modules/mkdirp/lib/use-native.js +10 -0
  186. package/app/api-destined-function/node_modules/mkdirp/package.json +44 -0
  187. package/app/api-destined-function/node_modules/mkdirp/readme.markdown +266 -0
  188. package/app/api-destined-function/node_modules/once/LICENSE +15 -0
  189. package/app/api-destined-function/node_modules/once/README.md +79 -0
  190. package/app/api-destined-function/node_modules/once/once.js +42 -0
  191. package/app/api-destined-function/node_modules/once/package.json +33 -0
  192. package/app/api-destined-function/node_modules/path-is-absolute/index.js +20 -0
  193. package/app/api-destined-function/node_modules/path-is-absolute/license +21 -0
  194. package/app/api-destined-function/node_modules/path-is-absolute/package.json +43 -0
  195. package/app/api-destined-function/node_modules/path-is-absolute/readme.md +59 -0
  196. package/app/api-destined-function/node_modules/rimraf/LICENSE +15 -0
  197. package/app/api-destined-function/node_modules/rimraf/README.md +101 -0
  198. package/app/api-destined-function/node_modules/rimraf/bin.js +68 -0
  199. package/app/api-destined-function/node_modules/rimraf/package.json +32 -0
  200. package/app/api-destined-function/node_modules/rimraf/rimraf.js +360 -0
  201. package/app/api-destined-function/node_modules/uuid/LICENSE.md +9 -0
  202. package/app/api-destined-function/node_modules/uuid/README.md +505 -0
  203. package/app/api-destined-function/node_modules/uuid/dist/bin/uuid +2 -0
  204. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/index.js +9 -0
  205. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/md5.js +215 -0
  206. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/nil.js +1 -0
  207. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/parse.js +35 -0
  208. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/regex.js +1 -0
  209. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/rng.js +19 -0
  210. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/sha1.js +96 -0
  211. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/stringify.js +30 -0
  212. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/v1.js +95 -0
  213. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/v3.js +4 -0
  214. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/v35.js +64 -0
  215. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/v4.js +24 -0
  216. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/v5.js +4 -0
  217. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/validate.js +7 -0
  218. package/app/api-destined-function/node_modules/uuid/dist/esm-browser/version.js +11 -0
  219. package/app/api-destined-function/node_modules/uuid/dist/esm-node/index.js +9 -0
  220. package/app/api-destined-function/node_modules/uuid/dist/esm-node/md5.js +13 -0
  221. package/app/api-destined-function/node_modules/uuid/dist/esm-node/nil.js +1 -0
  222. package/app/api-destined-function/node_modules/uuid/dist/esm-node/parse.js +35 -0
  223. package/app/api-destined-function/node_modules/uuid/dist/esm-node/regex.js +1 -0
  224. package/app/api-destined-function/node_modules/uuid/dist/esm-node/rng.js +12 -0
  225. package/app/api-destined-function/node_modules/uuid/dist/esm-node/sha1.js +13 -0
  226. package/app/api-destined-function/node_modules/uuid/dist/esm-node/stringify.js +29 -0
  227. package/app/api-destined-function/node_modules/uuid/dist/esm-node/v1.js +95 -0
  228. package/app/api-destined-function/node_modules/uuid/dist/esm-node/v3.js +4 -0
  229. package/app/api-destined-function/node_modules/uuid/dist/esm-node/v35.js +64 -0
  230. package/app/api-destined-function/node_modules/uuid/dist/esm-node/v4.js +24 -0
  231. package/app/api-destined-function/node_modules/uuid/dist/esm-node/v5.js +4 -0
  232. package/app/api-destined-function/node_modules/uuid/dist/esm-node/validate.js +7 -0
  233. package/app/api-destined-function/node_modules/uuid/dist/esm-node/version.js +11 -0
  234. package/app/api-destined-function/node_modules/uuid/dist/index.js +79 -0
  235. package/app/api-destined-function/node_modules/uuid/dist/md5-browser.js +223 -0
  236. package/app/api-destined-function/node_modules/uuid/dist/md5.js +23 -0
  237. package/app/api-destined-function/node_modules/uuid/dist/nil.js +8 -0
  238. package/app/api-destined-function/node_modules/uuid/dist/parse.js +45 -0
  239. package/app/api-destined-function/node_modules/uuid/dist/regex.js +8 -0
  240. package/app/api-destined-function/node_modules/uuid/dist/rng-browser.js +26 -0
  241. package/app/api-destined-function/node_modules/uuid/dist/rng.js +24 -0
  242. package/app/api-destined-function/node_modules/uuid/dist/sha1-browser.js +104 -0
  243. package/app/api-destined-function/node_modules/uuid/dist/sha1.js +23 -0
  244. package/app/api-destined-function/node_modules/uuid/dist/stringify.js +39 -0
  245. package/app/api-destined-function/node_modules/uuid/dist/umd/uuid.min.js +1 -0
  246. package/app/api-destined-function/node_modules/uuid/dist/umd/uuidNIL.min.js +1 -0
  247. package/app/api-destined-function/node_modules/uuid/dist/umd/uuidParse.min.js +1 -0
  248. package/app/api-destined-function/node_modules/uuid/dist/umd/uuidStringify.min.js +1 -0
  249. package/app/api-destined-function/node_modules/uuid/dist/umd/uuidValidate.min.js +1 -0
  250. package/app/api-destined-function/node_modules/uuid/dist/umd/uuidVersion.min.js +1 -0
  251. package/app/api-destined-function/node_modules/uuid/dist/umd/uuidv1.min.js +1 -0
  252. package/app/api-destined-function/node_modules/uuid/dist/umd/uuidv3.min.js +1 -0
  253. package/app/api-destined-function/node_modules/uuid/dist/umd/uuidv4.min.js +1 -0
  254. package/app/api-destined-function/node_modules/uuid/dist/umd/uuidv5.min.js +1 -0
  255. package/app/api-destined-function/node_modules/uuid/dist/uuid-bin.js +85 -0
  256. package/app/api-destined-function/node_modules/uuid/dist/v1.js +107 -0
  257. package/app/api-destined-function/node_modules/uuid/dist/v3.js +16 -0
  258. package/app/api-destined-function/node_modules/uuid/dist/v35.js +78 -0
  259. package/app/api-destined-function/node_modules/uuid/dist/v4.js +37 -0
  260. package/app/api-destined-function/node_modules/uuid/dist/v5.js +16 -0
  261. package/app/api-destined-function/node_modules/uuid/dist/validate.js +17 -0
  262. package/app/api-destined-function/node_modules/uuid/dist/version.js +21 -0
  263. package/app/api-destined-function/node_modules/uuid/package.json +135 -0
  264. package/app/api-destined-function/node_modules/uuid/wrapper.mjs +10 -0
  265. package/app/api-destined-function/node_modules/wrappy/LICENSE +15 -0
  266. package/app/api-destined-function/node_modules/wrappy/README.md +36 -0
  267. package/app/api-destined-function/node_modules/wrappy/package.json +29 -0
  268. package/app/api-destined-function/node_modules/wrappy/wrappy.js +33 -0
  269. package/app/api-destined-function/package.json +30 -0
  270. package/app/api-destined-function/src/lib/lambda.ts +31 -0
  271. package/dist/app/api-destined-function/layers/nodejs/node_modules/.bin/uuid +2 -0
  272. package/dist/app/api-destined-function/layers/nodejs/node_modules/.yarn-integrity +109 -0
  273. package/dist/app/api-destined-function/layers/nodejs/node_modules/@types/uuid/LICENSE +21 -0
  274. package/dist/app/api-destined-function/layers/nodejs/node_modules/@types/uuid/README.md +16 -0
  275. package/dist/app/api-destined-function/layers/nodejs/node_modules/@types/uuid/index.d.mts +10 -0
  276. package/dist/app/api-destined-function/layers/nodejs/node_modules/@types/uuid/index.d.ts +80 -0
  277. package/dist/app/api-destined-function/layers/nodejs/node_modules/@types/uuid/package.json +54 -0
  278. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/LICENSE.md +9 -0
  279. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/README.md +505 -0
  280. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/bin/uuid +2 -0
  281. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-browser/index.js +9 -0
  282. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-browser/md5.js +215 -0
  283. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-browser/nil.js +1 -0
  284. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-browser/parse.js +35 -0
  285. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-browser/regex.js +1 -0
  286. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-browser/rng.js +19 -0
  287. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-browser/sha1.js +96 -0
  288. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-browser/stringify.js +30 -0
  289. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-browser/v1.js +95 -0
  290. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-browser/v3.js +4 -0
  291. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-browser/v35.js +64 -0
  292. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-browser/v4.js +24 -0
  293. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-browser/v5.js +4 -0
  294. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-browser/validate.js +7 -0
  295. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-browser/version.js +11 -0
  296. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-node/index.js +9 -0
  297. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-node/md5.js +13 -0
  298. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-node/nil.js +1 -0
  299. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-node/parse.js +35 -0
  300. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-node/regex.js +1 -0
  301. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-node/rng.js +12 -0
  302. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-node/sha1.js +13 -0
  303. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-node/stringify.js +29 -0
  304. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-node/v1.js +95 -0
  305. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-node/v3.js +4 -0
  306. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-node/v35.js +64 -0
  307. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-node/v4.js +24 -0
  308. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-node/v5.js +4 -0
  309. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-node/validate.js +7 -0
  310. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/esm-node/version.js +11 -0
  311. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/index.js +79 -0
  312. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/md5-browser.js +223 -0
  313. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/md5.js +23 -0
  314. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/nil.js +8 -0
  315. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/parse.js +45 -0
  316. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/regex.js +8 -0
  317. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/rng-browser.js +26 -0
  318. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/rng.js +24 -0
  319. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/sha1-browser.js +104 -0
  320. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/sha1.js +23 -0
  321. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/stringify.js +39 -0
  322. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/umd/uuid.min.js +1 -0
  323. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/umd/uuidNIL.min.js +1 -0
  324. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/umd/uuidParse.min.js +1 -0
  325. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/umd/uuidStringify.min.js +1 -0
  326. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/umd/uuidValidate.min.js +1 -0
  327. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/umd/uuidVersion.min.js +1 -0
  328. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/umd/uuidv1.min.js +1 -0
  329. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/umd/uuidv3.min.js +1 -0
  330. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/umd/uuidv4.min.js +1 -0
  331. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/umd/uuidv5.min.js +1 -0
  332. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/uuid-bin.js +85 -0
  333. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/v1.js +107 -0
  334. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/v3.js +16 -0
  335. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/v35.js +78 -0
  336. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/v4.js +37 -0
  337. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/v5.js +16 -0
  338. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/validate.js +17 -0
  339. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/dist/version.js +21 -0
  340. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/package.json +135 -0
  341. package/dist/app/api-destined-function/layers/nodejs/node_modules/uuid/wrapper.mjs +10 -0
  342. package/dist/app/api-destined-function/layers/nodejs/package.json +30 -0
  343. package/dist/app/api-destined-function/src/lib/lambda.d.ts +19 -0
  344. package/dist/app/api-destined-function/src/lib/lambda.d.ts.map +1 -0
  345. package/dist/app/api-destined-function/src/lib/lambda.js +34 -0
  346. package/dist/app/api-destined-function/src/lib/lambda.js.map +1 -0
  347. package/dist/src/lib/common/{commonConstruct.d.ts → construct.d.ts} +4 -14
  348. package/dist/src/lib/common/construct.d.ts.map +1 -0
  349. package/dist/src/lib/common/{commonConstruct.js → construct.js} +4 -14
  350. package/dist/src/lib/common/construct.js.map +1 -0
  351. package/dist/src/lib/common/index.d.ts +2 -2
  352. package/dist/src/lib/common/index.d.ts.map +1 -1
  353. package/dist/src/lib/common/index.js +2 -2
  354. package/dist/src/lib/common/index.js.map +1 -1
  355. package/dist/src/lib/common/{commonStack.d.ts → stack.d.ts} +5 -15
  356. package/dist/src/lib/common/stack.d.ts.map +1 -0
  357. package/dist/src/lib/common/{commonStack.js → stack.js} +6 -16
  358. package/dist/src/lib/common/stack.js.map +1 -0
  359. package/dist/src/lib/construct/api-to-eventbridge-target/api-destination-event.d.ts +17 -0
  360. package/dist/src/lib/construct/api-to-eventbridge-target/api-destination-event.d.ts.map +1 -0
  361. package/dist/src/lib/construct/api-to-eventbridge-target/api-destination-event.js +18 -0
  362. package/dist/src/lib/construct/api-to-eventbridge-target/api-destination-event.js.map +1 -0
  363. package/dist/src/lib/construct/api-to-eventbridge-target/api-destined-lambda.d.ts +20 -0
  364. package/dist/src/lib/construct/api-to-eventbridge-target/api-destined-lambda.d.ts.map +1 -0
  365. package/dist/src/lib/construct/api-to-eventbridge-target/api-destined-lambda.js +20 -0
  366. package/dist/src/lib/construct/api-to-eventbridge-target/api-destined-lambda.js.map +1 -0
  367. package/dist/src/lib/construct/api-to-eventbridge-target/api-destined-rest-api.d.ts +36 -0
  368. package/dist/src/lib/construct/api-to-eventbridge-target/api-destined-rest-api.d.ts.map +1 -0
  369. package/dist/src/lib/construct/api-to-eventbridge-target/api-destined-rest-api.js +30 -0
  370. package/dist/src/lib/construct/api-to-eventbridge-target/api-destined-rest-api.js.map +1 -0
  371. package/dist/src/lib/construct/api-to-eventbridge-target/index.d.ts +5 -0
  372. package/dist/src/lib/construct/api-to-eventbridge-target/index.d.ts.map +1 -0
  373. package/dist/src/lib/construct/api-to-eventbridge-target/index.js +17 -0
  374. package/dist/src/lib/construct/api-to-eventbridge-target/index.js.map +1 -0
  375. package/dist/src/lib/construct/api-to-eventbridge-target/main.d.ts +135 -0
  376. package/dist/src/lib/construct/api-to-eventbridge-target/main.d.ts.map +1 -0
  377. package/dist/src/lib/construct/api-to-eventbridge-target/main.js +488 -0
  378. package/dist/src/lib/construct/api-to-eventbridge-target/main.js.map +1 -0
  379. package/dist/src/lib/construct/graphql-api-lambda/index.d.ts +2 -0
  380. package/dist/src/lib/construct/graphql-api-lambda/index.d.ts.map +1 -0
  381. package/dist/src/lib/construct/graphql-api-lambda/index.js +14 -0
  382. package/dist/src/lib/construct/graphql-api-lambda/index.js.map +1 -0
  383. package/dist/src/lib/construct/{graphQLApiLambda.d.ts → graphql-api-lambda/main.d.ts} +14 -23
  384. package/dist/src/lib/construct/graphql-api-lambda/main.d.ts.map +1 -0
  385. package/dist/src/lib/construct/{graphQLApiLambda.js → graphql-api-lambda/main.js} +16 -25
  386. package/dist/src/lib/construct/graphql-api-lambda/main.js.map +1 -0
  387. package/dist/src/lib/construct/index.d.ts +4 -3
  388. package/dist/src/lib/construct/index.d.ts.map +1 -1
  389. package/dist/src/lib/construct/index.js +4 -3
  390. package/dist/src/lib/construct/index.js.map +1 -1
  391. package/dist/src/lib/construct/site-with-ecs-backend/index.d.ts +2 -0
  392. package/dist/src/lib/construct/site-with-ecs-backend/index.d.ts.map +1 -0
  393. package/dist/src/lib/construct/site-with-ecs-backend/index.js +14 -0
  394. package/dist/src/lib/construct/site-with-ecs-backend/index.js.map +1 -0
  395. package/dist/src/lib/construct/{siteWithEcsBackend.d.ts → site-with-ecs-backend/main.d.ts} +7 -18
  396. package/dist/src/lib/construct/site-with-ecs-backend/main.d.ts.map +1 -0
  397. package/dist/src/lib/construct/{siteWithEcsBackend.js → site-with-ecs-backend/main.js} +6 -17
  398. package/dist/src/lib/construct/site-with-ecs-backend/main.js.map +1 -0
  399. package/dist/src/lib/construct/static-site/index.d.ts +2 -0
  400. package/dist/src/lib/construct/static-site/index.d.ts.map +1 -0
  401. package/dist/src/lib/construct/static-site/index.js +14 -0
  402. package/dist/src/lib/construct/static-site/index.js.map +1 -0
  403. package/dist/src/lib/construct/{staticSite.d.ts → static-site/main.d.ts} +6 -17
  404. package/dist/src/lib/construct/static-site/main.d.ts.map +1 -0
  405. package/dist/src/lib/construct/{staticSite.js → static-site/main.js} +6 -17
  406. package/dist/src/lib/construct/static-site/main.js.map +1 -0
  407. package/dist/src/lib/manager/aws/{acmManager.d.ts → acm-manager.d.ts} +4 -3
  408. package/dist/src/lib/manager/aws/acm-manager.d.ts.map +1 -0
  409. package/dist/src/lib/manager/aws/{acmManager.js → acm-manager.js} +4 -3
  410. package/dist/src/lib/manager/aws/acm-manager.js.map +1 -0
  411. package/dist/src/lib/manager/aws/{apiManager.d.ts → api-manager.d.ts} +7 -6
  412. package/dist/src/lib/manager/aws/api-manager.d.ts.map +1 -0
  413. package/dist/src/lib/manager/aws/{apiManager.js → api-manager.js} +7 -6
  414. package/dist/src/lib/manager/aws/api-manager.js.map +1 -0
  415. package/dist/src/lib/manager/aws/{appConfigManager.d.ts → app-config-manager.d.ts} +6 -4
  416. package/dist/src/lib/manager/aws/app-config-manager.d.ts.map +1 -0
  417. package/dist/src/lib/manager/aws/{appConfigManager.js → app-config-manager.js} +6 -4
  418. package/dist/src/lib/manager/aws/app-config-manager.js.map +1 -0
  419. package/dist/src/lib/manager/aws/{cloudFrontManager.d.ts → cloudfront-manager.d.ts} +4 -3
  420. package/dist/src/lib/manager/aws/cloudfront-manager.d.ts.map +1 -0
  421. package/dist/src/lib/manager/aws/{cloudFrontManager.js → cloudfront-manager.js} +4 -3
  422. package/dist/src/lib/manager/aws/cloudfront-manager.js.map +1 -0
  423. package/dist/src/lib/manager/aws/{cloudTrailManager.d.ts → cloudtrail-manager.d.ts} +4 -3
  424. package/dist/src/lib/manager/aws/cloudtrail-manager.d.ts.map +1 -0
  425. package/dist/src/lib/manager/aws/{cloudTrailManager.js → cloudtrail-manager.js} +4 -3
  426. package/dist/src/lib/manager/aws/cloudtrail-manager.js.map +1 -0
  427. package/dist/src/lib/manager/aws/{cloudWatchManager.d.ts → cloudwatch-manager.d.ts} +4 -3
  428. package/dist/src/lib/manager/aws/cloudwatch-manager.d.ts.map +1 -0
  429. package/dist/src/lib/manager/aws/{cloudWatchManager.js → cloudwatch-manager.js} +6 -4
  430. package/dist/src/lib/manager/aws/cloudwatch-manager.js.map +1 -0
  431. package/dist/src/lib/manager/aws/{codeBuildManager.d.ts → codebuild-manager.d.ts} +4 -3
  432. package/dist/src/lib/manager/aws/codebuild-manager.d.ts.map +1 -0
  433. package/dist/src/lib/manager/aws/{codeBuildManager.js → codebuild-manager.js} +4 -3
  434. package/dist/src/lib/manager/aws/codebuild-manager.js.map +1 -0
  435. package/dist/src/lib/manager/aws/{dynamodbManager.d.ts → dynamodb-manager.d.ts} +4 -3
  436. package/dist/src/lib/manager/aws/dynamodb-manager.d.ts.map +1 -0
  437. package/dist/src/lib/manager/aws/{dynamodbManager.js → dynamodb-manager.js} +4 -3
  438. package/dist/src/lib/manager/aws/dynamodb-manager.js.map +1 -0
  439. package/dist/src/lib/manager/aws/{ecrManager.d.ts → ecr-manager.d.ts} +4 -3
  440. package/dist/src/lib/manager/aws/ecr-manager.d.ts.map +1 -0
  441. package/dist/src/lib/manager/aws/{ecrManager.js → ecr-manager.js} +4 -3
  442. package/dist/src/lib/manager/aws/ecr-manager.js.map +1 -0
  443. package/dist/src/lib/manager/aws/{ecsManager.d.ts → ecs-manager.d.ts} +4 -3
  444. package/dist/src/lib/manager/aws/ecs-manager.d.ts.map +1 -0
  445. package/dist/src/lib/manager/aws/{ecsManager.js → ecs-manager.js} +4 -3
  446. package/dist/src/lib/manager/aws/ecs-manager.js.map +1 -0
  447. package/dist/src/lib/manager/aws/{eksManager.d.ts → eks-manager.d.ts} +4 -3
  448. package/dist/src/lib/manager/aws/eks-manager.d.ts.map +1 -0
  449. package/dist/src/lib/manager/aws/{eksManager.js → eks-manager.js} +4 -3
  450. package/dist/src/lib/manager/aws/eks-manager.js.map +1 -0
  451. package/dist/src/lib/manager/aws/{eventManager.d.ts → event-manager.d.ts} +20 -3
  452. package/dist/src/lib/manager/aws/event-manager.d.ts.map +1 -0
  453. package/dist/src/lib/manager/aws/{eventManager.js → event-manager.js} +46 -3
  454. package/dist/src/lib/manager/aws/event-manager.js.map +1 -0
  455. package/dist/src/lib/manager/aws/{iamManager.d.ts → iam-manager.d.ts} +14 -15
  456. package/dist/src/lib/manager/aws/iam-manager.d.ts.map +1 -0
  457. package/dist/src/lib/manager/aws/{iamManager.js → iam-manager.js} +23 -18
  458. package/dist/src/lib/manager/aws/iam-manager.js.map +1 -0
  459. package/dist/src/lib/manager/aws/index.d.ts +22 -22
  460. package/dist/src/lib/manager/aws/index.d.ts.map +1 -1
  461. package/dist/src/lib/manager/aws/index.js +22 -22
  462. package/dist/src/lib/manager/aws/index.js.map +1 -1
  463. package/dist/src/lib/manager/aws/{lambdaManager.d.ts → lambda-manager.d.ts} +30 -28
  464. package/dist/src/lib/manager/aws/lambda-manager.d.ts.map +1 -0
  465. package/dist/src/lib/manager/aws/{lambdaManager.js → lambda-manager.js} +46 -39
  466. package/dist/src/lib/manager/aws/lambda-manager.js.map +1 -0
  467. package/dist/src/lib/manager/aws/{logManager.d.ts → log-manager.d.ts} +4 -3
  468. package/dist/src/lib/manager/aws/log-manager.d.ts.map +1 -0
  469. package/dist/src/lib/manager/aws/{logManager.js → log-manager.js} +4 -3
  470. package/dist/src/lib/manager/aws/log-manager.js.map +1 -0
  471. package/dist/src/lib/manager/aws/{route53Manager.d.ts → route53-manager.d.ts} +5 -4
  472. package/dist/src/lib/manager/aws/route53-manager.d.ts.map +1 -0
  473. package/dist/src/lib/manager/aws/{route53Manager.js → route53-manager.js} +5 -4
  474. package/dist/src/lib/manager/aws/route53-manager.js.map +1 -0
  475. package/dist/src/lib/manager/aws/{s3Manager.d.ts → s3-manager.d.ts} +4 -3
  476. package/dist/src/lib/manager/aws/s3-manager.d.ts.map +1 -0
  477. package/dist/src/lib/manager/aws/{s3Manager.js → s3-manager.js} +4 -3
  478. package/dist/src/lib/manager/aws/s3-manager.js.map +1 -0
  479. package/dist/src/lib/manager/aws/{secretsManager.d.ts → secrets-manager.d.ts} +4 -3
  480. package/dist/src/lib/manager/aws/secrets-manager.d.ts.map +1 -0
  481. package/dist/src/lib/manager/aws/{secretsManager.js → secrets-manager.js} +4 -3
  482. package/dist/src/lib/manager/aws/secrets-manager.js.map +1 -0
  483. package/dist/src/lib/manager/aws/{snsManager.d.ts → sns-manager.d.ts} +4 -3
  484. package/dist/src/lib/manager/aws/sns-manager.d.ts.map +1 -0
  485. package/dist/src/lib/manager/aws/{snsManager.js → sns-manager.js} +4 -3
  486. package/dist/src/lib/manager/aws/sns-manager.js.map +1 -0
  487. package/dist/src/lib/manager/aws/{ssmManager.d.ts → ssm-manager.d.ts} +7 -10
  488. package/dist/src/lib/manager/aws/ssm-manager.d.ts.map +1 -0
  489. package/dist/src/lib/manager/aws/{ssmManager.js → ssm-manager.js} +7 -10
  490. package/dist/src/lib/manager/aws/ssm-manager.js.map +1 -0
  491. package/dist/src/lib/manager/aws/{vpcManager.d.ts → vpc-manager.d.ts} +6 -4
  492. package/dist/src/lib/manager/aws/vpc-manager.d.ts.map +1 -0
  493. package/dist/src/lib/manager/aws/{vpcManager.js → vpc-manager.js} +9 -6
  494. package/dist/src/lib/manager/aws/vpc-manager.js.map +1 -0
  495. package/dist/src/lib/manager/aws/{wafManager.d.ts → waf-manager.d.ts} +4 -3
  496. package/dist/src/lib/manager/aws/waf-manager.d.ts.map +1 -0
  497. package/dist/src/lib/manager/aws/{wafManager.js → waf-manager.js} +4 -3
  498. package/dist/src/lib/manager/aws/waf-manager.js.map +1 -0
  499. package/dist/src/lib/types/aws/index.d.ts +218 -32
  500. package/dist/src/lib/types/aws/index.d.ts.map +1 -1
  501. package/dist/src/lib/utils/aws/index.d.ts +2 -2
  502. package/dist/src/lib/utils/aws/index.d.ts.map +1 -1
  503. package/dist/src/lib/utils/aws/index.js +1 -1
  504. package/dist/src/lib/utils/index.d.ts +7 -7
  505. package/dist/src/lib/utils/index.js +8 -8
  506. package/img/ApiToEventBridgeTarget.jpg +0 -0
  507. package/img/GraphQLApiLambda.jpg +0 -0
  508. package/img/logo.png +0 -0
  509. package/package.json +17 -18
  510. package/src/lib/common/{commonConstruct.ts → construct.ts} +3 -13
  511. package/src/lib/common/index.ts +2 -2
  512. package/src/lib/common/{commonStack.ts → stack.ts} +5 -14
  513. package/src/lib/construct/api-to-eventbridge-target/api-destination-event.ts +17 -0
  514. package/src/lib/construct/api-to-eventbridge-target/api-destined-lambda.ts +20 -0
  515. package/src/lib/construct/api-to-eventbridge-target/api-destined-rest-api.ts +32 -0
  516. package/src/lib/construct/api-to-eventbridge-target/index.ts +4 -0
  517. package/src/lib/construct/api-to-eventbridge-target/main.ts +593 -0
  518. package/src/lib/construct/graphql-api-lambda/index.ts +1 -0
  519. package/src/lib/construct/{graphQLApiLambda.ts → graphql-api-lambda/main.ts} +15 -24
  520. package/src/lib/construct/index.ts +4 -3
  521. package/src/lib/construct/site-with-ecs-backend/index.ts +1 -0
  522. package/src/lib/construct/{siteWithEcsBackend.ts → site-with-ecs-backend/main.ts} +6 -17
  523. package/src/lib/construct/static-site/index.ts +1 -0
  524. package/src/lib/construct/{staticSite.ts → static-site/main.ts} +5 -16
  525. package/src/lib/manager/aws/{acmManager.ts → acm-manager.ts} +3 -2
  526. package/src/lib/manager/aws/{apiManager.ts → api-manager.ts} +6 -5
  527. package/src/lib/manager/aws/{appConfigManager.ts → app-config-manager.ts} +5 -3
  528. package/src/lib/manager/aws/{cloudFrontManager.ts → cloudfront-manager.ts} +3 -2
  529. package/src/lib/manager/aws/{cloudTrailManager.ts → cloudtrail-manager.ts} +3 -2
  530. package/src/lib/manager/aws/{cloudWatchManager.ts → cloudwatch-manager.ts} +5 -3
  531. package/src/lib/manager/aws/{codeBuildManager.ts → codebuild-manager.ts} +3 -2
  532. package/src/lib/manager/aws/{dynamodbManager.ts → dynamodb-manager.ts} +3 -2
  533. package/src/lib/manager/aws/{ecrManager.ts → ecr-manager.ts} +3 -2
  534. package/src/lib/manager/aws/{ecsManager.ts → ecs-manager.ts} +3 -2
  535. package/src/lib/manager/aws/{eksManager.ts → eks-manager.ts} +3 -2
  536. package/src/lib/manager/aws/{eventManager.ts → event-manager.ts} +57 -2
  537. package/src/lib/manager/aws/{iamManager.ts → iam-manager.ts} +23 -17
  538. package/src/lib/manager/aws/index.ts +22 -22
  539. package/src/lib/manager/aws/{lambdaManager.ts → lambda-manager.ts} +52 -44
  540. package/src/lib/manager/aws/{logManager.ts → log-manager.ts} +3 -2
  541. package/src/lib/manager/aws/{route53Manager.ts → route53-manager.ts} +4 -3
  542. package/src/lib/manager/aws/{s3Manager.ts → s3-manager.ts} +3 -2
  543. package/src/lib/manager/aws/{secretsManager.ts → secrets-manager.ts} +3 -2
  544. package/src/lib/manager/aws/{snsManager.ts → sns-manager.ts} +3 -2
  545. package/src/lib/manager/aws/{ssmManager.ts → ssm-manager.ts} +6 -9
  546. package/src/lib/manager/aws/{vpcManager.ts → vpc-manager.ts} +8 -5
  547. package/src/lib/manager/aws/{wafManager.ts → waf-manager.ts} +3 -2
  548. package/src/lib/types/aws/index.ts +221 -32
  549. package/src/lib/utils/aws/index.ts +2 -2
  550. package/src/lib/utils/index.ts +8 -8
  551. package/theme/styles.css +113 -0
  552. package/.releaserc +0 -9
  553. package/dist/src/lib/common/commonConstruct.d.ts.map +0 -1
  554. package/dist/src/lib/common/commonConstruct.js.map +0 -1
  555. package/dist/src/lib/common/commonStack.d.ts.map +0 -1
  556. package/dist/src/lib/common/commonStack.js.map +0 -1
  557. package/dist/src/lib/construct/graphQLApiLambda.d.ts.map +0 -1
  558. package/dist/src/lib/construct/graphQLApiLambda.js.map +0 -1
  559. package/dist/src/lib/construct/siteWithEcsBackend.d.ts.map +0 -1
  560. package/dist/src/lib/construct/siteWithEcsBackend.js.map +0 -1
  561. package/dist/src/lib/construct/staticSite.d.ts.map +0 -1
  562. package/dist/src/lib/construct/staticSite.js.map +0 -1
  563. package/dist/src/lib/manager/aws/acmManager.d.ts.map +0 -1
  564. package/dist/src/lib/manager/aws/acmManager.js.map +0 -1
  565. package/dist/src/lib/manager/aws/apiManager.d.ts.map +0 -1
  566. package/dist/src/lib/manager/aws/apiManager.js.map +0 -1
  567. package/dist/src/lib/manager/aws/appConfigManager.d.ts.map +0 -1
  568. package/dist/src/lib/manager/aws/appConfigManager.js.map +0 -1
  569. package/dist/src/lib/manager/aws/cloudFrontManager.d.ts.map +0 -1
  570. package/dist/src/lib/manager/aws/cloudFrontManager.js.map +0 -1
  571. package/dist/src/lib/manager/aws/cloudTrailManager.d.ts.map +0 -1
  572. package/dist/src/lib/manager/aws/cloudTrailManager.js.map +0 -1
  573. package/dist/src/lib/manager/aws/cloudWatchManager.d.ts.map +0 -1
  574. package/dist/src/lib/manager/aws/cloudWatchManager.js.map +0 -1
  575. package/dist/src/lib/manager/aws/codeBuildManager.d.ts.map +0 -1
  576. package/dist/src/lib/manager/aws/codeBuildManager.js.map +0 -1
  577. package/dist/src/lib/manager/aws/dynamodbManager.d.ts.map +0 -1
  578. package/dist/src/lib/manager/aws/dynamodbManager.js.map +0 -1
  579. package/dist/src/lib/manager/aws/ecrManager.d.ts.map +0 -1
  580. package/dist/src/lib/manager/aws/ecrManager.js.map +0 -1
  581. package/dist/src/lib/manager/aws/ecsManager.d.ts.map +0 -1
  582. package/dist/src/lib/manager/aws/ecsManager.js.map +0 -1
  583. package/dist/src/lib/manager/aws/eksManager.d.ts.map +0 -1
  584. package/dist/src/lib/manager/aws/eksManager.js.map +0 -1
  585. package/dist/src/lib/manager/aws/eventManager.d.ts.map +0 -1
  586. package/dist/src/lib/manager/aws/eventManager.js.map +0 -1
  587. package/dist/src/lib/manager/aws/iamManager.d.ts.map +0 -1
  588. package/dist/src/lib/manager/aws/iamManager.js.map +0 -1
  589. package/dist/src/lib/manager/aws/lambdaManager.d.ts.map +0 -1
  590. package/dist/src/lib/manager/aws/lambdaManager.js.map +0 -1
  591. package/dist/src/lib/manager/aws/logManager.d.ts.map +0 -1
  592. package/dist/src/lib/manager/aws/logManager.js.map +0 -1
  593. package/dist/src/lib/manager/aws/route53Manager.d.ts.map +0 -1
  594. package/dist/src/lib/manager/aws/route53Manager.js.map +0 -1
  595. package/dist/src/lib/manager/aws/s3Manager.d.ts.map +0 -1
  596. package/dist/src/lib/manager/aws/s3Manager.js.map +0 -1
  597. package/dist/src/lib/manager/aws/secretsManager.d.ts.map +0 -1
  598. package/dist/src/lib/manager/aws/secretsManager.js.map +0 -1
  599. package/dist/src/lib/manager/aws/snsManager.d.ts.map +0 -1
  600. package/dist/src/lib/manager/aws/snsManager.js.map +0 -1
  601. package/dist/src/lib/manager/aws/ssmManager.d.ts.map +0 -1
  602. package/dist/src/lib/manager/aws/ssmManager.js.map +0 -1
  603. package/dist/src/lib/manager/aws/vpcManager.d.ts.map +0 -1
  604. package/dist/src/lib/manager/aws/vpcManager.js.map +0 -1
  605. package/dist/src/lib/manager/aws/wafManager.d.ts.map +0 -1
  606. package/dist/src/lib/manager/aws/wafManager.js.map +0 -1
@@ -0,0 +1,593 @@
1
+ import * as apig from 'aws-cdk-lib/aws-apigateway'
2
+ import * as eventstargets from 'aws-cdk-lib/aws-events-targets'
3
+ import * as iam from 'aws-cdk-lib/aws-iam'
4
+ import * as lambda from 'aws-cdk-lib/aws-lambda'
5
+ import * as destinations from 'aws-cdk-lib/aws-lambda-destinations'
6
+ import * as secretsmanager from 'aws-cdk-lib/aws-secretsmanager'
7
+ import { Construct } from 'constructs'
8
+ import { CommonConstruct } from '../../common'
9
+ import * as types from '../../types'
10
+ import { ApiDestinationEvent } from './api-destination-event'
11
+ import { ApiDestinedLambda } from './api-destined-lambda'
12
+ import { ApiDestinedRestApi } from './api-destined-rest-api'
13
+
14
+ /**
15
+ * @stability stable
16
+ * @category cdk-utils.api-to-eventbridge-target
17
+ * @subcategory construct
18
+ * @classdesc Provides a construct to create and deploy API Gateway invocations to EventBridge
19
+ *
20
+ * <b>Architecture</b> ![Architecture](./ApiToEventBridgeTarget.jpg)
21
+ *
22
+ * @example
23
+ * import { ApiToEventBridgeTarget, ApiToEventBridgeTargetProps } '@gradientedge/cdk-utils'
24
+ * import { Construct } from 'constructs'
25
+ *
26
+ * class CustomConstruct extends ApiToEventBridgeTarget {
27
+ * constructor(parent: Construct, id: string, props: ApiToEventBridgeTargetProps) {
28
+ * super(parent, id, props)
29
+ * this.props = props
30
+ * this.id = id
31
+ * this.initResources()
32
+ * }
33
+ * }
34
+ *
35
+ */
36
+ export class ApiToEventBridgeTarget extends CommonConstruct {
37
+ props: types.ApiToEventBridgeTargetProps
38
+ id: string
39
+
40
+ /* application related resources */
41
+ applicationSecrets: secretsmanager.ISecret[]
42
+
43
+ /* destined lambda related resources */
44
+ apiDestinedLambdaDirectory = 'app/api-destined-function'
45
+ apiDestinedLambda: types.ApiDestinedLambdaType
46
+
47
+ /* event related resources */
48
+ apiEvent: types.ApiDestinationEventType
49
+
50
+ /* rest restApi related resources */
51
+ apiDestinedRestApi: types.ApiDestinedRestApiType
52
+ apiDestinedBasePathMappings: apig.BasePathMapping[] = []
53
+ apiResource: string
54
+
55
+ constructor(parent: Construct, id: string, props: types.ApiToEventBridgeTargetProps) {
56
+ super(parent, id, props)
57
+
58
+ this.props = props
59
+ this.id = id
60
+
61
+ this.apiDestinedLambda = new ApiDestinedLambda()
62
+ this.apiEvent = new ApiDestinationEvent()
63
+ this.apiDestinedRestApi = new ApiDestinedRestApi()
64
+ this.apiResource = 'notify'
65
+ }
66
+
67
+ protected initResources() {
68
+ /* application related resources */
69
+ this.resolveSecrets()
70
+
71
+ /* core resources */
72
+ this.resolveHostedZone()
73
+ this.resolveCertificate()
74
+
75
+ /* optional custom event bus */
76
+ this.createApiDestinedEventBus()
77
+
78
+ /* destined lambda related resources */
79
+ this.createApiDestinedLambdaPolicy()
80
+ this.createApiDestinedLambdaRole()
81
+ this.createApiDestinedLambdaEnvironment()
82
+ this.createApiDestinedLambdaLayers()
83
+ this.createApiDestinedLambdaDestinations()
84
+ this.createApiDestinedLambdaFunction()
85
+
86
+ /* event related resources */
87
+ this.createApiDestinationLogGroupSuccess()
88
+ this.createApiDestinationRuleSuccess()
89
+ this.createApiDestinationLogGroupFailure()
90
+ this.createApiDestinationRuleFailure()
91
+
92
+ /* restApi related resources */
93
+ this.createApiDestinedTopicRole()
94
+ this.createApiDestinedTopic()
95
+ this.createApiDestinedRestApi()
96
+ this.createApiDestinedResponseModel()
97
+ this.createApiDestinedErrorResponseModel()
98
+ this.createApiDestinedResource()
99
+ this.createApiDestinedIntegrationRequestParameters()
100
+ this.createApiDestinedIntegrationRequestTemplates()
101
+ this.createApiDestinedIntegrationResponse()
102
+ this.createApiDestinedIntegrationErrorResponse()
103
+ this.createApiDestinedIntegration()
104
+ this.createApiDestinedMethodResponse()
105
+ this.createApiDestinedMethodErrorResponse()
106
+ this.createApiDestinedResourceMethod()
107
+ this.createApiDomain()
108
+ this.createApiBasePathMapping()
109
+ this.createApiRouteAssets()
110
+ }
111
+
112
+ /**
113
+ * @summary Method to resolve secrets from SecretsManager
114
+ * - To be implemented in the overriding method in the implementation class
115
+ * @protected
116
+ */
117
+ protected resolveSecrets() {
118
+ this.applicationSecrets = []
119
+ }
120
+
121
+ /**
122
+ * @summary Method to resolve a hosted zone based on domain attributes
123
+ * @protected
124
+ */
125
+ protected resolveHostedZone() {
126
+ this.apiDestinedRestApi.hostedZone = this.route53Manager.withHostedZoneFromFullyQualifiedDomainName(
127
+ `${this.id}-hosted-zone`,
128
+ this,
129
+ this.props.useExistingHostedZone
130
+ )
131
+ }
132
+
133
+ /**
134
+ * @summary Method to resolve a certificate based on attributes
135
+ * @protected
136
+ */
137
+ protected resolveCertificate() {
138
+ if (
139
+ this.props.api.certificate.useExistingCertificate &&
140
+ this.props.api.certificate.certificateSsmName &&
141
+ this.props.api.certificate.certificateRegion
142
+ ) {
143
+ this.props.api.certificate.certificateArn = this.ssMManager.readStringParameterFromRegion(
144
+ `${this.id}-certificate-param`,
145
+ this,
146
+ this.props.api.certificate.certificateSsmName,
147
+ this.props.api.certificate.certificateRegion
148
+ )
149
+ }
150
+
151
+ this.apiDestinedRestApi.certificate = this.acmManager.resolveCertificate(
152
+ `${this.id}-certificate`,
153
+ this,
154
+ this.props.api.certificate
155
+ )
156
+ }
157
+
158
+ /**
159
+ * @summary Method to create iam policy for Api Destined Lambda function
160
+ * @protected
161
+ */
162
+ protected createApiDestinedLambdaPolicy() {
163
+ this.apiDestinedLambda.policy = new iam.PolicyDocument({
164
+ statements: [this.iamManager.statementForReadSecrets(this), this.iamManager.statementForPutEvents()],
165
+ })
166
+ }
167
+
168
+ /**
169
+ * @summary Method to create iam role for Api Destined Lambda function
170
+ * @protected
171
+ */
172
+ protected createApiDestinedLambdaRole() {
173
+ this.apiDestinedLambda.role = this.iamManager.createRoleForLambda(
174
+ `${this.id}-lambda-destined-role`,
175
+ this,
176
+ this.apiDestinedLambda.policy
177
+ )
178
+ }
179
+
180
+ /**
181
+ * @summary Method to create environment variables for Api Destined Lambda function
182
+ * @protected
183
+ */
184
+ protected createApiDestinedLambdaEnvironment() {
185
+ this.apiDestinedLambda.environment = {
186
+ NODE_ENV: this.props.nodeEnv,
187
+ LOG_LEVEL: this.props.logLevel,
188
+ TZ: this.props.timezone,
189
+ SOURCE_ID: this.id,
190
+ }
191
+ }
192
+
193
+ private createApiDestinedLambdaLayersSource() {
194
+ return this.props.lambda.useNative
195
+ ? lambda.AssetCode.fromAsset(`${this.apiDestinedLambdaDirectory}/layers`)
196
+ : lambda.AssetCode.fromAsset(
197
+ `../node_modules/@gradientedge/cdk-utils/dist/${this.apiDestinedLambdaDirectory}/layers`
198
+ )
199
+ }
200
+
201
+ /**
202
+ * @summary Method to create layers for Api Destined Lambda function
203
+ * @protected
204
+ */
205
+ protected createApiDestinedLambdaLayers() {
206
+ const layers: lambda.LayerVersion[] = []
207
+ layers.push(
208
+ this.lambdaManager.createLambdaLayer(
209
+ `${this.id}-lambda-destined-layer`,
210
+ this,
211
+ this.createApiDestinedLambdaLayersSource()
212
+ )
213
+ )
214
+ this.apiDestinedLambda.layers = layers
215
+ }
216
+
217
+ /**
218
+ * @summary Method to create destination for Api Destined function
219
+ * @protected
220
+ */
221
+ protected createApiDestinedLambdaDestinations() {
222
+ this.apiDestinedLambda.destinationSuccess = new destinations.EventBridgeDestination(this.apiEvent.eventBus)
223
+ this.apiDestinedLambda.destinationFailure = new destinations.EventBridgeDestination(this.apiEvent.eventBus)
224
+ }
225
+
226
+ private createApiDestinedLambdaFunctionSource() {
227
+ return this.props.lambda.useNative
228
+ ? lambda.AssetCode.fromAsset(`${this.apiDestinedLambdaDirectory}/src/lib`)
229
+ : lambda.AssetCode.fromAsset(
230
+ `../node_modules/@gradientedge/cdk-utils/dist/${this.apiDestinedLambdaDirectory}/src/lib`
231
+ )
232
+ }
233
+
234
+ /**
235
+ * @summary Method to create lambda function for Api Destined
236
+ * @protected
237
+ */
238
+ protected createApiDestinedLambdaFunction() {
239
+ this.apiDestinedLambda.function = this.lambdaManager.createLambdaFunction(
240
+ `${this.id}-lambda-destined`,
241
+ this,
242
+ {
243
+ ...this.props.lambda.function,
244
+ ...{
245
+ onSuccess: this.apiDestinedLambda.destinationSuccess,
246
+ onFailure: this.apiDestinedLambda.destinationFailure,
247
+ },
248
+ },
249
+ this.apiDestinedLambda.role,
250
+ this.apiDestinedLambda.layers,
251
+ this.createApiDestinedLambdaFunctionSource(),
252
+ 'lambda.handler',
253
+ this.apiDestinedLambda.environment
254
+ )
255
+ }
256
+
257
+ protected createApiDestinedEventBus() {
258
+ this.apiEvent.eventBus = this.eventManager.createEventBus(`${this.id}-destined-event-bus`, this, {
259
+ eventBusName: `${this.props.event.eventBusName}`,
260
+ })
261
+ }
262
+
263
+ protected createApiDestinationLogGroupSuccess() {
264
+ this.apiEvent.logGroupSuccess = this.logManager.createLogGroup(`${this.id}-destination-success-log`, this, {
265
+ ...{
266
+ logGroupName: `/${this.id}/events/api-destination-success`,
267
+ },
268
+ ...this.props.event.logGroupSuccess,
269
+ })
270
+ }
271
+
272
+ /**
273
+ * Method to create EventBridge rule with lambda target for success
274
+ * @protected
275
+ */
276
+ protected createApiDestinationRuleSuccess() {
277
+ this.props.event.ruleSuccess = {
278
+ ...{
279
+ ruleName: `${this.id}-api-destination-success`,
280
+ eventPattern: {
281
+ detail: {
282
+ requestContext: {
283
+ condition: ['Success'],
284
+ },
285
+ responsePayload: {
286
+ source: ['custom:api-destined-lambda'],
287
+ sourceId: [this.id],
288
+ },
289
+ },
290
+ },
291
+ },
292
+ ...this.props.event.ruleSuccess,
293
+ }
294
+ this.apiEvent.ruleSuccess = this.eventManager.createRule(
295
+ `${this.id}-api-destination-rule-success`,
296
+ this,
297
+ this.props.event.ruleSuccess,
298
+ this.apiEvent.eventBus,
299
+ [new eventstargets.CloudWatchLogGroup(this.apiEvent.logGroupSuccess)]
300
+ )
301
+ }
302
+
303
+ protected createApiDestinationLogGroupFailure() {
304
+ this.apiEvent.logGroupFailure = this.logManager.createLogGroup(`${this.id}-destination-failure-log`, this, {
305
+ ...{
306
+ logGroupName: `/${this.id}/events/api-destination-failure`,
307
+ },
308
+ ...this.props.event.logGroupFailure,
309
+ })
310
+ }
311
+
312
+ /**
313
+ * Method to create EventBridge rule with lambda target for failure
314
+ * @protected
315
+ */
316
+ protected createApiDestinationRuleFailure() {
317
+ this.props.event.ruleFailure = {
318
+ ...{
319
+ ruleName: `${this.id}-api-destination-failure`,
320
+ eventPattern: {
321
+ detail: {
322
+ responsePayload: {
323
+ errorType: ['Error'],
324
+ },
325
+ },
326
+ },
327
+ },
328
+ ...this.props.event.ruleFailure,
329
+ }
330
+ this.apiEvent.ruleFailure = this.eventManager.createRule(
331
+ `${this.id}-api-destination-rule-failure`,
332
+ this,
333
+ this.props.event.ruleFailure,
334
+ this.apiEvent.eventBus,
335
+ [new eventstargets.CloudWatchLogGroup(this.apiEvent.logGroupFailure)]
336
+ )
337
+ }
338
+
339
+ protected createApiDestinedTopicRole() {
340
+ this.apiDestinedRestApi.topicRole = new iam.Role(this, `${this.id}-sns-rest-api-role`, {
341
+ assumedBy: new iam.ServicePrincipal('apigateway.amazonaws.com'),
342
+ })
343
+ }
344
+
345
+ protected createApiDestinedTopic() {
346
+ this.apiDestinedRestApi.topic = this.snsManager.createLambdaNotificationService(
347
+ `${this.id}-destined-topic`,
348
+ this,
349
+ {
350
+ topicName: `${this.id}-destined-topic`,
351
+ },
352
+ this.apiDestinedLambda.function
353
+ )
354
+
355
+ this.apiDestinedRestApi.topic.grantPublish(this.apiDestinedRestApi.topicRole)
356
+ }
357
+
358
+ /**
359
+ * @summary Method to create rest restApi for Api
360
+ * @protected
361
+ */
362
+ protected createApiDestinedRestApi() {
363
+ this.apiDestinedRestApi.api = new apig.RestApi(this, `${this.id}-sns-rest-api`, {
364
+ ...{
365
+ deployOptions: {
366
+ dataTraceEnabled: true,
367
+ description: `${this.id} - ${this.props.stage} stage`,
368
+ loggingLevel: apig.MethodLoggingLevel.INFO,
369
+ metricsEnabled: true,
370
+ stageName: this.props.stage,
371
+ },
372
+ endpointConfiguration: {
373
+ types: [apig.EndpointType.REGIONAL],
374
+ },
375
+ defaultCorsPreflightOptions: {
376
+ allowOrigins: apig.Cors.ALL_ORIGINS,
377
+ allowMethods: ['POST'],
378
+ allowHeaders: apig.Cors.DEFAULT_HEADERS,
379
+ },
380
+ restApiName: `${this.id}-destined-rest-api-${this.props.stage}`,
381
+ },
382
+ ...this.props.api,
383
+ })
384
+ }
385
+
386
+ protected createApiDestinedResponseModel() {
387
+ this.apiDestinedRestApi.responseModel = this.apiDestinedRestApi.api.addModel(`${this.id}-response-model`, {
388
+ ...{
389
+ contentType: 'application/json',
390
+ modelName: 'ResponseModel',
391
+ schema: {
392
+ schema: apig.JsonSchemaVersion.DRAFT4,
393
+ title: 'pollResponse',
394
+ type: apig.JsonSchemaType.OBJECT,
395
+ properties: { message: { type: apig.JsonSchemaType.STRING } },
396
+ },
397
+ },
398
+ ...this.props.api.responseModel,
399
+ })
400
+ }
401
+
402
+ protected createApiDestinedErrorResponseModel() {
403
+ this.apiDestinedRestApi.errorResponseModel = this.apiDestinedRestApi.api.addModel(
404
+ `${this.id}-error-response-model`,
405
+ {
406
+ ...{
407
+ contentType: 'application/json',
408
+ modelName: 'ErrorResponseModel',
409
+ schema: {
410
+ schema: apig.JsonSchemaVersion.DRAFT4,
411
+ title: 'errorResponse',
412
+ type: apig.JsonSchemaType.OBJECT,
413
+ properties: {
414
+ state: { type: apig.JsonSchemaType.STRING },
415
+ message: { type: apig.JsonSchemaType.STRING },
416
+ },
417
+ },
418
+ },
419
+ ...this.props.api.errorResponseModel,
420
+ }
421
+ )
422
+ }
423
+
424
+ protected createApiDestinedResource() {
425
+ this.apiDestinedRestApi.resource = this.apiDestinedRestApi.api.root.addResource(
426
+ this.props.api.resource ?? this.apiResource
427
+ )
428
+ }
429
+
430
+ protected createApiDestinedIntegrationRequestParameters() {
431
+ this.apiDestinedRestApi.integrationRequestParameters = {
432
+ 'integration.request.header.Content-Type': "'application/x-www-form-urlencoded'",
433
+ }
434
+ }
435
+
436
+ protected createApiDestinedIntegrationRequestTemplates() {
437
+ this.apiDestinedRestApi.integrationRequestTemplates = {
438
+ 'application/json': [
439
+ 'Action=Publish',
440
+ `TargetArn=$util.urlEncode('${this.apiDestinedRestApi.topic.topicArn}')`,
441
+ 'Message=$input.body',
442
+ 'Version=2010-03-31',
443
+ ].join('&'),
444
+ }
445
+ }
446
+
447
+ protected createApiDestinedIntegrationResponse() {
448
+ this.apiDestinedRestApi.integrationResponse = {
449
+ ...{
450
+ statusCode: '200',
451
+ responseTemplates: {
452
+ 'application/json': JSON.stringify({ message: 'Payload Submitted' }),
453
+ },
454
+ },
455
+ ...this.props.api.integrationResponse,
456
+ }
457
+ }
458
+
459
+ protected createApiDestinedIntegrationErrorResponse() {
460
+ this.apiDestinedRestApi.integrationErrorResponse = {
461
+ ...{
462
+ selectionPattern: '^\\[Error\\].*',
463
+ statusCode: '400',
464
+ responseTemplates: {
465
+ 'application/json': JSON.stringify({
466
+ state: 'error',
467
+ message: "$util.escapeJavaScript($input.path('$.errorMessage'))",
468
+ }),
469
+ },
470
+ responseParameters: {
471
+ 'method.response.header.Content-Type': "'application/json'",
472
+ 'method.response.header.Access-Control-Allow-Origin': "'*'",
473
+ 'method.response.header.Access-Control-Allow-Credentials': "'true'",
474
+ },
475
+ },
476
+ ...this.props.api.integrationErrorResponse,
477
+ }
478
+ }
479
+
480
+ protected createApiDestinedIntegration() {
481
+ this.apiDestinedRestApi.integration = new apig.Integration({
482
+ type: apig.IntegrationType.AWS,
483
+ integrationHttpMethod: 'POST',
484
+ uri: `arn:aws:apigateway:${this.props.region}:sns:path//`,
485
+ options: {
486
+ ...{
487
+ credentialsRole: this.apiDestinedRestApi.topicRole,
488
+ requestParameters: this.apiDestinedRestApi.integrationRequestParameters,
489
+ requestTemplates: this.apiDestinedRestApi.integrationRequestTemplates,
490
+ passthroughBehavior: apig.PassthroughBehavior.NEVER,
491
+ integrationResponses: [
492
+ this.apiDestinedRestApi.integrationResponse,
493
+ this.apiDestinedRestApi.integrationErrorResponse,
494
+ ],
495
+ },
496
+ ...this.props.api.integrationOptions,
497
+ },
498
+ })
499
+ }
500
+
501
+ protected createApiDestinedMethodResponse() {
502
+ this.apiDestinedRestApi.methodResponse = {
503
+ ...{
504
+ statusCode: '200',
505
+ responseParameters: {
506
+ 'method.response.header.Content-Type': true,
507
+ 'method.response.header.Access-Control-Allow-Origin': true,
508
+ 'method.response.header.Access-Control-Allow-Credentials': true,
509
+ },
510
+ responseModels: {
511
+ 'application/json': this.apiDestinedRestApi.responseModel,
512
+ },
513
+ },
514
+ ...this.props.api.methodResponse,
515
+ }
516
+ }
517
+
518
+ protected createApiDestinedMethodErrorResponse() {
519
+ this.apiDestinedRestApi.methodErrorResponse = {
520
+ ...{
521
+ statusCode: '400',
522
+ responseParameters: {
523
+ 'method.response.header.Content-Type': true,
524
+ 'method.response.header.Access-Control-Allow-Origin': true,
525
+ 'method.response.header.Access-Control-Allow-Credentials': true,
526
+ },
527
+ responseModels: {
528
+ 'application/json': this.apiDestinedRestApi.errorResponseModel,
529
+ },
530
+ },
531
+ ...this.props.api.methodErrorResponse,
532
+ }
533
+ }
534
+
535
+ protected createApiDestinedResourceMethod() {
536
+ this.apiDestinedRestApi.method = this.apiDestinedRestApi.resource.addMethod(
537
+ 'POST',
538
+ this.apiDestinedRestApi.integration,
539
+ {
540
+ methodResponses: [this.apiDestinedRestApi.methodResponse, this.apiDestinedRestApi.methodErrorResponse],
541
+ }
542
+ )
543
+ }
544
+
545
+ /**
546
+ * @summary Method to create custom restApi domain for Api API
547
+ * @protected
548
+ */
549
+ protected createApiDomain() {
550
+ this.apiDestinedRestApi.domain = this.apiManager.createApiDomain(
551
+ `${this.id}-api-domain`,
552
+ this,
553
+ this.isProductionStage()
554
+ ? `${this.props.apiSubDomain}.${this.fullyQualifiedDomainName}`
555
+ : `${this.props.apiSubDomain}-${this.props.stage}.${this.fullyQualifiedDomainName}`,
556
+ this.apiDestinedRestApi.certificate
557
+ )
558
+ }
559
+
560
+ /**
561
+ * @summary Method to create base path mappings for Api API
562
+ * @protected
563
+ */
564
+ protected createApiBasePathMapping() {
565
+ const apiRootPaths = this.props.apiRootPaths
566
+ if (apiRootPaths && apiRootPaths.length > 0) {
567
+ apiRootPaths.forEach((apiRootPath: string) => {
568
+ this.apiDestinedBasePathMappings.push(
569
+ new apig.BasePathMapping(this, `${this.id}-base-bath-mapping-${apiRootPath}`, {
570
+ basePath: this.props.api.resource,
571
+ domainName: this.apiDestinedRestApi.domain,
572
+ restApi: this.apiDestinedRestApi.api,
573
+ stage: this.apiDestinedRestApi.api.deploymentStage,
574
+ })
575
+ )
576
+ })
577
+ }
578
+ }
579
+
580
+ /**
581
+ * @summary Method to create route53 records for Api API
582
+ * @protected
583
+ */
584
+ protected createApiRouteAssets() {
585
+ this.route53Manager.createApiGatewayARecord(
586
+ `${this.id}-custom-domain-a-record`,
587
+ this,
588
+ this.props.apiSubDomain,
589
+ this.apiDestinedRestApi.domain,
590
+ this.apiDestinedRestApi.hostedZone
591
+ )
592
+ }
593
+ }
@@ -0,0 +1 @@
1
+ export * from './main'
@@ -5,13 +5,16 @@ import * as lambda from 'aws-cdk-lib/aws-lambda'
5
5
  import * as route53 from 'aws-cdk-lib/aws-route53'
6
6
  import * as secretsmanager from 'aws-cdk-lib/aws-secretsmanager'
7
7
  import { Construct } from 'constructs'
8
- import { CommonConstruct } from '../common/commonConstruct'
9
- import { GraphQlApiLambdaEnvironment, GraphQlApiLambdaProps } from '../types'
8
+ import { CommonConstruct } from '../../common'
9
+ import { GraphQlApiLambdaEnvironment, GraphQlApiLambdaProps } from '../../types'
10
10
 
11
11
  /**
12
12
  * @stability stable
13
- * @category Constructs
14
- * @summary Provides a construct to create and deploy a Graphql API as Lambda
13
+ * @category cdk-utils.graphql-api-lambda
14
+ * @subcategory construct
15
+ * @classdesc Provides a construct to create and deploy a Graphql API as Lambda
16
+ *
17
+ * <b>Architecture</b> ![Architecture](./GraphQLApiLambda.jpg)
15
18
  *
16
19
  * @example
17
20
  * import { GraphQLApiLambda, GraphQlApiLambdaProps } '@gradientedge/cdk-utils'
@@ -25,37 +28,25 @@ import { GraphQlApiLambdaEnvironment, GraphQlApiLambdaProps } from '../types'
25
28
  * this.initResources()
26
29
  * }
27
30
  * }
28
- *
29
- * @mermaid
30
- * graph LR;
31
- * A[GraphQLApiLambda]-.->|extends|B(CommonConstruct);
32
- * B(CommonConstruct)-->|extends|C(Construct);
33
- * C(Construct)-->|implements|D(IConstruct);
34
31
  */
35
32
  export class GraphQLApiLambda extends CommonConstruct {
36
- /* graphql api props */
33
+ /* graphql restApi props */
37
34
  props: GraphQlApiLambdaProps
38
35
  id: string
39
36
 
40
- /* graphql api resources */
37
+ /* graphql restApi resources */
41
38
  applicationSecrets: secretsmanager.ISecret[]
42
- graphQLApiHostedZone: route53.IHostedZone
43
- graphQLApiCertificate: acm.ICertificate
44
- graphQLApiDomain: apig.DomainName
45
- graphQLApiBasePathMappings: apig.BasePathMapping[] = []
46
39
  graphQLApiLambdaPolicy: iam.PolicyDocument
47
40
  graphQLApiLambdaRole: iam.Role
48
41
  graphQLApiLambdaEnvironment: GraphQlApiLambdaEnvironment
49
42
  graphQLApiLambdaLayers: lambda.LayerVersion[] = []
50
43
  graphQLApiLambdaFunction: lambda.Function
51
44
  graphQLApi: apig.RestApi
45
+ graphQLApiHostedZone: route53.IHostedZone
46
+ graphQLApiCertificate: acm.ICertificate
47
+ graphQLApiDomain: apig.DomainName
48
+ graphQLApiBasePathMappings: apig.BasePathMapping[] = []
52
49
 
53
- /**
54
- * @summary Constructor to initialise the GraphQLApiLambda Construct
55
- * @param {Construct} parent
56
- * @param {string} id
57
- * @param {GraphQlApiLambdaProps} props
58
- */
59
50
  constructor(parent: Construct, id: string, props: GraphQlApiLambdaProps) {
60
51
  super(parent, id, props)
61
52
 
@@ -196,7 +187,7 @@ export class GraphQLApiLambda extends CommonConstruct {
196
187
  }
197
188
 
198
189
  /**
199
- * @summary Method to create rest api for GraphQL
190
+ * @summary Method to create rest restApi for GraphQL
200
191
  * @protected
201
192
  */
202
193
  protected createRestApi() {
@@ -209,7 +200,7 @@ export class GraphQLApiLambda extends CommonConstruct {
209
200
  }
210
201
 
211
202
  /**
212
- * @summary Method to create custom api domain for GraphQL API
203
+ * @summary Method to create custom restApi domain for GraphQL API
213
204
  * @protected
214
205
  */
215
206
  protected createApiDomain() {
@@ -1,3 +1,4 @@
1
- export * from './graphQLApiLambda'
2
- export * from './siteWithEcsBackend'
3
- export * from './staticSite'
1
+ export * from './api-to-eventbridge-target'
2
+ export * from './graphql-api-lambda'
3
+ export * from './site-with-ecs-backend'
4
+ export * from './static-site'
@@ -0,0 +1 @@
1
+ export * from './main'