@gemeentenijmegen/webapp 1.1.10 → 1.1.11

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 (235) hide show
  1. package/.jsii +10 -10
  2. package/assets/webapp/auth/auth.lambda/index.js +47 -66
  3. package/assets/webapp/login/login.lambda/index.js +2 -21
  4. package/assets/webapp/logout/logout.lambda/index.js +2 -2
  5. package/lib/webapp/Criticality.js +1 -1
  6. package/lib/webapp/Webapp.js +1 -1
  7. package/lib/webapp/Webpage.js +1 -1
  8. package/lib/webapp/util/Files.js +1 -1
  9. package/node_modules/@aws-sdk/client-dynamodb/dist-cjs/index.js +63 -0
  10. package/node_modules/@aws-sdk/client-dynamodb/dist-es/models/index.js +1 -0
  11. package/node_modules/@aws-sdk/client-dynamodb/dist-es/models/models_0.js +22 -0
  12. package/node_modules/@aws-sdk/client-dynamodb/dist-es/models/models_1.js +1 -0
  13. package/node_modules/@aws-sdk/client-dynamodb/dist-es/protocols/Aws_json1_0.js +14 -1
  14. package/node_modules/@aws-sdk/client-dynamodb/dist-types/commands/BatchExecuteStatementCommand.d.ts +8 -3
  15. package/node_modules/@aws-sdk/client-dynamodb/dist-types/commands/BatchGetItemCommand.d.ts +14 -7
  16. package/node_modules/@aws-sdk/client-dynamodb/dist-types/commands/BatchWriteItemCommand.d.ts +14 -7
  17. package/node_modules/@aws-sdk/client-dynamodb/dist-types/commands/DeleteItemCommand.d.ts +14 -7
  18. package/node_modules/@aws-sdk/client-dynamodb/dist-types/commands/DescribeContributorInsightsCommand.d.ts +1 -0
  19. package/node_modules/@aws-sdk/client-dynamodb/dist-types/commands/ExecuteStatementCommand.d.ts +14 -7
  20. package/node_modules/@aws-sdk/client-dynamodb/dist-types/commands/ExecuteTransactionCommand.d.ts +14 -7
  21. package/node_modules/@aws-sdk/client-dynamodb/dist-types/commands/GetItemCommand.d.ts +14 -7
  22. package/node_modules/@aws-sdk/client-dynamodb/dist-types/commands/ListContributorInsightsCommand.d.ts +1 -0
  23. package/node_modules/@aws-sdk/client-dynamodb/dist-types/commands/PutItemCommand.d.ts +14 -7
  24. package/node_modules/@aws-sdk/client-dynamodb/dist-types/commands/QueryCommand.d.ts +14 -7
  25. package/node_modules/@aws-sdk/client-dynamodb/dist-types/commands/ScanCommand.d.ts +14 -7
  26. package/node_modules/@aws-sdk/client-dynamodb/dist-types/commands/TransactGetItemsCommand.d.ts +14 -7
  27. package/node_modules/@aws-sdk/client-dynamodb/dist-types/commands/TransactWriteItemsCommand.d.ts +16 -8
  28. package/node_modules/@aws-sdk/client-dynamodb/dist-types/commands/UpdateContributorInsightsCommand.d.ts +2 -0
  29. package/node_modules/@aws-sdk/client-dynamodb/dist-types/commands/UpdateItemCommand.d.ts +14 -7
  30. package/node_modules/@aws-sdk/client-dynamodb/dist-types/models/index.d.ts +1 -0
  31. package/node_modules/@aws-sdk/client-dynamodb/dist-types/models/models_0.d.ts +151 -79
  32. package/node_modules/@aws-sdk/client-dynamodb/dist-types/models/models_1.d.ts +73 -0
  33. package/node_modules/@aws-sdk/client-dynamodb/dist-types/ts3.4/commands/TransactWriteItemsCommand.d.ts +2 -4
  34. package/node_modules/@aws-sdk/client-dynamodb/dist-types/ts3.4/models/index.d.ts +1 -0
  35. package/node_modules/@aws-sdk/client-dynamodb/dist-types/ts3.4/models/models_0.d.ts +24 -6
  36. package/node_modules/@aws-sdk/client-dynamodb/dist-types/ts3.4/models/models_1.d.ts +11 -0
  37. package/node_modules/@aws-sdk/client-dynamodb/package.json +35 -35
  38. package/node_modules/@aws-sdk/client-s3/package.json +50 -50
  39. package/node_modules/@aws-sdk/client-secrets-manager/package.json +33 -33
  40. package/node_modules/@aws-sdk/client-ssm/package.json +34 -34
  41. package/node_modules/@aws-sdk/client-sso/package.json +32 -32
  42. package/node_modules/@aws-sdk/core/dist-cjs/submodules/protocols/index.js +73 -25
  43. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/AwsJson1_0Protocol.js +5 -1
  44. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/AwsJson1_1Protocol.js +5 -1
  45. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/AwsJsonRpcProtocol.js +4 -3
  46. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/AwsRestJsonProtocol.js +5 -2
  47. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/JsonShapeSerializer.js +11 -7
  48. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/jsonReplacer.js +1 -1
  49. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/query/AwsQueryProtocol.js +3 -0
  50. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/query/QueryShapeSerializer.js +6 -2
  51. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/xml/AwsRestXmlProtocol.js +6 -3
  52. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/xml/XmlShapeSerializer.js +11 -7
  53. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/AwsJson1_0Protocol.d.ts +6 -1
  54. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/AwsJson1_1Protocol.d.ts +6 -1
  55. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/AwsJsonRpcProtocol.d.ts +3 -1
  56. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/AwsRestJsonProtocol.d.ts +4 -0
  57. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/query/AwsQueryProtocol.d.ts +4 -0
  58. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/xml/AwsRestXmlProtocol.d.ts +4 -0
  59. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsJson1_0Protocol.d.ts +8 -1
  60. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsJson1_1Protocol.d.ts +8 -1
  61. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsJsonRpcProtocol.d.ts +8 -1
  62. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsRestJsonProtocol.d.ts +1 -0
  63. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/query/AwsQueryProtocol.d.ts +1 -0
  64. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/AwsRestXmlProtocol.d.ts +1 -0
  65. package/node_modules/@aws-sdk/core/package.json +12 -12
  66. package/node_modules/@aws-sdk/credential-provider-env/package.json +5 -5
  67. package/node_modules/@aws-sdk/credential-provider-http/package.json +10 -10
  68. package/node_modules/@aws-sdk/credential-provider-ini/package.json +13 -13
  69. package/node_modules/@aws-sdk/credential-provider-node/package.json +12 -12
  70. package/node_modules/@aws-sdk/credential-provider-process/package.json +6 -6
  71. package/node_modules/@aws-sdk/credential-provider-sso/package.json +8 -8
  72. package/node_modules/@aws-sdk/credential-provider-web-identity/package.json +6 -6
  73. package/node_modules/@aws-sdk/middleware-bucket-endpoint/package.json +5 -5
  74. package/node_modules/@aws-sdk/middleware-endpoint-discovery/package.json +5 -5
  75. package/node_modules/@aws-sdk/middleware-expect-continue/package.json +4 -4
  76. package/node_modules/@aws-sdk/middleware-flexible-checksums/package.json +9 -9
  77. package/node_modules/@aws-sdk/middleware-host-header/package.json +4 -4
  78. package/node_modules/@aws-sdk/middleware-location-constraint/package.json +3 -3
  79. package/node_modules/@aws-sdk/middleware-logger/package.json +3 -3
  80. package/node_modules/@aws-sdk/middleware-recursion-detection/package.json +4 -4
  81. package/node_modules/@aws-sdk/middleware-sdk-s3/package.json +11 -11
  82. package/node_modules/@aws-sdk/middleware-ssec/package.json +3 -3
  83. package/node_modules/@aws-sdk/middleware-user-agent/package.json +7 -7
  84. package/node_modules/@aws-sdk/nested-clients/package.json +32 -32
  85. package/node_modules/@aws-sdk/region-config-resolver/package.json +5 -5
  86. package/node_modules/@aws-sdk/s3-request-presigner/package.json +10 -10
  87. package/node_modules/@aws-sdk/signature-v4-multi-region/package.json +6 -6
  88. package/node_modules/@aws-sdk/token-providers/package.json +10 -8
  89. package/node_modules/@aws-sdk/types/package.json +2 -2
  90. package/node_modules/@aws-sdk/util-endpoints/package.json +5 -5
  91. package/node_modules/@aws-sdk/util-format-url/package.json +4 -4
  92. package/node_modules/@aws-sdk/util-user-agent-browser/package.json +3 -3
  93. package/node_modules/@aws-sdk/util-user-agent-node/package.json +5 -5
  94. package/node_modules/@aws-sdk/xml-builder/package.json +2 -2
  95. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/.jsii +82 -4
  96. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/lib/index.js +1 -1
  97. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/node_modules/@aws-solutions-constructs/core/.jsii +84 -6
  98. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/node_modules/@aws-solutions-constructs/core/lib/bedrock-inference-helper.js +2 -2
  99. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/node_modules/@aws-solutions-constructs/core/lib/cloudfront-distribution-defaults.d.ts +1 -1
  100. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/node_modules/@aws-solutions-constructs/core/lib/cloudfront-distribution-defaults.js +1 -1
  101. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/node_modules/@aws-solutions-constructs/core/lib/cloudfront-distribution-helper.d.ts +1 -1
  102. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/node_modules/@aws-solutions-constructs/core/lib/cloudfront-distribution-helper.js +1 -1
  103. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/node_modules/@aws-solutions-constructs/core/lib/kendra-helper.js +4 -2
  104. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/node_modules/@aws-solutions-constructs/core/lib/waf-helper.js +5 -2
  105. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/node_modules/@aws-solutions-constructs/core/package.json +3 -3
  106. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/node_modules/@aws-solutions-constructs/core/test/TwoLogGroups.json +365 -0
  107. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/node_modules/@aws-solutions-constructs/core/test/bedrock-inference-helper.test.js +2 -6
  108. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/node_modules/@aws-solutions-constructs/core/test/lambda/index.js +1 -1
  109. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/node_modules/@aws-solutions-constructs/core/test/pipes-helper.test.js +2 -2
  110. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/node_modules/@aws-solutions-constructs/core/test/step-function-helper.test.js +1 -1
  111. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/node_modules/@aws-solutions-constructs/core/test/test-helper.d.ts +6 -0
  112. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/node_modules/@aws-solutions-constructs/core/test/test-helper.js +84 -1
  113. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/node_modules/@aws-solutions-constructs/core/test/waf-helper.test.js +35 -1
  114. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/package.json +6 -6
  115. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-add-secondary-index.js +2 -1
  116. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-deployFunctionWithExistingVpc.js +2 -1
  117. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-deployFunctionWithExistingVpc.js.snapshot/cdk.out +1 -1
  118. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-deployFunctionWithExistingVpc.js.snapshot/integ.json +2 -2
  119. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-deployFunctionWithExistingVpc.js.snapshot/lamddb-deployFunctionWithExistingVpc.assets.json +6 -6
  120. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-deployFunctionWithExistingVpc.js.snapshot/lamddb-deployFunctionWithExistingVpc.template.json +1 -136
  121. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-deployFunctionWithExistingVpc.js.snapshot/lamddbdeployFunctionWithExistingVpcIntegDefaultTestDeployAssertEE08E38E.assets.json +2 -2
  122. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-deployFunctionWithExistingVpc.js.snapshot/manifest.json +475 -10
  123. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-deployFunctionWithExistingVpc.js.snapshot/tree.json +1 -1
  124. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-deployFunctionWithVpc.js +2 -1
  125. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-deployFunctionWithVpc.js.snapshot/cdk.out +1 -1
  126. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-deployFunctionWithVpc.js.snapshot/integ.json +2 -2
  127. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-deployFunctionWithVpc.js.snapshot/lamddb-deployFunctionWithVpc.assets.json +6 -6
  128. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-deployFunctionWithVpc.js.snapshot/lamddb-deployFunctionWithVpc.template.json +1 -136
  129. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-deployFunctionWithVpc.js.snapshot/lamddbdeployFunctionWithVpcIntegDefaultTestDeployAssert0AB8275C.assets.json +2 -2
  130. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-deployFunctionWithVpc.js.snapshot/manifest.json +475 -10
  131. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-deployFunctionWithVpc.js.snapshot/tree.json +1 -1
  132. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-no-arguments.js +2 -1
  133. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-point-in-time-recovery.js +2 -1
  134. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-set-billing-mode.js +2 -1
  135. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-use-existing-func.js +2 -1
  136. package/node_modules/@gemeentenijmegen/apiclient/node_modules/@gemeentenijmegen/utils/package.json +8 -8
  137. package/node_modules/@gemeentenijmegen/apiclient/package.json +7 -7
  138. package/node_modules/@gemeentenijmegen/apigateway-http/package.json +4 -4
  139. package/node_modules/@gemeentenijmegen/session/package.json +5 -5
  140. package/node_modules/@gemeentenijmegen/utils/package.json +7 -7
  141. package/node_modules/@smithy/abort-controller/package.json +2 -2
  142. package/node_modules/@smithy/config-resolver/package.json +4 -4
  143. package/node_modules/@smithy/core/dist-cjs/submodules/cbor/index.js +77 -38
  144. package/node_modules/@smithy/core/dist-cjs/submodules/protocols/index.js +88 -85
  145. package/node_modules/@smithy/core/dist-cjs/submodules/schema/index.js +12 -0
  146. package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.js +6 -51
  147. package/node_modules/@smithy/core/dist-es/submodules/cbor/CborCodec.js +77 -41
  148. package/node_modules/@smithy/core/dist-es/submodules/protocols/HttpBindingProtocol.js +95 -0
  149. package/node_modules/@smithy/core/dist-es/submodules/protocols/HttpProtocol.js +7 -95
  150. package/node_modules/@smithy/core/dist-es/submodules/schema/schemas/NormalizedSchema.js +9 -0
  151. package/node_modules/@smithy/core/dist-es/submodules/serde/copyDocumentWithTransform.js +1 -53
  152. package/node_modules/@smithy/core/dist-es/submodules/serde/generateIdempotencyToken.js +2 -0
  153. package/node_modules/@smithy/core/dist-es/submodules/serde/index.js +1 -0
  154. package/node_modules/@smithy/core/dist-types/submodules/cbor/CborCodec.d.ts +5 -0
  155. package/node_modules/@smithy/core/dist-types/submodules/protocols/HttpBindingProtocol.d.ts +9 -1
  156. package/node_modules/@smithy/core/dist-types/submodules/protocols/HttpProtocol.d.ts +3 -1
  157. package/node_modules/@smithy/core/dist-types/submodules/schema/schemas/NormalizedSchema.d.ts +5 -0
  158. package/node_modules/@smithy/core/dist-types/submodules/serde/copyDocumentWithTransform.d.ts +1 -0
  159. package/node_modules/@smithy/core/dist-types/submodules/serde/generateIdempotencyToken.d.ts +2 -0
  160. package/node_modules/@smithy/core/dist-types/submodules/serde/index.d.ts +1 -0
  161. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/cbor/CborCodec.d.ts +5 -0
  162. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/HttpBindingProtocol.d.ts +9 -1
  163. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/HttpProtocol.d.ts +3 -1
  164. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/schema/schemas/NormalizedSchema.d.ts +5 -0
  165. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/serde/copyDocumentWithTransform.d.ts +1 -0
  166. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/serde/generateIdempotencyToken.d.ts +2 -0
  167. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/serde/index.d.ts +1 -0
  168. package/node_modules/@smithy/core/package.json +9 -7
  169. package/node_modules/@smithy/credential-provider-imds/package.json +5 -5
  170. package/node_modules/@smithy/eventstream-codec/package.json +2 -2
  171. package/node_modules/@smithy/eventstream-serde-browser/package.json +3 -3
  172. package/node_modules/@smithy/eventstream-serde-config-resolver/package.json +2 -2
  173. package/node_modules/@smithy/eventstream-serde-node/package.json +3 -3
  174. package/node_modules/@smithy/eventstream-serde-universal/package.json +3 -3
  175. package/node_modules/@smithy/fetch-http-handler/package.json +5 -5
  176. package/node_modules/@smithy/hash-blob-browser/package.json +2 -2
  177. package/node_modules/@smithy/hash-node/package.json +2 -2
  178. package/node_modules/@smithy/hash-stream-node/package.json +2 -2
  179. package/node_modules/@smithy/invalid-dependency/package.json +2 -2
  180. package/node_modules/@smithy/md5-js/package.json +2 -2
  181. package/node_modules/@smithy/middleware-content-length/package.json +3 -3
  182. package/node_modules/@smithy/middleware-endpoint/package.json +8 -8
  183. package/node_modules/@smithy/middleware-retry/package.json +9 -9
  184. package/node_modules/@smithy/middleware-serde/package.json +3 -3
  185. package/node_modules/@smithy/middleware-stack/package.json +2 -2
  186. package/node_modules/@smithy/node-config-provider/package.json +4 -4
  187. package/node_modules/@smithy/node-http-handler/package.json +5 -5
  188. package/node_modules/@smithy/property-provider/package.json +2 -2
  189. package/node_modules/@smithy/protocol-http/package.json +2 -2
  190. package/node_modules/@smithy/querystring-builder/package.json +2 -2
  191. package/node_modules/@smithy/querystring-parser/package.json +2 -2
  192. package/node_modules/@smithy/service-error-classification/package.json +2 -2
  193. package/node_modules/@smithy/shared-ini-file-loader/package.json +2 -2
  194. package/node_modules/@smithy/signature-v4/package.json +4 -4
  195. package/node_modules/@smithy/smithy-client/dist-cjs/index.js +1 -0
  196. package/node_modules/@smithy/smithy-client/package.json +7 -7
  197. package/node_modules/@smithy/types/dist-types/schema/schema.d.ts +1 -0
  198. package/node_modules/@smithy/types/dist-types/ts3.4/schema/schema.d.ts +1 -0
  199. package/node_modules/@smithy/types/package.json +1 -1
  200. package/node_modules/@smithy/url-parser/package.json +3 -3
  201. package/node_modules/@smithy/util-defaults-mode-browser/package.json +4 -4
  202. package/node_modules/@smithy/util-defaults-mode-node/package.json +7 -7
  203. package/node_modules/@smithy/util-endpoints/package.json +3 -3
  204. package/node_modules/@smithy/util-middleware/package.json +2 -2
  205. package/node_modules/@smithy/util-retry/package.json +3 -3
  206. package/node_modules/@smithy/util-stream/package.json +4 -4
  207. package/node_modules/@smithy/util-waiter/package.json +3 -3
  208. package/node_modules/bowser/CHANGELOG.md +1 -1
  209. package/node_modules/bowser/README.md +2 -4
  210. package/node_modules/bowser/bundled.js +1 -1
  211. package/node_modules/bowser/es5.js +1 -1
  212. package/node_modules/bowser/index.d.ts +72 -7
  213. package/node_modules/bowser/package.json +4 -3
  214. package/node_modules/bowser/src/constants.js +3 -0
  215. package/node_modules/bowser/src/parser-browsers.js +15 -0
  216. package/node_modules/bowser/src/parser-platforms.js +17 -1
  217. package/node_modules/bowser/src/parser.js +20 -5
  218. package/node_modules/bowser/src/utils.js +2 -2
  219. package/node_modules/follow-redirects/package.json +1 -1
  220. package/node_modules/oidc-token-hash/README.md +1 -0
  221. package/node_modules/oidc-token-hash/lib/index.js +0 -10
  222. package/node_modules/oidc-token-hash/package.json +1 -1
  223. package/package.json +16 -16
  224. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-add-secondary-index.js.snapshot/asset.a0c6248ec595d3ceec1177aa5ac5b494fdf4c66f1b88aa48086befd44f193d8c/index.js +0 -21
  225. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-deployFunctionWithExistingVpc.js.snapshot/asset.7fa1e366ee8a9ded01fc355f704cff92bfd179574e6f9cfee800a3541df1b200/__entrypoint__.js +0 -1
  226. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-deployFunctionWithExistingVpc.js.snapshot/asset.7fa1e366ee8a9ded01fc355f704cff92bfd179574e6f9cfee800a3541df1b200/index.js +0 -1
  227. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-deployFunctionWithExistingVpc.js.snapshot/asset.a0c6248ec595d3ceec1177aa5ac5b494fdf4c66f1b88aa48086befd44f193d8c/index.js +0 -21
  228. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-deployFunctionWithVpc.js.snapshot/asset.7fa1e366ee8a9ded01fc355f704cff92bfd179574e6f9cfee800a3541df1b200/__entrypoint__.js +0 -1
  229. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-deployFunctionWithVpc.js.snapshot/asset.7fa1e366ee8a9ded01fc355f704cff92bfd179574e6f9cfee800a3541df1b200/index.js +0 -1
  230. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-deployFunctionWithVpc.js.snapshot/asset.a0c6248ec595d3ceec1177aa5ac5b494fdf4c66f1b88aa48086befd44f193d8c/index.js +0 -21
  231. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-no-arguments.js.snapshot/asset.a0c6248ec595d3ceec1177aa5ac5b494fdf4c66f1b88aa48086befd44f193d8c/index.js +0 -21
  232. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-point-in-time-recovery.js.snapshot/asset.a0c6248ec595d3ceec1177aa5ac5b494fdf4c66f1b88aa48086befd44f193d8c/index.js +0 -21
  233. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-set-billing-mode.js.snapshot/asset.a0c6248ec595d3ceec1177aa5ac5b494fdf4c66f1b88aa48086befd44f193d8c/index.js +0 -21
  234. package/node_modules/@aws-solutions-constructs/aws-lambda-dynamodb/test/integ.lamddb-use-existing-func.js.snapshot/asset.a0c6248ec595d3ceec1177aa5ac5b494fdf4c66f1b88aa48086befd44f193d8c/index.js +0 -21
  235. package/node_modules/oidc-token-hash/lib/shake256.js +0 -7
@@ -0,0 +1,365 @@
1
+ {
2
+ "Resources": {
3
+ "lambdatestServiceRoleF3BDB8FC": {
4
+ "Type": "AWS::IAM::Role",
5
+ "Properties": {
6
+ "AssumeRolePolicyDocument": {
7
+ "Statement": [
8
+ {
9
+ "Action": "sts:AssumeRole",
10
+ "Effect": "Allow",
11
+ "Principal": {
12
+ "Service": "lambda.amazonaws.com"
13
+ }
14
+ }
15
+ ],
16
+ "Version": "2012-10-17"
17
+ },
18
+ "ManagedPolicyArns": [
19
+ {
20
+ "Fn::Join": [
21
+ "",
22
+ [
23
+ "arn:",
24
+ {
25
+ "Ref": "AWS::Partition"
26
+ },
27
+ ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
28
+ ]
29
+ ]
30
+ }
31
+ ]
32
+ }
33
+ },
34
+ "lambdatest8B679D7F": {
35
+ "Type": "AWS::Lambda::Function",
36
+ "Properties": {
37
+ "Code": {
38
+ "ZipFile": "exports.handler = async (event) => console.log(event)"
39
+ },
40
+ "Handler": "index.handler",
41
+ "Role": {
42
+ "Fn::GetAtt": [
43
+ "lambdatestServiceRoleF3BDB8FC",
44
+ "Arn"
45
+ ]
46
+ },
47
+ "Runtime": "nodejs20.x"
48
+ },
49
+ "DependsOn": [
50
+ "lambdatestServiceRoleF3BDB8FC"
51
+ ],
52
+ "Metadata": {
53
+ "cfn_nag": {
54
+ "rules_to_suppress": [
55
+ {
56
+ "id": "W58",
57
+ "reason": "This Lambda Function is created for integration testing purposes only and is not part of an actual construct"
58
+ },
59
+ {
60
+ "id": "W89",
61
+ "reason": "This Lambda Function is created for integration testing purposes only and is not part of an actual construct"
62
+ },
63
+ {
64
+ "id": "W92",
65
+ "reason": "This Lambda Function is created for integration testing purposes only and is not part of an actual construct"
66
+ }
67
+ ]
68
+ }
69
+ }
70
+ },
71
+ "lambdatestLogGroupA97D94B2": {
72
+ "Type": "AWS::Logs::LogGroup",
73
+ "Properties": {
74
+ "LogGroupName": {
75
+ "Fn::Join": [
76
+ "",
77
+ [
78
+ "/aws/lambda/",
79
+ {
80
+ "Ref": "lambdatest8B679D7F"
81
+ }
82
+ ]
83
+ ]
84
+ },
85
+ "RetentionInDays": 731
86
+ },
87
+ "UpdateReplacePolicy": "Retain",
88
+ "DeletionPolicy": "Retain"
89
+ },
90
+ "StateMachineLogGroup15B91BCB": {
91
+ "Type": "AWS::Logs::LogGroup",
92
+ "Properties": {
93
+ "LogGroupName": {
94
+ "Fn::Join": [
95
+ "",
96
+ [
97
+ "/aws/vendedlogs/states/constructs/DefaultDefaultStateMachineLog-",
98
+ {
99
+ "Fn::Select": [
100
+ 2,
101
+ {
102
+ "Fn::Split": [
103
+ "/",
104
+ {
105
+ "Ref": "AWS::StackId"
106
+ }
107
+ ]
108
+ }
109
+ ]
110
+ }
111
+ ]
112
+ ]
113
+ }
114
+ },
115
+ "UpdateReplacePolicy": "Retain",
116
+ "DeletionPolicy": "Retain",
117
+ "Metadata": {
118
+ "cfn_nag": {
119
+ "rules_to_suppress": [
120
+ {
121
+ "id": "W86",
122
+ "reason": "Retention period for CloudWatchLogs LogGroups are set to 'Never Expire' to preserve customer data indefinitely"
123
+ },
124
+ {
125
+ "id": "W84",
126
+ "reason": "By default CloudWatchLogs LogGroups data is encrypted using the CloudWatch server-side encryption keys (AWS Managed Keys)"
127
+ }
128
+ ]
129
+ }
130
+ }
131
+ },
132
+ "StateMachineRoleB840431D": {
133
+ "Type": "AWS::IAM::Role",
134
+ "Properties": {
135
+ "AssumeRolePolicyDocument": {
136
+ "Statement": [
137
+ {
138
+ "Action": "sts:AssumeRole",
139
+ "Effect": "Allow",
140
+ "Principal": {
141
+ "Service": "states.amazonaws.com"
142
+ }
143
+ }
144
+ ],
145
+ "Version": "2012-10-17"
146
+ }
147
+ }
148
+ },
149
+ "StateMachineRoleDefaultPolicyDF1E6607": {
150
+ "Type": "AWS::IAM::Policy",
151
+ "Properties": {
152
+ "PolicyDocument": {
153
+ "Statement": [
154
+ {
155
+ "Action": "lambda:InvokeFunction",
156
+ "Effect": "Allow",
157
+ "Resource": [
158
+ {
159
+ "Fn::GetAtt": [
160
+ "lambdatest8B679D7F",
161
+ "Arn"
162
+ ]
163
+ },
164
+ {
165
+ "Fn::Join": [
166
+ "",
167
+ [
168
+ {
169
+ "Fn::GetAtt": [
170
+ "lambdatest8B679D7F",
171
+ "Arn"
172
+ ]
173
+ },
174
+ ":*"
175
+ ]
176
+ ]
177
+ }
178
+ ]
179
+ },
180
+ {
181
+ "Action": [
182
+ "logs:CreateLogDelivery",
183
+ "logs:GetLogDelivery",
184
+ "logs:UpdateLogDelivery",
185
+ "logs:DeleteLogDelivery",
186
+ "logs:ListLogDeliveries",
187
+ "logs:PutResourcePolicy",
188
+ "logs:DescribeResourcePolicies",
189
+ "logs:DescribeLogGroups"
190
+ ],
191
+ "Effect": "Allow",
192
+ "Resource": "*"
193
+ }
194
+ ],
195
+ "Version": "2012-10-17"
196
+ },
197
+ "PolicyName": "StateMachineRoleDefaultPolicyDF1E6607",
198
+ "Roles": [
199
+ {
200
+ "Ref": "StateMachineRoleB840431D"
201
+ }
202
+ ]
203
+ },
204
+ "Metadata": {
205
+ "cfn_nag": {
206
+ "rules_to_suppress": [
207
+ {
208
+ "id": "W12",
209
+ "reason": "These are CDK defaults. The 'LogDelivery' actions do not support resource-level authorizations. Any logging is done by State Machine code"
210
+ }
211
+ ]
212
+ }
213
+ }
214
+ },
215
+ "StateMachine2E01A3A5": {
216
+ "Type": "AWS::StepFunctions::StateMachine",
217
+ "Properties": {
218
+ "DefinitionString": {
219
+ "Fn::Join": [
220
+ "",
221
+ [
222
+ "{\"StartAt\":\"tasktest\",\"States\":{\"tasktest\":{\"End\":true,\"Retry\":[{\"ErrorEquals\":[\"Lambda.ClientExecutionTimeoutException\",\"Lambda.ServiceException\",\"Lambda.AWSLambdaException\",\"Lambda.SdkClientException\"],\"IntervalSeconds\":2,\"MaxAttempts\":6,\"BackoffRate\":2}],\"Type\":\"Task\",\"Resource\":\"arn:",
223
+ {
224
+ "Ref": "AWS::Partition"
225
+ },
226
+ ":states:::lambda:invoke\",\"Parameters\":{\"FunctionName\":\"",
227
+ {
228
+ "Fn::GetAtt": [
229
+ "lambdatest8B679D7F",
230
+ "Arn"
231
+ ]
232
+ },
233
+ "\",\"Payload.$\":\"$\"}}}}"
234
+ ]
235
+ ]
236
+ },
237
+ "LoggingConfiguration": {
238
+ "Destinations": [
239
+ {
240
+ "CloudWatchLogsLogGroup": {
241
+ "LogGroupArn": {
242
+ "Fn::GetAtt": [
243
+ "StateMachineLogGroup15B91BCB",
244
+ "Arn"
245
+ ]
246
+ }
247
+ }
248
+ }
249
+ ],
250
+ "Level": "ERROR"
251
+ },
252
+ "RoleArn": {
253
+ "Fn::GetAtt": [
254
+ "StateMachineRoleB840431D",
255
+ "Arn"
256
+ ]
257
+ },
258
+ "StateMachineName": "myStateMachine"
259
+ },
260
+ "DependsOn": [
261
+ "StateMachineRoleDefaultPolicyDF1E6607",
262
+ "StateMachineRoleB840431D"
263
+ ],
264
+ "UpdateReplacePolicy": "Delete",
265
+ "DeletionPolicy": "Delete"
266
+ },
267
+ "ExecutionFailedAlarm0469091C": {
268
+ "Type": "AWS::CloudWatch::Alarm",
269
+ "Properties": {
270
+ "AlarmDescription": "Alarm for the number of executions that failed exceeded the threshold of 1. ",
271
+ "ComparisonOperator": "GreaterThanOrEqualToThreshold",
272
+ "Dimensions": [
273
+ {
274
+ "Name": "StateMachineArn",
275
+ "Value": {
276
+ "Ref": "StateMachine2E01A3A5"
277
+ }
278
+ }
279
+ ],
280
+ "EvaluationPeriods": 1,
281
+ "MetricName": "ExecutionsFailed",
282
+ "Namespace": "AWS/States",
283
+ "Period": 300,
284
+ "Statistic": "Sum",
285
+ "Threshold": 1
286
+ }
287
+ },
288
+ "ExecutionThrottledAlarm70E4EA04": {
289
+ "Type": "AWS::CloudWatch::Alarm",
290
+ "Properties": {
291
+ "AlarmDescription": "Alarm for the number of executions that throttled exceeded the threshold of 1. ",
292
+ "ComparisonOperator": "GreaterThanOrEqualToThreshold",
293
+ "Dimensions": [
294
+ {
295
+ "Name": "StateMachineArn",
296
+ "Value": {
297
+ "Ref": "StateMachine2E01A3A5"
298
+ }
299
+ }
300
+ ],
301
+ "EvaluationPeriods": 1,
302
+ "MetricName": "ExecutionThrottled",
303
+ "Namespace": "AWS/States",
304
+ "Period": 300,
305
+ "Statistic": "Sum",
306
+ "Threshold": 1
307
+ }
308
+ },
309
+ "ExecutionAbortedAlarmC353A36A": {
310
+ "Type": "AWS::CloudWatch::Alarm",
311
+ "Properties": {
312
+ "AlarmDescription": "Alarm for the number of executions that aborted exceeded the threshold of 1. ",
313
+ "ComparisonOperator": "GreaterThanOrEqualToThreshold",
314
+ "Dimensions": [
315
+ {
316
+ "Name": "StateMachineArn",
317
+ "Value": {
318
+ "Ref": "StateMachine2E01A3A5"
319
+ }
320
+ }
321
+ ],
322
+ "EvaluationPeriods": 1,
323
+ "MetricName": "ExecutionsAborted",
324
+ "Namespace": "AWS/States",
325
+ "Period": 300,
326
+ "Statistic": "Maximum",
327
+ "Threshold": 1
328
+ }
329
+ }
330
+ },
331
+ "Parameters": {
332
+ "BootstrapVersion": {
333
+ "Type": "AWS::SSM::Parameter::Value<String>",
334
+ "Default": "/cdk-bootstrap/hnb659fds/version",
335
+ "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]"
336
+ }
337
+ },
338
+ "Rules": {
339
+ "CheckBootstrapVersion": {
340
+ "Assertions": [
341
+ {
342
+ "Assert": {
343
+ "Fn::Not": [
344
+ {
345
+ "Fn::Contains": [
346
+ [
347
+ "1",
348
+ "2",
349
+ "3",
350
+ "4",
351
+ "5"
352
+ ],
353
+ {
354
+ "Ref": "BootstrapVersion"
355
+ }
356
+ ]
357
+ }
358
+ ]
359
+ },
360
+ "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI."
361
+ }
362
+ ]
363
+ }
364
+ }
365
+ }
@@ -159,11 +159,7 @@ test('Create single region Inference Profile', () => {
159
159
  {
160
160
  "Ref": "AWS::Region"
161
161
  },
162
- ":",
163
- {
164
- "Ref": "AWS::AccountId"
165
- },
166
- ":foundation-model/amazon.nova-lite-v1:0"
162
+ "::foundation-model/amazon.nova-lite-v1:0"
167
163
  ]
168
164
  ]
169
165
  }
@@ -208,4 +204,4 @@ test('Test IsCrossRegionProfile', () => {
208
204
  crossRegion = (0, bedrock_inference_helper_1.IsCrossRegionProfile)();
209
205
  expect(crossRegion).toEqual(true);
210
206
  });
211
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmVkcm9jay1pbmZlcmVuY2UtaGVscGVyLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJiZWRyb2NrLWluZmVyZW5jZS1oZWxwZXIudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7Ozs7Ozs7O0dBV0c7O0FBRUgsbUNBQW1DO0FBQ25DLDhFQUE0SztBQUM1SywwQ0FBMEM7QUFDMUMsdURBQWtEO0FBRWxELElBQUksQ0FBQyxrREFBa0QsRUFBRSxHQUFHLEVBQUU7SUFDNUQsTUFBTSxLQUFLLEdBQUcsSUFBSSxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7SUFFOUIsSUFBQSxnREFBcUIsRUFBQyxLQUFLLEVBQUUsY0FBYyxFQUFFO1FBQzNDLGNBQWMsRUFBRSx1QkFBdUI7S0FDeEMsQ0FBQyxDQUFDO0lBQ0gsTUFBTSxRQUFRLEdBQUcscUJBQVEsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7SUFFM0MsUUFBUSxDQUFDLGVBQWUsQ0FBQywyQ0FBMkMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN6RSxRQUFRLENBQUMscUJBQXFCLENBQUMsMkNBQTJDLEVBQUU7UUFDMUUsb0JBQW9CLEVBQUU7WUFDcEIsVUFBVSxFQUFFO2dCQUNWLEVBQUU7Z0JBQ0Y7b0JBQ0UsZUFBZTtvQkFDZjt3QkFDRSxZQUFZLEVBQUU7NEJBQ1osQ0FBQzs0QkFDRDtnQ0FDRSxXQUFXLEVBQUU7b0NBQ1gsR0FBRztvQ0FDSDt3Q0FDRSxLQUFLLEVBQUUsY0FBYztxQ0FDdEI7aUNBQ0Y7NkJBQ0Y7eUJBQ0Y7cUJBQ0Y7aUJBQ0Y7YUFDRjtTQUNGO1FBQ0QsV0FBVyxFQUFFO1lBQ1gsUUFBUSxFQUFFO2dCQUNSLFVBQVUsRUFBRTtvQkFDVixFQUFFO29CQUNGO3dCQUNFLE1BQU07d0JBQ047NEJBQ0UsS0FBSyxFQUFFLGdCQUFnQjt5QkFDeEI7d0JBQ0QsV0FBVzt3QkFDWDs0QkFDRSxLQUFLLEVBQUUsYUFBYTt5QkFDckI7d0JBQ0QsR0FB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QUUsUUFBUTtTQUMvQjtLQUNGLENBQUMsQ0FBQztJQUNILE1BQU0sUUFBUSxHQUFHLHFCQUFRLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBRTNDLFFBQVEsQ0FBQyxlQUFlLENBQUMsMkNBQTJDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDekUsUUFBUSxDQUFDLHFCQUFxQixDQUFDLDJDQUEyQyxFQUFFO1FBQzFFLG9CQUFvQixFQUFFLFFBQVE7S0FDL0IsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUM7QUFFSCxJQUFJLENBQUMsMkJBQTJCLEVBQUUsR0FBRyxFQUFFO0lBQ3JDLElBQUksV0FBVyxDQUFDO0lBRWhCLFdBQVcsR0FBRSxJQUFBLCtDQUFvQixFQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3hDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFbEMsV0FBVyxHQUFFLElBQUEsK0NBQW9CLEVBQUMsS0FBSyxDQUFDLENBQUM7SUFDekMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUVuQyxXQUFXLEdBQUUsSUFBQSwrQ0FBb0IsR0FBRSxDQUFDO0lBQ3BDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDcEMsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqICBDb3B5cmlnaHQgQW1hem9uLmNvbSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKS4gWW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuICogIHdpdGggdGhlIExpY2Vuc2UuIEEgY29weSBvZiB0aGUgTGljZW5zZSBpcyBsb2NhdGVkIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiAgb3IgaW4gdGhlICdsaWNlbnNlJyBmaWxlIGFjY29tcGFueWluZyB0aGlzIGZpbGUuIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAnQVMgSVMnIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVNcbiAqICBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9uc1xuICogIGFuZCBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgKiBhcyBjZGsgZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHsgY3JlYXRlQXJlYVByZWZpeE1hcHBpbmcsIGNyZWF0ZUFyZWFSZWdpb25NYXBwaW5nLCBidWlsZEluZmVyZW5jZVByb2ZpbGUsIENoZWNrQmVkcm9ja0luZmVyZW5jZVByb3BzLCBJc0Nyb3NzUmVnaW9uUHJvZmlsZSB9IGZyb20gJy4uL2xpYi9iZWRyb2NrLWluZmVyZW5jZS1oZWxwZXInO1xuLy8gaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBUZW1wbGF0ZSB9IGZyb20gJ2F3cy1jZGstbGliL2Fzc2VydGlvbnMnO1xuXG50ZXN0KCdDcmVhdGUgY3Jvc3MgcmVnaW9uIEluZmVyZW5jZSBQcm9maWxlIGJ5IGRlZmF1bHQnLCAoKSA9PiB7XG4gIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gIGJ1aWxkSW5mZXJlbmNlUHJvZmlsZShzdGFjaywgXCJ0ZXN0LXByb2ZpbGVcIiwge1xuICAgIGJlZHJvY2tNb2RlbElkOiBcImFtYXpvbi5ub3ZhLWxpdGUtdjE6MFwiLFxuICB9KTtcbiAgY29uc3QgdGVtcGxhdGUgPSBUZW1wbGF0ZS5mcm9tU3RhY2soc3RhY2spO1xuXG4gIHRlbXBsYXRlLnJlc291cmNlQ291bnRJcyhcIkFXUzo6QmVkcm9jazo6QXBwbGljYXRpb25JbmZlcmVuY2VQcm9maWxlXCIsIDEpO1xuICB0ZW1wbGF0ZS5oYXNSZXNvdXJjZVByb3BlcnRpZXMoXCJBV1M6OkJlZHJvY2s6OkFwcGxpY2F0aW9uSW5mZXJlbmNlUHJvZmlsZVwiLCB7XG4gICAgSW5mZXJlbmNlUHJvZmlsZU5hbWU6IHtcbiAgICAgIFwiRm46OkpvaW5cIjogW1xuICAgICAgICBcIlwiLFxuICAgICAgICBbXG4gICAgICAgICAgXCJ0ZXN0LXByb2ZpbGUtXCIsXG4gICAgICAgICAge1xuICAgICAgICAgICAgXCJGbjo6U2VsZWN0XCI6IFtcbiAgICAgICAgICAgICAgMixcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIFwiRm46OlNwbGl0XCI6IFtcbiAgICAgICAgICAgICAgICAgIFwiL1wiLFxuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBcIlJlZlwiOiBcIkFXUzo6U3RhY2tJZFwiXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdXG4gICAgICAgICAgfVxuICAgICAgICBdXG4gICAgICBdXG4gICAgfSxcbiAgICBNb2RlbFNvdXJjZToge1xuICAgICAgQ29weUZyb206IHtcbiAgICAgICAgXCJGbjo6Sm9pblwiOiBbXG4gICAgICAgICAgXCJcIixcbiAgICAgICAgICBbXG4gICAgICAgICAgICBcImFybjpcIixcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgXCJSZWZcIjogXCJBV1M6OlBhcnRpdGlvblwiXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgXCI6YmVkcm9jazpcIixcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgXCJSZWZcIjogXCJBV1M6OlJlZ2lvblwiXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgXCI6XCIsXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIFwiUmVmXCI6IFwiQVdTOjpBY2NvdW50SWRcIlxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIFwiOmluZmVyZW5jZS1wcm9maWxlL1wiLFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBcIkZuOjpGaW5kSW5NYXBcIjogW1xuICAgICAgICAgICAgICAgIFwidGVzdHByb2ZpbGVhcmVhcHJlZml4bWFwcGluZ1wiLFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIFwiRm46OlNlbGVjdFwiOiBbXG4gICAgICAgICAgICAgICAgICAgIDAsXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICBcIkZuOjpTcGxpdFwiOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICBcIi1cIixcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXCJSZWZcIjogXCJBV1M6OlJlZ2lvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBcInByZWZpeFwiXG4gICAgICAgICAgICAgIF1cbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBcIi5hbWF6b24ubm92YS1saXRlLXYxOjBcIlxuICAgICAgICAgIF1cbiAgICAgICAgXVxuICAgICAgfVxuICAgIH0sXG4gIH0pO1xufSk7XG5cbnRlc3QoJ1Rlc3QgYWRkaW5nIFByZWZpeCBNYXBwaW5nIHRvIHRlbXBsYXRlJywgKCkgPT4ge1xuICAvLyBTdGFja1xuICBjb25zdCBzdGFjayA9IG5ldyBjZGsuU3RhY2soKTtcblxuICBjb25zdCBtYXBwaW5nID0gY3JlYXRlQXJlYVByZWZpeE1hcHBpbmcoc3RhY2ssIFwidGVzdC1zdGFja1wiKTtcbiAgZXhwZWN0KG1hcHBpbmcubWFwcGluZykudG9CZURlZmluZWQoKTtcbiAgZXhwZWN0KG1hcHBpbmcubWFwcGluZ05hbWUpLnRvRXF1YWwoXCJ0ZXN0c3RhY2thcmVhcHJlZml4bWFwcGluZ1wiKTtcblxuICBjb25zdCB0ZW1wbGF0ZSA9IFRlbXBsYXRlLmZyb21TdGFjayhzdGFjayk7XG5cbiAgdGVtcGxhdGUuaGFzTWFwcGluZyhtYXBwaW5nLm1hcHBpbmdOYW1lLCB7XG4gICAgdXM6IHtcbiAgICAgIHByZWZpeDogXCJ1c1wiXG4gICAgfSxcbiAgICBldToge1xuICAgICAgcHJlZml4OiBcImV1XCJcbiAgICB9LFxuICAgIGFwOiB7XG4gICAgICBwcmVmaXg6IFwiYXBhY1wiXG4gICAgfVxuICB9KTtcbn0pO1xuXG50ZXN0KCdUZXN0IGFkZGluZyBSZWdpb24gTWFwcGluZyB0byB0ZW1wbGF0ZScsICgpID0+IHtcbiAgLy8gU3RhY2tcbiAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgY29uc3QgbWFwcGluZyA9IGNyZWF0ZUFyZWFSZWdpb25NYXBwaW5nKHN0YWNrLCBcInRlc3Qtc3RhY2tcIiwgXCJtb2RlbC1uYW1lXCIpO1xuICBleHBlY3QobWFwcGluZy5tYXBwaW5nKS50b0JlRGVmaW5lZCgpO1xuICBleHBlY3QobWFwcGluZy5tYXBwaW5nTmFtZSkudG9FcXVhbChcInRlc3RzdGFja2FyZWFyZWdpb25tYXBwaW5nXCIpO1xuXG4gIGNvbnN0IHRlbXBsYXRlID0gVGVtcGxhdGUuZnJvbVN0YWNrKHN0YWNrKTtcblxuICB0ZW1wbGF0ZS5oYXNNYXBwaW5nKG1hcHBpbmcubWFwcGluZ05hbWUsIHtcbiAgICBldToge1xuICAgICAgcmVnaW9uYWxNb2RlbHM6XG4gICAgICAgIGBhcm46YXdzOmJlZHJvY2s6ZXUtbm9ydGgtMTo6Zm91bmRhdGlvbi1tb2RlbC9tb2RlbC1uYW1lLGAgK1xuICAgICAgICBgYXJuOmF3czpiZWRyb2NrOmV1LWNlbnRyYWwtMTo6Zm91bmRhdGlvbi1tb2RlbC9tb2RlbC1uYW1lLGAgK1xuICAgICAgICBgYXJuOmF3czpiZWRyb2NrOmV1LXdlc3QtMTo6Zm91bmRhdGlvbi1tb2RlbC9tb2RlbC1uYW1lLGAgK1xuICAgICAgICBgYXJuOmF3czpiZWRyb2NrOmV1LXdlc3QtMzo6Zm91bmRhdGlvbi1tb2RlbC9tb2RlbC1uYW1lYFxuICAgIH0sXG4gICAgdXM6IHtcbiAgICAgIHJlZ2lvbmFsTW9kZWxzOlxuICAgICAgICBgYXJuOmF3czpiZWRyb2NrOnVzLWVhc3QtMTo6Zm91bmRhdGlvbi1tb2RlbC9tb2RlbC1uYW1lLGAgK1xuICAgICAgICBgYXJuOmF3czpiZWRyb2NrOnVzLWVhc3QtMjo6Zm91bmRhdGlvbi1tb2RlbC9tb2RlbC1uYW1lLGAgK1xuICAgICAgICBgYXJuOmF3czpiZWRyb2NrOnVzLXdlc3QtMjo6Zm91bmRhdGlvbi1tb2RlbC9tb2RlbC1uYW1lYFxuICAgIH0sXG4gICAgYXA6IHtcbiAgICAgIHJlZ2lvbmFsTW9kZWxzOlxuICAgICAgICBgYXJuOmF3czpiZWRyb2NrOmFwLXNvdXRoZWFzdC0yOjpmb3VuZGF0aW9uLW1vZGVsL21vZGVsLW5hbWUsYCArXG4gICAgICAgIGBhcm46YXdzOmJlZHJvY2s6YXAtbm9ydGhlYXN0LTE6OmZvdW5kYXRpb24tbW9kZWwvbW9kZWwtbmFtZSxgICtcbiAgICAgICAgYGFybjphd3M6YmVkcm9jazphcC1zb3V0aC0xOjpmb3VuZGF0aW9uLW1vZGVsL21vZGVsLW5hbWUsYCArXG4gICAgICAgIGBhcm46YXdzOmJlZHJvY2s6YXAtbm9ydGhlYXN0LTI6OmZvdW5kYXRpb24tbW9kZWwvbW9kZWwtbmFtZSxgICtcbiAgICAgICAgYGFybjphd3M6YmVkcm9jazphcC1zb3V0aGVhc3QtMTo6Zm91bmRhdGlvbi1tb2RlbC9tb2RlbC1uYW1lLGAgK1xuICAgICAgICBgYXJuOmF3czpiZWRyb2NrOmFwLW5vcnRoZWFzdC0zOjpmb3VuZGF0aW9uLW1vZGVsL21vZGVsLW5hbWVgXG4gICAgfVxuICB9KTtcbn0pO1xuXG50ZXN0KCdDcmVhdGUgc2luZ2xlIHJlZ2lvbiBJbmZlcmVuY2UgUHJvZmlsZScsICgpID0+IHtcbiAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgYnVpbGRJbmZlcmVuY2VQcm9maWxlKHN0YWNrLCBcInRlc3QtcHJvZmlsZVwiLCB7XG4gICAgYmVkcm9ja01vZGVsSWQ6IFwiYW1hem9uLm5vdmEtbGl0ZS12MTowXCIsXG4gICAgZGVwbG95Q3Jvc3NSZWdpb25Qcm9maWxlOiBmYWxzZVxuICB9KTtcbiAgY29uc3QgdGVtcGxhdGUgPSBUZW1wbGF0ZS5mcm9tU3RhY2soc3RhY2spO1xuXG4gIHRlbXBsYXRlLnJlc291cmNlQ291bnRJcyhcIkFXUzo6QmVkcm9jazo6QXBwbGljYXRpb25JbmZlcmVuY2VQcm9maWxlXCIsIDEpO1xuICB0ZW1wbGF0ZS5oYXNSZXNvdXJjZVByb3BlcnRpZXMoXCJBV1M6OkJlZHJvY2s6OkFwcGxpY2F0aW9uSW5mZXJlbmNlUHJvZmlsZVwiLCB7XG4gICAgTW9kZWxTb3VyY2U6IHtcbiAgICAgIENvcHlGcm9tOiB7XG4gICAgICAgIFwiRm46OkpvaW5cIjogW1xuICAgICAgICAgIFwiXCIsXG4gICAgICAgICAgW1xuICAgICAgICAgICAgXCJhcm46XCIsXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIFwiUmVmXCI6IFwiQVdTOjpQYXJ0aXRpb25cIlxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIFwiOmJlZHJvY2s6XCIsXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIFwiUmVmXCI6IFwiQVdTOjpSZWdpb25cIlxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIFwiOlwiLFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBcIlJlZlwiOiBcIkFXUzo6QWNjb3VudElkXCJcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBcIjpmb3VuZGF0aW9uLW1vZGVsL2FtYXpvbi5ub3ZhLWxpdGUtdjE6MFwiXG4gICAgICAgICAgXVxuICAgICAgICBdXG4gICAgICB9XG4gICAgfSxcbiAgfSk7XG59KTtcblxudGVzdChcIlRlc3QgZm9yIGJhZCBpbmZlcmVuY2UgcHJvcHNcIiwgKCkgPT4ge1xuXG4gIGNvbnN0IGFwcCA9ICgpID0+IHtcbiAgICBDaGVja0JlZHJvY2tJbmZlcmVuY2VQcm9wcyh7XG4gICAgICBiZWRyb2NrTW9kZWxJZDogXCJhbWF6b24ubm92YS1saXRlLXYxOjBcIixcbiAgICAgIGluZmVyZW5jZVByb2ZpbGVQcm9wczoge1xuICAgICAgICBpbmZlcmVuY2VQcm9maWxlTmFtZTogXCJ0ZXN0XCIsXG4gICAgICAgIG1vZGVsU291cmNlOiB7XG4gICAgICAgICAgY29weUZyb206IFwidGVzdFwiXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgfTtcblxuICBleHBlY3QoYXBwKS50b1Rocm93RXJyb3IoJ0Vycm9yIC0gVGhlIGNvbnN0cnVjdCB3aWxsIGNyZWF0ZSB0aGUgbW9kZWxTb3VyY2UgdmFsdWUsIGl0IGNhbm5vdCBiZSBzcGVjaWZpZWQgaW4gdGhlIHByb3BzLlxcbicpO1xufSk7XG5cbnRlc3QoJ0NyZWF0ZSBjcm9zcyByZWdpb24gSW5mZXJlbmNlIFByb2ZpbGUgYnkgZGVmYXVsdCcsICgpID0+IHtcbiAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgY29uc3QgdGVzdE5hbWUgPSBcInRlc3QtcHJvZmlsZVwiO1xuICBidWlsZEluZmVyZW5jZVByb2ZpbGUoc3RhY2ssIFwidGVzdC1wcm9maWxlXCIsIHtcbiAgICBiZWRyb2NrTW9kZWxJZDogXCJhbWF6b24ubm92YS1saXRlLXYxOjBcIixcbiAgICBpbmZlcmVuY2VQcm9maWxlUHJvcHM6IHtcbiAgICAgIGluZmVyZW5jZVByb2ZpbGVOYW1lOiB0ZXN0TmFtZVxuICAgIH1cbiAgfSk7XG4gIGNvbnN0IHRlbXBsYXRlID0gVGVtcGxhdGUuZnJvbVN0YWNrKHN0YWNrKTtcblxuICB0ZW1wbGF0ZS5yZXNvdXJjZUNvdW50SXMoXCJBV1M6OkJlZHJvY2s6OkFwcGxpY2F0aW9uSW5mZXJlbmNlUHJvZmlsZVwiLCAxKTtcbiAgdGVtcGxhdGUuaGFzUmVzb3VyY2VQcm9wZXJ0aWVzKFwiQVdTOjpCZWRyb2NrOjpBcHBsaWNhdGlvbkluZmVyZW5jZVByb2ZpbGVcIiwge1xuICAgIEluZmVyZW5jZVByb2ZpbGVOYW1lOiB0ZXN0TmFtZSxcbiAgfSk7XG59KTtcblxudGVzdCgnVGVzdCBJc0Nyb3NzUmVnaW9uUHJvZmlsZScsICgpID0+IHtcbiAgbGV0IGNyb3NzUmVnaW9uO1xuXG4gIGNyb3NzUmVnaW9uID1Jc0Nyb3NzUmVnaW9uUHJvZmlsZSh0cnVlKTtcbiAgZXhwZWN0KGNyb3NzUmVnaW9uKS50b0VxdWFsKHRydWUpO1xuXG4gIGNyb3NzUmVnaW9uID1Jc0Nyb3NzUmVnaW9uUHJvZmlsZShmYWxzZSk7XG4gIGV4cGVjdChjcm9zc1JlZ2lvbikudG9FcXVhbChmYWxzZSk7XG5cbiAgY3Jvc3NSZWdpb24gPUlzQ3Jvc3NSZWdpb25Qcm9maWxlKCk7XG4gIGV4cGVjdChjcm9zc1JlZ2lvbikudG9FcXVhbCh0cnVlKTtcbn0pOyJdfQ==
207
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmVkcm9jay1pbmZlcmVuY2UtaGVscGVyLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJiZWRyb2NrLWluZmVyZW5jZS1oZWxwZXIudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7Ozs7Ozs7O0dBV0c7O0FBRUgsbUNBQW1DO0FBQ25DLDhFQUE0SztBQUM1SywwQ0FBMEM7QUFDMUMsdURBQWtEO0FBRWxELElBQUksQ0FBQyxrREFBa0QsRUFBRSxHQUFHLEVBQUU7SUFDNUQsTUFBTSxLQUFLLEdBQUcsSUFBSSxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7SUFFOUIsSUFBQSxnREFBcUIsRUFBQyxLQUFLLEVBQUUsY0FBYyxFQUFFO1FBQzNDLGNBQWMsRUFBRSx1QkFBdUI7S0FDeEMsQ0FBQyxDQUFDO0lBQ0gsTUFBTSxRQUFRLEdBQUcscUJBQVEsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7SUFFM0MsUUFBUSxDQUFDLGVBQWUsQ0FBQywyQ0FBMkMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN6RSxRQUFRLENBQUMscUJBQXFCLENBQUMsMkNBQTJDLEVBQUU7UUFDMUUsb0JBQW9CLEVBQUU7WUFDcEIsVUFBVSxFQUFFO2dCQUNWLEVBQUU7Z0JBQ0Y7b0JBQ0UsZUFBZTtvQkFDZjt3QkFDRSxZQUFZLEVBQUU7NEJBQ1osQ0FBQzs0QkFDRDtnQ0FDRSxXQUFXLEVBQUU7b0NBQ1gsR0FBRztvQ0FDSDt3Q0FDRSxLQUFLLEVBQUUsY0FBYztxQ0FDdEI7aUNBQ0Y7NkJBQ0Y7eUJBQ0Y7cUJBQ0Y7aUJBQ0Y7YUFDRjtTQUNGO1FBQ0QsV0FBVyxFQUFFO1lBQ1gsUUFBUSxFQUFFO2dCQUNSLFVBQVUsRUFBRTtvQkFDVixFQUFFO29CQUNGO3dCQUNFLE1BQU07d0JBQ047NEJBQ0UsS0FBSyxFQUFFLGdCQUFnQjt5QkFDeEI7d0JBQ0QsV0FBVzt3QkFDWDs0QkFDRSxLQUFLLEVBQUUsYUFBYTt5QkFDckI7d0JBQ0QsR0FB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RyxxQkFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUUzQyxRQUFRLENBQUMsZUFBZSxDQUFDLDJDQUEyQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3pFLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQywyQ0FBMkMsRUFBRTtRQUMxRSxvQkFBb0IsRUFBRSxRQUFRO0tBQy9CLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDO0FBRUgsSUFBSSxDQUFDLDJCQUEyQixFQUFFLEdBQUcsRUFBRTtJQUNyQyxJQUFJLFdBQVcsQ0FBQztJQUVoQixXQUFXLEdBQUUsSUFBQSwrQ0FBb0IsRUFBQyxJQUFJLENBQUMsQ0FBQztJQUN4QyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRWxDLFdBQVcsR0FBRSxJQUFBLCtDQUFvQixFQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7SUFFbkMsV0FBVyxHQUFFLElBQUEsK0NBQW9CLEdBQUUsQ0FBQztJQUNwQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ3BDLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiAgQ29weXJpZ2h0IEFtYXpvbi5jb20sIEluYy4gb3IgaXRzIGFmZmlsaWF0ZXMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIikuIFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcbiAqICB3aXRoIHRoZSBMaWNlbnNlLiBBIGNvcHkgb2YgdGhlIExpY2Vuc2UgaXMgbG9jYXRlZCBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogIG9yIGluIHRoZSAnbGljZW5zZScgZmlsZSBhY2NvbXBhbnlpbmcgdGhpcyBmaWxlLiBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgb24gYW4gJ0FTIElTJyBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTXG4gKiAgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnNcbiAqICBhbmQgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0ICogYXMgY2RrIGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IGNyZWF0ZUFyZWFQcmVmaXhNYXBwaW5nLCBjcmVhdGVBcmVhUmVnaW9uTWFwcGluZywgYnVpbGRJbmZlcmVuY2VQcm9maWxlLCBDaGVja0JlZHJvY2tJbmZlcmVuY2VQcm9wcywgSXNDcm9zc1JlZ2lvblByb2ZpbGUgfSBmcm9tICcuLi9saWIvYmVkcm9jay1pbmZlcmVuY2UtaGVscGVyJztcbi8vIGltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgVGVtcGxhdGUgfSBmcm9tICdhd3MtY2RrLWxpYi9hc3NlcnRpb25zJztcblxudGVzdCgnQ3JlYXRlIGNyb3NzIHJlZ2lvbiBJbmZlcmVuY2UgUHJvZmlsZSBieSBkZWZhdWx0JywgKCkgPT4ge1xuICBjb25zdCBzdGFjayA9IG5ldyBjZGsuU3RhY2soKTtcblxuICBidWlsZEluZmVyZW5jZVByb2ZpbGUoc3RhY2ssIFwidGVzdC1wcm9maWxlXCIsIHtcbiAgICBiZWRyb2NrTW9kZWxJZDogXCJhbWF6b24ubm92YS1saXRlLXYxOjBcIixcbiAgfSk7XG4gIGNvbnN0IHRlbXBsYXRlID0gVGVtcGxhdGUuZnJvbVN0YWNrKHN0YWNrKTtcblxuICB0ZW1wbGF0ZS5yZXNvdXJjZUNvdW50SXMoXCJBV1M6OkJlZHJvY2s6OkFwcGxpY2F0aW9uSW5mZXJlbmNlUHJvZmlsZVwiLCAxKTtcbiAgdGVtcGxhdGUuaGFzUmVzb3VyY2VQcm9wZXJ0aWVzKFwiQVdTOjpCZWRyb2NrOjpBcHBsaWNhdGlvbkluZmVyZW5jZVByb2ZpbGVcIiwge1xuICAgIEluZmVyZW5jZVByb2ZpbGVOYW1lOiB7XG4gICAgICBcIkZuOjpKb2luXCI6IFtcbiAgICAgICAgXCJcIixcbiAgICAgICAgW1xuICAgICAgICAgIFwidGVzdC1wcm9maWxlLVwiLFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIFwiRm46OlNlbGVjdFwiOiBbXG4gICAgICAgICAgICAgIDIsXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBcIkZuOjpTcGxpdFwiOiBbXG4gICAgICAgICAgICAgICAgICBcIi9cIixcbiAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgXCJSZWZcIjogXCJBV1M6OlN0YWNrSWRcIlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXVxuICAgICAgICAgIH1cbiAgICAgICAgXVxuICAgICAgXVxuICAgIH0sXG4gICAgTW9kZWxTb3VyY2U6IHtcbiAgICAgIENvcHlGcm9tOiB7XG4gICAgICAgIFwiRm46OkpvaW5cIjogW1xuICAgICAgICAgIFwiXCIsXG4gICAgICAgICAgW1xuICAgICAgICAgICAgXCJhcm46XCIsXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIFwiUmVmXCI6IFwiQVdTOjpQYXJ0aXRpb25cIlxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIFwiOmJlZHJvY2s6XCIsXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIFwiUmVmXCI6IFwiQVdTOjpSZWdpb25cIlxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIFwiOlwiLFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBcIlJlZlwiOiBcIkFXUzo6QWNjb3VudElkXCJcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBcIjppbmZlcmVuY2UtcHJvZmlsZS9cIixcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgXCJGbjo6RmluZEluTWFwXCI6IFtcbiAgICAgICAgICAgICAgICBcInRlc3Rwcm9maWxlYXJlYXByZWZpeG1hcHBpbmdcIixcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBcIkZuOjpTZWxlY3RcIjogW1xuICAgICAgICAgICAgICAgICAgICAwLFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgXCJGbjo6U3BsaXRcIjogW1xuICAgICAgICAgICAgICAgICAgICAgICAgXCItXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIFwiUmVmXCI6IFwiQVdTOjpSZWdpb25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXCJwcmVmaXhcIlxuICAgICAgICAgICAgICBdXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgXCIuYW1hem9uLm5vdmEtbGl0ZS12MTowXCJcbiAgICAgICAgICBdXG4gICAgICAgIF1cbiAgICAgIH1cbiAgICB9LFxuICB9KTtcbn0pO1xuXG50ZXN0KCdUZXN0IGFkZGluZyBQcmVmaXggTWFwcGluZyB0byB0ZW1wbGF0ZScsICgpID0+IHtcbiAgLy8gU3RhY2tcbiAgY29uc3Qgc3RhY2sgPSBuZXcgY2RrLlN0YWNrKCk7XG5cbiAgY29uc3QgbWFwcGluZyA9IGNyZWF0ZUFyZWFQcmVmaXhNYXBwaW5nKHN0YWNrLCBcInRlc3Qtc3RhY2tcIik7XG4gIGV4cGVjdChtYXBwaW5nLm1hcHBpbmcpLnRvQmVEZWZpbmVkKCk7XG4gIGV4cGVjdChtYXBwaW5nLm1hcHBpbmdOYW1lKS50b0VxdWFsKFwidGVzdHN0YWNrYXJlYXByZWZpeG1hcHBpbmdcIik7XG5cbiAgY29uc3QgdGVtcGxhdGUgPSBUZW1wbGF0ZS5mcm9tU3RhY2soc3RhY2spO1xuXG4gIHRlbXBsYXRlLmhhc01hcHBpbmcobWFwcGluZy5tYXBwaW5nTmFtZSwge1xuICAgIHVzOiB7XG4gICAgICBwcmVmaXg6IFwidXNcIlxuICAgIH0sXG4gICAgZXU6IHtcbiAgICAgIHByZWZpeDogXCJldVwiXG4gICAgfSxcbiAgICBhcDoge1xuICAgICAgcHJlZml4OiBcImFwYWNcIlxuICAgIH1cbiAgfSk7XG59KTtcblxudGVzdCgnVGVzdCBhZGRpbmcgUmVnaW9uIE1hcHBpbmcgdG8gdGVtcGxhdGUnLCAoKSA9PiB7XG4gIC8vIFN0YWNrXG4gIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gIGNvbnN0IG1hcHBpbmcgPSBjcmVhdGVBcmVhUmVnaW9uTWFwcGluZyhzdGFjaywgXCJ0ZXN0LXN0YWNrXCIsIFwibW9kZWwtbmFtZVwiKTtcbiAgZXhwZWN0KG1hcHBpbmcubWFwcGluZykudG9CZURlZmluZWQoKTtcbiAgZXhwZWN0KG1hcHBpbmcubWFwcGluZ05hbWUpLnRvRXF1YWwoXCJ0ZXN0c3RhY2thcmVhcmVnaW9ubWFwcGluZ1wiKTtcblxuICBjb25zdCB0ZW1wbGF0ZSA9IFRlbXBsYXRlLmZyb21TdGFjayhzdGFjayk7XG5cbiAgdGVtcGxhdGUuaGFzTWFwcGluZyhtYXBwaW5nLm1hcHBpbmdOYW1lLCB7XG4gICAgZXU6IHtcbiAgICAgIHJlZ2lvbmFsTW9kZWxzOlxuICAgICAgICBgYXJuOmF3czpiZWRyb2NrOmV1LW5vcnRoLTE6OmZvdW5kYXRpb24tbW9kZWwvbW9kZWwtbmFtZSxgICtcbiAgICAgICAgYGFybjphd3M6YmVkcm9jazpldS1jZW50cmFsLTE6OmZvdW5kYXRpb24tbW9kZWwvbW9kZWwtbmFtZSxgICtcbiAgICAgICAgYGFybjphd3M6YmVkcm9jazpldS13ZXN0LTE6OmZvdW5kYXRpb24tbW9kZWwvbW9kZWwtbmFtZSxgICtcbiAgICAgICAgYGFybjphd3M6YmVkcm9jazpldS13ZXN0LTM6OmZvdW5kYXRpb24tbW9kZWwvbW9kZWwtbmFtZWBcbiAgICB9LFxuICAgIHVzOiB7XG4gICAgICByZWdpb25hbE1vZGVsczpcbiAgICAgICAgYGFybjphd3M6YmVkcm9jazp1cy1lYXN0LTE6OmZvdW5kYXRpb24tbW9kZWwvbW9kZWwtbmFtZSxgICtcbiAgICAgICAgYGFybjphd3M6YmVkcm9jazp1cy1lYXN0LTI6OmZvdW5kYXRpb24tbW9kZWwvbW9kZWwtbmFtZSxgICtcbiAgICAgICAgYGFybjphd3M6YmVkcm9jazp1cy13ZXN0LTI6OmZvdW5kYXRpb24tbW9kZWwvbW9kZWwtbmFtZWBcbiAgICB9LFxuICAgIGFwOiB7XG4gICAgICByZWdpb25hbE1vZGVsczpcbiAgICAgICAgYGFybjphd3M6YmVkcm9jazphcC1zb3V0aGVhc3QtMjo6Zm91bmRhdGlvbi1tb2RlbC9tb2RlbC1uYW1lLGAgK1xuICAgICAgICBgYXJuOmF3czpiZWRyb2NrOmFwLW5vcnRoZWFzdC0xOjpmb3VuZGF0aW9uLW1vZGVsL21vZGVsLW5hbWUsYCArXG4gICAgICAgIGBhcm46YXdzOmJlZHJvY2s6YXAtc291dGgtMTo6Zm91bmRhdGlvbi1tb2RlbC9tb2RlbC1uYW1lLGAgK1xuICAgICAgICBgYXJuOmF3czpiZWRyb2NrOmFwLW5vcnRoZWFzdC0yOjpmb3VuZGF0aW9uLW1vZGVsL21vZGVsLW5hbWUsYCArXG4gICAgICAgIGBhcm46YXdzOmJlZHJvY2s6YXAtc291dGhlYXN0LTE6OmZvdW5kYXRpb24tbW9kZWwvbW9kZWwtbmFtZSxgICtcbiAgICAgICAgYGFybjphd3M6YmVkcm9jazphcC1ub3J0aGVhc3QtMzo6Zm91bmRhdGlvbi1tb2RlbC9tb2RlbC1uYW1lYFxuICAgIH1cbiAgfSk7XG59KTtcblxudGVzdCgnQ3JlYXRlIHNpbmdsZSByZWdpb24gSW5mZXJlbmNlIFByb2ZpbGUnLCAoKSA9PiB7XG4gIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gIGJ1aWxkSW5mZXJlbmNlUHJvZmlsZShzdGFjaywgXCJ0ZXN0LXByb2ZpbGVcIiwge1xuICAgIGJlZHJvY2tNb2RlbElkOiBcImFtYXpvbi5ub3ZhLWxpdGUtdjE6MFwiLFxuICAgIGRlcGxveUNyb3NzUmVnaW9uUHJvZmlsZTogZmFsc2VcbiAgfSk7XG4gIGNvbnN0IHRlbXBsYXRlID0gVGVtcGxhdGUuZnJvbVN0YWNrKHN0YWNrKTtcblxuICB0ZW1wbGF0ZS5yZXNvdXJjZUNvdW50SXMoXCJBV1M6OkJlZHJvY2s6OkFwcGxpY2F0aW9uSW5mZXJlbmNlUHJvZmlsZVwiLCAxKTtcbiAgdGVtcGxhdGUuaGFzUmVzb3VyY2VQcm9wZXJ0aWVzKFwiQVdTOjpCZWRyb2NrOjpBcHBsaWNhdGlvbkluZmVyZW5jZVByb2ZpbGVcIiwge1xuICAgIE1vZGVsU291cmNlOiB7XG4gICAgICBDb3B5RnJvbToge1xuICAgICAgICBcIkZuOjpKb2luXCI6IFtcbiAgICAgICAgICBcIlwiLFxuICAgICAgICAgIFtcbiAgICAgICAgICAgIFwiYXJuOlwiLFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBcIlJlZlwiOiBcIkFXUzo6UGFydGl0aW9uXCJcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBcIjpiZWRyb2NrOlwiLFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBcIlJlZlwiOiBcIkFXUzo6UmVnaW9uXCJcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBcIjo6Zm91bmRhdGlvbi1tb2RlbC9hbWF6b24ubm92YS1saXRlLXYxOjBcIlxuICAgICAgICAgIF1cbiAgICAgICAgXVxuICAgICAgfVxuICAgIH0sXG4gIH0pO1xufSk7XG5cbnRlc3QoXCJUZXN0IGZvciBiYWQgaW5mZXJlbmNlIHByb3BzXCIsICgpID0+IHtcblxuICBjb25zdCBhcHAgPSAoKSA9PiB7XG4gICAgQ2hlY2tCZWRyb2NrSW5mZXJlbmNlUHJvcHMoe1xuICAgICAgYmVkcm9ja01vZGVsSWQ6IFwiYW1hem9uLm5vdmEtbGl0ZS12MTowXCIsXG4gICAgICBpbmZlcmVuY2VQcm9maWxlUHJvcHM6IHtcbiAgICAgICAgaW5mZXJlbmNlUHJvZmlsZU5hbWU6IFwidGVzdFwiLFxuICAgICAgICBtb2RlbFNvdXJjZToge1xuICAgICAgICAgIGNvcHlGcm9tOiBcInRlc3RcIlxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gIH07XG5cbiAgZXhwZWN0KGFwcCkudG9UaHJvd0Vycm9yKCdFcnJvciAtIFRoZSBjb25zdHJ1Y3Qgd2lsbCBjcmVhdGUgdGhlIG1vZGVsU291cmNlIHZhbHVlLCBpdCBjYW5ub3QgYmUgc3BlY2lmaWVkIGluIHRoZSBwcm9wcy5cXG4nKTtcbn0pO1xuXG50ZXN0KCdDcmVhdGUgY3Jvc3MgcmVnaW9uIEluZmVyZW5jZSBQcm9maWxlIGJ5IGRlZmF1bHQnLCAoKSA9PiB7XG4gIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjaygpO1xuXG4gIGNvbnN0IHRlc3ROYW1lID0gXCJ0ZXN0LXByb2ZpbGVcIjtcbiAgYnVpbGRJbmZlcmVuY2VQcm9maWxlKHN0YWNrLCBcInRlc3QtcHJvZmlsZVwiLCB7XG4gICAgYmVkcm9ja01vZGVsSWQ6IFwiYW1hem9uLm5vdmEtbGl0ZS12MTowXCIsXG4gICAgaW5mZXJlbmNlUHJvZmlsZVByb3BzOiB7XG4gICAgICBpbmZlcmVuY2VQcm9maWxlTmFtZTogdGVzdE5hbWVcbiAgICB9XG4gIH0pO1xuICBjb25zdCB0ZW1wbGF0ZSA9IFRlbXBsYXRlLmZyb21TdGFjayhzdGFjayk7XG5cbiAgdGVtcGxhdGUucmVzb3VyY2VDb3VudElzKFwiQVdTOjpCZWRyb2NrOjpBcHBsaWNhdGlvbkluZmVyZW5jZVByb2ZpbGVcIiwgMSk7XG4gIHRlbXBsYXRlLmhhc1Jlc291cmNlUHJvcGVydGllcyhcIkFXUzo6QmVkcm9jazo6QXBwbGljYXRpb25JbmZlcmVuY2VQcm9maWxlXCIsIHtcbiAgICBJbmZlcmVuY2VQcm9maWxlTmFtZTogdGVzdE5hbWUsXG4gIH0pO1xufSk7XG5cbnRlc3QoJ1Rlc3QgSXNDcm9zc1JlZ2lvblByb2ZpbGUnLCAoKSA9PiB7XG4gIGxldCBjcm9zc1JlZ2lvbjtcblxuICBjcm9zc1JlZ2lvbiA9SXNDcm9zc1JlZ2lvblByb2ZpbGUodHJ1ZSk7XG4gIGV4cGVjdChjcm9zc1JlZ2lvbikudG9FcXVhbCh0cnVlKTtcblxuICBjcm9zc1JlZ2lvbiA9SXNDcm9zc1JlZ2lvblByb2ZpbGUoZmFsc2UpO1xuICBleHBlY3QoY3Jvc3NSZWdpb24pLnRvRXF1YWwoZmFsc2UpO1xuXG4gIGNyb3NzUmVnaW9uID1Jc0Nyb3NzUmVnaW9uUHJvZmlsZSgpO1xuICBleHBlY3QoY3Jvc3NSZWdpb24pLnRvRXF1YWwodHJ1ZSk7XG59KTsiXX0=
@@ -18,6 +18,6 @@ exports.handler = async (event, context) => {
18
18
      return {
19
19
        statusCode: 200,
20
20
        headers: { 'Content-Type': 'text/plain' },
21
-       body: `Hello from Project Vesper! You've hit ${event.path}\n`
21
+       body: `Hello from AWS Solutions Constructs! You've hit ${event.path}\n`
22
22
      };
23
23
  };