diff --git a/.github/workflows/deploy-manually.yml b/.github/workflows/deploy-manually.yml index b204e48..dea0b1d 100644 --- a/.github/workflows/deploy-manually.yml +++ b/.github/workflows/deploy-manually.yml @@ -134,7 +134,7 @@ jobs: eb deploy - name: Remove Docker's Trash - continue-on-error: true + if: always() run: | - docker system prune - docker rmi -f $(docker images -aq) + docker system prune --volumes -a -f + docker system df diff --git a/package-lock.json b/package-lock.json index 6b7296e..cb12ea7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,6 +9,7 @@ "version": "0.0.0", "license": "UNLICENSED", "dependencies": { + "@aws-sdk/client-secrets-manager": "^3.112.0", "@grpc/grpc-js": "^1.5.10", "@grpc/proto-loader": "^0.6.9", "@nestjs/common": "^8.4.3", @@ -20,7 +21,7 @@ "@nestjs/platform-express": "^8.4.3", "@nestjs/schedule": "^1.1.0", "@nestjs/swagger": "^5.2.1", - "@victorradael/protospack": "2.5.0-6", + "@victorradael/protospack": "2.5.0", "axios": "^0.25.0", "cron-parser": "^4.4.0", "dotenv": "^14.2.0", @@ -222,6 +223,851 @@ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", "dev": true }, + "node_modules/@aws-crypto/ie11-detection": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-2.0.0.tgz", + "integrity": "sha512-pkVXf/dq6PITJ0jzYZ69VhL8VFOFoPZLZqtU/12SGnzYuJOOGNfF41q9GxdI1yqC8R13Rq3jOLKDFpUJFT5eTA==", + "dependencies": { + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-crypto/sha256-browser": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-2.0.0.tgz", + "integrity": "sha512-rYXOQ8BFOaqMEHJrLHul/25ckWH6GTJtdLSajhlqGMx0PmSueAuvboCuZCTqEKlxR8CQOwRarxYMZZSYlhRA1A==", + "dependencies": { + "@aws-crypto/ie11-detection": "^2.0.0", + "@aws-crypto/sha256-js": "^2.0.0", + "@aws-crypto/supports-web-crypto": "^2.0.0", + "@aws-crypto/util": "^2.0.0", + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-crypto/sha256-js": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-2.0.0.tgz", + "integrity": "sha512-VZY+mCY4Nmrs5WGfitmNqXzaE873fcIZDu54cbaDaaamsaTOP1DBImV9F4pICc3EHjQXujyE8jig+PFCaew9ig==", + "dependencies": { + "@aws-crypto/util": "^2.0.0", + "@aws-sdk/types": "^3.1.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-crypto/supports-web-crypto": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-2.0.0.tgz", + "integrity": "sha512-Ge7WQ3E0OC7FHYprsZV3h0QIcpdyJLvIeg+uTuHqRYm8D6qCFJoiC+edSzSyFiHtZf+NOQDJ1q46qxjtzIY2nA==", + "dependencies": { + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-crypto/util": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-2.0.1.tgz", + "integrity": "sha512-JJmFFwvbm08lULw4Nm5QOLg8+lAQeC8aCXK5xrtxntYzYXCGfHwUJ4Is3770Q7HmICsXthGQ+ZsDL7C2uH3yBQ==", + "dependencies": { + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/util/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-sdk/abort-controller": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.110.0.tgz", + "integrity": "sha512-zok/WEVuK7Jh6V9YeA56pNZtxUASon9LTkS7vE65A4UFmNkPGNBCNgoiBcbhWfxwrZ8wtXcQk6rtUut39831mA==", + "dependencies": { + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/client-secrets-manager": { + "version": "3.112.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-secrets-manager/-/client-secrets-manager-3.112.0.tgz", + "integrity": "sha512-QU3Hh5OFXboVUtwuuk+LQAXKIN3oeVU7LCVPgfUNynaocZwKyLF5uiGSD10KOOy+KcRGY40chTwbGo/W/GQmWA==", + "dependencies": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/client-sts": "3.112.0", + "@aws-sdk/config-resolver": "3.110.0", + "@aws-sdk/credential-provider-node": "3.112.0", + "@aws-sdk/fetch-http-handler": "3.110.0", + "@aws-sdk/hash-node": "3.110.0", + "@aws-sdk/invalid-dependency": "3.110.0", + "@aws-sdk/middleware-content-length": "3.110.0", + "@aws-sdk/middleware-host-header": "3.110.0", + "@aws-sdk/middleware-logger": "3.110.0", + "@aws-sdk/middleware-recursion-detection": "3.110.0", + "@aws-sdk/middleware-retry": "3.110.0", + "@aws-sdk/middleware-serde": "3.110.0", + "@aws-sdk/middleware-signing": "3.110.0", + "@aws-sdk/middleware-stack": "3.110.0", + "@aws-sdk/middleware-user-agent": "3.110.0", + "@aws-sdk/node-config-provider": "3.110.0", + "@aws-sdk/node-http-handler": "3.110.0", + "@aws-sdk/protocol-http": "3.110.0", + "@aws-sdk/smithy-client": "3.110.0", + "@aws-sdk/types": "3.110.0", + "@aws-sdk/url-parser": "3.110.0", + "@aws-sdk/util-base64-browser": "3.109.0", + "@aws-sdk/util-base64-node": "3.55.0", + "@aws-sdk/util-body-length-browser": "3.55.0", + "@aws-sdk/util-body-length-node": "3.55.0", + "@aws-sdk/util-defaults-mode-browser": "3.110.0", + "@aws-sdk/util-defaults-mode-node": "3.110.0", + "@aws-sdk/util-user-agent-browser": "3.110.0", + "@aws-sdk/util-user-agent-node": "3.110.0", + "@aws-sdk/util-utf8-browser": "3.109.0", + "@aws-sdk/util-utf8-node": "3.109.0", + "tslib": "^2.3.1", + "uuid": "^8.3.2" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@aws-sdk/client-sso": { + "version": "3.112.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.112.0.tgz", + "integrity": "sha512-FwFmiapxuVQiyMdDaBvCpajnJkVWEUHBdO+7rIpzgKHkODEPou5/AwboaGRPEFYULOyYeI0HiDFzpK0G6de+7Q==", + "dependencies": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.110.0", + "@aws-sdk/fetch-http-handler": "3.110.0", + "@aws-sdk/hash-node": "3.110.0", + "@aws-sdk/invalid-dependency": "3.110.0", + "@aws-sdk/middleware-content-length": "3.110.0", + "@aws-sdk/middleware-host-header": "3.110.0", + "@aws-sdk/middleware-logger": "3.110.0", + "@aws-sdk/middleware-recursion-detection": "3.110.0", + "@aws-sdk/middleware-retry": "3.110.0", + "@aws-sdk/middleware-serde": "3.110.0", + "@aws-sdk/middleware-stack": "3.110.0", + "@aws-sdk/middleware-user-agent": "3.110.0", + "@aws-sdk/node-config-provider": "3.110.0", + "@aws-sdk/node-http-handler": "3.110.0", + "@aws-sdk/protocol-http": "3.110.0", + "@aws-sdk/smithy-client": "3.110.0", + "@aws-sdk/types": "3.110.0", + "@aws-sdk/url-parser": "3.110.0", + "@aws-sdk/util-base64-browser": "3.109.0", + "@aws-sdk/util-base64-node": "3.55.0", + "@aws-sdk/util-body-length-browser": "3.55.0", + "@aws-sdk/util-body-length-node": "3.55.0", + "@aws-sdk/util-defaults-mode-browser": "3.110.0", + "@aws-sdk/util-defaults-mode-node": "3.110.0", + "@aws-sdk/util-user-agent-browser": "3.110.0", + "@aws-sdk/util-user-agent-node": "3.110.0", + "@aws-sdk/util-utf8-browser": "3.109.0", + "@aws-sdk/util-utf8-node": "3.109.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@aws-sdk/client-sts": { + "version": "3.112.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.112.0.tgz", + "integrity": "sha512-hSApRO2wg3jk9VRGM6SCZO3aFP7DKVSUqs6FrvlXlj+JU88ZKObjrGE61cCzXoD89Dh+b9t8A2T6W51Nzriaxw==", + "dependencies": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.110.0", + "@aws-sdk/credential-provider-node": "3.112.0", + "@aws-sdk/fetch-http-handler": "3.110.0", + "@aws-sdk/hash-node": "3.110.0", + "@aws-sdk/invalid-dependency": "3.110.0", + "@aws-sdk/middleware-content-length": "3.110.0", + "@aws-sdk/middleware-host-header": "3.110.0", + "@aws-sdk/middleware-logger": "3.110.0", + "@aws-sdk/middleware-recursion-detection": "3.110.0", + "@aws-sdk/middleware-retry": "3.110.0", + "@aws-sdk/middleware-sdk-sts": "3.110.0", + "@aws-sdk/middleware-serde": "3.110.0", + "@aws-sdk/middleware-signing": "3.110.0", + "@aws-sdk/middleware-stack": "3.110.0", + "@aws-sdk/middleware-user-agent": "3.110.0", + "@aws-sdk/node-config-provider": "3.110.0", + "@aws-sdk/node-http-handler": "3.110.0", + "@aws-sdk/protocol-http": "3.110.0", + "@aws-sdk/smithy-client": "3.110.0", + "@aws-sdk/types": "3.110.0", + "@aws-sdk/url-parser": "3.110.0", + "@aws-sdk/util-base64-browser": "3.109.0", + "@aws-sdk/util-base64-node": "3.55.0", + "@aws-sdk/util-body-length-browser": "3.55.0", + "@aws-sdk/util-body-length-node": "3.55.0", + "@aws-sdk/util-defaults-mode-browser": "3.110.0", + "@aws-sdk/util-defaults-mode-node": "3.110.0", + "@aws-sdk/util-user-agent-browser": "3.110.0", + "@aws-sdk/util-user-agent-node": "3.110.0", + "@aws-sdk/util-utf8-browser": "3.109.0", + "@aws-sdk/util-utf8-node": "3.109.0", + "entities": "2.2.0", + "fast-xml-parser": "3.19.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@aws-sdk/config-resolver": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.110.0.tgz", + "integrity": "sha512-7VvtKy4CL63BAktQ2vgsjhWDSXpkXO5YdiI56LQnHztrvSuJBBaxJ7R1p/k0b2tEUhYKUziAIW8EKE/7EGPR4g==", + "dependencies": { + "@aws-sdk/signature-v4": "3.110.0", + "@aws-sdk/types": "3.110.0", + "@aws-sdk/util-config-provider": "3.109.0", + "@aws-sdk/util-middleware": "3.110.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-env": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.110.0.tgz", + "integrity": "sha512-oFU3IYk/Bl5tdsz1qigtm3I25a9cvXPqlE8VjYjxVDdLujF5zd/4HLbhP4GQWhpEwZmM1ijcSNfLcyywVevTZg==", + "dependencies": { + "@aws-sdk/property-provider": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-imds": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.110.0.tgz", + "integrity": "sha512-atl+7/dAB+8fG9XI2fYyCgXKYDbOzot65VAwis+14bOEUCVp7PCJifBEZ/L8GEq564p+Fa2p1IpV0wuQXxqFUQ==", + "dependencies": { + "@aws-sdk/node-config-provider": "3.110.0", + "@aws-sdk/property-provider": "3.110.0", + "@aws-sdk/types": "3.110.0", + "@aws-sdk/url-parser": "3.110.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.112.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.112.0.tgz", + "integrity": "sha512-ebgZ6/jZdTGHQ3zfq/ccmS+7YmLk6yUWHDmh69VK+B1Dd+S1jFwbD9EQ+pYWCp/gEl9F620NSwb6KghRylPWEQ==", + "dependencies": { + "@aws-sdk/credential-provider-env": "3.110.0", + "@aws-sdk/credential-provider-imds": "3.110.0", + "@aws-sdk/credential-provider-sso": "3.112.0", + "@aws-sdk/credential-provider-web-identity": "3.110.0", + "@aws-sdk/property-provider": "3.110.0", + "@aws-sdk/shared-ini-file-loader": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-node": { + "version": "3.112.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.112.0.tgz", + "integrity": "sha512-7txS7P3BAaU4cksFw/PnoVskVvO8h/TPvOl/BxFtCiUdwA6FRltLvBeMlN08fwUoqgM6z06q8areBdeDqCHOSw==", + "dependencies": { + "@aws-sdk/credential-provider-env": "3.110.0", + "@aws-sdk/credential-provider-imds": "3.110.0", + "@aws-sdk/credential-provider-ini": "3.112.0", + "@aws-sdk/credential-provider-process": "3.110.0", + "@aws-sdk/credential-provider-sso": "3.112.0", + "@aws-sdk/credential-provider-web-identity": "3.110.0", + "@aws-sdk/property-provider": "3.110.0", + "@aws-sdk/shared-ini-file-loader": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-process": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.110.0.tgz", + "integrity": "sha512-JJcZePvRTfQHYj/+EEY13yItnZH/e8exlARFUjN0L13UrgHpOJtDQBa+YBHXo6MbTFQh+re25z2kzc+zOYSMNQ==", + "dependencies": { + "@aws-sdk/property-provider": "3.110.0", + "@aws-sdk/shared-ini-file-loader": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.112.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.112.0.tgz", + "integrity": "sha512-b6rOrSXbNK3fGyPvNpyF5zdktmAoNOqHCTmFSUcxRxOipyRGb5JACsbjWthIQkpWkpNCT8GFNLEg9spXPFIdLA==", + "dependencies": { + "@aws-sdk/client-sso": "3.112.0", + "@aws-sdk/property-provider": "3.110.0", + "@aws-sdk/shared-ini-file-loader": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.110.0.tgz", + "integrity": "sha512-e4e5u7v3fsUFZsMcFMhMy1NdJBQpunYcLwpYlszm3OEICwTTekQ+hVvnVRd134doHvzepE4yp9sAop0Cj+IRVQ==", + "dependencies": { + "@aws-sdk/property-provider": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/fetch-http-handler": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.110.0.tgz", + "integrity": "sha512-vk+K4GeCZL2J2rtvKO+T0Q7i3MDpEGZBMg5K2tj9sMcEQwty0BF0aFnP7Eu2l4/Zif2z1mWuUFM2WcZI6DVnbw==", + "dependencies": { + "@aws-sdk/protocol-http": "3.110.0", + "@aws-sdk/querystring-builder": "3.110.0", + "@aws-sdk/types": "3.110.0", + "@aws-sdk/util-base64-browser": "3.109.0", + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/hash-node": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.110.0.tgz", + "integrity": "sha512-wakl+kP2O8wTGYiQ3InZy+CVfGrIpFfq9fo4zif9PZac0BbUbguUU1dkY34uZiaf+4o2/9MoDYrHU2HYeXKxWw==", + "dependencies": { + "@aws-sdk/types": "3.110.0", + "@aws-sdk/util-buffer-from": "3.55.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/invalid-dependency": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.110.0.tgz", + "integrity": "sha512-O8J1InmtJkoiUMbQDtxBfOzgigBp9iSVsNXQrhs2qHh3826cJOfE7NGT3u+NMw73Pk5j2cfmOh1+7k/76IqxOg==", + "dependencies": { + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/is-array-buffer": { + "version": "3.55.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/is-array-buffer/-/is-array-buffer-3.55.0.tgz", + "integrity": "sha512-NbiPHVYuPxdqdFd6FxzzN3H1BQn/iWA3ri3Ry7AyLeP/tGs1yzEWMwf8BN8TSMALI0GXT6Sh0GDWy3Ok5xB6DA==", + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/middleware-content-length": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.110.0.tgz", + "integrity": "sha512-hKU+zdqfAJQg22LXMVu/z35nNIHrVAKpVKPe9+WYVdL/Z7JKUPK7QymqKGOyDuDbzW6OxyulC1zKGEX12zGmdA==", + "dependencies": { + "@aws-sdk/protocol-http": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/middleware-host-header": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.110.0.tgz", + "integrity": "sha512-/Cknn1vL2LTlclI0MX2RzmtdPlCJ5palCRXxm/mod1oHwg4oNTKRlUX3LUD+L8g7JuJ4h053Ch9KS/A0vanE5Q==", + "dependencies": { + "@aws-sdk/protocol-http": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/middleware-logger": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.110.0.tgz", + "integrity": "sha512-+pz+a+8dfTnzLj79nHrv3aONMp/N36/erMd+7JXeR84QEosVLrFBUwKA8x5x6O3s1iBbQzRKMYEIuja9xn1BPA==", + "dependencies": { + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.110.0.tgz", + "integrity": "sha512-Wav782zd7bcd1e6txRob76CDOdVOaUQ8HXoywiIm/uFrEEUZvhs2mgnXjVUVCMBUehdNgnL99z420aS13JeL/Q==", + "dependencies": { + "@aws-sdk/protocol-http": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/middleware-retry": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.110.0.tgz", + "integrity": "sha512-lwLAQQveCiUqymQvVYjCee6QOXw3Zqbc9yq+pxYdXbs1Cv1XMA6PeJeUU5r5KEVuSceBLyyrnl6E0R1l1om1MQ==", + "dependencies": { + "@aws-sdk/protocol-http": "3.110.0", + "@aws-sdk/service-error-classification": "3.110.0", + "@aws-sdk/types": "3.110.0", + "@aws-sdk/util-middleware": "3.110.0", + "tslib": "^2.3.1", + "uuid": "^8.3.2" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/middleware-sdk-sts": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.110.0.tgz", + "integrity": "sha512-EjY/YFdlr5jECde6qIrTIyGBbn/34CKcQGKvmvRd31+3qaClIJLAwNuHfcVzWvCUGbAslsfvdbOpLju33pSQRA==", + "dependencies": { + "@aws-sdk/middleware-signing": "3.110.0", + "@aws-sdk/property-provider": "3.110.0", + "@aws-sdk/protocol-http": "3.110.0", + "@aws-sdk/signature-v4": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/middleware-serde": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.110.0.tgz", + "integrity": "sha512-brVupxgEAmcZ9cZvdHEH8zncjvGKIiud8pOe4fiimp5NpHmjBLew4jUbnOKNZNAjaidcKUtz//cxtutD6yXEww==", + "dependencies": { + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/middleware-signing": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.110.0.tgz", + "integrity": "sha512-y6ZKrGYfgDlFMzWhZmoq5J1UctBgZOUvMmnU9sSeZ020IlEPiOxFMvR0Zu6TcYThp8uy3P0wyjQtGYeTl9Z/kA==", + "dependencies": { + "@aws-sdk/property-provider": "3.110.0", + "@aws-sdk/protocol-http": "3.110.0", + "@aws-sdk/signature-v4": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/middleware-stack": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.110.0.tgz", + "integrity": "sha512-iaLHw6ctOuGa9UxNueU01Xes+15dR+mqioRpUOUZ9Zx+vhXVpD7C8lnNqhRnYeFXs10/rNIzASgsIrAHTlnlIQ==", + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.110.0.tgz", + "integrity": "sha512-Y6FgiZr99DilYq6AjeaaWcNwVlSQpNGKrILzvV4Tmz03OaBIspe4KL+8EZ2YA/sAu5Lpw80vItdezqDOwGAlnQ==", + "dependencies": { + "@aws-sdk/protocol-http": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/node-config-provider": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.110.0.tgz", + "integrity": "sha512-46p4dCPGYctuybTQTwLpjenA1QFHeyJw/OyggGbtUJUy+833+ldnAwcPVML2aXJKUKv3APGI8vq1kaloyNku3Q==", + "dependencies": { + "@aws-sdk/property-provider": "3.110.0", + "@aws-sdk/shared-ini-file-loader": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/node-http-handler": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.110.0.tgz", + "integrity": "sha512-/rP+hY516DpP8fZhwFW5xM/ElH0w6lxw/15VvZCoY5EnOLAF5XIsJdzscWPSEW2FHCylBM4SNrKhGar14BDXhA==", + "dependencies": { + "@aws-sdk/abort-controller": "3.110.0", + "@aws-sdk/protocol-http": "3.110.0", + "@aws-sdk/querystring-builder": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/property-provider": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.110.0.tgz", + "integrity": "sha512-7NkpmYeOkK3mhWBNU+/zSDqwzeaSPH1qrq4L//WV7WS/weYyE/jusQeZoOxVsuZQnQEXHt5O2hKVeUwShl12xA==", + "dependencies": { + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/protocol-http": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.110.0.tgz", + "integrity": "sha512-qdi2gCbJiyPyLn+afebPNp/5nVCRh1X7t7IRIFl3FHVEC+o54u/ojay/MLZ4M/+X9Fa4Zxsb0Wpp3T0xAHVDBg==", + "dependencies": { + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/querystring-builder": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.110.0.tgz", + "integrity": "sha512-7V3CDXj519izmbBn9ZE68ymASwGriA+Aq+cb/yHSVtffnvXjPtvONNw7G/5iVblisGLSCUe2hSvpYtcaXozbHw==", + "dependencies": { + "@aws-sdk/types": "3.110.0", + "@aws-sdk/util-uri-escape": "3.55.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/querystring-parser": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.110.0.tgz", + "integrity": "sha512-//pJHH7hrhdDMZGBPKXKymmC/tJM7gFT0w/qbu/yd3Wm4W2fMB+8gkmj6EZctx7jrsWlfRQuvFejKqEfapur/g==", + "dependencies": { + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/service-error-classification": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.110.0.tgz", + "integrity": "sha512-ccgCE0pU/4RmXR6CP3fLAdhPAve7bK/yXBbGzpSHGAQOXqNxYzOsAvQ30Jg6X+qjLHsI/HR2pLIE65z4k6tynw==", + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/shared-ini-file-loader": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.110.0.tgz", + "integrity": "sha512-E1ERoqEoG206XNBYWCKLgHkzCbTxdpDEGbsLET2DnvjFsT0s9p2dPvVux3bYl7JVAhyGduE+qcqWk7MzhFCBNQ==", + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/signature-v4": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.110.0.tgz", + "integrity": "sha512-utxxdllOnmQDhbpipnFAbuQ4c2pwefZ+2hi48jKvQRULQ2PO4nxLmdZm6B0FXaTijbKsyO7GrMik+EZ6mi3ARQ==", + "dependencies": { + "@aws-sdk/is-array-buffer": "3.55.0", + "@aws-sdk/types": "3.110.0", + "@aws-sdk/util-hex-encoding": "3.109.0", + "@aws-sdk/util-middleware": "3.110.0", + "@aws-sdk/util-uri-escape": "3.55.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/smithy-client": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.110.0.tgz", + "integrity": "sha512-gNLYrmdAe/1hVF2Nv2LF4OkL1A0a1o708pEMZHzql9xP164omRDaLrGDhz9tH7tsJEgLz+Bf4E8nTuISeDwvGg==", + "dependencies": { + "@aws-sdk/middleware-stack": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/types": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.110.0.tgz", + "integrity": "sha512-dLVoqODU3laaqNFPyN1QLtlQnwX4gNPMXptEBIt/iJpuZf66IYJe6WCzVZGt4Zfa1CnUmrlA428AzdcA/KCr2A==", + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/url-parser": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.110.0.tgz", + "integrity": "sha512-tILFB8/Q73yzgO0dErJNnELmmBszd0E6FucwAnG3hfDefjqCBe09Q/1yhu2aARXyRmZa4AKp0sWcdwIWHc8dnA==", + "dependencies": { + "@aws-sdk/querystring-parser": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/util-base64-browser": { + "version": "3.109.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64-browser/-/util-base64-browser-3.109.0.tgz", + "integrity": "sha512-lAZ6fyDGiRLaIsKT9qh7P9FGuNyZ4gAbr1YOSQk/5mHtaTuUvxlPptZuInNM/0MPQm6lpcot00D8IWTucn4PbA==", + "dependencies": { + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/util-base64-node": { + "version": "3.55.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64-node/-/util-base64-node-3.55.0.tgz", + "integrity": "sha512-UQ/ZuNoAc8CFMpSiRYmevaTsuRKzLwulZTnM8LNlIt9Wx1tpNvqp80cfvVj7yySKROtEi20wq29h31dZf1eYNQ==", + "dependencies": { + "@aws-sdk/util-buffer-from": "3.55.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/util-body-length-browser": { + "version": "3.55.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.55.0.tgz", + "integrity": "sha512-Ei2OCzXQw5N6ZkTMZbamUzc1z+z1R1Ja5tMEagz5BxuX4vWdBObT+uGlSzL8yvTbjoPjnxWA2aXyEqaUP3JS8Q==", + "dependencies": { + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/util-body-length-node": { + "version": "3.55.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-node/-/util-body-length-node-3.55.0.tgz", + "integrity": "sha512-lU1d4I+9wJwydduXs0SxSfd+mHKjxeyd39VwOv6i2KSwWkPbji9UQqpflKLKw+r45jL7+xU/zfeTUg5Tt/3Gew==", + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/util-buffer-from": { + "version": "3.55.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-buffer-from/-/util-buffer-from-3.55.0.tgz", + "integrity": "sha512-uVzKG1UgvnV7XX2FPTylBujYMKBPBaq/qFBxfl0LVNfrty7YjpfieQxAe6yRLD+T0Kir/WDQwGvYC+tOYG3IGA==", + "dependencies": { + "@aws-sdk/is-array-buffer": "3.55.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/util-config-provider": { + "version": "3.109.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-config-provider/-/util-config-provider-3.109.0.tgz", + "integrity": "sha512-GrAZl/aBv0A28LkyNyq8SPJ5fmViCwz80fWLMeWx/6q5AbivuILogjlWwEZSvZ9zrlHOcFC0+AnCa5pQrjaslw==", + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/util-defaults-mode-browser": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.110.0.tgz", + "integrity": "sha512-Y2dcOOD20S3bv/IjUqpdKIiDt6995SXNG5Pu/LeSdXNyLCOIm9rX4gHTxl9fC1KK5M/gR9fGJ362f67WwqEEqw==", + "dependencies": { + "@aws-sdk/property-provider": "3.110.0", + "@aws-sdk/types": "3.110.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/util-defaults-mode-node": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.110.0.tgz", + "integrity": "sha512-Cr3Z5nyrw1KowjbW76xp8hkT/zJtYjAVZ9PS4l84KxIicbVvDOBpxG3yNddkuQcavmlH6G4wH9uM5DcnpKDncg==", + "dependencies": { + "@aws-sdk/config-resolver": "3.110.0", + "@aws-sdk/credential-provider-imds": "3.110.0", + "@aws-sdk/node-config-provider": "3.110.0", + "@aws-sdk/property-provider": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/util-hex-encoding": { + "version": "3.109.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.109.0.tgz", + "integrity": "sha512-s8CgTNrn3cLkrdiohfxLuOYPCanzvHn/aH5RW6DaMoeQiG5Hl9QUiP/WtdQ9QQx3xvpQFpmvxIaSBwSgFNLQxA==", + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/util-locate-window": { + "version": "3.55.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.55.0.tgz", + "integrity": "sha512-0sPmK2JaJE2BbTcnvybzob/VrFKCXKfN4CUKcvn0yGg/me7Bz+vtzQRB3Xp+YSx+7OtWxzv63wsvHoAnXvgxgg==", + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/util-middleware": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.110.0.tgz", + "integrity": "sha512-PTVWrI5fA9d5hHJs6RzX2dIS2jRQ3uW073Fm0BePpQeDdZrEk+S5KNwRhUtpN6sdSV45vm6S9rrjZUG51qwGmA==", + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/util-uri-escape": { + "version": "3.55.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-uri-escape/-/util-uri-escape-3.55.0.tgz", + "integrity": "sha512-mmdDLUpFCN2nkfwlLdOM54lTD528GiGSPN1qb8XtGLgZsJUmg3uJSFIN2lPeSbEwJB3NFjVas/rnQC48i7mV8w==", + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.110.0.tgz", + "integrity": "sha512-rNdhmHDMV5dNJctqlBWimkZLJRB+x03DB+61pm+SKSFk6gPIVIvc1WNXqDFphkiswT4vA13ZUkGHzt+N4+noQQ==", + "dependencies": { + "@aws-sdk/types": "3.110.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.110.0.tgz", + "integrity": "sha512-OQ915TPCCBwZWz5Np8zkNWn7U6KvrTZfFoCOy/VIemK3dUqmnBZ7HqGpuZx8SwJ2R9JE1x+j0niYSJ5fWJZZKA==", + "dependencies": { + "@aws-sdk/node-config-provider": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/util-utf8-browser": { + "version": "3.109.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.109.0.tgz", + "integrity": "sha512-FmcGSz0v7Bqpl1SE8G1Gc0CtDpug+rvqNCG/szn86JApD/f5x8oByjbEiAyTU2ZH2VevUntx6EW68ulHyH+x+w==", + "dependencies": { + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/util-utf8-node": { + "version": "3.109.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-node/-/util-utf8-node-3.109.0.tgz", + "integrity": "sha512-Ti/ZBdvz2eSTElsucjzNmzpyg2MwfD1rXmxD0hZuIF8bPON/0+sZYnWd5CbDw9kgmhy28dmKue086tbZ1G0iLQ==", + "dependencies": { + "@aws-sdk/util-buffer-from": "3.55.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, "node_modules/@babel/code-frame": { "version": "7.16.7", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", @@ -2373,9 +3219,9 @@ } }, "node_modules/@victorradael/protospack": { - "version": "2.5.0-6", - "resolved": "https://registry.npmjs.org/@victorradael/protospack/-/protospack-2.5.0-6.tgz", - "integrity": "sha512-3SYQ+VMWRaBi3HAX8A4n+roTX+pVvrhMFqtunChfjzuHlueWsH/ASttCI2DrqVK2yZP6RdO6unKawd8pmeXmJw==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@victorradael/protospack/-/protospack-2.5.0.tgz", + "integrity": "sha512-DORlm3uHAYVH9dlcmwyOxjA4rk1UZWFyYUpD02k0bFfrH+uzSWe8qiPtTgZym9P8U9D8bXYRWeLlroasBj2Rdw==", "dependencies": { "rxjs": "^7.5.5" } @@ -3010,6 +3856,11 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, + "node_modules/bowser": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz", + "integrity": "sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==" + }, "node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -3832,6 +4683,14 @@ "node": ">=10.13.0" } }, + "node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, "node_modules/error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -4439,6 +5298,18 @@ "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==" }, + "node_modules/fast-xml-parser": { + "version": "3.19.0", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-3.19.0.tgz", + "integrity": "sha512-4pXwmBplsCPv8FOY1WRakF970TjNGnGnfbOnLqjlYvMiF1SR3yOHyxMR/YCXpPTOspNF5gwudqktIP4VsWkvBg==", + "bin": { + "xml2js": "cli.js" + }, + "funding": { + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" + } + }, "node_modules/fastq": { "version": "1.13.0", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", @@ -9469,6 +10340,720 @@ } } }, + "@aws-crypto/ie11-detection": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-2.0.0.tgz", + "integrity": "sha512-pkVXf/dq6PITJ0jzYZ69VhL8VFOFoPZLZqtU/12SGnzYuJOOGNfF41q9GxdI1yqC8R13Rq3jOLKDFpUJFT5eTA==", + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/sha256-browser": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-2.0.0.tgz", + "integrity": "sha512-rYXOQ8BFOaqMEHJrLHul/25ckWH6GTJtdLSajhlqGMx0PmSueAuvboCuZCTqEKlxR8CQOwRarxYMZZSYlhRA1A==", + "requires": { + "@aws-crypto/ie11-detection": "^2.0.0", + "@aws-crypto/sha256-js": "^2.0.0", + "@aws-crypto/supports-web-crypto": "^2.0.0", + "@aws-crypto/util": "^2.0.0", + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/sha256-js": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-2.0.0.tgz", + "integrity": "sha512-VZY+mCY4Nmrs5WGfitmNqXzaE873fcIZDu54cbaDaaamsaTOP1DBImV9F4pICc3EHjQXujyE8jig+PFCaew9ig==", + "requires": { + "@aws-crypto/util": "^2.0.0", + "@aws-sdk/types": "^3.1.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/supports-web-crypto": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-2.0.0.tgz", + "integrity": "sha512-Ge7WQ3E0OC7FHYprsZV3h0QIcpdyJLvIeg+uTuHqRYm8D6qCFJoiC+edSzSyFiHtZf+NOQDJ1q46qxjtzIY2nA==", + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/util": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-2.0.1.tgz", + "integrity": "sha512-JJmFFwvbm08lULw4Nm5QOLg8+lAQeC8aCXK5xrtxntYzYXCGfHwUJ4Is3770Q7HmICsXthGQ+ZsDL7C2uH3yBQ==", + "requires": { + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-sdk/abort-controller": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.110.0.tgz", + "integrity": "sha512-zok/WEVuK7Jh6V9YeA56pNZtxUASon9LTkS7vE65A4UFmNkPGNBCNgoiBcbhWfxwrZ8wtXcQk6rtUut39831mA==", + "requires": { + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-secrets-manager": { + "version": "3.112.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-secrets-manager/-/client-secrets-manager-3.112.0.tgz", + "integrity": "sha512-QU3Hh5OFXboVUtwuuk+LQAXKIN3oeVU7LCVPgfUNynaocZwKyLF5uiGSD10KOOy+KcRGY40chTwbGo/W/GQmWA==", + "requires": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/client-sts": "3.112.0", + "@aws-sdk/config-resolver": "3.110.0", + "@aws-sdk/credential-provider-node": "3.112.0", + "@aws-sdk/fetch-http-handler": "3.110.0", + "@aws-sdk/hash-node": "3.110.0", + "@aws-sdk/invalid-dependency": "3.110.0", + "@aws-sdk/middleware-content-length": "3.110.0", + "@aws-sdk/middleware-host-header": "3.110.0", + "@aws-sdk/middleware-logger": "3.110.0", + "@aws-sdk/middleware-recursion-detection": "3.110.0", + "@aws-sdk/middleware-retry": "3.110.0", + "@aws-sdk/middleware-serde": "3.110.0", + "@aws-sdk/middleware-signing": "3.110.0", + "@aws-sdk/middleware-stack": "3.110.0", + "@aws-sdk/middleware-user-agent": "3.110.0", + "@aws-sdk/node-config-provider": "3.110.0", + "@aws-sdk/node-http-handler": "3.110.0", + "@aws-sdk/protocol-http": "3.110.0", + "@aws-sdk/smithy-client": "3.110.0", + "@aws-sdk/types": "3.110.0", + "@aws-sdk/url-parser": "3.110.0", + "@aws-sdk/util-base64-browser": "3.109.0", + "@aws-sdk/util-base64-node": "3.55.0", + "@aws-sdk/util-body-length-browser": "3.55.0", + "@aws-sdk/util-body-length-node": "3.55.0", + "@aws-sdk/util-defaults-mode-browser": "3.110.0", + "@aws-sdk/util-defaults-mode-node": "3.110.0", + "@aws-sdk/util-user-agent-browser": "3.110.0", + "@aws-sdk/util-user-agent-node": "3.110.0", + "@aws-sdk/util-utf8-browser": "3.109.0", + "@aws-sdk/util-utf8-node": "3.109.0", + "tslib": "^2.3.1", + "uuid": "^8.3.2" + } + }, + "@aws-sdk/client-sso": { + "version": "3.112.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.112.0.tgz", + "integrity": "sha512-FwFmiapxuVQiyMdDaBvCpajnJkVWEUHBdO+7rIpzgKHkODEPou5/AwboaGRPEFYULOyYeI0HiDFzpK0G6de+7Q==", + "requires": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.110.0", + "@aws-sdk/fetch-http-handler": "3.110.0", + "@aws-sdk/hash-node": "3.110.0", + "@aws-sdk/invalid-dependency": "3.110.0", + "@aws-sdk/middleware-content-length": "3.110.0", + "@aws-sdk/middleware-host-header": "3.110.0", + "@aws-sdk/middleware-logger": "3.110.0", + "@aws-sdk/middleware-recursion-detection": "3.110.0", + "@aws-sdk/middleware-retry": "3.110.0", + "@aws-sdk/middleware-serde": "3.110.0", + "@aws-sdk/middleware-stack": "3.110.0", + "@aws-sdk/middleware-user-agent": "3.110.0", + "@aws-sdk/node-config-provider": "3.110.0", + "@aws-sdk/node-http-handler": "3.110.0", + "@aws-sdk/protocol-http": "3.110.0", + "@aws-sdk/smithy-client": "3.110.0", + "@aws-sdk/types": "3.110.0", + "@aws-sdk/url-parser": "3.110.0", + "@aws-sdk/util-base64-browser": "3.109.0", + "@aws-sdk/util-base64-node": "3.55.0", + "@aws-sdk/util-body-length-browser": "3.55.0", + "@aws-sdk/util-body-length-node": "3.55.0", + "@aws-sdk/util-defaults-mode-browser": "3.110.0", + "@aws-sdk/util-defaults-mode-node": "3.110.0", + "@aws-sdk/util-user-agent-browser": "3.110.0", + "@aws-sdk/util-user-agent-node": "3.110.0", + "@aws-sdk/util-utf8-browser": "3.109.0", + "@aws-sdk/util-utf8-node": "3.109.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-sts": { + "version": "3.112.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.112.0.tgz", + "integrity": "sha512-hSApRO2wg3jk9VRGM6SCZO3aFP7DKVSUqs6FrvlXlj+JU88ZKObjrGE61cCzXoD89Dh+b9t8A2T6W51Nzriaxw==", + "requires": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.110.0", + "@aws-sdk/credential-provider-node": "3.112.0", + "@aws-sdk/fetch-http-handler": "3.110.0", + "@aws-sdk/hash-node": "3.110.0", + "@aws-sdk/invalid-dependency": "3.110.0", + "@aws-sdk/middleware-content-length": "3.110.0", + "@aws-sdk/middleware-host-header": "3.110.0", + "@aws-sdk/middleware-logger": "3.110.0", + "@aws-sdk/middleware-recursion-detection": "3.110.0", + "@aws-sdk/middleware-retry": "3.110.0", + "@aws-sdk/middleware-sdk-sts": "3.110.0", + "@aws-sdk/middleware-serde": "3.110.0", + "@aws-sdk/middleware-signing": "3.110.0", + "@aws-sdk/middleware-stack": "3.110.0", + "@aws-sdk/middleware-user-agent": "3.110.0", + "@aws-sdk/node-config-provider": "3.110.0", + "@aws-sdk/node-http-handler": "3.110.0", + "@aws-sdk/protocol-http": "3.110.0", + "@aws-sdk/smithy-client": "3.110.0", + "@aws-sdk/types": "3.110.0", + "@aws-sdk/url-parser": "3.110.0", + "@aws-sdk/util-base64-browser": "3.109.0", + "@aws-sdk/util-base64-node": "3.55.0", + "@aws-sdk/util-body-length-browser": "3.55.0", + "@aws-sdk/util-body-length-node": "3.55.0", + "@aws-sdk/util-defaults-mode-browser": "3.110.0", + "@aws-sdk/util-defaults-mode-node": "3.110.0", + "@aws-sdk/util-user-agent-browser": "3.110.0", + "@aws-sdk/util-user-agent-node": "3.110.0", + "@aws-sdk/util-utf8-browser": "3.109.0", + "@aws-sdk/util-utf8-node": "3.109.0", + "entities": "2.2.0", + "fast-xml-parser": "3.19.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/config-resolver": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.110.0.tgz", + "integrity": "sha512-7VvtKy4CL63BAktQ2vgsjhWDSXpkXO5YdiI56LQnHztrvSuJBBaxJ7R1p/k0b2tEUhYKUziAIW8EKE/7EGPR4g==", + "requires": { + "@aws-sdk/signature-v4": "3.110.0", + "@aws-sdk/types": "3.110.0", + "@aws-sdk/util-config-provider": "3.109.0", + "@aws-sdk/util-middleware": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-env": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.110.0.tgz", + "integrity": "sha512-oFU3IYk/Bl5tdsz1qigtm3I25a9cvXPqlE8VjYjxVDdLujF5zd/4HLbhP4GQWhpEwZmM1ijcSNfLcyywVevTZg==", + "requires": { + "@aws-sdk/property-provider": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-imds": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.110.0.tgz", + "integrity": "sha512-atl+7/dAB+8fG9XI2fYyCgXKYDbOzot65VAwis+14bOEUCVp7PCJifBEZ/L8GEq564p+Fa2p1IpV0wuQXxqFUQ==", + "requires": { + "@aws-sdk/node-config-provider": "3.110.0", + "@aws-sdk/property-provider": "3.110.0", + "@aws-sdk/types": "3.110.0", + "@aws-sdk/url-parser": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-ini": { + "version": "3.112.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.112.0.tgz", + "integrity": "sha512-ebgZ6/jZdTGHQ3zfq/ccmS+7YmLk6yUWHDmh69VK+B1Dd+S1jFwbD9EQ+pYWCp/gEl9F620NSwb6KghRylPWEQ==", + "requires": { + "@aws-sdk/credential-provider-env": "3.110.0", + "@aws-sdk/credential-provider-imds": "3.110.0", + "@aws-sdk/credential-provider-sso": "3.112.0", + "@aws-sdk/credential-provider-web-identity": "3.110.0", + "@aws-sdk/property-provider": "3.110.0", + "@aws-sdk/shared-ini-file-loader": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-node": { + "version": "3.112.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.112.0.tgz", + "integrity": "sha512-7txS7P3BAaU4cksFw/PnoVskVvO8h/TPvOl/BxFtCiUdwA6FRltLvBeMlN08fwUoqgM6z06q8areBdeDqCHOSw==", + "requires": { + "@aws-sdk/credential-provider-env": "3.110.0", + "@aws-sdk/credential-provider-imds": "3.110.0", + "@aws-sdk/credential-provider-ini": "3.112.0", + "@aws-sdk/credential-provider-process": "3.110.0", + "@aws-sdk/credential-provider-sso": "3.112.0", + "@aws-sdk/credential-provider-web-identity": "3.110.0", + "@aws-sdk/property-provider": "3.110.0", + "@aws-sdk/shared-ini-file-loader": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-process": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.110.0.tgz", + "integrity": "sha512-JJcZePvRTfQHYj/+EEY13yItnZH/e8exlARFUjN0L13UrgHpOJtDQBa+YBHXo6MbTFQh+re25z2kzc+zOYSMNQ==", + "requires": { + "@aws-sdk/property-provider": "3.110.0", + "@aws-sdk/shared-ini-file-loader": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-sso": { + "version": "3.112.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.112.0.tgz", + "integrity": "sha512-b6rOrSXbNK3fGyPvNpyF5zdktmAoNOqHCTmFSUcxRxOipyRGb5JACsbjWthIQkpWkpNCT8GFNLEg9spXPFIdLA==", + "requires": { + "@aws-sdk/client-sso": "3.112.0", + "@aws-sdk/property-provider": "3.110.0", + "@aws-sdk/shared-ini-file-loader": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-web-identity": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.110.0.tgz", + "integrity": "sha512-e4e5u7v3fsUFZsMcFMhMy1NdJBQpunYcLwpYlszm3OEICwTTekQ+hVvnVRd134doHvzepE4yp9sAop0Cj+IRVQ==", + "requires": { + "@aws-sdk/property-provider": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/fetch-http-handler": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.110.0.tgz", + "integrity": "sha512-vk+K4GeCZL2J2rtvKO+T0Q7i3MDpEGZBMg5K2tj9sMcEQwty0BF0aFnP7Eu2l4/Zif2z1mWuUFM2WcZI6DVnbw==", + "requires": { + "@aws-sdk/protocol-http": "3.110.0", + "@aws-sdk/querystring-builder": "3.110.0", + "@aws-sdk/types": "3.110.0", + "@aws-sdk/util-base64-browser": "3.109.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/hash-node": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.110.0.tgz", + "integrity": "sha512-wakl+kP2O8wTGYiQ3InZy+CVfGrIpFfq9fo4zif9PZac0BbUbguUU1dkY34uZiaf+4o2/9MoDYrHU2HYeXKxWw==", + "requires": { + "@aws-sdk/types": "3.110.0", + "@aws-sdk/util-buffer-from": "3.55.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/invalid-dependency": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.110.0.tgz", + "integrity": "sha512-O8J1InmtJkoiUMbQDtxBfOzgigBp9iSVsNXQrhs2qHh3826cJOfE7NGT3u+NMw73Pk5j2cfmOh1+7k/76IqxOg==", + "requires": { + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/is-array-buffer": { + "version": "3.55.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/is-array-buffer/-/is-array-buffer-3.55.0.tgz", + "integrity": "sha512-NbiPHVYuPxdqdFd6FxzzN3H1BQn/iWA3ri3Ry7AyLeP/tGs1yzEWMwf8BN8TSMALI0GXT6Sh0GDWy3Ok5xB6DA==", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-content-length": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.110.0.tgz", + "integrity": "sha512-hKU+zdqfAJQg22LXMVu/z35nNIHrVAKpVKPe9+WYVdL/Z7JKUPK7QymqKGOyDuDbzW6OxyulC1zKGEX12zGmdA==", + "requires": { + "@aws-sdk/protocol-http": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-host-header": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.110.0.tgz", + "integrity": "sha512-/Cknn1vL2LTlclI0MX2RzmtdPlCJ5palCRXxm/mod1oHwg4oNTKRlUX3LUD+L8g7JuJ4h053Ch9KS/A0vanE5Q==", + "requires": { + "@aws-sdk/protocol-http": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-logger": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.110.0.tgz", + "integrity": "sha512-+pz+a+8dfTnzLj79nHrv3aONMp/N36/erMd+7JXeR84QEosVLrFBUwKA8x5x6O3s1iBbQzRKMYEIuja9xn1BPA==", + "requires": { + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-recursion-detection": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.110.0.tgz", + "integrity": "sha512-Wav782zd7bcd1e6txRob76CDOdVOaUQ8HXoywiIm/uFrEEUZvhs2mgnXjVUVCMBUehdNgnL99z420aS13JeL/Q==", + "requires": { + "@aws-sdk/protocol-http": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-retry": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.110.0.tgz", + "integrity": "sha512-lwLAQQveCiUqymQvVYjCee6QOXw3Zqbc9yq+pxYdXbs1Cv1XMA6PeJeUU5r5KEVuSceBLyyrnl6E0R1l1om1MQ==", + "requires": { + "@aws-sdk/protocol-http": "3.110.0", + "@aws-sdk/service-error-classification": "3.110.0", + "@aws-sdk/types": "3.110.0", + "@aws-sdk/util-middleware": "3.110.0", + "tslib": "^2.3.1", + "uuid": "^8.3.2" + } + }, + "@aws-sdk/middleware-sdk-sts": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.110.0.tgz", + "integrity": "sha512-EjY/YFdlr5jECde6qIrTIyGBbn/34CKcQGKvmvRd31+3qaClIJLAwNuHfcVzWvCUGbAslsfvdbOpLju33pSQRA==", + "requires": { + "@aws-sdk/middleware-signing": "3.110.0", + "@aws-sdk/property-provider": "3.110.0", + "@aws-sdk/protocol-http": "3.110.0", + "@aws-sdk/signature-v4": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-serde": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.110.0.tgz", + "integrity": "sha512-brVupxgEAmcZ9cZvdHEH8zncjvGKIiud8pOe4fiimp5NpHmjBLew4jUbnOKNZNAjaidcKUtz//cxtutD6yXEww==", + "requires": { + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-signing": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.110.0.tgz", + "integrity": "sha512-y6ZKrGYfgDlFMzWhZmoq5J1UctBgZOUvMmnU9sSeZ020IlEPiOxFMvR0Zu6TcYThp8uy3P0wyjQtGYeTl9Z/kA==", + "requires": { + "@aws-sdk/property-provider": "3.110.0", + "@aws-sdk/protocol-http": "3.110.0", + "@aws-sdk/signature-v4": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-stack": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.110.0.tgz", + "integrity": "sha512-iaLHw6ctOuGa9UxNueU01Xes+15dR+mqioRpUOUZ9Zx+vhXVpD7C8lnNqhRnYeFXs10/rNIzASgsIrAHTlnlIQ==", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-user-agent": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.110.0.tgz", + "integrity": "sha512-Y6FgiZr99DilYq6AjeaaWcNwVlSQpNGKrILzvV4Tmz03OaBIspe4KL+8EZ2YA/sAu5Lpw80vItdezqDOwGAlnQ==", + "requires": { + "@aws-sdk/protocol-http": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/node-config-provider": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.110.0.tgz", + "integrity": "sha512-46p4dCPGYctuybTQTwLpjenA1QFHeyJw/OyggGbtUJUy+833+ldnAwcPVML2aXJKUKv3APGI8vq1kaloyNku3Q==", + "requires": { + "@aws-sdk/property-provider": "3.110.0", + "@aws-sdk/shared-ini-file-loader": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/node-http-handler": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.110.0.tgz", + "integrity": "sha512-/rP+hY516DpP8fZhwFW5xM/ElH0w6lxw/15VvZCoY5EnOLAF5XIsJdzscWPSEW2FHCylBM4SNrKhGar14BDXhA==", + "requires": { + "@aws-sdk/abort-controller": "3.110.0", + "@aws-sdk/protocol-http": "3.110.0", + "@aws-sdk/querystring-builder": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/property-provider": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.110.0.tgz", + "integrity": "sha512-7NkpmYeOkK3mhWBNU+/zSDqwzeaSPH1qrq4L//WV7WS/weYyE/jusQeZoOxVsuZQnQEXHt5O2hKVeUwShl12xA==", + "requires": { + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/protocol-http": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.110.0.tgz", + "integrity": "sha512-qdi2gCbJiyPyLn+afebPNp/5nVCRh1X7t7IRIFl3FHVEC+o54u/ojay/MLZ4M/+X9Fa4Zxsb0Wpp3T0xAHVDBg==", + "requires": { + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/querystring-builder": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.110.0.tgz", + "integrity": "sha512-7V3CDXj519izmbBn9ZE68ymASwGriA+Aq+cb/yHSVtffnvXjPtvONNw7G/5iVblisGLSCUe2hSvpYtcaXozbHw==", + "requires": { + "@aws-sdk/types": "3.110.0", + "@aws-sdk/util-uri-escape": "3.55.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/querystring-parser": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.110.0.tgz", + "integrity": "sha512-//pJHH7hrhdDMZGBPKXKymmC/tJM7gFT0w/qbu/yd3Wm4W2fMB+8gkmj6EZctx7jrsWlfRQuvFejKqEfapur/g==", + "requires": { + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/service-error-classification": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.110.0.tgz", + "integrity": "sha512-ccgCE0pU/4RmXR6CP3fLAdhPAve7bK/yXBbGzpSHGAQOXqNxYzOsAvQ30Jg6X+qjLHsI/HR2pLIE65z4k6tynw==" + }, + "@aws-sdk/shared-ini-file-loader": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.110.0.tgz", + "integrity": "sha512-E1ERoqEoG206XNBYWCKLgHkzCbTxdpDEGbsLET2DnvjFsT0s9p2dPvVux3bYl7JVAhyGduE+qcqWk7MzhFCBNQ==", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/signature-v4": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.110.0.tgz", + "integrity": "sha512-utxxdllOnmQDhbpipnFAbuQ4c2pwefZ+2hi48jKvQRULQ2PO4nxLmdZm6B0FXaTijbKsyO7GrMik+EZ6mi3ARQ==", + "requires": { + "@aws-sdk/is-array-buffer": "3.55.0", + "@aws-sdk/types": "3.110.0", + "@aws-sdk/util-hex-encoding": "3.109.0", + "@aws-sdk/util-middleware": "3.110.0", + "@aws-sdk/util-uri-escape": "3.55.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/smithy-client": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.110.0.tgz", + "integrity": "sha512-gNLYrmdAe/1hVF2Nv2LF4OkL1A0a1o708pEMZHzql9xP164omRDaLrGDhz9tH7tsJEgLz+Bf4E8nTuISeDwvGg==", + "requires": { + "@aws-sdk/middleware-stack": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/types": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.110.0.tgz", + "integrity": "sha512-dLVoqODU3laaqNFPyN1QLtlQnwX4gNPMXptEBIt/iJpuZf66IYJe6WCzVZGt4Zfa1CnUmrlA428AzdcA/KCr2A==" + }, + "@aws-sdk/url-parser": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.110.0.tgz", + "integrity": "sha512-tILFB8/Q73yzgO0dErJNnELmmBszd0E6FucwAnG3hfDefjqCBe09Q/1yhu2aARXyRmZa4AKp0sWcdwIWHc8dnA==", + "requires": { + "@aws-sdk/querystring-parser": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-base64-browser": { + "version": "3.109.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64-browser/-/util-base64-browser-3.109.0.tgz", + "integrity": "sha512-lAZ6fyDGiRLaIsKT9qh7P9FGuNyZ4gAbr1YOSQk/5mHtaTuUvxlPptZuInNM/0MPQm6lpcot00D8IWTucn4PbA==", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-base64-node": { + "version": "3.55.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64-node/-/util-base64-node-3.55.0.tgz", + "integrity": "sha512-UQ/ZuNoAc8CFMpSiRYmevaTsuRKzLwulZTnM8LNlIt9Wx1tpNvqp80cfvVj7yySKROtEi20wq29h31dZf1eYNQ==", + "requires": { + "@aws-sdk/util-buffer-from": "3.55.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-body-length-browser": { + "version": "3.55.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.55.0.tgz", + "integrity": "sha512-Ei2OCzXQw5N6ZkTMZbamUzc1z+z1R1Ja5tMEagz5BxuX4vWdBObT+uGlSzL8yvTbjoPjnxWA2aXyEqaUP3JS8Q==", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-body-length-node": { + "version": "3.55.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-node/-/util-body-length-node-3.55.0.tgz", + "integrity": "sha512-lU1d4I+9wJwydduXs0SxSfd+mHKjxeyd39VwOv6i2KSwWkPbji9UQqpflKLKw+r45jL7+xU/zfeTUg5Tt/3Gew==", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-buffer-from": { + "version": "3.55.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-buffer-from/-/util-buffer-from-3.55.0.tgz", + "integrity": "sha512-uVzKG1UgvnV7XX2FPTylBujYMKBPBaq/qFBxfl0LVNfrty7YjpfieQxAe6yRLD+T0Kir/WDQwGvYC+tOYG3IGA==", + "requires": { + "@aws-sdk/is-array-buffer": "3.55.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-config-provider": { + "version": "3.109.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-config-provider/-/util-config-provider-3.109.0.tgz", + "integrity": "sha512-GrAZl/aBv0A28LkyNyq8SPJ5fmViCwz80fWLMeWx/6q5AbivuILogjlWwEZSvZ9zrlHOcFC0+AnCa5pQrjaslw==", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-defaults-mode-browser": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.110.0.tgz", + "integrity": "sha512-Y2dcOOD20S3bv/IjUqpdKIiDt6995SXNG5Pu/LeSdXNyLCOIm9rX4gHTxl9fC1KK5M/gR9fGJ362f67WwqEEqw==", + "requires": { + "@aws-sdk/property-provider": "3.110.0", + "@aws-sdk/types": "3.110.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-defaults-mode-node": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.110.0.tgz", + "integrity": "sha512-Cr3Z5nyrw1KowjbW76xp8hkT/zJtYjAVZ9PS4l84KxIicbVvDOBpxG3yNddkuQcavmlH6G4wH9uM5DcnpKDncg==", + "requires": { + "@aws-sdk/config-resolver": "3.110.0", + "@aws-sdk/credential-provider-imds": "3.110.0", + "@aws-sdk/node-config-provider": "3.110.0", + "@aws-sdk/property-provider": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-hex-encoding": { + "version": "3.109.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.109.0.tgz", + "integrity": "sha512-s8CgTNrn3cLkrdiohfxLuOYPCanzvHn/aH5RW6DaMoeQiG5Hl9QUiP/WtdQ9QQx3xvpQFpmvxIaSBwSgFNLQxA==", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-locate-window": { + "version": "3.55.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.55.0.tgz", + "integrity": "sha512-0sPmK2JaJE2BbTcnvybzob/VrFKCXKfN4CUKcvn0yGg/me7Bz+vtzQRB3Xp+YSx+7OtWxzv63wsvHoAnXvgxgg==", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-middleware": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.110.0.tgz", + "integrity": "sha512-PTVWrI5fA9d5hHJs6RzX2dIS2jRQ3uW073Fm0BePpQeDdZrEk+S5KNwRhUtpN6sdSV45vm6S9rrjZUG51qwGmA==", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-uri-escape": { + "version": "3.55.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-uri-escape/-/util-uri-escape-3.55.0.tgz", + "integrity": "sha512-mmdDLUpFCN2nkfwlLdOM54lTD528GiGSPN1qb8XtGLgZsJUmg3uJSFIN2lPeSbEwJB3NFjVas/rnQC48i7mV8w==", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-user-agent-browser": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.110.0.tgz", + "integrity": "sha512-rNdhmHDMV5dNJctqlBWimkZLJRB+x03DB+61pm+SKSFk6gPIVIvc1WNXqDFphkiswT4vA13ZUkGHzt+N4+noQQ==", + "requires": { + "@aws-sdk/types": "3.110.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-user-agent-node": { + "version": "3.110.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.110.0.tgz", + "integrity": "sha512-OQ915TPCCBwZWz5Np8zkNWn7U6KvrTZfFoCOy/VIemK3dUqmnBZ7HqGpuZx8SwJ2R9JE1x+j0niYSJ5fWJZZKA==", + "requires": { + "@aws-sdk/node-config-provider": "3.110.0", + "@aws-sdk/types": "3.110.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-utf8-browser": { + "version": "3.109.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.109.0.tgz", + "integrity": "sha512-FmcGSz0v7Bqpl1SE8G1Gc0CtDpug+rvqNCG/szn86JApD/f5x8oByjbEiAyTU2ZH2VevUntx6EW68ulHyH+x+w==", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-utf8-node": { + "version": "3.109.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-node/-/util-utf8-node-3.109.0.tgz", + "integrity": "sha512-Ti/ZBdvz2eSTElsucjzNmzpyg2MwfD1rXmxD0hZuIF8bPON/0+sZYnWd5CbDw9kgmhy28dmKue086tbZ1G0iLQ==", + "requires": { + "@aws-sdk/util-buffer-from": "3.55.0", + "tslib": "^2.3.1" + } + }, "@babel/code-frame": { "version": "7.16.7", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", @@ -11078,9 +12663,9 @@ } }, "@victorradael/protospack": { - "version": "2.5.0-6", - "resolved": "https://registry.npmjs.org/@victorradael/protospack/-/protospack-2.5.0-6.tgz", - "integrity": "sha512-3SYQ+VMWRaBi3HAX8A4n+roTX+pVvrhMFqtunChfjzuHlueWsH/ASttCI2DrqVK2yZP6RdO6unKawd8pmeXmJw==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@victorradael/protospack/-/protospack-2.5.0.tgz", + "integrity": "sha512-DORlm3uHAYVH9dlcmwyOxjA4rk1UZWFyYUpD02k0bFfrH+uzSWe8qiPtTgZym9P8U9D8bXYRWeLlroasBj2Rdw==", "requires": { "rxjs": "^7.5.5" } @@ -11604,6 +13189,11 @@ } } }, + "bowser": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz", + "integrity": "sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==" + }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -12231,6 +13821,11 @@ "tapable": "^2.2.0" } }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==" + }, "error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -12696,6 +14291,11 @@ "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==" }, + "fast-xml-parser": { + "version": "3.19.0", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-3.19.0.tgz", + "integrity": "sha512-4pXwmBplsCPv8FOY1WRakF970TjNGnGnfbOnLqjlYvMiF1SR3yOHyxMR/YCXpPTOspNF5gwudqktIP4VsWkvBg==" + }, "fastq": { "version": "1.13.0", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", diff --git a/package.json b/package.json index fc704ae..295fae1 100644 --- a/package.json +++ b/package.json @@ -24,6 +24,7 @@ "test:e2e": "jest --config ./test/jest-e2e.json" }, "dependencies": { + "@aws-sdk/client-secrets-manager": "^3.112.0", "@grpc/grpc-js": "^1.5.10", "@grpc/proto-loader": "^0.6.9", "@nestjs/common": "^8.4.3", @@ -35,7 +36,7 @@ "@nestjs/platform-express": "^8.4.3", "@nestjs/schedule": "^1.1.0", "@nestjs/swagger": "^5.2.1", - "@victorradael/protospack": "2.5.0-6", + "@victorradael/protospack": "2.5.0", "axios": "^0.25.0", "cron-parser": "^4.4.0", "dotenv": "^14.2.0", diff --git a/src/clients/inputs/client.service.ts b/src/clients/inputs/client.service.ts index 968bb4b..94bc176 100644 --- a/src/clients/inputs/client.service.ts +++ b/src/clients/inputs/client.service.ts @@ -14,7 +14,7 @@ import { TestConnectionGetColumnsRequest, TestConnectionRequest, } from '@victorradael/protospack'; -import axios from 'axios'; +import axios, { AxiosRequestConfig } from 'axios'; import { lastValueFrom } from 'rxjs'; import { InputModel } from 'src/modules/inputs/dtos/input.model'; import { @@ -22,17 +22,23 @@ import { objectSnakeToCamel, } from 'src/utils/CaseConverter'; import { mustache } from 'src/utils/mustache'; +import { OauthScrets } from 'src/utils/OauthSecrets'; +import { URLSearchParams } from 'url'; import { IIdRequest, UpdateInputRequest } from './interfaces'; export class InputsClientService implements OnModuleInit { private inputService: InputService; + oauthSecrets: OauthScrets; constructor( @Inject('INPUTS_PACKAGE') private readonly grpcClient: ClientGrpc, ) {} - onModuleInit() { + async onModuleInit() { this.inputService = this.grpcClient.getService('InputService'); + this.oauthSecrets = new OauthScrets(); + await this.oauthSecrets.init(); + console.log(this.oauthSecrets); } async newCreate(createInputDto: InputNewCreateRequest) { @@ -201,64 +207,66 @@ export class InputsClientService implements OnModuleInit { switch (plugin) { case 'hubspot': return { - client_id: process.env.HUBSPOT_CLIENT_ID || '', - client_secret: process.env.HUBSPOT_CLIENT_SECRET || '', + client_id: this.oauthSecrets.hubspot.client_id || '', + client_secret: this.oauthSecrets.hubspot.client_secret || '', }; } return {}; } async getInputTokens(input: InputModel) { - const { credentials, options } = input; - const credentialsTokens: any = {}; + const { credentials } = input; + let credentialsTokens = {}; switch (credentials.connection_type) { case 'oauth': - const { oauth } = options; - const { get_tokens_url_params, get_tokens_set_response } = oauth; - const secrets = await this.getAuthSecrets(input.plugin); - if (oauth.content_type === 'application/x-www-form-urlencoded') { - const requestParams = new URLSearchParams(); - const get_tokens_url_params_string = mustache(get_tokens_url_params, { - ...secrets, - ...credentials, - }); - let get_tokens_url_params_obj: Record = {}; - try { - get_tokens_url_params_obj = JSON.parse( - get_tokens_url_params_string, - ); - } catch (error) { - throw new HttpException( - 'Erro transformando get_tokens_url_params', - 400, - ); - } - const { redirect_uri } = get_tokens_url_params_obj; - for (const key in get_tokens_url_params_obj) { - const value = get_tokens_url_params_obj[key]; - requestParams.append(key, value); - } - const { data } = await axios - .post(options.oauth.get_tokens_url, requestParams) - .catch((err) => { - console.log(err.response.data); - throw new HttpException( - err.response.data.message, - err.response.status, - ); - }); - for (const key in get_tokens_set_response) { - const responseKey = get_tokens_set_response[key]; - credentialsTokens[key] = data[responseKey]; - } - credentialsTokens.redirect_uri = redirect_uri; - } + credentialsTokens = await this.getOauthTokens(input); break; } return { ...credentials, ...credentialsTokens }; } - // getOauthTokens(input){ + async getOauthTokens(input: InputModel) { + const tokens: Record = {}; + const { options, credentials } = input; + const { oauth } = options; + const { get_tokens_url_params, get_tokens_set_response } = oauth; + const secrets = await this.getAuthSecrets(input.plugin); + const get_tokens_url_params_string = mustache(get_tokens_url_params, { + ...secrets, + ...credentials, + }); + let get_tokens_url_params_obj: Record = {}; + try { + get_tokens_url_params_obj = JSON.parse(get_tokens_url_params_string); + } catch (error) { + throw new HttpException('Erro transformando get_tokens_url_params', 400); + } + let params = {}; + switch (oauth.content_type) { + case 'application/x-www-form-urlencoded': + params = new URLSearchParams(get_tokens_url_params_obj); + params = params.toString(); + break; + default: + break; + } + const axiosRequestConfig: AxiosRequestConfig = { + url: oauth.get_tokens_url, + method: oauth.get_tokens_method || 'POST', + data: params, + headers: { 'content-type': oauth.content_type || 'application/json' }, + }; - // } + const { data } = await axios(axiosRequestConfig).catch((err) => { + console.log(err.response.data); + throw new HttpException(err.response.data.message, err.response.status); + }); + for (const key in get_tokens_set_response) { + const responseKey = get_tokens_set_response[key]; + tokens[key] = data[responseKey]; + } + const { redirect_uri } = get_tokens_url_params_obj; + tokens.redirect_uri = redirect_uri; + return tokens; + } async getAvailableEntities(data) { console.log('InputClientService', 'GetAvailableEntities'); diff --git a/src/clients/pipelines/client.service.ts b/src/clients/pipelines/client.service.ts index 29a4969..028fe1a 100644 --- a/src/clients/pipelines/client.service.ts +++ b/src/clients/pipelines/client.service.ts @@ -1,4 +1,4 @@ -import { Inject, OnModuleInit } from '@nestjs/common'; +import { HttpException, Inject, OnModuleInit } from '@nestjs/common'; import { ClientGrpc, Payload } from '@nestjs/microservices'; import { PipelineServicesNames, @@ -49,7 +49,10 @@ export class PipelinesClientService implements OnModuleInit { }) .then((res) => res) .catch((err) => { - throw new Error(err); + if (err.details == 'Invalid Request') { + throw new HttpException(err.details, 400); + } + throw new HttpException(err.details, 500); }); return createPipelineResponse; diff --git a/src/modules/inputs/dtos/input.model.ts b/src/modules/inputs/dtos/input.model.ts index 73f0d19..1a70e71 100644 --- a/src/modules/inputs/dtos/input.model.ts +++ b/src/modules/inputs/dtos/input.model.ts @@ -1,4 +1,5 @@ import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger'; +import { Method } from 'axios'; export class InputModel { category: string; @@ -14,6 +15,7 @@ export class InputModel { options?: { oauth?: { get_tokens_url: string; + get_tokens_method?: Method; get_tokens_url_params: string; get_tokens_set_response: Record; content_type: string; diff --git a/src/utils/OauthSecrets.ts b/src/utils/OauthSecrets.ts new file mode 100644 index 0000000..a79cc5a --- /dev/null +++ b/src/utils/OauthSecrets.ts @@ -0,0 +1,29 @@ +import { + SecretsManagerClient, + GetSecretValueCommand, +} from '@aws-sdk/client-secrets-manager'; + +class OauthSecretsObject { + client_id = ''; + client_secret = ''; + redirect_uri = ''; +} + +export class OauthScrets { + hubspot = new OauthSecretsObject(); + google = new OauthSecretsObject(); + mailchimp = new OauthSecretsObject(); + async init() { + const path = process.env.SM_OAUTH_PATH; + const secretsManagerClient = new SecretsManagerClient({}); + for (const key in this) { + const getSecretComand = new GetSecretValueCommand({ + SecretId: `${path}/${key}`, + }); + const res = await secretsManagerClient + .send(getSecretComand) + .catch(() => null); + if (res) this[key] = JSON.parse(res.SecretString); + } + } +}