terraconstructs 0.0.10 → 0.0.12

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 (410) hide show
  1. package/.jsii +104486 -34582
  2. package/lib/aws/arn.js +1 -1
  3. package/lib/aws/aws-construct.d.ts +1 -1
  4. package/lib/aws/aws-construct.js +28 -2
  5. package/lib/aws/aws-stack.d.ts +2 -4
  6. package/lib/aws/aws-stack.js +21 -8
  7. package/lib/aws/aws-tags.d.ts +58 -0
  8. package/lib/aws/aws-tags.js +77 -0
  9. package/lib/aws/cloudwatch/actions/ec2.js +1 -1
  10. package/lib/aws/cloudwatch/actions/lambda.js +1 -1
  11. package/lib/aws/cloudwatch/alarm-base.js +1 -1
  12. package/lib/aws/cloudwatch/alarm-rule.js +1 -1
  13. package/lib/aws/cloudwatch/alarm-status-widget.js +1 -1
  14. package/lib/aws/cloudwatch/alarm.js +1 -1
  15. package/lib/aws/cloudwatch/composite-alarm.js +1 -1
  16. package/lib/aws/cloudwatch/dashboard.js +1 -1
  17. package/lib/aws/cloudwatch/data-protection-policy.js +3 -3
  18. package/lib/aws/cloudwatch/graph.js +8 -8
  19. package/lib/aws/cloudwatch/layout.js +3 -3
  20. package/lib/aws/cloudwatch/log-destinations/kinesis.js +1 -1
  21. package/lib/aws/cloudwatch/log-destinations/lambda.js +1 -1
  22. package/lib/aws/cloudwatch/log-group.js +1 -1
  23. package/lib/aws/cloudwatch/log-query.js +1 -1
  24. package/lib/aws/cloudwatch/log-stream.js +1 -1
  25. package/lib/aws/cloudwatch/metric-filter.d.ts +1 -1
  26. package/lib/aws/cloudwatch/metric-filter.js +4 -4
  27. package/lib/aws/cloudwatch/metric.js +2 -2
  28. package/lib/aws/cloudwatch/pattern.js +3 -3
  29. package/lib/aws/cloudwatch/policy.js +1 -1
  30. package/lib/aws/cloudwatch/private/env-tokens.js +5 -6
  31. package/lib/aws/cloudwatch/private/metric-util.js +4 -5
  32. package/lib/aws/cloudwatch/private/object.js +2 -3
  33. package/lib/aws/cloudwatch/private/rendering.js +3 -3
  34. package/lib/aws/cloudwatch/private/statistic.js +6 -7
  35. package/lib/aws/cloudwatch/query-definition.js +2 -2
  36. package/lib/aws/cloudwatch/stats.js +1 -1
  37. package/lib/aws/cloudwatch/subscription-filter.d.ts +1 -1
  38. package/lib/aws/cloudwatch/subscription-filter.js +4 -4
  39. package/lib/aws/cloudwatch/text.js +1 -1
  40. package/lib/aws/cloudwatch/variable.js +3 -3
  41. package/lib/aws/cloudwatch/widget.d.ts +1 -1
  42. package/lib/aws/cloudwatch/widget.js +4 -4
  43. package/lib/aws/compute/activity.js +3 -2
  44. package/lib/aws/compute/alb/application-listener-action.d.ts +334 -0
  45. package/lib/aws/compute/alb/application-listener-action.js +281 -0
  46. package/lib/aws/compute/alb/application-listener-certificate.d.ts +35 -0
  47. package/lib/aws/compute/alb/application-listener-certificate.js +35 -0
  48. package/lib/aws/compute/alb/application-listener-rule.d.ts +233 -0
  49. package/lib/aws/compute/alb/application-listener-rule.js +220 -0
  50. package/lib/aws/compute/alb/application-listener.d.ts +574 -0
  51. package/lib/aws/compute/alb/application-listener.js +538 -0
  52. package/lib/aws/compute/alb/application-load-balancer.d.ts +715 -0
  53. package/lib/aws/compute/alb/application-load-balancer.js +780 -0
  54. package/lib/aws/compute/alb/application-target-group.d.ts +339 -0
  55. package/lib/aws/compute/alb/application-target-group.js +427 -0
  56. package/lib/aws/compute/alb/conditions.d.ts +61 -0
  57. package/lib/aws/compute/alb/conditions.js +164 -0
  58. package/lib/aws/compute/alb/trust-store-revocation.d.ts +59 -0
  59. package/lib/aws/compute/alb/trust-store-revocation.js +46 -0
  60. package/lib/aws/compute/alb/trust-store.d.ts +86 -0
  61. package/lib/aws/compute/alb/trust-store.js +79 -0
  62. package/lib/aws/compute/architecture.js +1 -1
  63. package/lib/aws/compute/aspects/require-imdsv2-aspect.d.ts +75 -0
  64. package/lib/aws/compute/aspects/require-imdsv2-aspect.js +106 -0
  65. package/lib/aws/compute/bastion-host.d.ts +172 -0
  66. package/lib/aws/compute/bastion-host.js +114 -0
  67. package/lib/aws/compute/chain.js +1 -1
  68. package/lib/aws/compute/cidr-splits.d.ts +49 -0
  69. package/lib/aws/compute/cidr-splits.js +59 -0
  70. package/lib/aws/compute/client-vpn-authorization-rule.d.ts +43 -0
  71. package/lib/aws/compute/client-vpn-authorization-rule.js +30 -0
  72. package/lib/aws/compute/client-vpn-endpoint-types.d.ts +62 -0
  73. package/lib/aws/compute/client-vpn-endpoint-types.js +25 -0
  74. package/lib/aws/compute/client-vpn-endpoint.d.ts +239 -0
  75. package/lib/aws/compute/client-vpn-endpoint.js +259 -0
  76. package/lib/aws/compute/client-vpn-route.d.ts +67 -0
  77. package/lib/aws/compute/client-vpn-route.js +57 -0
  78. package/lib/aws/compute/condition.js +1 -1
  79. package/lib/aws/compute/connections.d.ts +137 -0
  80. package/lib/aws/compute/connections.js +208 -0
  81. package/lib/aws/compute/ec2-augmentations.generated.d.ts +53 -0
  82. package/lib/aws/compute/ec2-augmentations.generated.js +35 -0
  83. package/lib/aws/compute/ec2-canned-metrics.generated.d.ts +555 -0
  84. package/lib/aws/compute/ec2-canned-metrics.generated.js +681 -0
  85. package/lib/aws/compute/ec2-util-v2.d.ts +141 -0
  86. package/lib/aws/compute/ec2-util-v2.js +286 -0
  87. package/lib/aws/compute/ec2-util.d.ts +52 -0
  88. package/lib/aws/compute/ec2-util.js +138 -0
  89. package/lib/aws/compute/elasticloadbalancing-canned-metrics.generated.d.ts +176 -0
  90. package/lib/aws/compute/elasticloadbalancing-canned-metrics.generated.js +119 -0
  91. package/lib/aws/compute/elasticloadbalancingv2-canned-metrics.generated.d.ts +860 -0
  92. package/lib/aws/compute/elasticloadbalancingv2-canned-metrics.generated.js +597 -0
  93. package/lib/aws/compute/event-invoke-config.js +1 -1
  94. package/lib/aws/compute/event-source-filter.js +2 -2
  95. package/lib/aws/compute/event-source-mapping.js +1 -1
  96. package/lib/aws/compute/event-sources/s3-onfailure-destination.js +1 -1
  97. package/lib/aws/compute/event-sources/s3.js +1 -1
  98. package/lib/aws/compute/event-sources/sqs-dlq.js +1 -1
  99. package/lib/aws/compute/event-sources/sqs.js +1 -1
  100. package/lib/aws/compute/fields.js +4 -4
  101. package/lib/aws/compute/function-alias.js +1 -1
  102. package/lib/aws/compute/function-base.js +2 -2
  103. package/lib/aws/compute/function-destinations/event-bridge.js +1 -1
  104. package/lib/aws/compute/function-destinations/function.js +1 -1
  105. package/lib/aws/compute/function-destinations/sqs.js +1 -1
  106. package/lib/aws/compute/function-nodejs.js +1 -1
  107. package/lib/aws/compute/function-url.js +1 -1
  108. package/lib/aws/compute/function-vpc-config.generated.d.ts +3 -3
  109. package/lib/aws/compute/function-vpc-config.generated.js +1 -1
  110. package/lib/aws/compute/function.d.ts +1 -1
  111. package/lib/aws/compute/function.js +5 -5
  112. package/lib/aws/compute/index-alpha.d.ts +5 -0
  113. package/lib/aws/compute/index-alpha.js +22 -0
  114. package/lib/aws/compute/index.d.ts +60 -0
  115. package/lib/aws/compute/index.js +70 -2
  116. package/lib/aws/compute/instance-types.d.ts +1354 -0
  117. package/lib/aws/compute/instance-types.js +1683 -0
  118. package/lib/aws/compute/instance.d.ts +436 -0
  119. package/lib/aws/compute/instance.js +262 -0
  120. package/lib/aws/compute/ip-addresses.d.ts +249 -0
  121. package/lib/aws/compute/ip-addresses.js +248 -0
  122. package/lib/aws/compute/ipam.d.ts +309 -0
  123. package/lib/aws/compute/ipam.js +306 -0
  124. package/lib/aws/compute/key-pair.d.ts +178 -0
  125. package/lib/aws/compute/key-pair.js +194 -0
  126. package/lib/aws/compute/lambda-augmentations.generated.d.ts +65 -0
  127. package/lib/aws/compute/lambda-augmentations.generated.js +41 -0
  128. package/lib/aws/compute/lambda-canned-metrics.generated.d.ts +316 -0
  129. package/lib/aws/compute/lambda-canned-metrics.generated.js +119 -0
  130. package/lib/aws/compute/launch-template.d.ts +540 -0
  131. package/lib/aws/compute/launch-template.js +468 -0
  132. package/lib/aws/compute/lb-shared/access-logs-accounts.d.ts +7 -0
  133. package/lib/aws/compute/lb-shared/access-logs-accounts.js +46 -0
  134. package/lib/aws/compute/lb-shared/base-listener.d.ts +113 -0
  135. package/lib/aws/compute/lb-shared/base-listener.js +181 -0
  136. package/lib/aws/compute/lb-shared/base-load-balancer.d.ts +212 -0
  137. package/lib/aws/compute/lb-shared/base-load-balancer.js +290 -0
  138. package/lib/aws/compute/lb-shared/base-target-group.d.ts +382 -0
  139. package/lib/aws/compute/lb-shared/base-target-group.js +364 -0
  140. package/lib/aws/compute/lb-shared/enums.d.ts +282 -0
  141. package/lib/aws/compute/lb-shared/enums.js +301 -0
  142. package/lib/aws/compute/lb-shared/grid-lookup-types.d.ts +42 -0
  143. package/lib/aws/compute/lb-shared/grid-lookup-types.js +53 -0
  144. package/lib/aws/compute/lb-shared/imported.d.ts +24 -0
  145. package/lib/aws/compute/lb-shared/imported.js +27 -0
  146. package/lib/aws/compute/lb-shared/lb-listener-config.generated.d.ts +194 -0
  147. package/lib/aws/compute/lb-shared/lb-listener-config.generated.js +3 -0
  148. package/lib/aws/compute/lb-shared/lb-target-group-attachment-config.generated.d.ts +56 -0
  149. package/lib/aws/compute/lb-shared/lb-target-group-attachment-config.generated.js +3 -0
  150. package/lib/aws/compute/lb-shared/listener-action.d.ts +14 -0
  151. package/lib/aws/compute/lb-shared/listener-action.js +4 -0
  152. package/lib/aws/compute/lb-shared/listener-certificate.d.ts +28 -0
  153. package/lib/aws/compute/lb-shared/listener-certificate.js +29 -0
  154. package/lib/aws/compute/lb-shared/load-balancer-targets.d.ts +93 -0
  155. package/lib/aws/compute/lb-shared/load-balancer-targets.js +127 -0
  156. package/lib/aws/compute/lb-shared/util.d.ts +113 -0
  157. package/lib/aws/compute/lb-shared/util.js +264 -0
  158. package/lib/aws/compute/lb-targets/alb-target.d.ts +67 -0
  159. package/lib/aws/compute/lb-targets/alb-target.js +100 -0
  160. package/lib/aws/compute/lb-targets/index.d.ts +4 -0
  161. package/lib/aws/compute/lb-targets/index.js +22 -0
  162. package/lib/aws/compute/lb-targets/instance-target.d.ts +42 -0
  163. package/lib/aws/compute/lb-targets/instance-target.js +67 -0
  164. package/lib/aws/compute/lb-targets/ip-target.d.ts +55 -0
  165. package/lib/aws/compute/lb-targets/ip-target.js +79 -0
  166. package/lib/aws/compute/lb-targets/lambda-target.d.ts +25 -0
  167. package/lib/aws/compute/lb-targets/lambda-target.js +50 -0
  168. package/lib/aws/compute/load-balancer.d.ts +336 -0
  169. package/lib/aws/compute/load-balancer.js +287 -0
  170. package/lib/aws/compute/machine-image/amazon-linux-2022.d.ts +63 -0
  171. package/lib/aws/compute/machine-image/amazon-linux-2022.js +84 -0
  172. package/lib/aws/compute/machine-image/amazon-linux-2023.d.ts +63 -0
  173. package/lib/aws/compute/machine-image/amazon-linux-2023.js +84 -0
  174. package/lib/aws/compute/machine-image/amazon-linux2.d.ts +76 -0
  175. package/lib/aws/compute/machine-image/amazon-linux2.js +87 -0
  176. package/lib/aws/compute/machine-image/common.d.ts +181 -0
  177. package/lib/aws/compute/machine-image/common.js +122 -0
  178. package/lib/aws/compute/machine-image/index.d.ts +5 -0
  179. package/lib/aws/compute/machine-image/index.js +22 -0
  180. package/lib/aws/compute/machine-image/machine-image.d.ts +463 -0
  181. package/lib/aws/compute/machine-image/machine-image.js +566 -0
  182. package/lib/aws/compute/machine-image/utils.d.ts +2 -0
  183. package/lib/aws/compute/machine-image/utils.js +17 -0
  184. package/lib/aws/compute/nat.d.ts +325 -0
  185. package/lib/aws/compute/nat.js +455 -0
  186. package/lib/aws/compute/network-acl-types.d.ts +152 -0
  187. package/lib/aws/compute/network-acl-types.js +156 -0
  188. package/lib/aws/compute/network-acl.d.ts +285 -0
  189. package/lib/aws/compute/network-acl.js +207 -0
  190. package/lib/aws/compute/network-util.d.ts +116 -0
  191. package/lib/aws/compute/network-util.js +241 -0
  192. package/lib/aws/compute/nlb/network-listener-action.d.ts +92 -0
  193. package/lib/aws/compute/nlb/network-listener-action.js +146 -0
  194. package/lib/aws/compute/nlb/network-listener-certificate.d.ts +24 -0
  195. package/lib/aws/compute/nlb/network-listener-certificate.js +25 -0
  196. package/lib/aws/compute/nlb/network-listener.d.ts +248 -0
  197. package/lib/aws/compute/nlb/network-listener.js +217 -0
  198. package/lib/aws/compute/nlb/network-load-balancer.d.ts +315 -0
  199. package/lib/aws/compute/nlb/network-load-balancer.js +360 -0
  200. package/lib/aws/compute/nlb/network-target-group.d.ts +153 -0
  201. package/lib/aws/compute/nlb/network-target-group.js +223 -0
  202. package/lib/aws/compute/peer.d.ts +64 -0
  203. package/lib/aws/compute/peer.js +235 -0
  204. package/lib/aws/compute/placement-group.d.ts +161 -0
  205. package/lib/aws/compute/placement-group.js +133 -0
  206. package/lib/aws/compute/port.d.ts +287 -0
  207. package/lib/aws/compute/port.js +390 -0
  208. package/lib/aws/compute/prefix-list.d.ts +131 -0
  209. package/lib/aws/compute/prefix-list.js +114 -0
  210. package/lib/aws/compute/private/context-stub.d.ts +7 -0
  211. package/lib/aws/compute/private/context-stub.js +43 -0
  212. package/lib/aws/compute/private/ebs-util.d.ts +14 -0
  213. package/lib/aws/compute/private/ebs-util.js +145 -0
  214. package/lib/aws/compute/private/intrinstics.js +2 -1
  215. package/lib/aws/compute/private/json-path.js +8 -8
  216. package/lib/aws/compute/private/util.js +2 -3
  217. package/lib/aws/compute/route.d.ts +547 -0
  218. package/lib/aws/compute/route.js +469 -0
  219. package/lib/aws/compute/security-group.d.ts +414 -0
  220. package/lib/aws/compute/security-group.js +538 -0
  221. package/lib/aws/compute/state-graph.js +1 -1
  222. package/lib/aws/compute/state-machine-fragment.js +1 -1
  223. package/lib/aws/compute/state-machine.d.ts +2 -2
  224. package/lib/aws/compute/state-machine.js +14 -12
  225. package/lib/aws/compute/states/choice.js +1 -1
  226. package/lib/aws/compute/states/custom-state.js +1 -1
  227. package/lib/aws/compute/states/distributed-map/item-batcher.js +1 -1
  228. package/lib/aws/compute/states/distributed-map/item-reader.js +5 -5
  229. package/lib/aws/compute/states/distributed-map/result-writer.js +1 -1
  230. package/lib/aws/compute/states/distributed-map.js +1 -1
  231. package/lib/aws/compute/states/fail.js +1 -1
  232. package/lib/aws/compute/states/map-base.js +1 -1
  233. package/lib/aws/compute/states/map.js +1 -1
  234. package/lib/aws/compute/states/parallel.js +1 -1
  235. package/lib/aws/compute/states/pass.js +2 -2
  236. package/lib/aws/compute/states/state.js +5 -5
  237. package/lib/aws/compute/states/succeed.js +1 -1
  238. package/lib/aws/compute/states/task-base.js +2 -2
  239. package/lib/aws/compute/states/task.js +1 -1
  240. package/lib/aws/compute/states/wait.js +2 -2
  241. package/lib/aws/compute/stepfunctions-canned-metrics.generated.d.ts +83 -0
  242. package/lib/aws/compute/stepfunctions-canned-metrics.generated.js +127 -0
  243. package/lib/aws/compute/subnet-v2.d.ts +213 -0
  244. package/lib/aws/compute/subnet-v2.js +405 -0
  245. package/lib/aws/compute/subnet.d.ts +37 -0
  246. package/lib/aws/compute/subnet.js +181 -0
  247. package/lib/aws/compute/task-credentials.js +1 -1
  248. package/lib/aws/compute/task-input.js +1 -1
  249. package/lib/aws/compute/tasks/aws-sdk/call-aws-service.js +1 -1
  250. package/lib/aws/compute/tasks/eventbridge/put-events.js +1 -1
  251. package/lib/aws/compute/tasks/http/invoke.js +1 -1
  252. package/lib/aws/compute/tasks/lambda/invoke.js +1 -1
  253. package/lib/aws/compute/tasks/private/task-utils.js +3 -4
  254. package/lib/aws/compute/tasks/resource-arn-suffix.js +2 -3
  255. package/lib/aws/compute/tasks/sqs/send-message.js +1 -1
  256. package/lib/aws/compute/tasks/stepfunctions/invoke-activity.js +1 -1
  257. package/lib/aws/compute/tasks/stepfunctions/start-execution.js +1 -1
  258. package/lib/aws/compute/types.js +2 -2
  259. package/lib/aws/compute/user-data.d.ts +270 -0
  260. package/lib/aws/compute/user-data.js +487 -0
  261. package/lib/aws/compute/util.d.ts +1 -1
  262. package/lib/aws/compute/util.js +4 -5
  263. package/lib/aws/compute/volume.d.ts +480 -0
  264. package/lib/aws/compute/volume.js +426 -0
  265. package/lib/aws/compute/vpc-endpoint-service.d.ts +149 -0
  266. package/lib/aws/compute/vpc-endpoint-service.js +90 -0
  267. package/lib/aws/compute/vpc-endpoint.d.ts +742 -0
  268. package/lib/aws/compute/vpc-endpoint.js +811 -0
  269. package/lib/aws/compute/vpc-flow-logs.d.ts +551 -0
  270. package/lib/aws/compute/vpc-flow-logs.js +693 -0
  271. package/lib/aws/compute/vpc-lookup.d.ts +73 -0
  272. package/lib/aws/compute/vpc-lookup.js +3 -0
  273. package/lib/aws/compute/vpc-v2-base.d.ts +353 -0
  274. package/lib/aws/compute/vpc-v2-base.js +493 -0
  275. package/lib/aws/compute/vpc-v2.d.ts +385 -0
  276. package/lib/aws/compute/vpc-v2.js +408 -0
  277. package/lib/aws/compute/vpc.d.ts +1448 -0
  278. package/lib/aws/compute/vpc.js +1495 -0
  279. package/lib/aws/compute/vpn.d.ts +443 -0
  280. package/lib/aws/compute/vpn.js +397 -0
  281. package/lib/aws/compute/windows-versions.d.ts +418 -0
  282. package/lib/aws/compute/windows-versions.js +426 -0
  283. package/lib/aws/edge/certificate-base.d.ts +20 -0
  284. package/lib/aws/edge/certificate-base.js +28 -0
  285. package/lib/aws/edge/certificate.d.ts +23 -2
  286. package/lib/aws/edge/certificate.js +54 -4
  287. package/lib/aws/edge/distribution.js +3 -3
  288. package/lib/aws/edge/dns-alias-record-targets.js +2 -2
  289. package/lib/aws/edge/dns-record.js +16 -16
  290. package/lib/aws/edge/dns-zone.d.ts +20 -2
  291. package/lib/aws/edge/dns-zone.js +25 -10
  292. package/lib/aws/edge/function.js +2 -2
  293. package/lib/aws/edge/index.d.ts +1 -0
  294. package/lib/aws/edge/index.js +2 -1
  295. package/lib/aws/edge/key-value-store.js +4 -4
  296. package/lib/aws/edge/origin.js +8 -6
  297. package/lib/aws/edge/response-headers-policy.js +1 -1
  298. package/lib/aws/encryption/alias.js +1 -1
  299. package/lib/aws/encryption/key.js +1 -1
  300. package/lib/aws/encryption/via-service-principal.js +1 -1
  301. package/lib/aws/iam/grant.js +2 -2
  302. package/lib/aws/iam/index.d.ts +1 -0
  303. package/lib/aws/iam/index.js +2 -1
  304. package/lib/aws/iam/instance-profile.d.ts +155 -0
  305. package/lib/aws/iam/instance-profile.js +124 -0
  306. package/lib/aws/iam/managed-policy.js +1 -1
  307. package/lib/aws/iam/oidc-provider.js +1 -1
  308. package/lib/aws/iam/policy-document-config.generated.d.ts +8 -8
  309. package/lib/aws/iam/policy-document-config.generated.js +1 -1
  310. package/lib/aws/iam/policy-document.js +1 -1
  311. package/lib/aws/iam/policy-statement-props.generated.d.ts +8 -8
  312. package/lib/aws/iam/policy-statement-props.generated.js +1 -1
  313. package/lib/aws/iam/policy-statement.js +9 -9
  314. package/lib/aws/iam/policy.js +1 -1
  315. package/lib/aws/iam/principals.js +26 -26
  316. package/lib/aws/iam/private/assume-role-policy.js +2 -3
  317. package/lib/aws/iam/private/comparable-principal.js +2 -3
  318. package/lib/aws/iam/private/immutable-role.d.ts +2 -1
  319. package/lib/aws/iam/private/immutable-role.js +3 -3
  320. package/lib/aws/iam/private/imported-role.d.ts +1 -1
  321. package/lib/aws/iam/private/imported-role.js +3 -3
  322. package/lib/aws/iam/private/merge-statements.js +2 -3
  323. package/lib/aws/iam/private/util.js +4 -4
  324. package/lib/aws/iam/role.js +1 -1
  325. package/lib/aws/iam/saml-provider.d.ts +1 -1
  326. package/lib/aws/iam/saml-provider.js +6 -6
  327. package/lib/aws/iam/unknown-principal.js +1 -1
  328. package/lib/aws/iam/utils.js +2 -3
  329. package/lib/aws/index.d.ts +1 -0
  330. package/lib/aws/index.js +4 -1
  331. package/lib/aws/network/simple-ipv4-vpc.js +5 -5
  332. package/lib/aws/network/subnet-group.js +3 -3
  333. package/lib/aws/network/subnet.d.ts +1 -1
  334. package/lib/aws/network/subnet.js +7 -7
  335. package/lib/aws/notify/archive.js +3 -2
  336. package/lib/aws/notify/connection.js +5 -4
  337. package/lib/aws/notify/event-bus.js +5 -4
  338. package/lib/aws/notify/event-pattern.js +3 -3
  339. package/lib/aws/notify/index.js +3 -1
  340. package/lib/aws/notify/input.js +4 -3
  341. package/lib/aws/notify/kinesis-stream.js +3 -2
  342. package/lib/aws/notify/on-event-options.js +2 -1
  343. package/lib/aws/notify/queue-config.generated.d.ts +18 -11
  344. package/lib/aws/notify/queue-config.generated.js +1 -1
  345. package/lib/aws/notify/queue-policy.js +1 -1
  346. package/lib/aws/notify/queue.js +1 -1
  347. package/lib/aws/notify/resource-policy.js +1 -1
  348. package/lib/aws/notify/rule.js +3 -2
  349. package/lib/aws/notify/schedule.js +2 -2
  350. package/lib/aws/notify/sqs-augmentations.generated.d.ts +125 -0
  351. package/lib/aws/notify/sqs-augmentations.generated.js +74 -0
  352. package/lib/aws/notify/target.js +2 -1
  353. package/lib/aws/notify/targets/event-bus.js +1 -1
  354. package/lib/aws/notify/targets/function.js +1 -1
  355. package/lib/aws/notify/targets/log-group.js +2 -2
  356. package/lib/aws/notify/targets/sqs.js +1 -1
  357. package/lib/aws/notify/targets/state-machine.js +1 -1
  358. package/lib/aws/notify/targets/util.d.ts +1 -1
  359. package/lib/aws/notify/targets/util.js +10 -11
  360. package/lib/aws/notify/util.js +4 -4
  361. package/lib/aws/provider-config.generated.d.ts +33 -33
  362. package/lib/aws/provider-config.generated.js +1 -1
  363. package/lib/aws/storage/bucket-notifications.js +1 -1
  364. package/lib/aws/storage/bucket-policy.js +1 -1
  365. package/lib/aws/storage/bucket-source.js +1 -1
  366. package/lib/aws/storage/bucket.d.ts +298 -65
  367. package/lib/aws/storage/bucket.js +548 -225
  368. package/lib/aws/storage/cors-config.generated.d.ts +3 -3
  369. package/lib/aws/storage/cors-config.generated.js +1 -1
  370. package/lib/aws/storage/cors-rule-config.generated.d.ts +5 -5
  371. package/lib/aws/storage/cors-rule-config.generated.js +1 -1
  372. package/lib/aws/storage/index.d.ts +1 -0
  373. package/lib/aws/storage/index.js +2 -1
  374. package/lib/aws/storage/lifecycle-config.generated.d.ts +11 -11
  375. package/lib/aws/storage/lifecycle-config.generated.js +1 -1
  376. package/lib/aws/storage/notification-targets/function.js +6 -6
  377. package/lib/aws/storage/notification-targets/queue.js +1 -1
  378. package/lib/aws/storage/origin-access-identity.d.ts +1 -1
  379. package/lib/aws/storage/origin-access-identity.js +5 -4
  380. package/lib/aws/storage/parameter-util.d.ts +12 -0
  381. package/lib/aws/storage/parameter-util.js +65 -0
  382. package/lib/aws/storage/parameter.d.ts +526 -0
  383. package/lib/aws/storage/parameter.js +606 -0
  384. package/lib/aws/storage/s3-canned-metrics.generated.d.ts +22 -0
  385. package/lib/aws/storage/s3-canned-metrics.generated.js +23 -0
  386. package/lib/aws/storage/util.d.ts +25 -3
  387. package/lib/aws/storage/util.js +84 -17
  388. package/lib/aws/storage/website-config.generated.d.ts +5 -5
  389. package/lib/aws/storage/website-config.generated.js +1 -1
  390. package/lib/aws/util.js +2 -3
  391. package/lib/construct-base.d.ts +10 -1
  392. package/lib/construct-base.js +9 -6
  393. package/lib/duration.js +1 -1
  394. package/lib/expiration.d.ts +48 -0
  395. package/lib/expiration.js +68 -0
  396. package/lib/helpers-internal/index.d.ts +1 -0
  397. package/lib/helpers-internal/index.js +7 -0
  398. package/lib/index.d.ts +2 -0
  399. package/lib/index.js +3 -1
  400. package/lib/private/md5.d.ts +4 -0
  401. package/lib/private/md5.js +14 -0
  402. package/lib/private/unique-resource-name.js +3 -4
  403. package/lib/size.js +2 -2
  404. package/lib/stack-base.d.ts +4 -23
  405. package/lib/stack-base.js +9 -30
  406. package/lib/terra-func.d.ts +103 -0
  407. package/lib/terra-func.js +170 -0
  408. package/lib/token.js +5 -5
  409. package/package.json +15 -8
  410. package/bun.lockb +0 -0
@@ -0,0 +1,22 @@
1
+ export interface MetricWithDims<D> {
2
+ readonly namespace: string;
3
+ readonly metricName: string;
4
+ readonly statistic: string;
5
+ readonly dimensionsMap: D;
6
+ }
7
+ export declare class S3Metrics {
8
+ static bucketSizeBytesAverage(dimensions: {
9
+ BucketName: string;
10
+ StorageType: string;
11
+ }): MetricWithDims<{
12
+ BucketName: string;
13
+ StorageType: string;
14
+ }>;
15
+ static numberOfObjectsAverage(dimensions: {
16
+ BucketName: string;
17
+ StorageType: string;
18
+ }): MetricWithDims<{
19
+ BucketName: string;
20
+ StorageType: string;
21
+ }>;
22
+ }
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.S3Metrics = void 0;
4
+ class S3Metrics {
5
+ static bucketSizeBytesAverage(dimensions) {
6
+ return {
7
+ "namespace": "AWS/S3",
8
+ "metricName": "BucketSizeBytes",
9
+ "dimensionsMap": dimensions,
10
+ "statistic": "Average"
11
+ };
12
+ }
13
+ static numberOfObjectsAverage(dimensions) {
14
+ return {
15
+ "namespace": "AWS/S3",
16
+ "metricName": "NumberOfObjects",
17
+ "dimensionsMap": dimensions,
18
+ "statistic": "Average"
19
+ };
20
+ }
21
+ }
22
+ exports.S3Metrics = S3Metrics;
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiczMtY2FubmVkLW1ldHJpY3MuZ2VuZXJhdGVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F3cy9zdG9yYWdlL3MzLWNhbm5lZC1tZXRyaWNzLmdlbmVyYXRlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFXQSxNQUFhLFNBQVM7SUFDYixNQUFNLENBQUMsc0JBQXNCLENBQUMsVUFBd0Q7UUFDM0YsT0FBTztZQUNMLFdBQVcsRUFBRSxRQUFRO1lBQ3JCLFlBQVksRUFBRSxpQkFBaUI7WUFDL0IsZUFBZSxFQUFFLFVBQVU7WUFDM0IsV0FBVyxFQUFFLFNBQVM7U0FDdkIsQ0FBQztJQUNKLENBQUM7SUFFTSxNQUFNLENBQUMsc0JBQXNCLENBQUMsVUFBd0Q7UUFDM0YsT0FBTztZQUNMLFdBQVcsRUFBRSxRQUFRO1lBQ3JCLFlBQVksRUFBRSxpQkFBaUI7WUFDL0IsZUFBZSxFQUFFLFVBQVU7WUFDM0IsV0FBVyxFQUFFLFNBQVM7U0FDdkIsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQWxCRCw4QkFrQkMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBwcmV0dGllci9wcmV0dGllcixtYXgtbGVuICovXG5leHBvcnQgaW50ZXJmYWNlIE1ldHJpY1dpdGhEaW1zPEQ+IHtcbiAgcmVhZG9ubHkgbmFtZXNwYWNlOiBzdHJpbmc7XG5cbiAgcmVhZG9ubHkgbWV0cmljTmFtZTogc3RyaW5nO1xuXG4gIHJlYWRvbmx5IHN0YXRpc3RpYzogc3RyaW5nO1xuXG4gIHJlYWRvbmx5IGRpbWVuc2lvbnNNYXA6IEQ7XG59XG5cbmV4cG9ydCBjbGFzcyBTM01ldHJpY3Mge1xuICBwdWJsaWMgc3RhdGljIGJ1Y2tldFNpemVCeXRlc0F2ZXJhZ2UoZGltZW5zaW9uczogeyBCdWNrZXROYW1lOiBzdHJpbmc7IFN0b3JhZ2VUeXBlOiBzdHJpbmc7IH0pOiBNZXRyaWNXaXRoRGltczx7IEJ1Y2tldE5hbWU6IHN0cmluZzsgU3RvcmFnZVR5cGU6IHN0cmluZzsgfT4ge1xuICAgIHJldHVybiB7XG4gICAgICBcIm5hbWVzcGFjZVwiOiBcIkFXUy9TM1wiLFxuICAgICAgXCJtZXRyaWNOYW1lXCI6IFwiQnVja2V0U2l6ZUJ5dGVzXCIsXG4gICAgICBcImRpbWVuc2lvbnNNYXBcIjogZGltZW5zaW9ucyxcbiAgICAgIFwic3RhdGlzdGljXCI6IFwiQXZlcmFnZVwiXG4gICAgfTtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgbnVtYmVyT2ZPYmplY3RzQXZlcmFnZShkaW1lbnNpb25zOiB7IEJ1Y2tldE5hbWU6IHN0cmluZzsgU3RvcmFnZVR5cGU6IHN0cmluZzsgfSk6IE1ldHJpY1dpdGhEaW1zPHsgQnVja2V0TmFtZTogc3RyaW5nOyBTdG9yYWdlVHlwZTogc3RyaW5nOyB9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIFwibmFtZXNwYWNlXCI6IFwiQVdTL1MzXCIsXG4gICAgICBcIm1ldHJpY05hbWVcIjogXCJOdW1iZXJPZk9iamVjdHNcIixcbiAgICAgIFwiZGltZW5zaW9uc01hcFwiOiBkaW1lbnNpb25zLFxuICAgICAgXCJzdGF0aXN0aWNcIjogXCJBdmVyYWdlXCJcbiAgICB9O1xuICB9XG59Il19
@@ -1,7 +1,7 @@
1
1
  import { IConstruct } from "constructs";
2
- import { BucketOutputs } from "./bucket";
3
- export declare function parseBucketArn(construct: IConstruct, outputs: BucketOutputs): string;
4
- export declare function parseBucketName(construct: IConstruct, outputs: BucketOutputs): string | undefined;
2
+ import { BucketAttributes } from "./bucket";
3
+ export declare function parseBucketArn(construct: IConstruct, props: BucketAttributes): string;
4
+ export declare function parseBucketName(construct: IConstruct, props: BucketAttributes): string | undefined;
5
5
  /**
6
6
  * All http request methods
7
7
  */
@@ -38,3 +38,25 @@ export declare enum RedirectProtocol {
38
38
  * Normalize windows paths to be posix-like.
39
39
  */
40
40
  export declare function normalPath(path: string): string;
41
+ export declare function s3StaticWebsiteEndpoint(region: string): string;
42
+ export declare function partitionLookup(region: string): {
43
+ partition: Partition;
44
+ domainSuffix: string;
45
+ };
46
+ declare enum Partition {
47
+ Default = "aws",
48
+ Cn = "aws-cn",
49
+ UsGov = "aws-us-gov",
50
+ UsIso = "aws-iso",
51
+ UsIsoB = "aws-iso-b",
52
+ UsIsoF = "aws-iso-f",
53
+ EuIsoE = "aws-iso-e"
54
+ }
55
+ interface Region {
56
+ partition: Partition;
57
+ domainSuffix: string;
58
+ }
59
+ export declare const PARTITION_MAP: {
60
+ [region: string]: Region;
61
+ };
62
+ export {};
@@ -1,38 +1,43 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.normalPath = exports.RedirectProtocol = exports.HttpMethods = exports.parseBucketName = exports.parseBucketArn = void 0;
4
- const __1 = require("..");
5
- function parseBucketArn(construct, outputs) {
3
+ exports.PARTITION_MAP = exports.RedirectProtocol = exports.HttpMethods = void 0;
4
+ exports.parseBucketArn = parseBucketArn;
5
+ exports.parseBucketName = parseBucketName;
6
+ exports.normalPath = normalPath;
7
+ exports.s3StaticWebsiteEndpoint = s3StaticWebsiteEndpoint;
8
+ exports.partitionLookup = partitionLookup;
9
+ const cdktf_1 = require("cdktf");
10
+ const arn_1 = require("../arn");
11
+ const aws_stack_1 = require("../aws-stack");
12
+ function parseBucketArn(construct, props) {
6
13
  // if we have an explicit bucket ARN, use it.
7
- if (outputs.arn) {
8
- return outputs.arn;
14
+ if (props.bucketArn) {
15
+ return props.bucketArn;
9
16
  }
10
- if (outputs.name) {
11
- return __1.AwsStack.ofAwsConstruct(construct).formatArn({
17
+ if (props.bucketName) {
18
+ return aws_stack_1.AwsStack.ofAwsConstruct(construct).formatArn({
12
19
  // S3 Bucket names are globally unique in a partition,
13
20
  // and so their ARNs have empty region and account components
14
21
  region: "",
15
22
  account: "",
16
23
  service: "s3",
17
- resource: outputs.name,
24
+ resource: props.bucketName,
18
25
  });
19
26
  }
20
27
  throw new Error("Cannot determine bucket ARN. At least `bucketArn` or `bucketName` is needed");
21
28
  }
22
- exports.parseBucketArn = parseBucketArn;
23
- function parseBucketName(construct, outputs) {
29
+ function parseBucketName(construct, props) {
24
30
  // if we have an explicit bucket name, use it.
25
- if (outputs.name) {
26
- return outputs.name;
31
+ if (props.bucketName) {
32
+ return props.bucketName;
27
33
  }
28
34
  // extract bucket name from bucket arn
29
- if (outputs.arn) {
30
- return __1.AwsStack.ofAwsConstruct(construct).splitArn(outputs.arn, __1.ArnFormat.SLASH_RESOURCE_NAME).resource;
35
+ if (props.bucketArn) {
36
+ return aws_stack_1.AwsStack.ofAwsConstruct(construct).splitArn(props.bucketArn, arn_1.ArnFormat.SLASH_RESOURCE_NAME).resource;
31
37
  }
32
38
  // no bucket name is okay since it's optional.
33
39
  return undefined;
34
40
  }
35
- exports.parseBucketName = parseBucketName;
36
41
  /**
37
42
  * All http request methods
38
43
  */
@@ -81,5 +86,67 @@ function normalPath(path) {
81
86
  return path;
82
87
  }
83
88
  }
84
- exports.normalPath = normalPath;
85
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hd3Mvc3RvcmFnZS91dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLDBCQUF5QztBQUd6QyxTQUFnQixjQUFjLENBQzVCLFNBQXFCLEVBQ3JCLE9BQXNCO0lBRXRCLDZDQUE2QztJQUM3QyxJQUFJLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNoQixPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUM7SUFDckIsQ0FBQztJQUVELElBQUksT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2pCLE9BQU8sWUFBUSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxTQUFTLENBQUM7WUFDbEQsc0RBQXNEO1lBQ3RELDZEQUE2RDtZQUM3RCxNQUFNLEVBQUUsRUFBRTtZQUNWLE9BQU8sRUFBRSxFQUFFO1lBQ1gsT0FBTyxFQUFFLElBQUk7WUFDYixRQUFRLEVBQUUsT0FBTyxDQUFDLElBQUk7U0FDdkIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE1BQU0sSUFBSSxLQUFLLENBQ2IsNkVBQTZFLENBQzlFLENBQUM7QUFDSixDQUFDO0FBdkJELHdDQXVCQztBQUVELFNBQWdCLGVBQWUsQ0FDN0IsU0FBcUIsRUFDckIsT0FBc0I7SUFFdEIsOENBQThDO0lBQzlDLElBQUksT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2pCLE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQztJQUN0QixDQUFDO0lBRUQsc0NBQXNDO0lBQ3RDLElBQUksT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLE9BQU8sWUFBUSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxRQUFRLENBQ2hELE9BQU8sQ0FBQyxHQUFHLEVBQ1gsYUFBUyxDQUFDLG1CQUFtQixDQUM5QixDQUFDLFFBQVEsQ0FBQztJQUNiLENBQUM7SUFFRCw4Q0FBOEM7SUFDOUMsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQztBQW5CRCwwQ0FtQkM7QUFFRDs7R0FFRztBQUNILElBQVksV0FxQlg7QUFyQkQsV0FBWSxXQUFXO0lBQ3JCOztPQUVHO0lBQ0gsMEJBQVcsQ0FBQTtJQUNYOztPQUVHO0lBQ0gsMEJBQVcsQ0FBQTtJQUNYOztPQUVHO0lBQ0gsNEJBQWEsQ0FBQTtJQUNiOztPQUVHO0lBQ0gsNEJBQWEsQ0FBQTtJQUNiOztPQUVHO0lBQ0gsZ0NBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQXJCVyxXQUFXLDJCQUFYLFdBQVcsUUFxQnRCO0FBRUQ7O0dBRUc7QUFDSCxJQUFZLGdCQUdYO0FBSEQsV0FBWSxnQkFBZ0I7SUFDMUIsaUNBQWEsQ0FBQTtJQUNiLG1DQUFlLENBQUE7QUFDakIsQ0FBQyxFQUhXLGdCQUFnQixnQ0FBaEIsZ0JBQWdCLFFBRzNCO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQixVQUFVLENBQUMsSUFBWTtJQUNyQyx5RkFBeUY7SUFDekYsSUFBSSxPQUFPLENBQUMsUUFBUSxLQUFLLE9BQU8sRUFBRSxDQUFDO1FBQ2pDLE9BQU8sQ0FDTCxJQUFJO1lBQ0YsNkJBQTZCO2FBQzVCLE9BQU8sQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQ3hCLENBQUM7SUFDSixDQUFDO1NBQU0sQ0FBQztRQUNOLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztBQUNILENBQUM7QUFYRCxnQ0FXQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgQXdzU3RhY2ssIEFybkZvcm1hdCB9IGZyb20gXCIuLlwiO1xuaW1wb3J0IHsgQnVja2V0T3V0cHV0cyB9IGZyb20gXCIuL2J1Y2tldFwiO1xuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VCdWNrZXRBcm4oXG4gIGNvbnN0cnVjdDogSUNvbnN0cnVjdCxcbiAgb3V0cHV0czogQnVja2V0T3V0cHV0cyxcbik6IHN0cmluZyB7XG4gIC8vIGlmIHdlIGhhdmUgYW4gZXhwbGljaXQgYnVja2V0IEFSTiwgdXNlIGl0LlxuICBpZiAob3V0cHV0cy5hcm4pIHtcbiAgICByZXR1cm4gb3V0cHV0cy5hcm47XG4gIH1cblxuICBpZiAob3V0cHV0cy5uYW1lKSB7XG4gICAgcmV0dXJuIEF3c1N0YWNrLm9mQXdzQ29uc3RydWN0KGNvbnN0cnVjdCkuZm9ybWF0QXJuKHtcbiAgICAgIC8vIFMzIEJ1Y2tldCBuYW1lcyBhcmUgZ2xvYmFsbHkgdW5pcXVlIGluIGEgcGFydGl0aW9uLFxuICAgICAgLy8gYW5kIHNvIHRoZWlyIEFSTnMgaGF2ZSBlbXB0eSByZWdpb24gYW5kIGFjY291bnQgY29tcG9uZW50c1xuICAgICAgcmVnaW9uOiBcIlwiLFxuICAgICAgYWNjb3VudDogXCJcIixcbiAgICAgIHNlcnZpY2U6IFwiczNcIixcbiAgICAgIHJlc291cmNlOiBvdXRwdXRzLm5hbWUsXG4gICAgfSk7XG4gIH1cblxuICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgXCJDYW5ub3QgZGV0ZXJtaW5lIGJ1Y2tldCBBUk4uIEF0IGxlYXN0IGBidWNrZXRBcm5gIG9yIGBidWNrZXROYW1lYCBpcyBuZWVkZWRcIixcbiAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlQnVja2V0TmFtZShcbiAgY29uc3RydWN0OiBJQ29uc3RydWN0LFxuICBvdXRwdXRzOiBCdWNrZXRPdXRwdXRzLFxuKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgLy8gaWYgd2UgaGF2ZSBhbiBleHBsaWNpdCBidWNrZXQgbmFtZSwgdXNlIGl0LlxuICBpZiAob3V0cHV0cy5uYW1lKSB7XG4gICAgcmV0dXJuIG91dHB1dHMubmFtZTtcbiAgfVxuXG4gIC8vIGV4dHJhY3QgYnVja2V0IG5hbWUgZnJvbSBidWNrZXQgYXJuXG4gIGlmIChvdXRwdXRzLmFybikge1xuICAgIHJldHVybiBBd3NTdGFjay5vZkF3c0NvbnN0cnVjdChjb25zdHJ1Y3QpLnNwbGl0QXJuKFxuICAgICAgb3V0cHV0cy5hcm4sXG4gICAgICBBcm5Gb3JtYXQuU0xBU0hfUkVTT1VSQ0VfTkFNRSxcbiAgICApLnJlc291cmNlO1xuICB9XG5cbiAgLy8gbm8gYnVja2V0IG5hbWUgaXMgb2theSBzaW5jZSBpdCdzIG9wdGlvbmFsLlxuICByZXR1cm4gdW5kZWZpbmVkO1xufVxuXG4vKipcbiAqIEFsbCBodHRwIHJlcXVlc3QgbWV0aG9kc1xuICovXG5leHBvcnQgZW51bSBIdHRwTWV0aG9kcyB7XG4gIC8qKlxuICAgKiBUaGUgR0VUIG1ldGhvZCByZXF1ZXN0cyBhIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBzcGVjaWZpZWQgcmVzb3VyY2UuXG4gICAqL1xuICBHRVQgPSBcIkdFVFwiLFxuICAvKipcbiAgICogVGhlIFBVVCBtZXRob2QgcmVwbGFjZXMgYWxsIGN1cnJlbnQgcmVwcmVzZW50YXRpb25zIG9mIHRoZSB0YXJnZXQgcmVzb3VyY2Ugd2l0aCB0aGUgcmVxdWVzdCBwYXlsb2FkLlxuICAgKi9cbiAgUFVUID0gXCJQVVRcIixcbiAgLyoqXG4gICAqIFRoZSBIRUFEIG1ldGhvZCBhc2tzIGZvciBhIHJlc3BvbnNlIGlkZW50aWNhbCB0byB0aGF0IG9mIGEgR0VUIHJlcXVlc3QsIGJ1dCB3aXRob3V0IHRoZSByZXNwb25zZSBib2R5LlxuICAgKi9cbiAgSEVBRCA9IFwiSEVBRFwiLFxuICAvKipcbiAgICogVGhlIFBPU1QgbWV0aG9kIGlzIHVzZWQgdG8gc3VibWl0IGFuIGVudGl0eSB0byB0aGUgc3BlY2lmaWVkIHJlc291cmNlLCBvZnRlbiBjYXVzaW5nIGEgY2hhbmdlIGluIHN0YXRlIG9yIHNpZGUgZWZmZWN0cyBvbiB0aGUgc2VydmVyLlxuICAgKi9cbiAgUE9TVCA9IFwiUE9TVFwiLFxuICAvKipcbiAgICogVGhlIERFTEVURSBtZXRob2QgZGVsZXRlcyB0aGUgc3BlY2lmaWVkIHJlc291cmNlLlxuICAgKi9cbiAgREVMRVRFID0gXCJERUxFVEVcIixcbn1cblxuLyoqXG4gKiBBbGwgaHR0cCByZXF1ZXN0IG1ldGhvZHNcbiAqL1xuZXhwb3J0IGVudW0gUmVkaXJlY3RQcm90b2NvbCB7XG4gIEhUVFAgPSBcImh0dHBcIixcbiAgSFRUUFMgPSBcImh0dHBzXCIsXG59XG5cbi8qKlxuICogTm9ybWFsaXplIHdpbmRvd3MgcGF0aHMgdG8gYmUgcG9zaXgtbGlrZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG5vcm1hbFBhdGgocGF0aDogc3RyaW5nKSB7XG4gIC8vIHJlZjogaHR0cHM6Ly9naXRodWIuY29tL3dpbmdsYW5nL3dpbmcvYmxvYi92MC44My44L2xpYnMvd2luZ3Nkay9zcmMvc2hhcmVkL21pc2MudHMjTDE1XG4gIGlmIChwcm9jZXNzLnBsYXRmb3JtID09PSBcIndpbjMyXCIpIHtcbiAgICByZXR1cm4gKFxuICAgICAgcGF0aFxuICAgICAgICAvLyBmb3JjZSBwb3NpeCBwYXRoIHNlcGFyYXRvclxuICAgICAgICAucmVwbGFjZSgvXFxcXCsvZywgXCIvXCIpXG4gICAgKTtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gcGF0aDtcbiAgfVxufVxuIl19
89
+ // https://github.com/aws/aws-cdk/blob/v2.181.1/packages/aws-cdk-lib/region-info/lib/aws-entities.ts#L27
90
+ /**
91
+ * regions introduced before s3 website started using a regional subdomain
92
+ * After this point, S3 website domains look like `s3-website.REGION.s3.amazonaws.com`
93
+ *
94
+ * Before this point, S3 website domains look like `s3-website-REGION.s3.amazonaws.com`.
95
+ */
96
+ const BEFORE_S3_WEBSITE_REGIONAL_SUBDOMAIN = [
97
+ "us-east-1", // US East (N. Virginia)
98
+ "eu-west-1", // Europe (Ireland)
99
+ "us-west-1", // US West (N. California)
100
+ "ap-southeast-1", // Asia Pacific (Singapore)
101
+ "ap-northeast-1", // Asia Pacific (Tokyo)
102
+ "us-gov-west-1", // AWS GovCloud (US-West)
103
+ "us-west-2", // US West (Oregon)
104
+ "sa-east-1", // South America (São Paulo)
105
+ "ap-southeast-2", // Asia Pacific (Sydney)
106
+ ];
107
+ // https://github.com/aws/aws-cdk/blob/v2.181.1/packages/aws-cdk-lib/region-info/build-tools/generate-static-data.ts#L73
108
+ function s3StaticWebsiteEndpoint(region) {
109
+ // NOTE: This function is not used instead we use the s3 bucket datasource
110
+ if (cdktf_1.Token.isUnresolved(region)) {
111
+ throw new Error("Cannot determine S3 website endpoint for unresolved region");
112
+ }
113
+ const { domainSuffix } = partitionLookup(region);
114
+ if (BEFORE_S3_WEBSITE_REGIONAL_SUBDOMAIN.includes(region)) {
115
+ return `s3-website-${region}.${domainSuffix}`;
116
+ }
117
+ return `s3-website.${region}.${domainSuffix}`;
118
+ }
119
+ function partitionLookup(region) {
120
+ if (cdktf_1.Token.isUnresolved(region)) {
121
+ throw new Error("Cannot determine region partition for unresolved region");
122
+ }
123
+ let partition = exports.PARTITION_MAP.default.partition;
124
+ let domainSuffix = exports.PARTITION_MAP.default.domainSuffix;
125
+ for (const key in exports.PARTITION_MAP) {
126
+ if (region.startsWith(key)) {
127
+ partition = exports.PARTITION_MAP[key].partition;
128
+ domainSuffix = exports.PARTITION_MAP[key].domainSuffix;
129
+ }
130
+ }
131
+ return { partition, domainSuffix };
132
+ }
133
+ var Partition;
134
+ (function (Partition) {
135
+ Partition["Default"] = "aws";
136
+ Partition["Cn"] = "aws-cn";
137
+ Partition["UsGov"] = "aws-us-gov";
138
+ Partition["UsIso"] = "aws-iso";
139
+ Partition["UsIsoB"] = "aws-iso-b";
140
+ Partition["UsIsoF"] = "aws-iso-f";
141
+ Partition["EuIsoE"] = "aws-iso-e";
142
+ })(Partition || (Partition = {}));
143
+ exports.PARTITION_MAP = {
144
+ default: { partition: Partition.Default, domainSuffix: "amazonaws.com" },
145
+ "cn-": { partition: Partition.Cn, domainSuffix: "amazonaws.com.cn" },
146
+ "us-gov-": { partition: Partition.UsGov, domainSuffix: "amazonaws.com" },
147
+ "us-iso-": { partition: Partition.UsIso, domainSuffix: "c2s.ic.gov" },
148
+ "us-isob-": { partition: Partition.UsIsoB, domainSuffix: "sc2s.sgov.gov" },
149
+ "us-isof-": { partition: Partition.UsIsoF, domainSuffix: "csp.hci.ic.gov" },
150
+ "eu-isoe-": { partition: Partition.EuIsoE, domainSuffix: "cloud.adc-e.uk" },
151
+ };
152
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hd3Mvc3RvcmFnZS91dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQU1BLHdDQXVCQztBQUVELDBDQW1CQztBQXVDRCxnQ0FXQztBQXVCRCwwREFZQztBQUVELDBDQWlCQztBQTFKRCxpQ0FBOEI7QUFFOUIsZ0NBQW1DO0FBQ25DLDRDQUF3QztBQUd4QyxTQUFnQixjQUFjLENBQzVCLFNBQXFCLEVBQ3JCLEtBQXVCO0lBRXZCLDZDQUE2QztJQUM3QyxJQUFJLEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNwQixPQUFPLEtBQUssQ0FBQyxTQUFTLENBQUM7SUFDekIsQ0FBQztJQUVELElBQUksS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3JCLE9BQU8sb0JBQVEsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQ2xELHNEQUFzRDtZQUN0RCw2REFBNkQ7WUFDN0QsTUFBTSxFQUFFLEVBQUU7WUFDVixPQUFPLEVBQUUsRUFBRTtZQUNYLE9BQU8sRUFBRSxJQUFJO1lBQ2IsUUFBUSxFQUFFLEtBQUssQ0FBQyxVQUFVO1NBQzNCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxNQUFNLElBQUksS0FBSyxDQUNiLDZFQUE2RSxDQUM5RSxDQUFDO0FBQ0osQ0FBQztBQUVELFNBQWdCLGVBQWUsQ0FDN0IsU0FBcUIsRUFDckIsS0FBdUI7SUFFdkIsOENBQThDO0lBQzlDLElBQUksS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3JCLE9BQU8sS0FBSyxDQUFDLFVBQVUsQ0FBQztJQUMxQixDQUFDO0lBRUQsc0NBQXNDO0lBQ3RDLElBQUksS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ3BCLE9BQU8sb0JBQVEsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBUSxDQUNoRCxLQUFLLENBQUMsU0FBUyxFQUNmLGVBQVMsQ0FBQyxtQkFBbUIsQ0FDOUIsQ0FBQyxRQUFRLENBQUM7SUFDYixDQUFDO0lBRUQsOENBQThDO0lBQzlDLE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUM7QUFFRDs7R0FFRztBQUNILElBQVksV0FxQlg7QUFyQkQsV0FBWSxXQUFXO0lBQ3JCOztPQUVHO0lBQ0gsMEJBQVcsQ0FBQTtJQUNYOztPQUVHO0lBQ0gsMEJBQVcsQ0FBQTtJQUNYOztPQUVHO0lBQ0gsNEJBQWEsQ0FBQTtJQUNiOztPQUVHO0lBQ0gsNEJBQWEsQ0FBQTtJQUNiOztPQUVHO0lBQ0gsZ0NBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQXJCVyxXQUFXLDJCQUFYLFdBQVcsUUFxQnRCO0FBRUQ7O0dBRUc7QUFDSCxJQUFZLGdCQUdYO0FBSEQsV0FBWSxnQkFBZ0I7SUFDMUIsaUNBQWEsQ0FBQTtJQUNiLG1DQUFlLENBQUE7QUFDakIsQ0FBQyxFQUhXLGdCQUFnQixnQ0FBaEIsZ0JBQWdCLFFBRzNCO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQixVQUFVLENBQUMsSUFBWTtJQUNyQyx5RkFBeUY7SUFDekYsSUFBSSxPQUFPLENBQUMsUUFBUSxLQUFLLE9BQU8sRUFBRSxDQUFDO1FBQ2pDLE9BQU8sQ0FDTCxJQUFJO1lBQ0YsNkJBQTZCO2FBQzVCLE9BQU8sQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQ3hCLENBQUM7SUFDSixDQUFDO1NBQU0sQ0FBQztRQUNOLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztBQUNILENBQUM7QUFFRCx3R0FBd0c7QUFFeEc7Ozs7O0dBS0c7QUFDSCxNQUFNLG9DQUFvQyxHQUFhO0lBQ3JELFdBQVcsRUFBRSx3QkFBd0I7SUFDckMsV0FBVyxFQUFFLG1CQUFtQjtJQUNoQyxXQUFXLEVBQUUsMEJBQTBCO0lBQ3ZDLGdCQUFnQixFQUFFLDJCQUEyQjtJQUM3QyxnQkFBZ0IsRUFBRSx1QkFBdUI7SUFDekMsZUFBZSxFQUFFLHlCQUF5QjtJQUMxQyxXQUFXLEVBQUUsbUJBQW1CO0lBQ2hDLFdBQVcsRUFBRSw0QkFBNEI7SUFDekMsZ0JBQWdCLEVBQUUsd0JBQXdCO0NBQzNDLENBQUM7QUFFRix3SEFBd0g7QUFDeEgsU0FBZ0IsdUJBQXVCLENBQUMsTUFBYztJQUNwRCwwRUFBMEU7SUFDMUUsSUFBSSxhQUFLLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDL0IsTUFBTSxJQUFJLEtBQUssQ0FDYiw0REFBNEQsQ0FDN0QsQ0FBQztJQUNKLENBQUM7SUFDRCxNQUFNLEVBQUUsWUFBWSxFQUFFLEdBQUcsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2pELElBQUksb0NBQW9DLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDMUQsT0FBTyxjQUFjLE1BQU0sSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUNoRCxDQUFDO0lBQ0QsT0FBTyxjQUFjLE1BQU0sSUFBSSxZQUFZLEVBQUUsQ0FBQztBQUNoRCxDQUFDO0FBRUQsU0FBZ0IsZUFBZSxDQUFDLE1BQWM7SUFJNUMsSUFBSSxhQUFLLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDL0IsTUFBTSxJQUFJLEtBQUssQ0FBQyx5REFBeUQsQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFDRCxJQUFJLFNBQVMsR0FBRyxxQkFBYSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUM7SUFDaEQsSUFBSSxZQUFZLEdBQUcscUJBQWEsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDO0lBRXRELEtBQUssTUFBTSxHQUFHLElBQUkscUJBQWEsRUFBRSxDQUFDO1FBQ2hDLElBQUksTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzNCLFNBQVMsR0FBRyxxQkFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUN6QyxZQUFZLEdBQUcscUJBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxZQUFZLENBQUM7UUFDakQsQ0FBQztJQUNILENBQUM7SUFDRCxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxDQUFDO0FBQ3JDLENBQUM7QUFFRCxJQUFLLFNBUUo7QUFSRCxXQUFLLFNBQVM7SUFDWiw0QkFBZSxDQUFBO0lBQ2YsMEJBQWEsQ0FBQTtJQUNiLGlDQUFvQixDQUFBO0lBQ3BCLDhCQUFpQixDQUFBO0lBQ2pCLGlDQUFvQixDQUFBO0lBQ3BCLGlDQUFvQixDQUFBO0lBQ3BCLGlDQUFvQixDQUFBO0FBQ3RCLENBQUMsRUFSSSxTQUFTLEtBQVQsU0FBUyxRQVFiO0FBTVksUUFBQSxhQUFhLEdBQWlDO0lBQ3pELE9BQU8sRUFBRSxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUMsT0FBTyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUU7SUFDeEUsS0FBSyxFQUFFLEVBQUUsU0FBUyxFQUFFLFNBQVMsQ0FBQyxFQUFFLEVBQUUsWUFBWSxFQUFFLGtCQUFrQixFQUFFO0lBQ3BFLFNBQVMsRUFBRSxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUMsS0FBSyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUU7SUFDeEUsU0FBUyxFQUFFLEVBQUUsU0FBUyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRTtJQUNyRSxVQUFVLEVBQUUsRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFDLE1BQU0sRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFO0lBQzFFLFVBQVUsRUFBRSxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUMsTUFBTSxFQUFFLFlBQVksRUFBRSxnQkFBZ0IsRUFBRTtJQUMzRSxVQUFVLEVBQUUsRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFDLE1BQU0sRUFBRSxZQUFZLEVBQUUsZ0JBQWdCLEVBQUU7Q0FDNUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRva2VuIH0gZnJvbSBcImNka3RmXCI7XG5pbXBvcnQgeyBJQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IEFybkZvcm1hdCB9IGZyb20gXCIuLi9hcm5cIjtcbmltcG9ydCB7IEF3c1N0YWNrIH0gZnJvbSBcIi4uL2F3cy1zdGFja1wiO1xuaW1wb3J0IHsgQnVja2V0QXR0cmlidXRlcyB9IGZyb20gXCIuL2J1Y2tldFwiO1xuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VCdWNrZXRBcm4oXG4gIGNvbnN0cnVjdDogSUNvbnN0cnVjdCxcbiAgcHJvcHM6IEJ1Y2tldEF0dHJpYnV0ZXMsXG4pOiBzdHJpbmcge1xuICAvLyBpZiB3ZSBoYXZlIGFuIGV4cGxpY2l0IGJ1Y2tldCBBUk4sIHVzZSBpdC5cbiAgaWYgKHByb3BzLmJ1Y2tldEFybikge1xuICAgIHJldHVybiBwcm9wcy5idWNrZXRBcm47XG4gIH1cblxuICBpZiAocHJvcHMuYnVja2V0TmFtZSkge1xuICAgIHJldHVybiBBd3NTdGFjay5vZkF3c0NvbnN0cnVjdChjb25zdHJ1Y3QpLmZvcm1hdEFybih7XG4gICAgICAvLyBTMyBCdWNrZXQgbmFtZXMgYXJlIGdsb2JhbGx5IHVuaXF1ZSBpbiBhIHBhcnRpdGlvbixcbiAgICAgIC8vIGFuZCBzbyB0aGVpciBBUk5zIGhhdmUgZW1wdHkgcmVnaW9uIGFuZCBhY2NvdW50IGNvbXBvbmVudHNcbiAgICAgIHJlZ2lvbjogXCJcIixcbiAgICAgIGFjY291bnQ6IFwiXCIsXG4gICAgICBzZXJ2aWNlOiBcInMzXCIsXG4gICAgICByZXNvdXJjZTogcHJvcHMuYnVja2V0TmFtZSxcbiAgICB9KTtcbiAgfVxuXG4gIHRocm93IG5ldyBFcnJvcihcbiAgICBcIkNhbm5vdCBkZXRlcm1pbmUgYnVja2V0IEFSTi4gQXQgbGVhc3QgYGJ1Y2tldEFybmAgb3IgYGJ1Y2tldE5hbWVgIGlzIG5lZWRlZFwiLFxuICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VCdWNrZXROYW1lKFxuICBjb25zdHJ1Y3Q6IElDb25zdHJ1Y3QsXG4gIHByb3BzOiBCdWNrZXRBdHRyaWJ1dGVzLFxuKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgLy8gaWYgd2UgaGF2ZSBhbiBleHBsaWNpdCBidWNrZXQgbmFtZSwgdXNlIGl0LlxuICBpZiAocHJvcHMuYnVja2V0TmFtZSkge1xuICAgIHJldHVybiBwcm9wcy5idWNrZXROYW1lO1xuICB9XG5cbiAgLy8gZXh0cmFjdCBidWNrZXQgbmFtZSBmcm9tIGJ1Y2tldCBhcm5cbiAgaWYgKHByb3BzLmJ1Y2tldEFybikge1xuICAgIHJldHVybiBBd3NTdGFjay5vZkF3c0NvbnN0cnVjdChjb25zdHJ1Y3QpLnNwbGl0QXJuKFxuICAgICAgcHJvcHMuYnVja2V0QXJuLFxuICAgICAgQXJuRm9ybWF0LlNMQVNIX1JFU09VUkNFX05BTUUsXG4gICAgKS5yZXNvdXJjZTtcbiAgfVxuXG4gIC8vIG5vIGJ1Y2tldCBuYW1lIGlzIG9rYXkgc2luY2UgaXQncyBvcHRpb25hbC5cbiAgcmV0dXJuIHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBBbGwgaHR0cCByZXF1ZXN0IG1ldGhvZHNcbiAqL1xuZXhwb3J0IGVudW0gSHR0cE1ldGhvZHMge1xuICAvKipcbiAgICogVGhlIEdFVCBtZXRob2QgcmVxdWVzdHMgYSByZXByZXNlbnRhdGlvbiBvZiB0aGUgc3BlY2lmaWVkIHJlc291cmNlLlxuICAgKi9cbiAgR0VUID0gXCJHRVRcIixcbiAgLyoqXG4gICAqIFRoZSBQVVQgbWV0aG9kIHJlcGxhY2VzIGFsbCBjdXJyZW50IHJlcHJlc2VudGF0aW9ucyBvZiB0aGUgdGFyZ2V0IHJlc291cmNlIHdpdGggdGhlIHJlcXVlc3QgcGF5bG9hZC5cbiAgICovXG4gIFBVVCA9IFwiUFVUXCIsXG4gIC8qKlxuICAgKiBUaGUgSEVBRCBtZXRob2QgYXNrcyBmb3IgYSByZXNwb25zZSBpZGVudGljYWwgdG8gdGhhdCBvZiBhIEdFVCByZXF1ZXN0LCBidXQgd2l0aG91dCB0aGUgcmVzcG9uc2UgYm9keS5cbiAgICovXG4gIEhFQUQgPSBcIkhFQURcIixcbiAgLyoqXG4gICAqIFRoZSBQT1NUIG1ldGhvZCBpcyB1c2VkIHRvIHN1Ym1pdCBhbiBlbnRpdHkgdG8gdGhlIHNwZWNpZmllZCByZXNvdXJjZSwgb2Z0ZW4gY2F1c2luZyBhIGNoYW5nZSBpbiBzdGF0ZSBvciBzaWRlIGVmZmVjdHMgb24gdGhlIHNlcnZlci5cbiAgICovXG4gIFBPU1QgPSBcIlBPU1RcIixcbiAgLyoqXG4gICAqIFRoZSBERUxFVEUgbWV0aG9kIGRlbGV0ZXMgdGhlIHNwZWNpZmllZCByZXNvdXJjZS5cbiAgICovXG4gIERFTEVURSA9IFwiREVMRVRFXCIsXG59XG5cbi8qKlxuICogQWxsIGh0dHAgcmVxdWVzdCBtZXRob2RzXG4gKi9cbmV4cG9ydCBlbnVtIFJlZGlyZWN0UHJvdG9jb2wge1xuICBIVFRQID0gXCJodHRwXCIsXG4gIEhUVFBTID0gXCJodHRwc1wiLFxufVxuXG4vKipcbiAqIE5vcm1hbGl6ZSB3aW5kb3dzIHBhdGhzIHRvIGJlIHBvc2l4LWxpa2UuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBub3JtYWxQYXRoKHBhdGg6IHN0cmluZykge1xuICAvLyByZWY6IGh0dHBzOi8vZ2l0aHViLmNvbS93aW5nbGFuZy93aW5nL2Jsb2IvdjAuODMuOC9saWJzL3dpbmdzZGsvc3JjL3NoYXJlZC9taXNjLnRzI0wxNVxuICBpZiAocHJvY2Vzcy5wbGF0Zm9ybSA9PT0gXCJ3aW4zMlwiKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIHBhdGhcbiAgICAgICAgLy8gZm9yY2UgcG9zaXggcGF0aCBzZXBhcmF0b3JcbiAgICAgICAgLnJlcGxhY2UoL1xcXFwrL2csIFwiL1wiKVxuICAgICk7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIHBhdGg7XG4gIH1cbn1cblxuLy8gaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2Jsb2IvdjIuMTgxLjEvcGFja2FnZXMvYXdzLWNkay1saWIvcmVnaW9uLWluZm8vbGliL2F3cy1lbnRpdGllcy50cyNMMjdcblxuLyoqXG4gKiByZWdpb25zIGludHJvZHVjZWQgYmVmb3JlIHMzIHdlYnNpdGUgc3RhcnRlZCB1c2luZyBhIHJlZ2lvbmFsIHN1YmRvbWFpblxuICogQWZ0ZXIgdGhpcyBwb2ludCwgUzMgd2Vic2l0ZSBkb21haW5zIGxvb2sgbGlrZSBgczMtd2Vic2l0ZS5SRUdJT04uczMuYW1hem9uYXdzLmNvbWBcbiAqXG4gKiBCZWZvcmUgdGhpcyBwb2ludCwgUzMgd2Vic2l0ZSBkb21haW5zIGxvb2sgbGlrZSBgczMtd2Vic2l0ZS1SRUdJT04uczMuYW1hem9uYXdzLmNvbWAuXG4gKi9cbmNvbnN0IEJFRk9SRV9TM19XRUJTSVRFX1JFR0lPTkFMX1NVQkRPTUFJTjogc3RyaW5nW10gPSBbXG4gIFwidXMtZWFzdC0xXCIsIC8vIFVTIEVhc3QgKE4uIFZpcmdpbmlhKVxuICBcImV1LXdlc3QtMVwiLCAvLyBFdXJvcGUgKElyZWxhbmQpXG4gIFwidXMtd2VzdC0xXCIsIC8vIFVTIFdlc3QgKE4uIENhbGlmb3JuaWEpXG4gIFwiYXAtc291dGhlYXN0LTFcIiwgLy8gQXNpYSBQYWNpZmljIChTaW5nYXBvcmUpXG4gIFwiYXAtbm9ydGhlYXN0LTFcIiwgLy8gQXNpYSBQYWNpZmljIChUb2t5bylcbiAgXCJ1cy1nb3Ytd2VzdC0xXCIsIC8vIEFXUyBHb3ZDbG91ZCAoVVMtV2VzdClcbiAgXCJ1cy13ZXN0LTJcIiwgLy8gVVMgV2VzdCAoT3JlZ29uKVxuICBcInNhLWVhc3QtMVwiLCAvLyBTb3V0aCBBbWVyaWNhIChTw6NvIFBhdWxvKVxuICBcImFwLXNvdXRoZWFzdC0yXCIsIC8vIEFzaWEgUGFjaWZpYyAoU3lkbmV5KVxuXTtcblxuLy8gaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2Jsb2IvdjIuMTgxLjEvcGFja2FnZXMvYXdzLWNkay1saWIvcmVnaW9uLWluZm8vYnVpbGQtdG9vbHMvZ2VuZXJhdGUtc3RhdGljLWRhdGEudHMjTDczXG5leHBvcnQgZnVuY3Rpb24gczNTdGF0aWNXZWJzaXRlRW5kcG9pbnQocmVnaW9uOiBzdHJpbmcpOiBzdHJpbmcge1xuICAvLyBOT1RFOiBUaGlzIGZ1bmN0aW9uIGlzIG5vdCB1c2VkIGluc3RlYWQgd2UgdXNlIHRoZSBzMyBidWNrZXQgZGF0YXNvdXJjZVxuICBpZiAoVG9rZW4uaXNVbnJlc29sdmVkKHJlZ2lvbikpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICBcIkNhbm5vdCBkZXRlcm1pbmUgUzMgd2Vic2l0ZSBlbmRwb2ludCBmb3IgdW5yZXNvbHZlZCByZWdpb25cIixcbiAgICApO1xuICB9XG4gIGNvbnN0IHsgZG9tYWluU3VmZml4IH0gPSBwYXJ0aXRpb25Mb29rdXAocmVnaW9uKTtcbiAgaWYgKEJFRk9SRV9TM19XRUJTSVRFX1JFR0lPTkFMX1NVQkRPTUFJTi5pbmNsdWRlcyhyZWdpb24pKSB7XG4gICAgcmV0dXJuIGBzMy13ZWJzaXRlLSR7cmVnaW9ufS4ke2RvbWFpblN1ZmZpeH1gO1xuICB9XG4gIHJldHVybiBgczMtd2Vic2l0ZS4ke3JlZ2lvbn0uJHtkb21haW5TdWZmaXh9YDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHBhcnRpdGlvbkxvb2t1cChyZWdpb246IHN0cmluZyk6IHtcbiAgcGFydGl0aW9uOiBQYXJ0aXRpb247XG4gIGRvbWFpblN1ZmZpeDogc3RyaW5nO1xufSB7XG4gIGlmIChUb2tlbi5pc1VucmVzb2x2ZWQocmVnaW9uKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihcIkNhbm5vdCBkZXRlcm1pbmUgcmVnaW9uIHBhcnRpdGlvbiBmb3IgdW5yZXNvbHZlZCByZWdpb25cIik7XG4gIH1cbiAgbGV0IHBhcnRpdGlvbiA9IFBBUlRJVElPTl9NQVAuZGVmYXVsdC5wYXJ0aXRpb247XG4gIGxldCBkb21haW5TdWZmaXggPSBQQVJUSVRJT05fTUFQLmRlZmF1bHQuZG9tYWluU3VmZml4O1xuXG4gIGZvciAoY29uc3Qga2V5IGluIFBBUlRJVElPTl9NQVApIHtcbiAgICBpZiAocmVnaW9uLnN0YXJ0c1dpdGgoa2V5KSkge1xuICAgICAgcGFydGl0aW9uID0gUEFSVElUSU9OX01BUFtrZXldLnBhcnRpdGlvbjtcbiAgICAgIGRvbWFpblN1ZmZpeCA9IFBBUlRJVElPTl9NQVBba2V5XS5kb21haW5TdWZmaXg7XG4gICAgfVxuICB9XG4gIHJldHVybiB7IHBhcnRpdGlvbiwgZG9tYWluU3VmZml4IH07XG59XG5cbmVudW0gUGFydGl0aW9uIHtcbiAgRGVmYXVsdCA9IFwiYXdzXCIsXG4gIENuID0gXCJhd3MtY25cIixcbiAgVXNHb3YgPSBcImF3cy11cy1nb3ZcIixcbiAgVXNJc28gPSBcImF3cy1pc29cIixcbiAgVXNJc29CID0gXCJhd3MtaXNvLWJcIixcbiAgVXNJc29GID0gXCJhd3MtaXNvLWZcIixcbiAgRXVJc29FID0gXCJhd3MtaXNvLWVcIixcbn1cblxuaW50ZXJmYWNlIFJlZ2lvbiB7XG4gIHBhcnRpdGlvbjogUGFydGl0aW9uO1xuICBkb21haW5TdWZmaXg6IHN0cmluZztcbn1cbmV4cG9ydCBjb25zdCBQQVJUSVRJT05fTUFQOiB7IFtyZWdpb246IHN0cmluZ106IFJlZ2lvbiB9ID0ge1xuICBkZWZhdWx0OiB7IHBhcnRpdGlvbjogUGFydGl0aW9uLkRlZmF1bHQsIGRvbWFpblN1ZmZpeDogXCJhbWF6b25hd3MuY29tXCIgfSxcbiAgXCJjbi1cIjogeyBwYXJ0aXRpb246IFBhcnRpdGlvbi5DbiwgZG9tYWluU3VmZml4OiBcImFtYXpvbmF3cy5jb20uY25cIiB9LFxuICBcInVzLWdvdi1cIjogeyBwYXJ0aXRpb246IFBhcnRpdGlvbi5Vc0dvdiwgZG9tYWluU3VmZml4OiBcImFtYXpvbmF3cy5jb21cIiB9LFxuICBcInVzLWlzby1cIjogeyBwYXJ0aXRpb246IFBhcnRpdGlvbi5Vc0lzbywgZG9tYWluU3VmZml4OiBcImMycy5pYy5nb3ZcIiB9LFxuICBcInVzLWlzb2ItXCI6IHsgcGFydGl0aW9uOiBQYXJ0aXRpb24uVXNJc29CLCBkb21haW5TdWZmaXg6IFwic2Mycy5zZ292LmdvdlwiIH0sXG4gIFwidXMtaXNvZi1cIjogeyBwYXJ0aXRpb246IFBhcnRpdGlvbi5Vc0lzb0YsIGRvbWFpblN1ZmZpeDogXCJjc3AuaGNpLmljLmdvdlwiIH0sXG4gIFwiZXUtaXNvZS1cIjogeyBwYXJ0aXRpb246IFBhcnRpdGlvbi5FdUlzb0UsIGRvbWFpblN1ZmZpeDogXCJjbG91ZC5hZGMtZS51a1wiIH0sXG59O1xuIl19
@@ -7,25 +7,25 @@ import type { s3BucketWebsiteConfiguration } from '@cdktf/provider-aws';
7
7
  */
8
8
  export interface WebsiteConfig {
9
9
  /**
10
- * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.68.0/docs/resources/s3_bucket_website_configuration#routing_rules S3BucketWebsiteConfiguration#routing_rules}.
10
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.88.0/docs/resources/s3_bucket_website_configuration#routing_rules S3BucketWebsiteConfiguration#routing_rules}.
11
11
  * @stability stable
12
12
  */
13
13
  readonly routingRules?: string;
14
14
  /**
15
15
  * routing_rule block.
16
- * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.68.0/docs/resources/s3_bucket_website_configuration#routing_rule S3BucketWebsiteConfiguration#routing_rule}
16
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.88.0/docs/resources/s3_bucket_website_configuration#routing_rule S3BucketWebsiteConfiguration#routing_rule}
17
17
  * @stability stable
18
18
  */
19
19
  readonly routingRule?: IResolvable | Array<s3BucketWebsiteConfiguration.S3BucketWebsiteConfigurationRoutingRule>;
20
20
  /**
21
21
  * index_document block.
22
- * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.68.0/docs/resources/s3_bucket_website_configuration#index_document S3BucketWebsiteConfiguration#index_document}
22
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.88.0/docs/resources/s3_bucket_website_configuration#index_document S3BucketWebsiteConfiguration#index_document}
23
23
  * @default index.html
24
24
  * @stability stable
25
25
  */
26
26
  readonly indexDocument?: string;
27
27
  /**
28
- * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.68.0/docs/resources/s3_bucket_website_configuration#id S3BucketWebsiteConfiguration#id}.
28
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.88.0/docs/resources/s3_bucket_website_configuration#id S3BucketWebsiteConfiguration#id}.
29
29
  * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
30
30
  * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
31
31
  * @stability stable
@@ -33,7 +33,7 @@ export interface WebsiteConfig {
33
33
  readonly id?: string;
34
34
  /**
35
35
  * error_document block.
36
- * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.68.0/docs/resources/s3_bucket_website_configuration#error_document S3BucketWebsiteConfiguration#error_document}
36
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.88.0/docs/resources/s3_bucket_website_configuration#error_document S3BucketWebsiteConfiguration#error_document}
37
37
  * @stability stable
38
38
  */
39
39
  readonly errorDocument?: s3BucketWebsiteConfiguration.S3BucketWebsiteConfigurationErrorDocument;
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vic2l0ZS1jb25maWcuZ2VuZXJhdGVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F3cy9zdG9yYWdlL3dlYnNpdGUtY29uZmlnLmdlbmVyYXRlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLy8gfn4gR2VuZXJhdGVkIGJ5IHByb2plbi4gVG8gbW9kaWZ5LCBlZGl0IC5wcm9qZW5yYy50cyBhbmQgcnVuIFwibnB4IHByb2plblwiLlxuaW1wb3J0IHR5cGUgeyBGaWxlUHJvdmlzaW9uZXIsIElSZXNvbHZhYmxlLCBJVGVycmFmb3JtRGVwZW5kYWJsZSwgSVRlcnJhZm9ybUl0ZXJhdG9yLCBMb2NhbEV4ZWNQcm92aXNpb25lciwgUmVtb3RlRXhlY1Byb3Zpc2lvbmVyLCBTU0hQcm92aXNpb25lckNvbm5lY3Rpb24sIFRlcnJhZm9ybUNvdW50LCBUZXJyYWZvcm1Qcm92aWRlciwgVGVycmFmb3JtUmVzb3VyY2VMaWZlY3ljbGUsIFdpbnJtUHJvdmlzaW9uZXJDb25uZWN0aW9uIH0gZnJvbSAnY2RrdGYnO1xuaW1wb3J0IHR5cGUgeyBzM0J1Y2tldFdlYnNpdGVDb25maWd1cmF0aW9uIH0gZnJvbSAnQGNka3RmL3Byb3ZpZGVyLWF3cyc7XG5cbi8qKlxuICogUHJvdmlkZXMgYW4gUzMgYnVja2V0IHdlYnNpdGUgY29uZmlndXJhdGlvbiByZXNvdXJjZS5cbiAqXG4gKiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIFtIb3N0aW5nIFdlYnNpdGVzIG9uIFMzXShodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vQW1hem9uUzMvbGF0ZXN0L2Rldi9XZWJzaXRlSG9zdGluZy5odG1sKS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBXZWJzaXRlQ29uZmlnIHtcbiAgLyoqXG4gICAqIERvY3MgYXQgVGVycmFmb3JtIFJlZ2lzdHJ5OiB7QGxpbmsgaHR0cHM6Ly9yZWdpc3RyeS50ZXJyYWZvcm0uaW8vcHJvdmlkZXJzL2hhc2hpY29ycC9hd3MvNS42OC4wL2RvY3MvcmVzb3VyY2VzL3MzX2J1Y2tldF93ZWJzaXRlX2NvbmZpZ3VyYXRpb24jcm91dGluZ19ydWxlcyBTM0J1Y2tldFdlYnNpdGVDb25maWd1cmF0aW9uI3JvdXRpbmdfcnVsZXN9LlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcm91dGluZ1J1bGVzPzogc3RyaW5nO1xuICAvKipcbiAgICogcm91dGluZ19ydWxlIGJsb2NrLlxuICAgKiBEb2NzIGF0IFRlcnJhZm9ybSBSZWdpc3RyeToge0BsaW5rIGh0dHBzOi8vcmVnaXN0cnkudGVycmFmb3JtLmlvL3Byb3ZpZGVycy9oYXNoaWNvcnAvYXdzLzUuNjguMC9kb2NzL3Jlc291cmNlcy9zM19idWNrZXRfd2Vic2l0ZV9jb25maWd1cmF0aW9uI3JvdXRpbmdfcnVsZSBTM0J1Y2tldFdlYnNpdGVDb25maWd1cmF0aW9uI3JvdXRpbmdfcnVsZX1cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHJvdXRpbmdSdWxlPzogSVJlc29sdmFibGUgfCBBcnJheTxzM0J1Y2tldFdlYnNpdGVDb25maWd1cmF0aW9uLlMzQnVja2V0V2Vic2l0ZUNvbmZpZ3VyYXRpb25Sb3V0aW5nUnVsZT47XG4gIC8qKlxuICAgKiBpbmRleF9kb2N1bWVudCBibG9jay5cbiAgICogRG9jcyBhdCBUZXJyYWZvcm0gUmVnaXN0cnk6IHtAbGluayBodHRwczovL3JlZ2lzdHJ5LnRlcnJhZm9ybS5pby9wcm92aWRlcnMvaGFzaGljb3JwL2F3cy81LjY4LjAvZG9jcy9yZXNvdXJjZXMvczNfYnVja2V0X3dlYnNpdGVfY29uZmlndXJhdGlvbiNpbmRleF9kb2N1bWVudCBTM0J1Y2tldFdlYnNpdGVDb25maWd1cmF0aW9uI2luZGV4X2RvY3VtZW50fVxuICAgKiBAZGVmYXVsdCBpbmRleC5odG1sXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBpbmRleERvY3VtZW50Pzogc3RyaW5nO1xuICAvKipcbiAgICogRG9jcyBhdCBUZXJyYWZvcm0gUmVnaXN0cnk6IHtAbGluayBodHRwczovL3JlZ2lzdHJ5LnRlcnJhZm9ybS5pby9wcm92aWRlcnMvaGFzaGljb3JwL2F3cy81LjY4LjAvZG9jcy9yZXNvdXJjZXMvczNfYnVja2V0X3dlYnNpdGVfY29uZmlndXJhdGlvbiNpZCBTM0J1Y2tldFdlYnNpdGVDb25maWd1cmF0aW9uI2lkfS5cbiAgICogUGxlYXNlIGJlIGF3YXJlIHRoYXQgdGhlIGlkIGZpZWxkIGlzIGF1dG9tYXRpY2FsbHkgYWRkZWQgdG8gYWxsIHJlc291cmNlcyBpbiBUZXJyYWZvcm0gcHJvdmlkZXJzIHVzaW5nIGEgVGVycmFmb3JtIHByb3ZpZGVyIFNESyB2ZXJzaW9uIGJlbG93IDIuXG4gICAqIElmIHlvdSBleHBlcmllbmNlIHByb2JsZW1zIHNldHRpbmcgdGhpcyB2YWx1ZSBpdCBtaWdodCBub3QgYmUgc2V0dGFibGUuIFBsZWFzZSB0YWtlIGEgbG9vayBhdCB0aGUgcHJvdmlkZXIgZG9jdW1lbnRhdGlvbiB0byBlbnN1cmUgaXQgc2hvdWxkIGJlIHNldHRhYmxlLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgaWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBlcnJvcl9kb2N1bWVudCBibG9jay5cbiAgICogRG9jcyBhdCBUZXJyYWZvcm0gUmVnaXN0cnk6IHtAbGluayBodHRwczovL3JlZ2lzdHJ5LnRlcnJhZm9ybS5pby9wcm92aWRlcnMvaGFzaGljb3JwL2F3cy81LjY4LjAvZG9jcy9yZXNvdXJjZXMvczNfYnVja2V0X3dlYnNpdGVfY29uZmlndXJhdGlvbiNlcnJvcl9kb2N1bWVudCBTM0J1Y2tldFdlYnNpdGVDb25maWd1cmF0aW9uI2Vycm9yX2RvY3VtZW50fVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZXJyb3JEb2N1bWVudD86IHMzQnVja2V0V2Vic2l0ZUNvbmZpZ3VyYXRpb24uUzNCdWNrZXRXZWJzaXRlQ29uZmlndXJhdGlvbkVycm9yRG9jdW1lbnQ7XG4gIC8qKlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvdmlzaW9uZXJzPzogQXJyYXk8RmlsZVByb3Zpc2lvbmVyIHwgTG9jYWxFeGVjUHJvdmlzaW9uZXIgfCBSZW1vdGVFeGVjUHJvdmlzaW9uZXI+O1xuICAvKipcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHByb3ZpZGVyPzogVGVycmFmb3JtUHJvdmlkZXI7XG4gIC8qKlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgbGlmZWN5Y2xlPzogVGVycmFmb3JtUmVzb3VyY2VMaWZlY3ljbGU7XG4gIC8qKlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgZm9yRWFjaD86IElUZXJyYWZvcm1JdGVyYXRvcjtcbiAgLyoqXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBkZXBlbmRzT24/OiBBcnJheTxJVGVycmFmb3JtRGVwZW5kYWJsZT47XG4gIC8qKlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgY291bnQ/OiBudW1iZXIgfCBUZXJyYWZvcm1Db3VudDtcbiAgLyoqXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBjb25uZWN0aW9uPzogU1NIUHJvdmlzaW9uZXJDb25uZWN0aW9uIHwgV2lucm1Qcm92aXNpb25lckNvbm5lY3Rpb247XG4gIC8qKlxuICAgKiBTZXQgdGhpcyB0byB0cnVlIHRvIGVuYWJsZSBzdGF0aWMgd2Vic2l0ZSBob3N0aW5nLlxuICAgKiBAZGVmYXVsdCBgdHJ1ZWBcbiAgICovXG4gIHJlYWRvbmx5IGVuYWJsZWQ6IGJvb2xlYW47XG59XG4iXX0=
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vic2l0ZS1jb25maWcuZ2VuZXJhdGVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F3cy9zdG9yYWdlL3dlYnNpdGUtY29uZmlnLmdlbmVyYXRlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLy8gfn4gR2VuZXJhdGVkIGJ5IHByb2plbi4gVG8gbW9kaWZ5LCBlZGl0IC5wcm9qZW5yYy50cyBhbmQgcnVuIFwibnB4IHByb2plblwiLlxuaW1wb3J0IHR5cGUgeyBGaWxlUHJvdmlzaW9uZXIsIElSZXNvbHZhYmxlLCBJVGVycmFmb3JtRGVwZW5kYWJsZSwgSVRlcnJhZm9ybUl0ZXJhdG9yLCBMb2NhbEV4ZWNQcm92aXNpb25lciwgUmVtb3RlRXhlY1Byb3Zpc2lvbmVyLCBTU0hQcm92aXNpb25lckNvbm5lY3Rpb24sIFRlcnJhZm9ybUNvdW50LCBUZXJyYWZvcm1Qcm92aWRlciwgVGVycmFmb3JtUmVzb3VyY2VMaWZlY3ljbGUsIFdpbnJtUHJvdmlzaW9uZXJDb25uZWN0aW9uIH0gZnJvbSAnY2RrdGYnO1xuaW1wb3J0IHR5cGUgeyBzM0J1Y2tldFdlYnNpdGVDb25maWd1cmF0aW9uIH0gZnJvbSAnQGNka3RmL3Byb3ZpZGVyLWF3cyc7XG5cbi8qKlxuICogUHJvdmlkZXMgYW4gUzMgYnVja2V0IHdlYnNpdGUgY29uZmlndXJhdGlvbiByZXNvdXJjZS5cbiAqXG4gKiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIFtIb3N0aW5nIFdlYnNpdGVzIG9uIFMzXShodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vQW1hem9uUzMvbGF0ZXN0L2Rldi9XZWJzaXRlSG9zdGluZy5odG1sKS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBXZWJzaXRlQ29uZmlnIHtcbiAgLyoqXG4gICAqIERvY3MgYXQgVGVycmFmb3JtIFJlZ2lzdHJ5OiB7QGxpbmsgaHR0cHM6Ly9yZWdpc3RyeS50ZXJyYWZvcm0uaW8vcHJvdmlkZXJzL2hhc2hpY29ycC9hd3MvNS44OC4wL2RvY3MvcmVzb3VyY2VzL3MzX2J1Y2tldF93ZWJzaXRlX2NvbmZpZ3VyYXRpb24jcm91dGluZ19ydWxlcyBTM0J1Y2tldFdlYnNpdGVDb25maWd1cmF0aW9uI3JvdXRpbmdfcnVsZXN9LlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcm91dGluZ1J1bGVzPzogc3RyaW5nO1xuICAvKipcbiAgICogcm91dGluZ19ydWxlIGJsb2NrLlxuICAgKiBEb2NzIGF0IFRlcnJhZm9ybSBSZWdpc3RyeToge0BsaW5rIGh0dHBzOi8vcmVnaXN0cnkudGVycmFmb3JtLmlvL3Byb3ZpZGVycy9oYXNoaWNvcnAvYXdzLzUuODguMC9kb2NzL3Jlc291cmNlcy9zM19idWNrZXRfd2Vic2l0ZV9jb25maWd1cmF0aW9uI3JvdXRpbmdfcnVsZSBTM0J1Y2tldFdlYnNpdGVDb25maWd1cmF0aW9uI3JvdXRpbmdfcnVsZX1cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHJvdXRpbmdSdWxlPzogSVJlc29sdmFibGUgfCBBcnJheTxzM0J1Y2tldFdlYnNpdGVDb25maWd1cmF0aW9uLlMzQnVja2V0V2Vic2l0ZUNvbmZpZ3VyYXRpb25Sb3V0aW5nUnVsZT47XG4gIC8qKlxuICAgKiBpbmRleF9kb2N1bWVudCBibG9jay5cbiAgICogRG9jcyBhdCBUZXJyYWZvcm0gUmVnaXN0cnk6IHtAbGluayBodHRwczovL3JlZ2lzdHJ5LnRlcnJhZm9ybS5pby9wcm92aWRlcnMvaGFzaGljb3JwL2F3cy81Ljg4LjAvZG9jcy9yZXNvdXJjZXMvczNfYnVja2V0X3dlYnNpdGVfY29uZmlndXJhdGlvbiNpbmRleF9kb2N1bWVudCBTM0J1Y2tldFdlYnNpdGVDb25maWd1cmF0aW9uI2luZGV4X2RvY3VtZW50fVxuICAgKiBAZGVmYXVsdCBpbmRleC5odG1sXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBpbmRleERvY3VtZW50Pzogc3RyaW5nO1xuICAvKipcbiAgICogRG9jcyBhdCBUZXJyYWZvcm0gUmVnaXN0cnk6IHtAbGluayBodHRwczovL3JlZ2lzdHJ5LnRlcnJhZm9ybS5pby9wcm92aWRlcnMvaGFzaGljb3JwL2F3cy81Ljg4LjAvZG9jcy9yZXNvdXJjZXMvczNfYnVja2V0X3dlYnNpdGVfY29uZmlndXJhdGlvbiNpZCBTM0J1Y2tldFdlYnNpdGVDb25maWd1cmF0aW9uI2lkfS5cbiAgICogUGxlYXNlIGJlIGF3YXJlIHRoYXQgdGhlIGlkIGZpZWxkIGlzIGF1dG9tYXRpY2FsbHkgYWRkZWQgdG8gYWxsIHJlc291cmNlcyBpbiBUZXJyYWZvcm0gcHJvdmlkZXJzIHVzaW5nIGEgVGVycmFmb3JtIHByb3ZpZGVyIFNESyB2ZXJzaW9uIGJlbG93IDIuXG4gICAqIElmIHlvdSBleHBlcmllbmNlIHByb2JsZW1zIHNldHRpbmcgdGhpcyB2YWx1ZSBpdCBtaWdodCBub3QgYmUgc2V0dGFibGUuIFBsZWFzZSB0YWtlIGEgbG9vayBhdCB0aGUgcHJvdmlkZXIgZG9jdW1lbnRhdGlvbiB0byBlbnN1cmUgaXQgc2hvdWxkIGJlIHNldHRhYmxlLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgaWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBlcnJvcl9kb2N1bWVudCBibG9jay5cbiAgICogRG9jcyBhdCBUZXJyYWZvcm0gUmVnaXN0cnk6IHtAbGluayBodHRwczovL3JlZ2lzdHJ5LnRlcnJhZm9ybS5pby9wcm92aWRlcnMvaGFzaGljb3JwL2F3cy81Ljg4LjAvZG9jcy9yZXNvdXJjZXMvczNfYnVja2V0X3dlYnNpdGVfY29uZmlndXJhdGlvbiNlcnJvcl9kb2N1bWVudCBTM0J1Y2tldFdlYnNpdGVDb25maWd1cmF0aW9uI2Vycm9yX2RvY3VtZW50fVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZXJyb3JEb2N1bWVudD86IHMzQnVja2V0V2Vic2l0ZUNvbmZpZ3VyYXRpb24uUzNCdWNrZXRXZWJzaXRlQ29uZmlndXJhdGlvbkVycm9yRG9jdW1lbnQ7XG4gIC8qKlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvdmlzaW9uZXJzPzogQXJyYXk8RmlsZVByb3Zpc2lvbmVyIHwgTG9jYWxFeGVjUHJvdmlzaW9uZXIgfCBSZW1vdGVFeGVjUHJvdmlzaW9uZXI+O1xuICAvKipcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHByb3ZpZGVyPzogVGVycmFmb3JtUHJvdmlkZXI7XG4gIC8qKlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgbGlmZWN5Y2xlPzogVGVycmFmb3JtUmVzb3VyY2VMaWZlY3ljbGU7XG4gIC8qKlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgZm9yRWFjaD86IElUZXJyYWZvcm1JdGVyYXRvcjtcbiAgLyoqXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBkZXBlbmRzT24/OiBBcnJheTxJVGVycmFmb3JtRGVwZW5kYWJsZT47XG4gIC8qKlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgY291bnQ/OiBudW1iZXIgfCBUZXJyYWZvcm1Db3VudDtcbiAgLyoqXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBjb25uZWN0aW9uPzogU1NIUHJvdmlzaW9uZXJDb25uZWN0aW9uIHwgV2lucm1Qcm92aXNpb25lckNvbm5lY3Rpb247XG4gIC8qKlxuICAgKiBTZXQgdGhpcyB0byB0cnVlIHRvIGVuYWJsZSBzdGF0aWMgd2Vic2l0ZSBob3N0aW5nLlxuICAgKiBAZGVmYXVsdCBgdHJ1ZWBcbiAgICovXG4gIHJlYWRvbmx5IGVuYWJsZWQ6IGJvb2xlYW47XG59XG4iXX0=
package/lib/aws/util.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  // ref: https://github.com/aws/aws-cdk/blob/v2.150.0/packages/aws-cdk-lib/core/lib/util.ts
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.filterUndefined = void 0;
4
+ exports.filterUndefined = filterUndefined;
5
5
  /**
6
6
  * Returns a copy of `obj` without `undefined` (or `null`) values in maps or arrays.
7
7
  */
@@ -21,5 +21,4 @@ function filterUndefined(obj) {
21
21
  }
22
22
  return obj;
23
23
  }
24
- exports.filterUndefined = filterUndefined;
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hd3MvdXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsMEZBQTBGOzs7QUFFMUY7O0dBRUc7QUFDSCxTQUFnQixlQUFlLENBQUMsR0FBUTtJQUN0QyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUN2QixPQUFPLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQzVCLE1BQU0sR0FBRyxHQUFRLEVBQUUsQ0FBQztRQUNwQixLQUFLLE1BQU0sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQy9DLElBQUksS0FBSyxJQUFJLElBQUksRUFBRSxDQUFDO2dCQUNsQixTQUFTO1lBQ1gsQ0FBQztZQUNELEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEMsQ0FBQztRQUNELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUVELE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQztBQWpCRCwwQ0FpQkMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyByZWY6IGh0dHBzOi8vZ2l0aHViLmNvbS9hd3MvYXdzLWNkay9ibG9iL3YyLjE1MC4wL3BhY2thZ2VzL2F3cy1jZGstbGliL2NvcmUvbGliL3V0aWwudHNcblxuLyoqXG4gKiBSZXR1cm5zIGEgY29weSBvZiBgb2JqYCB3aXRob3V0IGB1bmRlZmluZWRgIChvciBgbnVsbGApIHZhbHVlcyBpbiBtYXBzIG9yIGFycmF5cy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZpbHRlclVuZGVmaW5lZChvYmo6IGFueSk6IGFueSB7XG4gIGlmIChBcnJheS5pc0FycmF5KG9iaikpIHtcbiAgICByZXR1cm4gb2JqLmZpbHRlcigoeCkgPT4geCAhPSBudWxsKS5tYXAoKHgpID0+IGZpbHRlclVuZGVmaW5lZCh4KSk7XG4gIH1cblxuICBpZiAodHlwZW9mIG9iaiA9PT0gXCJvYmplY3RcIikge1xuICAgIGNvbnN0IHJldDogYW55ID0ge307XG4gICAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMob2JqKSkge1xuICAgICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG4gICAgICByZXRba2V5XSA9IGZpbHRlclVuZGVmaW5lZCh2YWx1ZSk7XG4gICAgfVxuICAgIHJldHVybiByZXQ7XG4gIH1cblxuICByZXR1cm4gb2JqO1xufVxuIl19
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hd3MvdXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsMEZBQTBGOztBQUsxRiwwQ0FpQkM7QUFwQkQ7O0dBRUc7QUFDSCxTQUFnQixlQUFlLENBQUMsR0FBUTtJQUN0QyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUN2QixPQUFPLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQzVCLE1BQU0sR0FBRyxHQUFRLEVBQUUsQ0FBQztRQUNwQixLQUFLLE1BQU0sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQy9DLElBQUksS0FBSyxJQUFJLElBQUksRUFBRSxDQUFDO2dCQUNsQixTQUFTO1lBQ1gsQ0FBQztZQUNELEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEMsQ0FBQztRQUNELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUVELE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIHJlZjogaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2Jsb2IvdjIuMTUwLjAvcGFja2FnZXMvYXdzLWNkay1saWIvY29yZS9saWIvdXRpbC50c1xuXG4vKipcbiAqIFJldHVybnMgYSBjb3B5IG9mIGBvYmpgIHdpdGhvdXQgYHVuZGVmaW5lZGAgKG9yIGBudWxsYCkgdmFsdWVzIGluIG1hcHMgb3IgYXJyYXlzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZmlsdGVyVW5kZWZpbmVkKG9iajogYW55KTogYW55IHtcbiAgaWYgKEFycmF5LmlzQXJyYXkob2JqKSkge1xuICAgIHJldHVybiBvYmouZmlsdGVyKCh4KSA9PiB4ICE9IG51bGwpLm1hcCgoeCkgPT4gZmlsdGVyVW5kZWZpbmVkKHgpKTtcbiAgfVxuXG4gIGlmICh0eXBlb2Ygb2JqID09PSBcIm9iamVjdFwiKSB7XG4gICAgY29uc3QgcmV0OiBhbnkgPSB7fTtcbiAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyhvYmopKSB7XG4gICAgICBpZiAodmFsdWUgPT0gbnVsbCkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cbiAgICAgIHJldFtrZXldID0gZmlsdGVyVW5kZWZpbmVkKHZhbHVlKTtcbiAgICB9XG4gICAgcmV0dXJuIHJldDtcbiAgfVxuXG4gIHJldHVybiBvYmo7XG59XG4iXX0=
@@ -1,4 +1,4 @@
1
- import { TerraformElement, TerraformMetaArguments, IAspect } from "cdktf";
1
+ import { TerraformResource, TerraformElement, TerraformMetaArguments, IAspect } from "cdktf";
2
2
  import { Construct, IConstruct } from "constructs";
3
3
  export interface TerraConstructProps extends TerraformMetaArguments {
4
4
  /**
@@ -28,6 +28,15 @@ export interface ITerraConstruct extends IConstruct {
28
28
  readonly gridUUID: string;
29
29
  readonly outputs: Record<string, any>;
30
30
  }
31
+ export type TaggableConstruct = TerraformResource & {
32
+ tags?: {
33
+ [key: string]: string;
34
+ };
35
+ tagsInput?: {
36
+ [key: string]: string;
37
+ };
38
+ };
39
+ export declare function isTaggableTerraformResource(x: IConstruct): x is TaggableConstruct;
31
40
  export declare class GridTags implements IAspect {
32
41
  private tagsToAdd;
33
42
  constructor(tagsToAdd: Record<string, string>);
@@ -2,10 +2,12 @@
2
2
  var _a, _b;
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.TerraConstructBase = exports.GridTags = void 0;
5
+ exports.isTaggableTerraformResource = isTaggableTerraformResource;
5
6
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
7
  const cdktf_1 = require("cdktf");
7
8
  const stack_base_1 = require("./stack-base");
8
- function isTaggableConstruct(x) {
9
+ // TODO: this is aws specific, should be moved to aws module
10
+ function isTaggableTerraformResource(x) {
9
11
  return (cdktf_1.TerraformResource.isTerraformResource(x) && "tags" in x && "tagsInput" in x);
10
12
  }
11
13
  const GRID_TAG_PREFIX = "grid";
@@ -15,16 +17,17 @@ class GridTags {
15
17
  this.tagsToAdd = tagsToAdd;
16
18
  }
17
19
  visit(node) {
18
- if (isTaggableConstruct(node)) {
20
+ if (isTaggableTerraformResource(node)) {
19
21
  // https://developer.hashicorp.com/terraform/cdktf/concepts/aspects
20
22
  const currentTags = node.tagsInput || {};
23
+ // TODO: Bug - tagsToAdd are overwritten by currenTags
21
24
  node.tags = { ...this.tagsToAdd, ...currentTags };
22
25
  }
23
26
  }
24
27
  }
25
28
  exports.GridTags = GridTags;
26
29
  _a = JSII_RTTI_SYMBOL_1;
27
- GridTags[_a] = { fqn: "terraconstructs.GridTags", version: "0.0.10" };
30
+ GridTags[_a] = { fqn: "terraconstructs.GridTags", version: "0.0.12" };
28
31
  /**
29
32
  * Base class for all TerraConstructs
30
33
  *
@@ -73,7 +76,7 @@ class TerraConstructBase extends cdktf_1.TerraformElement {
73
76
  }
74
77
  }
75
78
  // force usage of node.addDependency instead of passing TerraConstructs via dependsOn
76
- // Refering a TerraConstruct by fqn always triggers an error?
79
+ // Referring a TerraConstruct by fqn always triggers an error?
77
80
  get fqn() {
78
81
  // try {
79
82
  // return super.fqn;
@@ -85,5 +88,5 @@ class TerraConstructBase extends cdktf_1.TerraformElement {
85
88
  }
86
89
  exports.TerraConstructBase = TerraConstructBase;
87
90
  _b = JSII_RTTI_SYMBOL_1;
88
- TerraConstructBase[_b] = { fqn: "terraconstructs.TerraConstructBase", version: "0.0.10" };
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RydWN0LWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY29uc3RydWN0LWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxpQ0FRZTtBQUVmLDZDQUF5QztBQXVDekMsU0FBUyxtQkFBbUIsQ0FBQyxDQUFhO0lBQ3hDLE9BQU8sQ0FDTCx5QkFBaUIsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsSUFBSSxNQUFNLElBQUksQ0FBQyxJQUFJLFdBQVcsSUFBSSxDQUFDLENBQzVFLENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxlQUFlLEdBQUcsTUFBTSxDQUFDO0FBRS9CLGdEQUFnRDtBQUNoRCxNQUFhLFFBQVE7SUFDbkIsWUFBb0IsU0FBaUM7UUFBakMsY0FBUyxHQUFULFNBQVMsQ0FBd0I7SUFBRyxDQUFDO0lBQ3pELEtBQUssQ0FBQyxJQUFnQjtRQUNwQixJQUFJLG1CQUFtQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDOUIsbUVBQW1FO1lBQ25FLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDO1lBQ3pDLElBQUksQ0FBQyxJQUFJLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsR0FBRyxXQUFXLEVBQUUsQ0FBQztRQUNwRCxDQUFDO0lBQ0gsQ0FBQzs7QUFSSCw0QkFTQzs7O0FBRUQ7Ozs7R0FJRztBQUNILE1BQXNCLGtCQUNwQixTQUFRLHdCQUFnQjtJQUd4Qjs7T0FFRztJQUNJLE1BQU0sQ0FBQyxlQUFlLENBQUMsU0FBcUI7UUFDakQsT0FBTyxTQUFTLENBQUMsSUFBSSxDQUFDLFlBQVk7WUFDaEMsQ0FBQyxDQUFDLHlCQUFpQixDQUFDLG1CQUFtQixDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDO1lBQ3BFLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDWixDQUFDO0lBWUQ7O09BRUc7SUFDSCxJQUFXLFFBQVE7UUFDakIsT0FBTyxzQkFBUyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQztJQUNuRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFXLGVBQWU7UUFDeEIsT0FBTyxzQkFBUyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDLGVBQWUsQ0FBQztJQUMxRCxDQUFDO0lBT0QsWUFDRSxLQUFnQixFQUNDLFdBQW1CLEVBQ3BDLFFBQTZCLEVBQUU7UUFFL0IsS0FBSyxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQztRQUhULGdCQUFXLEdBQVgsV0FBVyxDQUFRO1FBSXBDLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDLFVBQVUsSUFBSSxHQUFHLFdBQVcsU0FBUyxDQUFDO1FBQzlELElBQUksQ0FBQyxZQUFZO1lBQ2YsS0FBSyxDQUFDLFlBQVksSUFBSSxHQUFHLElBQUksQ0FBQyxlQUFlLElBQUksV0FBVyxFQUFFLENBQUM7UUFFakUsZUFBTyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxrREFBa0Q7YUFDaEUsR0FBRyxDQUNGLElBQUksUUFBUSxDQUFDO1lBQ1gsQ0FBQyxHQUFHLGVBQWUsa0JBQWtCLENBQUMsRUFBRSxJQUFJLENBQUMsZUFBZTtZQUM1RCxDQUFDLEdBQUcsZUFBZSxPQUFPLENBQUMsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUMxQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFlBQVk7U0FDeEIsQ0FBQyxDQUNILENBQUM7UUFDSixNQUFNLGVBQWUsR0FBRyxLQUFLLENBQUMsZUFBZSxJQUFJLEtBQUssQ0FBQztRQUN2RCxJQUFJLGVBQWUsRUFBRSxDQUFDO1lBQ3BCLElBQUksdUJBQWUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRTtnQkFDMUMsUUFBUSxFQUFFLElBQUk7Z0JBQ2QsV0FBVyxFQUFFLGVBQWUsSUFBSSxDQUFDLFlBQVksRUFBRTtnQkFDL0MsS0FBSyxFQUFFLFlBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLEVBQUUsQ0FBQzthQUM5RCxDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQztJQUVELHFGQUFxRjtJQUNyRiw2REFBNkQ7SUFDN0QsSUFBVyxHQUFHO1FBQ1osUUFBUTtRQUNSLHNCQUFzQjtRQUN0QixnQkFBZ0I7UUFDaEIseUVBQXlFO1FBQ3pFLE1BQU0sSUFBSSxLQUFLLENBQ2IsMEVBQTBFLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FDdEgsQ0FBQztRQUNGLElBQUk7SUFDTixDQUFDOztBQWpGSCxnREFrRkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBMYXp5LFxuICBUZXJyYWZvcm1SZXNvdXJjZSxcbiAgVGVycmFmb3JtRWxlbWVudCxcbiAgVGVycmFmb3JtT3V0cHV0LFxuICBUZXJyYWZvcm1NZXRhQXJndW1lbnRzLFxuICBBc3BlY3RzLFxuICBJQXNwZWN0LFxufSBmcm9tIFwiY2RrdGZcIjtcbmltcG9ydCB7IENvbnN0cnVjdCwgSUNvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBTdGFja0Jhc2UgfSBmcm9tIFwiLi9zdGFjay1iYXNlXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGVycmFDb25zdHJ1Y3RQcm9wcyBleHRlbmRzIFRlcnJhZm9ybU1ldGFBcmd1bWVudHMge1xuICAvKipcbiAgICogVGhlIGZyaWVuZGx5IG5hbWUgZm9yIFRlcnJhQ29uc3RydWN0IHJlc291cmNlc1xuICAgKlxuICAgKiBAZGVmYXVsdCAtIGBlbnZpcm9ubWVudE5hbWUtaWRgXG4gICAqL1xuICByZWFkb25seSBmcmllbmRseU5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gcmVnaXN0ZXIgVGVycmFmb3JtIG91dHB1dHMgZm9yIHRoaXMgVGVycmFDb25zdHJ1Y3RcbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHJlZ2lzdGVyT3V0cHV0cz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIG92ZXJyaWRlIGZvciB0aGUgb3V0cHV0cyBuYW1lXG4gICAqXG4gICAqIEBkZWZhdWx0IGlkXG4gICAqL1xuICByZWFkb25seSBvdXRwdXROYW1lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElUZXJyYUNvbnN0cnVjdCBleHRlbmRzIElDb25zdHJ1Y3Qge1xuICAvKipcbiAgICogRW52aXJvbm1lbnQgTmFtZSBwYXNzZWQgaW4gZnJvbSB0aGUgQ0xJXG4gICAqL1xuICByZWFkb25seSBlbnZpcm9ubWVudE5hbWU6IHN0cmluZztcbiAgcmVhZG9ubHkgZ3JpZFVVSUQ6IHN0cmluZztcbiAgcmVhZG9ubHkgb3V0cHV0czogUmVjb3JkPHN0cmluZywgYW55Pjtcbn1cblxudHlwZSBUYWdnYWJsZUNvbnN0cnVjdCA9IElDb25zdHJ1Y3QgJiB7XG4gIHRhZ3M/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xuICB0YWdzSW5wdXQ/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xufTtcblxuZnVuY3Rpb24gaXNUYWdnYWJsZUNvbnN0cnVjdCh4OiBJQ29uc3RydWN0KTogeCBpcyBUYWdnYWJsZUNvbnN0cnVjdCB7XG4gIHJldHVybiAoXG4gICAgVGVycmFmb3JtUmVzb3VyY2UuaXNUZXJyYWZvcm1SZXNvdXJjZSh4KSAmJiBcInRhZ3NcIiBpbiB4ICYmIFwidGFnc0lucHV0XCIgaW4geFxuICApO1xufVxuXG5jb25zdCBHUklEX1RBR19QUkVGSVggPSBcImdyaWRcIjtcblxuLy8gQWRkIEdyaWQgVGFncyB0byBhbGwgVGVycmFDb25zdHJ1Y3QgcmVzb3VyY2VzXG5leHBvcnQgY2xhc3MgR3JpZFRhZ3MgaW1wbGVtZW50cyBJQXNwZWN0IHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSB0YWdzVG9BZGQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4pIHt9XG4gIHZpc2l0KG5vZGU6IElDb25zdHJ1Y3QpIHtcbiAgICBpZiAoaXNUYWdnYWJsZUNvbnN0cnVjdChub2RlKSkge1xuICAgICAgLy8gaHR0cHM6Ly9kZXZlbG9wZXIuaGFzaGljb3JwLmNvbS90ZXJyYWZvcm0vY2RrdGYvY29uY2VwdHMvYXNwZWN0c1xuICAgICAgY29uc3QgY3VycmVudFRhZ3MgPSBub2RlLnRhZ3NJbnB1dCB8fCB7fTtcbiAgICAgIG5vZGUudGFncyA9IHsgLi4udGhpcy50YWdzVG9BZGQsIC4uLmN1cnJlbnRUYWdzIH07XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogQmFzZSBjbGFzcyBmb3IgYWxsIFRlcnJhQ29uc3RydWN0c1xuICpcbiAqIEFsbG93cyBhIFRlcnJhQ29uc3RydWN0IHRvIGxhemlseSByZWdpc3RlciBpdHMgb3V0cHV0cyB3aXRoIGl0cyBwYXJlbnQgU3RhY2tcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFRlcnJhQ29uc3RydWN0QmFzZVxuICBleHRlbmRzIFRlcnJhZm9ybUVsZW1lbnRcbiAgaW1wbGVtZW50cyBJVGVycmFDb25zdHJ1Y3RcbntcbiAgLyoqXG4gICAqIFJldHVybnMgdHJ1ZSBpZiB0aGUgY29uc3RydWN0IHdhcyBjcmVhdGVkIGJ5IENES1RGLCBhbmQgZmFsc2Ugb3RoZXJ3aXNlXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGlzT3duZWRSZXNvdXJjZShjb25zdHJ1Y3Q6IElDb25zdHJ1Y3QpOiBib29sZWFuIHtcbiAgICByZXR1cm4gY29uc3RydWN0Lm5vZGUuZGVmYXVsdENoaWxkXG4gICAgICA/IFRlcnJhZm9ybVJlc291cmNlLmlzVGVycmFmb3JtUmVzb3VyY2UoY29uc3RydWN0Lm5vZGUuZGVmYXVsdENoaWxkKVxuICAgICAgOiBmYWxzZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSB1bmRlciB3aGljaCB0aGUgb3V0cHV0cyBhcmUgcmVnaXN0ZXJlZCBpbiB0aGUgcGFyZW50IFNjb3BlXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgb3V0cHV0TmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUZXJyYUNvbnN0cnVjdCBmcmllbmRseSBuYW1lXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZnJpZW5kbHlOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRlcnJhQ29uc3RydWN0IHVuaXF1ZSBncmlkIGlkZW50aWZpZXJcbiAgICovXG4gIHB1YmxpYyBnZXQgZ3JpZFVVSUQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gU3RhY2tCYXNlLm9mVGVycmFDb25zdHJ1Y3QodGhpcykuZ3JpZFVVSUQ7XG4gIH1cblxuICAvKipcbiAgICogRW52aXJvbm1lbnQgTmFtZSBwYXNzZWQgaW4gZnJvbSB0aGUgQ0xJXG4gICAqL1xuICBwdWJsaWMgZ2V0IGVudmlyb25tZW50TmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiBTdGFja0Jhc2Uub2ZUZXJyYUNvbnN0cnVjdCh0aGlzKS5lbnZpcm9ubWVudE5hbWU7XG4gIH1cblxuICAvKipcbiAgICogT3V0cHV0cyB0byByZWdpc3RlciB3aXRoIHRoZSBwYXJlbnQgU2NvcGUgb3IgdW5kZWZpbmVkIGlmIHRoZXJlIGFyZSBubyBvdXRwdXRzXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgZ2V0IG91dHB1dHMoKTogUmVjb3JkPHN0cmluZywgYW55PjsgLy8gVE9ETzogc2hvdWxkIGJlIGFsbG93ZWQgdG8gYmUgdW5kZWZpbmVkP1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBDb25zdHJ1Y3QsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb25zdHJ1Y3RJZDogc3RyaW5nLFxuICAgIHByb3BzOiBUZXJyYUNvbnN0cnVjdFByb3BzID0ge30sXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBjb25zdHJ1Y3RJZCk7XG4gICAgdGhpcy5vdXRwdXROYW1lID0gcHJvcHMub3V0cHV0TmFtZSB8fCBgJHtjb25zdHJ1Y3RJZH1PdXRwdXRzYDtcbiAgICB0aGlzLmZyaWVuZGx5TmFtZSA9XG4gICAgICBwcm9wcy5mcmllbmRseU5hbWUgfHwgYCR7dGhpcy5lbnZpcm9ubWVudE5hbWV9LSR7Y29uc3RydWN0SWR9YDtcblxuICAgIEFzcGVjdHMub2YodGhpcykgLy8gQWRkIEdyaWQgdGFncyB0byBldmVyeSByZXNvdXJjZSBkZWZpbmVkIHdpdGhpbi5cbiAgICAgIC5hZGQoXG4gICAgICAgIG5ldyBHcmlkVGFncyh7XG4gICAgICAgICAgW2Ake0dSSURfVEFHX1BSRUZJWH06RW52aXJvbm1lbnROYW1lYF06IHRoaXMuZW52aXJvbm1lbnROYW1lLFxuICAgICAgICAgIFtgJHtHUklEX1RBR19QUkVGSVh9OlVVSURgXTogdGhpcy5ncmlkVVVJRCxcbiAgICAgICAgICBOYW1lOiB0aGlzLmZyaWVuZGx5TmFtZSxcbiAgICAgICAgfSksXG4gICAgICApO1xuICAgIGNvbnN0IHJlZ2lzdGVyT3V0cHV0cyA9IHByb3BzLnJlZ2lzdGVyT3V0cHV0cyB8fCBmYWxzZTtcbiAgICBpZiAocmVnaXN0ZXJPdXRwdXRzKSB7XG4gICAgICBuZXcgVGVycmFmb3JtT3V0cHV0KHNjb3BlLCB0aGlzLm91dHB1dE5hbWUsIHtcbiAgICAgICAgc3RhdGljSWQ6IHRydWUsXG4gICAgICAgIGRlc2NyaXB0aW9uOiBgT3V0cHV0cyBmb3IgJHt0aGlzLmZyaWVuZGx5TmFtZX1gLFxuICAgICAgICB2YWx1ZTogTGF6eS5hbnlWYWx1ZSh7IHByb2R1Y2U6ICgpID0+IHRoaXMub3V0cHV0cyB8fCBudWxsIH0pLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLy8gZm9yY2UgdXNhZ2Ugb2Ygbm9kZS5hZGREZXBlbmRlbmN5IGluc3RlYWQgb2YgcGFzc2luZyBUZXJyYUNvbnN0cnVjdHMgdmlhIGRlcGVuZHNPblxuICAvLyBSZWZlcmluZyBhIFRlcnJhQ29uc3RydWN0IGJ5IGZxbiBhbHdheXMgdHJpZ2dlcnMgYW4gZXJyb3I/XG4gIHB1YmxpYyBnZXQgZnFuKCk6IHN0cmluZyB7XG4gICAgLy8gdHJ5IHtcbiAgICAvLyAgIHJldHVybiBzdXBlci5mcW47XG4gICAgLy8gfSBjYXRjaCAoZSkge1xuICAgIC8vIHJlZjogaHR0cHM6Ly9naXRodWIuY29tL2F3cy9jb25zdHJ1Y3RzL2Jsb2IvMTAueC9zcmMvY29uc3RydWN0LnRzI0wzNDVcbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICBgVXNlIENvbnN0cnVjdCBub2RlLmFkZERlcGVuZGVuY3kgaW5zdGVhZCBvZiBwYXNzaW5nIFRlcnJhQ29uc3RydWN0IGZxbiAke3RoaXMuY29uc3RydWN0b3IubmFtZX0gJHt0aGlzLmNvbnN0cnVjdElkfWAsXG4gICAgKTtcbiAgICAvLyB9XG4gIH1cbn1cbiJdfQ==
91
+ TerraConstructBase[_b] = { fqn: "terraconstructs.TerraConstructBase", version: "0.0.12" };
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RydWN0LWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY29uc3RydWN0LWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQW1EQSxrRUFNQzs7QUF6REQsaUNBUWU7QUFFZiw2Q0FBeUM7QUF3Q3pDLDREQUE0RDtBQUM1RCxTQUFnQiwyQkFBMkIsQ0FDekMsQ0FBYTtJQUViLE9BQU8sQ0FDTCx5QkFBaUIsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsSUFBSSxNQUFNLElBQUksQ0FBQyxJQUFJLFdBQVcsSUFBSSxDQUFDLENBQzVFLENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxlQUFlLEdBQUcsTUFBTSxDQUFDO0FBRS9CLGdEQUFnRDtBQUNoRCxNQUFhLFFBQVE7SUFDbkIsWUFBb0IsU0FBaUM7UUFBakMsY0FBUyxHQUFULFNBQVMsQ0FBd0I7SUFBRyxDQUFDO0lBQ3pELEtBQUssQ0FBQyxJQUFnQjtRQUNwQixJQUFJLDJCQUEyQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDdEMsbUVBQW1FO1lBQ25FLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDO1lBQ3pDLHNEQUFzRDtZQUN0RCxJQUFJLENBQUMsSUFBSSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLEdBQUcsV0FBVyxFQUFFLENBQUM7UUFDcEQsQ0FBQztJQUNILENBQUM7O0FBVEgsNEJBVUM7OztBQUVEOzs7O0dBSUc7QUFDSCxNQUFzQixrQkFDcEIsU0FBUSx3QkFBZ0I7SUFHeEI7O09BRUc7SUFDSSxNQUFNLENBQUMsZUFBZSxDQUFDLFNBQXFCO1FBQ2pELE9BQU8sU0FBUyxDQUFDLElBQUksQ0FBQyxZQUFZO1lBQ2hDLENBQUMsQ0FBQyx5QkFBaUIsQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQztZQUNwRSxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ1osQ0FBQztJQVlEOztPQUVHO0lBQ0gsSUFBVyxRQUFRO1FBQ2pCLE9BQU8sc0JBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUM7SUFDbkQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBVyxlQUFlO1FBQ3hCLE9BQU8sc0JBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxlQUFlLENBQUM7SUFDMUQsQ0FBQztJQU9ELFlBQ0UsS0FBZ0IsRUFDQyxXQUFtQixFQUNwQyxRQUE2QixFQUFFO1FBRS9CLEtBQUssQ0FBQyxLQUFLLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFIVCxnQkFBVyxHQUFYLFdBQVcsQ0FBUTtRQUlwQyxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxVQUFVLElBQUksR0FBRyxXQUFXLFNBQVMsQ0FBQztRQUM5RCxJQUFJLENBQUMsWUFBWTtZQUNmLEtBQUssQ0FBQyxZQUFZLElBQUksR0FBRyxJQUFJLENBQUMsZUFBZSxJQUFJLFdBQVcsRUFBRSxDQUFDO1FBRWpFLGVBQU8sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsa0RBQWtEO2FBQ2hFLEdBQUcsQ0FDRixJQUFJLFFBQVEsQ0FBQztZQUNYLENBQUMsR0FBRyxlQUFlLGtCQUFrQixDQUFDLEVBQUUsSUFBSSxDQUFDLGVBQWU7WUFDNUQsQ0FBQyxHQUFHLGVBQWUsT0FBTyxDQUFDLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDMUMsSUFBSSxFQUFFLElBQUksQ0FBQyxZQUFZO1NBQ3hCLENBQUMsQ0FDSCxDQUFDO1FBQ0osTUFBTSxlQUFlLEdBQUcsS0FBSyxDQUFDLGVBQWUsSUFBSSxLQUFLLENBQUM7UUFDdkQsSUFBSSxlQUFlLEVBQUUsQ0FBQztZQUNwQixJQUFJLHVCQUFlLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUU7Z0JBQzFDLFFBQVEsRUFBRSxJQUFJO2dCQUNkLFdBQVcsRUFBRSxlQUFlLElBQUksQ0FBQyxZQUFZLEVBQUU7Z0JBQy9DLEtBQUssRUFBRSxZQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLElBQUksSUFBSSxFQUFFLENBQUM7YUFDOUQsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7SUFFRCxxRkFBcUY7SUFDckYsOERBQThEO0lBQzlELElBQVcsR0FBRztRQUNaLFFBQVE7UUFDUixzQkFBc0I7UUFDdEIsZ0JBQWdCO1FBQ2hCLHlFQUF5RTtRQUN6RSxNQUFNLElBQUksS0FBSyxDQUNiLDBFQUEwRSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQ3RILENBQUM7UUFDRixJQUFJO0lBQ04sQ0FBQzs7QUFqRkgsZ0RBa0ZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgTGF6eSxcbiAgVGVycmFmb3JtUmVzb3VyY2UsXG4gIFRlcnJhZm9ybUVsZW1lbnQsXG4gIFRlcnJhZm9ybU91dHB1dCxcbiAgVGVycmFmb3JtTWV0YUFyZ3VtZW50cyxcbiAgQXNwZWN0cyxcbiAgSUFzcGVjdCxcbn0gZnJvbSBcImNka3RmXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QsIElDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgU3RhY2tCYXNlIH0gZnJvbSBcIi4vc3RhY2stYmFzZVwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIFRlcnJhQ29uc3RydWN0UHJvcHMgZXh0ZW5kcyBUZXJyYWZvcm1NZXRhQXJndW1lbnRzIHtcbiAgLyoqXG4gICAqIFRoZSBmcmllbmRseSBuYW1lIGZvciBUZXJyYUNvbnN0cnVjdCByZXNvdXJjZXNcbiAgICpcbiAgICogQGRlZmF1bHQgLSBgZW52aXJvbm1lbnROYW1lLWlkYFxuICAgKi9cbiAgcmVhZG9ubHkgZnJpZW5kbHlOYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIHJlZ2lzdGVyIFRlcnJhZm9ybSBvdXRwdXRzIGZvciB0aGlzIFRlcnJhQ29uc3RydWN0XG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSByZWdpc3Rlck91dHB1dHM/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBvdmVycmlkZSBmb3IgdGhlIG91dHB1dHMgbmFtZVxuICAgKlxuICAgKiBAZGVmYXVsdCBpZFxuICAgKi9cbiAgcmVhZG9ubHkgb3V0cHV0TmFtZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJVGVycmFDb25zdHJ1Y3QgZXh0ZW5kcyBJQ29uc3RydWN0IHtcbiAgLyoqXG4gICAqIEVudmlyb25tZW50IE5hbWUgcGFzc2VkIGluIGZyb20gdGhlIENMSVxuICAgKi9cbiAgcmVhZG9ubHkgZW52aXJvbm1lbnROYW1lOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGdyaWRVVUlEOiBzdHJpbmc7XG4gIHJlYWRvbmx5IG91dHB1dHM6IFJlY29yZDxzdHJpbmcsIGFueT47XG59XG5cbi8vIFRPRE86IHRoaXMgaXMgYXdzIHNwZWNpZmljLCBzaG91bGQgYmUgbW92ZWQgdG8gYXdzIG1vZHVsZVxuZXhwb3J0IHR5cGUgVGFnZ2FibGVDb25zdHJ1Y3QgPSBUZXJyYWZvcm1SZXNvdXJjZSAmIHtcbiAgdGFncz86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG4gIHRhZ3NJbnB1dD86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG59O1xuXG4vLyBUT0RPOiB0aGlzIGlzIGF3cyBzcGVjaWZpYywgc2hvdWxkIGJlIG1vdmVkIHRvIGF3cyBtb2R1bGVcbmV4cG9ydCBmdW5jdGlvbiBpc1RhZ2dhYmxlVGVycmFmb3JtUmVzb3VyY2UoXG4gIHg6IElDb25zdHJ1Y3QsXG4pOiB4IGlzIFRhZ2dhYmxlQ29uc3RydWN0IHtcbiAgcmV0dXJuIChcbiAgICBUZXJyYWZvcm1SZXNvdXJjZS5pc1RlcnJhZm9ybVJlc291cmNlKHgpICYmIFwidGFnc1wiIGluIHggJiYgXCJ0YWdzSW5wdXRcIiBpbiB4XG4gICk7XG59XG5cbmNvbnN0IEdSSURfVEFHX1BSRUZJWCA9IFwiZ3JpZFwiO1xuXG4vLyBBZGQgR3JpZCBUYWdzIHRvIGFsbCBUZXJyYUNvbnN0cnVjdCByZXNvdXJjZXNcbmV4cG9ydCBjbGFzcyBHcmlkVGFncyBpbXBsZW1lbnRzIElBc3BlY3Qge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRhZ3NUb0FkZDogUmVjb3JkPHN0cmluZywgc3RyaW5nPikge31cbiAgdmlzaXQobm9kZTogSUNvbnN0cnVjdCkge1xuICAgIGlmIChpc1RhZ2dhYmxlVGVycmFmb3JtUmVzb3VyY2Uobm9kZSkpIHtcbiAgICAgIC8vIGh0dHBzOi8vZGV2ZWxvcGVyLmhhc2hpY29ycC5jb20vdGVycmFmb3JtL2Nka3RmL2NvbmNlcHRzL2FzcGVjdHNcbiAgICAgIGNvbnN0IGN1cnJlbnRUYWdzID0gbm9kZS50YWdzSW5wdXQgfHwge307XG4gICAgICAvLyBUT0RPOiBCdWcgLSB0YWdzVG9BZGQgYXJlIG92ZXJ3cml0dGVuIGJ5IGN1cnJlblRhZ3NcbiAgICAgIG5vZGUudGFncyA9IHsgLi4udGhpcy50YWdzVG9BZGQsIC4uLmN1cnJlbnRUYWdzIH07XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogQmFzZSBjbGFzcyBmb3IgYWxsIFRlcnJhQ29uc3RydWN0c1xuICpcbiAqIEFsbG93cyBhIFRlcnJhQ29uc3RydWN0IHRvIGxhemlseSByZWdpc3RlciBpdHMgb3V0cHV0cyB3aXRoIGl0cyBwYXJlbnQgU3RhY2tcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFRlcnJhQ29uc3RydWN0QmFzZVxuICBleHRlbmRzIFRlcnJhZm9ybUVsZW1lbnRcbiAgaW1wbGVtZW50cyBJVGVycmFDb25zdHJ1Y3RcbntcbiAgLyoqXG4gICAqIFJldHVybnMgdHJ1ZSBpZiB0aGUgY29uc3RydWN0IHdhcyBjcmVhdGVkIGJ5IENES1RGLCBhbmQgZmFsc2Ugb3RoZXJ3aXNlXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGlzT3duZWRSZXNvdXJjZShjb25zdHJ1Y3Q6IElDb25zdHJ1Y3QpOiBib29sZWFuIHtcbiAgICByZXR1cm4gY29uc3RydWN0Lm5vZGUuZGVmYXVsdENoaWxkXG4gICAgICA/IFRlcnJhZm9ybVJlc291cmNlLmlzVGVycmFmb3JtUmVzb3VyY2UoY29uc3RydWN0Lm5vZGUuZGVmYXVsdENoaWxkKVxuICAgICAgOiBmYWxzZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSB1bmRlciB3aGljaCB0aGUgb3V0cHV0cyBhcmUgcmVnaXN0ZXJlZCBpbiB0aGUgcGFyZW50IFNjb3BlXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgb3V0cHV0TmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUZXJyYUNvbnN0cnVjdCBmcmllbmRseSBuYW1lXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZnJpZW5kbHlOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRlcnJhQ29uc3RydWN0IHVuaXF1ZSBncmlkIGlkZW50aWZpZXJcbiAgICovXG4gIHB1YmxpYyBnZXQgZ3JpZFVVSUQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gU3RhY2tCYXNlLm9mVGVycmFDb25zdHJ1Y3QodGhpcykuZ3JpZFVVSUQ7XG4gIH1cblxuICAvKipcbiAgICogRW52aXJvbm1lbnQgTmFtZSBwYXNzZWQgaW4gZnJvbSB0aGUgQ0xJXG4gICAqL1xuICBwdWJsaWMgZ2V0IGVudmlyb25tZW50TmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiBTdGFja0Jhc2Uub2ZUZXJyYUNvbnN0cnVjdCh0aGlzKS5lbnZpcm9ubWVudE5hbWU7XG4gIH1cblxuICAvKipcbiAgICogT3V0cHV0cyB0byByZWdpc3RlciB3aXRoIHRoZSBwYXJlbnQgU2NvcGUgb3IgdW5kZWZpbmVkIGlmIHRoZXJlIGFyZSBubyBvdXRwdXRzXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgZ2V0IG91dHB1dHMoKTogUmVjb3JkPHN0cmluZywgYW55PjsgLy8gVE9ETzogc2hvdWxkIGJlIGFsbG93ZWQgdG8gYmUgdW5kZWZpbmVkP1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBDb25zdHJ1Y3QsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb25zdHJ1Y3RJZDogc3RyaW5nLFxuICAgIHByb3BzOiBUZXJyYUNvbnN0cnVjdFByb3BzID0ge30sXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBjb25zdHJ1Y3RJZCk7XG4gICAgdGhpcy5vdXRwdXROYW1lID0gcHJvcHMub3V0cHV0TmFtZSB8fCBgJHtjb25zdHJ1Y3RJZH1PdXRwdXRzYDtcbiAgICB0aGlzLmZyaWVuZGx5TmFtZSA9XG4gICAgICBwcm9wcy5mcmllbmRseU5hbWUgfHwgYCR7dGhpcy5lbnZpcm9ubWVudE5hbWV9LSR7Y29uc3RydWN0SWR9YDtcblxuICAgIEFzcGVjdHMub2YodGhpcykgLy8gQWRkIEdyaWQgdGFncyB0byBldmVyeSByZXNvdXJjZSBkZWZpbmVkIHdpdGhpbi5cbiAgICAgIC5hZGQoXG4gICAgICAgIG5ldyBHcmlkVGFncyh7XG4gICAgICAgICAgW2Ake0dSSURfVEFHX1BSRUZJWH06RW52aXJvbm1lbnROYW1lYF06IHRoaXMuZW52aXJvbm1lbnROYW1lLFxuICAgICAgICAgIFtgJHtHUklEX1RBR19QUkVGSVh9OlVVSURgXTogdGhpcy5ncmlkVVVJRCxcbiAgICAgICAgICBOYW1lOiB0aGlzLmZyaWVuZGx5TmFtZSxcbiAgICAgICAgfSksXG4gICAgICApO1xuICAgIGNvbnN0IHJlZ2lzdGVyT3V0cHV0cyA9IHByb3BzLnJlZ2lzdGVyT3V0cHV0cyB8fCBmYWxzZTtcbiAgICBpZiAocmVnaXN0ZXJPdXRwdXRzKSB7XG4gICAgICBuZXcgVGVycmFmb3JtT3V0cHV0KHNjb3BlLCB0aGlzLm91dHB1dE5hbWUsIHtcbiAgICAgICAgc3RhdGljSWQ6IHRydWUsXG4gICAgICAgIGRlc2NyaXB0aW9uOiBgT3V0cHV0cyBmb3IgJHt0aGlzLmZyaWVuZGx5TmFtZX1gLFxuICAgICAgICB2YWx1ZTogTGF6eS5hbnlWYWx1ZSh7IHByb2R1Y2U6ICgpID0+IHRoaXMub3V0cHV0cyB8fCBudWxsIH0pLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLy8gZm9yY2UgdXNhZ2Ugb2Ygbm9kZS5hZGREZXBlbmRlbmN5IGluc3RlYWQgb2YgcGFzc2luZyBUZXJyYUNvbnN0cnVjdHMgdmlhIGRlcGVuZHNPblxuICAvLyBSZWZlcnJpbmcgYSBUZXJyYUNvbnN0cnVjdCBieSBmcW4gYWx3YXlzIHRyaWdnZXJzIGFuIGVycm9yP1xuICBwdWJsaWMgZ2V0IGZxbigpOiBzdHJpbmcge1xuICAgIC8vIHRyeSB7XG4gICAgLy8gICByZXR1cm4gc3VwZXIuZnFuO1xuICAgIC8vIH0gY2F0Y2ggKGUpIHtcbiAgICAvLyByZWY6IGh0dHBzOi8vZ2l0aHViLmNvbS9hd3MvY29uc3RydWN0cy9ibG9iLzEwLngvc3JjL2NvbnN0cnVjdC50cyNMMzQ1XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgYFVzZSBDb25zdHJ1Y3Qgbm9kZS5hZGREZXBlbmRlbmN5IGluc3RlYWQgb2YgcGFzc2luZyBUZXJyYUNvbnN0cnVjdCBmcW4gJHt0aGlzLmNvbnN0cnVjdG9yLm5hbWV9ICR7dGhpcy5jb25zdHJ1Y3RJZH1gLFxuICAgICk7XG4gICAgLy8gfVxuICB9XG59XG4iXX0=
package/lib/duration.js CHANGED
@@ -283,7 +283,7 @@ class Duration {
283
283
  }
284
284
  exports.Duration = Duration;
285
285
  _a = JSII_RTTI_SYMBOL_1;
286
- Duration[_a] = { fqn: "terraconstructs.Duration", version: "0.0.10" };
286
+ Duration[_a] = { fqn: "terraconstructs.Duration", version: "0.0.12" };
287
287
  class TimeUnit {
288
288
  constructor(label, isoLabel, inMillis) {
289
289
  this.label = label;
@@ -0,0 +1,48 @@
1
+ import { Duration } from "./duration";
2
+ /**
3
+ * Represents a date of expiration.
4
+ *
5
+ * The amount can be specified either as a Date object, timestamp, Duration or string.
6
+ */
7
+ export declare class Expiration {
8
+ /**
9
+ * Expire at the specified date
10
+ * @param d date to expire at
11
+ */
12
+ static atDate(d: Date): Expiration;
13
+ /**
14
+ * Expire at the specified timestamp
15
+ * @param t timestamp in unix milliseconds
16
+ */
17
+ static atTimestamp(t: number): Expiration;
18
+ /**
19
+ * Expire once the specified duration has passed since deployment time
20
+ * @param t the duration to wait before expiring
21
+ */
22
+ static after(t: Duration): Expiration;
23
+ /**
24
+ * Expire at specified date, represented as a string
25
+ *
26
+ * @param s the string that represents date to expire at
27
+ */
28
+ static fromString(s: string): Expiration;
29
+ /**
30
+ * Expiration value as a Date object
31
+ */
32
+ readonly date: Date;
33
+ private constructor();
34
+ /**
35
+ * Expiration Value in a formatted Unix Epoch Time in seconds
36
+ */
37
+ toEpoch(): number;
38
+ /**
39
+ * Check if Expiration expires before input
40
+ * @param t the duration to check against
41
+ */
42
+ isBefore(t: Duration): boolean;
43
+ /**
44
+ * Check if Expiration expires after input
45
+ * @param t the duration to check against
46
+ */
47
+ isAfter(t: Duration): boolean;
48
+ }
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ var _a;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.Expiration = void 0;
5
+ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
+ /**
7
+ * Represents a date of expiration.
8
+ *
9
+ * The amount can be specified either as a Date object, timestamp, Duration or string.
10
+ */
11
+ class Expiration {
12
+ /**
13
+ * Expire at the specified date
14
+ * @param d date to expire at
15
+ */
16
+ static atDate(d) {
17
+ return new Expiration(d);
18
+ }
19
+ /**
20
+ * Expire at the specified timestamp
21
+ * @param t timestamp in unix milliseconds
22
+ */
23
+ static atTimestamp(t) {
24
+ return Expiration.atDate(new Date(t));
25
+ }
26
+ /**
27
+ * Expire once the specified duration has passed since deployment time
28
+ * @param t the duration to wait before expiring
29
+ */
30
+ static after(t) {
31
+ return Expiration.atDate(new Date(Date.now() + t.toMilliseconds()));
32
+ }
33
+ /**
34
+ * Expire at specified date, represented as a string
35
+ *
36
+ * @param s the string that represents date to expire at
37
+ */
38
+ static fromString(s) {
39
+ return new Expiration(new Date(s));
40
+ }
41
+ constructor(date) {
42
+ this.date = date;
43
+ }
44
+ /**
45
+ * Expiration Value in a formatted Unix Epoch Time in seconds
46
+ */
47
+ toEpoch() {
48
+ return Math.round(this.date.getTime() / 1000);
49
+ }
50
+ /**
51
+ * Check if Expiration expires before input
52
+ * @param t the duration to check against
53
+ */
54
+ isBefore(t) {
55
+ return this.date < new Date(Date.now() + t.toMilliseconds());
56
+ }
57
+ /**
58
+ * Check if Expiration expires after input
59
+ * @param t the duration to check against
60
+ */
61
+ isAfter(t) {
62
+ return this.date > new Date(Date.now() + t.toMilliseconds());
63
+ }
64
+ }
65
+ exports.Expiration = Expiration;
66
+ _a = JSII_RTTI_SYMBOL_1;
67
+ Expiration[_a] = { fqn: "terraconstructs.Expiration", version: "0.0.12" };
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwaXJhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9leHBpcmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBR0E7Ozs7R0FJRztBQUNILE1BQWEsVUFBVTtJQUNyQjs7O09BR0c7SUFDSSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQU87UUFDMUIsT0FBTyxJQUFJLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFTO1FBQ2pDLE9BQU8sVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRDs7O09BR0c7SUFDSSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQVc7UUFDN0IsT0FBTyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFTO1FBQ2hDLE9BQU8sSUFBSSxVQUFVLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBT0QsWUFBb0IsSUFBVTtRQUM1QixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNuQixDQUFDO0lBRUQ7O09BRUc7SUFDSSxPQUFPO1FBQ1osT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUNEOzs7T0FHRztJQUNJLFFBQVEsQ0FBQyxDQUFXO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVEOzs7T0FHRztJQUNJLE9BQU8sQ0FBQyxDQUFXO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUM7SUFDL0QsQ0FBQzs7QUEvREgsZ0NBZ0VDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2Jsb2IvdjIuMTc1LjEvcGFja2FnZXMvYXdzLWNkay1saWIvY29yZS9saWIvZXhwaXJhdGlvbi50c1xuXG5pbXBvcnQgeyBEdXJhdGlvbiB9IGZyb20gXCIuL2R1cmF0aW9uXCI7XG4vKipcbiAqIFJlcHJlc2VudHMgYSBkYXRlIG9mIGV4cGlyYXRpb24uXG4gKlxuICogVGhlIGFtb3VudCBjYW4gYmUgc3BlY2lmaWVkIGVpdGhlciBhcyBhIERhdGUgb2JqZWN0LCB0aW1lc3RhbXAsIER1cmF0aW9uIG9yIHN0cmluZy5cbiAqL1xuZXhwb3J0IGNsYXNzIEV4cGlyYXRpb24ge1xuICAvKipcbiAgICogRXhwaXJlIGF0IHRoZSBzcGVjaWZpZWQgZGF0ZVxuICAgKiBAcGFyYW0gZCBkYXRlIHRvIGV4cGlyZSBhdFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBhdERhdGUoZDogRGF0ZSkge1xuICAgIHJldHVybiBuZXcgRXhwaXJhdGlvbihkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeHBpcmUgYXQgdGhlIHNwZWNpZmllZCB0aW1lc3RhbXBcbiAgICogQHBhcmFtIHQgdGltZXN0YW1wIGluIHVuaXggbWlsbGlzZWNvbmRzXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGF0VGltZXN0YW1wKHQ6IG51bWJlcikge1xuICAgIHJldHVybiBFeHBpcmF0aW9uLmF0RGF0ZShuZXcgRGF0ZSh0KSk7XG4gIH1cblxuICAvKipcbiAgICogRXhwaXJlIG9uY2UgdGhlIHNwZWNpZmllZCBkdXJhdGlvbiBoYXMgcGFzc2VkIHNpbmNlIGRlcGxveW1lbnQgdGltZVxuICAgKiBAcGFyYW0gdCB0aGUgZHVyYXRpb24gdG8gd2FpdCBiZWZvcmUgZXhwaXJpbmdcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgYWZ0ZXIodDogRHVyYXRpb24pIHtcbiAgICByZXR1cm4gRXhwaXJhdGlvbi5hdERhdGUobmV3IERhdGUoRGF0ZS5ub3coKSArIHQudG9NaWxsaXNlY29uZHMoKSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIEV4cGlyZSBhdCBzcGVjaWZpZWQgZGF0ZSwgcmVwcmVzZW50ZWQgYXMgYSBzdHJpbmdcbiAgICpcbiAgICogQHBhcmFtIHMgdGhlIHN0cmluZyB0aGF0IHJlcHJlc2VudHMgZGF0ZSB0byBleHBpcmUgYXRcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbVN0cmluZyhzOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gbmV3IEV4cGlyYXRpb24obmV3IERhdGUocykpO1xuICB9XG5cbiAgLyoqXG4gICAqIEV4cGlyYXRpb24gdmFsdWUgYXMgYSBEYXRlIG9iamVjdFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGRhdGU6IERhdGU7XG5cbiAgcHJpdmF0ZSBjb25zdHJ1Y3RvcihkYXRlOiBEYXRlKSB7XG4gICAgdGhpcy5kYXRlID0gZGF0ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeHBpcmF0aW9uIFZhbHVlIGluIGEgZm9ybWF0dGVkIFVuaXggRXBvY2ggVGltZSBpbiBzZWNvbmRzXG4gICAqL1xuICBwdWJsaWMgdG9FcG9jaCgpOiBudW1iZXIge1xuICAgIHJldHVybiBNYXRoLnJvdW5kKHRoaXMuZGF0ZS5nZXRUaW1lKCkgLyAxMDAwKTtcbiAgfVxuICAvKipcbiAgICogQ2hlY2sgaWYgRXhwaXJhdGlvbiBleHBpcmVzIGJlZm9yZSBpbnB1dFxuICAgKiBAcGFyYW0gdCB0aGUgZHVyYXRpb24gdG8gY2hlY2sgYWdhaW5zdFxuICAgKi9cbiAgcHVibGljIGlzQmVmb3JlKHQ6IER1cmF0aW9uKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZGF0ZSA8IG5ldyBEYXRlKERhdGUubm93KCkgKyB0LnRvTWlsbGlzZWNvbmRzKCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIEV4cGlyYXRpb24gZXhwaXJlcyBhZnRlciBpbnB1dFxuICAgKiBAcGFyYW0gdCB0aGUgZHVyYXRpb24gdG8gY2hlY2sgYWdhaW5zdFxuICAgKi9cbiAgcHVibGljIGlzQWZ0ZXIodDogRHVyYXRpb24pOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5kYXRlID4gbmV3IERhdGUoRGF0ZS5ub3coKSArIHQudG9NaWxsaXNlY29uZHMoKSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1 @@
1
+ export { md5hash } from "../private/md5";
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ // https://github.com/aws/aws-cdk/blob/v2.175.1/packages/aws-cdk-lib/core/lib/helpers-internal/index.ts
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.md5hash = void 0;
5
+ var md5_1 = require("../private/md5");
6
+ Object.defineProperty(exports, "md5hash", { enumerable: true, get: function () { return md5_1.md5hash; } });
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaGVscGVycy1pbnRlcm5hbC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsdUdBQXVHOzs7QUFFdkcsc0NBQXlDO0FBQWhDLDhGQUFBLE9BQU8sT0FBQSIsInNvdXJjZXNDb250ZW50IjpbIi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hd3MvYXdzLWNkay9ibG9iL3YyLjE3NS4xL3BhY2thZ2VzL2F3cy1jZGstbGliL2NvcmUvbGliL2hlbHBlcnMtaW50ZXJuYWwvaW5kZXgudHNcblxuZXhwb3J0IHsgbWQ1aGFzaCB9IGZyb20gXCIuLi9wcml2YXRlL21kNVwiO1xuIl19
package/lib/index.d.ts CHANGED
@@ -1,5 +1,7 @@
1
1
  export * from "./construct-base";
2
2
  export * from "./stack-base";
3
3
  export * from "./duration";
4
+ export * from "./expiration";
4
5
  export * from "./size";
6
+ export * from "./terra-func";
5
7
  export * as aws from "./aws";
package/lib/index.js CHANGED
@@ -18,7 +18,9 @@ exports.aws = void 0;
18
18
  __exportStar(require("./construct-base"), exports);
19
19
  __exportStar(require("./stack-base"), exports);
20
20
  __exportStar(require("./duration"), exports);
21
+ __exportStar(require("./expiration"), exports);
21
22
  __exportStar(require("./size"), exports);
23
+ __exportStar(require("./terra-func"), exports);
22
24
  // cloud specific exports
23
25
  exports.aws = require("./aws");
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxtREFBaUM7QUFDakMsK0NBQTZCO0FBQzdCLDZDQUEyQjtBQUMzQix5Q0FBdUI7QUFFdkIseUJBQXlCO0FBQ3pCLCtCQUE2QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL2NvbnN0cnVjdC1iYXNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zdGFjay1iYXNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9kdXJhdGlvblwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc2l6ZVwiO1xuXG4vLyBjbG91ZCBzcGVjaWZpYyBleHBvcnRzXG5leHBvcnQgKiBhcyBhd3MgZnJvbSBcIi4vYXdzXCI7XG4iXX0=
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxtREFBaUM7QUFDakMsK0NBQTZCO0FBQzdCLDZDQUEyQjtBQUMzQiwrQ0FBNkI7QUFDN0IseUNBQXVCO0FBQ3ZCLCtDQUE2QjtBQUU3Qix5QkFBeUI7QUFDekIsK0JBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vY29uc3RydWN0LWJhc2VcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3N0YWNrLWJhc2VcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2R1cmF0aW9uXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9leHBpcmF0aW9uXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zaXplXCI7XG5leHBvcnQgKiBmcm9tIFwiLi90ZXJyYS1mdW5jXCI7XG5cbi8vIGNsb3VkIHNwZWNpZmljIGV4cG9ydHNcbmV4cG9ydCAqIGFzIGF3cyBmcm9tIFwiLi9hd3NcIjtcbiJdfQ==
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Return a hash of the given input string, in hex format
3
+ */
4
+ export declare function md5hash(x: string): string;