From 66e964509edd532a8699d5f3abe1704d7edb02ad Mon Sep 17 00:00:00 2001 From: Geonoing Date: Thu, 8 Aug 2024 03:25:05 +0900 Subject: [PATCH 1/2] =?UTF-8?q?chore:=20sqs=20=EC=A0=81=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 2 + pnpm-lock.yaml | 903 +++++++++++++++++++++- serverless.yml | 36 +- src/ai_handler.ts | 21 +- src/infrastructure/queue/queue.module.ts | 14 + src/infrastructure/queue/queue.service.ts | 3 + src/infrastructure/queue/sqs.service.ts | 27 + src/infrastructure/queue/type.ts | 7 + src/modules/posts/posts.module.ts | 6 +- src/modules/posts/posts.service.ts | 15 +- 10 files changed, 979 insertions(+), 55 deletions(-) create mode 100644 src/infrastructure/queue/queue.module.ts create mode 100644 src/infrastructure/queue/queue.service.ts create mode 100644 src/infrastructure/queue/sqs.service.ts create mode 100644 src/infrastructure/queue/type.ts diff --git a/package.json b/package.json index 7fbce9c..3f49f54 100644 --- a/package.json +++ b/package.json @@ -33,6 +33,7 @@ }, "dependencies": { "@aws-sdk/client-lambda": "^3.606.0", + "@aws-sdk/client-sqs": "^3.624.0", "@nestjs/common": "^10.0.0", "@nestjs/config": "^3.2.2", "@nestjs/core": "^10.0.0", @@ -67,6 +68,7 @@ "@sentry/webpack-plugin": "^2.20.1", "@swc/cli": "^0.3.14", "@swc/core": "^1.6.5", + "@types/aws-lambda": "^8.10.143", "@types/express": "^4.17.17", "@types/jest": "^29.5.2", "@types/lodash": "^4.17.6", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 280bb4f..50878b9 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -11,6 +11,9 @@ importers: '@aws-sdk/client-lambda': specifier: ^3.606.0 version: 3.606.0 + '@aws-sdk/client-sqs': + specifier: ^3.624.0 + version: 3.624.0 '@nestjs/common': specifier: ^10.0.0 version: 10.3.9(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.1.14)(rxjs@7.8.1) @@ -25,7 +28,7 @@ importers: version: 10.2.0(@nestjs/common@10.3.9(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.1.14)(rxjs@7.8.1)) '@nestjs/mongoose': specifier: ^10.0.6 - version: 10.0.6(@nestjs/common@10.3.9(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.1.14)(rxjs@7.8.1))(@nestjs/core@10.3.9(@nestjs/common@10.3.9(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.1.14)(rxjs@7.8.1))(@nestjs/platform-express@10.3.9)(reflect-metadata@0.1.14)(rxjs@7.8.1))(mongoose@8.4.4(@aws-sdk/credential-providers@3.600.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0)))(socks@2.8.3))(rxjs@7.8.1) + version: 10.0.6(@nestjs/common@10.3.9(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.1.14)(rxjs@7.8.1))(@nestjs/core@10.3.9(@nestjs/common@10.3.9(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.1.14)(rxjs@7.8.1))(@nestjs/platform-express@10.3.9)(reflect-metadata@0.1.14)(rxjs@7.8.1))(mongoose@8.4.4(@aws-sdk/credential-providers@3.600.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0)))(socks@2.8.3))(rxjs@7.8.1) '@nestjs/passport': specifier: ^10.0.3 version: 10.0.3(@nestjs/common@10.3.9(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.1.14)(rxjs@7.8.1))(passport@0.7.0) @@ -70,7 +73,7 @@ importers: version: 4.17.21 mongoose: specifier: ^8.4.1 - version: 8.4.4(@aws-sdk/credential-providers@3.600.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0)))(socks@2.8.3) + version: 8.4.4(@aws-sdk/credential-providers@3.600.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0)))(socks@2.8.3) openai: specifier: ^4.52.2 version: 4.52.2 @@ -108,6 +111,9 @@ importers: '@swc/core': specifier: ^1.6.5 version: 1.6.5 + '@types/aws-lambda': + specifier: ^8.10.143 + version: 8.10.143 '@types/express': specifier: ^4.17.17 version: 4.17.21 @@ -161,7 +167,7 @@ importers: version: 4.1.6 serverless-domain-manager: specifier: ^7.3.8 - version: 7.3.8(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0))(serverless@4.1.6) + version: 7.3.8(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0))(serverless@4.1.6) serverless-dotenv-plugin: specifier: ^6.0.0 version: 6.0.0(serverless@4.1.6) @@ -278,6 +284,10 @@ packages: resolution: {integrity: sha512-iYoKbJTputbf+ubkX6gSK/y/4uJEBRaXZ18jykLdBQ8UJuGrk2gqvV8h7OlGAhToCeysmmMqM0vDWyLt6lP8nw==} engines: {node: '>=16.0.0'} + '@aws-sdk/client-sqs@3.624.0': + resolution: {integrity: sha512-2LSbsvstex9rIQDXNHJRYDz4mUcbep4ompvTADX8+7JlovzjKIODYiV5p35nq9rX/68HxxeSsPt8oz0zb8ESjw==} + engines: {node: '>=16.0.0'} + '@aws-sdk/client-sso-oidc@3.600.0': resolution: {integrity: sha512-7+I8RWURGfzvChyNQSyj5/tKrqRbzRl7H+BnTOf/4Vsw1nFOi5ROhlhD4X/Y0QCTacxnaoNcIrqnY7uGGvVRzw==} engines: {node: '>=16.0.0'} @@ -288,10 +298,20 @@ packages: peerDependencies: '@aws-sdk/client-sts': ^3.606.0 + '@aws-sdk/client-sso-oidc@3.624.0': + resolution: {integrity: sha512-Ki2uKYJKKtfHxxZsiMTOvJoVRP6b2pZ1u3rcUb2m/nVgBPUfLdl8ZkGpqE29I+t5/QaS/sEdbn6cgMUZwl+3Dg==} + engines: {node: '>=16.0.0'} + peerDependencies: + '@aws-sdk/client-sts': ^3.624.0 + '@aws-sdk/client-sso@3.598.0': resolution: {integrity: sha512-nOI5lqPYa+YZlrrzwAJywJSw3MKVjvu6Ge2fCqQUNYMfxFB0NAaDFnl0EPjXi+sEbtCuz/uWE77poHbqiZ+7Iw==} engines: {node: '>=16.0.0'} + '@aws-sdk/client-sso@3.624.0': + resolution: {integrity: sha512-EX6EF+rJzMPC5dcdsu40xSi2To7GSvdGQNIpe97pD9WvZwM9tRNQnNM4T6HA4gjV1L6Jwk8rBlG/CnveXtLEMw==} + engines: {node: '>=16.0.0'} + '@aws-sdk/client-sts@3.600.0': resolution: {integrity: sha512-KQG97B7LvTtTiGmjlrG1LRAY8wUvCQzrmZVV5bjrJ/1oXAU7DITYwVbSJeX9NWg6hDuSk0VE3MFwIXS2SvfLIA==} engines: {node: '>=16.0.0'} @@ -300,10 +320,18 @@ packages: resolution: {integrity: sha512-b11mAhjrkm3MMiAPoMGcmd6vsaz2120lg8rHG/NZCo9vB1K6Kc7WP+a1Q05TRMseer2egTtpWJfn44aVO97VqA==} engines: {node: '>=16.0.0'} + '@aws-sdk/client-sts@3.624.0': + resolution: {integrity: sha512-k36fLZCb2nfoV/DKK3jbRgO/Yf7/R80pgYfMiotkGjnZwDmRvNN08z4l06L9C+CieazzkgRxNUzyppsYcYsQaw==} + engines: {node: '>=16.0.0'} + '@aws-sdk/core@3.598.0': resolution: {integrity: sha512-HaSjt7puO5Cc7cOlrXFCW0rtA0BM9lvzjl56x0A20Pt+0wxXGeTOZZOkXQIepbrFkV2e/HYukuT9e99vXDm59g==} engines: {node: '>=16.0.0'} + '@aws-sdk/core@3.624.0': + resolution: {integrity: sha512-WyFmPbhRIvtWi7hBp8uSFy+iPpj8ccNV/eX86hwF4irMjfc/FtsGVIAeBXxXM/vGCjkdfEzOnl+tJ2XACD4OXg==} + engines: {node: '>=16.0.0'} + '@aws-sdk/credential-provider-cognito-identity@3.600.0': resolution: {integrity: sha512-AIM+B06d1+71EuBrk2UR9ZZgRS3a+ARxE3oZKMZYlfqtZ3kY8w4DkhEt7OVruc6uSsMhkrcQT6nxsOxFSi4RtA==} engines: {node: '>=16.0.0'} @@ -312,34 +340,66 @@ packages: resolution: {integrity: sha512-vi1khgn7yXzLCcgSIzQrrtd2ilUM0dWodxj3PQ6BLfP0O+q1imO3hG1nq7DVyJtq7rFHs6+9N8G4mYvTkxby2w==} engines: {node: '>=16.0.0'} + '@aws-sdk/credential-provider-env@3.620.1': + resolution: {integrity: sha512-ExuILJ2qLW5ZO+rgkNRj0xiAipKT16Rk77buvPP8csR7kkCflT/gXTyzRe/uzIiETTxM7tr8xuO9MP/DQXqkfg==} + engines: {node: '>=16.0.0'} + '@aws-sdk/credential-provider-http@3.598.0': resolution: {integrity: sha512-N7cIafi4HVlQvEgvZSo1G4T9qb/JMLGMdBsDCT5XkeJrF0aptQWzTFH0jIdZcLrMYvzPcuEyO3yCBe6cy/ba0g==} engines: {node: '>=16.0.0'} + '@aws-sdk/credential-provider-http@3.622.0': + resolution: {integrity: sha512-VUHbr24Oll1RK3WR8XLUugLpgK9ZuxEm/NVeVqyFts1Ck9gsKpRg1x4eH7L7tW3SJ4TDEQNMbD7/7J+eoL2svg==} + engines: {node: '>=16.0.0'} + '@aws-sdk/credential-provider-ini@3.598.0': resolution: {integrity: sha512-/ppcIVUbRwDIwJDoYfp90X3+AuJo2mvE52Y1t2VSrvUovYn6N4v95/vXj6LS8CNDhz2jvEJYmu+0cTMHdhI6eA==} engines: {node: '>=16.0.0'} peerDependencies: '@aws-sdk/client-sts': ^3.598.0 + '@aws-sdk/credential-provider-ini@3.624.0': + resolution: {integrity: sha512-mMoNIy7MO2WTBbdqMyLpbt6SZpthE6e0GkRYpsd0yozPt0RZopcBhEh+HG1U9Y1PVODo+jcMk353vAi61CfnhQ==} + engines: {node: '>=16.0.0'} + peerDependencies: + '@aws-sdk/client-sts': ^3.624.0 + '@aws-sdk/credential-provider-node@3.600.0': resolution: {integrity: sha512-1pC7MPMYD45J7yFjA90SxpR0yaSvy+yZiq23aXhAPZLYgJBAxHLu0s0mDCk/piWGPh8+UGur5K0bVdx4B1D5hw==} engines: {node: '>=16.0.0'} + '@aws-sdk/credential-provider-node@3.624.0': + resolution: {integrity: sha512-vYyGK7oNpd81BdbH5IlmQ6zfaQqU+rPwsKTDDBeLRjshtrGXOEpfoahVpG9PX0ibu32IOWp4ZyXBNyVrnvcMOw==} + engines: {node: '>=16.0.0'} + '@aws-sdk/credential-provider-process@3.598.0': resolution: {integrity: sha512-rM707XbLW8huMk722AgjVyxu2tMZee++fNA8TJVNgs1Ma02Wx6bBrfIvlyK0rCcIRb0WdQYP6fe3Xhiu4e8IBA==} engines: {node: '>=16.0.0'} + '@aws-sdk/credential-provider-process@3.620.1': + resolution: {integrity: sha512-hWqFMidqLAkaV9G460+1at6qa9vySbjQKKc04p59OT7lZ5cO5VH5S4aI05e+m4j364MBROjjk2ugNvfNf/8ILg==} + engines: {node: '>=16.0.0'} + '@aws-sdk/credential-provider-sso@3.598.0': resolution: {integrity: sha512-5InwUmrAuqQdOOgxTccRayMMkSmekdLk6s+az9tmikq0QFAHUCtofI+/fllMXSR9iL6JbGYi1940+EUmS4pHJA==} engines: {node: '>=16.0.0'} + '@aws-sdk/credential-provider-sso@3.624.0': + resolution: {integrity: sha512-A02bayIjU9APEPKr3HudrFHEx0WfghoSPsPopckDkW7VBqO4wizzcxr75Q9A3vNX+cwg0wCN6UitTNe6pVlRaQ==} + engines: {node: '>=16.0.0'} + '@aws-sdk/credential-provider-web-identity@3.598.0': resolution: {integrity: sha512-GV5GdiMbz5Tz9JO4NJtRoFXjW0GPEujA0j+5J/B723rTN+REHthJu48HdBKouHGhdzkDWkkh1bu52V02Wprw8w==} engines: {node: '>=16.0.0'} peerDependencies: '@aws-sdk/client-sts': ^3.598.0 + '@aws-sdk/credential-provider-web-identity@3.621.0': + resolution: {integrity: sha512-w7ASSyfNvcx7+bYGep3VBgC3K6vEdLmlpjT7nSIHxxQf+WSdvy+HynwJosrpZax0sK5q0D1Jpn/5q+r5lwwW6w==} + engines: {node: '>=16.0.0'} + peerDependencies: + '@aws-sdk/client-sts': ^3.621.0 + '@aws-sdk/credential-providers@3.600.0': resolution: {integrity: sha512-cC9uqmX0rgx1efiJGqeR+i0EXr8RQ5SAzH7M45WNBZpYiLEe6reWgIYJY9hmOxuaoMdWSi8kekuN3IjTIORRjw==} engines: {node: '>=16.0.0'} @@ -360,6 +420,10 @@ packages: resolution: {integrity: sha512-WiaG059YBQwQraNejLIi0gMNkX7dfPZ8hDIhvMr5aVPRbaHH8AYF3iNSsXYCHvA2Cfa1O9haYXsuMF9flXnCmA==} engines: {node: '>=16.0.0'} + '@aws-sdk/middleware-host-header@3.620.0': + resolution: {integrity: sha512-VMtPEZwqYrII/oUkffYsNWY9PZ9xpNJpMgmyU0rlDQ25O1c0Hk3fJmZRe6pEkAJ0omD7kLrqGl1DUjQVxpd/Rg==} + engines: {node: '>=16.0.0'} + '@aws-sdk/middleware-location-constraint@3.598.0': resolution: {integrity: sha512-8oybQxN3F1ISOMULk7JKJz5DuAm5hCUcxMW9noWShbxTJuStNvuHf/WLUzXrf8oSITyYzIHPtf8VPlKR7I3orQ==} engines: {node: '>=16.0.0'} @@ -368,10 +432,18 @@ packages: resolution: {integrity: sha512-bxBjf/VYiu3zfu8SYM2S9dQQc3tz5uBAOcPz/Bt8DyyK3GgOpjhschH/2XuUErsoUO1gDJqZSdGOmuHGZQn00Q==} engines: {node: '>=16.0.0'} + '@aws-sdk/middleware-logger@3.609.0': + resolution: {integrity: sha512-S62U2dy4jMDhDFDK5gZ4VxFdWzCtLzwbYyFZx2uvPYTECkepLUfzLic2BHg2Qvtu4QjX+oGE3P/7fwaGIsGNuQ==} + engines: {node: '>=16.0.0'} + '@aws-sdk/middleware-recursion-detection@3.598.0': resolution: {integrity: sha512-vjT9BeFY9FeN0f8hm2l6F53tI0N5bUq6RcDkQXKNabXBnQxKptJRad6oP2X5y3FoVfBLOuDkQgiC2940GIPxtQ==} engines: {node: '>=16.0.0'} + '@aws-sdk/middleware-recursion-detection@3.620.0': + resolution: {integrity: sha512-nh91S7aGK3e/o1ck64sA/CyoFw+gAYj2BDOnoNa6ouyCrVJED96ZXWbhye/fz9SgmNUZR2g7GdVpiLpMKZoI5w==} + engines: {node: '>=16.0.0'} + '@aws-sdk/middleware-sdk-api-gateway@3.598.0': resolution: {integrity: sha512-VJLhV1C5MrV+QBRfzTXCyZvFizY/mBf6b7AZ9NsUH54/VbasorFBY5ol+p+0sPuDwRxXWX+nWdAvs2p4uhSBFQ==} engines: {node: '>=16.0.0'} @@ -384,6 +456,10 @@ packages: resolution: {integrity: sha512-5AGtLAh9wyK6ANPYfaKTqJY1IFJyePIxsEbxa7zS6REheAqyVmgJFaGu3oQ5XlxfGr5Uq59tFTRkyx26G1HkHA==} engines: {node: '>=16.0.0'} + '@aws-sdk/middleware-sdk-sqs@3.622.0': + resolution: {integrity: sha512-kOPX94jlVcvH7Wutzag99L+BSjT6LjXxW7Ntc02/oywYX6Gft4YdbeUYdcGYYHWDy/IT6jJ2wMJfFUEEh8U/9A==} + engines: {node: '>=16.0.0'} + '@aws-sdk/middleware-signing@3.598.0': resolution: {integrity: sha512-XKb05DYx/aBPqz6iCapsCbIl8aD8EihTuPCs51p75QsVfbQoVr4TlFfIl5AooMSITzojdAQqxt021YtvxjtxIQ==} engines: {node: '>=16.0.0'} @@ -396,10 +472,18 @@ packages: resolution: {integrity: sha512-4tjESlHG5B5MdjUaLK7tQs/miUtHbb6deauQx8ryqSBYOhfHVgb1ZnzvQR0bTrhpqUg0WlybSkDaZAICf9xctg==} engines: {node: '>=16.0.0'} + '@aws-sdk/middleware-user-agent@3.620.0': + resolution: {integrity: sha512-bvS6etn+KsuL32ubY5D3xNof1qkenpbJXf/ugGXbg0n98DvDFQ/F+SMLxHgbnER5dsKYchNnhmtI6/FC3HFu/A==} + engines: {node: '>=16.0.0'} + '@aws-sdk/region-config-resolver@3.598.0': resolution: {integrity: sha512-oYXhmTokSav4ytmWleCr3rs/1nyvZW/S0tdi6X7u+dLNL5Jee+uMxWGzgOrWK6wrQOzucLVjS4E/wA11Kv2GTw==} engines: {node: '>=16.0.0'} + '@aws-sdk/region-config-resolver@3.614.0': + resolution: {integrity: sha512-vDCeMXvic/LU0KFIUjpC3RiSTIkkvESsEfbVHiHH0YINfl8HnEqR5rj+L8+phsCeVg2+LmYwYxd5NRz4PHxt5g==} + engines: {node: '>=16.0.0'} + '@aws-sdk/signature-v4-multi-region@3.598.0': resolution: {integrity: sha512-1r/EyTrO1gSa1FirnR8V7mabr7gk+l+HkyTI0fcTSr8ucB7gmYyW6WjkY8JCz13VYHFK62usCEDS7yoJoJOzTA==} engines: {node: '>=16.0.0'} @@ -410,10 +494,20 @@ packages: peerDependencies: '@aws-sdk/client-sso-oidc': ^3.598.0 + '@aws-sdk/token-providers@3.614.0': + resolution: {integrity: sha512-okItqyY6L9IHdxqs+Z116y5/nda7rHxLvROxtAJdLavWTYDydxrZstImNgGWTeVdmc0xX2gJCI77UYUTQWnhRw==} + engines: {node: '>=16.0.0'} + peerDependencies: + '@aws-sdk/client-sso-oidc': ^3.614.0 + '@aws-sdk/types@3.598.0': resolution: {integrity: sha512-742uRl6z7u0LFmZwDrFP6r1wlZcgVPw+/TilluDJmCAR8BgRw3IR+743kUXKBGd8QZDRW2n6v/PYsi/AWCDDMQ==} engines: {node: '>=16.0.0'} + '@aws-sdk/types@3.609.0': + resolution: {integrity: sha512-+Tqnh9w0h2LcrUsdXyT1F8mNhXz+tVYBtP19LpeEGntmvHwa2XzvLUCWpoIAIVsHp5+HdB2X9Sn0KAtmbFXc2Q==} + 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'} @@ -422,6 +516,10 @@ packages: resolution: {integrity: sha512-Qo9UoiVVZxcOEdiOMZg3xb1mzkTxrhd4qSlg5QQrfWPJVx/QOg+Iy0NtGxPtHtVZNHZxohYwDwV/tfsnDSE2gQ==} engines: {node: '>=16.0.0'} + '@aws-sdk/util-endpoints@3.614.0': + resolution: {integrity: sha512-wK2cdrXHH4oz4IomV/yrGkftU9A+ITB6nFL+rxxyO78is2ifHJpFdV4aqk4LSkXYPi6CXWNru/Dqc7yiKXgJPw==} + engines: {node: '>=16.0.0'} + '@aws-sdk/util-locate-window@3.568.0': resolution: {integrity: sha512-3nh4TINkXYr+H41QaPelCceEB2FXP3fxp93YZXB/kqJvX0U9j0N0Uk45gvsjmEPzG8XxkPEeLIfT2I1M7A6Lig==} engines: {node: '>=16.0.0'} @@ -429,6 +527,9 @@ packages: '@aws-sdk/util-user-agent-browser@3.598.0': resolution: {integrity: sha512-36Sxo6F+ykElaL1mWzWjlg+1epMpSe8obwhCN1yGE7Js9ywy5U6k6l+A3q3YM9YRbm740sNxncbwLklMvuhTKw==} + '@aws-sdk/util-user-agent-browser@3.609.0': + resolution: {integrity: sha512-fojPU+mNahzQ0YHYBsx0ZIhmMA96H+ZIZ665ObU9tl+SGdbLneVZVikGve+NmHTQwHzwkFsZYYnVKAkreJLAtA==} + '@aws-sdk/util-user-agent-node@3.598.0': resolution: {integrity: sha512-oyWGcOlfTdzkC6SVplyr0AGh54IMrDxbhg5RxJ5P+V4BKfcDoDcZV9xenUk9NsOi9MuUjxMumb9UJGkDhM1m0A==} engines: {node: '>=16.0.0'} @@ -438,6 +539,15 @@ packages: aws-crt: optional: true + '@aws-sdk/util-user-agent-node@3.614.0': + resolution: {integrity: sha512-15ElZT88peoHnq5TEoEtZwoXTXRxNrk60TZNdpl/TUBJ5oNJ9Dqb5Z4ryb8ofN6nm9aFf59GVAerFDz8iUoHBA==} + engines: {node: '>=16.0.0'} + peerDependencies: + aws-crt: '>=1.0.0' + peerDependenciesMeta: + aws-crt: + optional: true + '@aws-sdk/xml-builder@3.598.0': resolution: {integrity: sha512-ZIa2RK7CHFTZ4gwK77WRtsZ6vF7xwRXxJ8KQIxK2duhoTVcn0xYxpFLdW9WZZZvdP9GIF3Loqvf8DRdeU5Jc7Q==} engines: {node: '>=16.0.0'} @@ -1321,6 +1431,10 @@ packages: resolution: {integrity: sha512-XOm4LkuC0PsK1sf2bBJLIlskn5ghmVxiEBVlo/jg0R8hxASBKYYgOoJEhKWgOr4vWGkN+5rC+oyBAqHYtxjnwQ==} engines: {node: '>=16.0.0'} + '@smithy/abort-controller@3.1.1': + resolution: {integrity: sha512-MBJBiidoe+0cTFhyxT8g+9g7CeVccLM0IOKKUMCNQ1CNMJ/eIfoo0RTfVrXOONEI1UCN1W+zkiHSbzUNE9dZtQ==} + engines: {node: '>=16.0.0'} + '@smithy/chunked-blob-reader-native@3.0.0': resolution: {integrity: sha512-VDkpCYW+peSuM4zJip5WDfqvg2Mo/e8yxOv3VF1m11y7B8KKMKVFtmZWDe36Fvk8rGuWrPZHHXZ7rR7uM5yWyg==} @@ -1335,14 +1449,26 @@ packages: resolution: {integrity: sha512-4wHqCMkdfVDP4qmr4fVPYOFOH+vKhOv3X4e6KEU9wIC8xXUQ24tnF4CW+sddGDX1zU86GGyQ7A+rg2xmUD6jpQ==} engines: {node: '>=16.0.0'} + '@smithy/config-resolver@3.0.5': + resolution: {integrity: sha512-SkW5LxfkSI1bUC74OtfBbdz+grQXYiPYolyu8VfpLIjEoN/sHVBlLeGXMQ1vX4ejkgfv6sxVbQJ32yF2cl1veA==} + engines: {node: '>=16.0.0'} + '@smithy/core@2.2.3': resolution: {integrity: sha512-SpyLOL2vgE6sUYM6nQfu82OirCPkCDKctyG3aMgjMlDPTJpUlmlNH0ttu9ZWwzEjrzzr8uABmPjJTRI7gk1HFQ==} engines: {node: '>=16.0.0'} + '@smithy/core@2.3.2': + resolution: {integrity: sha512-in5wwt6chDBcUv1Lw1+QzZxN9fBffi+qOixfb65yK4sDuKG7zAUO9HAFqmVzsZM3N+3tTyvZjtnDXePpvp007Q==} + engines: {node: '>=16.0.0'} + '@smithy/credential-provider-imds@3.1.2': resolution: {integrity: sha512-gqVmUaNoeqyrOAjgZg+rTmFLsphh/vS59LCMdFfVpthVS0jbfBzvBmEPktBd+y9ME4DYMGHFAMSYJDK8q0noOQ==} engines: {node: '>=16.0.0'} + '@smithy/credential-provider-imds@3.2.0': + resolution: {integrity: sha512-0SCIzgd8LYZ9EJxUjLXBmEKSZR/P/w6l7Rz/pab9culE/RWuqelAKGJvn5qUOl8BgX8Yj5HWM50A5hiB/RzsgA==} + engines: {node: '>=16.0.0'} + '@smithy/eventstream-codec@3.1.1': resolution: {integrity: sha512-s29NxV/ng1KXn6wPQ4qzJuQDjEtxLdS0+g5PQFirIeIZrp66FXVJ5IpZRowbt/42zB5dY8TqJ0G0L9KkgtsEZg==} @@ -1368,6 +1494,9 @@ packages: '@smithy/fetch-http-handler@3.1.0': resolution: {integrity: sha512-s7oQjEOUH9TYjctpITtWF4qxOdg7pBrP9eigEQ8SBsxF3dRFV0S28pGMllC83DUr7ECmErhO/BUwnULfoNhKgQ==} + '@smithy/fetch-http-handler@3.2.4': + resolution: {integrity: sha512-kBprh5Gs5h7ug4nBWZi1FZthdqSM+T7zMmsZxx0IBvWUn7dK3diz2SHn7Bs4dQGFDk8plDv375gzenDoNwrXjg==} + '@smithy/hash-blob-browser@3.1.1': resolution: {integrity: sha512-8RwdPG7arvL5pfMAFsH6jfBVcC7MDR1LYHjKevZPHREkVtORIQkRfm2K8px7giJt7x0zzQJnWamrsDM4ig8nTQ==} @@ -1375,6 +1504,10 @@ packages: resolution: {integrity: sha512-43uGA6o6QJQdXwAogybdTDHDd3SCdKyoiHIHb8PpdE2rKmVicjG9b1UgVwdgO8QPytmVqHFaUw27M3LZKwu8Yg==} engines: {node: '>=16.0.0'} + '@smithy/hash-node@3.0.3': + resolution: {integrity: sha512-2ctBXpPMG+B3BtWSGNnKELJ7SH9e4TNefJS0cd2eSkOOROeBnnVBnAy9LtJ8tY4vUEoe55N4CNPxzbWvR39iBw==} + engines: {node: '>=16.0.0'} + '@smithy/hash-stream-node@3.1.1': resolution: {integrity: sha512-+uvJHPrFNE9crkh3INVS9FmDcx1DoywDgIzlRWlPy7gqoD8jG14os9ATIFY7wN/ARPz1EWlkCHUap70oXxMmjA==} engines: {node: '>=16.0.0'} @@ -1382,6 +1515,9 @@ packages: '@smithy/invalid-dependency@3.0.2': resolution: {integrity: sha512-+BAY3fMhomtq470tswXyrdVBSUhiLuhBVT+rOmpbz5e04YX+s1dX4NxTLzZGwBjCpeWZNtTxP8zbIvvFk81gUg==} + '@smithy/invalid-dependency@3.0.3': + resolution: {integrity: sha512-ID1eL/zpDULmHJbflb864k72/SNOZCADRc9i7Exq3RUNJw6raWUSlFEQ+3PX3EYs++bTxZB2dE9mEHTQLv61tw==} + '@smithy/is-array-buffer@2.2.0': resolution: {integrity: sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==} engines: {node: '>=14.0.0'} @@ -1393,10 +1529,17 @@ packages: '@smithy/md5-js@3.0.2': resolution: {integrity: sha512-WlSK9br7fkVucTkCXporwuOttCR3cJ1GV70J8ENYXGNc0nUTPzMdWCyHztgnbbKoekVMjGZOEu+8I52nOdzqwQ==} + '@smithy/md5-js@3.0.3': + resolution: {integrity: sha512-O/SAkGVwpWmelpj/8yDtsaVe6sINHLB1q8YE/+ZQbDxIw3SRLbTZuRaI10K12sVoENdnHqzPp5i3/H+BcZ3m3Q==} + '@smithy/middleware-content-length@3.0.2': resolution: {integrity: sha512-/Havz3PkYIEmwpqkyRTR21yJsWnFbD1ec4H1pUL+TkDnE7RCQkAVUQepLL/UeCaZeCBXvfdoKbOjSbV01xIinQ==} engines: {node: '>=16.0.0'} + '@smithy/middleware-content-length@3.0.5': + resolution: {integrity: sha512-ILEzC2eyxx6ncej3zZSwMpB5RJ0zuqH7eMptxC4KN3f+v9bqT8ohssKbhNR78k/2tWW+KS5Spw+tbPF4Ejyqvw==} + engines: {node: '>=16.0.0'} + '@smithy/middleware-endpoint@2.5.1': resolution: {integrity: sha512-1/8kFp6Fl4OsSIVTWHnNjLnTL8IqpIb/D3sTSczrKFnrE9VMNWxnrRKNvpUHOJ6zpGD5f62TPm7+17ilTJpiCQ==} engines: {node: '>=14.0.0'} @@ -1405,6 +1548,14 @@ packages: resolution: {integrity: sha512-ARAXHodhj4tttKa9y75zvENdSoHq6VGsSi7XS3+yLutrnxttJs6N10UMInCC1yi3/bopT8xug3iOP/y9R6sKJQ==} engines: {node: '>=16.0.0'} + '@smithy/middleware-endpoint@3.1.0': + resolution: {integrity: sha512-5y5aiKCEwg9TDPB4yFE7H6tYvGFf1OJHNczeY10/EFF8Ir8jZbNntQJxMWNfeQjC1mxPsaQ6mR9cvQbf+0YeMw==} + engines: {node: '>=16.0.0'} + + '@smithy/middleware-retry@3.0.14': + resolution: {integrity: sha512-7ZaWZJOjUxa5hgmuMspyt8v/zVsh0GXYuF7OvCmdcbVa/xbnKQoYC+uYKunAqRGTkxjOyuOCw9rmFUFOqqC0eQ==} + engines: {node: '>=16.0.0'} + '@smithy/middleware-retry@3.0.6': resolution: {integrity: sha512-ICsFKp8eAyIMmxN5UT3IU37S6886L879TKtgxPsn/VD/laYNwqTLmJaCAn5//+2fRIrV0dnHp6LFlMwdXlWoUQ==} engines: {node: '>=16.0.0'} @@ -1417,6 +1568,10 @@ packages: resolution: {integrity: sha512-oT2abV5zLhBucJe1LIIFEcRgIBDbZpziuMPswTMbBQNcaEUycLFvX63zsFmqfwG+/ZQKsNx+BSE8W51CMuK7Yw==} engines: {node: '>=16.0.0'} + '@smithy/middleware-serde@3.0.3': + resolution: {integrity: sha512-puUbyJQBcg9eSErFXjKNiGILJGtiqmuuNKEYNYfUD57fUl4i9+mfmThtQhvFXU0hCVG0iEJhvQUipUf+/SsFdA==} + engines: {node: '>=16.0.0'} + '@smithy/middleware-stack@2.2.0': resolution: {integrity: sha512-Qntc3jrtwwrsAC+X8wms8zhrTr0sFXnyEGhZd9sLtsJ/6gGQKFzNB+wWbOcpJd7BR8ThNCoKt76BuQahfMvpeA==} engines: {node: '>=14.0.0'} @@ -1425,6 +1580,10 @@ packages: resolution: {integrity: sha512-6fRcxomlNKBPIy/YjcnC7YHpMAjRvGUYlYVJAfELqZjkW0vQegNcImjY7T1HgYA6u3pAcCxKVBLYnkTw8z/l0A==} engines: {node: '>=16.0.0'} + '@smithy/middleware-stack@3.0.3': + resolution: {integrity: sha512-r4klY9nFudB0r9UdSMaGSyjyQK5adUyPnQN/ZM6M75phTxOdnc/AhpvGD1fQUvgmqjQEBGCwpnPbDm8pH5PapA==} + engines: {node: '>=16.0.0'} + '@smithy/node-config-provider@2.3.0': resolution: {integrity: sha512-0elK5/03a1JPWMDPaS726Iw6LpQg80gFut1tNpPfxFuChEEklo2yL823V94SpTZTxmKlXFtFgsP55uh3dErnIg==} engines: {node: '>=14.0.0'} @@ -1433,6 +1592,10 @@ packages: resolution: {integrity: sha512-388fEAa7+6ORj/BDC70peg3fyFBTTXJyXfXJ0Bwd6FYsRltePr2oGzIcm5AuC1WUSLtZ/dF+hYOnfTMs04rLvA==} engines: {node: '>=16.0.0'} + '@smithy/node-config-provider@3.1.4': + resolution: {integrity: sha512-YvnElQy8HR4vDcAjoy7Xkx9YT8xZP4cBXcbJSgm/kxmiQu08DwUwj8rkGnyoJTpfl/3xYHH+d8zE+eHqoDCSdQ==} + engines: {node: '>=16.0.0'} + '@smithy/node-http-handler@2.5.0': resolution: {integrity: sha512-mVGyPBzkkGQsPoxQUbxlEfRjrj6FPyA3u3u2VXGr9hT8wilsoQdZdvKpMBFMB8Crfhv5dNkKHIW0Yyuc7eABqA==} engines: {node: '>=14.0.0'} @@ -1441,6 +1604,10 @@ packages: resolution: {integrity: sha512-pOpgB6B+VLXLwAyyvRz+ZAVXABlbAsJ2xvn3WZvrppAPImxwQOPFbeSUzWYMhpC8Tr7yQ3R8fG990QDhskkf1Q==} engines: {node: '>=16.0.0'} + '@smithy/node-http-handler@3.1.4': + resolution: {integrity: sha512-+UmxgixgOr/yLsUxcEKGH0fMNVteJFGkmRltYFHnBMlogyFdpzn2CwqWmxOrfJELhV34v0WSlaqG1UtE1uXlJg==} + engines: {node: '>=16.0.0'} + '@smithy/property-provider@2.2.0': resolution: {integrity: sha512-+xiil2lFhtTRzXkx8F053AV46QnIw6e7MV8od5Mi68E1ICOjCeCHw2XfLnDEUHnT9WGUIkwcqavXjfwuJbGlpg==} engines: {node: '>=14.0.0'} @@ -1449,6 +1616,10 @@ packages: resolution: {integrity: sha512-Hzp32BpeFFexBpO1z+ts8okbq/VLzJBadxanJAo/Wf2CmvXMBp6Q/TLWr7Js6IbMEcr0pDZ02V3u1XZkuQUJaA==} engines: {node: '>=16.0.0'} + '@smithy/property-provider@3.1.3': + resolution: {integrity: sha512-zahyOVR9Q4PEoguJ/NrFP4O7SMAfYO1HLhB18M+q+Z4KFd4V2obiMnlVoUFzFLSPeVt1POyNWneHHrZaTMoc/g==} + engines: {node: '>=16.0.0'} + '@smithy/protocol-http@3.3.0': resolution: {integrity: sha512-Xy5XK1AFWW2nlY/biWZXu6/krgbaf2dg0q492D8M5qthsnU2H+UgFeZLbM76FnH7s6RO/xhQRkj+T6KBO3JzgQ==} engines: {node: '>=14.0.0'} @@ -1457,6 +1628,10 @@ packages: resolution: {integrity: sha512-X/90xNWIOqSR2tLUyWxVIBdatpm35DrL44rI/xoeBWUuanE0iyCXJpTcnqlOpnEzgcu0xCKE06+g70TTu2j7RQ==} engines: {node: '>=16.0.0'} + '@smithy/protocol-http@4.1.0': + resolution: {integrity: sha512-dPVoHYQ2wcHooGXg3LQisa1hH0e4y0pAddPMeeUPipI1tEOqL6A4N0/G7abeq+K8wrwSgjk4C0wnD1XZpJm5aA==} + engines: {node: '>=16.0.0'} + '@smithy/querystring-builder@2.2.0': resolution: {integrity: sha512-L1kSeviUWL+emq3CUVSgdogoM/D9QMFaqxL/dd0X7PCNWmPXqt+ExtrBjqT0V7HLN03Vs9SuiLrG3zy3JGnE5A==} engines: {node: '>=14.0.0'} @@ -1465,6 +1640,10 @@ packages: resolution: {integrity: sha512-xhv1+HacDYsOLdNt7zW+8Fe779KYAzmWvzs9bC5NlKM8QGYCwwuFwDBynhlU4D5twgi2pZ14Lm4h6RiAazCtmA==} engines: {node: '>=16.0.0'} + '@smithy/querystring-builder@3.0.3': + resolution: {integrity: sha512-vyWckeUeesFKzCDaRwWLUA1Xym9McaA6XpFfAK5qI9DKJ4M33ooQGqvM4J+LalH4u/Dq9nFiC8U6Qn1qi0+9zw==} + engines: {node: '>=16.0.0'} + '@smithy/querystring-parser@2.2.0': resolution: {integrity: sha512-BvHCDrKfbG5Yhbpj4vsbuPV2GgcpHiAkLeIlcA1LtfpMz3jrqizP1+OguSNSj1MwBHEiN+jwNisXLGdajGDQJA==} engines: {node: '>=14.0.0'} @@ -1473,6 +1652,10 @@ packages: resolution: {integrity: sha512-C5hyRKgrZGPNh5QqIWzXnW+LXVrPmVQO0iJKjHeb5v3C61ZkP9QhrKmbfchcTyg/VnaE0tMNf/nmLpQlWuiqpg==} engines: {node: '>=16.0.0'} + '@smithy/querystring-parser@3.0.3': + resolution: {integrity: sha512-zahM1lQv2YjmznnfQsWbYojFe55l0SLG/988brlLv1i8z3dubloLF+75ATRsqPBboUXsW6I9CPGE5rQgLfY0vQ==} + engines: {node: '>=16.0.0'} + '@smithy/service-error-classification@2.1.5': resolution: {integrity: sha512-uBDTIBBEdAQryvHdc5W8sS5YX7RQzF683XrHePVdFmAgKiMofU15FLSM0/HU03hKTnazdNRFa0YHS7+ArwoUSQ==} engines: {node: '>=14.0.0'} @@ -1481,6 +1664,10 @@ packages: resolution: {integrity: sha512-cu0WV2XRttItsuXlcM0kq5MKdphbMMmSd2CXF122dJ75NrFE0o7rruXFGfxAp3BKzgF/DMxX+PllIA/cj4FHMw==} engines: {node: '>=16.0.0'} + '@smithy/service-error-classification@3.0.3': + resolution: {integrity: sha512-Jn39sSl8cim/VlkLsUhRFq/dKDnRUFlfRkvhOJaUbLBXUsLRLNf9WaxDv/z9BjuQ3A6k/qE8af1lsqcwm7+DaQ==} + engines: {node: '>=16.0.0'} + '@smithy/shared-ini-file-loader@2.4.0': resolution: {integrity: sha512-WyujUJL8e1B6Z4PBfAqC/aGY1+C7T0w20Gih3yrvJSk97gpiVfB+y7c46T4Nunk+ZngLq0rOIdeVeIklk0R3OA==} engines: {node: '>=14.0.0'} @@ -1489,14 +1676,26 @@ packages: resolution: {integrity: sha512-tgnXrXbLMO8vo6VeuqabMw/eTzQHlLmZx0TC0TjtjJghnD0Xl4pEnJtBjTJr6XF5fHMNrt5BcczDXHJT9yNQnA==} engines: {node: '>=16.0.0'} + '@smithy/shared-ini-file-loader@3.1.4': + resolution: {integrity: sha512-qMxS4hBGB8FY2GQqshcRUy1K6k8aBWP5vwm8qKkCT3A9K2dawUwOIJfqh9Yste/Bl0J2lzosVyrXDj68kLcHXQ==} + engines: {node: '>=16.0.0'} + '@smithy/signature-v4@3.1.1': resolution: {integrity: sha512-2/vlG86Sr489XX8TA/F+VDA+P04ESef04pSz0wRtlQBExcSPjqO08rvrkcas2zLnJ51i+7ukOURCkgqixBYjSQ==} engines: {node: '>=16.0.0'} + '@smithy/signature-v4@4.1.0': + resolution: {integrity: sha512-aRryp2XNZeRcOtuJoxjydO6QTaVhxx/vjaR+gx7ZjaFgrgPRyZ3HCTbfwqYj6ZWEBHkCSUfcaymKPURaByukag==} + engines: {node: '>=16.0.0'} + '@smithy/smithy-client@2.5.1': resolution: {integrity: sha512-jrbSQrYCho0yDaaf92qWgd+7nAeap5LtHTI51KXqmpIFCceKU3K9+vIVTUH72bOJngBMqa4kyu1VJhRcSrk/CQ==} engines: {node: '>=14.0.0'} + '@smithy/smithy-client@3.1.12': + resolution: {integrity: sha512-wtm8JtsycthkHy1YA4zjIh2thJgIQ9vGkoR639DBx5lLlLNU0v4GARpQZkr2WjXue74nZ7MiTSWfVrLkyD8RkA==} + engines: {node: '>=16.0.0'} + '@smithy/smithy-client@3.1.4': resolution: {integrity: sha512-y6xJROGrIoitjpwXLY7P9luDHvuT9jWpAluliuSFdBymFxcl6iyQjo9U/JhYfRHFNTruqsvKOrOESVuPGEcRmQ==} engines: {node: '>=16.0.0'} @@ -1509,12 +1708,19 @@ packages: resolution: {integrity: sha512-cKyeKAPazZRVqm7QPvcPD2jEIt2wqDPAL1KJKb0f/5I7uhollvsWZuZKLclmyP6a+Jwmr3OV3t+X0pZUUHS9BA==} engines: {node: '>=16.0.0'} + '@smithy/types@3.3.0': + resolution: {integrity: sha512-IxvBBCTFDHbVoK7zIxqA1ZOdc4QfM5HM7rGleCuHi7L1wnKv5Pn69xXJQ9hgxH60ZVygH9/JG0jRgtUncE3QUA==} + engines: {node: '>=16.0.0'} + '@smithy/url-parser@2.2.0': resolution: {integrity: sha512-hoA4zm61q1mNTpksiSWp2nEl1dt3j726HdRhiNgVJQMj7mLp7dprtF57mOB6JvEk/x9d2bsuL5hlqZbBuHQylQ==} '@smithy/url-parser@3.0.2': resolution: {integrity: sha512-pRiPHrgibeAr4avtXDoBHmTLtthwA4l8jKYRfZjNgp+bBPyxDMPRg2TMJaYxqbKemvrOkHu9MIBTv2RkdNfD6w==} + '@smithy/url-parser@3.0.3': + resolution: {integrity: sha512-pw3VtZtX2rg+s6HMs6/+u9+hu6oY6U7IohGhVNnjbgKy86wcIsSZwgHrFR+t67Uyxvp4Xz3p3kGXXIpTNisq8A==} + '@smithy/util-base64@2.3.0': resolution: {integrity: sha512-s3+eVwNeJuXUwuMbusncZNViuhv2LjVJ1nMwTqSA0XAC7gjKhqqxRdJPhR8+YrkoZ9IiIbFk/yK6ACe/xlF+hw==} engines: {node: '>=14.0.0'} @@ -1546,10 +1752,18 @@ packages: resolution: {integrity: sha512-pbjk4s0fwq3Di/ANL+rCvJMKM5bzAQdE5S/6RL5NXgMExFAi6UgQMPOm5yPaIWPpr+EOXKXRonJ3FoxKf4mCJQ==} engines: {node: '>=16.0.0'} + '@smithy/util-defaults-mode-browser@3.0.14': + resolution: {integrity: sha512-0iwTgKKmAIf+vFLV8fji21Jb2px11ktKVxbX6LIDPAUJyWQqGqBVfwba7xwa1f2FZUoolYQgLvxQEpJycXuQ5w==} + engines: {node: '>= 10.0.0'} + '@smithy/util-defaults-mode-browser@3.0.6': resolution: {integrity: sha512-tAgoc++Eq+KL7g55+k108pn7nAob3GLWNEMbXhZIQyBcBNaE/o3+r4AEbae0A8bWvLRvArVsjeiuhMykGa04/A==} engines: {node: '>= 10.0.0'} + '@smithy/util-defaults-mode-node@3.0.14': + resolution: {integrity: sha512-e9uQarJKfXApkTMMruIdxHprhcXivH1flYCe8JRDTzkkLx8dA3V5J8GZlST9yfDiRWkJpZJlUXGN9Rc9Ade3OQ==} + engines: {node: '>= 10.0.0'} + '@smithy/util-defaults-mode-node@3.0.6': resolution: {integrity: sha512-UNerul6/E8aiCyFTBHk+RSIZCo7m96d/N5K3FeO/wFeZP6oy5HAicLzxqa85Wjv7MkXSxSySX29L/LwTV/QMag==} engines: {node: '>= 10.0.0'} @@ -1558,6 +1772,10 @@ packages: resolution: {integrity: sha512-Dyi+pfLglDHSGsKSYunuUUSFM5V0tz7UDgv1Ex97yg+Xkn0Eb0rH0rcvl1n0MaJ11fac3HKDOH0DkALyQYCQag==} engines: {node: '>=16.0.0'} + '@smithy/util-endpoints@2.0.5': + resolution: {integrity: sha512-ReQP0BWihIE68OAblC/WQmDD40Gx+QY1Ez8mTdFMXpmjfxSyz2fVQu3A4zXRfQU9sZXtewk3GmhfOHswvX+eNg==} + engines: {node: '>=16.0.0'} + '@smithy/util-hex-encoding@2.2.0': resolution: {integrity: sha512-7iKXR+/4TpLK194pVjKiasIyqMtTYJsgKgM242Y9uzt5dhHnUDvMNb+3xIhRJ9QhvqGii/5cRUt4fJn3dtXNHQ==} engines: {node: '>=14.0.0'} @@ -1574,6 +1792,10 @@ packages: resolution: {integrity: sha512-7WW5SD0XVrpfqljBYzS5rLR+EiDzl7wCVJZ9Lo6ChNFV4VYDk37Z1QI5w/LnYtU/QKnSawYoHRd7VjSyC8QRQQ==} engines: {node: '>=16.0.0'} + '@smithy/util-middleware@3.0.3': + resolution: {integrity: sha512-l+StyYYK/eO3DlVPbU+4Bi06Jjal+PFLSMmlWM1BEwyLxZ3aKkf1ROnoIakfaA7mC6uw3ny7JBkau4Yc+5zfWw==} + engines: {node: '>=16.0.0'} + '@smithy/util-retry@2.2.0': resolution: {integrity: sha512-q9+pAFPTfftHXRytmZ7GzLFFrEGavqapFc06XxzZFcSIGERXMerXxCitjOG1prVDR9QdjqotF40SWvbqcCpf8g==} engines: {node: '>= 14.0.0'} @@ -1582,6 +1804,10 @@ packages: resolution: {integrity: sha512-HUVOb1k8p/IH6WFUjsLa+L9H1Zi/FAAB2CDOpWuffI1b2Txi6sknau8kNfC46Xrt39P1j2KDzCE1UlLa2eW5+A==} engines: {node: '>=16.0.0'} + '@smithy/util-retry@3.0.3': + resolution: {integrity: sha512-AFw+hjpbtVApzpNDhbjNG5NA3kyoMs7vx0gsgmlJF4s+yz1Zlepde7J58zpIRIsdjc+emhpAITxA88qLkPF26w==} + engines: {node: '>=16.0.0'} + '@smithy/util-stream@2.2.0': resolution: {integrity: sha512-17faEXbYWIRst1aU9SvPZyMdWmqIrduZjVOqCPMIsWFNxs5yQQgFrJL6b2SdiCzyW9mJoDjFtgi53xx7EH+BXA==} engines: {node: '>=14.0.0'} @@ -1590,6 +1816,10 @@ packages: resolution: {integrity: sha512-CcMioiaOOsEVdb09pS7ux1ij7QcQ2jE/cE1+iin1DXMeRgAEQN/47m7Xztu7KFQuQsj0A5YwB2UN45q97CqKCg==} engines: {node: '>=16.0.0'} + '@smithy/util-stream@3.1.3': + resolution: {integrity: sha512-FIv/bRhIlAxC0U7xM1BCnF2aDRPq0UaelqBHkM2lsCp26mcBbgI0tCVTv+jGdsQLUmAMybua/bjDsSu8RQHbmw==} + engines: {node: '>=16.0.0'} + '@smithy/util-uri-escape@2.2.0': resolution: {integrity: sha512-jtmJMyt1xMD/d8OtbVJ2gFZOSKc+ueYJZPW20ULW1GOp/q/YIM0wNh+u8ZFao9UaIGz4WoPW8hC64qlWLIfoDA==} engines: {node: '>=14.0.0'} @@ -1721,6 +1951,9 @@ packages: '@types/accepts@1.3.7': resolution: {integrity: sha512-Pay9fq2lM2wXPWbteBsRAGiWH2hig4ZE2asK+mm7kUzlxRTfL961rj89I6zV/E3PcIkDqyuBEcMxFT7rccugeQ==} + '@types/aws-lambda@8.10.143': + resolution: {integrity: sha512-u5vzlcR14ge/4pMTTMDQr3MF0wEe38B2F9o84uC4F43vN5DGTy63npRrB6jQhyt+C0lGv4ZfiRcRkqJoZuPnmg==} + '@types/babel__core@7.20.5': resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} @@ -2930,6 +3163,10 @@ packages: resolution: {integrity: sha512-B9/wizE4WngqQftFPmdaMYlXoJlJOYxGQOanC77fq9k8+Z0v5dDSVh+3glErdIROP//s/jgb7ZuxKfB8nVyo0g==} hasBin: true + fast-xml-parser@4.4.1: + resolution: {integrity: sha512-xkjOecfnKGkSsOwtZ5Pz7Us/T6mrbPQrq0nh+aCO5V9nk5NLWmasAHumTKjiPJPWANe+kAZ84Jc8ooJkzZ88Sw==} + hasBin: true + fastest-levenshtein@1.0.16: resolution: {integrity: sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==} engines: {node: '>= 4.9.1'} @@ -5236,7 +5473,7 @@ snapshots: '@aws-crypto/sha256-js': 5.2.0 '@aws-crypto/supports-web-crypto': 5.2.0 '@aws-crypto/util': 5.2.0 - '@aws-sdk/types': 3.598.0 + '@aws-sdk/types': 3.609.0 '@aws-sdk/util-locate-window': 3.568.0 '@smithy/util-utf8': 2.3.0 tslib: 2.6.3 @@ -5244,7 +5481,7 @@ snapshots: '@aws-crypto/sha256-js@5.2.0': dependencies: '@aws-crypto/util': 5.2.0 - '@aws-sdk/types': 3.598.0 + '@aws-sdk/types': 3.609.0 tslib: 2.6.3 '@aws-crypto/supports-web-crypto@5.2.0': @@ -5656,6 +5893,54 @@ snapshots: transitivePeerDependencies: - aws-crt + '@aws-sdk/client-sqs@3.624.0': + dependencies: + '@aws-crypto/sha256-browser': 5.2.0 + '@aws-crypto/sha256-js': 5.2.0 + '@aws-sdk/client-sso-oidc': 3.624.0(@aws-sdk/client-sts@3.624.0) + '@aws-sdk/client-sts': 3.624.0 + '@aws-sdk/core': 3.624.0 + '@aws-sdk/credential-provider-node': 3.624.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0))(@aws-sdk/client-sts@3.624.0) + '@aws-sdk/middleware-host-header': 3.620.0 + '@aws-sdk/middleware-logger': 3.609.0 + '@aws-sdk/middleware-recursion-detection': 3.620.0 + '@aws-sdk/middleware-sdk-sqs': 3.622.0 + '@aws-sdk/middleware-user-agent': 3.620.0 + '@aws-sdk/region-config-resolver': 3.614.0 + '@aws-sdk/types': 3.609.0 + '@aws-sdk/util-endpoints': 3.614.0 + '@aws-sdk/util-user-agent-browser': 3.609.0 + '@aws-sdk/util-user-agent-node': 3.614.0 + '@smithy/config-resolver': 3.0.5 + '@smithy/core': 2.3.2 + '@smithy/fetch-http-handler': 3.2.4 + '@smithy/hash-node': 3.0.3 + '@smithy/invalid-dependency': 3.0.3 + '@smithy/md5-js': 3.0.3 + '@smithy/middleware-content-length': 3.0.5 + '@smithy/middleware-endpoint': 3.1.0 + '@smithy/middleware-retry': 3.0.14 + '@smithy/middleware-serde': 3.0.3 + '@smithy/middleware-stack': 3.0.3 + '@smithy/node-config-provider': 3.1.4 + '@smithy/node-http-handler': 3.1.4 + '@smithy/protocol-http': 4.1.0 + '@smithy/smithy-client': 3.1.12 + '@smithy/types': 3.3.0 + '@smithy/url-parser': 3.0.3 + '@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.14 + '@smithy/util-defaults-mode-node': 3.0.14 + '@smithy/util-endpoints': 2.0.5 + '@smithy/util-middleware': 3.0.3 + '@smithy/util-retry': 3.0.3 + '@smithy/util-utf8': 3.0.0 + tslib: 2.6.3 + transitivePeerDependencies: + - aws-crt + '@aws-sdk/client-sso-oidc@3.600.0': dependencies: '@aws-crypto/sha256-browser': 5.2.0 @@ -5746,6 +6031,51 @@ snapshots: transitivePeerDependencies: - aws-crt + '@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0)': + dependencies: + '@aws-crypto/sha256-browser': 5.2.0 + '@aws-crypto/sha256-js': 5.2.0 + '@aws-sdk/client-sts': 3.624.0 + '@aws-sdk/core': 3.624.0 + '@aws-sdk/credential-provider-node': 3.624.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0))(@aws-sdk/client-sts@3.624.0) + '@aws-sdk/middleware-host-header': 3.620.0 + '@aws-sdk/middleware-logger': 3.609.0 + '@aws-sdk/middleware-recursion-detection': 3.620.0 + '@aws-sdk/middleware-user-agent': 3.620.0 + '@aws-sdk/region-config-resolver': 3.614.0 + '@aws-sdk/types': 3.609.0 + '@aws-sdk/util-endpoints': 3.614.0 + '@aws-sdk/util-user-agent-browser': 3.609.0 + '@aws-sdk/util-user-agent-node': 3.614.0 + '@smithy/config-resolver': 3.0.5 + '@smithy/core': 2.3.2 + '@smithy/fetch-http-handler': 3.2.4 + '@smithy/hash-node': 3.0.3 + '@smithy/invalid-dependency': 3.0.3 + '@smithy/middleware-content-length': 3.0.5 + '@smithy/middleware-endpoint': 3.1.0 + '@smithy/middleware-retry': 3.0.14 + '@smithy/middleware-serde': 3.0.3 + '@smithy/middleware-stack': 3.0.3 + '@smithy/node-config-provider': 3.1.4 + '@smithy/node-http-handler': 3.1.4 + '@smithy/protocol-http': 4.1.0 + '@smithy/smithy-client': 3.1.12 + '@smithy/types': 3.3.0 + '@smithy/url-parser': 3.0.3 + '@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.14 + '@smithy/util-defaults-mode-node': 3.0.14 + '@smithy/util-endpoints': 2.0.5 + '@smithy/util-middleware': 3.0.3 + '@smithy/util-retry': 3.0.3 + '@smithy/util-utf8': 3.0.0 + tslib: 2.6.3 + transitivePeerDependencies: + - aws-crt + '@aws-sdk/client-sso@3.598.0': dependencies: '@aws-crypto/sha256-browser': 5.2.0 @@ -5789,6 +6119,49 @@ snapshots: transitivePeerDependencies: - aws-crt + '@aws-sdk/client-sso@3.624.0': + dependencies: + '@aws-crypto/sha256-browser': 5.2.0 + '@aws-crypto/sha256-js': 5.2.0 + '@aws-sdk/core': 3.624.0 + '@aws-sdk/middleware-host-header': 3.620.0 + '@aws-sdk/middleware-logger': 3.609.0 + '@aws-sdk/middleware-recursion-detection': 3.620.0 + '@aws-sdk/middleware-user-agent': 3.620.0 + '@aws-sdk/region-config-resolver': 3.614.0 + '@aws-sdk/types': 3.609.0 + '@aws-sdk/util-endpoints': 3.614.0 + '@aws-sdk/util-user-agent-browser': 3.609.0 + '@aws-sdk/util-user-agent-node': 3.614.0 + '@smithy/config-resolver': 3.0.5 + '@smithy/core': 2.3.2 + '@smithy/fetch-http-handler': 3.2.4 + '@smithy/hash-node': 3.0.3 + '@smithy/invalid-dependency': 3.0.3 + '@smithy/middleware-content-length': 3.0.5 + '@smithy/middleware-endpoint': 3.1.0 + '@smithy/middleware-retry': 3.0.14 + '@smithy/middleware-serde': 3.0.3 + '@smithy/middleware-stack': 3.0.3 + '@smithy/node-config-provider': 3.1.4 + '@smithy/node-http-handler': 3.1.4 + '@smithy/protocol-http': 4.1.0 + '@smithy/smithy-client': 3.1.12 + '@smithy/types': 3.3.0 + '@smithy/url-parser': 3.0.3 + '@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.14 + '@smithy/util-defaults-mode-node': 3.0.14 + '@smithy/util-endpoints': 2.0.5 + '@smithy/util-middleware': 3.0.3 + '@smithy/util-retry': 3.0.3 + '@smithy/util-utf8': 3.0.0 + tslib: 2.6.3 + transitivePeerDependencies: + - aws-crt + '@aws-sdk/client-sts@3.600.0': dependencies: '@aws-crypto/sha256-browser': 5.2.0 @@ -5925,6 +6298,51 @@ snapshots: transitivePeerDependencies: - aws-crt + '@aws-sdk/client-sts@3.624.0': + dependencies: + '@aws-crypto/sha256-browser': 5.2.0 + '@aws-crypto/sha256-js': 5.2.0 + '@aws-sdk/client-sso-oidc': 3.624.0(@aws-sdk/client-sts@3.624.0) + '@aws-sdk/core': 3.624.0 + '@aws-sdk/credential-provider-node': 3.624.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0))(@aws-sdk/client-sts@3.624.0) + '@aws-sdk/middleware-host-header': 3.620.0 + '@aws-sdk/middleware-logger': 3.609.0 + '@aws-sdk/middleware-recursion-detection': 3.620.0 + '@aws-sdk/middleware-user-agent': 3.620.0 + '@aws-sdk/region-config-resolver': 3.614.0 + '@aws-sdk/types': 3.609.0 + '@aws-sdk/util-endpoints': 3.614.0 + '@aws-sdk/util-user-agent-browser': 3.609.0 + '@aws-sdk/util-user-agent-node': 3.614.0 + '@smithy/config-resolver': 3.0.5 + '@smithy/core': 2.3.2 + '@smithy/fetch-http-handler': 3.2.4 + '@smithy/hash-node': 3.0.3 + '@smithy/invalid-dependency': 3.0.3 + '@smithy/middleware-content-length': 3.0.5 + '@smithy/middleware-endpoint': 3.1.0 + '@smithy/middleware-retry': 3.0.14 + '@smithy/middleware-serde': 3.0.3 + '@smithy/middleware-stack': 3.0.3 + '@smithy/node-config-provider': 3.1.4 + '@smithy/node-http-handler': 3.1.4 + '@smithy/protocol-http': 4.1.0 + '@smithy/smithy-client': 3.1.12 + '@smithy/types': 3.3.0 + '@smithy/url-parser': 3.0.3 + '@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.14 + '@smithy/util-defaults-mode-node': 3.0.14 + '@smithy/util-endpoints': 2.0.5 + '@smithy/util-middleware': 3.0.3 + '@smithy/util-retry': 3.0.3 + '@smithy/util-utf8': 3.0.0 + tslib: 2.6.3 + transitivePeerDependencies: + - aws-crt + '@aws-sdk/core@3.598.0': dependencies: '@smithy/core': 2.2.3 @@ -5935,6 +6353,18 @@ snapshots: fast-xml-parser: 4.2.5 tslib: 2.6.3 + '@aws-sdk/core@3.624.0': + dependencies: + '@smithy/core': 2.3.2 + '@smithy/node-config-provider': 3.1.4 + '@smithy/protocol-http': 4.1.0 + '@smithy/signature-v4': 4.1.0 + '@smithy/smithy-client': 3.1.12 + '@smithy/types': 3.3.0 + '@smithy/util-middleware': 3.0.3 + fast-xml-parser: 4.4.1 + tslib: 2.6.3 + '@aws-sdk/credential-provider-cognito-identity@3.600.0': dependencies: '@aws-sdk/client-cognito-identity': 3.600.0 @@ -5952,6 +6382,13 @@ snapshots: '@smithy/types': 3.2.0 tslib: 2.6.3 + '@aws-sdk/credential-provider-env@3.620.1': + dependencies: + '@aws-sdk/types': 3.609.0 + '@smithy/property-provider': 3.1.3 + '@smithy/types': 3.3.0 + tslib: 2.6.3 + '@aws-sdk/credential-provider-http@3.598.0': dependencies: '@aws-sdk/types': 3.598.0 @@ -5964,6 +6401,18 @@ snapshots: '@smithy/util-stream': 3.0.4 tslib: 2.6.3 + '@aws-sdk/credential-provider-http@3.622.0': + dependencies: + '@aws-sdk/types': 3.609.0 + '@smithy/fetch-http-handler': 3.2.4 + '@smithy/node-http-handler': 3.1.4 + '@smithy/property-provider': 3.1.3 + '@smithy/protocol-http': 4.1.0 + '@smithy/smithy-client': 3.1.12 + '@smithy/types': 3.3.0 + '@smithy/util-stream': 3.1.3 + tslib: 2.6.3 + '@aws-sdk/credential-provider-ini@3.598.0(@aws-sdk/client-sso-oidc@3.600.0)(@aws-sdk/client-sts@3.600.0(@aws-sdk/client-sso-oidc@3.600.0))': dependencies: '@aws-sdk/client-sts': 3.600.0(@aws-sdk/client-sso-oidc@3.600.0) @@ -6000,14 +6449,14 @@ snapshots: - '@aws-sdk/client-sso-oidc' - aws-crt - '@aws-sdk/credential-provider-ini@3.598.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0))(@aws-sdk/client-sts@3.600.0)': + '@aws-sdk/credential-provider-ini@3.598.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0))(@aws-sdk/client-sts@3.606.0)': dependencies: - '@aws-sdk/client-sts': 3.600.0 + '@aws-sdk/client-sts': 3.606.0 '@aws-sdk/credential-provider-env': 3.598.0 '@aws-sdk/credential-provider-http': 3.598.0 '@aws-sdk/credential-provider-process': 3.598.0 '@aws-sdk/credential-provider-sso': 3.598.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0)) - '@aws-sdk/credential-provider-web-identity': 3.598.0(@aws-sdk/client-sts@3.600.0) + '@aws-sdk/credential-provider-web-identity': 3.598.0(@aws-sdk/client-sts@3.606.0) '@aws-sdk/types': 3.598.0 '@smithy/credential-provider-imds': 3.1.2 '@smithy/property-provider': 3.1.2 @@ -6018,14 +6467,14 @@ snapshots: - '@aws-sdk/client-sso-oidc' - aws-crt - '@aws-sdk/credential-provider-ini@3.598.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0))(@aws-sdk/client-sts@3.606.0)': + '@aws-sdk/credential-provider-ini@3.598.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0))(@aws-sdk/client-sts@3.600.0)': dependencies: - '@aws-sdk/client-sts': 3.606.0 + '@aws-sdk/client-sts': 3.600.0 '@aws-sdk/credential-provider-env': 3.598.0 '@aws-sdk/credential-provider-http': 3.598.0 '@aws-sdk/credential-provider-process': 3.598.0 - '@aws-sdk/credential-provider-sso': 3.598.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0)) - '@aws-sdk/credential-provider-web-identity': 3.598.0(@aws-sdk/client-sts@3.606.0) + '@aws-sdk/credential-provider-sso': 3.598.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0)) + '@aws-sdk/credential-provider-web-identity': 3.598.0(@aws-sdk/client-sts@3.600.0) '@aws-sdk/types': 3.598.0 '@smithy/credential-provider-imds': 3.1.2 '@smithy/property-provider': 3.1.2 @@ -6036,6 +6485,24 @@ snapshots: - '@aws-sdk/client-sso-oidc' - aws-crt + '@aws-sdk/credential-provider-ini@3.624.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0))(@aws-sdk/client-sts@3.624.0)': + dependencies: + '@aws-sdk/client-sts': 3.624.0 + '@aws-sdk/credential-provider-env': 3.620.1 + '@aws-sdk/credential-provider-http': 3.622.0 + '@aws-sdk/credential-provider-process': 3.620.1 + '@aws-sdk/credential-provider-sso': 3.624.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0)) + '@aws-sdk/credential-provider-web-identity': 3.621.0(@aws-sdk/client-sts@3.624.0) + '@aws-sdk/types': 3.609.0 + '@smithy/credential-provider-imds': 3.2.0 + '@smithy/property-provider': 3.1.3 + '@smithy/shared-ini-file-loader': 3.1.4 + '@smithy/types': 3.3.0 + tslib: 2.6.3 + transitivePeerDependencies: + - '@aws-sdk/client-sso-oidc' + - aws-crt + '@aws-sdk/credential-provider-node@3.600.0(@aws-sdk/client-sso-oidc@3.600.0)(@aws-sdk/client-sts@3.600.0(@aws-sdk/client-sso-oidc@3.600.0))': dependencies: '@aws-sdk/credential-provider-env': 3.598.0 @@ -6074,14 +6541,14 @@ snapshots: - '@aws-sdk/client-sts' - aws-crt - '@aws-sdk/credential-provider-node@3.600.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0))(@aws-sdk/client-sts@3.600.0)': + '@aws-sdk/credential-provider-node@3.600.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0))(@aws-sdk/client-sts@3.606.0)': dependencies: '@aws-sdk/credential-provider-env': 3.598.0 '@aws-sdk/credential-provider-http': 3.598.0 - '@aws-sdk/credential-provider-ini': 3.598.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0))(@aws-sdk/client-sts@3.600.0) + '@aws-sdk/credential-provider-ini': 3.598.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0))(@aws-sdk/client-sts@3.606.0) '@aws-sdk/credential-provider-process': 3.598.0 '@aws-sdk/credential-provider-sso': 3.598.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0)) - '@aws-sdk/credential-provider-web-identity': 3.598.0(@aws-sdk/client-sts@3.600.0) + '@aws-sdk/credential-provider-web-identity': 3.598.0(@aws-sdk/client-sts@3.606.0) '@aws-sdk/types': 3.598.0 '@smithy/credential-provider-imds': 3.1.2 '@smithy/property-provider': 3.1.2 @@ -6093,14 +6560,14 @@ snapshots: - '@aws-sdk/client-sts' - aws-crt - '@aws-sdk/credential-provider-node@3.600.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0))(@aws-sdk/client-sts@3.606.0)': + '@aws-sdk/credential-provider-node@3.600.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0))(@aws-sdk/client-sts@3.600.0)': dependencies: '@aws-sdk/credential-provider-env': 3.598.0 '@aws-sdk/credential-provider-http': 3.598.0 - '@aws-sdk/credential-provider-ini': 3.598.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0))(@aws-sdk/client-sts@3.606.0) + '@aws-sdk/credential-provider-ini': 3.598.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0))(@aws-sdk/client-sts@3.600.0) '@aws-sdk/credential-provider-process': 3.598.0 - '@aws-sdk/credential-provider-sso': 3.598.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0)) - '@aws-sdk/credential-provider-web-identity': 3.598.0(@aws-sdk/client-sts@3.606.0) + '@aws-sdk/credential-provider-sso': 3.598.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0)) + '@aws-sdk/credential-provider-web-identity': 3.598.0(@aws-sdk/client-sts@3.600.0) '@aws-sdk/types': 3.598.0 '@smithy/credential-provider-imds': 3.1.2 '@smithy/property-provider': 3.1.2 @@ -6112,6 +6579,25 @@ snapshots: - '@aws-sdk/client-sts' - aws-crt + '@aws-sdk/credential-provider-node@3.624.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0))(@aws-sdk/client-sts@3.624.0)': + dependencies: + '@aws-sdk/credential-provider-env': 3.620.1 + '@aws-sdk/credential-provider-http': 3.622.0 + '@aws-sdk/credential-provider-ini': 3.624.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0))(@aws-sdk/client-sts@3.624.0) + '@aws-sdk/credential-provider-process': 3.620.1 + '@aws-sdk/credential-provider-sso': 3.624.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0)) + '@aws-sdk/credential-provider-web-identity': 3.621.0(@aws-sdk/client-sts@3.624.0) + '@aws-sdk/types': 3.609.0 + '@smithy/credential-provider-imds': 3.2.0 + '@smithy/property-provider': 3.1.3 + '@smithy/shared-ini-file-loader': 3.1.4 + '@smithy/types': 3.3.0 + tslib: 2.6.3 + transitivePeerDependencies: + - '@aws-sdk/client-sso-oidc' + - '@aws-sdk/client-sts' + - aws-crt + '@aws-sdk/credential-provider-process@3.598.0': dependencies: '@aws-sdk/types': 3.598.0 @@ -6120,6 +6606,14 @@ snapshots: '@smithy/types': 3.2.0 tslib: 2.6.3 + '@aws-sdk/credential-provider-process@3.620.1': + dependencies: + '@aws-sdk/types': 3.609.0 + '@smithy/property-provider': 3.1.3 + '@smithy/shared-ini-file-loader': 3.1.4 + '@smithy/types': 3.3.0 + tslib: 2.6.3 + '@aws-sdk/credential-provider-sso@3.598.0(@aws-sdk/client-sso-oidc@3.600.0)': dependencies: '@aws-sdk/client-sso': 3.598.0 @@ -6146,6 +6640,32 @@ snapshots: - '@aws-sdk/client-sso-oidc' - aws-crt + '@aws-sdk/credential-provider-sso@3.598.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0))': + dependencies: + '@aws-sdk/client-sso': 3.598.0 + '@aws-sdk/token-providers': 3.598.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0)) + '@aws-sdk/types': 3.598.0 + '@smithy/property-provider': 3.1.2 + '@smithy/shared-ini-file-loader': 3.1.2 + '@smithy/types': 3.2.0 + tslib: 2.6.3 + transitivePeerDependencies: + - '@aws-sdk/client-sso-oidc' + - aws-crt + + '@aws-sdk/credential-provider-sso@3.624.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0))': + dependencies: + '@aws-sdk/client-sso': 3.624.0 + '@aws-sdk/token-providers': 3.614.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0)) + '@aws-sdk/types': 3.609.0 + '@smithy/property-provider': 3.1.3 + '@smithy/shared-ini-file-loader': 3.1.4 + '@smithy/types': 3.3.0 + tslib: 2.6.3 + transitivePeerDependencies: + - '@aws-sdk/client-sso-oidc' + - aws-crt + '@aws-sdk/credential-provider-web-identity@3.598.0(@aws-sdk/client-sts@3.600.0(@aws-sdk/client-sso-oidc@3.600.0))': dependencies: '@aws-sdk/client-sts': 3.600.0(@aws-sdk/client-sso-oidc@3.600.0) @@ -6170,7 +6690,15 @@ snapshots: '@smithy/types': 3.2.0 tslib: 2.6.3 - '@aws-sdk/credential-providers@3.600.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0))': + '@aws-sdk/credential-provider-web-identity@3.621.0(@aws-sdk/client-sts@3.624.0)': + dependencies: + '@aws-sdk/client-sts': 3.624.0 + '@aws-sdk/types': 3.609.0 + '@smithy/property-provider': 3.1.3 + '@smithy/types': 3.3.0 + tslib: 2.6.3 + + '@aws-sdk/credential-providers@3.600.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0))': dependencies: '@aws-sdk/client-cognito-identity': 3.600.0 '@aws-sdk/client-sso': 3.598.0 @@ -6178,10 +6706,10 @@ snapshots: '@aws-sdk/credential-provider-cognito-identity': 3.600.0 '@aws-sdk/credential-provider-env': 3.598.0 '@aws-sdk/credential-provider-http': 3.598.0 - '@aws-sdk/credential-provider-ini': 3.598.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0))(@aws-sdk/client-sts@3.600.0) - '@aws-sdk/credential-provider-node': 3.600.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0))(@aws-sdk/client-sts@3.600.0) + '@aws-sdk/credential-provider-ini': 3.598.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0))(@aws-sdk/client-sts@3.600.0) + '@aws-sdk/credential-provider-node': 3.600.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0))(@aws-sdk/client-sts@3.600.0) '@aws-sdk/credential-provider-process': 3.598.0 - '@aws-sdk/credential-provider-sso': 3.598.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0)) + '@aws-sdk/credential-provider-sso': 3.598.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0)) '@aws-sdk/credential-provider-web-identity': 3.598.0(@aws-sdk/client-sts@3.600.0) '@aws-sdk/types': 3.598.0 '@smithy/credential-provider-imds': 3.1.2 @@ -6227,6 +6755,13 @@ snapshots: '@smithy/types': 3.2.0 tslib: 2.6.3 + '@aws-sdk/middleware-host-header@3.620.0': + dependencies: + '@aws-sdk/types': 3.609.0 + '@smithy/protocol-http': 4.1.0 + '@smithy/types': 3.3.0 + tslib: 2.6.3 + '@aws-sdk/middleware-location-constraint@3.598.0': dependencies: '@aws-sdk/types': 3.598.0 @@ -6239,6 +6774,12 @@ snapshots: '@smithy/types': 3.2.0 tslib: 2.6.3 + '@aws-sdk/middleware-logger@3.609.0': + dependencies: + '@aws-sdk/types': 3.609.0 + '@smithy/types': 3.3.0 + tslib: 2.6.3 + '@aws-sdk/middleware-recursion-detection@3.598.0': dependencies: '@aws-sdk/types': 3.598.0 @@ -6246,6 +6787,13 @@ snapshots: '@smithy/types': 3.2.0 tslib: 2.6.3 + '@aws-sdk/middleware-recursion-detection@3.620.0': + dependencies: + '@aws-sdk/types': 3.609.0 + '@smithy/protocol-http': 4.1.0 + '@smithy/types': 3.3.0 + tslib: 2.6.3 + '@aws-sdk/middleware-sdk-api-gateway@3.598.0': dependencies: '@aws-sdk/types': 3.598.0 @@ -6271,6 +6819,15 @@ snapshots: '@smithy/util-config-provider': 3.0.0 tslib: 2.6.3 + '@aws-sdk/middleware-sdk-sqs@3.622.0': + dependencies: + '@aws-sdk/types': 3.609.0 + '@smithy/smithy-client': 3.1.12 + '@smithy/types': 3.3.0 + '@smithy/util-hex-encoding': 3.0.0 + '@smithy/util-utf8': 3.0.0 + tslib: 2.6.3 + '@aws-sdk/middleware-signing@3.598.0': dependencies: '@aws-sdk/types': 3.598.0 @@ -6295,6 +6852,14 @@ snapshots: '@smithy/types': 3.2.0 tslib: 2.6.3 + '@aws-sdk/middleware-user-agent@3.620.0': + dependencies: + '@aws-sdk/types': 3.609.0 + '@aws-sdk/util-endpoints': 3.614.0 + '@smithy/protocol-http': 4.1.0 + '@smithy/types': 3.3.0 + tslib: 2.6.3 + '@aws-sdk/region-config-resolver@3.598.0': dependencies: '@aws-sdk/types': 3.598.0 @@ -6304,6 +6869,15 @@ snapshots: '@smithy/util-middleware': 3.0.2 tslib: 2.6.3 + '@aws-sdk/region-config-resolver@3.614.0': + dependencies: + '@aws-sdk/types': 3.609.0 + '@smithy/node-config-provider': 3.1.4 + '@smithy/types': 3.3.0 + '@smithy/util-config-provider': 3.0.0 + '@smithy/util-middleware': 3.0.3 + tslib: 2.6.3 + '@aws-sdk/signature-v4-multi-region@3.598.0': dependencies: '@aws-sdk/middleware-sdk-s3': 3.598.0 @@ -6331,11 +6905,34 @@ snapshots: '@smithy/types': 3.2.0 tslib: 2.6.3 + '@aws-sdk/token-providers@3.598.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0))': + dependencies: + '@aws-sdk/client-sso-oidc': 3.624.0(@aws-sdk/client-sts@3.624.0) + '@aws-sdk/types': 3.598.0 + '@smithy/property-provider': 3.1.2 + '@smithy/shared-ini-file-loader': 3.1.2 + '@smithy/types': 3.2.0 + tslib: 2.6.3 + + '@aws-sdk/token-providers@3.614.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0))': + dependencies: + '@aws-sdk/client-sso-oidc': 3.624.0(@aws-sdk/client-sts@3.624.0) + '@aws-sdk/types': 3.609.0 + '@smithy/property-provider': 3.1.3 + '@smithy/shared-ini-file-loader': 3.1.4 + '@smithy/types': 3.3.0 + tslib: 2.6.3 + '@aws-sdk/types@3.598.0': dependencies: '@smithy/types': 3.2.0 tslib: 2.6.3 + '@aws-sdk/types@3.609.0': + dependencies: + '@smithy/types': 3.3.0 + tslib: 2.6.3 + '@aws-sdk/util-arn-parser@3.568.0': dependencies: tslib: 2.6.3 @@ -6347,6 +6944,13 @@ snapshots: '@smithy/util-endpoints': 2.0.3 tslib: 2.6.3 + '@aws-sdk/util-endpoints@3.614.0': + dependencies: + '@aws-sdk/types': 3.609.0 + '@smithy/types': 3.3.0 + '@smithy/util-endpoints': 2.0.5 + tslib: 2.6.3 + '@aws-sdk/util-locate-window@3.568.0': dependencies: tslib: 2.6.3 @@ -6358,6 +6962,13 @@ snapshots: bowser: 2.11.0 tslib: 2.6.3 + '@aws-sdk/util-user-agent-browser@3.609.0': + dependencies: + '@aws-sdk/types': 3.609.0 + '@smithy/types': 3.3.0 + bowser: 2.11.0 + tslib: 2.6.3 + '@aws-sdk/util-user-agent-node@3.598.0': dependencies: '@aws-sdk/types': 3.598.0 @@ -6365,6 +6976,13 @@ snapshots: '@smithy/types': 3.2.0 tslib: 2.6.3 + '@aws-sdk/util-user-agent-node@3.614.0': + dependencies: + '@aws-sdk/types': 3.609.0 + '@smithy/node-config-provider': 3.1.4 + '@smithy/types': 3.3.0 + tslib: 2.6.3 + '@aws-sdk/xml-builder@3.598.0': dependencies: '@smithy/types': 3.2.0 @@ -7109,11 +7727,11 @@ snapshots: class-transformer: 0.5.1 class-validator: 0.14.1 - '@nestjs/mongoose@10.0.6(@nestjs/common@10.3.9(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.1.14)(rxjs@7.8.1))(@nestjs/core@10.3.9(@nestjs/common@10.3.9(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.1.14)(rxjs@7.8.1))(@nestjs/platform-express@10.3.9)(reflect-metadata@0.1.14)(rxjs@7.8.1))(mongoose@8.4.4(@aws-sdk/credential-providers@3.600.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0)))(socks@2.8.3))(rxjs@7.8.1)': + '@nestjs/mongoose@10.0.6(@nestjs/common@10.3.9(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.1.14)(rxjs@7.8.1))(@nestjs/core@10.3.9(@nestjs/common@10.3.9(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.1.14)(rxjs@7.8.1))(@nestjs/platform-express@10.3.9)(reflect-metadata@0.1.14)(rxjs@7.8.1))(mongoose@8.4.4(@aws-sdk/credential-providers@3.600.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0)))(socks@2.8.3))(rxjs@7.8.1)': dependencies: '@nestjs/common': 10.3.9(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.1.14)(rxjs@7.8.1) '@nestjs/core': 10.3.9(@nestjs/common@10.3.9(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.1.14)(rxjs@7.8.1))(@nestjs/platform-express@10.3.9)(reflect-metadata@0.1.14)(rxjs@7.8.1) - mongoose: 8.4.4(@aws-sdk/credential-providers@3.600.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0)))(socks@2.8.3) + mongoose: 8.4.4(@aws-sdk/credential-providers@3.600.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0)))(socks@2.8.3) rxjs: 7.8.1 '@nestjs/passport@10.0.3(@nestjs/common@10.3.9(class-transformer@0.5.1)(class-validator@0.14.1)(reflect-metadata@0.1.14)(rxjs@7.8.1))(passport@0.7.0)': @@ -7613,6 +8231,11 @@ snapshots: '@smithy/types': 3.2.0 tslib: 2.6.3 + '@smithy/abort-controller@3.1.1': + dependencies: + '@smithy/types': 3.3.0 + tslib: 2.6.3 + '@smithy/chunked-blob-reader-native@3.0.0': dependencies: '@smithy/util-base64': 3.0.0 @@ -7638,6 +8261,14 @@ snapshots: '@smithy/util-middleware': 3.0.2 tslib: 2.6.3 + '@smithy/config-resolver@3.0.5': + dependencies: + '@smithy/node-config-provider': 3.1.4 + '@smithy/types': 3.3.0 + '@smithy/util-config-provider': 3.0.0 + '@smithy/util-middleware': 3.0.3 + tslib: 2.6.3 + '@smithy/core@2.2.3': dependencies: '@smithy/middleware-endpoint': 3.0.3 @@ -7649,6 +8280,17 @@ snapshots: '@smithy/util-middleware': 3.0.2 tslib: 2.6.3 + '@smithy/core@2.3.2': + dependencies: + '@smithy/middleware-endpoint': 3.1.0 + '@smithy/middleware-retry': 3.0.14 + '@smithy/middleware-serde': 3.0.3 + '@smithy/protocol-http': 4.1.0 + '@smithy/smithy-client': 3.1.12 + '@smithy/types': 3.3.0 + '@smithy/util-middleware': 3.0.3 + tslib: 2.6.3 + '@smithy/credential-provider-imds@3.1.2': dependencies: '@smithy/node-config-provider': 3.1.2 @@ -7657,6 +8299,14 @@ snapshots: '@smithy/url-parser': 3.0.2 tslib: 2.6.3 + '@smithy/credential-provider-imds@3.2.0': + dependencies: + '@smithy/node-config-provider': 3.1.4 + '@smithy/property-provider': 3.1.3 + '@smithy/types': 3.3.0 + '@smithy/url-parser': 3.0.3 + tslib: 2.6.3 + '@smithy/eventstream-codec@3.1.1': dependencies: '@aws-crypto/crc32': 5.2.0 @@ -7703,6 +8353,14 @@ snapshots: '@smithy/util-base64': 3.0.0 tslib: 2.6.3 + '@smithy/fetch-http-handler@3.2.4': + dependencies: + '@smithy/protocol-http': 4.1.0 + '@smithy/querystring-builder': 3.0.3 + '@smithy/types': 3.3.0 + '@smithy/util-base64': 3.0.0 + tslib: 2.6.3 + '@smithy/hash-blob-browser@3.1.1': dependencies: '@smithy/chunked-blob-reader': 3.0.0 @@ -7717,6 +8375,13 @@ snapshots: '@smithy/util-utf8': 3.0.0 tslib: 2.6.3 + '@smithy/hash-node@3.0.3': + dependencies: + '@smithy/types': 3.3.0 + '@smithy/util-buffer-from': 3.0.0 + '@smithy/util-utf8': 3.0.0 + tslib: 2.6.3 + '@smithy/hash-stream-node@3.1.1': dependencies: '@smithy/types': 3.2.0 @@ -7728,6 +8393,11 @@ snapshots: '@smithy/types': 3.2.0 tslib: 2.6.3 + '@smithy/invalid-dependency@3.0.3': + dependencies: + '@smithy/types': 3.3.0 + tslib: 2.6.3 + '@smithy/is-array-buffer@2.2.0': dependencies: tslib: 2.6.3 @@ -7742,12 +8412,24 @@ snapshots: '@smithy/util-utf8': 3.0.0 tslib: 2.6.3 + '@smithy/md5-js@3.0.3': + dependencies: + '@smithy/types': 3.3.0 + '@smithy/util-utf8': 3.0.0 + tslib: 2.6.3 + '@smithy/middleware-content-length@3.0.2': dependencies: '@smithy/protocol-http': 4.0.2 '@smithy/types': 3.2.0 tslib: 2.6.3 + '@smithy/middleware-content-length@3.0.5': + dependencies: + '@smithy/protocol-http': 4.1.0 + '@smithy/types': 3.3.0 + tslib: 2.6.3 + '@smithy/middleware-endpoint@2.5.1': dependencies: '@smithy/middleware-serde': 2.3.0 @@ -7768,6 +8450,28 @@ snapshots: '@smithy/util-middleware': 3.0.2 tslib: 2.6.3 + '@smithy/middleware-endpoint@3.1.0': + dependencies: + '@smithy/middleware-serde': 3.0.3 + '@smithy/node-config-provider': 3.1.4 + '@smithy/shared-ini-file-loader': 3.1.4 + '@smithy/types': 3.3.0 + '@smithy/url-parser': 3.0.3 + '@smithy/util-middleware': 3.0.3 + tslib: 2.6.3 + + '@smithy/middleware-retry@3.0.14': + dependencies: + '@smithy/node-config-provider': 3.1.4 + '@smithy/protocol-http': 4.1.0 + '@smithy/service-error-classification': 3.0.3 + '@smithy/smithy-client': 3.1.12 + '@smithy/types': 3.3.0 + '@smithy/util-middleware': 3.0.3 + '@smithy/util-retry': 3.0.3 + tslib: 2.6.3 + uuid: 9.0.1 + '@smithy/middleware-retry@3.0.6': dependencies: '@smithy/node-config-provider': 3.1.2 @@ -7790,6 +8494,11 @@ snapshots: '@smithy/types': 3.2.0 tslib: 2.6.3 + '@smithy/middleware-serde@3.0.3': + dependencies: + '@smithy/types': 3.3.0 + tslib: 2.6.3 + '@smithy/middleware-stack@2.2.0': dependencies: '@smithy/types': 2.12.0 @@ -7800,6 +8509,11 @@ snapshots: '@smithy/types': 3.2.0 tslib: 2.6.3 + '@smithy/middleware-stack@3.0.3': + dependencies: + '@smithy/types': 3.3.0 + tslib: 2.6.3 + '@smithy/node-config-provider@2.3.0': dependencies: '@smithy/property-provider': 2.2.0 @@ -7814,6 +8528,13 @@ snapshots: '@smithy/types': 3.2.0 tslib: 2.6.3 + '@smithy/node-config-provider@3.1.4': + dependencies: + '@smithy/property-provider': 3.1.3 + '@smithy/shared-ini-file-loader': 3.1.4 + '@smithy/types': 3.3.0 + tslib: 2.6.3 + '@smithy/node-http-handler@2.5.0': dependencies: '@smithy/abort-controller': 2.2.0 @@ -7830,6 +8551,14 @@ snapshots: '@smithy/types': 3.2.0 tslib: 2.6.3 + '@smithy/node-http-handler@3.1.4': + dependencies: + '@smithy/abort-controller': 3.1.1 + '@smithy/protocol-http': 4.1.0 + '@smithy/querystring-builder': 3.0.3 + '@smithy/types': 3.3.0 + tslib: 2.6.3 + '@smithy/property-provider@2.2.0': dependencies: '@smithy/types': 2.12.0 @@ -7840,6 +8569,11 @@ snapshots: '@smithy/types': 3.2.0 tslib: 2.6.3 + '@smithy/property-provider@3.1.3': + dependencies: + '@smithy/types': 3.3.0 + tslib: 2.6.3 + '@smithy/protocol-http@3.3.0': dependencies: '@smithy/types': 2.12.0 @@ -7850,6 +8584,11 @@ snapshots: '@smithy/types': 3.2.0 tslib: 2.6.3 + '@smithy/protocol-http@4.1.0': + dependencies: + '@smithy/types': 3.3.0 + tslib: 2.6.3 + '@smithy/querystring-builder@2.2.0': dependencies: '@smithy/types': 2.12.0 @@ -7862,6 +8601,12 @@ snapshots: '@smithy/util-uri-escape': 3.0.0 tslib: 2.6.3 + '@smithy/querystring-builder@3.0.3': + dependencies: + '@smithy/types': 3.3.0 + '@smithy/util-uri-escape': 3.0.0 + tslib: 2.6.3 + '@smithy/querystring-parser@2.2.0': dependencies: '@smithy/types': 2.12.0 @@ -7872,6 +8617,11 @@ snapshots: '@smithy/types': 3.2.0 tslib: 2.6.3 + '@smithy/querystring-parser@3.0.3': + dependencies: + '@smithy/types': 3.3.0 + tslib: 2.6.3 + '@smithy/service-error-classification@2.1.5': dependencies: '@smithy/types': 2.12.0 @@ -7880,6 +8630,10 @@ snapshots: dependencies: '@smithy/types': 3.2.0 + '@smithy/service-error-classification@3.0.3': + dependencies: + '@smithy/types': 3.3.0 + '@smithy/shared-ini-file-loader@2.4.0': dependencies: '@smithy/types': 2.12.0 @@ -7890,6 +8644,11 @@ snapshots: '@smithy/types': 3.2.0 tslib: 2.6.3 + '@smithy/shared-ini-file-loader@3.1.4': + dependencies: + '@smithy/types': 3.3.0 + tslib: 2.6.3 + '@smithy/signature-v4@3.1.1': dependencies: '@smithy/is-array-buffer': 3.0.0 @@ -7900,6 +8659,17 @@ snapshots: '@smithy/util-utf8': 3.0.0 tslib: 2.6.3 + '@smithy/signature-v4@4.1.0': + dependencies: + '@smithy/is-array-buffer': 3.0.0 + '@smithy/protocol-http': 4.1.0 + '@smithy/types': 3.3.0 + '@smithy/util-hex-encoding': 3.0.0 + '@smithy/util-middleware': 3.0.3 + '@smithy/util-uri-escape': 3.0.0 + '@smithy/util-utf8': 3.0.0 + tslib: 2.6.3 + '@smithy/smithy-client@2.5.1': dependencies: '@smithy/middleware-endpoint': 2.5.1 @@ -7909,6 +8679,15 @@ snapshots: '@smithy/util-stream': 2.2.0 tslib: 2.6.3 + '@smithy/smithy-client@3.1.12': + dependencies: + '@smithy/middleware-endpoint': 3.1.0 + '@smithy/middleware-stack': 3.0.3 + '@smithy/protocol-http': 4.1.0 + '@smithy/types': 3.3.0 + '@smithy/util-stream': 3.1.3 + tslib: 2.6.3 + '@smithy/smithy-client@3.1.4': dependencies: '@smithy/middleware-endpoint': 3.0.3 @@ -7926,6 +8705,10 @@ snapshots: dependencies: tslib: 2.6.3 + '@smithy/types@3.3.0': + dependencies: + tslib: 2.6.3 + '@smithy/url-parser@2.2.0': dependencies: '@smithy/querystring-parser': 2.2.0 @@ -7938,6 +8721,12 @@ snapshots: '@smithy/types': 3.2.0 tslib: 2.6.3 + '@smithy/url-parser@3.0.3': + dependencies: + '@smithy/querystring-parser': 3.0.3 + '@smithy/types': 3.3.0 + tslib: 2.6.3 + '@smithy/util-base64@2.3.0': dependencies: '@smithy/util-buffer-from': 2.2.0 @@ -7976,6 +8765,14 @@ snapshots: dependencies: tslib: 2.6.3 + '@smithy/util-defaults-mode-browser@3.0.14': + dependencies: + '@smithy/property-provider': 3.1.3 + '@smithy/smithy-client': 3.1.12 + '@smithy/types': 3.3.0 + bowser: 2.11.0 + tslib: 2.6.3 + '@smithy/util-defaults-mode-browser@3.0.6': dependencies: '@smithy/property-provider': 3.1.2 @@ -7984,6 +8781,16 @@ snapshots: bowser: 2.11.0 tslib: 2.6.3 + '@smithy/util-defaults-mode-node@3.0.14': + dependencies: + '@smithy/config-resolver': 3.0.5 + '@smithy/credential-provider-imds': 3.2.0 + '@smithy/node-config-provider': 3.1.4 + '@smithy/property-provider': 3.1.3 + '@smithy/smithy-client': 3.1.12 + '@smithy/types': 3.3.0 + tslib: 2.6.3 + '@smithy/util-defaults-mode-node@3.0.6': dependencies: '@smithy/config-resolver': 3.0.3 @@ -8000,6 +8807,12 @@ snapshots: '@smithy/types': 3.2.0 tslib: 2.6.3 + '@smithy/util-endpoints@2.0.5': + dependencies: + '@smithy/node-config-provider': 3.1.4 + '@smithy/types': 3.3.0 + tslib: 2.6.3 + '@smithy/util-hex-encoding@2.2.0': dependencies: tslib: 2.6.3 @@ -8018,6 +8831,11 @@ snapshots: '@smithy/types': 3.2.0 tslib: 2.6.3 + '@smithy/util-middleware@3.0.3': + dependencies: + '@smithy/types': 3.3.0 + tslib: 2.6.3 + '@smithy/util-retry@2.2.0': dependencies: '@smithy/service-error-classification': 2.1.5 @@ -8030,6 +8848,12 @@ snapshots: '@smithy/types': 3.2.0 tslib: 2.6.3 + '@smithy/util-retry@3.0.3': + dependencies: + '@smithy/service-error-classification': 3.0.3 + '@smithy/types': 3.3.0 + tslib: 2.6.3 + '@smithy/util-stream@2.2.0': dependencies: '@smithy/fetch-http-handler': 2.5.0 @@ -8052,6 +8876,17 @@ snapshots: '@smithy/util-utf8': 3.0.0 tslib: 2.6.3 + '@smithy/util-stream@3.1.3': + dependencies: + '@smithy/fetch-http-handler': 3.2.4 + '@smithy/node-http-handler': 3.1.4 + '@smithy/types': 3.3.0 + '@smithy/util-base64': 3.0.0 + '@smithy/util-buffer-from': 3.0.0 + '@smithy/util-hex-encoding': 3.0.0 + '@smithy/util-utf8': 3.0.0 + tslib: 2.6.3 + '@smithy/util-uri-escape@2.2.0': dependencies: tslib: 2.6.3 @@ -8163,6 +8998,8 @@ snapshots: dependencies: '@types/node': 20.14.9 + '@types/aws-lambda@8.10.143': {} + '@types/babel__core@7.20.5': dependencies: '@babel/parser': 7.24.7 @@ -9577,6 +10414,10 @@ snapshots: dependencies: strnum: 1.0.5 + fast-xml-parser@4.4.1: + dependencies: + strnum: 1.0.5 + fastest-levenshtein@1.0.16: {} fastq@1.17.1: @@ -10714,20 +11555,20 @@ snapshots: '@types/whatwg-url': 11.0.5 whatwg-url: 13.0.0 - mongodb@6.6.2(@aws-sdk/credential-providers@3.600.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0)))(socks@2.8.3): + mongodb@6.6.2(@aws-sdk/credential-providers@3.600.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0)))(socks@2.8.3): dependencies: '@mongodb-js/saslprep': 1.1.7 bson: 6.7.0 mongodb-connection-string-url: 3.0.1 optionalDependencies: - '@aws-sdk/credential-providers': 3.600.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0)) + '@aws-sdk/credential-providers': 3.600.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0)) socks: 2.8.3 - mongoose@8.4.4(@aws-sdk/credential-providers@3.600.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0)))(socks@2.8.3): + mongoose@8.4.4(@aws-sdk/credential-providers@3.600.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0)))(socks@2.8.3): dependencies: bson: 6.7.0 kareem: 2.6.3 - mongodb: 6.6.2(@aws-sdk/credential-providers@3.600.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0)))(socks@2.8.3) + mongodb: 6.6.2(@aws-sdk/credential-providers@3.600.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0)))(socks@2.8.3) mpath: 0.9.0 mquery: 5.0.0 ms: 2.1.3 @@ -11308,7 +12149,7 @@ snapshots: transitivePeerDependencies: - supports-color - serverless-domain-manager@7.3.8(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0))(serverless@4.1.6): + serverless-domain-manager@7.3.8(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0))(serverless@4.1.6): dependencies: '@aws-sdk/client-acm': 3.600.0 '@aws-sdk/client-api-gateway': 3.600.0 @@ -11316,7 +12157,7 @@ snapshots: '@aws-sdk/client-cloudformation': 3.600.0 '@aws-sdk/client-route-53': 3.600.0 '@aws-sdk/client-s3': 3.600.0 - '@aws-sdk/credential-providers': 3.600.0(@aws-sdk/client-sso-oidc@3.606.0(@aws-sdk/client-sts@3.606.0)) + '@aws-sdk/credential-providers': 3.600.0(@aws-sdk/client-sso-oidc@3.624.0(@aws-sdk/client-sts@3.624.0)) '@smithy/config-resolver': 2.2.0 '@smithy/node-config-provider': 2.3.0 '@smithy/node-http-handler': 2.5.0 diff --git a/serverless.yml b/serverless.yml index ed3b6c9..9aa107f 100644 --- a/serverless.yml +++ b/serverless.yml @@ -8,6 +8,13 @@ provider: runtime: nodejs20.x region: ap-northeast-2 architecture: arm64 + iamRoleStatements: + - Effect: 'Allow' + Action: + - 'sqs:ReceiveMessage' + - 'sqs:SendMessage' + - 'sqs:DeleteMessage' + Resource: '*' custom: dotenv: @@ -32,7 +39,13 @@ functions: origin: '*' aiWorker: handler: worker-dist/index.handler - timeout: 30 + timeout: 600 + description: AI Classification Async Worker + events: + - sqs: + arn: + Fn::GetAtt: [AIEventQueue, Arn] + maximumConcurrency: 5 package: exclude: @@ -40,3 +53,24 @@ package: include: - 'dist/**' - 'worker-dist/**' + +resources: + Resources: + AIEventQueue: + Type: 'AWS::SQS::Queue' + Properties: + QueueName: 'ai-event-queue.fifo' + FifoQueue: true + ContentBasedDeduplication: true + VisibilityTimeout: 600 + RedrivePolicy: + deadLetterTargetArn: + Fn::GetAtt: + - 'AIEventDeadQueue' + - 'Arn' + maxReceiveCount: 1 + AIEventDeadQueue: + Type: 'AWS::SQS::Queue' + Properties: + FifoQueue: true + QueueName: 'ai-event-dead-queue.fifo' diff --git a/src/ai_handler.ts b/src/ai_handler.ts index 10c4b99..783b6a2 100644 --- a/src/ai_handler.ts +++ b/src/ai_handler.ts @@ -1,7 +1,7 @@ import { Module } from '@nestjs/common'; import { ConfigModule } from '@nestjs/config'; import { NestFactory } from '@nestjs/core'; -import { Handler } from 'aws-lambda'; +import { SQSHandler } from 'aws-lambda'; import { DatabaseModule } from './infrastructure'; import { AiModule } from './infrastructure/ai/ai.module'; import { AiClassificationPayload } from './infrastructure/aws-lambda/type'; @@ -24,16 +24,19 @@ import { AiClassificationService } from './modules/ai-classification/ai-classifi }) export class WorkerModule {} -export const handler: Handler = async (event: AiClassificationPayload) => { +export const handler: SQSHandler = async (event) => { const app = await NestFactory.create(WorkerModule); const aiClassificationService = app.get(AiClassificationService); - const result = await aiClassificationService.execute(event); + for (const record of event.Records) { + const body: AiClassificationPayload = JSON.parse(record.body); + const result = await aiClassificationService.execute(body); - // NOTE: cloud-watch 로그 확인용 - console.log({ - result: result.success ? 'success' : 'fail', - event: JSON.stringify(event, null, 2), - summarizeUrlContent: result, - }); + // NOTE: cloud-watch 로그 확인용 + console.log({ + result: result.success ? 'success' : 'fail', + event: JSON.stringify(event, null, 2), + summarizeUrlContent: result, + }); + } }; diff --git a/src/infrastructure/queue/queue.module.ts b/src/infrastructure/queue/queue.module.ts new file mode 100644 index 0000000..b35269c --- /dev/null +++ b/src/infrastructure/queue/queue.module.ts @@ -0,0 +1,14 @@ +import { ClassProvider, Module } from '@nestjs/common'; +import { SQSService } from './sqs.service'; + +const providers: ClassProvider[] = [ + { + provide: 'IQeueuService', + useClass: SQSService, + }, +]; +@Module({ + providers, + exports: providers, +}) +export class QueueModule {} diff --git a/src/infrastructure/queue/queue.service.ts b/src/infrastructure/queue/queue.service.ts new file mode 100644 index 0000000..a7b8ab9 --- /dev/null +++ b/src/infrastructure/queue/queue.service.ts @@ -0,0 +1,3 @@ +export interface IQeueuService { + send(data: T, queueName?: string): Promise; +} diff --git a/src/infrastructure/queue/sqs.service.ts b/src/infrastructure/queue/sqs.service.ts new file mode 100644 index 0000000..9cc54e1 --- /dev/null +++ b/src/infrastructure/queue/sqs.service.ts @@ -0,0 +1,27 @@ +import { SQS, SendMessageRequest } from '@aws-sdk/client-sqs'; +import { Injectable } from '@nestjs/common'; +import { ConfigService } from '@nestjs/config'; +import { IQeueuService } from './queue.service'; + +@Injectable() +export class SQSService implements IQeueuService { + private queue: SQS; + + constructor(private readonly config: ConfigService) { + this.queue = new SQS({ + region: 'ap-northeast-2', + }); + } + + async send(data: T) { + const queueUrl = this.config.get('AIEventQueue'); + const payload: SendMessageRequest = { + QueueUrl: queueUrl, + DelaySeconds: 0, + MessageBody: JSON.stringify(data), + MessageGroupId: 'AI_CLASSIFICATION_EVENT', + }; + + await this.queue.sendMessage(payload); + } +} diff --git a/src/infrastructure/queue/type.ts b/src/infrastructure/queue/type.ts new file mode 100644 index 0000000..0bd63a4 --- /dev/null +++ b/src/infrastructure/queue/type.ts @@ -0,0 +1,7 @@ +export type AiClassificationPayload = { + postContent: string; + folderList: { id: string; name: string }[]; + userId: string; + postId: string; + url: string; +}; diff --git a/src/modules/posts/posts.module.ts b/src/modules/posts/posts.module.ts index 9477a89..440bc03 100644 --- a/src/modules/posts/posts.module.ts +++ b/src/modules/posts/posts.module.ts @@ -8,12 +8,11 @@ import { Post, PostSchema, } from '@src/infrastructure'; -import { AwsLambdaModule } from '@src/infrastructure/aws-lambda/aws-lambda.module'; -import { AwsLambdaService } from '@src/infrastructure/aws-lambda/aws-lambda.service'; import { PostKeyword, PostKeywordSchema, } from '@src/infrastructure/database/schema/postKeyword.schema'; +import { QueueModule } from '@src/infrastructure/queue/queue.module'; import { PostsRepository } from '@src/modules/posts/posts.repository'; import { UsersModule } from '@src/modules/users/users.module'; import { AiClassificationModule } from '../ai-classification/ai-classification.module'; @@ -31,15 +30,14 @@ import { PostsService } from './posts.service'; { name: PostKeyword.name, schema: PostKeywordSchema }, ]), UsersModule, - AwsLambdaModule, AiClassificationModule, + QueueModule, ], controllers: [PostsController], providers: [ PostsService, PostsRepository, FolderRepository, - AwsLambdaService, PostKeywordsRepository, ], exports: [PostsService, PostsRepository], diff --git a/src/modules/posts/posts.service.ts b/src/modules/posts/posts.service.ts index a653bf7..6fb6e71 100644 --- a/src/modules/posts/posts.service.ts +++ b/src/modules/posts/posts.service.ts @@ -1,11 +1,10 @@ -import { Injectable } from '@nestjs/common'; -import { ConfigService } from '@nestjs/config'; +import { Inject, Injectable } from '@nestjs/common'; import { parseLinkTitleAndContent } from '@src/common'; import { IS_LOCAL } from '@src/common/constant'; import { Keyword, Post } from '@src/infrastructure'; -import { AwsLambdaService } from '@src/infrastructure/aws-lambda/aws-lambda.service'; import { AiClassificationPayload } from '@src/infrastructure/aws-lambda/type'; import { FolderType } from '@src/infrastructure/database/types/folder-type.enum'; +import { IQeueuService } from '@src/infrastructure/queue/queue.service'; import { CreatePostDto } from '@src/modules/posts/dto/create-post.dto'; import { PostAiStatus } from '@src/modules/posts/posts.constant'; import { PostsRepository } from '@src/modules/posts/posts.repository'; @@ -29,9 +28,8 @@ export class PostsService { private readonly folderRepository: FolderRepository, private readonly postKeywordsRepository: PostKeywordsRepository, - private readonly awsLambdaService: AwsLambdaService, private readonly aiClassificationService: AiClassificationService, - private readonly config: ConfigService, + @Inject('IQeueuService') private readonly queueService: IQeueuService, ) {} async listPost(userId: string, query: ListPostQueryDto) { @@ -98,6 +96,7 @@ export class PostsService { thumbnail, PostAiStatus.IN_PROGRES, ); + const payload = { url: createPostDto.url, postContent: content, @@ -270,10 +269,6 @@ export class PostsService { return await this.aiClassificationService.execute(payload); } - const aiLambdaFunctionName = this.config.get( - 'LAMBDA_FUNCTION_NAME', - ); - - await this.awsLambdaService.invokeLambda(aiLambdaFunctionName, payload); + await this.queueService.send(payload); } } From 4dfc566e96ccda1127e9b890d9c1eb68f8d6bd49 Mon Sep 17 00:00:00 2001 From: Geonoing Date: Thu, 8 Aug 2024 03:26:30 +0900 Subject: [PATCH 2/2] =?UTF-8?q?chore:=20delay=20=EC=A0=81=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/infrastructure/queue/sqs.service.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/infrastructure/queue/sqs.service.ts b/src/infrastructure/queue/sqs.service.ts index 9cc54e1..850b15f 100644 --- a/src/infrastructure/queue/sqs.service.ts +++ b/src/infrastructure/queue/sqs.service.ts @@ -17,7 +17,7 @@ export class SQSService implements IQeueuService { const queueUrl = this.config.get('AIEventQueue'); const payload: SendMessageRequest = { QueueUrl: queueUrl, - DelaySeconds: 0, + DelaySeconds: 1, MessageBody: JSON.stringify(data), MessageGroupId: 'AI_CLASSIFICATION_EVENT', };