@gradientedge/cdk-utils 10.7.0 → 11.0.0

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 (770) hide show
  1. package/dist/src/index.d.ts +4 -0
  2. package/dist/src/index.js +4 -0
  3. package/package.json +26 -114
  4. package/.eslintrc.json +0 -40
  5. package/.husky/pre-commit +0 -4
  6. package/README.md +0 -122
  7. package/app/api-destined-function/node_modules/.bin/mkdirp +0 -21
  8. package/app/api-destined-function/node_modules/.bin/rimraf +0 -21
  9. package/app/api-destined-function/node_modules/.bin/uuid +0 -21
  10. package/app/api-destined-function/package.json +0 -27
  11. package/app/api-destined-function/src/lib/lambda.ts +0 -29
  12. package/babel.config.mjs +0 -16
  13. package/dist/app/api-destined-function/src/lib/lambda.d.ts +0 -16
  14. package/dist/app/api-destined-function/src/lib/lambda.js +0 -27
  15. package/dist/index.d.ts +0 -1
  16. package/dist/index.js +0 -1
  17. package/dist/lib/lambda.d.ts +0 -17
  18. package/dist/lib/lambda.d.ts.map +0 -1
  19. package/dist/lib/lambda.js +0 -28
  20. package/dist/lib/lambda.js.map +0 -1
  21. package/dist/src/lib/aws/common/construct.d.ts +0 -85
  22. package/dist/src/lib/aws/common/construct.js +0 -125
  23. package/dist/src/lib/aws/common/index.d.ts +0 -4
  24. package/dist/src/lib/aws/common/index.js +0 -4
  25. package/dist/src/lib/aws/common/resource-name-formatter.d.ts +0 -13
  26. package/dist/src/lib/aws/common/resource-name-formatter.js +0 -30
  27. package/dist/src/lib/aws/common/stack.d.ts +0 -62
  28. package/dist/src/lib/aws/common/stack.js +0 -139
  29. package/dist/src/lib/aws/common/types.d.ts +0 -30
  30. package/dist/src/lib/aws/common/types.js +0 -1
  31. package/dist/src/lib/aws/construct/api-to-any-target/index.d.ts +0 -3
  32. package/dist/src/lib/aws/construct/api-to-any-target/index.js +0 -3
  33. package/dist/src/lib/aws/construct/api-to-any-target/main.d.ts +0 -47
  34. package/dist/src/lib/aws/construct/api-to-any-target/main.js +0 -154
  35. package/dist/src/lib/aws/construct/api-to-any-target/target.d.ts +0 -23
  36. package/dist/src/lib/aws/construct/api-to-any-target/target.js +0 -14
  37. package/dist/src/lib/aws/construct/api-to-any-target/types.d.ts +0 -60
  38. package/dist/src/lib/aws/construct/api-to-any-target/types.js +0 -1
  39. package/dist/src/lib/aws/construct/api-to-eventbridge-target/api.d.ts +0 -34
  40. package/dist/src/lib/aws/construct/api-to-eventbridge-target/api.js +0 -23
  41. package/dist/src/lib/aws/construct/api-to-eventbridge-target/event.d.ts +0 -15
  42. package/dist/src/lib/aws/construct/api-to-eventbridge-target/event.js +0 -12
  43. package/dist/src/lib/aws/construct/api-to-eventbridge-target/index.d.ts +0 -4
  44. package/dist/src/lib/aws/construct/api-to-eventbridge-target/index.js +0 -4
  45. package/dist/src/lib/aws/construct/api-to-eventbridge-target/main.d.ts +0 -121
  46. package/dist/src/lib/aws/construct/api-to-eventbridge-target/main.js +0 -442
  47. package/dist/src/lib/aws/construct/api-to-eventbridge-target/types.d.ts +0 -100
  48. package/dist/src/lib/aws/construct/api-to-eventbridge-target/types.js +0 -1
  49. package/dist/src/lib/aws/construct/api-to-eventbridge-target-with-sns/api-destined-lambda.d.ts +0 -16
  50. package/dist/src/lib/aws/construct/api-to-eventbridge-target-with-sns/api-destined-lambda.js +0 -12
  51. package/dist/src/lib/aws/construct/api-to-eventbridge-target-with-sns/index.d.ts +0 -3
  52. package/dist/src/lib/aws/construct/api-to-eventbridge-target-with-sns/index.js +0 -3
  53. package/dist/src/lib/aws/construct/api-to-eventbridge-target-with-sns/main.d.ts +0 -159
  54. package/dist/src/lib/aws/construct/api-to-eventbridge-target-with-sns/main.js +0 -547
  55. package/dist/src/lib/aws/construct/api-to-eventbridge-target-with-sns/types.d.ts +0 -22
  56. package/dist/src/lib/aws/construct/api-to-eventbridge-target-with-sns/types.js +0 -1
  57. package/dist/src/lib/aws/construct/api-to-lambda-target/api.d.ts +0 -35
  58. package/dist/src/lib/aws/construct/api-to-lambda-target/api.js +0 -24
  59. package/dist/src/lib/aws/construct/api-to-lambda-target/index.d.ts +0 -3
  60. package/dist/src/lib/aws/construct/api-to-lambda-target/index.js +0 -3
  61. package/dist/src/lib/aws/construct/api-to-lambda-target/main.d.ts +0 -70
  62. package/dist/src/lib/aws/construct/api-to-lambda-target/main.js +0 -218
  63. package/dist/src/lib/aws/construct/api-to-lambda-target/types.d.ts +0 -62
  64. package/dist/src/lib/aws/construct/api-to-lambda-target/types.js +0 -1
  65. package/dist/src/lib/aws/construct/application-configuration/index.d.ts +0 -2
  66. package/dist/src/lib/aws/construct/application-configuration/index.js +0 -2
  67. package/dist/src/lib/aws/construct/application-configuration/main.d.ts +0 -23
  68. package/dist/src/lib/aws/construct/application-configuration/main.js +0 -79
  69. package/dist/src/lib/aws/construct/application-configuration/types.d.ts +0 -6
  70. package/dist/src/lib/aws/construct/application-configuration/types.js +0 -1
  71. package/dist/src/lib/aws/construct/event-handler/handler.d.ts +0 -29
  72. package/dist/src/lib/aws/construct/event-handler/handler.js +0 -21
  73. package/dist/src/lib/aws/construct/event-handler/index.d.ts +0 -3
  74. package/dist/src/lib/aws/construct/event-handler/index.js +0 -3
  75. package/dist/src/lib/aws/construct/event-handler/main.d.ts +0 -91
  76. package/dist/src/lib/aws/construct/event-handler/main.js +0 -196
  77. package/dist/src/lib/aws/construct/event-handler/types.d.ts +0 -41
  78. package/dist/src/lib/aws/construct/event-handler/types.js +0 -1
  79. package/dist/src/lib/aws/construct/index.d.ts +0 -14
  80. package/dist/src/lib/aws/construct/index.js +0 -14
  81. package/dist/src/lib/aws/construct/lambda-with-iam-access/index.d.ts +0 -2
  82. package/dist/src/lib/aws/construct/lambda-with-iam-access/index.js +0 -2
  83. package/dist/src/lib/aws/construct/lambda-with-iam-access/main.d.ts +0 -78
  84. package/dist/src/lib/aws/construct/lambda-with-iam-access/main.js +0 -182
  85. package/dist/src/lib/aws/construct/lambda-with-iam-access/types.d.ts +0 -20
  86. package/dist/src/lib/aws/construct/lambda-with-iam-access/types.js +0 -1
  87. package/dist/src/lib/aws/construct/piped-event-handler/index.d.ts +0 -2
  88. package/dist/src/lib/aws/construct/piped-event-handler/index.js +0 -2
  89. package/dist/src/lib/aws/construct/piped-event-handler/main.d.ts +0 -38
  90. package/dist/src/lib/aws/construct/piped-event-handler/main.js +0 -62
  91. package/dist/src/lib/aws/construct/piped-event-handler/types.d.ts +0 -9
  92. package/dist/src/lib/aws/construct/piped-event-handler/types.js +0 -1
  93. package/dist/src/lib/aws/construct/rest-api-lambda/index.d.ts +0 -2
  94. package/dist/src/lib/aws/construct/rest-api-lambda/index.js +0 -2
  95. package/dist/src/lib/aws/construct/rest-api-lambda/main.d.ts +0 -96
  96. package/dist/src/lib/aws/construct/rest-api-lambda/main.js +0 -170
  97. package/dist/src/lib/aws/construct/rest-api-lambda/types.d.ts +0 -23
  98. package/dist/src/lib/aws/construct/rest-api-lambda/types.js +0 -1
  99. package/dist/src/lib/aws/construct/rest-api-lambda-with-cache/index.d.ts +0 -2
  100. package/dist/src/lib/aws/construct/rest-api-lambda-with-cache/index.js +0 -2
  101. package/dist/src/lib/aws/construct/rest-api-lambda-with-cache/main.d.ts +0 -56
  102. package/dist/src/lib/aws/construct/rest-api-lambda-with-cache/main.js +0 -118
  103. package/dist/src/lib/aws/construct/rest-api-lambda-with-cache/types.d.ts +0 -11
  104. package/dist/src/lib/aws/construct/rest-api-lambda-with-cache/types.js +0 -1
  105. package/dist/src/lib/aws/construct/site-with-ecs-backend/constants.d.ts +0 -4
  106. package/dist/src/lib/aws/construct/site-with-ecs-backend/constants.js +0 -5
  107. package/dist/src/lib/aws/construct/site-with-ecs-backend/index.d.ts +0 -3
  108. package/dist/src/lib/aws/construct/site-with-ecs-backend/index.js +0 -3
  109. package/dist/src/lib/aws/construct/site-with-ecs-backend/main.d.ts +0 -154
  110. package/dist/src/lib/aws/construct/site-with-ecs-backend/main.js +0 -437
  111. package/dist/src/lib/aws/construct/site-with-ecs-backend/types.d.ts +0 -49
  112. package/dist/src/lib/aws/construct/site-with-ecs-backend/types.js +0 -1
  113. package/dist/src/lib/aws/construct/site-with-lambda-backend/constants.d.ts +0 -5
  114. package/dist/src/lib/aws/construct/site-with-lambda-backend/constants.js +0 -6
  115. package/dist/src/lib/aws/construct/site-with-lambda-backend/index.d.ts +0 -3
  116. package/dist/src/lib/aws/construct/site-with-lambda-backend/index.js +0 -3
  117. package/dist/src/lib/aws/construct/site-with-lambda-backend/main.d.ts +0 -116
  118. package/dist/src/lib/aws/construct/site-with-lambda-backend/main.js +0 -316
  119. package/dist/src/lib/aws/construct/site-with-lambda-backend/types.d.ts +0 -45
  120. package/dist/src/lib/aws/construct/site-with-lambda-backend/types.js +0 -1
  121. package/dist/src/lib/aws/construct/static-asset-deployment/index.d.ts +0 -2
  122. package/dist/src/lib/aws/construct/static-asset-deployment/index.js +0 -2
  123. package/dist/src/lib/aws/construct/static-asset-deployment/main.d.ts +0 -41
  124. package/dist/src/lib/aws/construct/static-asset-deployment/main.js +0 -113
  125. package/dist/src/lib/aws/construct/static-asset-deployment/types.d.ts +0 -41
  126. package/dist/src/lib/aws/construct/static-asset-deployment/types.js +0 -1
  127. package/dist/src/lib/aws/construct/static-site/index.d.ts +0 -2
  128. package/dist/src/lib/aws/construct/static-site/index.js +0 -2
  129. package/dist/src/lib/aws/construct/static-site/main.d.ts +0 -84
  130. package/dist/src/lib/aws/construct/static-site/main.js +0 -136
  131. package/dist/src/lib/aws/construct/static-site/types.d.ts +0 -30
  132. package/dist/src/lib/aws/construct/static-site/types.js +0 -1
  133. package/dist/src/lib/aws/index.d.ts +0 -5
  134. package/dist/src/lib/aws/index.js +0 -5
  135. package/dist/src/lib/aws/services/api-gateway/index.d.ts +0 -2
  136. package/dist/src/lib/aws/services/api-gateway/index.js +0 -2
  137. package/dist/src/lib/aws/services/api-gateway/main.d.ts +0 -68
  138. package/dist/src/lib/aws/services/api-gateway/main.js +0 -173
  139. package/dist/src/lib/aws/services/api-gateway/types.d.ts +0 -10
  140. package/dist/src/lib/aws/services/api-gateway/types.js +0 -1
  141. package/dist/src/lib/aws/services/appconfig/constants.d.ts +0 -12
  142. package/dist/src/lib/aws/services/appconfig/constants.js +0 -51
  143. package/dist/src/lib/aws/services/appconfig/index.d.ts +0 -3
  144. package/dist/src/lib/aws/services/appconfig/index.js +0 -3
  145. package/dist/src/lib/aws/services/appconfig/main.d.ts +0 -63
  146. package/dist/src/lib/aws/services/appconfig/main.js +0 -119
  147. package/dist/src/lib/aws/services/appconfig/types.d.ts +0 -17
  148. package/dist/src/lib/aws/services/appconfig/types.js +0 -1
  149. package/dist/src/lib/aws/services/certificate-manager/index.d.ts +0 -2
  150. package/dist/src/lib/aws/services/certificate-manager/index.js +0 -2
  151. package/dist/src/lib/aws/services/certificate-manager/main.d.ts +0 -41
  152. package/dist/src/lib/aws/services/certificate-manager/main.js +0 -62
  153. package/dist/src/lib/aws/services/certificate-manager/types.d.ts +0 -11
  154. package/dist/src/lib/aws/services/certificate-manager/types.js +0 -1
  155. package/dist/src/lib/aws/services/cloudfront/index.d.ts +0 -2
  156. package/dist/src/lib/aws/services/cloudfront/index.js +0 -2
  157. package/dist/src/lib/aws/services/cloudfront/main.d.ts +0 -96
  158. package/dist/src/lib/aws/services/cloudfront/main.js +0 -233
  159. package/dist/src/lib/aws/services/cloudfront/types.d.ts +0 -13
  160. package/dist/src/lib/aws/services/cloudfront/types.js +0 -1
  161. package/dist/src/lib/aws/services/cloudtrail/index.d.ts +0 -2
  162. package/dist/src/lib/aws/services/cloudtrail/index.js +0 -2
  163. package/dist/src/lib/aws/services/cloudtrail/main.d.ts +0 -44
  164. package/dist/src/lib/aws/services/cloudtrail/main.js +0 -71
  165. package/dist/src/lib/aws/services/cloudtrail/types.d.ts +0 -5
  166. package/dist/src/lib/aws/services/cloudtrail/types.js +0 -1
  167. package/dist/src/lib/aws/services/cloudwatch/index.d.ts +0 -3
  168. package/dist/src/lib/aws/services/cloudwatch/index.js +0 -3
  169. package/dist/src/lib/aws/services/cloudwatch/logs.d.ts +0 -47
  170. package/dist/src/lib/aws/services/cloudwatch/logs.js +0 -98
  171. package/dist/src/lib/aws/services/cloudwatch/main.d.ts +0 -207
  172. package/dist/src/lib/aws/services/cloudwatch/main.js +0 -552
  173. package/dist/src/lib/aws/services/cloudwatch/types.d.ts +0 -89
  174. package/dist/src/lib/aws/services/cloudwatch/types.js +0 -1
  175. package/dist/src/lib/aws/services/codebuild/index.d.ts +0 -1
  176. package/dist/src/lib/aws/services/codebuild/index.js +0 -1
  177. package/dist/src/lib/aws/services/codebuild/main.d.ts +0 -36
  178. package/dist/src/lib/aws/services/codebuild/main.js +0 -67
  179. package/dist/src/lib/aws/services/constants.d.ts +0 -4
  180. package/dist/src/lib/aws/services/constants.js +0 -5
  181. package/dist/src/lib/aws/services/dynamodb/index.d.ts +0 -2
  182. package/dist/src/lib/aws/services/dynamodb/index.js +0 -2
  183. package/dist/src/lib/aws/services/dynamodb/main.d.ts +0 -35
  184. package/dist/src/lib/aws/services/dynamodb/main.js +0 -72
  185. package/dist/src/lib/aws/services/dynamodb/types.d.ts +0 -10
  186. package/dist/src/lib/aws/services/dynamodb/types.js +0 -1
  187. package/dist/src/lib/aws/services/elastic-container-registry/index.d.ts +0 -1
  188. package/dist/src/lib/aws/services/elastic-container-registry/index.js +0 -1
  189. package/dist/src/lib/aws/services/elastic-container-registry/main.d.ts +0 -27
  190. package/dist/src/lib/aws/services/elastic-container-registry/main.js +0 -33
  191. package/dist/src/lib/aws/services/elastic-container-service/index.d.ts +0 -2
  192. package/dist/src/lib/aws/services/elastic-container-service/index.js +0 -2
  193. package/dist/src/lib/aws/services/elastic-container-service/main.d.ts +0 -56
  194. package/dist/src/lib/aws/services/elastic-container-service/main.js +0 -149
  195. package/dist/src/lib/aws/services/elastic-container-service/types.d.ts +0 -45
  196. package/dist/src/lib/aws/services/elastic-container-service/types.js +0 -1
  197. package/dist/src/lib/aws/services/elastic-file-system/index.d.ts +0 -2
  198. package/dist/src/lib/aws/services/elastic-file-system/index.js +0 -2
  199. package/dist/src/lib/aws/services/elastic-file-system/main.d.ts +0 -42
  200. package/dist/src/lib/aws/services/elastic-file-system/main.js +0 -76
  201. package/dist/src/lib/aws/services/elastic-file-system/types.d.ts +0 -15
  202. package/dist/src/lib/aws/services/elastic-file-system/types.js +0 -1
  203. package/dist/src/lib/aws/services/elastic-kubernetes-service/index.d.ts +0 -2
  204. package/dist/src/lib/aws/services/elastic-kubernetes-service/index.js +0 -2
  205. package/dist/src/lib/aws/services/elastic-kubernetes-service/main.d.ts +0 -32
  206. package/dist/src/lib/aws/services/elastic-kubernetes-service/main.js +0 -85
  207. package/dist/src/lib/aws/services/elastic-kubernetes-service/types.d.ts +0 -7
  208. package/dist/src/lib/aws/services/elastic-kubernetes-service/types.js +0 -1
  209. package/dist/src/lib/aws/services/elasticache/index.d.ts +0 -2
  210. package/dist/src/lib/aws/services/elasticache/index.js +0 -2
  211. package/dist/src/lib/aws/services/elasticache/main.d.ts +0 -47
  212. package/dist/src/lib/aws/services/elasticache/main.js +0 -90
  213. package/dist/src/lib/aws/services/elasticache/types.d.ts +0 -9
  214. package/dist/src/lib/aws/services/elasticache/types.js +0 -1
  215. package/dist/src/lib/aws/services/eventbridge/index.d.ts +0 -3
  216. package/dist/src/lib/aws/services/eventbridge/index.js +0 -3
  217. package/dist/src/lib/aws/services/eventbridge/main.d.ts +0 -93
  218. package/dist/src/lib/aws/services/eventbridge/main.js +0 -295
  219. package/dist/src/lib/aws/services/eventbridge/target.d.ts +0 -57
  220. package/dist/src/lib/aws/services/eventbridge/target.js +0 -61
  221. package/dist/src/lib/aws/services/eventbridge/types.d.ts +0 -43
  222. package/dist/src/lib/aws/services/eventbridge/types.js +0 -1
  223. package/dist/src/lib/aws/services/evidently/index.d.ts +0 -2
  224. package/dist/src/lib/aws/services/evidently/index.js +0 -2
  225. package/dist/src/lib/aws/services/evidently/main.d.ts +0 -56
  226. package/dist/src/lib/aws/services/evidently/main.js +0 -114
  227. package/dist/src/lib/aws/services/evidently/types.d.ts +0 -21
  228. package/dist/src/lib/aws/services/evidently/types.js +0 -1
  229. package/dist/src/lib/aws/services/identity-access-management/index.d.ts +0 -1
  230. package/dist/src/lib/aws/services/identity-access-management/index.js +0 -1
  231. package/dist/src/lib/aws/services/identity-access-management/main.d.ts +0 -263
  232. package/dist/src/lib/aws/services/identity-access-management/main.js +0 -609
  233. package/dist/src/lib/aws/services/index.d.ts +0 -28
  234. package/dist/src/lib/aws/services/index.js +0 -28
  235. package/dist/src/lib/aws/services/key-management-service/index.d.ts +0 -2
  236. package/dist/src/lib/aws/services/key-management-service/index.js +0 -2
  237. package/dist/src/lib/aws/services/key-management-service/main.d.ts +0 -28
  238. package/dist/src/lib/aws/services/key-management-service/main.js +0 -39
  239. package/dist/src/lib/aws/services/key-management-service/types.d.ts +0 -5
  240. package/dist/src/lib/aws/services/key-management-service/types.js +0 -1
  241. package/dist/src/lib/aws/services/lambda/index.d.ts +0 -2
  242. package/dist/src/lib/aws/services/lambda/index.js +0 -2
  243. package/dist/src/lib/aws/services/lambda/main.d.ts +0 -89
  244. package/dist/src/lib/aws/services/lambda/main.js +0 -232
  245. package/dist/src/lib/aws/services/lambda/types.d.ts +0 -48
  246. package/dist/src/lib/aws/services/lambda/types.js +0 -1
  247. package/dist/src/lib/aws/services/route53/index.d.ts +0 -2
  248. package/dist/src/lib/aws/services/route53/index.js +0 -2
  249. package/dist/src/lib/aws/services/route53/main.d.ts +0 -66
  250. package/dist/src/lib/aws/services/route53/main.js +0 -136
  251. package/dist/src/lib/aws/services/route53/types.d.ts +0 -6
  252. package/dist/src/lib/aws/services/route53/types.js +0 -1
  253. package/dist/src/lib/aws/services/secrets-manager/index.d.ts +0 -2
  254. package/dist/src/lib/aws/services/secrets-manager/index.js +0 -2
  255. package/dist/src/lib/aws/services/secrets-manager/main.d.ts +0 -43
  256. package/dist/src/lib/aws/services/secrets-manager/main.js +0 -71
  257. package/dist/src/lib/aws/services/secrets-manager/types.d.ts +0 -3
  258. package/dist/src/lib/aws/services/secrets-manager/types.js +0 -1
  259. package/dist/src/lib/aws/services/simple-notification-service/index.d.ts +0 -2
  260. package/dist/src/lib/aws/services/simple-notification-service/index.js +0 -2
  261. package/dist/src/lib/aws/services/simple-notification-service/main.d.ts +0 -38
  262. package/dist/src/lib/aws/services/simple-notification-service/main.js +0 -68
  263. package/dist/src/lib/aws/services/simple-notification-service/types.d.ts +0 -5
  264. package/dist/src/lib/aws/services/simple-notification-service/types.js +0 -1
  265. package/dist/src/lib/aws/services/simple-queue-service/index.d.ts +0 -2
  266. package/dist/src/lib/aws/services/simple-queue-service/index.js +0 -2
  267. package/dist/src/lib/aws/services/simple-queue-service/main.d.ts +0 -45
  268. package/dist/src/lib/aws/services/simple-queue-service/main.js +0 -101
  269. package/dist/src/lib/aws/services/simple-queue-service/types.d.ts +0 -15
  270. package/dist/src/lib/aws/services/simple-queue-service/types.js +0 -1
  271. package/dist/src/lib/aws/services/simple-storage-service/index.d.ts +0 -2
  272. package/dist/src/lib/aws/services/simple-storage-service/index.js +0 -2
  273. package/dist/src/lib/aws/services/simple-storage-service/main.d.ts +0 -79
  274. package/dist/src/lib/aws/services/simple-storage-service/main.js +0 -191
  275. package/dist/src/lib/aws/services/simple-storage-service/types.d.ts +0 -25
  276. package/dist/src/lib/aws/services/simple-storage-service/types.js +0 -1
  277. package/dist/src/lib/aws/services/step-function/index.d.ts +0 -2
  278. package/dist/src/lib/aws/services/step-function/index.js +0 -2
  279. package/dist/src/lib/aws/services/step-function/main.d.ts +0 -161
  280. package/dist/src/lib/aws/services/step-function/main.js +0 -380
  281. package/dist/src/lib/aws/services/step-function/types.d.ts +0 -88
  282. package/dist/src/lib/aws/services/step-function/types.js +0 -1
  283. package/dist/src/lib/aws/services/systems-manager/index.d.ts +0 -2
  284. package/dist/src/lib/aws/services/systems-manager/index.js +0 -2
  285. package/dist/src/lib/aws/services/systems-manager/main.d.ts +0 -55
  286. package/dist/src/lib/aws/services/systems-manager/main.js +0 -97
  287. package/dist/src/lib/aws/services/systems-manager/types.d.ts +0 -9
  288. package/dist/src/lib/aws/services/systems-manager/types.js +0 -1
  289. package/dist/src/lib/aws/services/virtual-private-cloud/index.d.ts +0 -2
  290. package/dist/src/lib/aws/services/virtual-private-cloud/index.js +0 -2
  291. package/dist/src/lib/aws/services/virtual-private-cloud/ipv6.d.ts +0 -7
  292. package/dist/src/lib/aws/services/virtual-private-cloud/ipv6.js +0 -38
  293. package/dist/src/lib/aws/services/virtual-private-cloud/main.d.ts +0 -43
  294. package/dist/src/lib/aws/services/virtual-private-cloud/main.js +0 -87
  295. package/dist/src/lib/aws/services/virtual-private-cloud/types.d.ts +0 -4
  296. package/dist/src/lib/aws/services/virtual-private-cloud/types.js +0 -1
  297. package/dist/src/lib/aws/services/web-application-firewall/index.d.ts +0 -2
  298. package/dist/src/lib/aws/services/web-application-firewall/index.js +0 -2
  299. package/dist/src/lib/aws/services/web-application-firewall/main.d.ts +0 -35
  300. package/dist/src/lib/aws/services/web-application-firewall/main.js +0 -61
  301. package/dist/src/lib/aws/services/web-application-firewall/types.d.ts +0 -9
  302. package/dist/src/lib/aws/services/web-application-firewall/types.js +0 -1
  303. package/dist/src/lib/aws/types/index.d.ts +0 -6
  304. package/dist/src/lib/aws/types/index.js +0 -1
  305. package/dist/src/lib/aws/utils/index.d.ts +0 -45
  306. package/dist/src/lib/aws/utils/index.js +0 -61
  307. package/dist/src/lib/azure/common/constants.d.ts +0 -9
  308. package/dist/src/lib/azure/common/constants.js +0 -10
  309. package/dist/src/lib/azure/common/construct.d.ts +0 -68
  310. package/dist/src/lib/azure/common/construct.js +0 -92
  311. package/dist/src/lib/azure/common/index.d.ts +0 -6
  312. package/dist/src/lib/azure/common/index.js +0 -6
  313. package/dist/src/lib/azure/common/resource-name-formatter.d.ts +0 -18
  314. package/dist/src/lib/azure/common/resource-name-formatter.js +0 -34
  315. package/dist/src/lib/azure/common/stack.d.ts +0 -45
  316. package/dist/src/lib/azure/common/stack.js +0 -137
  317. package/dist/src/lib/azure/common/tagging.d.ts +0 -29
  318. package/dist/src/lib/azure/common/tagging.js +0 -78
  319. package/dist/src/lib/azure/common/types.d.ts +0 -46
  320. package/dist/src/lib/azure/common/types.js +0 -1
  321. package/dist/src/lib/azure/index.d.ts +0 -3
  322. package/dist/src/lib/azure/index.js +0 -3
  323. package/dist/src/lib/azure/services/api-management/index.d.ts +0 -2
  324. package/dist/src/lib/azure/services/api-management/index.js +0 -2
  325. package/dist/src/lib/azure/services/api-management/main.d.ts +0 -65
  326. package/dist/src/lib/azure/services/api-management/main.js +0 -278
  327. package/dist/src/lib/azure/services/api-management/types.d.ts +0 -51
  328. package/dist/src/lib/azure/services/api-management/types.js +0 -1
  329. package/dist/src/lib/azure/services/app-configuration/index.d.ts +0 -2
  330. package/dist/src/lib/azure/services/app-configuration/index.js +0 -2
  331. package/dist/src/lib/azure/services/app-configuration/main.d.ts +0 -29
  332. package/dist/src/lib/azure/services/app-configuration/main.js +0 -52
  333. package/dist/src/lib/azure/services/app-configuration/types.d.ts +0 -3
  334. package/dist/src/lib/azure/services/app-configuration/types.js +0 -1
  335. package/dist/src/lib/azure/services/app-service/index.d.ts +0 -2
  336. package/dist/src/lib/azure/services/app-service/index.js +0 -2
  337. package/dist/src/lib/azure/services/app-service/main.d.ts +0 -37
  338. package/dist/src/lib/azure/services/app-service/main.js +0 -82
  339. package/dist/src/lib/azure/services/app-service/types.d.ts +0 -6
  340. package/dist/src/lib/azure/services/app-service/types.js +0 -1
  341. package/dist/src/lib/azure/services/application-insights/index.d.ts +0 -2
  342. package/dist/src/lib/azure/services/application-insights/index.js +0 -2
  343. package/dist/src/lib/azure/services/application-insights/main.d.ts +0 -29
  344. package/dist/src/lib/azure/services/application-insights/main.js +0 -47
  345. package/dist/src/lib/azure/services/application-insights/types.d.ts +0 -3
  346. package/dist/src/lib/azure/services/application-insights/types.js +0 -1
  347. package/dist/src/lib/azure/services/cosmosdb/index.d.ts +0 -2
  348. package/dist/src/lib/azure/services/cosmosdb/index.js +0 -2
  349. package/dist/src/lib/azure/services/cosmosdb/main.d.ts +0 -45
  350. package/dist/src/lib/azure/services/cosmosdb/main.js +0 -93
  351. package/dist/src/lib/azure/services/cosmosdb/types.d.ts +0 -7
  352. package/dist/src/lib/azure/services/cosmosdb/types.js +0 -1
  353. package/dist/src/lib/azure/services/dns/index.d.ts +0 -2
  354. package/dist/src/lib/azure/services/dns/index.js +0 -2
  355. package/dist/src/lib/azure/services/dns/main.d.ts +0 -53
  356. package/dist/src/lib/azure/services/dns/main.js +0 -103
  357. package/dist/src/lib/azure/services/dns/types.d.ts +0 -9
  358. package/dist/src/lib/azure/services/dns/types.js +0 -1
  359. package/dist/src/lib/azure/services/eventgrid/index.d.ts +0 -2
  360. package/dist/src/lib/azure/services/eventgrid/index.js +0 -2
  361. package/dist/src/lib/azure/services/eventgrid/main.d.ts +0 -64
  362. package/dist/src/lib/azure/services/eventgrid/main.js +0 -137
  363. package/dist/src/lib/azure/services/eventgrid/types.d.ts +0 -11
  364. package/dist/src/lib/azure/services/eventgrid/types.js +0 -1
  365. package/dist/src/lib/azure/services/function/index.d.ts +0 -2
  366. package/dist/src/lib/azure/services/function/index.js +0 -2
  367. package/dist/src/lib/azure/services/function/main.d.ts +0 -47
  368. package/dist/src/lib/azure/services/function/main.js +0 -109
  369. package/dist/src/lib/azure/services/function/types.d.ts +0 -21
  370. package/dist/src/lib/azure/services/function/types.js +0 -1
  371. package/dist/src/lib/azure/services/index.d.ts +0 -15
  372. package/dist/src/lib/azure/services/index.js +0 -15
  373. package/dist/src/lib/azure/services/key-vault/index.d.ts +0 -2
  374. package/dist/src/lib/azure/services/key-vault/index.js +0 -2
  375. package/dist/src/lib/azure/services/key-vault/main.d.ts +0 -29
  376. package/dist/src/lib/azure/services/key-vault/main.js +0 -58
  377. package/dist/src/lib/azure/services/key-vault/types.d.ts +0 -4
  378. package/dist/src/lib/azure/services/key-vault/types.js +0 -1
  379. package/dist/src/lib/azure/services/monitor/index.d.ts +0 -2
  380. package/dist/src/lib/azure/services/monitor/index.js +0 -2
  381. package/dist/src/lib/azure/services/monitor/main.d.ts +0 -29
  382. package/dist/src/lib/azure/services/monitor/main.js +0 -35
  383. package/dist/src/lib/azure/services/monitor/types.d.ts +0 -3
  384. package/dist/src/lib/azure/services/monitor/types.js +0 -1
  385. package/dist/src/lib/azure/services/operational-insights/index.d.ts +0 -2
  386. package/dist/src/lib/azure/services/operational-insights/index.js +0 -2
  387. package/dist/src/lib/azure/services/operational-insights/main.d.ts +0 -29
  388. package/dist/src/lib/azure/services/operational-insights/main.js +0 -50
  389. package/dist/src/lib/azure/services/operational-insights/types.d.ts +0 -3
  390. package/dist/src/lib/azure/services/operational-insights/types.js +0 -1
  391. package/dist/src/lib/azure/services/redis/index.d.ts +0 -2
  392. package/dist/src/lib/azure/services/redis/index.js +0 -2
  393. package/dist/src/lib/azure/services/redis/main.d.ts +0 -29
  394. package/dist/src/lib/azure/services/redis/main.js +0 -51
  395. package/dist/src/lib/azure/services/redis/types.d.ts +0 -3
  396. package/dist/src/lib/azure/services/redis/types.js +0 -1
  397. package/dist/src/lib/azure/services/resource-group/index.d.ts +0 -2
  398. package/dist/src/lib/azure/services/resource-group/index.js +0 -2
  399. package/dist/src/lib/azure/services/resource-group/main.d.ts +0 -29
  400. package/dist/src/lib/azure/services/resource-group/main.js +0 -39
  401. package/dist/src/lib/azure/services/resource-group/types.d.ts +0 -3
  402. package/dist/src/lib/azure/services/resource-group/types.js +0 -1
  403. package/dist/src/lib/azure/services/servicebus/index.d.ts +0 -2
  404. package/dist/src/lib/azure/services/servicebus/index.js +0 -2
  405. package/dist/src/lib/azure/services/servicebus/main.d.ts +0 -61
  406. package/dist/src/lib/azure/services/servicebus/main.js +0 -122
  407. package/dist/src/lib/azure/services/servicebus/types.d.ts +0 -11
  408. package/dist/src/lib/azure/services/servicebus/types.js +0 -1
  409. package/dist/src/lib/azure/services/storage/index.d.ts +0 -2
  410. package/dist/src/lib/azure/services/storage/index.js +0 -2
  411. package/dist/src/lib/azure/services/storage/main.d.ts +0 -67
  412. package/dist/src/lib/azure/services/storage/main.js +0 -131
  413. package/dist/src/lib/azure/services/storage/types.d.ts +0 -15
  414. package/dist/src/lib/azure/services/storage/types.js +0 -1
  415. package/dist/src/lib/azure/types/index.d.ts +0 -4
  416. package/dist/src/lib/azure/types/index.js +0 -1
  417. package/dist/src/lib/cloudflare/common/construct.d.ts +0 -47
  418. package/dist/src/lib/cloudflare/common/construct.js +0 -68
  419. package/dist/src/lib/cloudflare/common/index.d.ts +0 -3
  420. package/dist/src/lib/cloudflare/common/index.js +0 -3
  421. package/dist/src/lib/cloudflare/common/stack.d.ts +0 -43
  422. package/dist/src/lib/cloudflare/common/stack.js +0 -120
  423. package/dist/src/lib/cloudflare/common/types.d.ts +0 -9
  424. package/dist/src/lib/cloudflare/common/types.js +0 -1
  425. package/dist/src/lib/cloudflare/construct/index.d.ts +0 -2
  426. package/dist/src/lib/cloudflare/construct/index.js +0 -2
  427. package/dist/src/lib/cloudflare/construct/pages-static-site/index.d.ts +0 -2
  428. package/dist/src/lib/cloudflare/construct/pages-static-site/index.js +0 -2
  429. package/dist/src/lib/cloudflare/construct/pages-static-site/main.d.ts +0 -90
  430. package/dist/src/lib/cloudflare/construct/pages-static-site/main.js +0 -168
  431. package/dist/src/lib/cloudflare/construct/pages-static-site/types.d.ts +0 -11
  432. package/dist/src/lib/cloudflare/construct/pages-static-site/types.js +0 -1
  433. package/dist/src/lib/cloudflare/construct/worker-site/index.d.ts +0 -2
  434. package/dist/src/lib/cloudflare/construct/worker-site/index.js +0 -2
  435. package/dist/src/lib/cloudflare/construct/worker-site/main.d.ts +0 -76
  436. package/dist/src/lib/cloudflare/construct/worker-site/main.js +0 -139
  437. package/dist/src/lib/cloudflare/construct/worker-site/types.d.ts +0 -11
  438. package/dist/src/lib/cloudflare/construct/worker-site/types.js +0 -1
  439. package/dist/src/lib/cloudflare/index.d.ts +0 -4
  440. package/dist/src/lib/cloudflare/index.js +0 -4
  441. package/dist/src/lib/cloudflare/services/access/index.d.ts +0 -2
  442. package/dist/src/lib/cloudflare/services/access/index.js +0 -2
  443. package/dist/src/lib/cloudflare/services/access/main.d.ts +0 -108
  444. package/dist/src/lib/cloudflare/services/access/main.js +0 -237
  445. package/dist/src/lib/cloudflare/services/access/types.d.ts +0 -23
  446. package/dist/src/lib/cloudflare/services/access/types.js +0 -1
  447. package/dist/src/lib/cloudflare/services/api-shield/index.d.ts +0 -2
  448. package/dist/src/lib/cloudflare/services/api-shield/index.js +0 -2
  449. package/dist/src/lib/cloudflare/services/api-shield/main.d.ts +0 -61
  450. package/dist/src/lib/cloudflare/services/api-shield/main.js +0 -111
  451. package/dist/src/lib/cloudflare/services/api-shield/types.d.ts +0 -11
  452. package/dist/src/lib/cloudflare/services/api-shield/types.js +0 -1
  453. package/dist/src/lib/cloudflare/services/argo/index.d.ts +0 -2
  454. package/dist/src/lib/cloudflare/services/argo/index.js +0 -2
  455. package/dist/src/lib/cloudflare/services/argo/main.d.ts +0 -37
  456. package/dist/src/lib/cloudflare/services/argo/main.js +0 -56
  457. package/dist/src/lib/cloudflare/services/argo/types.d.ts +0 -5
  458. package/dist/src/lib/cloudflare/services/argo/types.js +0 -1
  459. package/dist/src/lib/cloudflare/services/filter/index.d.ts +0 -2
  460. package/dist/src/lib/cloudflare/services/filter/index.js +0 -2
  461. package/dist/src/lib/cloudflare/services/filter/main.d.ts +0 -29
  462. package/dist/src/lib/cloudflare/services/filter/main.js +0 -38
  463. package/dist/src/lib/cloudflare/services/filter/types.d.ts +0 -3
  464. package/dist/src/lib/cloudflare/services/filter/types.js +0 -1
  465. package/dist/src/lib/cloudflare/services/firewall/index.d.ts +0 -2
  466. package/dist/src/lib/cloudflare/services/firewall/index.js +0 -2
  467. package/dist/src/lib/cloudflare/services/firewall/main.d.ts +0 -29
  468. package/dist/src/lib/cloudflare/services/firewall/main.js +0 -38
  469. package/dist/src/lib/cloudflare/services/firewall/types.d.ts +0 -3
  470. package/dist/src/lib/cloudflare/services/firewall/types.js +0 -1
  471. package/dist/src/lib/cloudflare/services/index.d.ts +0 -10
  472. package/dist/src/lib/cloudflare/services/index.js +0 -10
  473. package/dist/src/lib/cloudflare/services/page/index.d.ts +0 -2
  474. package/dist/src/lib/cloudflare/services/page/index.js +0 -2
  475. package/dist/src/lib/cloudflare/services/page/main.d.ts +0 -46
  476. package/dist/src/lib/cloudflare/services/page/main.js +0 -82
  477. package/dist/src/lib/cloudflare/services/page/types.d.ts +0 -14
  478. package/dist/src/lib/cloudflare/services/page/types.js +0 -1
  479. package/dist/src/lib/cloudflare/services/record/index.d.ts +0 -2
  480. package/dist/src/lib/cloudflare/services/record/index.js +0 -2
  481. package/dist/src/lib/cloudflare/services/record/main.d.ts +0 -29
  482. package/dist/src/lib/cloudflare/services/record/main.js +0 -38
  483. package/dist/src/lib/cloudflare/services/record/types.d.ts +0 -3
  484. package/dist/src/lib/cloudflare/services/record/types.js +0 -1
  485. package/dist/src/lib/cloudflare/services/rule-set/index.d.ts +0 -2
  486. package/dist/src/lib/cloudflare/services/rule-set/index.js +0 -2
  487. package/dist/src/lib/cloudflare/services/rule-set/main.d.ts +0 -29
  488. package/dist/src/lib/cloudflare/services/rule-set/main.js +0 -38
  489. package/dist/src/lib/cloudflare/services/rule-set/types.d.ts +0 -3
  490. package/dist/src/lib/cloudflare/services/rule-set/types.js +0 -1
  491. package/dist/src/lib/cloudflare/services/worker/index.d.ts +0 -2
  492. package/dist/src/lib/cloudflare/services/worker/index.js +0 -2
  493. package/dist/src/lib/cloudflare/services/worker/main.d.ts +0 -69
  494. package/dist/src/lib/cloudflare/services/worker/main.js +0 -120
  495. package/dist/src/lib/cloudflare/services/worker/types.d.ts +0 -13
  496. package/dist/src/lib/cloudflare/services/worker/types.js +0 -1
  497. package/dist/src/lib/cloudflare/services/zone/index.d.ts +0 -2
  498. package/dist/src/lib/cloudflare/services/zone/index.js +0 -2
  499. package/dist/src/lib/cloudflare/services/zone/main.d.ts +0 -78
  500. package/dist/src/lib/cloudflare/services/zone/main.js +0 -153
  501. package/dist/src/lib/cloudflare/services/zone/types.d.ts +0 -19
  502. package/dist/src/lib/cloudflare/services/zone/types.js +0 -1
  503. package/dist/src/lib/cloudflare/types/index.d.ts +0 -3
  504. package/dist/src/lib/cloudflare/types/index.js +0 -1
  505. package/dist/src/lib/common/construct.d.ts +0 -29
  506. package/dist/src/lib/common/construct.js +0 -4
  507. package/dist/src/lib/common/index.d.ts +0 -5
  508. package/dist/src/lib/common/index.js +0 -12
  509. package/dist/src/lib/common/stack.d.ts +0 -21
  510. package/dist/src/lib/common/stack.js +0 -4
  511. package/dist/src/lib/common/types.d.ts +0 -13
  512. package/dist/src/lib/common/types.js +0 -1
  513. package/dist/src/lib/common/utils.d.ts +0 -37
  514. package/dist/src/lib/common/utils.js +0 -39
  515. package/dist/src/lib/index.d.ts +0 -4
  516. package/dist/src/lib/index.js +0 -4
  517. package/dist/tsconfig.tsbuildinfo +0 -1
  518. package/eslint.config.mjs +0 -63
  519. package/index.ts +0 -1
  520. package/pnpm-workspace.yaml +0 -3
  521. package/src/lib/aws/common/construct.ts +0 -167
  522. package/src/lib/aws/common/index.ts +0 -4
  523. package/src/lib/aws/common/resource-name-formatter.ts +0 -37
  524. package/src/lib/aws/common/stack.ts +0 -157
  525. package/src/lib/aws/common/types.ts +0 -30
  526. package/src/lib/aws/construct/api-to-any-target/index.ts +0 -3
  527. package/src/lib/aws/construct/api-to-any-target/main.ts +0 -235
  528. package/src/lib/aws/construct/api-to-any-target/target.ts +0 -29
  529. package/src/lib/aws/construct/api-to-any-target/types.ts +0 -69
  530. package/src/lib/aws/construct/api-to-eventbridge-target/api.ts +0 -40
  531. package/src/lib/aws/construct/api-to-eventbridge-target/event.ts +0 -16
  532. package/src/lib/aws/construct/api-to-eventbridge-target/index.ts +0 -4
  533. package/src/lib/aws/construct/api-to-eventbridge-target/main.ts +0 -547
  534. package/src/lib/aws/construct/api-to-eventbridge-target/types.ts +0 -113
  535. package/src/lib/aws/construct/api-to-eventbridge-target-with-sns/api-destined-lambda.ts +0 -17
  536. package/src/lib/aws/construct/api-to-eventbridge-target-with-sns/index.ts +0 -3
  537. package/src/lib/aws/construct/api-to-eventbridge-target-with-sns/main.ts +0 -675
  538. package/src/lib/aws/construct/api-to-eventbridge-target-with-sns/types.ts +0 -24
  539. package/src/lib/aws/construct/api-to-lambda-target/api.ts +0 -42
  540. package/src/lib/aws/construct/api-to-lambda-target/index.ts +0 -3
  541. package/src/lib/aws/construct/api-to-lambda-target/main.ts +0 -284
  542. package/src/lib/aws/construct/api-to-lambda-target/types.ts +0 -72
  543. package/src/lib/aws/construct/application-configuration/index.ts +0 -2
  544. package/src/lib/aws/construct/application-configuration/main.ts +0 -125
  545. package/src/lib/aws/construct/application-configuration/types.ts +0 -7
  546. package/src/lib/aws/construct/event-handler/handler.ts +0 -30
  547. package/src/lib/aws/construct/event-handler/index.ts +0 -3
  548. package/src/lib/aws/construct/event-handler/main.ts +0 -254
  549. package/src/lib/aws/construct/event-handler/types.ts +0 -50
  550. package/src/lib/aws/construct/index.ts +0 -14
  551. package/src/lib/aws/construct/lambda-with-iam-access/index.ts +0 -2
  552. package/src/lib/aws/construct/lambda-with-iam-access/main.ts +0 -241
  553. package/src/lib/aws/construct/lambda-with-iam-access/types.ts +0 -21
  554. package/src/lib/aws/construct/piped-event-handler/index.ts +0 -2
  555. package/src/lib/aws/construct/piped-event-handler/main.ts +0 -81
  556. package/src/lib/aws/construct/piped-event-handler/types.ts +0 -10
  557. package/src/lib/aws/construct/rest-api-lambda/index.ts +0 -2
  558. package/src/lib/aws/construct/rest-api-lambda/main.ts +0 -246
  559. package/src/lib/aws/construct/rest-api-lambda/types.ts +0 -24
  560. package/src/lib/aws/construct/rest-api-lambda-with-cache/index.ts +0 -2
  561. package/src/lib/aws/construct/rest-api-lambda-with-cache/main.ts +0 -166
  562. package/src/lib/aws/construct/rest-api-lambda-with-cache/types.ts +0 -12
  563. package/src/lib/aws/construct/site-with-ecs-backend/constants.ts +0 -4
  564. package/src/lib/aws/construct/site-with-ecs-backend/index.ts +0 -3
  565. package/src/lib/aws/construct/site-with-ecs-backend/main.ts +0 -587
  566. package/src/lib/aws/construct/site-with-ecs-backend/types.ts +0 -71
  567. package/src/lib/aws/construct/site-with-lambda-backend/constants.ts +0 -6
  568. package/src/lib/aws/construct/site-with-lambda-backend/index.ts +0 -3
  569. package/src/lib/aws/construct/site-with-lambda-backend/main.ts +0 -443
  570. package/src/lib/aws/construct/site-with-lambda-backend/types.ts +0 -63
  571. package/src/lib/aws/construct/static-asset-deployment/index.ts +0 -2
  572. package/src/lib/aws/construct/static-asset-deployment/main.ts +0 -131
  573. package/src/lib/aws/construct/static-asset-deployment/types.ts +0 -44
  574. package/src/lib/aws/construct/static-site/index.ts +0 -2
  575. package/src/lib/aws/construct/static-site/main.ts +0 -212
  576. package/src/lib/aws/construct/static-site/types.ts +0 -31
  577. package/src/lib/aws/index.ts +0 -5
  578. package/src/lib/aws/services/api-gateway/index.ts +0 -2
  579. package/src/lib/aws/services/api-gateway/main.ts +0 -225
  580. package/src/lib/aws/services/api-gateway/types.ts +0 -12
  581. package/src/lib/aws/services/appconfig/constants.ts +0 -52
  582. package/src/lib/aws/services/appconfig/index.ts +0 -3
  583. package/src/lib/aws/services/appconfig/main.ts +0 -155
  584. package/src/lib/aws/services/appconfig/types.ts +0 -25
  585. package/src/lib/aws/services/certificate-manager/index.ts +0 -2
  586. package/src/lib/aws/services/certificate-manager/main.ts +0 -73
  587. package/src/lib/aws/services/certificate-manager/types.ts +0 -12
  588. package/src/lib/aws/services/cloudfront/index.ts +0 -2
  589. package/src/lib/aws/services/cloudfront/main.ts +0 -315
  590. package/src/lib/aws/services/cloudfront/types.ts +0 -15
  591. package/src/lib/aws/services/cloudtrail/index.ts +0 -2
  592. package/src/lib/aws/services/cloudtrail/main.ts +0 -87
  593. package/src/lib/aws/services/cloudtrail/types.ts +0 -5
  594. package/src/lib/aws/services/cloudwatch/index.ts +0 -3
  595. package/src/lib/aws/services/cloudwatch/logs.ts +0 -109
  596. package/src/lib/aws/services/cloudwatch/main.ts +0 -612
  597. package/src/lib/aws/services/cloudwatch/types.ts +0 -99
  598. package/src/lib/aws/services/codebuild/index.ts +0 -1
  599. package/src/lib/aws/services/codebuild/main.ts +0 -78
  600. package/src/lib/aws/services/constants.ts +0 -4
  601. package/src/lib/aws/services/dynamodb/index.ts +0 -2
  602. package/src/lib/aws/services/dynamodb/main.ts +0 -80
  603. package/src/lib/aws/services/dynamodb/types.ts +0 -12
  604. package/src/lib/aws/services/elastic-container-registry/index.ts +0 -1
  605. package/src/lib/aws/services/elastic-container-registry/main.ts +0 -37
  606. package/src/lib/aws/services/elastic-container-service/index.ts +0 -2
  607. package/src/lib/aws/services/elastic-container-service/main.ts +0 -195
  608. package/src/lib/aws/services/elastic-container-service/types.ts +0 -57
  609. package/src/lib/aws/services/elastic-file-system/index.ts +0 -2
  610. package/src/lib/aws/services/elastic-file-system/main.ts +0 -92
  611. package/src/lib/aws/services/elastic-file-system/types.ts +0 -16
  612. package/src/lib/aws/services/elastic-kubernetes-service/index.ts +0 -2
  613. package/src/lib/aws/services/elastic-kubernetes-service/main.ts +0 -100
  614. package/src/lib/aws/services/elastic-kubernetes-service/types.ts +0 -8
  615. package/src/lib/aws/services/elasticache/index.ts +0 -2
  616. package/src/lib/aws/services/elasticache/main.ts +0 -115
  617. package/src/lib/aws/services/elasticache/types.ts +0 -9
  618. package/src/lib/aws/services/eventbridge/index.ts +0 -3
  619. package/src/lib/aws/services/eventbridge/main.ts +0 -387
  620. package/src/lib/aws/services/eventbridge/target.ts +0 -84
  621. package/src/lib/aws/services/eventbridge/types.ts +0 -48
  622. package/src/lib/aws/services/evidently/index.ts +0 -2
  623. package/src/lib/aws/services/evidently/main.ts +0 -123
  624. package/src/lib/aws/services/evidently/types.ts +0 -27
  625. package/src/lib/aws/services/identity-access-management/index.ts +0 -1
  626. package/src/lib/aws/services/identity-access-management/main.ts +0 -726
  627. package/src/lib/aws/services/index.ts +0 -28
  628. package/src/lib/aws/services/key-management-service/index.ts +0 -2
  629. package/src/lib/aws/services/key-management-service/main.ts +0 -43
  630. package/src/lib/aws/services/key-management-service/types.ts +0 -5
  631. package/src/lib/aws/services/lambda/index.ts +0 -2
  632. package/src/lib/aws/services/lambda/main.ts +0 -342
  633. package/src/lib/aws/services/lambda/types.ts +0 -54
  634. package/src/lib/aws/services/route53/index.ts +0 -2
  635. package/src/lib/aws/services/route53/main.ts +0 -179
  636. package/src/lib/aws/services/route53/types.ts +0 -7
  637. package/src/lib/aws/services/secrets-manager/index.ts +0 -2
  638. package/src/lib/aws/services/secrets-manager/main.ts +0 -77
  639. package/src/lib/aws/services/secrets-manager/types.ts +0 -3
  640. package/src/lib/aws/services/simple-notification-service/index.ts +0 -2
  641. package/src/lib/aws/services/simple-notification-service/main.ts +0 -87
  642. package/src/lib/aws/services/simple-notification-service/types.ts +0 -5
  643. package/src/lib/aws/services/simple-queue-service/index.ts +0 -2
  644. package/src/lib/aws/services/simple-queue-service/main.ts +0 -114
  645. package/src/lib/aws/services/simple-queue-service/types.ts +0 -16
  646. package/src/lib/aws/services/simple-storage-service/index.ts +0 -2
  647. package/src/lib/aws/services/simple-storage-service/main.ts +0 -223
  648. package/src/lib/aws/services/simple-storage-service/types.ts +0 -28
  649. package/src/lib/aws/services/step-function/index.ts +0 -2
  650. package/src/lib/aws/services/step-function/main.ts +0 -499
  651. package/src/lib/aws/services/step-function/types.ts +0 -120
  652. package/src/lib/aws/services/systems-manager/index.ts +0 -2
  653. package/src/lib/aws/services/systems-manager/main.ts +0 -115
  654. package/src/lib/aws/services/systems-manager/types.ts +0 -10
  655. package/src/lib/aws/services/virtual-private-cloud/index.ts +0 -2
  656. package/src/lib/aws/services/virtual-private-cloud/ipv6.ts +0 -61
  657. package/src/lib/aws/services/virtual-private-cloud/main.ts +0 -108
  658. package/src/lib/aws/services/virtual-private-cloud/types.ts +0 -5
  659. package/src/lib/aws/services/web-application-firewall/index.ts +0 -2
  660. package/src/lib/aws/services/web-application-firewall/main.ts +0 -67
  661. package/src/lib/aws/services/web-application-firewall/types.ts +0 -9
  662. package/src/lib/aws/types/index.ts +0 -6
  663. package/src/lib/aws/utils/index.ts +0 -73
  664. package/src/lib/azure/common/constants.ts +0 -10
  665. package/src/lib/azure/common/construct.ts +0 -120
  666. package/src/lib/azure/common/index.ts +0 -6
  667. package/src/lib/azure/common/resource-name-formatter.ts +0 -43
  668. package/src/lib/azure/common/stack.ts +0 -150
  669. package/src/lib/azure/common/tagging.ts +0 -91
  670. package/src/lib/azure/common/types.ts +0 -47
  671. package/src/lib/azure/index.ts +0 -3
  672. package/src/lib/azure/services/api-management/index.ts +0 -2
  673. package/src/lib/azure/services/api-management/main.ts +0 -382
  674. package/src/lib/azure/services/api-management/types.ts +0 -64
  675. package/src/lib/azure/services/app-configuration/index.ts +0 -2
  676. package/src/lib/azure/services/app-configuration/main.ts +0 -63
  677. package/src/lib/azure/services/app-configuration/types.ts +0 -3
  678. package/src/lib/azure/services/app-service/index.ts +0 -2
  679. package/src/lib/azure/services/app-service/main.ts +0 -104
  680. package/src/lib/azure/services/app-service/types.ts +0 -6
  681. package/src/lib/azure/services/application-insights/index.ts +0 -2
  682. package/src/lib/azure/services/application-insights/main.ts +0 -58
  683. package/src/lib/azure/services/application-insights/types.ts +0 -3
  684. package/src/lib/azure/services/cosmosdb/index.ts +0 -2
  685. package/src/lib/azure/services/cosmosdb/main.ts +0 -127
  686. package/src/lib/azure/services/cosmosdb/types.ts +0 -11
  687. package/src/lib/azure/services/dns/index.ts +0 -2
  688. package/src/lib/azure/services/dns/main.ts +0 -129
  689. package/src/lib/azure/services/dns/types.ts +0 -9
  690. package/src/lib/azure/services/eventgrid/index.ts +0 -2
  691. package/src/lib/azure/services/eventgrid/main.ts +0 -203
  692. package/src/lib/azure/services/eventgrid/types.ts +0 -17
  693. package/src/lib/azure/services/function/index.ts +0 -2
  694. package/src/lib/azure/services/function/main.ts +0 -133
  695. package/src/lib/azure/services/function/types.ts +0 -24
  696. package/src/lib/azure/services/index.ts +0 -15
  697. package/src/lib/azure/services/key-vault/index.ts +0 -2
  698. package/src/lib/azure/services/key-vault/main.ts +0 -69
  699. package/src/lib/azure/services/key-vault/types.ts +0 -5
  700. package/src/lib/azure/services/monitor/index.ts +0 -2
  701. package/src/lib/azure/services/monitor/main.ts +0 -49
  702. package/src/lib/azure/services/monitor/types.ts +0 -3
  703. package/src/lib/azure/services/operational-insights/index.ts +0 -2
  704. package/src/lib/azure/services/operational-insights/main.ts +0 -61
  705. package/src/lib/azure/services/operational-insights/types.ts +0 -3
  706. package/src/lib/azure/services/redis/index.ts +0 -2
  707. package/src/lib/azure/services/redis/main.ts +0 -59
  708. package/src/lib/azure/services/redis/types.ts +0 -3
  709. package/src/lib/azure/services/resource-group/index.ts +0 -2
  710. package/src/lib/azure/services/resource-group/main.ts +0 -49
  711. package/src/lib/azure/services/resource-group/types.ts +0 -3
  712. package/src/lib/azure/services/servicebus/index.ts +0 -2
  713. package/src/lib/azure/services/servicebus/main.ts +0 -178
  714. package/src/lib/azure/services/servicebus/types.ts +0 -17
  715. package/src/lib/azure/services/storage/index.ts +0 -2
  716. package/src/lib/azure/services/storage/main.ts +0 -176
  717. package/src/lib/azure/services/storage/types.ts +0 -21
  718. package/src/lib/azure/types/index.ts +0 -4
  719. package/src/lib/cloudflare/common/construct.ts +0 -91
  720. package/src/lib/cloudflare/common/index.ts +0 -3
  721. package/src/lib/cloudflare/common/stack.ts +0 -132
  722. package/src/lib/cloudflare/common/types.ts +0 -10
  723. package/src/lib/cloudflare/construct/index.ts +0 -2
  724. package/src/lib/cloudflare/construct/pages-static-site/index.ts +0 -2
  725. package/src/lib/cloudflare/construct/pages-static-site/main.ts +0 -188
  726. package/src/lib/cloudflare/construct/pages-static-site/types.ts +0 -12
  727. package/src/lib/cloudflare/construct/worker-site/index.ts +0 -2
  728. package/src/lib/cloudflare/construct/worker-site/main.ts +0 -155
  729. package/src/lib/cloudflare/construct/worker-site/types.ts +0 -18
  730. package/src/lib/cloudflare/index.ts +0 -4
  731. package/src/lib/cloudflare/services/access/index.ts +0 -2
  732. package/src/lib/cloudflare/services/access/main.ts +0 -342
  733. package/src/lib/cloudflare/services/access/types.ts +0 -25
  734. package/src/lib/cloudflare/services/api-shield/index.ts +0 -2
  735. package/src/lib/cloudflare/services/api-shield/main.ts +0 -158
  736. package/src/lib/cloudflare/services/api-shield/types.ts +0 -13
  737. package/src/lib/cloudflare/services/argo/index.ts +0 -2
  738. package/src/lib/cloudflare/services/argo/main.ts +0 -68
  739. package/src/lib/cloudflare/services/argo/types.ts +0 -4
  740. package/src/lib/cloudflare/services/filter/index.ts +0 -2
  741. package/src/lib/cloudflare/services/filter/main.ts +0 -45
  742. package/src/lib/cloudflare/services/filter/types.ts +0 -3
  743. package/src/lib/cloudflare/services/firewall/index.ts +0 -2
  744. package/src/lib/cloudflare/services/firewall/main.ts +0 -45
  745. package/src/lib/cloudflare/services/firewall/types.ts +0 -3
  746. package/src/lib/cloudflare/services/index.ts +0 -10
  747. package/src/lib/cloudflare/services/page/index.ts +0 -2
  748. package/src/lib/cloudflare/services/page/main.ts +0 -104
  749. package/src/lib/cloudflare/services/page/types.ts +0 -12
  750. package/src/lib/cloudflare/services/record/index.ts +0 -2
  751. package/src/lib/cloudflare/services/record/main.ts +0 -45
  752. package/src/lib/cloudflare/services/record/types.ts +0 -3
  753. package/src/lib/cloudflare/services/rule-set/index.ts +0 -2
  754. package/src/lib/cloudflare/services/rule-set/main.ts +0 -45
  755. package/src/lib/cloudflare/services/rule-set/types.ts +0 -3
  756. package/src/lib/cloudflare/services/worker/index.ts +0 -2
  757. package/src/lib/cloudflare/services/worker/main.ts +0 -167
  758. package/src/lib/cloudflare/services/worker/types.ts +0 -15
  759. package/src/lib/cloudflare/services/zone/index.ts +0 -2
  760. package/src/lib/cloudflare/services/zone/main.ts +0 -221
  761. package/src/lib/cloudflare/services/zone/types.ts +0 -21
  762. package/src/lib/cloudflare/types/index.ts +0 -3
  763. package/src/lib/common/construct.ts +0 -35
  764. package/src/lib/common/index.ts +0 -18
  765. package/src/lib/common/stack.ts +0 -26
  766. package/src/lib/common/types.ts +0 -14
  767. package/src/lib/common/utils.ts +0 -40
  768. package/src/lib/index.ts +0 -4
  769. package/tsconfig.prd.json +0 -8
  770. package/vitest.config.ts +0 -37
@@ -1,150 +0,0 @@
1
- import { ComponentResource, ComponentResourceOptions, Config } from '@pulumi/pulumi'
2
- import appRoot from 'app-root-path'
3
- import fs from 'fs'
4
- import _ from 'lodash'
5
- import path from 'path'
6
- import { isDevStage } from '../../common/index.js'
7
- import { CommonAzureConstruct } from './construct.js'
8
- import { registerTagTransformation } from './tagging.js'
9
- import { CommonAzureStackProps } from './types.js'
10
-
11
- /**
12
- * @classdesc Common stack to use as a base for all higher level constructs using Pulumi
13
- * @example
14
- * ```typescript
15
- * import { CommonAzureStack } from '@gradientedge/cdk-utils'
16
- *
17
- * class CustomStack extends CommonAzureStack {
18
- * constructor(name: string, props: CommonAzureStackProps) {
19
- * super(name, props)
20
- * // provision resources
21
- * }
22
- * }
23
- * ```
24
- */
25
- export class CommonAzureStack extends ComponentResource {
26
- construct: CommonAzureConstruct
27
- props: CommonAzureStackProps
28
- config: Config
29
-
30
- constructor(name: string, props: CommonAzureStackProps, options?: ComponentResourceOptions) {
31
- super(`custom:azure:Stack:${name}`, name, props, options)
32
-
33
- /* initialise config */
34
- this.config = new Config()
35
- this.props = this.determineConstructProps(props)
36
-
37
- /* register tag transformation for automatic tag application */
38
- if (this.props.defaultTags) {
39
- registerTagTransformation(this.props.defaultTags)
40
- }
41
- }
42
-
43
- /**
44
- * @summary Method to determine the core construct properties injected via context
45
- * @param props The stack properties
46
- * @returns The stack properties
47
- */
48
- protected determineConstructProps(props: CommonAzureStackProps) {
49
- let projectProps: CommonAzureStackProps = props
50
- if (!projectProps) {
51
- const projectPropsPath = path.join(appRoot.path, 'pulumi.json')
52
- if (!fs.existsSync(projectPropsPath)) throw `Context properties unavailable in path:${projectPropsPath}`
53
-
54
- const projectPropsBuffer = fs.readFileSync(projectPropsPath)
55
- projectProps = JSON.parse(projectPropsBuffer.toString('utf-8'))
56
- }
57
-
58
- return {
59
- domainName: projectProps.domainName,
60
- extraContexts: projectProps.extraContexts,
61
- location: projectProps.location,
62
- name: projectProps.resourceGroupName ?? projectProps.name,
63
- resourceGroupName: projectProps.resourceGroupName,
64
- globalPrefix: projectProps.globalPrefix,
65
- globalSuffix: projectProps.globalSuffix,
66
- resourceNameOptions: projectProps.resourceNameOptions,
67
- resourcePrefix: projectProps.resourcePrefix,
68
- resourceSuffix: projectProps.resourceSuffix,
69
- skipStageForARecords: projectProps.skipStageForARecords,
70
- stage: projectProps.stage,
71
- stageContextPath: projectProps.stageContextPath,
72
- subDomain: projectProps.subDomain,
73
- subscriptionId: projectProps.subscriptionId,
74
- tenantId: projectProps.tenantId,
75
- clientId: projectProps.clientId,
76
- clientSecret: projectProps.clientSecret,
77
- defaultTags: projectProps.defaultTags,
78
- ...this.determineExtraContexts(props),
79
- ...this.determineStageContexts(props),
80
- }
81
- }
82
-
83
- /**
84
- * @summary Method to determine extra contexts apart from the main context
85
- * - Sets the properties from the extra contexts
86
- * - Primary use is to have layered config in separate files to enable easier maintenance and readability
87
- */
88
- protected determineExtraContexts(props: CommonAzureStackProps) {
89
- if (!props.extraContexts) {
90
- if (props.debug) console.debug(`No additional contexts provided. Using default context properties`)
91
- return {}
92
- }
93
-
94
- let extraContextProps: Record<string, any> = {}
95
- _.forEach(props.extraContexts, (context: string) => {
96
- const extraContextPath = path.join(appRoot.path, context)
97
-
98
- /* scenario where extra context is configured but absent in file system */
99
- if (!fs.existsSync(extraContextPath)) throw `Extra context properties unavailable in path:${extraContextPath}`
100
-
101
- /* read the extra properties */
102
- const extraContextPropsBuffer = fs.readFileSync(extraContextPath)
103
- if (props.debug) console.debug(`Adding additional contexts provided in ${extraContextPath}`)
104
-
105
- /* parse as JSON properties */
106
- extraContextProps = {
107
- ...extraContextProps,
108
- ...JSON.parse(extraContextPropsBuffer.toString('utf-8')),
109
- }
110
- })
111
- return extraContextProps
112
- }
113
-
114
- /**
115
- * @summary Method to determine extra stage contexts apart from the main context
116
- * - Sets the properties from the extra stage contexts
117
- * - Primary use is to have layered config for each environment which is injected into the context
118
- */
119
- protected determineStageContexts(props: CommonAzureStackProps) {
120
- const stageContextFilePath = path.join(appRoot.path, props.stageContextPath ?? 'env', `${props.stage}.json`)
121
-
122
- if (isDevStage(props.stage)) {
123
- if (props.debug) console.debug(`Development stage. Using default stage context properties`)
124
- }
125
-
126
- /* alert default context usage when extra stage config is missing */
127
- if (!fs.existsSync(stageContextFilePath)) {
128
- if (props.debug) console.debug(`Stage specific context properties unavailable in path:${stageContextFilePath}`)
129
- if (props.debug) console.debug(`Using default stage context properties for ${props.stage} stage`)
130
- return {}
131
- }
132
-
133
- /* read the extra properties */
134
- const stageContextPropsBuffer = fs.readFileSync(stageContextFilePath)
135
- if (props.debug) console.debug(`Adding additional stage contexts provided in ${stageContextFilePath}`)
136
-
137
- /* parse as JSON properties */
138
- return JSON.parse(stageContextPropsBuffer.toString('utf-8'))
139
- }
140
-
141
- /**
142
- * @summary Determine the fully qualified domain name based on domainName & subDomain
143
- */
144
- protected fullyQualifiedDomain() {
145
- const domainName = this.props.domainName
146
- const subDomain = this.props.subDomain
147
-
148
- return subDomain ? `${subDomain}.${domainName}` : domainName
149
- }
150
- }
@@ -1,91 +0,0 @@
1
- import * as pulumi from '@pulumi/pulumi'
2
- import { RESOURCES_TO_EXCLUDE_TAGS } from './constants.js'
3
-
4
- /**
5
- * @summary Check if a resource type is taggable
6
- * @param resourceType The Pulumi resource type (e.g., 'azure-native:resources:ResourceGroup')
7
- * @returns True if the resource supports tags, false otherwise
8
- */
9
- export function isTaggableResource(resourceType: string): boolean {
10
- // Extract the resource name from the type (e.g., 'ResourceGroup' from 'azure-native:resources:ResourceGroup')
11
- const resourceName = resourceType.split(':').pop() || ''
12
-
13
- // Check if this resource is in the exclusion list
14
- if (RESOURCES_TO_EXCLUDE_TAGS.has(resourceName)) {
15
- return false
16
- }
17
-
18
- // Most Azure resources support tags, but we can add more specific checks here if needed
19
- return true
20
- }
21
-
22
- /**
23
- * @summary Register a stack transformation to automatically apply tags to Azure resources
24
- * @param defaultTags The default tags to apply to all resources
25
- * @param tagsToIgnore Optional list of tag keys to ignore in lifecycle management
26
- * @example
27
- * ```typescript
28
- * registerTagTransformation({ environment: 'production', team: 'platform' })
29
- * ```
30
- */
31
- export function registerTagTransformation(defaultTags: Record<string, string>, tagsToIgnore: string[] = []): void {
32
- pulumi.runtime.registerStackTransformation((args: pulumi.ResourceTransformationArgs) => {
33
- // Only process taggable resources
34
- if (!isTaggableResource(args.type)) {
35
- return undefined
36
- }
37
-
38
- // Check if the resource has a tags property
39
- if (!args.props || typeof args.props !== 'object') {
40
- return undefined
41
- }
42
-
43
- // Merge default tags with resource-specific tags (resource tags take precedence)
44
- const currentTags = (args.props as any).tags || {}
45
- const mergedTags = { ...defaultTags, ...currentTags }
46
-
47
- // Apply the merged tags
48
- const newProps = {
49
- ...args.props,
50
- tags: mergedTags,
51
- }
52
-
53
- // Handle tag ignores via Pulumi's ignoreChanges option
54
- let newOpts = args.opts
55
- if (tagsToIgnore.length > 0) {
56
- const ignoreChanges = tagsToIgnore.map(tag => `tags.${tag}`)
57
- newOpts = {
58
- ...args.opts,
59
- ignoreChanges: [...(args.opts?.ignoreChanges || []), ...ignoreChanges],
60
- }
61
- }
62
-
63
- return {
64
- props: newProps,
65
- opts: newOpts,
66
- }
67
- })
68
- }
69
-
70
- /**
71
- * @summary Helper function to apply tags to a specific resource's properties
72
- * @param props The resource properties
73
- * @param defaultTags The default tags to merge with existing tags
74
- * @returns The properties with merged tags
75
- * @example
76
- * ```typescript
77
- * const resourceGroupProps = applyTags(props, { environment: 'dev' })
78
- * ```
79
- */
80
- export function applyTags<T extends { tags?: Record<string, string> }>(
81
- props: T,
82
- defaultTags: Record<string, string>
83
- ): T {
84
- return {
85
- ...props,
86
- tags: {
87
- ...defaultTags,
88
- ...(props.tags || {}),
89
- },
90
- }
91
- }
@@ -1,47 +0,0 @@
1
- import { BaseProps } from '../../common/index.js'
2
- import { AzureRemoteBackend } from './constants.js'
3
-
4
- /**
5
- * @interface CommonAzureStackProps
6
- * @description Common properties for Azure stack configuration using Pulumi
7
- */
8
- export interface CommonAzureStackProps extends BaseProps {
9
- resourceGroupName?: string
10
- remoteBackend?: AzureRemoteBackendProps
11
- globalPrefix?: string
12
- globalSuffix?: string
13
- resourcePrefix?: string
14
- resourceSuffix?: string
15
- resourceNameOptions?: { [key: string]: AzureResourceNameFormatterProps }
16
- location?: string
17
- defaultTags?: { [key: string]: string }
18
-
19
- // Azure Provider properties for Pulumi
20
- subscriptionId?: string
21
- tenantId?: string
22
- clientId?: string
23
- clientSecret?: string
24
- environment?: string
25
- useOidc?: boolean
26
- oidcRequestToken?: string
27
- oidcRequestUrl?: string
28
- useMsi?: boolean
29
- msiEndpoint?: string
30
- }
31
-
32
- export interface AzureRemoteBackendProps {
33
- type: AzureRemoteBackend
34
- storageAccountName?: string
35
- containerName?: string
36
- resourceGroupName?: string
37
- subscriptionId?: string
38
- key?: string
39
- }
40
-
41
- export interface AzureResourceNameFormatterProps {
42
- exclude?: boolean
43
- globalPrefix?: boolean
44
- globalSuffix?: boolean
45
- prefix?: string
46
- suffix?: string
47
- }
@@ -1,3 +0,0 @@
1
- export * from './common/index.js'
2
- export * from './services/index.js'
3
- export * from './types/index.js'
@@ -1,2 +0,0 @@
1
- export * from './main.js'
2
- export * from './types.js'
@@ -1,382 +0,0 @@
1
- import {
2
- Api,
3
- ApiManagementService,
4
- ApiOperation,
5
- ApiOperationPolicy,
6
- Backend,
7
- BackendProtocol,
8
- Cache,
9
- getApiManagementServiceOutput,
10
- Logger,
11
- LoggerType,
12
- PolicyContentFormat,
13
- Protocol,
14
- } from '@pulumi/azure-native/apimanagement/index.js'
15
- import * as redis from '@pulumi/azure-native/redis/index.js'
16
- import _ from 'lodash'
17
- import { CommonAzureConstruct } from '../../common/index.js'
18
- import {
19
- ApiManagementApiProps,
20
- ApiManagementBackendProps,
21
- ApiManagementCustomDomainProps,
22
- ApiManagementProps,
23
- ResolveApiManagementProps,
24
- } from './types.js'
25
-
26
- /**
27
- * @classdesc Provides operations on Azure API Management using Pulumi
28
- * - A new instance of this class is injected into {@link CommonAzureConstruct} constructor.
29
- * - If a custom construct extends {@link CommonAzureConstruct}, an instance is available within the context.
30
- * @example
31
- * ```typescript
32
- * import { CommonAzureConstruct, CommonAzureStackProps } from '@gradientedge/cdk-utils'
33
- *
34
- * class CustomConstruct extends CommonAzureConstruct {
35
- * constructor(name: string, props: CommonAzureStackProps) {
36
- * super(name, props)
37
- * this.props = props
38
- * this.apiManagementManager.createApiManagement('MyApiManagement', this, props)
39
- * }
40
- * }
41
- * ```
42
- */
43
- export class AzureApiManagementManager {
44
- /**
45
- * @summary Method to create a new API Management service
46
- * @param id scoped id of the resource
47
- * @param scope scope in which this resource is defined
48
- * @param props API Management properties
49
- * @param applicationInsightsKey Optional Application Insights instrumentation key for logging
50
- * @param externalRedisCache Optional external Redis cache for API Management caching
51
- * @see [Pulumi Azure Native API Management]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/apimanagement/apimanagementservice/}
52
- */
53
- public createApiManagementService(
54
- id: string,
55
- scope: CommonAzureConstruct,
56
- props: ApiManagementProps,
57
- applicationInsightsKey?: string,
58
- externalRedisCache?: redis.Redis
59
- ) {
60
- if (!props) throw `Props undefined for ${id}`
61
-
62
- // Get resource group name
63
- const resourceGroupName = scope.props.resourceGroupName
64
- ? scope.resourceNameFormatter.format(scope.props.resourceGroupName)
65
- : props.resourceGroupName
66
-
67
- if (!resourceGroupName) throw `Resource group name undefined for ${id}`
68
-
69
- const apiManagementService = new ApiManagementService(
70
- `${id}-am`,
71
- {
72
- ...props,
73
- serviceName: scope.resourceNameFormatter.format(
74
- props.serviceName?.toString(),
75
- scope.props.resourceNameOptions?.apiManagement
76
- ),
77
- resourceGroupName: resourceGroupName,
78
- location: props.location ?? scope.props.location,
79
- publisherEmail: props.publisherEmail ?? 'noreply@example.com',
80
- publisherName: props.publisherName ?? 'Default Publisher',
81
- tags: props.tags ?? {
82
- environment: scope.props.stage,
83
- },
84
- },
85
- { parent: scope }
86
- )
87
-
88
- // Create logger if Application Insights key is provided
89
- if (applicationInsightsKey) {
90
- new Logger(
91
- `${id}-am-logger`,
92
- {
93
- loggerId: scope.resourceNameFormatter.format(
94
- props.serviceName?.toString(),
95
- scope.props.resourceNameOptions?.apiManagementLogger
96
- ),
97
- resourceGroupName: resourceGroupName,
98
- serviceName: apiManagementService.name,
99
- loggerType: LoggerType.ApplicationInsights,
100
- credentials: {
101
- instrumentationKey: applicationInsightsKey,
102
- },
103
- },
104
- { parent: scope }
105
- )
106
- }
107
-
108
- // Create Redis cache connection if external Redis is provided
109
- if (externalRedisCache) {
110
- new Cache(
111
- `${id}-am-redis-cache`,
112
- {
113
- cacheId: scope.resourceNameFormatter.format(
114
- props.serviceName?.toString(),
115
- scope.props.resourceNameOptions?.apiManagementRedisCache
116
- ),
117
- serviceName: apiManagementService.name,
118
- resourceGroupName: resourceGroupName,
119
- connectionString: externalRedisCache.hostName.apply(
120
- hostName =>
121
- `${hostName}:10000,password=${externalRedisCache.accessKeys.apply(k => k?.primaryKey)},ssl=True,abortConnect=False`
122
- ),
123
- useFromLocation: externalRedisCache.location,
124
- resourceId: externalRedisCache.id,
125
- },
126
- { parent: scope }
127
- )
128
- }
129
-
130
- return apiManagementService
131
- }
132
-
133
- /**
134
- * @summary Method to resolve an existing API Management service
135
- * @param id scoped id of the resource
136
- * @param scope scope in which this resource is defined
137
- * @param props API Management lookup properties
138
- * @see [Pulumi Azure Native API Management Lookup]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/apimanagement/apimanagementservice/}
139
- */
140
- public resolveApiManagementService(id: string, scope: CommonAzureConstruct, props: ResolveApiManagementProps) {
141
- if (!props) throw `Props undefined for ${id}`
142
-
143
- return getApiManagementServiceOutput(
144
- {
145
- serviceName: scope.resourceNameFormatter.format(
146
- props.serviceName?.toString(),
147
- scope.props.resourceNameOptions?.dataAzurermApiManagement
148
- ),
149
- resourceGroupName: scope.props.resourceGroupName
150
- ? `${scope.props.resourceGroupName}-${scope.props.stage}`
151
- : props.resourceGroupName,
152
- },
153
- { parent: scope }
154
- )
155
- }
156
-
157
- /**
158
- * @summary Method to create a new API Management backend
159
- * @param id scoped id of the resource
160
- * @param scope scope in which this resource is defined
161
- * @param props API Management backend properties
162
- * @see [Pulumi Azure Native API Management Backend]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/apimanagement/backend/}
163
- */
164
- public createBackend(id: string, scope: CommonAzureConstruct, props: ApiManagementBackendProps) {
165
- if (!props) throw `Props undefined for ${id}`
166
-
167
- return new Backend(
168
- `${id}-am-be`,
169
- {
170
- ...props,
171
- backendId: scope.resourceNameFormatter.format(
172
- props.backendId?.toString(),
173
- scope.props.resourceNameOptions?.apiManagementBackend
174
- ),
175
- description: props.description ?? `Backend for ${(props as any).name || id}-${scope.props.stage}`,
176
- protocol: props.protocol ?? BackendProtocol.Http,
177
- },
178
- { parent: scope }
179
- )
180
- }
181
-
182
- /**
183
- * @summary Method to create a new API Management API with operations and policies
184
- * @param id scoped id of the resource
185
- * @param scope scope in which this resource is defined
186
- * @param props API Management API properties
187
- * @see [Pulumi Azure Native API Management API]{@link https://www.pulumi.com/registry/packages/azure-native/api-docs/apimanagement/api/}
188
- */
189
- public createApi(id: string, scope: CommonAzureConstruct, props: ApiManagementApiProps) {
190
- if (!props) throw `Props undefined for ${id}`
191
-
192
- const api = new Api(
193
- `${id}-am-api`,
194
- {
195
- ...props,
196
- apiId: scope.resourceNameFormatter.format(
197
- props.apiId?.toString(),
198
- scope.props.resourceNameOptions?.apiManagementApi
199
- ),
200
- displayName: props.displayName ?? props.apiId,
201
- apiRevision: props.apiRevision ?? '1',
202
- protocols: props.protocols ?? [Protocol.Https],
203
- },
204
- { parent: scope }
205
- )
206
-
207
- // Create operations and policies
208
- _.forEach(props.operations, operation => {
209
- const operationId = `${operation.displayName}-${operation.method}`
210
- const apimOperation = new ApiOperation(
211
- `${id}-apim-api-operation-${operation.displayName}-${operation.method}`,
212
- {
213
- operationId: operationId,
214
- method: (operation.method as string)?.toUpperCase() || 'GET',
215
- serviceName: props.serviceName!,
216
- resourceGroupName: props.resourceGroupName!,
217
- apiId: api.name,
218
- displayName: operation.displayName,
219
- urlTemplate: operation.urlTemplate,
220
- templateParameters: operation.templateParameters,
221
- },
222
- { parent: scope }
223
- )
224
-
225
- // Define Caching Policy if enabled
226
- let cacheSetVariablePolicy = ''
227
- let cacheInvalidateInboundPolicy = ''
228
- let cacheSetInboundPolicy = ''
229
- let cacheSetOutboundPolicy = ''
230
-
231
- if (operation.caching) {
232
- cacheSetVariablePolicy = `<!-- Generate a comprehensive custom cache key (without query params or Accept header) -->
233
- <set-variable name="customCacheKey" value="@{
234
- // Instance identification
235
-
236
- // API identification
237
- string apiName = context.Api.Name.Replace(" ", "").ToLower();
238
- string apiVersion = context.Api.Version ?? "v1";
239
-
240
- // Full path construction (without query parameters)
241
- string fullPath = context.Request.Url.Path.ToLower();
242
-
243
- // Query parameters
244
- string query = context.Request.Url.QueryString.ToLower();
245
-
246
- // Construct final cache key (no Accept header needed for JSON-only APIs)
247
- return $"{apiName}:{apiVersion}:{fullPath}:{query}";
248
- }" />
249
- <set-variable name="bypassCache" value="@(context.Request.Headers.GetValueOrDefault("X-Cache-Bypass", "false").ToLower())" />`
250
-
251
- if (operation.caching.enableCacheSet) {
252
- cacheSetInboundPolicy = `<choose>
253
- <when condition="@((string)context.Variables["bypassCache"] != "true")">
254
- <!-- Attempt to retrieve cached response -->
255
- <cache-lookup-value key="@((string)context.Variables["customCacheKey"])" variable-name="cachedResponse" caching-type="${operation.caching.cachingType || 'prefer-external'}" />
256
-
257
- <!-- If cache hit, return cached response -->
258
- <choose>
259
- <when condition="@(context.Variables.ContainsKey("cachedResponse"))">
260
- <return-response>
261
- <set-status code="200" reason="OK" />
262
- <set-header name="Content-Type" exists-action="override">
263
- <value>application/json</value>
264
- </set-header>
265
- <set-header name="X-Apim-Cache-Status" exists-action="override">
266
- <value>HIT</value>
267
- </set-header>
268
- <set-header name="X-Apim-Cache-Key" exists-action="override">
269
- <value>@((string)context.Variables["customCacheKey"])</value>
270
- </set-header>
271
- <set-body>@((string)context.Variables["cachedResponse"])</set-body>
272
- </return-response>
273
- </when>
274
- </choose>
275
- </when>
276
- <when condition="@((string)context.Variables["bypassCache"] == "true")">
277
- <cache-remove-value key="@((string)context.Variables["customCacheKey"])" caching-type="${operation.caching.cachingType || 'prefer-external'}" />
278
- </when>
279
- </choose>`
280
- cacheSetOutboundPolicy = `<!-- Store the response body in cache -->
281
- <choose>
282
- <when condition="@(context.Response.StatusCode == 200)">
283
- <cache-store-value key="@((string)context.Variables["customCacheKey"])" value="@(context.Response.Body.As<string>(preserveContent: true))" duration="${operation.caching.ttlInSecs ?? 900}" caching-type="${operation.caching.cachingType || 'prefer-external'}" />
284
- <!-- Add cache status header -->
285
- <set-header name="X-Apim-Cache-Status" exists-action="override">
286
- <value>MISS</value>
287
- </set-header>
288
- </when>
289
- </choose>
290
- <!-- Add debug headers -->
291
- <set-header name="X-Apim-Cache-Key" exists-action="override">
292
- <value>@((string)context.Variables["customCacheKey"])</value>
293
- </set-header>
294
- <set-header name="X-Apim-API-Name" exists-action="override">
295
- <value>@(context.Api.Name)</value>
296
- </set-header>`
297
- }
298
-
299
- if (operation.caching.enableCacheInvalidation) {
300
- cacheInvalidateInboundPolicy = `<set-variable name="clearCache" value="@(context.Request.Headers.GetValueOrDefault("X-Apim-Clear-Cache", "false").ToLower())" />
301
- <!-- Allow admin to clear specific cache entries -->
302
- <choose>
303
- <when condition="@((string)context.Variables["clearCache"] == "true")">
304
- <cache-remove-value key="@((string)context.Variables["customCacheKey"])" caching-type="${operation.caching.cachingType || 'prefer-external'}" />
305
- <return-response>
306
- <set-status code="200" reason="OK" />
307
- <set-body>Cache entry removed successfully</set-body>
308
- </return-response>
309
- </when>
310
- </choose>`
311
- }
312
- }
313
-
314
- // Inject rate limiting policy (if configured)
315
- let rateLimitPolicy = ''
316
- if (props.rateLimit && scope.props.subscriptionId) {
317
- rateLimitPolicy = `<rate-limit-by-key calls="${props.rateLimit.calls}" renewal-period="${props.rateLimit.renewalPeriodInSecs}" counter-key="${scope.props.subscriptionId}-${operationId}"/>`
318
- }
319
-
320
- const policyXmlContent = `<policies>
321
- <inbound>
322
- <base />
323
- ${rateLimitPolicy}
324
- ${cacheSetVariablePolicy}
325
- ${cacheInvalidateInboundPolicy}
326
- ${cacheSetInboundPolicy}
327
- ${props.commonInboundPolicyXml ?? ''}
328
- </inbound>
329
- <backend>
330
- <base />
331
- </backend>
332
- <outbound>
333
- <base />
334
- ${cacheSetOutboundPolicy}
335
- ${props.commonOutboundPolicyXml ?? ''}
336
- </outbound>
337
- <on-error>
338
- <base />
339
- </on-error>
340
- </policies>`
341
-
342
- new ApiOperationPolicy(
343
- `${id}-apim-api-operation-policy-${operation.displayName}-${operation.method}`,
344
- {
345
- serviceName: props.serviceName!,
346
- resourceGroupName: props.resourceGroupName!,
347
- apiId: api.name,
348
- operationId: operationId,
349
- policyId: 'policy',
350
- value: policyXmlContent,
351
- format: PolicyContentFormat.Xml,
352
- },
353
- { parent: scope }
354
- )
355
- })
356
-
357
- return api
358
- }
359
-
360
- /**
361
- * @summary Method to create a new API Management custom domain
362
- * @param id scoped id of the resource
363
- * @param scope scope in which this resource is defined
364
- * @param props API Management custom domain properties
365
- * @note In Pulumi Azure Native, custom domains are configured as part of the API Management service resource,
366
- * not as a separate resource. Use the hostnameConfigurations property when creating the service.
367
- */
368
- public createApiManagementCustomDomain(
369
- id: string,
370
- scope: CommonAzureConstruct,
371
- props: ApiManagementCustomDomainProps
372
- ) {
373
- if (!props) throw `Props undefined for ${id}`
374
-
375
- // Note: In Pulumi Azure Native, custom domains are part of the ApiManagementService
376
- // This method is provided for API compatibility but should be configured
377
- // via the hostnameConfigurations property of ApiManagementService instead
378
- throw new Error(
379
- 'Custom domains should be configured via the hostnameConfigurations property of ApiManagementService in Pulumi Azure Native'
380
- )
381
- }
382
- }