From 27ec8b096eef78b6167f7c5262847f749015eee6 Mon Sep 17 00:00:00 2001 From: Andrew Hammond <445764+ahammond@users.noreply.github.com> Date: Tue, 28 May 2024 12:47:22 -0700 Subject: [PATCH] feat: aws-sdk => v3 [INFRA-9971] --- .projen/deps.json | 12 +- .projen/tasks.json | 4 +- .projenrc.ts | 4 +- package.json | 9 +- pnpm-lock.yaml | 1055 +++++++++++++---- ...-buckets-usage-metric-publisher.monitor.ts | 47 +- ...ets-usage-metric-publisher.monitor.test.ts | 68 +- 7 files changed, 917 insertions(+), 282 deletions(-) diff --git a/.projen/deps.json b/.projen/deps.json index 60f0b39..fcb717c 100644 --- a/.projen/deps.json +++ b/.projen/deps.json @@ -4,10 +4,6 @@ "name": "@aws-cdk/integ-tests-alpha", "type": "build" }, - { - "name": "@aws-sdk/client-cloudwatch", - "type": "build" - }, { "name": "@time-loop/clickup-projen", "type": "build" @@ -32,7 +28,7 @@ "type": "build" }, { - "name": "aws-sdk-mock", + "name": "aws-sdk-client-mock", "type": "build" }, { @@ -123,7 +119,11 @@ "type": "build" }, { - "name": "aws-sdk", + "name": "@aws-sdk/client-cloudwatch", + "type": "bundled" + }, + { + "name": "@aws-sdk/client-s3", "type": "bundled" }, { diff --git a/.projen/tasks.json b/.projen/tasks.json index 0218989..836f763 100644 --- a/.projen/tasks.json +++ b/.projen/tasks.json @@ -310,13 +310,13 @@ }, "steps": [ { - "exec": "pnpm dlx npm-check-updates@16 --upgrade --target=minor --peer --dep=dev,peer,prod,optional --filter=@aws-cdk/integ-tests-alpha,@aws-sdk/client-cloudwatch,@time-loop/clickup-projen,@types/jest,aws-sdk-mock,esbuild,eslint-config-prettier,eslint-import-resolver-typescript,eslint-plugin-import,eslint-plugin-prettier,jest,jsii-diff,jsii-docgen,jsii-pacmak,jsii-release,prettier,projen,ts-jest,aws-sdk,multi-convention-namer" + "exec": "pnpm dlx npm-check-updates@16 --upgrade --target=minor --peer --dep=dev,peer,prod,optional --filter=@aws-cdk/integ-tests-alpha,@time-loop/clickup-projen,@types/jest,aws-sdk-client-mock,esbuild,eslint-config-prettier,eslint-import-resolver-typescript,eslint-plugin-import,eslint-plugin-prettier,jest,jsii-diff,jsii-docgen,jsii-pacmak,jsii-release,prettier,projen,ts-jest,@aws-sdk/client-cloudwatch,@aws-sdk/client-s3,multi-convention-namer" }, { "exec": "pnpm i --no-frozen-lockfile" }, { - "exec": "pnpm update @aws-cdk/integ-tests-alpha @aws-sdk/client-cloudwatch @time-loop/clickup-projen @types/jest @types/node @typescript-eslint/eslint-plugin @typescript-eslint/parser aws-sdk-mock esbuild eslint-config-prettier eslint-import-resolver-typescript eslint-plugin-import eslint-plugin-prettier eslint jest jest-junit jsii-diff jsii-docgen jsii-pacmak jsii-release jsii-rosetta jsii prettier projen standard-version ts-jest ts-node typescript aws-sdk @aws-cdk/integ-runner aws-cdk-lib constructs multi-convention-namer" + "exec": "pnpm update @aws-cdk/integ-tests-alpha @time-loop/clickup-projen @types/jest @types/node @typescript-eslint/eslint-plugin @typescript-eslint/parser aws-sdk-client-mock esbuild eslint-config-prettier eslint-import-resolver-typescript eslint-plugin-import eslint-plugin-prettier eslint jest jest-junit jsii-diff jsii-docgen jsii-pacmak jsii-release jsii-rosetta jsii prettier projen standard-version ts-jest ts-node typescript @aws-sdk/client-cloudwatch @aws-sdk/client-s3 @aws-cdk/integ-runner aws-cdk-lib constructs multi-convention-namer" }, { "exec": "npx projen" diff --git a/.projenrc.ts b/.projenrc.ts index db81c30..a3a563d 100644 --- a/.projenrc.ts +++ b/.projenrc.ts @@ -14,8 +14,8 @@ const project = new clickupCdk.ClickUpCdkConstructLibrary({ projenrcTs: true, packageManager: javascript.NodePackageManager.PNPM, pnpmVersion: '9', - bundledDeps: ['aws-sdk'], - devDeps: ['@time-loop/clickup-projen', '@aws-cdk/integ-tests-alpha', 'aws-sdk-mock', '@aws-sdk/client-cloudwatch'], + bundledDeps: ['@aws-sdk/client-cloudwatch', '@aws-sdk/client-s3'], + devDeps: ['@time-loop/clickup-projen', '@aws-cdk/integ-tests-alpha', 'aws-sdk-client-mock'], peerDeps: ['multi-convention-namer'], }); diff --git a/package.json b/package.json index 5afac20..713ac52 100644 --- a/package.json +++ b/package.json @@ -39,14 +39,13 @@ "devDependencies": { "@aws-cdk/integ-runner": "latest", "@aws-cdk/integ-tests-alpha": "latest", - "@aws-sdk/client-cloudwatch": "^3.576.0", "@time-loop/clickup-projen": "^1.10.7", "@types/jest": "^29.5.12", "@types/node": "^18", "@typescript-eslint/eslint-plugin": "^6", "@typescript-eslint/parser": "^6", "aws-cdk-lib": "2.105.0", - "aws-sdk-mock": "^5.9.0", + "aws-sdk-client-mock": "^4.0.0", "constructs": "10.0.5", "esbuild": "^0.21.2", "eslint": "^8", @@ -76,10 +75,12 @@ "multi-convention-namer": "^0.1.15" }, "dependencies": { - "aws-sdk": "^2.1620.0" + "@aws-sdk/client-cloudwatch": "^3.576.0", + "@aws-sdk/client-s3": "^3.583.0" }, "bundledDependencies": [ - "aws-sdk" + "@aws-sdk/client-cloudwatch", + "@aws-sdk/client-s3" ], "pnpm": {}, "keywords": [ diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 72fe8d1..d192a62 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -8,19 +8,19 @@ importers: .: dependencies: - aws-sdk: - specifier: ^2.1620.0 - version: 2.1620.0 + '@aws-sdk/client-cloudwatch': + specifier: ^3.576.0 + version: 3.576.0 + '@aws-sdk/client-s3': + specifier: ^3.583.0 + version: 3.583.0 devDependencies: '@aws-cdk/integ-runner': specifier: latest - version: 2.141.0-alpha.0 + version: 2.143.0-alpha.0 '@aws-cdk/integ-tests-alpha': specifier: latest - version: 2.141.0-alpha.0(aws-cdk-lib@2.105.0(constructs@10.0.5))(constructs@10.0.5) - '@aws-sdk/client-cloudwatch': - specifier: ^3.576.0 - version: 3.576.0 + version: 2.143.0-alpha.0(aws-cdk-lib@2.105.0(constructs@10.0.5))(constructs@10.0.5) '@time-loop/clickup-projen': specifier: ^1.10.7 version: 1.10.7(projen@0.81.13(constructs@10.0.5)) @@ -39,9 +39,9 @@ importers: aws-cdk-lib: specifier: 2.105.0 version: 2.105.0(constructs@10.0.5) - aws-sdk-mock: - specifier: ^5.9.0 - version: 5.9.0 + aws-sdk-client-mock: + specifier: ^4.0.0 + version: 4.0.0 constructs: specifier: 10.0.5 version: 10.0.5 @@ -83,7 +83,7 @@ importers: version: 1.98.0(jsii-rosetta@5.3.36) jsii-release: specifier: ^0.2.834 - version: 0.2.834(@aws-sdk/client-sso-oidc@3.576.0) + version: 0.2.834(@aws-sdk/client-sso-oidc@3.583.0) jsii-rosetta: specifier: ~5.3.0 version: 5.3.36 @@ -124,27 +124,36 @@ packages: '@aws-cdk/asset-node-proxy-agent-v6@2.0.3': resolution: {integrity: sha512-twhuEG+JPOYCYPx/xy5uH2+VUsIEhPTzDY0F1KuB+ocjWWB/KEDiOVL19nHvbPCB6fhWnkykXEMJ4HHcKvjtvg==} - '@aws-cdk/aws-service-spec@0.1.1': - resolution: {integrity: sha512-1+GbqfWISM1jy1ILNe1/XuS/ytZ6rG3nkI1FfDe+JmGiwiA+VgseDa0v6pPf2DBUx7W2bwWpE7nRiZiM1hWWyQ==} + '@aws-cdk/aws-service-spec@0.1.3': + resolution: {integrity: sha512-nYgOQ7M6GShdidYDy1y0hDZew3Nle+DSS86MLJ5WxmQZKv92RdtPigHoH8sBfV+3AeJZJg+cCMm8RP0+07wctQ==} - '@aws-cdk/integ-runner@2.141.0-alpha.0': - resolution: {integrity: sha512-4HMTe7INnyOGJW6ubV8T4nsUrhZUOqmjeA02Mpxon3eQcbTpkzMgDsuPYJ3ajqijs1aG1TjH8nFgnShLbij4qA==} + '@aws-cdk/integ-runner@2.143.0-alpha.0': + resolution: {integrity: sha512-AuWN6HBdJkEMjM+PqW3BUDiLQNqAcdrOJA/8w4AnRTnsqNFZspKB8nCxOhhQYsjvK4RRguFDs/XF7NFCXcyHug==} engines: {node: '>= 14.15.0'} hasBin: true - '@aws-cdk/integ-tests-alpha@2.141.0-alpha.0': - resolution: {integrity: sha512-FYfXQSbsuzQANeN4jQD3jIyoHEbqRpdzl53OYJfbnq/OnfE7B94Lqzm/jQ+WvCi0HQzRmmyFnBh/5YDNQKH/AQ==} + '@aws-cdk/integ-tests-alpha@2.143.0-alpha.0': + resolution: {integrity: sha512-dlz4SF9ciBD8DfNiTvVlL0lIRdTXha7OB2a7lOgBYIlo2VG7UN5oZIczwSCANnf3JioHdWn7t61I8MSqm4DsCw==} engines: {node: '>= 14.15.0'} peerDependencies: - aws-cdk-lib: ^2.141.0 + aws-cdk-lib: ^2.143.0 constructs: ^10.0.0 - '@aws-cdk/service-spec-types@0.0.69': - resolution: {integrity: sha512-bYCdtU5ZGfYJyKsh25ILzdtXyC4poB64k9oQ1p8EeRngnh6TlxObO/J+sI1CDvOpGoa+BUzCdAhewIkdMjzl5A==} + '@aws-cdk/service-spec-types@0.0.71': + resolution: {integrity: sha512-HVs2BhcuWZNeF0CoJ8lRhHMD27h5D+dPvqjKgbF3NYWJW3lmdYueASRWTaZnLcND51c/Ar/ZXpXvv0kd6Wj5RQ==} + + '@aws-crypto/crc32@3.0.0': + resolution: {integrity: sha512-IzSgsrxUcsrejQbPVilIKy16kAT52EwB6zSaI+M3xxIhKh5+aldEyvI+z6erM7TCLB2BJsFrtHjp6/4/sr+3dA==} + + '@aws-crypto/crc32c@3.0.0': + resolution: {integrity: sha512-ENNPPManmnVJ4BTXlOjAgD7URidbAznURqD0KvfREyc4o20DPYdEldU1f5cQ7Jbj0CJJSPaMIk/9ZshdB3210w==} '@aws-crypto/ie11-detection@3.0.0': resolution: {integrity: sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==} + '@aws-crypto/sha1-browser@3.0.0': + resolution: {integrity: sha512-NJth5c997GLHs6nOYTzFKTbYdMNA6/1XlKVgnZoaZcQ7z7UJlOgj2JdbHE8tiYLS3fzXNCguct77SPGat2raSw==} + '@aws-crypto/sha256-browser@3.0.0': resolution: {integrity: sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==} @@ -169,22 +178,42 @@ packages: resolution: {integrity: sha512-SgfR1LLZWT1NrNOB968OKC8RAbaQUFG4V1eDjAeNjtuqC7iAlY9Ogrl824XJY4muz4ErVAga7A+Xn9QTOSSTBQ==} engines: {node: '>=16.0.0'} + '@aws-sdk/client-s3@3.583.0': + resolution: {integrity: sha512-pS7wncugSuIQ8RgtRIE9Dystdmd3mMnjfjiO1iA1UhGXkyAgoJzQ4jH0r+5X+eWmYHYQcfy9fUQXT2gqV3t9GA==} + engines: {node: '>=16.0.0'} + '@aws-sdk/client-sso-oidc@3.576.0': resolution: {integrity: sha512-6U8933O9h6iMnQDpH3OtFhS3G3FVttYZUqTpC2T0FnSSX7zgG0GnlxdQiyZh1j1aFrEB8bFw/RSmxPcMJJuSlQ==} engines: {node: '>=16.0.0'} + '@aws-sdk/client-sso-oidc@3.583.0': + resolution: {integrity: sha512-LO3wmrFXPi2kNE46lD1XATfRrvdNxXd4DlTFouoWmr7lvqoUkcbmtkV2r/XChZA2z0HiDauphC1e8b8laJVeSg==} + engines: {node: '>=16.0.0'} + '@aws-sdk/client-sso@3.576.0': resolution: {integrity: sha512-xbKE4bf3HYvkdrvn5kkpUdcoi3mg7uDLLkSbGaj0tzW3vNSdx9qLrCMuwfV7KrhVKWwx+lnw/2LGuCR2B5y0IA==} engines: {node: '>=16.0.0'} + '@aws-sdk/client-sso@3.583.0': + resolution: {integrity: sha512-FNJ2MmiBtZZwgkj4+GLVrzqwmD6D8FBptrFZk7PnGkSf7v1Q8txYNI6gY938RRhYJ4lBW4cNbhPvWoDxAl90Hw==} + engines: {node: '>=16.0.0'} + '@aws-sdk/client-sts@3.576.0': resolution: {integrity: sha512-GHqqfRcUW/nGE4lpRafNKRxi4K7+SaQjYLjQnTEioUhr+w1IT/fFb3rGZYHHnN9ZCzbnrBULRC+1XOPIQWyLsw==} engines: {node: '>=16.0.0'} + '@aws-sdk/client-sts@3.583.0': + resolution: {integrity: sha512-xDMxiemPDWr9dY2Q4AyixkRnk/hvS6fs6OWxuVCz1WO47YhaAfOsEGAgQMgDLLaOfj/oLU5D14uTNBEPGh4rBA==} + engines: {node: '>=16.0.0'} + '@aws-sdk/core@3.576.0': resolution: {integrity: sha512-KDvDlbeipSTIf+ffKtTg1m419TK7s9mZSWC8bvuZ9qx6/sjQFOXIKOVqyuli6DnfxGbvRcwoRuY99OcCH1N/0w==} engines: {node: '>=16.0.0'} + '@aws-sdk/core@3.582.0': + resolution: {integrity: sha512-ofmD96IQc9g1dbyqlCyxu5fCG7kIl9p1NoN5+vGBUyLdbmPCV3Pdg99nRHYEJuv2MgGx5AUFGDPMHcqbJpnZIw==} + engines: {node: '>=16.0.0'} + '@aws-sdk/credential-provider-cognito-identity@3.576.0': resolution: {integrity: sha512-pi5gY+VhuQk8PUskxSonRS7IZk82jbhpfLBFnbFdNDUpBPSrHAfi1AukqAgbbiB/MfJTKaI/rNg3VfwyOzPmJw==} engines: {node: '>=16.0.0'} @@ -193,72 +222,174 @@ packages: resolution: {integrity: sha512-YTgpq3rvYBXzW6OTDB00cE79evQtss/lz2GlJXgqqVXD0m7i77hGA8zb44VevP/WxtDaiSW7SSjuu8VCBGsg4g==} engines: {node: '>=16.0.0'} + '@aws-sdk/credential-provider-env@3.577.0': + resolution: {integrity: sha512-Jxu255j0gToMGEiqufP8ZtKI8HW90lOLjwJ3LrdlD/NLsAY0tOQf1fWc53u28hWmmNGMxmCrL2p66IOgMDhDUw==} + engines: {node: '>=16.0.0'} + '@aws-sdk/credential-provider-http@3.575.0': resolution: {integrity: sha512-xQfVmYI+9KqRvhWY8fyElnpcVUBBUgi/Hoji3oU6WLrUjrX98k93He7gKDQSyHf7ykMLUAJYWwsV4AjQ2j6njA==} engines: {node: '>=16.0.0'} + '@aws-sdk/credential-provider-http@3.582.0': + resolution: {integrity: sha512-kGOUKw5ryPkDIYB69PjK3SicVLTbWB06ouFN2W1EvqUJpkQGPAUGzYcomKtt3mJaCTf/1kfoaHwARAl6KKSP8Q==} + engines: {node: '>=16.0.0'} + '@aws-sdk/credential-provider-ini@3.576.0': resolution: {integrity: sha512-AwH/+29SbjhxGJVYhFn6+7r0MZ7TjJClySTJzuOoyjJGPWAifTdEuFkyOw8Bs9fEvbJ0ExgFxSaa445fO56kmg==} engines: {node: '>=16.0.0'} peerDependencies: '@aws-sdk/client-sts': 3.576.0 + '@aws-sdk/credential-provider-ini@3.583.0': + resolution: {integrity: sha512-8I0oWNg/yps6ctjhEeL/qJ9BIa/+xXP7RPDQqFKZ2zBkWbmLLOoMWXRvl8uKUBD6qCe+DGmcu9skfVXeXSesEQ==} + engines: {node: '>=16.0.0'} + peerDependencies: + '@aws-sdk/client-sts': ^3.583.0 + '@aws-sdk/credential-provider-node@3.576.0': resolution: {integrity: sha512-Ad244g3TJnfY1QFlZ+cywD6kgGD2yj+qg47Ryt50Y42bwmNuuqSpF9n0C71opRR68Rcl7ksOxixCJomWqpcHbA==} engines: {node: '>=16.0.0'} + '@aws-sdk/credential-provider-node@3.583.0': + resolution: {integrity: sha512-yBNypBXny7zJH85SzxDj8s1mbLXv9c/Vbq0qR3R3POj2idZ6ywB/qlIRC1XwBuv49Wvg8kA1wKXk3K3jrpcVIw==} + engines: {node: '>=16.0.0'} + '@aws-sdk/credential-provider-process@3.575.0': resolution: {integrity: sha512-2/5NJV7MZysKglqJSQ/O8OELNcwLcH3xknabL9NagtzB7RNB2p1AUXR0UlTey9sSDLL4oCmNa/+unYuglW/Ahg==} engines: {node: '>=16.0.0'} + '@aws-sdk/credential-provider-process@3.577.0': + resolution: {integrity: sha512-Gin6BWtOiXxIgITrJ3Nwc+Y2P1uVT6huYR4EcbA/DJUPWyO0n9y5UFLewPvVbLkRn15JeEqErBLUrHclkiOKtw==} + engines: {node: '>=16.0.0'} + '@aws-sdk/credential-provider-sso@3.576.0': resolution: {integrity: sha512-1F17issiqf+mSG7KJ+D0SfZRYBZPAmRcA5+VHDUuMLozhh8tyYMe0mwzOt9IKc7ocrJA+2Wp7l7sg3h6aanedQ==} engines: {node: '>=16.0.0'} + '@aws-sdk/credential-provider-sso@3.583.0': + resolution: {integrity: sha512-G/1EvL9tBezSiU+06tG4K/kOvFfPjnheT4JSXqjPM7+vjKzgp2jxp1J9MMd69zs4jVWon932zMeGgjrCplzMEg==} + engines: {node: '>=16.0.0'} + '@aws-sdk/credential-provider-web-identity@3.575.0': resolution: {integrity: sha512-QcvVH7wpvpFRXGAGgCBfQeiF/ptD0NJ+Hrc8dDYfPGhFeZ0EoVQBYNphLi25xe7JZ+XbaqCKrURHZtr4fAEOJw==} engines: {node: '>=16.0.0'} peerDependencies: '@aws-sdk/client-sts': 3.575.0 + '@aws-sdk/credential-provider-web-identity@3.577.0': + resolution: {integrity: sha512-ZGHGNRaCtJJmszb9UTnC7izNCtRUttdPlLdMkh41KPS32vfdrBDHs1JrpbZijItRj1xKuOXsiYSXLAaHGcLh8Q==} + engines: {node: '>=16.0.0'} + peerDependencies: + '@aws-sdk/client-sts': ^3.577.0 + '@aws-sdk/credential-providers@3.576.0': resolution: {integrity: sha512-OoYyhSpxshmijD4aG/wDJIciFTh1DoNKyVyLaMGaJkE9nblArRCO+z0DEg9Yqlo8tLG0HLiTAJbyLxdQryKV5Q==} engines: {node: '>=16.0.0'} + '@aws-sdk/middleware-bucket-endpoint@3.577.0': + resolution: {integrity: sha512-twlkNX2VofM6kHXzDEiJOiYCc9tVABe5cbyxMArRWscIsCWG9mamPhC77ezG4XsN9dFEwVdxEYD5Crpm/5EUiw==} + engines: {node: '>=16.0.0'} + + '@aws-sdk/middleware-expect-continue@3.577.0': + resolution: {integrity: sha512-6dPp8Tv4F0of4un5IAyG6q++GrRrNQQ4P2NAMB1W0VO4JoEu1C8GievbbDLi88TFIFmtKpnHB0ODCzwnoe8JsA==} + engines: {node: '>=16.0.0'} + + '@aws-sdk/middleware-flexible-checksums@3.577.0': + resolution: {integrity: sha512-IHAUEipIfagjw92LV8SOSBiCF7ZnqfHcw14IkcZW2/mfrCy1Fh/k40MoS/t3Tro2tQ91rgQPwUoSgB/QCi2Org==} + engines: {node: '>=16.0.0'} + '@aws-sdk/middleware-host-header@3.575.0': resolution: {integrity: sha512-V2WoLBiXNCc4rIWZt6FUcP4TN0Vk02A9PPCBWkTfyOooiqfq+WZmZjRRBpwl1+5UsvARslrKWF0VzheMRXPJLQ==} engines: {node: '>=16.0.0'} + '@aws-sdk/middleware-host-header@3.577.0': + resolution: {integrity: sha512-9ca5MJz455CODIVXs0/sWmJm7t3QO4EUa1zf8pE8grLpzf0J94bz/skDWm37Pli13T3WaAQBHCTiH2gUVfCsWg==} + engines: {node: '>=16.0.0'} + + '@aws-sdk/middleware-location-constraint@3.577.0': + resolution: {integrity: sha512-DKPTD2D2s+t2QUo/IXYtVa/6Un8GZ+phSTBkyBNx2kfZz4Kwavhl/JJzSqTV3GfCXkVdFu7CrjoX7BZ6qWeTUA==} + engines: {node: '>=16.0.0'} + '@aws-sdk/middleware-logger@3.575.0': resolution: {integrity: sha512-7DEKx9Z11Maaye7FfhYtC8rjbM/PcFcMO2N4QEAfypcgWCj+w4gseE2OGdfAH9OFDoFc6YvLp53v16vbPjzQSg==} engines: {node: '>=16.0.0'} + '@aws-sdk/middleware-logger@3.577.0': + resolution: {integrity: sha512-aPFGpGjTZcJYk+24bg7jT4XdIp42mFXSuPt49lw5KygefLyJM/sB0bKKqPYYivW0rcuZ9brQ58eZUNthrzYAvg==} + engines: {node: '>=16.0.0'} + '@aws-sdk/middleware-recursion-detection@3.575.0': resolution: {integrity: sha512-ri89ldRFos6KZDGaknWPS2XPO9qr+gZ7+mPaoU8YkSM1W4uKqtnUSONyc+O3CFGJrqReuGHhRq0l2Sld0bjwOw==} engines: {node: '>=16.0.0'} + '@aws-sdk/middleware-recursion-detection@3.577.0': + resolution: {integrity: sha512-pn3ZVEd2iobKJlR3H+bDilHjgRnNrQ6HMmK9ZzZw89Ckn3Dcbv48xOv4RJvu0aU8SDLl/SNCxppKjeLDTPGBNA==} + engines: {node: '>=16.0.0'} + + '@aws-sdk/middleware-sdk-s3@3.582.0': + resolution: {integrity: sha512-PJqQpLoLaZPRI4L/XZUeHkd9UVK8VAr9R38wv0osGeMTvzD9iwzzk0I2TtBqFda/5xEB1YgVYZwyqvmStXmttg==} + engines: {node: '>=16.0.0'} + + '@aws-sdk/middleware-signing@3.577.0': + resolution: {integrity: sha512-QS/dh3+NqZbXtY0j/DZ867ogP413pG5cFGqBy9OeOhDMsolcwLrQbi0S0c621dc1QNq+er9ffaMhZ/aPkyXXIg==} + engines: {node: '>=16.0.0'} + + '@aws-sdk/middleware-ssec@3.577.0': + resolution: {integrity: sha512-i2BPJR+rp8xmRVIGc0h1kDRFcM2J9GnClqqpc+NLSjmYadlcg4mPklisz9HzwFVcRPJ5XcGf3U4BYs5G8+iTyg==} + engines: {node: '>=16.0.0'} + '@aws-sdk/middleware-user-agent@3.575.0': resolution: {integrity: sha512-fWlr4RfrUNS2R3PgP+WsoMYORAgv/47Lp0J0fb3dXO1YvdczNWddRbFSUX2MQxM/y9XFfQPLpLgzluhoL3Cjeg==} engines: {node: '>=16.0.0'} + '@aws-sdk/middleware-user-agent@3.583.0': + resolution: {integrity: sha512-xVNXXXDWvBVI/AeVtSdA9SVumqxiZaESk/JpUn9GMkmtTKfter0Cweap+1iQ9j8bRAO0vNhmIkbcvdB1S4WVUw==} + engines: {node: '>=16.0.0'} + '@aws-sdk/region-config-resolver@3.575.0': resolution: {integrity: sha512-sBJKwTWKCWu9y8FzXIijYGwkKr3tDkPXM7BylToe6W+tGkp4OirV4iXrWA9zReNwTTepoxHufofqjGK9BtcI8g==} engines: {node: '>=16.0.0'} + '@aws-sdk/region-config-resolver@3.577.0': + resolution: {integrity: sha512-4ChCFACNwzqx/xjg3zgFcW8Ali6R9C95cFECKWT/7CUM1D0MGvkclSH2cLarmHCmJgU6onKkJroFtWp0kHhgyg==} + engines: {node: '>=16.0.0'} + + '@aws-sdk/signature-v4-multi-region@3.582.0': + resolution: {integrity: sha512-aFCOjjNqEX2l+V8QjOWy5F7CtHIC/RlYdBuv3No6yxn+pMvVUUe6zdMk2yHWcudVpHWsyvcZzAUBliAPeFLPsQ==} + engines: {node: '>=16.0.0'} + '@aws-sdk/token-providers@3.575.0': resolution: {integrity: sha512-EPNDPQoQkjKqn4D2t70qVzbfdtlaAy9KBdG58qD1yNWVxq8Rh/lXdwmB+aE2PSahtyfVikZdCRoZiFzxDh5IUA==} engines: {node: '>=16.0.0'} peerDependencies: '@aws-sdk/client-sso-oidc': 3.575.0 + '@aws-sdk/token-providers@3.577.0': + resolution: {integrity: sha512-0CkIZpcC3DNQJQ1hDjm2bdSy/Xjs7Ny5YvSsacasGOkNfk+FdkiQy6N67bZX3Zbc9KIx+Nz4bu3iDeNSNplnnQ==} + engines: {node: '>=16.0.0'} + peerDependencies: + '@aws-sdk/client-sso-oidc': ^3.577.0 + '@aws-sdk/types@3.575.0': resolution: {integrity: sha512-XrnolQGs0wXxdgNudirR14OgNOarH7WUif38+2Pd4onZH+L7XoILem0EgA1tRpgFpw2pFHlZCNaAHDNSBEal7g==} engines: {node: '>=16.0.0'} + '@aws-sdk/types@3.577.0': + resolution: {integrity: sha512-FT2JZES3wBKN/alfmhlo+3ZOq/XJ0C7QOZcDNrpKjB0kqYoKjhVKZ/Hx6ArR0czkKfHzBBEs6y40ebIHx2nSmA==} + engines: {node: '>=16.0.0'} + + '@aws-sdk/util-arn-parser@3.568.0': + resolution: {integrity: sha512-XUKJWWo+KOB7fbnPP0+g/o5Ulku/X53t7i/h+sPHr5xxYTJJ9CYnbToo95mzxe7xWvkLrsNtJ8L+MnNn9INs2w==} + engines: {node: '>=16.0.0'} + '@aws-sdk/util-endpoints@3.575.0': resolution: {integrity: sha512-wC5x+V6w3kRlR6X6XVINsAPDYG+Tzs3Wthlw+YLtjuPODUNZIQAqsABHahxnekFyAvse+1929Hwo+CaL+BHZGA==} engines: {node: '>=16.0.0'} + '@aws-sdk/util-endpoints@3.583.0': + resolution: {integrity: sha512-ZC9mb2jq6BFXPYsUsD2tmYcnlmd+9PGNwnFNn8jk4abna5Jjk2wDknN81ybktmBR5ttN9W8ugmktuKtvAMIDCQ==} + engines: {node: '>=16.0.0'} + '@aws-sdk/util-locate-window@3.568.0': resolution: {integrity: sha512-3nh4TINkXYr+H41QaPelCceEB2FXP3fxp93YZXB/kqJvX0U9j0N0Uk45gvsjmEPzG8XxkPEeLIfT2I1M7A6Lig==} engines: {node: '>=16.0.0'} @@ -266,6 +397,9 @@ packages: '@aws-sdk/util-user-agent-browser@3.575.0': resolution: {integrity: sha512-iADonXyaXgwvC4T0qRuDWCdKInz82GX2cyezq/oqVlL8bPY7HD8jwZZruuJdq5tkaJi1EhbO4+f1ksZqOiZKvQ==} + '@aws-sdk/util-user-agent-browser@3.577.0': + resolution: {integrity: sha512-zEAzHgR6HWpZOH7xFgeJLc6/CzMcx4nxeQolZxVZoB5pPaJd3CjyRhZN0xXeZB0XIRCWmb4yJBgyiugXLNMkLA==} + '@aws-sdk/util-user-agent-node@3.575.0': resolution: {integrity: sha512-kwzvBfA0LoILDOFS6BV8uOkksBHrYulP6kNXegB5eZnDSNia5DbBsXqxQ/HknNF5a429SWQw2aaQJEgQvZB1VA==} engines: {node: '>=16.0.0'} @@ -275,9 +409,22 @@ packages: aws-crt: optional: true + '@aws-sdk/util-user-agent-node@3.577.0': + resolution: {integrity: sha512-XqvtFjbSMtycZTWVwDe8DRWovuoMbA54nhUoZwVU6rW9OSD6NZWGR512BUGHFaWzW0Wg8++Dj10FrKTG2XtqfA==} + engines: {node: '>=16.0.0'} + peerDependencies: + aws-crt: '>=1.0.0' + peerDependenciesMeta: + aws-crt: + optional: true + '@aws-sdk/util-utf8-browser@3.259.0': resolution: {integrity: sha512-UvFa/vR+e19XookZF8RzFZBrw2EUkQWxiBW0yYQAhvk3C+QVGl0H3ouca8LDBlBfQKXwmW3huo/59H8rwb1wJw==} + '@aws-sdk/xml-builder@3.575.0': + resolution: {integrity: sha512-cWgAwmbFYNCFzPwxL705+lWps0F3ZvOckufd2KKoEZUmtpVw9/txUXNrPySUXSmRTSRhoatIMABNfStWR043bQ==} + engines: {node: '>=16.0.0'} + '@babel/code-frame@7.24.2': resolution: {integrity: sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==} engines: {node: '>=6.9.0'} @@ -771,6 +918,12 @@ packages: resolution: {integrity: sha512-p6GlFGBt9K4MYLu72YuJ523NVR4A8oHlC5M2JO6OmQqN8kAc/uh1JqLE+FizTokrSJGg0CSvC+BrsmGzKtsZKA==} engines: {node: '>=16.0.0'} + '@smithy/chunked-blob-reader-native@3.0.0': + resolution: {integrity: sha512-VDkpCYW+peSuM4zJip5WDfqvg2Mo/e8yxOv3VF1m11y7B8KKMKVFtmZWDe36Fvk8rGuWrPZHHXZ7rR7uM5yWyg==} + + '@smithy/chunked-blob-reader@3.0.0': + resolution: {integrity: sha512-sbnURCwjF0gSToGlsBiAmd1lRCmSn72nu9axfJu5lIx6RUEgHu6GwTMbqCdhQSi0Pumcm5vFxsi9XWXb2mTaoA==} + '@smithy/config-resolver@3.0.0': resolution: {integrity: sha512-2GzOfADwYLQugYkKQhIyZyQlM05K+tMKvRnc6eFfZcpJGRfKoMUMYdPlBKmqHwQFXQKBrGV6cxL9oymWgDzvFw==} engines: {node: '>=16.0.0'} @@ -783,13 +936,39 @@ packages: resolution: {integrity: sha512-lfmBiFQcA3FsDAPxNfY0L7CawcWtbyWsBOHo34nF095728JLkBX4Y9q/VPPE2r7fqMVK+drmDigqE2/SSQeVRA==} engines: {node: '>=16.0.0'} + '@smithy/eventstream-codec@3.0.0': + resolution: {integrity: sha512-PUtyEA0Oik50SaEFCZ0WPVtF9tz/teze2fDptW6WRXl+RrEenH8UbEjudOz8iakiMl3lE3lCVqYf2Y+znL8QFQ==} + + '@smithy/eventstream-serde-browser@3.0.0': + resolution: {integrity: sha512-NB7AFiPN4NxP/YCAnrvYR18z2/ZsiHiF7VtG30gshO9GbFrIb1rC8ep4NGpJSWrz6P64uhPXeo4M0UsCLnZKqw==} + engines: {node: '>=16.0.0'} + + '@smithy/eventstream-serde-config-resolver@3.0.0': + resolution: {integrity: sha512-RUQG3vQ3LX7peqqHAbmayhgrF5aTilPnazinaSGF1P0+tgM3vvIRWPHmlLIz2qFqB9LqFIxditxc8O2Z6psrRw==} + engines: {node: '>=16.0.0'} + + '@smithy/eventstream-serde-node@3.0.0': + resolution: {integrity: sha512-baRPdMBDMBExZXIUAoPGm/hntixjt/VFpU6+VmCyiYJYzRHRxoaI1MN+5XE+hIS8AJ2GCHLMFEIOLzq9xx1EgQ==} + engines: {node: '>=16.0.0'} + + '@smithy/eventstream-serde-universal@3.0.0': + resolution: {integrity: sha512-HNFfShmotWGeAoW4ujP8meV9BZavcpmerDbPIjkJbxKbN8RsUcpRQ/2OyIxWNxXNH2GWCAxuSB7ynmIGJlQ3Dw==} + engines: {node: '>=16.0.0'} + '@smithy/fetch-http-handler@3.0.1': resolution: {integrity: sha512-uaH74i5BDj+rBwoQaXioKpI0SHBJFtOVwzrCpxZxphOW0ki5jhj7dXvDMYM2IJem8TpdFvS2iC08sjOblfFGFg==} + '@smithy/hash-blob-browser@3.0.0': + resolution: {integrity: sha512-/Wbpdg+bwJvW7lxR/zpWAc1/x/YkcqguuF2bAzkJrvXriZu1vm8r+PUdE4syiVwQg7PPR2dXpi3CLBb9qRDaVQ==} + '@smithy/hash-node@3.0.0': resolution: {integrity: sha512-84qXstNemP3XS5jcof0el6+bDfjzuvhJPQTEfro3lgtbCtKgzPm3MgiS6ehXVPjeQ5+JS0HqmTz8f/RYfzHVxw==} engines: {node: '>=16.0.0'} + '@smithy/hash-stream-node@3.0.0': + resolution: {integrity: sha512-J0i7de+EgXDEGITD4fxzmMX8CyCNETTIRXlxjMiNUvvu76Xn3GJ31wQR85ynlPk2wI1lqoknAFJaD1fiNDlbIA==} + engines: {node: '>=16.0.0'} + '@smithy/invalid-dependency@3.0.0': resolution: {integrity: sha512-F6wBBaEFgJzj0s4KUlliIGPmqXemwP6EavgvDqYwCH40O5Xr2iMHvS8todmGVZtuJCorBkXsYLyTu4PuizVq5g==} @@ -797,6 +976,9 @@ packages: resolution: {integrity: sha512-+Fsu6Q6C4RSJiy81Y8eApjEB5gVtM+oFKTffg+jSuwtvomJJrhUJBu2zS8wjXSgH/g1MKEWrzyChTBe6clb5FQ==} engines: {node: '>=16.0.0'} + '@smithy/md5-js@3.0.0': + resolution: {integrity: sha512-Tm0vrrVzjlD+6RCQTx7D3Ls58S3FUH1ZCtU1MIh/qQmaOo1H9lMN2as6CikcEwgattnA9SURSdoJJ27xMcEfMA==} + '@smithy/middleware-compression@3.0.0': resolution: {integrity: sha512-ZOIYISXy3cNyy/yddpmVrpo/MR7wPqPgzwwuR9ZpQrTx0PnzLOzESFTj+Vg0Ev6uh/7XhoCbOnJukrq5y48TAw==} engines: {node: '>=16.0.0'} @@ -1003,6 +1185,12 @@ packages: '@types/semver@7.5.8': resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==} + '@types/sinon@10.0.20': + resolution: {integrity: sha512-2APKKruFNCAZgx3daAyACGzWuJ028VVCUDk6o2rw/Z4PXT0ogwdV4KUegW0MwVs0Zu59auPXbbuBJHF12Sx1Eg==} + + '@types/sinonjs__fake-timers@8.1.5': + resolution: {integrity: sha512-mQkU2jY8jJEF7YHjHvsQO8+3ughTL1mcnn96igfhONmR+fUPSKIkefQYpSe8bsly2Ep7oQbn/6VG5/9/0qcArQ==} + '@types/stack-utils@2.0.3': resolution: {integrity: sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==} @@ -1193,18 +1381,13 @@ packages: - table - yaml - aws-cdk@2.141.0: - resolution: {integrity: sha512-RM9uDiETBEKCHemItaRGVjOLwoZ5iqXnejpyXY7+YF75c2c0Ui7HSZI8QD0stDg3S/2UbLcKv2RA9dBsjrWUGA==} + aws-cdk@2.143.0: + resolution: {integrity: sha512-lGnmedkE+slsl2xr0Vi516gKieOmE0BHeImdcALy5JKoeLdObDWiHLkMtLWm0Fil7h7cCEHqpzS+hY3emqjTOw==} engines: {node: '>= 14.15.0'} hasBin: true - aws-sdk-mock@5.9.0: - resolution: {integrity: sha512-kTUXaQQ1CTn3Cwxa2g1XqtCDq+FTEbPl/zgaYCok357f7gbWkeYEegqa5RziTRb11oNIUHrLp9DSHwZT3XdBkA==} - engines: {node: '>=18.0.0'} - - aws-sdk@2.1620.0: - resolution: {integrity: sha512-G+mBI/VzuFpobBe+pu++ELc3YXSx2UzBTiLmQuZIQDi2+9VEU+/8QFAH45SI8PRPDRCcn4NMK4Euqs0uCyObvQ==} - engines: {node: '>= 10.0.0'} + aws-sdk-client-mock@4.0.0: + resolution: {integrity: sha512-/rxo+pzCFaUozK7TyCqo3GYwzdBGn9Ai6EsT8ytXDoUXlD/Q5hw9hj2lOkCAyubECzGJFHMmQg9GZ1GOGlN/qQ==} babel-jest@29.7.0: resolution: {integrity: sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==} @@ -1234,9 +1417,6 @@ packages: balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} - base64-js@1.5.1: - resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} - bowser@2.11.0: resolution: {integrity: sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==} @@ -1265,9 +1445,6 @@ packages: buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} - buffer@4.9.2: - resolution: {integrity: sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==} - call-bind@1.0.7: resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==} engines: {node: '>= 0.4'} @@ -1361,7 +1538,7 @@ packages: resolution: {integrity: sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==} concat-map@0.0.1: - resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + resolution: {integrity: sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=} concat-stream@2.0.0: resolution: {integrity: sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==} @@ -1760,10 +1937,6 @@ packages: eventemitter3@4.0.7: resolution: {integrity: sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==} - events@1.1.1: - resolution: {integrity: sha512-kEcvvCBByWXGnZy6JUlgAp2gBIUjfCAV6P6TgT1/aaQKcmuAEC4OZTV1I4EWQLz2gxZw76atuVyvHhTxvi0Flw==} - engines: {node: '>=0.4.x'} - execa@5.1.1: resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} engines: {node: '>=10'} @@ -1943,10 +2116,12 @@ packages: glob@7.2.3: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + deprecated: Glob versions prior to v9 are no longer supported glob@8.1.0: resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} engines: {node: '>=12'} + deprecated: Glob versions prior to v9 are no longer supported globals@11.12.0: resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} @@ -2026,9 +2201,6 @@ packages: resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} engines: {node: '>=10.17.0'} - ieee754@1.1.13: - resolution: {integrity: sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==} - ignore@5.3.1: resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==} engines: {node: '>= 4'} @@ -2052,6 +2224,7 @@ packages: inflight@1.0.6: resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} + deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. inherits@2.0.4: resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} @@ -2067,10 +2240,6 @@ packages: resolution: {integrity: sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==} engines: {node: '>= 0.10'} - is-arguments@1.1.1: - resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==} - engines: {node: '>= 0.4'} - is-array-buffer@3.0.4: resolution: {integrity: sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==} engines: {node: '>= 0.4'} @@ -2112,10 +2281,6 @@ packages: resolution: {integrity: sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==} engines: {node: '>=6'} - is-generator-function@1.0.10: - resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==} - engines: {node: '>= 0.4'} - is-glob@4.0.3: resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} engines: {node: '>=0.10.0'} @@ -2341,10 +2506,6 @@ packages: node-notifier: optional: true - jmespath@0.16.0: - resolution: {integrity: sha512-9FzQjJ7MATs1tSpnco1K6ayiYE3figslrXA72G2HQ/n76RzvYlofyi5QM+iX4YRs/pu3yzxlVQSST23+dMDknw==} - engines: {node: '>= 0.6.0'} - js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} @@ -2836,9 +2997,6 @@ packages: resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} engines: {node: '>= 6'} - punycode@1.3.2: - resolution: {integrity: sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==} - punycode@2.3.1: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} @@ -2850,11 +3008,6 @@ packages: resolution: {integrity: sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==} engines: {node: '>=0.6.0', teleport: '>=0.2.0'} - querystring@0.2.0: - resolution: {integrity: sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==} - engines: {node: '>=0.4.x'} - deprecated: The querystring API is considered Legacy. new code should use the URLSearchParams API instead. - queue-microtask@1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} @@ -2940,6 +3093,7 @@ packages: rimraf@3.0.2: resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} + deprecated: Rimraf versions prior to v4 are no longer supported hasBin: true run-parallel@1.2.0: @@ -2959,9 +3113,6 @@ packages: resolution: {integrity: sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==} engines: {node: '>= 0.4'} - sax@1.2.1: - resolution: {integrity: sha512-8I2a3LovHTOpm7NV5yOyO8IHqgVsfK4+UuySrXU8YXkSRX7k6hCV9b3HrkKCr3nMpgj+0bmocaJJWpvp1oc7ZA==} - semver-intersect@1.5.0: resolution: {integrity: sha512-BDjWX7yCC0haX4W/zrnV2JaMpVirwaEkGOBmgRQtH++F1N3xl9v7k9H44xfTqwl+yLNNSbMKosoVSTIiJVQ2Pw==} @@ -3009,9 +3160,8 @@ packages: signal-exit@3.0.7: resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} - sinon@17.0.2: - resolution: {integrity: sha512-uihLiaB9FhzesElPDFZA7hDcNABzsVHwr3YfmM9sBllVwab3l0ltGlRV1XhpNfIacNDLGD1QRZNLs5nU5+hTuA==} - deprecated: There + sinon@16.1.3: + resolution: {integrity: sha512-mjnWWeyxcAf9nC0bXcPmiDut+oE8HYridTNzBbF98AYVLmWwGRp2ISEpyhYflG1ifILT+eNn3BmKUJPxjXUPlA==} sisteransi@1.0.5: resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} @@ -3192,10 +3342,6 @@ packages: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} - traverse@0.6.9: - resolution: {integrity: sha512-7bBrcF+/LQzSgFmT0X5YclVqQxtv7TDJ1f8Wj7ibBu/U6BMLeOpUxuZjV7rMc44UtKxlnMFigdhFAIszSX1DMg==} - engines: {node: '>= 0.4'} - trim-newlines@3.0.1: resolution: {integrity: sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==} engines: {node: '>=8'} @@ -3294,10 +3440,6 @@ packages: resolution: {integrity: sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==} engines: {node: '>= 0.4'} - typedarray.prototype.slice@1.0.3: - resolution: {integrity: sha512-8WbVAQAUlENo1q3c3zZYuy5k9VzBQvp8AX9WOtbvyWlLM1v5JaSRmjubLjzHF4JFtptjH/5c/i95yaElvcjC0A==} - engines: {node: '>= 0.4'} - typedarray@0.0.6: resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==} @@ -3306,8 +3448,8 @@ packages: engines: {node: '>=14.17'} hasBin: true - typescript@5.5.0-dev.20240515: - resolution: {integrity: sha512-l2Rtvs3xAcEVgF5wOML5AASB79iMHrw9RGXEMY/oeV11IwP0nxOtB1Q5fLvmdPkbsP0PKeTfvd46sOWRATqAiA==} + typescript@5.5.0-dev.20240528: + resolution: {integrity: sha512-lF9CgEwbCTMnq59hkXeSQOzUmqSxkhlTk5DuPKenvpyEVd7r1uH8q8EAgPaKhp5SO5m764uWJvE4MpvyXDKuJw==} engines: {node: '>=14.17'} hasBin: true @@ -3339,19 +3481,9 @@ packages: uri-js@4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} - url@0.10.3: - resolution: {integrity: sha512-hzSUW2q06EqL1gKM/a+obYHLIO6ct2hwPuviqTTOcfFVc61UbfJ2Q32+uGL/HCPxKqrdGB5QUwIe7UqlDgwsOQ==} - util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} - util@0.12.5: - resolution: {integrity: sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==} - - uuid@8.0.0: - resolution: {integrity: sha512-jOXGuXZAWdsTH7eZLtyXMqUb9EcWMGZNbL9YcGBJl4MH4nrxHmZJhEHvyLFrkxo+28uLb/NYRcStH48fnD0Vzw==} - hasBin: true - uuid@8.3.2: resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==} hasBin: true @@ -3406,17 +3538,9 @@ packages: resolution: {integrity: sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==} engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} - xml2js@0.6.2: - resolution: {integrity: sha512-T4rieHaC1EXcES0Kxxj4JWgaUQHDk+qwHcYOCFHfiwKz7tOVPLq7Hjq9dM1WCMhylqMEfP7hMcOIChvotiZegA==} - engines: {node: '>=4.0.0'} - xml@1.0.1: resolution: {integrity: sha512-huCv9IH9Tcf95zuYCsQraZtWnJvBtLVE0QHMOs8bWyZAFZNDcYjsPq1nEx8jKA9y+Beo9v+7OBPRisQTjinQMw==} - xmlbuilder@11.0.1: - resolution: {integrity: sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==} - engines: {node: '>=4.0'} - xmlbuilder@15.1.1: resolution: {integrity: sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==} engines: {node: '>=8.0'} @@ -3472,38 +3596,60 @@ snapshots: '@aws-cdk/asset-node-proxy-agent-v6@2.0.3': {} - '@aws-cdk/aws-service-spec@0.1.1': + '@aws-cdk/aws-service-spec@0.1.3': dependencies: - '@aws-cdk/service-spec-types': 0.0.69 + '@aws-cdk/service-spec-types': 0.0.71 '@cdklabs/tskb': 0.0.3 - '@aws-cdk/integ-runner@2.141.0-alpha.0': + '@aws-cdk/integ-runner@2.143.0-alpha.0': dependencies: - '@aws-cdk/aws-service-spec': 0.1.1 - aws-cdk: 2.141.0 + '@aws-cdk/aws-service-spec': 0.1.3 + aws-cdk: 2.143.0 optionalDependencies: fsevents: 2.3.2 - '@aws-cdk/integ-tests-alpha@2.141.0-alpha.0(aws-cdk-lib@2.105.0(constructs@10.0.5))(constructs@10.0.5)': + '@aws-cdk/integ-tests-alpha@2.143.0-alpha.0(aws-cdk-lib@2.105.0(constructs@10.0.5))(constructs@10.0.5)': dependencies: aws-cdk-lib: 2.105.0(constructs@10.0.5) constructs: 10.0.5 - '@aws-cdk/service-spec-types@0.0.69': + '@aws-cdk/service-spec-types@0.0.71': dependencies: '@cdklabs/tskb': 0.0.3 + '@aws-crypto/crc32@3.0.0': + dependencies: + '@aws-crypto/util': 3.0.0 + '@aws-sdk/types': 3.577.0 + tslib: 1.14.1 + + '@aws-crypto/crc32c@3.0.0': + dependencies: + '@aws-crypto/util': 3.0.0 + '@aws-sdk/types': 3.577.0 + tslib: 1.14.1 + '@aws-crypto/ie11-detection@3.0.0': dependencies: tslib: 1.14.1 + '@aws-crypto/sha1-browser@3.0.0': + dependencies: + '@aws-crypto/ie11-detection': 3.0.0 + '@aws-crypto/supports-web-crypto': 3.0.0 + '@aws-crypto/util': 3.0.0 + '@aws-sdk/types': 3.577.0 + '@aws-sdk/util-locate-window': 3.568.0 + '@aws-sdk/util-utf8-browser': 3.259.0 + tslib: 1.14.1 + '@aws-crypto/sha256-browser@3.0.0': dependencies: '@aws-crypto/ie11-detection': 3.0.0 '@aws-crypto/sha256-js': 3.0.0 '@aws-crypto/supports-web-crypto': 3.0.0 '@aws-crypto/util': 3.0.0 - '@aws-sdk/types': 3.575.0 + '@aws-sdk/types': 3.577.0 '@aws-sdk/util-locate-window': 3.568.0 '@aws-sdk/util-utf8-browser': 3.259.0 tslib: 1.14.1 @@ -3511,7 +3657,7 @@ snapshots: '@aws-crypto/sha256-js@3.0.0': dependencies: '@aws-crypto/util': 3.0.0 - '@aws-sdk/types': 3.575.0 + '@aws-sdk/types': 3.577.0 tslib: 1.14.1 '@aws-crypto/supports-web-crypto@3.0.0': @@ -3520,7 +3666,7 @@ snapshots: '@aws-crypto/util@3.0.0': dependencies: - '@aws-sdk/types': 3.575.0 + '@aws-sdk/types': 3.577.0 '@aws-sdk/util-utf8-browser': 3.259.0 tslib: 1.14.1 @@ -3528,7 +3674,7 @@ snapshots: dependencies: '@aws-crypto/sha256-browser': 3.0.0 '@aws-crypto/sha256-js': 3.0.0 - '@aws-sdk/client-sso-oidc': 3.576.0(@aws-sdk/client-sts@3.576.0) + '@aws-sdk/client-sso-oidc': 3.576.0 '@aws-sdk/client-sts': 3.576.0 '@aws-sdk/core': 3.576.0 '@aws-sdk/credential-provider-node': 3.576.0(@aws-sdk/client-sso-oidc@3.576.0)(@aws-sdk/client-sts@3.576.0) @@ -3576,7 +3722,7 @@ snapshots: dependencies: '@aws-crypto/sha256-browser': 3.0.0 '@aws-crypto/sha256-js': 3.0.0 - '@aws-sdk/client-sso-oidc': 3.576.0(@aws-sdk/client-sts@3.576.0) + '@aws-sdk/client-sso-oidc': 3.576.0 '@aws-sdk/client-sts': 3.576.0 '@aws-sdk/core': 3.576.0 '@aws-sdk/credential-provider-node': 3.576.0(@aws-sdk/client-sso-oidc@3.576.0)(@aws-sdk/client-sts@3.576.0) @@ -3623,7 +3769,7 @@ snapshots: dependencies: '@aws-crypto/sha256-browser': 3.0.0 '@aws-crypto/sha256-js': 3.0.0 - '@aws-sdk/client-sso-oidc': 3.576.0(@aws-sdk/client-sts@3.576.0) + '@aws-sdk/client-sso-oidc': 3.576.0 '@aws-sdk/client-sts': 3.576.0 '@aws-sdk/core': 3.576.0 '@aws-sdk/credential-provider-node': 3.576.0(@aws-sdk/client-sso-oidc@3.576.0)(@aws-sdk/client-sts@3.576.0) @@ -3665,7 +3811,70 @@ snapshots: transitivePeerDependencies: - aws-crt - '@aws-sdk/client-sso-oidc@3.576.0(@aws-sdk/client-sts@3.576.0)': + '@aws-sdk/client-s3@3.583.0': + dependencies: + '@aws-crypto/sha1-browser': 3.0.0 + '@aws-crypto/sha256-browser': 3.0.0 + '@aws-crypto/sha256-js': 3.0.0 + '@aws-sdk/client-sso-oidc': 3.583.0 + '@aws-sdk/client-sts': 3.583.0(@aws-sdk/client-sso-oidc@3.583.0) + '@aws-sdk/core': 3.582.0 + '@aws-sdk/credential-provider-node': 3.583.0(@aws-sdk/client-sso-oidc@3.583.0)(@aws-sdk/client-sts@3.583.0(@aws-sdk/client-sso-oidc@3.583.0)) + '@aws-sdk/middleware-bucket-endpoint': 3.577.0 + '@aws-sdk/middleware-expect-continue': 3.577.0 + '@aws-sdk/middleware-flexible-checksums': 3.577.0 + '@aws-sdk/middleware-host-header': 3.577.0 + '@aws-sdk/middleware-location-constraint': 3.577.0 + '@aws-sdk/middleware-logger': 3.577.0 + '@aws-sdk/middleware-recursion-detection': 3.577.0 + '@aws-sdk/middleware-sdk-s3': 3.582.0 + '@aws-sdk/middleware-signing': 3.577.0 + '@aws-sdk/middleware-ssec': 3.577.0 + '@aws-sdk/middleware-user-agent': 3.583.0 + '@aws-sdk/region-config-resolver': 3.577.0 + '@aws-sdk/signature-v4-multi-region': 3.582.0 + '@aws-sdk/types': 3.577.0 + '@aws-sdk/util-endpoints': 3.583.0 + '@aws-sdk/util-user-agent-browser': 3.577.0 + '@aws-sdk/util-user-agent-node': 3.577.0 + '@aws-sdk/xml-builder': 3.575.0 + '@smithy/config-resolver': 3.0.0 + '@smithy/core': 2.0.1 + '@smithy/eventstream-serde-browser': 3.0.0 + '@smithy/eventstream-serde-config-resolver': 3.0.0 + '@smithy/eventstream-serde-node': 3.0.0 + '@smithy/fetch-http-handler': 3.0.1 + '@smithy/hash-blob-browser': 3.0.0 + '@smithy/hash-node': 3.0.0 + '@smithy/hash-stream-node': 3.0.0 + '@smithy/invalid-dependency': 3.0.0 + '@smithy/md5-js': 3.0.0 + '@smithy/middleware-content-length': 3.0.0 + '@smithy/middleware-endpoint': 3.0.0 + '@smithy/middleware-retry': 3.0.1 + '@smithy/middleware-serde': 3.0.0 + '@smithy/middleware-stack': 3.0.0 + '@smithy/node-config-provider': 3.0.0 + '@smithy/node-http-handler': 3.0.0 + '@smithy/protocol-http': 4.0.0 + '@smithy/smithy-client': 3.0.1 + '@smithy/types': 3.0.0 + '@smithy/url-parser': 3.0.0 + '@smithy/util-base64': 3.0.0 + '@smithy/util-body-length-browser': 3.0.0 + '@smithy/util-body-length-node': 3.0.0 + '@smithy/util-defaults-mode-browser': 3.0.1 + '@smithy/util-defaults-mode-node': 3.0.1 + '@smithy/util-endpoints': 2.0.0 + '@smithy/util-retry': 3.0.0 + '@smithy/util-stream': 3.0.1 + '@smithy/util-utf8': 3.0.0 + '@smithy/util-waiter': 3.0.0 + tslib: 2.6.2 + transitivePeerDependencies: + - aws-crt + + '@aws-sdk/client-sso-oidc@3.576.0': dependencies: '@aws-crypto/sha256-browser': 3.0.0 '@aws-crypto/sha256-js': 3.0.0 @@ -3708,7 +3917,51 @@ snapshots: '@smithy/util-utf8': 3.0.0 tslib: 2.6.2 transitivePeerDependencies: - - '@aws-sdk/client-sts' + - aws-crt + + '@aws-sdk/client-sso-oidc@3.583.0': + dependencies: + '@aws-crypto/sha256-browser': 3.0.0 + '@aws-crypto/sha256-js': 3.0.0 + '@aws-sdk/client-sts': 3.583.0(@aws-sdk/client-sso-oidc@3.583.0) + '@aws-sdk/core': 3.582.0 + '@aws-sdk/credential-provider-node': 3.583.0(@aws-sdk/client-sso-oidc@3.583.0)(@aws-sdk/client-sts@3.583.0(@aws-sdk/client-sso-oidc@3.583.0)) + '@aws-sdk/middleware-host-header': 3.577.0 + '@aws-sdk/middleware-logger': 3.577.0 + '@aws-sdk/middleware-recursion-detection': 3.577.0 + '@aws-sdk/middleware-user-agent': 3.583.0 + '@aws-sdk/region-config-resolver': 3.577.0 + '@aws-sdk/types': 3.577.0 + '@aws-sdk/util-endpoints': 3.583.0 + '@aws-sdk/util-user-agent-browser': 3.577.0 + '@aws-sdk/util-user-agent-node': 3.577.0 + '@smithy/config-resolver': 3.0.0 + '@smithy/core': 2.0.1 + '@smithy/fetch-http-handler': 3.0.1 + '@smithy/hash-node': 3.0.0 + '@smithy/invalid-dependency': 3.0.0 + '@smithy/middleware-content-length': 3.0.0 + '@smithy/middleware-endpoint': 3.0.0 + '@smithy/middleware-retry': 3.0.1 + '@smithy/middleware-serde': 3.0.0 + '@smithy/middleware-stack': 3.0.0 + '@smithy/node-config-provider': 3.0.0 + '@smithy/node-http-handler': 3.0.0 + '@smithy/protocol-http': 4.0.0 + '@smithy/smithy-client': 3.0.1 + '@smithy/types': 3.0.0 + '@smithy/url-parser': 3.0.0 + '@smithy/util-base64': 3.0.0 + '@smithy/util-body-length-browser': 3.0.0 + '@smithy/util-body-length-node': 3.0.0 + '@smithy/util-defaults-mode-browser': 3.0.1 + '@smithy/util-defaults-mode-node': 3.0.1 + '@smithy/util-endpoints': 2.0.0 + '@smithy/util-middleware': 3.0.0 + '@smithy/util-retry': 3.0.0 + '@smithy/util-utf8': 3.0.0 + tslib: 2.6.2 + transitivePeerDependencies: - aws-crt '@aws-sdk/client-sso@3.576.0': @@ -3754,11 +4007,54 @@ snapshots: transitivePeerDependencies: - aws-crt + '@aws-sdk/client-sso@3.583.0': + dependencies: + '@aws-crypto/sha256-browser': 3.0.0 + '@aws-crypto/sha256-js': 3.0.0 + '@aws-sdk/core': 3.582.0 + '@aws-sdk/middleware-host-header': 3.577.0 + '@aws-sdk/middleware-logger': 3.577.0 + '@aws-sdk/middleware-recursion-detection': 3.577.0 + '@aws-sdk/middleware-user-agent': 3.583.0 + '@aws-sdk/region-config-resolver': 3.577.0 + '@aws-sdk/types': 3.577.0 + '@aws-sdk/util-endpoints': 3.583.0 + '@aws-sdk/util-user-agent-browser': 3.577.0 + '@aws-sdk/util-user-agent-node': 3.577.0 + '@smithy/config-resolver': 3.0.0 + '@smithy/core': 2.0.1 + '@smithy/fetch-http-handler': 3.0.1 + '@smithy/hash-node': 3.0.0 + '@smithy/invalid-dependency': 3.0.0 + '@smithy/middleware-content-length': 3.0.0 + '@smithy/middleware-endpoint': 3.0.0 + '@smithy/middleware-retry': 3.0.1 + '@smithy/middleware-serde': 3.0.0 + '@smithy/middleware-stack': 3.0.0 + '@smithy/node-config-provider': 3.0.0 + '@smithy/node-http-handler': 3.0.0 + '@smithy/protocol-http': 4.0.0 + '@smithy/smithy-client': 3.0.1 + '@smithy/types': 3.0.0 + '@smithy/url-parser': 3.0.0 + '@smithy/util-base64': 3.0.0 + '@smithy/util-body-length-browser': 3.0.0 + '@smithy/util-body-length-node': 3.0.0 + '@smithy/util-defaults-mode-browser': 3.0.1 + '@smithy/util-defaults-mode-node': 3.0.1 + '@smithy/util-endpoints': 2.0.0 + '@smithy/util-middleware': 3.0.0 + '@smithy/util-retry': 3.0.0 + '@smithy/util-utf8': 3.0.0 + tslib: 2.6.2 + transitivePeerDependencies: + - aws-crt + '@aws-sdk/client-sts@3.576.0': dependencies: '@aws-crypto/sha256-browser': 3.0.0 '@aws-crypto/sha256-js': 3.0.0 - '@aws-sdk/client-sso-oidc': 3.576.0(@aws-sdk/client-sts@3.576.0) + '@aws-sdk/client-sso-oidc': 3.576.0 '@aws-sdk/core': 3.576.0 '@aws-sdk/credential-provider-node': 3.576.0(@aws-sdk/client-sso-oidc@3.576.0)(@aws-sdk/client-sts@3.576.0) '@aws-sdk/middleware-host-header': 3.575.0 @@ -3799,6 +4095,52 @@ snapshots: transitivePeerDependencies: - aws-crt + '@aws-sdk/client-sts@3.583.0(@aws-sdk/client-sso-oidc@3.583.0)': + dependencies: + '@aws-crypto/sha256-browser': 3.0.0 + '@aws-crypto/sha256-js': 3.0.0 + '@aws-sdk/client-sso-oidc': 3.583.0 + '@aws-sdk/core': 3.582.0 + '@aws-sdk/credential-provider-node': 3.583.0(@aws-sdk/client-sso-oidc@3.583.0)(@aws-sdk/client-sts@3.583.0(@aws-sdk/client-sso-oidc@3.583.0)) + '@aws-sdk/middleware-host-header': 3.577.0 + '@aws-sdk/middleware-logger': 3.577.0 + '@aws-sdk/middleware-recursion-detection': 3.577.0 + '@aws-sdk/middleware-user-agent': 3.583.0 + '@aws-sdk/region-config-resolver': 3.577.0 + '@aws-sdk/types': 3.577.0 + '@aws-sdk/util-endpoints': 3.583.0 + '@aws-sdk/util-user-agent-browser': 3.577.0 + '@aws-sdk/util-user-agent-node': 3.577.0 + '@smithy/config-resolver': 3.0.0 + '@smithy/core': 2.0.1 + '@smithy/fetch-http-handler': 3.0.1 + '@smithy/hash-node': 3.0.0 + '@smithy/invalid-dependency': 3.0.0 + '@smithy/middleware-content-length': 3.0.0 + '@smithy/middleware-endpoint': 3.0.0 + '@smithy/middleware-retry': 3.0.1 + '@smithy/middleware-serde': 3.0.0 + '@smithy/middleware-stack': 3.0.0 + '@smithy/node-config-provider': 3.0.0 + '@smithy/node-http-handler': 3.0.0 + '@smithy/protocol-http': 4.0.0 + '@smithy/smithy-client': 3.0.1 + '@smithy/types': 3.0.0 + '@smithy/url-parser': 3.0.0 + '@smithy/util-base64': 3.0.0 + '@smithy/util-body-length-browser': 3.0.0 + '@smithy/util-body-length-node': 3.0.0 + '@smithy/util-defaults-mode-browser': 3.0.1 + '@smithy/util-defaults-mode-node': 3.0.1 + '@smithy/util-endpoints': 2.0.0 + '@smithy/util-middleware': 3.0.0 + '@smithy/util-retry': 3.0.0 + '@smithy/util-utf8': 3.0.0 + tslib: 2.6.2 + transitivePeerDependencies: + - '@aws-sdk/client-sso-oidc' + - aws-crt + '@aws-sdk/core@3.576.0': dependencies: '@smithy/core': 2.0.1 @@ -3809,6 +4151,16 @@ snapshots: fast-xml-parser: 4.2.5 tslib: 2.6.2 + '@aws-sdk/core@3.582.0': + dependencies: + '@smithy/core': 2.0.1 + '@smithy/protocol-http': 4.0.0 + '@smithy/signature-v4': 3.0.0 + '@smithy/smithy-client': 3.0.1 + '@smithy/types': 3.0.0 + fast-xml-parser: 4.2.5 + tslib: 2.6.2 + '@aws-sdk/credential-provider-cognito-identity@3.576.0': dependencies: '@aws-sdk/client-cognito-identity': 3.576.0 @@ -3826,6 +4178,13 @@ snapshots: '@smithy/types': 3.0.0 tslib: 2.6.2 + '@aws-sdk/credential-provider-env@3.577.0': + dependencies: + '@aws-sdk/types': 3.577.0 + '@smithy/property-provider': 3.0.0 + '@smithy/types': 3.0.0 + tslib: 2.6.2 + '@aws-sdk/credential-provider-http@3.575.0': dependencies: '@aws-sdk/types': 3.575.0 @@ -3838,6 +4197,18 @@ snapshots: '@smithy/util-stream': 3.0.1 tslib: 2.6.2 + '@aws-sdk/credential-provider-http@3.582.0': + dependencies: + '@aws-sdk/types': 3.577.0 + '@smithy/fetch-http-handler': 3.0.1 + '@smithy/node-http-handler': 3.0.0 + '@smithy/property-provider': 3.0.0 + '@smithy/protocol-http': 4.0.0 + '@smithy/smithy-client': 3.0.1 + '@smithy/types': 3.0.0 + '@smithy/util-stream': 3.0.1 + tslib: 2.6.2 + '@aws-sdk/credential-provider-ini@3.576.0(@aws-sdk/client-sso-oidc@3.576.0)(@aws-sdk/client-sts@3.576.0)': dependencies: '@aws-sdk/client-sts': 3.576.0 @@ -3855,13 +4226,66 @@ snapshots: - '@aws-sdk/client-sso-oidc' - aws-crt - '@aws-sdk/credential-provider-node@3.576.0(@aws-sdk/client-sso-oidc@3.576.0)(@aws-sdk/client-sts@3.576.0)': + '@aws-sdk/credential-provider-ini@3.576.0(@aws-sdk/client-sso-oidc@3.583.0)(@aws-sdk/client-sts@3.576.0)': + dependencies: + '@aws-sdk/client-sts': 3.576.0 + '@aws-sdk/credential-provider-env': 3.575.0 + '@aws-sdk/credential-provider-process': 3.575.0 + '@aws-sdk/credential-provider-sso': 3.576.0(@aws-sdk/client-sso-oidc@3.583.0) + '@aws-sdk/credential-provider-web-identity': 3.575.0(@aws-sdk/client-sts@3.576.0) + '@aws-sdk/types': 3.575.0 + '@smithy/credential-provider-imds': 3.0.0 + '@smithy/property-provider': 3.0.0 + '@smithy/shared-ini-file-loader': 3.0.0 + '@smithy/types': 3.0.0 + tslib: 2.6.2 + transitivePeerDependencies: + - '@aws-sdk/client-sso-oidc' + - aws-crt + + '@aws-sdk/credential-provider-ini@3.583.0(@aws-sdk/client-sso-oidc@3.583.0)(@aws-sdk/client-sts@3.583.0(@aws-sdk/client-sso-oidc@3.583.0))': + dependencies: + '@aws-sdk/client-sts': 3.583.0(@aws-sdk/client-sso-oidc@3.583.0) + '@aws-sdk/credential-provider-env': 3.577.0 + '@aws-sdk/credential-provider-process': 3.577.0 + '@aws-sdk/credential-provider-sso': 3.583.0(@aws-sdk/client-sso-oidc@3.583.0) + '@aws-sdk/credential-provider-web-identity': 3.577.0(@aws-sdk/client-sts@3.583.0(@aws-sdk/client-sso-oidc@3.583.0)) + '@aws-sdk/types': 3.577.0 + '@smithy/credential-provider-imds': 3.0.0 + '@smithy/property-provider': 3.0.0 + '@smithy/shared-ini-file-loader': 3.0.0 + '@smithy/types': 3.0.0 + tslib: 2.6.2 + transitivePeerDependencies: + - '@aws-sdk/client-sso-oidc' + - aws-crt + + '@aws-sdk/credential-provider-node@3.576.0(@aws-sdk/client-sso-oidc@3.576.0)(@aws-sdk/client-sts@3.576.0)': + dependencies: + '@aws-sdk/credential-provider-env': 3.575.0 + '@aws-sdk/credential-provider-http': 3.575.0 + '@aws-sdk/credential-provider-ini': 3.576.0(@aws-sdk/client-sso-oidc@3.576.0)(@aws-sdk/client-sts@3.576.0) + '@aws-sdk/credential-provider-process': 3.575.0 + '@aws-sdk/credential-provider-sso': 3.576.0(@aws-sdk/client-sso-oidc@3.576.0) + '@aws-sdk/credential-provider-web-identity': 3.575.0(@aws-sdk/client-sts@3.576.0) + '@aws-sdk/types': 3.575.0 + '@smithy/credential-provider-imds': 3.0.0 + '@smithy/property-provider': 3.0.0 + '@smithy/shared-ini-file-loader': 3.0.0 + '@smithy/types': 3.0.0 + tslib: 2.6.2 + transitivePeerDependencies: + - '@aws-sdk/client-sso-oidc' + - '@aws-sdk/client-sts' + - aws-crt + + '@aws-sdk/credential-provider-node@3.576.0(@aws-sdk/client-sso-oidc@3.583.0)(@aws-sdk/client-sts@3.576.0)': dependencies: '@aws-sdk/credential-provider-env': 3.575.0 '@aws-sdk/credential-provider-http': 3.575.0 - '@aws-sdk/credential-provider-ini': 3.576.0(@aws-sdk/client-sso-oidc@3.576.0)(@aws-sdk/client-sts@3.576.0) + '@aws-sdk/credential-provider-ini': 3.576.0(@aws-sdk/client-sso-oidc@3.583.0)(@aws-sdk/client-sts@3.576.0) '@aws-sdk/credential-provider-process': 3.575.0 - '@aws-sdk/credential-provider-sso': 3.576.0(@aws-sdk/client-sso-oidc@3.576.0) + '@aws-sdk/credential-provider-sso': 3.576.0(@aws-sdk/client-sso-oidc@3.583.0) '@aws-sdk/credential-provider-web-identity': 3.575.0(@aws-sdk/client-sts@3.576.0) '@aws-sdk/types': 3.575.0 '@smithy/credential-provider-imds': 3.0.0 @@ -3874,6 +4298,25 @@ snapshots: - '@aws-sdk/client-sts' - aws-crt + '@aws-sdk/credential-provider-node@3.583.0(@aws-sdk/client-sso-oidc@3.583.0)(@aws-sdk/client-sts@3.583.0(@aws-sdk/client-sso-oidc@3.583.0))': + dependencies: + '@aws-sdk/credential-provider-env': 3.577.0 + '@aws-sdk/credential-provider-http': 3.582.0 + '@aws-sdk/credential-provider-ini': 3.583.0(@aws-sdk/client-sso-oidc@3.583.0)(@aws-sdk/client-sts@3.583.0(@aws-sdk/client-sso-oidc@3.583.0)) + '@aws-sdk/credential-provider-process': 3.577.0 + '@aws-sdk/credential-provider-sso': 3.583.0(@aws-sdk/client-sso-oidc@3.583.0) + '@aws-sdk/credential-provider-web-identity': 3.577.0(@aws-sdk/client-sts@3.583.0(@aws-sdk/client-sso-oidc@3.583.0)) + '@aws-sdk/types': 3.577.0 + '@smithy/credential-provider-imds': 3.0.0 + '@smithy/property-provider': 3.0.0 + '@smithy/shared-ini-file-loader': 3.0.0 + '@smithy/types': 3.0.0 + tslib: 2.6.2 + transitivePeerDependencies: + - '@aws-sdk/client-sso-oidc' + - '@aws-sdk/client-sts' + - aws-crt + '@aws-sdk/credential-provider-process@3.575.0': dependencies: '@aws-sdk/types': 3.575.0 @@ -3882,6 +4325,14 @@ snapshots: '@smithy/types': 3.0.0 tslib: 2.6.2 + '@aws-sdk/credential-provider-process@3.577.0': + dependencies: + '@aws-sdk/types': 3.577.0 + '@smithy/property-provider': 3.0.0 + '@smithy/shared-ini-file-loader': 3.0.0 + '@smithy/types': 3.0.0 + tslib: 2.6.2 + '@aws-sdk/credential-provider-sso@3.576.0(@aws-sdk/client-sso-oidc@3.576.0)': dependencies: '@aws-sdk/client-sso': 3.576.0 @@ -3895,6 +4346,32 @@ snapshots: - '@aws-sdk/client-sso-oidc' - aws-crt + '@aws-sdk/credential-provider-sso@3.576.0(@aws-sdk/client-sso-oidc@3.583.0)': + dependencies: + '@aws-sdk/client-sso': 3.576.0 + '@aws-sdk/token-providers': 3.575.0(@aws-sdk/client-sso-oidc@3.583.0) + '@aws-sdk/types': 3.575.0 + '@smithy/property-provider': 3.0.0 + '@smithy/shared-ini-file-loader': 3.0.0 + '@smithy/types': 3.0.0 + tslib: 2.6.2 + transitivePeerDependencies: + - '@aws-sdk/client-sso-oidc' + - aws-crt + + '@aws-sdk/credential-provider-sso@3.583.0(@aws-sdk/client-sso-oidc@3.583.0)': + dependencies: + '@aws-sdk/client-sso': 3.583.0 + '@aws-sdk/token-providers': 3.577.0(@aws-sdk/client-sso-oidc@3.583.0) + '@aws-sdk/types': 3.577.0 + '@smithy/property-provider': 3.0.0 + '@smithy/shared-ini-file-loader': 3.0.0 + '@smithy/types': 3.0.0 + tslib: 2.6.2 + transitivePeerDependencies: + - '@aws-sdk/client-sso-oidc' + - aws-crt + '@aws-sdk/credential-provider-web-identity@3.575.0(@aws-sdk/client-sts@3.576.0)': dependencies: '@aws-sdk/client-sts': 3.576.0 @@ -3903,7 +4380,15 @@ snapshots: '@smithy/types': 3.0.0 tslib: 2.6.2 - '@aws-sdk/credential-providers@3.576.0(@aws-sdk/client-sso-oidc@3.576.0)': + '@aws-sdk/credential-provider-web-identity@3.577.0(@aws-sdk/client-sts@3.583.0(@aws-sdk/client-sso-oidc@3.583.0))': + dependencies: + '@aws-sdk/client-sts': 3.583.0(@aws-sdk/client-sso-oidc@3.583.0) + '@aws-sdk/types': 3.577.0 + '@smithy/property-provider': 3.0.0 + '@smithy/types': 3.0.0 + tslib: 2.6.2 + + '@aws-sdk/credential-providers@3.576.0(@aws-sdk/client-sso-oidc@3.583.0)': dependencies: '@aws-sdk/client-cognito-identity': 3.576.0 '@aws-sdk/client-sso': 3.576.0 @@ -3911,10 +4396,10 @@ snapshots: '@aws-sdk/credential-provider-cognito-identity': 3.576.0 '@aws-sdk/credential-provider-env': 3.575.0 '@aws-sdk/credential-provider-http': 3.575.0 - '@aws-sdk/credential-provider-ini': 3.576.0(@aws-sdk/client-sso-oidc@3.576.0)(@aws-sdk/client-sts@3.576.0) - '@aws-sdk/credential-provider-node': 3.576.0(@aws-sdk/client-sso-oidc@3.576.0)(@aws-sdk/client-sts@3.576.0) + '@aws-sdk/credential-provider-ini': 3.576.0(@aws-sdk/client-sso-oidc@3.583.0)(@aws-sdk/client-sts@3.576.0) + '@aws-sdk/credential-provider-node': 3.576.0(@aws-sdk/client-sso-oidc@3.583.0)(@aws-sdk/client-sts@3.576.0) '@aws-sdk/credential-provider-process': 3.575.0 - '@aws-sdk/credential-provider-sso': 3.576.0(@aws-sdk/client-sso-oidc@3.576.0) + '@aws-sdk/credential-provider-sso': 3.576.0(@aws-sdk/client-sso-oidc@3.583.0) '@aws-sdk/credential-provider-web-identity': 3.575.0(@aws-sdk/client-sts@3.576.0) '@aws-sdk/types': 3.575.0 '@smithy/credential-provider-imds': 3.0.0 @@ -3925,6 +4410,34 @@ snapshots: - '@aws-sdk/client-sso-oidc' - aws-crt + '@aws-sdk/middleware-bucket-endpoint@3.577.0': + dependencies: + '@aws-sdk/types': 3.577.0 + '@aws-sdk/util-arn-parser': 3.568.0 + '@smithy/node-config-provider': 3.0.0 + '@smithy/protocol-http': 4.0.0 + '@smithy/types': 3.0.0 + '@smithy/util-config-provider': 3.0.0 + tslib: 2.6.2 + + '@aws-sdk/middleware-expect-continue@3.577.0': + dependencies: + '@aws-sdk/types': 3.577.0 + '@smithy/protocol-http': 4.0.0 + '@smithy/types': 3.0.0 + tslib: 2.6.2 + + '@aws-sdk/middleware-flexible-checksums@3.577.0': + dependencies: + '@aws-crypto/crc32': 3.0.0 + '@aws-crypto/crc32c': 3.0.0 + '@aws-sdk/types': 3.577.0 + '@smithy/is-array-buffer': 3.0.0 + '@smithy/protocol-http': 4.0.0 + '@smithy/types': 3.0.0 + '@smithy/util-utf8': 3.0.0 + tslib: 2.6.2 + '@aws-sdk/middleware-host-header@3.575.0': dependencies: '@aws-sdk/types': 3.575.0 @@ -3932,12 +4445,31 @@ snapshots: '@smithy/types': 3.0.0 tslib: 2.6.2 + '@aws-sdk/middleware-host-header@3.577.0': + dependencies: + '@aws-sdk/types': 3.577.0 + '@smithy/protocol-http': 4.0.0 + '@smithy/types': 3.0.0 + tslib: 2.6.2 + + '@aws-sdk/middleware-location-constraint@3.577.0': + dependencies: + '@aws-sdk/types': 3.577.0 + '@smithy/types': 3.0.0 + tslib: 2.6.2 + '@aws-sdk/middleware-logger@3.575.0': dependencies: '@aws-sdk/types': 3.575.0 '@smithy/types': 3.0.0 tslib: 2.6.2 + '@aws-sdk/middleware-logger@3.577.0': + dependencies: + '@aws-sdk/types': 3.577.0 + '@smithy/types': 3.0.0 + tslib: 2.6.2 + '@aws-sdk/middleware-recursion-detection@3.575.0': dependencies: '@aws-sdk/types': 3.575.0 @@ -3945,6 +4477,41 @@ snapshots: '@smithy/types': 3.0.0 tslib: 2.6.2 + '@aws-sdk/middleware-recursion-detection@3.577.0': + dependencies: + '@aws-sdk/types': 3.577.0 + '@smithy/protocol-http': 4.0.0 + '@smithy/types': 3.0.0 + tslib: 2.6.2 + + '@aws-sdk/middleware-sdk-s3@3.582.0': + dependencies: + '@aws-sdk/types': 3.577.0 + '@aws-sdk/util-arn-parser': 3.568.0 + '@smithy/node-config-provider': 3.0.0 + '@smithy/protocol-http': 4.0.0 + '@smithy/signature-v4': 3.0.0 + '@smithy/smithy-client': 3.0.1 + '@smithy/types': 3.0.0 + '@smithy/util-config-provider': 3.0.0 + tslib: 2.6.2 + + '@aws-sdk/middleware-signing@3.577.0': + dependencies: + '@aws-sdk/types': 3.577.0 + '@smithy/property-provider': 3.0.0 + '@smithy/protocol-http': 4.0.0 + '@smithy/signature-v4': 3.0.0 + '@smithy/types': 3.0.0 + '@smithy/util-middleware': 3.0.0 + tslib: 2.6.2 + + '@aws-sdk/middleware-ssec@3.577.0': + dependencies: + '@aws-sdk/types': 3.577.0 + '@smithy/types': 3.0.0 + tslib: 2.6.2 + '@aws-sdk/middleware-user-agent@3.575.0': dependencies: '@aws-sdk/types': 3.575.0 @@ -3953,6 +4520,14 @@ snapshots: '@smithy/types': 3.0.0 tslib: 2.6.2 + '@aws-sdk/middleware-user-agent@3.583.0': + dependencies: + '@aws-sdk/types': 3.577.0 + '@aws-sdk/util-endpoints': 3.583.0 + '@smithy/protocol-http': 4.0.0 + '@smithy/types': 3.0.0 + tslib: 2.6.2 + '@aws-sdk/region-config-resolver@3.575.0': dependencies: '@aws-sdk/types': 3.575.0 @@ -3962,20 +4537,65 @@ snapshots: '@smithy/util-middleware': 3.0.0 tslib: 2.6.2 + '@aws-sdk/region-config-resolver@3.577.0': + dependencies: + '@aws-sdk/types': 3.577.0 + '@smithy/node-config-provider': 3.0.0 + '@smithy/types': 3.0.0 + '@smithy/util-config-provider': 3.0.0 + '@smithy/util-middleware': 3.0.0 + tslib: 2.6.2 + + '@aws-sdk/signature-v4-multi-region@3.582.0': + dependencies: + '@aws-sdk/middleware-sdk-s3': 3.582.0 + '@aws-sdk/types': 3.577.0 + '@smithy/protocol-http': 4.0.0 + '@smithy/signature-v4': 3.0.0 + '@smithy/types': 3.0.0 + tslib: 2.6.2 + '@aws-sdk/token-providers@3.575.0(@aws-sdk/client-sso-oidc@3.576.0)': dependencies: - '@aws-sdk/client-sso-oidc': 3.576.0(@aws-sdk/client-sts@3.576.0) + '@aws-sdk/client-sso-oidc': 3.576.0 + '@aws-sdk/types': 3.575.0 + '@smithy/property-provider': 3.0.0 + '@smithy/shared-ini-file-loader': 3.0.0 + '@smithy/types': 3.0.0 + tslib: 2.6.2 + + '@aws-sdk/token-providers@3.575.0(@aws-sdk/client-sso-oidc@3.583.0)': + dependencies: + '@aws-sdk/client-sso-oidc': 3.583.0 '@aws-sdk/types': 3.575.0 '@smithy/property-provider': 3.0.0 '@smithy/shared-ini-file-loader': 3.0.0 '@smithy/types': 3.0.0 tslib: 2.6.2 + '@aws-sdk/token-providers@3.577.0(@aws-sdk/client-sso-oidc@3.583.0)': + dependencies: + '@aws-sdk/client-sso-oidc': 3.583.0 + '@aws-sdk/types': 3.577.0 + '@smithy/property-provider': 3.0.0 + '@smithy/shared-ini-file-loader': 3.0.0 + '@smithy/types': 3.0.0 + tslib: 2.6.2 + '@aws-sdk/types@3.575.0': dependencies: '@smithy/types': 3.0.0 tslib: 2.6.2 + '@aws-sdk/types@3.577.0': + dependencies: + '@smithy/types': 3.0.0 + tslib: 2.6.2 + + '@aws-sdk/util-arn-parser@3.568.0': + dependencies: + tslib: 2.6.2 + '@aws-sdk/util-endpoints@3.575.0': dependencies: '@aws-sdk/types': 3.575.0 @@ -3983,6 +4603,13 @@ snapshots: '@smithy/util-endpoints': 2.0.0 tslib: 2.6.2 + '@aws-sdk/util-endpoints@3.583.0': + dependencies: + '@aws-sdk/types': 3.577.0 + '@smithy/types': 3.0.0 + '@smithy/util-endpoints': 2.0.0 + tslib: 2.6.2 + '@aws-sdk/util-locate-window@3.568.0': dependencies: tslib: 2.6.2 @@ -3994,6 +4621,13 @@ snapshots: bowser: 2.11.0 tslib: 2.6.2 + '@aws-sdk/util-user-agent-browser@3.577.0': + dependencies: + '@aws-sdk/types': 3.577.0 + '@smithy/types': 3.0.0 + bowser: 2.11.0 + tslib: 2.6.2 + '@aws-sdk/util-user-agent-node@3.575.0': dependencies: '@aws-sdk/types': 3.575.0 @@ -4001,10 +4635,22 @@ snapshots: '@smithy/types': 3.0.0 tslib: 2.6.2 + '@aws-sdk/util-user-agent-node@3.577.0': + dependencies: + '@aws-sdk/types': 3.577.0 + '@smithy/node-config-provider': 3.0.0 + '@smithy/types': 3.0.0 + tslib: 2.6.2 + '@aws-sdk/util-utf8-browser@3.259.0': dependencies: tslib: 2.6.2 + '@aws-sdk/xml-builder@3.575.0': + dependencies: + '@smithy/types': 3.0.0 + tslib: 2.6.2 + '@babel/code-frame@7.24.2': dependencies: '@babel/highlight': 7.24.5 @@ -4570,6 +5216,15 @@ snapshots: '@smithy/types': 3.0.0 tslib: 2.6.2 + '@smithy/chunked-blob-reader-native@3.0.0': + dependencies: + '@smithy/util-base64': 3.0.0 + tslib: 2.6.2 + + '@smithy/chunked-blob-reader@3.0.0': + dependencies: + tslib: 2.6.2 + '@smithy/config-resolver@3.0.0': dependencies: '@smithy/node-config-provider': 3.0.0 @@ -4597,6 +5252,36 @@ snapshots: '@smithy/url-parser': 3.0.0 tslib: 2.6.2 + '@smithy/eventstream-codec@3.0.0': + dependencies: + '@aws-crypto/crc32': 3.0.0 + '@smithy/types': 3.0.0 + '@smithy/util-hex-encoding': 3.0.0 + tslib: 2.6.2 + + '@smithy/eventstream-serde-browser@3.0.0': + dependencies: + '@smithy/eventstream-serde-universal': 3.0.0 + '@smithy/types': 3.0.0 + tslib: 2.6.2 + + '@smithy/eventstream-serde-config-resolver@3.0.0': + dependencies: + '@smithy/types': 3.0.0 + tslib: 2.6.2 + + '@smithy/eventstream-serde-node@3.0.0': + dependencies: + '@smithy/eventstream-serde-universal': 3.0.0 + '@smithy/types': 3.0.0 + tslib: 2.6.2 + + '@smithy/eventstream-serde-universal@3.0.0': + dependencies: + '@smithy/eventstream-codec': 3.0.0 + '@smithy/types': 3.0.0 + tslib: 2.6.2 + '@smithy/fetch-http-handler@3.0.1': dependencies: '@smithy/protocol-http': 4.0.0 @@ -4605,6 +5290,13 @@ snapshots: '@smithy/util-base64': 3.0.0 tslib: 2.6.2 + '@smithy/hash-blob-browser@3.0.0': + dependencies: + '@smithy/chunked-blob-reader': 3.0.0 + '@smithy/chunked-blob-reader-native': 3.0.0 + '@smithy/types': 3.0.0 + tslib: 2.6.2 + '@smithy/hash-node@3.0.0': dependencies: '@smithy/types': 3.0.0 @@ -4612,6 +5304,12 @@ snapshots: '@smithy/util-utf8': 3.0.0 tslib: 2.6.2 + '@smithy/hash-stream-node@3.0.0': + dependencies: + '@smithy/types': 3.0.0 + '@smithy/util-utf8': 3.0.0 + tslib: 2.6.2 + '@smithy/invalid-dependency@3.0.0': dependencies: '@smithy/types': 3.0.0 @@ -4621,6 +5319,12 @@ snapshots: dependencies: tslib: 2.6.2 + '@smithy/md5-js@3.0.0': + dependencies: + '@smithy/types': 3.0.0 + '@smithy/util-utf8': 3.0.0 + tslib: 2.6.2 + '@smithy/middleware-compression@3.0.0': dependencies: '@smithy/is-array-buffer': 3.0.0 @@ -4910,6 +5614,12 @@ snapshots: '@types/semver@7.5.8': {} + '@types/sinon@10.0.20': + dependencies: + '@types/sinonjs__fake-timers': 8.1.5 + + '@types/sinonjs__fake-timers@8.1.5': {} + '@types/stack-utils@2.0.3': {} '@types/yargs-parser@21.0.3': {} @@ -5131,28 +5841,15 @@ snapshots: '@aws-cdk/asset-node-proxy-agent-v6': 2.0.3 constructs: 10.0.5 - aws-cdk@2.141.0: + aws-cdk@2.143.0: optionalDependencies: fsevents: 2.3.2 - aws-sdk-mock@5.9.0: - dependencies: - aws-sdk: 2.1620.0 - sinon: 17.0.2 - traverse: 0.6.9 - - aws-sdk@2.1620.0: + aws-sdk-client-mock@4.0.0: dependencies: - buffer: 4.9.2 - events: 1.1.1 - ieee754: 1.1.13 - jmespath: 0.16.0 - querystring: 0.2.0 - sax: 1.2.1 - url: 0.10.3 - util: 0.12.5 - uuid: 8.0.0 - xml2js: 0.6.2 + '@types/sinon': 10.0.20 + sinon: 16.1.3 + tslib: 2.6.2 babel-jest@29.7.0(@babel/core@7.24.5): dependencies: @@ -5208,8 +5905,6 @@ snapshots: balanced-match@1.0.2: {} - base64-js@1.5.1: {} - bowser@2.11.0: {} brace-expansion@1.1.11: @@ -5242,12 +5937,6 @@ snapshots: buffer-from@1.1.2: {} - buffer@4.9.2: - dependencies: - base64-js: 1.5.1 - ieee754: 1.1.13 - isarray: 1.0.0 - call-bind@1.0.7: dependencies: es-define-property: 1.0.0 @@ -5592,7 +6281,7 @@ snapshots: dependencies: semver: 7.6.2 shelljs: 0.8.5 - typescript: 5.5.0-dev.20240515 + typescript: 5.5.0-dev.20240528 electron-to-chromium@1.4.763: {} @@ -5870,8 +6559,6 @@ snapshots: eventemitter3@4.0.7: {} - events@1.1.1: {} - execa@5.1.1: dependencies: cross-spawn: 7.0.3 @@ -6160,8 +6847,6 @@ snapshots: human-signals@2.1.0: {} - ieee754@1.1.13: {} - ignore@5.3.1: {} import-fresh@3.3.0: @@ -6195,11 +6880,6 @@ snapshots: interpret@1.4.0: {} - is-arguments@1.1.1: - dependencies: - call-bind: 1.0.7 - has-tostringtag: 1.0.2 - is-array-buffer@3.0.4: dependencies: call-bind: 1.0.7 @@ -6236,10 +6916,6 @@ snapshots: is-generator-fn@2.1.0: {} - is-generator-function@1.0.10: - dependencies: - has-tostringtag: 1.0.2 - is-glob@4.0.3: dependencies: is-extglob: 2.1.1 @@ -6652,8 +7328,6 @@ snapshots: - supports-color - ts-node - jmespath@0.16.0: {} - js-tokens@4.0.0: {} js-yaml@3.14.1: @@ -6715,10 +7389,10 @@ snapshots: oo-ascii-tree: 1.98.0 yargs: 16.2.0 - jsii-release@0.2.834(@aws-sdk/client-sso-oidc@3.576.0): + jsii-release@0.2.834(@aws-sdk/client-sso-oidc@3.583.0): dependencies: '@aws-sdk/client-codeartifact': 3.576.0 - '@aws-sdk/credential-providers': 3.576.0(@aws-sdk/client-sso-oidc@3.576.0) + '@aws-sdk/credential-providers': 3.576.0(@aws-sdk/client-sso-oidc@3.583.0) '@aws-sdk/types': 3.575.0 '@types/fs-extra': 8.1.5 fs-extra: 8.1.0 @@ -7159,16 +7833,12 @@ snapshots: kleur: 3.0.3 sisteransi: 1.0.5 - punycode@1.3.2: {} - punycode@2.3.1: {} pure-rand@6.1.0: {} q@1.5.1: {} - querystring@0.2.0: {} - queue-microtask@1.2.3: {} quick-lru@4.0.1: {} @@ -7282,8 +7952,6 @@ snapshots: es-errors: 1.3.0 is-regex: 1.1.4 - sax@1.2.1: {} - semver-intersect@1.5.0: dependencies: semver: 6.3.1 @@ -7333,10 +8001,10 @@ snapshots: signal-exit@3.0.7: {} - sinon@17.0.2: + sinon@16.1.3: dependencies: '@sinonjs/commons': 3.0.1 - '@sinonjs/fake-timers': 11.2.2 + '@sinonjs/fake-timers': 10.3.0 '@sinonjs/samsam': 8.0.0 diff: 5.2.0 nise: 5.1.9 @@ -7535,12 +8203,6 @@ snapshots: dependencies: is-number: 7.0.0 - traverse@0.6.9: - dependencies: - gopd: 1.0.1 - typedarray.prototype.slice: 1.0.3 - which-typed-array: 1.1.15 - trim-newlines@3.0.1: {} ts-api-utils@1.3.0(typescript@5.3.3): @@ -7642,20 +8304,11 @@ snapshots: is-typed-array: 1.1.13 possible-typed-array-names: 1.0.0 - typedarray.prototype.slice@1.0.3: - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-errors: 1.3.0 - typed-array-buffer: 1.0.2 - typed-array-byte-offset: 1.0.2 - typedarray@0.0.6: {} typescript@5.3.3: {} - typescript@5.5.0-dev.20240515: {} + typescript@5.5.0-dev.20240528: {} uglify-js@3.17.4: optional: true @@ -7683,23 +8336,8 @@ snapshots: dependencies: punycode: 2.3.1 - url@0.10.3: - dependencies: - punycode: 1.3.2 - querystring: 0.2.0 - util-deprecate@1.0.2: {} - util@0.12.5: - dependencies: - inherits: 2.0.4 - is-arguments: 1.1.1 - is-generator-function: 1.0.10 - is-typed-array: 1.1.13 - which-typed-array: 1.1.15 - - uuid@8.0.0: {} - uuid@8.3.2: {} uuid@9.0.1: {} @@ -7760,15 +8398,8 @@ snapshots: imurmurhash: 0.1.4 signal-exit: 3.0.7 - xml2js@0.6.2: - dependencies: - sax: 1.2.1 - xmlbuilder: 11.0.1 - xml@1.0.1: {} - xmlbuilder@11.0.1: {} - xmlbuilder@15.1.1: {} xtend@4.0.2: {} diff --git a/src/s3-buckets-usage-metric-publisher.monitor.ts b/src/s3-buckets-usage-metric-publisher.monitor.ts index 5a05ad8..232dfc8 100644 --- a/src/s3-buckets-usage-metric-publisher.monitor.ts +++ b/src/s3-buckets-usage-metric-publisher.monitor.ts @@ -1,7 +1,8 @@ /** * The Lambda function resource is managed from s3-buckets-usage-metric-publisher.ts */ -import * as AWS from 'aws-sdk'; +import { CloudWatch, PutMetricDataCommand } from '@aws-sdk/client-cloudwatch'; +import { ListBucketsCommand, S3 } from '@aws-sdk/client-s3'; /** * Monitor the number of S3 buckets by Lambda functions in an AWS account and publish the metric data to CloudWatch. @@ -16,33 +17,31 @@ export const monitor = async () => { } // Call the listBuckets API to get a list of all S3 buckets - const s3 = new AWS.S3(); - const { Buckets = [] } = await s3.listBuckets().promise(); + const s3 = new S3(); + const { Buckets = [] } = await s3.send(new ListBucketsCommand()); const numberOfBuckets = Buckets.length; console.log('Number of S3 buckets:', numberOfBuckets); - const cloudwatch = new AWS.CloudWatch(); - const dimensions = [{ Name: 'BucketCount', Value: 'Total' }]; - const metricData = [ - { - MetricName: 'NumberOfS3GeneralPurposeBuckets', - Dimensions: dimensions, - Unit: 'Count', - Value: numberOfBuckets, - }, - ]; - const params = { - Namespace: cwNamespace, - MetricData: metricData, - }; - cloudwatch.putMetricData(params, (err) => { - if (err) { - throw err; - } else { - console.log(`Successfully pushed metric data to namespace ${cwNamespace} - ${metricData}`); - } - }); + const cloudwatch = new CloudWatch(); + try { + await cloudwatch.send( + new PutMetricDataCommand({ + Namespace: cwNamespace, + MetricData: [ + { + MetricName: 'NumberOfS3GeneralPurposeBuckets', + Dimensions: [{ Name: 'BucketCount', Value: 'Total' }], + Unit: 'Count', + Value: numberOfBuckets, + }, + ], + }), + ); + } catch (error) { + console.error('Error publishing metric data'); + throw error; + } if (numberOfBuckets === 0) { console.log('No results to publish'); diff --git a/test/s3-buckets-usage-metric-publisher.monitor.test.ts b/test/s3-buckets-usage-metric-publisher.monitor.test.ts index 299a59c..13d2710 100644 --- a/test/s3-buckets-usage-metric-publisher.monitor.test.ts +++ b/test/s3-buckets-usage-metric-publisher.monitor.test.ts @@ -1,8 +1,10 @@ -import path from 'path'; -import * as AWSMock from 'aws-sdk-mock'; +import { CloudWatchClient, PutMetricDataCommand, PutMetricDataCommandInput } from '@aws-sdk/client-cloudwatch'; +import { ListBucketsCommand, S3Client } from '@aws-sdk/client-s3'; +import { mockClient } from 'aws-sdk-client-mock'; import { monitor } from '../src/s3-buckets-usage-metric-publisher.monitor'; -AWSMock.setSDK(path.resolve('./node_modules/aws-sdk')); +const s3Mock = mockClient(S3Client); +const cwMock = mockClient(CloudWatchClient); // Silence log output (['log', 'error'] as jest.FunctionPropertyNames>[]).forEach((func) => @@ -11,23 +13,22 @@ AWSMock.setSDK(path.resolve('./node_modules/aws-sdk')); describe('monitor', () => { beforeEach(() => { + cwMock.reset(); + s3Mock.reset(); + process.env.CW_NAMESPACE = 'test-namespace'; - AWSMock.mock('S3', 'listBuckets', mockListBuckets); - AWSMock.mock('CloudWatch', 'putMetricData', (params: AWS.CloudWatch.PutMetricDataInput, callback) => { - console.log(params); - callback(undefined, {}); - }); }); - afterEach(() => { - AWSMock.restore(); - }); + it('should publish metric data to CloudWatch', async () => { + s3Mock.on(ListBucketsCommand).resolves({ + Buckets: [{ Name: 'bucket1' }, { Name: 'bucket2' }, { Name: 'bucket3' }, { Name: 'bucket4' }], + }); - const mockListBuckets = jest.fn(() => { - return { Buckets: [{ Name: 'bucket1' }, { Name: 'bucket2' }, { Name: 'bucket3' }, { Name: 'bucket4' }] }; - }); + cwMock.on(PutMetricDataCommand).callsFake((params: PutMetricDataCommandInput, callback) => { + console.log(params); + callback(); + }); - it('should publish metric data to CloudWatch', async () => { const result = await monitor(); expect(result).toEqual({ numberOfBuckets: 4 }); }); @@ -38,13 +39,15 @@ describe('monitor', () => { }); it('should log "No results to publish" if there are no results', async () => { - AWSMock.remock( - 'S3', - 'listBuckets', - jest.fn(() => { - return { numberOfBuckets: 0 }; - }), - ); + s3Mock.on(ListBucketsCommand).resolves({ + Buckets: [], + }); + + cwMock.on(PutMetricDataCommand).callsFake((params: PutMetricDataCommandInput, callback) => { + console.log(params); + callback(); + }); + const consoleSpy = jest.spyOn(console, 'log').mockImplementation(); const result = await monitor(); expect(result).toEqual({ numberOfBuckets: 0 }); @@ -53,16 +56,17 @@ describe('monitor', () => { }); it('should throw an error if there is an error publishing metric data', async () => { - AWSMock.remock('CloudWatch', 'putMetricData', (params: AWS.CloudWatch.PutMetricDataInput, callback) => { - callback( - { - code: '1', - message: `Intentional mock failure: ${params}`, - time: new Date(), - name: 'MockECSAWSError', - }, - undefined, - ); + s3Mock.on(ListBucketsCommand).resolves({ + Buckets: [{ Name: 'bucket1' }, { Name: 'bucket2' }, { Name: 'bucket3' }, { Name: 'bucket4' }], + }); + + cwMock.on(PutMetricDataCommand).callsFake((params: PutMetricDataCommandInput) => { + return Promise.reject({ + code: '1', + message: `Intentional mock failure: ${params}`, + time: new Date(), + name: 'MockECSAWSError', + }); }); await expect(monitor()).rejects.toBeDefined(); });