diff --git a/package-lock.json b/package-lock.json
index 04afd6b..dfb7cc0 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,17 +1,19 @@
{
"name": "bbctrl",
- "version": "1.1.1b2",
+ "version": "1.1.1b3",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "bbctrl",
- "version": "1.1.1b2",
+ "version": "1.1.1b3",
"hasInstallScript": true,
"license": "GPL-3.0+",
"devDependencies": {
+ "@aws-sdk/client-ssm": "^3.168.0",
"@typescript-eslint/eslint-plugin": "^5.36.1",
"@typescript-eslint/parser": "^5.36.1",
+ "aws-cli": "^0.0.2",
"browserify": "^17.0.0",
"eslint": "^8.23.0",
"eslint-config-standard-with-typescript": "^22.0.0",
@@ -25,9 +27,1239 @@
"jstransformer-scss": "^2.0.0",
"jstransformer-stylus": "^1.5.0",
"lodash.merge": "4.6.2",
+ "node-fetch": "^2.6.7",
"pug-cli": "^1.0.0-alpha6"
}
},
+ "node_modules/@aws-crypto/ie11-detection": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-2.0.2.tgz",
+ "integrity": "sha512-5XDMQY98gMAf/WRTic5G++jfmS/VLM0rwpiOpaainKi4L0nqWMSB1SzsrEG5rjFZGYN6ZAefO+/Yta2dFM0kMw==",
+ "dev": true,
+ "dependencies": {
+ "tslib": "^1.11.1"
+ }
+ },
+ "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==",
+ "dev": true,
+ "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-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==",
+ "dev": true,
+ "dependencies": {
+ "@aws-crypto/util": "^2.0.0",
+ "@aws-sdk/types": "^3.1.0",
+ "tslib": "^1.11.1"
+ }
+ },
+ "node_modules/@aws-crypto/supports-web-crypto": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-2.0.2.tgz",
+ "integrity": "sha512-6mbSsLHwZ99CTOOswvCRP3C+VCWnzBf+1SnbWxzzJ9lR0mA0JnY2JEAhp8rqmTE0GPFy88rrM27ffgp62oErMQ==",
+ "dev": true,
+ "dependencies": {
+ "tslib": "^1.11.1"
+ }
+ },
+ "node_modules/@aws-crypto/util": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-2.0.2.tgz",
+ "integrity": "sha512-Lgu5v/0e/BcrZ5m/IWqzPUf3UYFTy/PpeED+uc9SWUR1iZQL8XXbGQg10UfllwwBryO3hFF5dizK+78aoXC1eA==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/types": "^3.110.0",
+ "@aws-sdk/util-utf8-browser": "^3.0.0",
+ "tslib": "^1.11.1"
+ }
+ },
+ "node_modules/@aws-sdk/abort-controller": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.168.0.tgz",
+ "integrity": "sha512-mvFXmdoIVV3cUmPuwzzHLB1YNjxzm7sHk99zE0zvT653kc7slThLMfO5Kc1WtblXAKbE6eqPDMcA0zg6eRM1cw==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/abort-controller/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/client-ssm": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-ssm/-/client-ssm-3.168.0.tgz",
+ "integrity": "sha512-MtRR4OrKpgUySZsiT0ms/gk4ToL4p3r7+OgICYS2hvMYbQdL0PA/ItAYNnk6IY0L6DxFBFHtkEuaskPneJudgg==",
+ "dev": true,
+ "dependencies": {
+ "@aws-crypto/sha256-browser": "2.0.0",
+ "@aws-crypto/sha256-js": "2.0.0",
+ "@aws-sdk/client-sts": "3.168.0",
+ "@aws-sdk/config-resolver": "3.168.0",
+ "@aws-sdk/credential-provider-node": "3.168.0",
+ "@aws-sdk/fetch-http-handler": "3.168.0",
+ "@aws-sdk/hash-node": "3.168.0",
+ "@aws-sdk/invalid-dependency": "3.168.0",
+ "@aws-sdk/middleware-content-length": "3.168.0",
+ "@aws-sdk/middleware-host-header": "3.168.0",
+ "@aws-sdk/middleware-logger": "3.168.0",
+ "@aws-sdk/middleware-recursion-detection": "3.168.0",
+ "@aws-sdk/middleware-retry": "3.168.0",
+ "@aws-sdk/middleware-serde": "3.168.0",
+ "@aws-sdk/middleware-signing": "3.168.0",
+ "@aws-sdk/middleware-stack": "3.168.0",
+ "@aws-sdk/middleware-user-agent": "3.168.0",
+ "@aws-sdk/node-config-provider": "3.168.0",
+ "@aws-sdk/node-http-handler": "3.168.0",
+ "@aws-sdk/protocol-http": "3.168.0",
+ "@aws-sdk/smithy-client": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "@aws-sdk/url-parser": "3.168.0",
+ "@aws-sdk/util-base64-browser": "3.168.0",
+ "@aws-sdk/util-base64-node": "3.168.0",
+ "@aws-sdk/util-body-length-browser": "3.168.0",
+ "@aws-sdk/util-body-length-node": "3.168.0",
+ "@aws-sdk/util-defaults-mode-browser": "3.168.0",
+ "@aws-sdk/util-defaults-mode-node": "3.168.0",
+ "@aws-sdk/util-user-agent-browser": "3.168.0",
+ "@aws-sdk/util-user-agent-node": "3.168.0",
+ "@aws-sdk/util-utf8-browser": "3.168.0",
+ "@aws-sdk/util-utf8-node": "3.168.0",
+ "@aws-sdk/util-waiter": "3.168.0",
+ "tslib": "^2.3.1",
+ "uuid": "^8.3.2"
+ },
+ "engines": {
+ "node": ">=12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/client-ssm/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/client-sso": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.168.0.tgz",
+ "integrity": "sha512-QOUmaHKu2K7XlAGlC9zlbldYwm0kSoJ8bJqZQqGI2xhUsSdjJDTaJUm1oOOhg2f3afsluZbCiQvttJpy+y+qnA==",
+ "dev": true,
+ "dependencies": {
+ "@aws-crypto/sha256-browser": "2.0.0",
+ "@aws-crypto/sha256-js": "2.0.0",
+ "@aws-sdk/config-resolver": "3.168.0",
+ "@aws-sdk/fetch-http-handler": "3.168.0",
+ "@aws-sdk/hash-node": "3.168.0",
+ "@aws-sdk/invalid-dependency": "3.168.0",
+ "@aws-sdk/middleware-content-length": "3.168.0",
+ "@aws-sdk/middleware-host-header": "3.168.0",
+ "@aws-sdk/middleware-logger": "3.168.0",
+ "@aws-sdk/middleware-recursion-detection": "3.168.0",
+ "@aws-sdk/middleware-retry": "3.168.0",
+ "@aws-sdk/middleware-serde": "3.168.0",
+ "@aws-sdk/middleware-stack": "3.168.0",
+ "@aws-sdk/middleware-user-agent": "3.168.0",
+ "@aws-sdk/node-config-provider": "3.168.0",
+ "@aws-sdk/node-http-handler": "3.168.0",
+ "@aws-sdk/protocol-http": "3.168.0",
+ "@aws-sdk/smithy-client": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "@aws-sdk/url-parser": "3.168.0",
+ "@aws-sdk/util-base64-browser": "3.168.0",
+ "@aws-sdk/util-base64-node": "3.168.0",
+ "@aws-sdk/util-body-length-browser": "3.168.0",
+ "@aws-sdk/util-body-length-node": "3.168.0",
+ "@aws-sdk/util-defaults-mode-browser": "3.168.0",
+ "@aws-sdk/util-defaults-mode-node": "3.168.0",
+ "@aws-sdk/util-user-agent-browser": "3.168.0",
+ "@aws-sdk/util-user-agent-node": "3.168.0",
+ "@aws-sdk/util-utf8-browser": "3.168.0",
+ "@aws-sdk/util-utf8-node": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">=12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/client-sso/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/client-sts": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.168.0.tgz",
+ "integrity": "sha512-9R6I+d6W3Qx/thQYEwVrpAYRywDLQtVWY6LhOt2NguW5GTUi/NZ7QDc6s9QyDdlZGO62DzO24UKnlpc5y4XWxQ==",
+ "dev": true,
+ "dependencies": {
+ "@aws-crypto/sha256-browser": "2.0.0",
+ "@aws-crypto/sha256-js": "2.0.0",
+ "@aws-sdk/config-resolver": "3.168.0",
+ "@aws-sdk/credential-provider-node": "3.168.0",
+ "@aws-sdk/fetch-http-handler": "3.168.0",
+ "@aws-sdk/hash-node": "3.168.0",
+ "@aws-sdk/invalid-dependency": "3.168.0",
+ "@aws-sdk/middleware-content-length": "3.168.0",
+ "@aws-sdk/middleware-host-header": "3.168.0",
+ "@aws-sdk/middleware-logger": "3.168.0",
+ "@aws-sdk/middleware-recursion-detection": "3.168.0",
+ "@aws-sdk/middleware-retry": "3.168.0",
+ "@aws-sdk/middleware-sdk-sts": "3.168.0",
+ "@aws-sdk/middleware-serde": "3.168.0",
+ "@aws-sdk/middleware-signing": "3.168.0",
+ "@aws-sdk/middleware-stack": "3.168.0",
+ "@aws-sdk/middleware-user-agent": "3.168.0",
+ "@aws-sdk/node-config-provider": "3.168.0",
+ "@aws-sdk/node-http-handler": "3.168.0",
+ "@aws-sdk/protocol-http": "3.168.0",
+ "@aws-sdk/smithy-client": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "@aws-sdk/url-parser": "3.168.0",
+ "@aws-sdk/util-base64-browser": "3.168.0",
+ "@aws-sdk/util-base64-node": "3.168.0",
+ "@aws-sdk/util-body-length-browser": "3.168.0",
+ "@aws-sdk/util-body-length-node": "3.168.0",
+ "@aws-sdk/util-defaults-mode-browser": "3.168.0",
+ "@aws-sdk/util-defaults-mode-node": "3.168.0",
+ "@aws-sdk/util-user-agent-browser": "3.168.0",
+ "@aws-sdk/util-user-agent-node": "3.168.0",
+ "@aws-sdk/util-utf8-browser": "3.168.0",
+ "@aws-sdk/util-utf8-node": "3.168.0",
+ "entities": "2.2.0",
+ "fast-xml-parser": "3.19.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">=12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/client-sts/node_modules/entities": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz",
+ "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==",
+ "dev": true,
+ "funding": {
+ "url": "https://github.com/fb55/entities?sponsor=1"
+ }
+ },
+ "node_modules/@aws-sdk/client-sts/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/config-resolver": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.168.0.tgz",
+ "integrity": "sha512-eSGHsa5kDIpBtBr1HhM9n0Deb+uSyr5pvk39WPFf5CTGvIqe52Fg9s1/Jz54rDwlgsfPzufX7TrCXgUhMwb8+w==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/signature-v4": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "@aws-sdk/util-config-provider": "3.168.0",
+ "@aws-sdk/util-middleware": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/config-resolver/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/credential-provider-env": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.168.0.tgz",
+ "integrity": "sha512-dzblFOkmH0FzYuckCJYVH/d+HEGO814B0gVt0HnaIvsS5skDSDBXD+/S9AX6BAKTNBWP8BVcn7+u+oS5l7GBkQ==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/property-provider": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/credential-provider-imds": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.168.0.tgz",
+ "integrity": "sha512-Ua2zTmo0eep/fGh3SL9W0ERlGRkEAiP2IEC63QbRZKK+5Xg6RIgqij7hQHvKLY78zBDd7exnU9W1AMnt9lOd1A==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/node-config-provider": "3.168.0",
+ "@aws-sdk/property-provider": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "@aws-sdk/url-parser": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/credential-provider-ini": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.168.0.tgz",
+ "integrity": "sha512-CYs9ctzxMHpj+alfrw2qRbej9VD8nAdhoVWm88hdtEta9GsaRvX2foNQbnkX6uoBca1AUSHdQ4d9v8dcOhQTNQ==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/credential-provider-env": "3.168.0",
+ "@aws-sdk/credential-provider-imds": "3.168.0",
+ "@aws-sdk/credential-provider-sso": "3.168.0",
+ "@aws-sdk/credential-provider-web-identity": "3.168.0",
+ "@aws-sdk/property-provider": "3.168.0",
+ "@aws-sdk/shared-ini-file-loader": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/credential-provider-node": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.168.0.tgz",
+ "integrity": "sha512-gGsVp68cVBntrMj6jSzDDNJIw3mp2TA18eQf5Rayl7LWZM60kqvEmhWbVRXFrLNKFcUiiTfSACGtkS/Pz60Sog==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/credential-provider-env": "3.168.0",
+ "@aws-sdk/credential-provider-imds": "3.168.0",
+ "@aws-sdk/credential-provider-ini": "3.168.0",
+ "@aws-sdk/credential-provider-process": "3.168.0",
+ "@aws-sdk/credential-provider-sso": "3.168.0",
+ "@aws-sdk/credential-provider-web-identity": "3.168.0",
+ "@aws-sdk/property-provider": "3.168.0",
+ "@aws-sdk/shared-ini-file-loader": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">=12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/credential-provider-node/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/credential-provider-process": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.168.0.tgz",
+ "integrity": "sha512-Yni2S+yHLkUvDI30ZNkEOao2hSBj1eeQvWBUEJsgCFvHdlFDwOYwIueDmrBggqUISUgCLb6y/eylqeMvjN3Eyw==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/property-provider": "3.168.0",
+ "@aws-sdk/shared-ini-file-loader": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/credential-provider-process/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/credential-provider-sso": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.168.0.tgz",
+ "integrity": "sha512-X4hv5aLcySHGB2jPl1hTQ+AhBqWsyEYyjtBvi5N1fJLbNtYQR4XwbAeU3uf/SPph+TqTzGjigb9T/sjyO2/sBg==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/client-sso": "3.168.0",
+ "@aws-sdk/property-provider": "3.168.0",
+ "@aws-sdk/shared-ini-file-loader": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/credential-provider-sso/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/credential-provider-web-identity": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.168.0.tgz",
+ "integrity": "sha512-hz7wj8htY6s3/TubzH/YOd6f4bxO26GYupCTvKZlWdErLUmZ8h3hG/9xO/5kWOakD40T3MXT7HIo2rvEWg1GWw==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/property-provider": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/credential-provider-web-identity/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/fetch-http-handler": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.168.0.tgz",
+ "integrity": "sha512-D4vN6zbF/RA7czw34gFhjsfOD5fkkLxLvmW8zbrJSsrex79Ju96NFuNBs7TtaV2btfXC7SkhhI/z+E81BxqRpg==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/protocol-http": "3.168.0",
+ "@aws-sdk/querystring-builder": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "@aws-sdk/util-base64-browser": "3.168.0",
+ "tslib": "^2.3.1"
+ }
+ },
+ "node_modules/@aws-sdk/fetch-http-handler/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/hash-node": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.168.0.tgz",
+ "integrity": "sha512-W2kMIuMric2Q2D4787DGubHz3Pw5fWDndM2gMjs/MB1psC/N74/ggRUIlUmsjSBFUHY1BYMfjsxe8DS9dSj77A==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/types": "3.168.0",
+ "@aws-sdk/util-buffer-from": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/hash-node/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/invalid-dependency": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.168.0.tgz",
+ "integrity": "sha512-KuDn4e1XsxBQi+dAoRfSOExICq+Gt5zGA7/dI2jnfqejBNHVmJ8ksOnV/HmilFscPxdJx5POECQosf3p/N4t9w==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ }
+ },
+ "node_modules/@aws-sdk/invalid-dependency/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/is-array-buffer": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/is-array-buffer/-/is-array-buffer-3.168.0.tgz",
+ "integrity": "sha512-Zvt8a/g1UfvwmhxOnt/hDrFprC3+DQivFQGnzwBpv+ZyM1BfdgAruAkUZF+GtXI22DXZUumBrposCH1CcgjeIA==",
+ "dev": true,
+ "dependencies": {
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/is-array-buffer/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/middleware-content-length": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.168.0.tgz",
+ "integrity": "sha512-PHvoNIuXkLkBZ/0OSmFlCmA1o+RdqkNWwNm7/rIMe9cV+ZgtP9kQs+e4itibQb82veHTwG37+B7OAGa0DGqIvg==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/protocol-http": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-content-length/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/middleware-host-header": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.168.0.tgz",
+ "integrity": "sha512-420rWpd/fsoPzRnMkyUFW1in6jpa1kbVCuewY5cqoH9uQcthrNJ0l9IgePDEMdymIMxGBfwiQERvUYogUadxrw==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/protocol-http": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-host-header/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/middleware-logger": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.168.0.tgz",
+ "integrity": "sha512-5xeBlHQz/iWVor04eZLTfygj5T9zvLsngrUVb8FkHDzzNqT9+QwoA0iZoT8Vq5khfZK7UE7SWm2Hi/13t9T9+w==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-logger/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/middleware-recursion-detection": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.168.0.tgz",
+ "integrity": "sha512-4sr3E37PUDQSpE205d+kGcaJmZj7kE/I50qyf39U0jphk121AZXdKCWDs/T7g/d4LVJLoe6N+zzZIg4ZWVUUZw==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/protocol-http": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-recursion-detection/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/middleware-retry": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.168.0.tgz",
+ "integrity": "sha512-LriHTAccnfEpeV+IccbWN59JVz+De97pvmJMu5NyUUq/+c2VIJAM+n0MDbHJP6EXuKFGOAXJZf8HVC2sbnXwCw==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/protocol-http": "3.168.0",
+ "@aws-sdk/service-error-classification": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "@aws-sdk/util-middleware": "3.168.0",
+ "tslib": "^2.3.1",
+ "uuid": "^8.3.2"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-retry/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/middleware-sdk-sts": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.168.0.tgz",
+ "integrity": "sha512-uE5VYczEkoCG/G63Whp4dGKFouDjx0Jj4vZj7Z4oEQSv/eynBm1+AQAtWA4zJQfYO60lFKOSiBykv/c1hk09Mg==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/middleware-signing": "3.168.0",
+ "@aws-sdk/property-provider": "3.168.0",
+ "@aws-sdk/protocol-http": "3.168.0",
+ "@aws-sdk/signature-v4": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-sdk-sts/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/middleware-serde": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.168.0.tgz",
+ "integrity": "sha512-6z3iySqCjhV5NVEF3o++TgvK1XOBauYdZFCZk4foMxyh/wZ4MB+uIQ/D2AeHExzFGyrPjx0S0gZb4z8st6q9mA==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-serde/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/middleware-signing": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.168.0.tgz",
+ "integrity": "sha512-yQme9D4bNRdrPQH50a3oJfbf+54Dm1MkW4yjwIwpRoGkxAs2T7sjc3/u/Wo/Jy3g5yzM1Ven3KU+nlKOMNOpAw==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/property-provider": "3.168.0",
+ "@aws-sdk/protocol-http": "3.168.0",
+ "@aws-sdk/signature-v4": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-signing/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/middleware-stack": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.168.0.tgz",
+ "integrity": "sha512-tUMa6gQFqyRC9xRy1cfQAX/K84LkFC+NAyENoDn4cbLvTJpH6tLPINFktaXLkKl2bdzGGWLHefxriBjTqZB+rg==",
+ "dev": true,
+ "dependencies": {
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-stack/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/middleware-user-agent": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.168.0.tgz",
+ "integrity": "sha512-nwcWN1tz39s4IWyx1lxak/W9LdLnusQEdb+0pnJFWTCNhba3BvlAnt1sZFDwbFRmRUbU3x+hhpNB+Xub2hFttg==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/protocol-http": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-user-agent/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/node-config-provider": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.168.0.tgz",
+ "integrity": "sha512-8su32ifopNLb835NudTdxyv4fQ+7Eie17MjbqnvOeWmjFAgzJyIVJjyvMI+N8Gu3dDCTxSbBh3hl++VOzL+oXg==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/property-provider": "3.168.0",
+ "@aws-sdk/shared-ini-file-loader": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/node-config-provider/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/node-http-handler": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.168.0.tgz",
+ "integrity": "sha512-yO68M12LUJa/bhuljSRCtLbmWvnS0eopoE3P2+xzV2JzkIg5r+bJmh/VtpDz8D2PxZhRALwBchjq8h+Po6rhcQ==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/abort-controller": "3.168.0",
+ "@aws-sdk/protocol-http": "3.168.0",
+ "@aws-sdk/querystring-builder": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/node-http-handler/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/property-provider": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.168.0.tgz",
+ "integrity": "sha512-syvXTexP2t9HQY3dsfpPgUP5GjFcpBVzPfxd8GjLWFRcqBCQ5frdetkAfvnhPpytL/stauXuT1xv6jcN1vBAZQ==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/property-provider/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/protocol-http": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.168.0.tgz",
+ "integrity": "sha512-5g7T5WqeU1W/TShfOYiczZFOK5svsQajjSGs1drB2DBQlbepF5YSmVbFGrfX6003h4TV9hpA6CqOjbgd59NgGA==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/protocol-http/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/querystring-builder": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.168.0.tgz",
+ "integrity": "sha512-cCjdmRKf+zVc/Whc9fP3DqB6QTBz0MsJ2uGqYCWG8kqBr4W8nDZVNRVj4Q1zZjQzipU7+77xJAE8NSIl+RsubA==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/types": "3.168.0",
+ "@aws-sdk/util-uri-escape": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/querystring-builder/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/querystring-parser": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.168.0.tgz",
+ "integrity": "sha512-O82vxPyoLRuqcCFxAQYuvDwOdMOaQ/hqlaC8Tw6qNE3wpJ1296M51Zgb7lPfIlSxzAc96H//Q+d1t5MViK2SFg==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/querystring-parser/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/service-error-classification": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.168.0.tgz",
+ "integrity": "sha512-cW1U3YMMRLukx5/Fl7NpCsaFgcDkOOZVUaW2qLghJOakt1dc6OwgtPlS7toC9A7zjMIovqYwcksHO5mCyqrPlA==",
+ "dev": true,
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/shared-ini-file-loader": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.168.0.tgz",
+ "integrity": "sha512-K97HWEySV6HJC4CLyimVuqit4FILW4BtTU62jCaEwoPvg1XPAolCzzWfLClJ0GWfyf32+o30wJj8SgHuIuN2Qw==",
+ "dev": true,
+ "dependencies": {
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/signature-v4": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.168.0.tgz",
+ "integrity": "sha512-jb98UrZ4d07Wr1mUVDY1HRlbEOVoPFZ38e4k20AUEXybxhsvlQhfAfaDITFg3UwMO978m4VAsjpzw8h8WGsNQw==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/is-array-buffer": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "@aws-sdk/util-hex-encoding": "3.168.0",
+ "@aws-sdk/util-middleware": "3.168.0",
+ "@aws-sdk/util-uri-escape": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/signature-v4/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/smithy-client": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.168.0.tgz",
+ "integrity": "sha512-B2wuTg5ymTYA7eVkt73bdRlWNWvdWNRY3QQizTWn0Ch3nOZXyVZSdH4mGmuWcpiQXEX/YYGmTLY7nCKWrk1E6Q==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/middleware-stack": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/smithy-client/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/types": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.168.0.tgz",
+ "integrity": "sha512-J9VmQAakmqrdYKt3N0T/zQR6ZkfvQ7Y3WufjEWRTdslYcQ9f7UyI93Q21baCHvgcp3E5c4w62x18o6mEA/cHPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/url-parser": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.168.0.tgz",
+ "integrity": "sha512-spFHA6NpsmAF3NCYyljjvl7uavHRvFDCNN32ce9RuRUXXuK8emAtwzXW95OUqtgCcyyKIA5p5p+gujrT7Npmeg==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/querystring-parser": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ }
+ },
+ "node_modules/@aws-sdk/url-parser/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/util-base64-browser": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64-browser/-/util-base64-browser-3.168.0.tgz",
+ "integrity": "sha512-awyUvPXWbV5SrpUY8vTA58RTdTnDFJJmVlCXGB8JCtWYVuAQ5FfKA/K0ZD6p+AP6AsCgHSvXCuZm8vFyZldJ2Q==",
+ "dev": true,
+ "dependencies": {
+ "tslib": "^2.3.1"
+ }
+ },
+ "node_modules/@aws-sdk/util-base64-browser/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/util-base64-node": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64-node/-/util-base64-node-3.168.0.tgz",
+ "integrity": "sha512-NqU7t3Fes0QngHwAZoIKeXyUZOoszEwGuerj1wZk6+Jd6X4L5NdBcBg8AA2VMyRdSFhCP+irgVRZrYSn0Ii66g==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/util-buffer-from": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/util-base64-node/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/util-body-length-browser": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.168.0.tgz",
+ "integrity": "sha512-s51E8ctLKCoLqcj4a1YsIVX1sMLwf1f9lNfhnE8H7U85BeqTAtjAifdejDdFtxS4ECF95cupzN6PgqFmgdrzpQ==",
+ "dev": true,
+ "dependencies": {
+ "tslib": "^2.3.1"
+ }
+ },
+ "node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/util-body-length-node": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-node/-/util-body-length-node-3.168.0.tgz",
+ "integrity": "sha512-vKG9iylTshwzHsVsRpx3oLDMtBvG47b3TIMGQFSuCDPEwD91+s1ORe3r+RxJIWDYJtmw5Y5ZPveYib4p4rWSUQ==",
+ "dev": true,
+ "dependencies": {
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/util-buffer-from": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-buffer-from/-/util-buffer-from-3.168.0.tgz",
+ "integrity": "sha512-NDQIBdJfK95N/zewOcEJC9NqNVRXzWHrgKJTdCTW4UuRBADg3YTeDmqmNA2TUaWydQZa0ubpX3JyaKz4l3DDZw==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/is-array-buffer": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/util-config-provider": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-config-provider/-/util-config-provider-3.168.0.tgz",
+ "integrity": "sha512-4AyBOlV2w8fqQ1Os9khnjrsAogBN7ou0bRS1Q34Y9zwtFL+T+xhHO0pp9+Yfw+E6s2Uy3DZWbq8PWyBZze6nuw==",
+ "dev": true,
+ "dependencies": {
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/util-config-provider/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/util-defaults-mode-browser": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.168.0.tgz",
+ "integrity": "sha512-5lB9eDMkaittKbdugurzJx32quGrQar+ki3oebjJQZl4/gsDVRqOT9qwz95RVeXdEIUdA4U3T/1OgSNUT9aMyA==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/property-provider": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "bowser": "^2.11.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 10.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/util-defaults-mode-browser/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/util-defaults-mode-node": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.168.0.tgz",
+ "integrity": "sha512-462U5waEl495rP0WaKHXS6rrKHusMMBYvHzMzD3/gpSEwMZti0ZWLzhHNRcWp7d3uRVVdAsjF4UM6QwhJrScmA==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/config-resolver": "3.168.0",
+ "@aws-sdk/credential-provider-imds": "3.168.0",
+ "@aws-sdk/node-config-provider": "3.168.0",
+ "@aws-sdk/property-provider": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 10.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/util-defaults-mode-node/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/util-hex-encoding": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.168.0.tgz",
+ "integrity": "sha512-KmJkd0eKXGd2z5h2N0yV6WUBqulwumq2eppv6pYrVfyQc0bBwSOYRG0NcXDvQB7rd+spbQjgbeqrHnsk34fQbQ==",
+ "dev": true,
+ "dependencies": {
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/util-locate-window": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.168.0.tgz",
+ "integrity": "sha512-bCKN6rbTTA41cqm7TYuiSkXR8peSXR/t8GioeEOExPESNgR7kuwVU4pQ2LZYjnD1HqLtz3FKKKddvBJhmqpG8Q==",
+ "dev": true,
+ "dependencies": {
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/util-locate-window/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/util-middleware": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.168.0.tgz",
+ "integrity": "sha512-PInwsmxfXj4HhZytF5kZP6BYJ3mVW2QTzxSnKobkIfRnZHwBEGL74voaArfbbAfqvxzptDY6x4vo4N5Mo7M4hA==",
+ "dev": true,
+ "dependencies": {
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/util-middleware/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/util-uri-escape": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-uri-escape/-/util-uri-escape-3.168.0.tgz",
+ "integrity": "sha512-EnNdhxRif4B4PM+CQcq+2s+dRiYVBPMZHZepq6W/eSOvZfW/T8BvDjUzRW9NjGV/Ld3XKk6dMuoWmBKt7J6I7g==",
+ "dev": true,
+ "dependencies": {
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/util-user-agent-browser": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.168.0.tgz",
+ "integrity": "sha512-wh3E0FXLzCbpgsi/+NQn2dK/nD//lOKAndzyPsx1uXvKAiqQCkIqAPz5fiGuSkYBZHkjvRxTNSXjL+1tJn+lVQ==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/types": "3.168.0",
+ "bowser": "^2.11.0",
+ "tslib": "^2.3.1"
+ }
+ },
+ "node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/util-user-agent-node": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.168.0.tgz",
+ "integrity": "sha512-grL671IO1kkAD3BjofoN0SJE0ldrHjEbevIa4i9eif/Y3LIoCgmUP6tUtRzR7K9CDdjeGuvo0vJ9HfwZWH/B/g==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/node-config-provider": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "peerDependencies": {
+ "aws-crt": ">=1.0.0"
+ },
+ "peerDependenciesMeta": {
+ "aws-crt": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/util-utf8-browser": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.168.0.tgz",
+ "integrity": "sha512-ZXEnVC/AcBdf2wQrITq4bkLnwiPKoBnhJwfPjZdpMHsDssKLquaHQf+QLOB/2s2U+jxl6c2Q7+rL4dv7x545Bg==",
+ "dev": true,
+ "dependencies": {
+ "tslib": "^2.3.1"
+ }
+ },
+ "node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/util-utf8-node": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-node/-/util-utf8-node-3.168.0.tgz",
+ "integrity": "sha512-m9EfLgh0QQrgJfuYowPQW2+a3f848F92cVTnCyeUtjiT59lkW9QPJhVVajRcfmNUUT4S/ikxvmkhzDzzMYH+gA==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/util-buffer-from": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
+ "node_modules/@aws-sdk/util-waiter": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-waiter/-/util-waiter-3.168.0.tgz",
+ "integrity": "sha512-RdUapfJHeqjVeFtafKY+PLvKxEKi2IS+rt475YRoDGqzTegJLV1BO89j4wq/VWyGVljvpRI2/6RqG2Q0K/ozPA==",
+ "dev": true,
+ "dependencies": {
+ "@aws-sdk/abort-controller": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/util-waiter/node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ },
"node_modules/@eslint/eslintrc": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.1.tgz",
@@ -827,6 +2059,33 @@
"url": "https://github.com/sponsors/ljharb"
}
},
+ "node_modules/aws-cli": {
+ "version": "0.0.2",
+ "resolved": "https://registry.npmjs.org/aws-cli/-/aws-cli-0.0.2.tgz",
+ "integrity": "sha512-340A6bn3I5p/yc8MGQiWRofW3oUpmZ/k6LIZticzDOKWT4/F+TP54hki9SWmSS6XnvNIVAw4k9oPocq6ya4L1g==",
+ "deprecated": "Recommend using the official aws cli tools for python",
+ "dev": true,
+ "dependencies": {
+ "aws-sdk": "~2.0.0-rc13",
+ "operetta": "0.0.5"
+ },
+ "bin": {
+ "aws-cli": "bin/aws.js"
+ }
+ },
+ "node_modules/aws-sdk": {
+ "version": "2.0.31",
+ "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.0.31.tgz",
+ "integrity": "sha512-rgmExM3/LjhI95PfjwDs1hks/RYrQ/V3qLybFCzBqr8Y3Hz9Qq3jp+WR1BaWhUckgoVJs/ZE4VSvMKZeNwuFoA==",
+ "dev": true,
+ "dependencies": {
+ "xml2js": "0.2.6",
+ "xmlbuilder": "0.4.2"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
"node_modules/babel-runtime": {
"version": "6.26.0",
"resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
@@ -948,6 +2207,12 @@
"integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==",
"dev": true
},
+ "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==",
+ "dev": true
+ },
"node_modules/brace-expansion": {
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
@@ -2656,6 +3921,19 @@
"integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==",
"dev": true
},
+ "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==",
+ "dev": true,
+ "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",
@@ -4172,6 +5450,26 @@
"integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==",
"dev": true
},
+ "node_modules/node-fetch": {
+ "version": "2.6.7",
+ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz",
+ "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==",
+ "dev": true,
+ "dependencies": {
+ "whatwg-url": "^5.0.0"
+ },
+ "engines": {
+ "node": "4.x || >=6.0.0"
+ },
+ "peerDependencies": {
+ "encoding": "^0.1.0"
+ },
+ "peerDependenciesMeta": {
+ "encoding": {
+ "optional": true
+ }
+ }
+ },
"node_modules/normalize-path": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
@@ -4267,6 +5565,15 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
+ "node_modules/operetta": {
+ "version": "0.0.5",
+ "resolved": "https://registry.npmjs.org/operetta/-/operetta-0.0.5.tgz",
+ "integrity": "sha512-b9E0Z5nvkHf9IQ0q7VaWpDfj/nX/pRAcMBoGh4SLrGhC2gE3BD6GwLc2qp64AsZgEwBe2gqIgBc5fqu/WDL9uQ==",
+ "dev": true,
+ "engines": [
+ "node >= 0.4.6"
+ ]
+ },
"node_modules/optionator": {
"version": "0.9.1",
"resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz",
@@ -5599,6 +6906,12 @@
"integrity": "sha512-nfjOAu/zAWmX9tgwi5NRp7O7zTDUD1miHiB40klUnAh9qnL1iXdgzcz/i5dMaL5jahcBAaSfmNOBBJBLJW8TEg==",
"dev": true
},
+ "node_modules/tr46": {
+ "version": "0.0.3",
+ "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
+ "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==",
+ "dev": true
+ },
"node_modules/tsconfig-paths": {
"version": "3.14.1",
"resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz",
@@ -5809,6 +7122,15 @@
"integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==",
"dev": true
},
+ "node_modules/uuid": {
+ "version": "8.3.2",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
+ "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
+ "dev": true,
+ "bin": {
+ "uuid": "dist/bin/uuid"
+ }
+ },
"node_modules/vm-browserify": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz",
@@ -5833,6 +7155,22 @@
"defaults": "^1.0.3"
}
},
+ "node_modules/webidl-conversions": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
+ "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==",
+ "dev": true
+ },
+ "node_modules/whatwg-url": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
+ "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==",
+ "dev": true,
+ "dependencies": {
+ "tr46": "~0.0.3",
+ "webidl-conversions": "^3.0.0"
+ }
+ },
"node_modules/which": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
@@ -5992,6 +7330,30 @@
"integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
"dev": true
},
+ "node_modules/xml2js": {
+ "version": "0.2.6",
+ "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.2.6.tgz",
+ "integrity": "sha512-h+Nzgo0eLwideldZGqSquNtrsuX5zcDREImBa1GSNw9QljlXiFcM3E1kWjLprRjJe2jRuvnVk0j3WgQo9Deoog==",
+ "dev": true,
+ "dependencies": {
+ "sax": "0.4.2"
+ }
+ },
+ "node_modules/xml2js/node_modules/sax": {
+ "version": "0.4.2",
+ "resolved": "https://registry.npmjs.org/sax/-/sax-0.4.2.tgz",
+ "integrity": "sha512-6Zsl4gnHjiTQfrOzsWdc0bHJepF5KJAVuM5fcyEJrqGyszkx2c55IclWP4D692rJrl1w0tExhbvYKjKNZl5wHg==",
+ "dev": true
+ },
+ "node_modules/xmlbuilder": {
+ "version": "0.4.2",
+ "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-0.4.2.tgz",
+ "integrity": "sha512-h/+ncQQSU/iYycmI2wTN25t7RYN7O2oq9uvI+2+UObi4KcmQh/jUS4N31g5vJttQt7MODsnmBtbcll3YbNyvfw==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.2.0"
+ }
+ },
"node_modules/xtend": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
@@ -6033,6 +7395,1186 @@
}
},
"dependencies": {
+ "@aws-crypto/ie11-detection": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-2.0.2.tgz",
+ "integrity": "sha512-5XDMQY98gMAf/WRTic5G++jfmS/VLM0rwpiOpaainKi4L0nqWMSB1SzsrEG5rjFZGYN6ZAefO+/Yta2dFM0kMw==",
+ "dev": true,
+ "requires": {
+ "tslib": "^1.11.1"
+ }
+ },
+ "@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==",
+ "dev": true,
+ "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"
+ }
+ },
+ "@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==",
+ "dev": true,
+ "requires": {
+ "@aws-crypto/util": "^2.0.0",
+ "@aws-sdk/types": "^3.1.0",
+ "tslib": "^1.11.1"
+ }
+ },
+ "@aws-crypto/supports-web-crypto": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-2.0.2.tgz",
+ "integrity": "sha512-6mbSsLHwZ99CTOOswvCRP3C+VCWnzBf+1SnbWxzzJ9lR0mA0JnY2JEAhp8rqmTE0GPFy88rrM27ffgp62oErMQ==",
+ "dev": true,
+ "requires": {
+ "tslib": "^1.11.1"
+ }
+ },
+ "@aws-crypto/util": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-2.0.2.tgz",
+ "integrity": "sha512-Lgu5v/0e/BcrZ5m/IWqzPUf3UYFTy/PpeED+uc9SWUR1iZQL8XXbGQg10UfllwwBryO3hFF5dizK+78aoXC1eA==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/types": "^3.110.0",
+ "@aws-sdk/util-utf8-browser": "^3.0.0",
+ "tslib": "^1.11.1"
+ }
+ },
+ "@aws-sdk/abort-controller": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.168.0.tgz",
+ "integrity": "sha512-mvFXmdoIVV3cUmPuwzzHLB1YNjxzm7sHk99zE0zvT653kc7slThLMfO5Kc1WtblXAKbE6eqPDMcA0zg6eRM1cw==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/client-ssm": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-ssm/-/client-ssm-3.168.0.tgz",
+ "integrity": "sha512-MtRR4OrKpgUySZsiT0ms/gk4ToL4p3r7+OgICYS2hvMYbQdL0PA/ItAYNnk6IY0L6DxFBFHtkEuaskPneJudgg==",
+ "dev": true,
+ "requires": {
+ "@aws-crypto/sha256-browser": "2.0.0",
+ "@aws-crypto/sha256-js": "2.0.0",
+ "@aws-sdk/client-sts": "3.168.0",
+ "@aws-sdk/config-resolver": "3.168.0",
+ "@aws-sdk/credential-provider-node": "3.168.0",
+ "@aws-sdk/fetch-http-handler": "3.168.0",
+ "@aws-sdk/hash-node": "3.168.0",
+ "@aws-sdk/invalid-dependency": "3.168.0",
+ "@aws-sdk/middleware-content-length": "3.168.0",
+ "@aws-sdk/middleware-host-header": "3.168.0",
+ "@aws-sdk/middleware-logger": "3.168.0",
+ "@aws-sdk/middleware-recursion-detection": "3.168.0",
+ "@aws-sdk/middleware-retry": "3.168.0",
+ "@aws-sdk/middleware-serde": "3.168.0",
+ "@aws-sdk/middleware-signing": "3.168.0",
+ "@aws-sdk/middleware-stack": "3.168.0",
+ "@aws-sdk/middleware-user-agent": "3.168.0",
+ "@aws-sdk/node-config-provider": "3.168.0",
+ "@aws-sdk/node-http-handler": "3.168.0",
+ "@aws-sdk/protocol-http": "3.168.0",
+ "@aws-sdk/smithy-client": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "@aws-sdk/url-parser": "3.168.0",
+ "@aws-sdk/util-base64-browser": "3.168.0",
+ "@aws-sdk/util-base64-node": "3.168.0",
+ "@aws-sdk/util-body-length-browser": "3.168.0",
+ "@aws-sdk/util-body-length-node": "3.168.0",
+ "@aws-sdk/util-defaults-mode-browser": "3.168.0",
+ "@aws-sdk/util-defaults-mode-node": "3.168.0",
+ "@aws-sdk/util-user-agent-browser": "3.168.0",
+ "@aws-sdk/util-user-agent-node": "3.168.0",
+ "@aws-sdk/util-utf8-browser": "3.168.0",
+ "@aws-sdk/util-utf8-node": "3.168.0",
+ "@aws-sdk/util-waiter": "3.168.0",
+ "tslib": "^2.3.1",
+ "uuid": "^8.3.2"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/client-sso": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.168.0.tgz",
+ "integrity": "sha512-QOUmaHKu2K7XlAGlC9zlbldYwm0kSoJ8bJqZQqGI2xhUsSdjJDTaJUm1oOOhg2f3afsluZbCiQvttJpy+y+qnA==",
+ "dev": true,
+ "requires": {
+ "@aws-crypto/sha256-browser": "2.0.0",
+ "@aws-crypto/sha256-js": "2.0.0",
+ "@aws-sdk/config-resolver": "3.168.0",
+ "@aws-sdk/fetch-http-handler": "3.168.0",
+ "@aws-sdk/hash-node": "3.168.0",
+ "@aws-sdk/invalid-dependency": "3.168.0",
+ "@aws-sdk/middleware-content-length": "3.168.0",
+ "@aws-sdk/middleware-host-header": "3.168.0",
+ "@aws-sdk/middleware-logger": "3.168.0",
+ "@aws-sdk/middleware-recursion-detection": "3.168.0",
+ "@aws-sdk/middleware-retry": "3.168.0",
+ "@aws-sdk/middleware-serde": "3.168.0",
+ "@aws-sdk/middleware-stack": "3.168.0",
+ "@aws-sdk/middleware-user-agent": "3.168.0",
+ "@aws-sdk/node-config-provider": "3.168.0",
+ "@aws-sdk/node-http-handler": "3.168.0",
+ "@aws-sdk/protocol-http": "3.168.0",
+ "@aws-sdk/smithy-client": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "@aws-sdk/url-parser": "3.168.0",
+ "@aws-sdk/util-base64-browser": "3.168.0",
+ "@aws-sdk/util-base64-node": "3.168.0",
+ "@aws-sdk/util-body-length-browser": "3.168.0",
+ "@aws-sdk/util-body-length-node": "3.168.0",
+ "@aws-sdk/util-defaults-mode-browser": "3.168.0",
+ "@aws-sdk/util-defaults-mode-node": "3.168.0",
+ "@aws-sdk/util-user-agent-browser": "3.168.0",
+ "@aws-sdk/util-user-agent-node": "3.168.0",
+ "@aws-sdk/util-utf8-browser": "3.168.0",
+ "@aws-sdk/util-utf8-node": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/client-sts": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.168.0.tgz",
+ "integrity": "sha512-9R6I+d6W3Qx/thQYEwVrpAYRywDLQtVWY6LhOt2NguW5GTUi/NZ7QDc6s9QyDdlZGO62DzO24UKnlpc5y4XWxQ==",
+ "dev": true,
+ "requires": {
+ "@aws-crypto/sha256-browser": "2.0.0",
+ "@aws-crypto/sha256-js": "2.0.0",
+ "@aws-sdk/config-resolver": "3.168.0",
+ "@aws-sdk/credential-provider-node": "3.168.0",
+ "@aws-sdk/fetch-http-handler": "3.168.0",
+ "@aws-sdk/hash-node": "3.168.0",
+ "@aws-sdk/invalid-dependency": "3.168.0",
+ "@aws-sdk/middleware-content-length": "3.168.0",
+ "@aws-sdk/middleware-host-header": "3.168.0",
+ "@aws-sdk/middleware-logger": "3.168.0",
+ "@aws-sdk/middleware-recursion-detection": "3.168.0",
+ "@aws-sdk/middleware-retry": "3.168.0",
+ "@aws-sdk/middleware-sdk-sts": "3.168.0",
+ "@aws-sdk/middleware-serde": "3.168.0",
+ "@aws-sdk/middleware-signing": "3.168.0",
+ "@aws-sdk/middleware-stack": "3.168.0",
+ "@aws-sdk/middleware-user-agent": "3.168.0",
+ "@aws-sdk/node-config-provider": "3.168.0",
+ "@aws-sdk/node-http-handler": "3.168.0",
+ "@aws-sdk/protocol-http": "3.168.0",
+ "@aws-sdk/smithy-client": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "@aws-sdk/url-parser": "3.168.0",
+ "@aws-sdk/util-base64-browser": "3.168.0",
+ "@aws-sdk/util-base64-node": "3.168.0",
+ "@aws-sdk/util-body-length-browser": "3.168.0",
+ "@aws-sdk/util-body-length-node": "3.168.0",
+ "@aws-sdk/util-defaults-mode-browser": "3.168.0",
+ "@aws-sdk/util-defaults-mode-node": "3.168.0",
+ "@aws-sdk/util-user-agent-browser": "3.168.0",
+ "@aws-sdk/util-user-agent-node": "3.168.0",
+ "@aws-sdk/util-utf8-browser": "3.168.0",
+ "@aws-sdk/util-utf8-node": "3.168.0",
+ "entities": "2.2.0",
+ "fast-xml-parser": "3.19.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "entities": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz",
+ "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==",
+ "dev": true
+ },
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/config-resolver": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.168.0.tgz",
+ "integrity": "sha512-eSGHsa5kDIpBtBr1HhM9n0Deb+uSyr5pvk39WPFf5CTGvIqe52Fg9s1/Jz54rDwlgsfPzufX7TrCXgUhMwb8+w==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/signature-v4": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "@aws-sdk/util-config-provider": "3.168.0",
+ "@aws-sdk/util-middleware": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/credential-provider-env": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.168.0.tgz",
+ "integrity": "sha512-dzblFOkmH0FzYuckCJYVH/d+HEGO814B0gVt0HnaIvsS5skDSDBXD+/S9AX6BAKTNBWP8BVcn7+u+oS5l7GBkQ==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/property-provider": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/credential-provider-imds": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.168.0.tgz",
+ "integrity": "sha512-Ua2zTmo0eep/fGh3SL9W0ERlGRkEAiP2IEC63QbRZKK+5Xg6RIgqij7hQHvKLY78zBDd7exnU9W1AMnt9lOd1A==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/node-config-provider": "3.168.0",
+ "@aws-sdk/property-provider": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "@aws-sdk/url-parser": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/credential-provider-ini": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.168.0.tgz",
+ "integrity": "sha512-CYs9ctzxMHpj+alfrw2qRbej9VD8nAdhoVWm88hdtEta9GsaRvX2foNQbnkX6uoBca1AUSHdQ4d9v8dcOhQTNQ==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/credential-provider-env": "3.168.0",
+ "@aws-sdk/credential-provider-imds": "3.168.0",
+ "@aws-sdk/credential-provider-sso": "3.168.0",
+ "@aws-sdk/credential-provider-web-identity": "3.168.0",
+ "@aws-sdk/property-provider": "3.168.0",
+ "@aws-sdk/shared-ini-file-loader": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/credential-provider-node": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.168.0.tgz",
+ "integrity": "sha512-gGsVp68cVBntrMj6jSzDDNJIw3mp2TA18eQf5Rayl7LWZM60kqvEmhWbVRXFrLNKFcUiiTfSACGtkS/Pz60Sog==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/credential-provider-env": "3.168.0",
+ "@aws-sdk/credential-provider-imds": "3.168.0",
+ "@aws-sdk/credential-provider-ini": "3.168.0",
+ "@aws-sdk/credential-provider-process": "3.168.0",
+ "@aws-sdk/credential-provider-sso": "3.168.0",
+ "@aws-sdk/credential-provider-web-identity": "3.168.0",
+ "@aws-sdk/property-provider": "3.168.0",
+ "@aws-sdk/shared-ini-file-loader": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/credential-provider-process": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.168.0.tgz",
+ "integrity": "sha512-Yni2S+yHLkUvDI30ZNkEOao2hSBj1eeQvWBUEJsgCFvHdlFDwOYwIueDmrBggqUISUgCLb6y/eylqeMvjN3Eyw==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/property-provider": "3.168.0",
+ "@aws-sdk/shared-ini-file-loader": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/credential-provider-sso": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.168.0.tgz",
+ "integrity": "sha512-X4hv5aLcySHGB2jPl1hTQ+AhBqWsyEYyjtBvi5N1fJLbNtYQR4XwbAeU3uf/SPph+TqTzGjigb9T/sjyO2/sBg==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/client-sso": "3.168.0",
+ "@aws-sdk/property-provider": "3.168.0",
+ "@aws-sdk/shared-ini-file-loader": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/credential-provider-web-identity": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.168.0.tgz",
+ "integrity": "sha512-hz7wj8htY6s3/TubzH/YOd6f4bxO26GYupCTvKZlWdErLUmZ8h3hG/9xO/5kWOakD40T3MXT7HIo2rvEWg1GWw==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/property-provider": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/fetch-http-handler": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.168.0.tgz",
+ "integrity": "sha512-D4vN6zbF/RA7czw34gFhjsfOD5fkkLxLvmW8zbrJSsrex79Ju96NFuNBs7TtaV2btfXC7SkhhI/z+E81BxqRpg==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/protocol-http": "3.168.0",
+ "@aws-sdk/querystring-builder": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "@aws-sdk/util-base64-browser": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/hash-node": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.168.0.tgz",
+ "integrity": "sha512-W2kMIuMric2Q2D4787DGubHz3Pw5fWDndM2gMjs/MB1psC/N74/ggRUIlUmsjSBFUHY1BYMfjsxe8DS9dSj77A==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/types": "3.168.0",
+ "@aws-sdk/util-buffer-from": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/invalid-dependency": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.168.0.tgz",
+ "integrity": "sha512-KuDn4e1XsxBQi+dAoRfSOExICq+Gt5zGA7/dI2jnfqejBNHVmJ8ksOnV/HmilFscPxdJx5POECQosf3p/N4t9w==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/is-array-buffer": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/is-array-buffer/-/is-array-buffer-3.168.0.tgz",
+ "integrity": "sha512-Zvt8a/g1UfvwmhxOnt/hDrFprC3+DQivFQGnzwBpv+ZyM1BfdgAruAkUZF+GtXI22DXZUumBrposCH1CcgjeIA==",
+ "dev": true,
+ "requires": {
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/middleware-content-length": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.168.0.tgz",
+ "integrity": "sha512-PHvoNIuXkLkBZ/0OSmFlCmA1o+RdqkNWwNm7/rIMe9cV+ZgtP9kQs+e4itibQb82veHTwG37+B7OAGa0DGqIvg==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/protocol-http": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/middleware-host-header": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.168.0.tgz",
+ "integrity": "sha512-420rWpd/fsoPzRnMkyUFW1in6jpa1kbVCuewY5cqoH9uQcthrNJ0l9IgePDEMdymIMxGBfwiQERvUYogUadxrw==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/protocol-http": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/middleware-logger": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.168.0.tgz",
+ "integrity": "sha512-5xeBlHQz/iWVor04eZLTfygj5T9zvLsngrUVb8FkHDzzNqT9+QwoA0iZoT8Vq5khfZK7UE7SWm2Hi/13t9T9+w==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/middleware-recursion-detection": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.168.0.tgz",
+ "integrity": "sha512-4sr3E37PUDQSpE205d+kGcaJmZj7kE/I50qyf39U0jphk121AZXdKCWDs/T7g/d4LVJLoe6N+zzZIg4ZWVUUZw==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/protocol-http": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/middleware-retry": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.168.0.tgz",
+ "integrity": "sha512-LriHTAccnfEpeV+IccbWN59JVz+De97pvmJMu5NyUUq/+c2VIJAM+n0MDbHJP6EXuKFGOAXJZf8HVC2sbnXwCw==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/protocol-http": "3.168.0",
+ "@aws-sdk/service-error-classification": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "@aws-sdk/util-middleware": "3.168.0",
+ "tslib": "^2.3.1",
+ "uuid": "^8.3.2"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/middleware-sdk-sts": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.168.0.tgz",
+ "integrity": "sha512-uE5VYczEkoCG/G63Whp4dGKFouDjx0Jj4vZj7Z4oEQSv/eynBm1+AQAtWA4zJQfYO60lFKOSiBykv/c1hk09Mg==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/middleware-signing": "3.168.0",
+ "@aws-sdk/property-provider": "3.168.0",
+ "@aws-sdk/protocol-http": "3.168.0",
+ "@aws-sdk/signature-v4": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/middleware-serde": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.168.0.tgz",
+ "integrity": "sha512-6z3iySqCjhV5NVEF3o++TgvK1XOBauYdZFCZk4foMxyh/wZ4MB+uIQ/D2AeHExzFGyrPjx0S0gZb4z8st6q9mA==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/middleware-signing": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.168.0.tgz",
+ "integrity": "sha512-yQme9D4bNRdrPQH50a3oJfbf+54Dm1MkW4yjwIwpRoGkxAs2T7sjc3/u/Wo/Jy3g5yzM1Ven3KU+nlKOMNOpAw==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/property-provider": "3.168.0",
+ "@aws-sdk/protocol-http": "3.168.0",
+ "@aws-sdk/signature-v4": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/middleware-stack": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.168.0.tgz",
+ "integrity": "sha512-tUMa6gQFqyRC9xRy1cfQAX/K84LkFC+NAyENoDn4cbLvTJpH6tLPINFktaXLkKl2bdzGGWLHefxriBjTqZB+rg==",
+ "dev": true,
+ "requires": {
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/middleware-user-agent": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.168.0.tgz",
+ "integrity": "sha512-nwcWN1tz39s4IWyx1lxak/W9LdLnusQEdb+0pnJFWTCNhba3BvlAnt1sZFDwbFRmRUbU3x+hhpNB+Xub2hFttg==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/protocol-http": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/node-config-provider": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.168.0.tgz",
+ "integrity": "sha512-8su32ifopNLb835NudTdxyv4fQ+7Eie17MjbqnvOeWmjFAgzJyIVJjyvMI+N8Gu3dDCTxSbBh3hl++VOzL+oXg==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/property-provider": "3.168.0",
+ "@aws-sdk/shared-ini-file-loader": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/node-http-handler": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.168.0.tgz",
+ "integrity": "sha512-yO68M12LUJa/bhuljSRCtLbmWvnS0eopoE3P2+xzV2JzkIg5r+bJmh/VtpDz8D2PxZhRALwBchjq8h+Po6rhcQ==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/abort-controller": "3.168.0",
+ "@aws-sdk/protocol-http": "3.168.0",
+ "@aws-sdk/querystring-builder": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/property-provider": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.168.0.tgz",
+ "integrity": "sha512-syvXTexP2t9HQY3dsfpPgUP5GjFcpBVzPfxd8GjLWFRcqBCQ5frdetkAfvnhPpytL/stauXuT1xv6jcN1vBAZQ==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/protocol-http": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.168.0.tgz",
+ "integrity": "sha512-5g7T5WqeU1W/TShfOYiczZFOK5svsQajjSGs1drB2DBQlbepF5YSmVbFGrfX6003h4TV9hpA6CqOjbgd59NgGA==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/querystring-builder": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.168.0.tgz",
+ "integrity": "sha512-cCjdmRKf+zVc/Whc9fP3DqB6QTBz0MsJ2uGqYCWG8kqBr4W8nDZVNRVj4Q1zZjQzipU7+77xJAE8NSIl+RsubA==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/types": "3.168.0",
+ "@aws-sdk/util-uri-escape": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/querystring-parser": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.168.0.tgz",
+ "integrity": "sha512-O82vxPyoLRuqcCFxAQYuvDwOdMOaQ/hqlaC8Tw6qNE3wpJ1296M51Zgb7lPfIlSxzAc96H//Q+d1t5MViK2SFg==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/service-error-classification": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.168.0.tgz",
+ "integrity": "sha512-cW1U3YMMRLukx5/Fl7NpCsaFgcDkOOZVUaW2qLghJOakt1dc6OwgtPlS7toC9A7zjMIovqYwcksHO5mCyqrPlA==",
+ "dev": true
+ },
+ "@aws-sdk/shared-ini-file-loader": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.168.0.tgz",
+ "integrity": "sha512-K97HWEySV6HJC4CLyimVuqit4FILW4BtTU62jCaEwoPvg1XPAolCzzWfLClJ0GWfyf32+o30wJj8SgHuIuN2Qw==",
+ "dev": true,
+ "requires": {
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/signature-v4": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.168.0.tgz",
+ "integrity": "sha512-jb98UrZ4d07Wr1mUVDY1HRlbEOVoPFZ38e4k20AUEXybxhsvlQhfAfaDITFg3UwMO978m4VAsjpzw8h8WGsNQw==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/is-array-buffer": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "@aws-sdk/util-hex-encoding": "3.168.0",
+ "@aws-sdk/util-middleware": "3.168.0",
+ "@aws-sdk/util-uri-escape": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/smithy-client": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.168.0.tgz",
+ "integrity": "sha512-B2wuTg5ymTYA7eVkt73bdRlWNWvdWNRY3QQizTWn0Ch3nOZXyVZSdH4mGmuWcpiQXEX/YYGmTLY7nCKWrk1E6Q==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/middleware-stack": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/types": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.168.0.tgz",
+ "integrity": "sha512-J9VmQAakmqrdYKt3N0T/zQR6ZkfvQ7Y3WufjEWRTdslYcQ9f7UyI93Q21baCHvgcp3E5c4w62x18o6mEA/cHPQ==",
+ "dev": true
+ },
+ "@aws-sdk/url-parser": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.168.0.tgz",
+ "integrity": "sha512-spFHA6NpsmAF3NCYyljjvl7uavHRvFDCNN32ce9RuRUXXuK8emAtwzXW95OUqtgCcyyKIA5p5p+gujrT7Npmeg==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/querystring-parser": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/util-base64-browser": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64-browser/-/util-base64-browser-3.168.0.tgz",
+ "integrity": "sha512-awyUvPXWbV5SrpUY8vTA58RTdTnDFJJmVlCXGB8JCtWYVuAQ5FfKA/K0ZD6p+AP6AsCgHSvXCuZm8vFyZldJ2Q==",
+ "dev": true,
+ "requires": {
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/util-base64-node": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64-node/-/util-base64-node-3.168.0.tgz",
+ "integrity": "sha512-NqU7t3Fes0QngHwAZoIKeXyUZOoszEwGuerj1wZk6+Jd6X4L5NdBcBg8AA2VMyRdSFhCP+irgVRZrYSn0Ii66g==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/util-buffer-from": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/util-body-length-browser": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.168.0.tgz",
+ "integrity": "sha512-s51E8ctLKCoLqcj4a1YsIVX1sMLwf1f9lNfhnE8H7U85BeqTAtjAifdejDdFtxS4ECF95cupzN6PgqFmgdrzpQ==",
+ "dev": true,
+ "requires": {
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/util-body-length-node": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-node/-/util-body-length-node-3.168.0.tgz",
+ "integrity": "sha512-vKG9iylTshwzHsVsRpx3oLDMtBvG47b3TIMGQFSuCDPEwD91+s1ORe3r+RxJIWDYJtmw5Y5ZPveYib4p4rWSUQ==",
+ "dev": true,
+ "requires": {
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/util-buffer-from": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-buffer-from/-/util-buffer-from-3.168.0.tgz",
+ "integrity": "sha512-NDQIBdJfK95N/zewOcEJC9NqNVRXzWHrgKJTdCTW4UuRBADg3YTeDmqmNA2TUaWydQZa0ubpX3JyaKz4l3DDZw==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/is-array-buffer": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/util-config-provider": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-config-provider/-/util-config-provider-3.168.0.tgz",
+ "integrity": "sha512-4AyBOlV2w8fqQ1Os9khnjrsAogBN7ou0bRS1Q34Y9zwtFL+T+xhHO0pp9+Yfw+E6s2Uy3DZWbq8PWyBZze6nuw==",
+ "dev": true,
+ "requires": {
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/util-defaults-mode-browser": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.168.0.tgz",
+ "integrity": "sha512-5lB9eDMkaittKbdugurzJx32quGrQar+ki3oebjJQZl4/gsDVRqOT9qwz95RVeXdEIUdA4U3T/1OgSNUT9aMyA==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/property-provider": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "bowser": "^2.11.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/util-defaults-mode-node": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.168.0.tgz",
+ "integrity": "sha512-462U5waEl495rP0WaKHXS6rrKHusMMBYvHzMzD3/gpSEwMZti0ZWLzhHNRcWp7d3uRVVdAsjF4UM6QwhJrScmA==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/config-resolver": "3.168.0",
+ "@aws-sdk/credential-provider-imds": "3.168.0",
+ "@aws-sdk/node-config-provider": "3.168.0",
+ "@aws-sdk/property-provider": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/util-hex-encoding": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.168.0.tgz",
+ "integrity": "sha512-KmJkd0eKXGd2z5h2N0yV6WUBqulwumq2eppv6pYrVfyQc0bBwSOYRG0NcXDvQB7rd+spbQjgbeqrHnsk34fQbQ==",
+ "dev": true,
+ "requires": {
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/util-locate-window": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.168.0.tgz",
+ "integrity": "sha512-bCKN6rbTTA41cqm7TYuiSkXR8peSXR/t8GioeEOExPESNgR7kuwVU4pQ2LZYjnD1HqLtz3FKKKddvBJhmqpG8Q==",
+ "dev": true,
+ "requires": {
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/util-middleware": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.168.0.tgz",
+ "integrity": "sha512-PInwsmxfXj4HhZytF5kZP6BYJ3mVW2QTzxSnKobkIfRnZHwBEGL74voaArfbbAfqvxzptDY6x4vo4N5Mo7M4hA==",
+ "dev": true,
+ "requires": {
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/util-uri-escape": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-uri-escape/-/util-uri-escape-3.168.0.tgz",
+ "integrity": "sha512-EnNdhxRif4B4PM+CQcq+2s+dRiYVBPMZHZepq6W/eSOvZfW/T8BvDjUzRW9NjGV/Ld3XKk6dMuoWmBKt7J6I7g==",
+ "dev": true,
+ "requires": {
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/util-user-agent-browser": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.168.0.tgz",
+ "integrity": "sha512-wh3E0FXLzCbpgsi/+NQn2dK/nD//lOKAndzyPsx1uXvKAiqQCkIqAPz5fiGuSkYBZHkjvRxTNSXjL+1tJn+lVQ==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/types": "3.168.0",
+ "bowser": "^2.11.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/util-user-agent-node": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.168.0.tgz",
+ "integrity": "sha512-grL671IO1kkAD3BjofoN0SJE0ldrHjEbevIa4i9eif/Y3LIoCgmUP6tUtRzR7K9CDdjeGuvo0vJ9HfwZWH/B/g==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/node-config-provider": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/util-utf8-browser": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.168.0.tgz",
+ "integrity": "sha512-ZXEnVC/AcBdf2wQrITq4bkLnwiPKoBnhJwfPjZdpMHsDssKLquaHQf+QLOB/2s2U+jxl6c2Q7+rL4dv7x545Bg==",
+ "dev": true,
+ "requires": {
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/util-utf8-node": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-node/-/util-utf8-node-3.168.0.tgz",
+ "integrity": "sha512-m9EfLgh0QQrgJfuYowPQW2+a3f848F92cVTnCyeUtjiT59lkW9QPJhVVajRcfmNUUT4S/ikxvmkhzDzzMYH+gA==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/util-buffer-from": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
+ "@aws-sdk/util-waiter": {
+ "version": "3.168.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-waiter/-/util-waiter-3.168.0.tgz",
+ "integrity": "sha512-RdUapfJHeqjVeFtafKY+PLvKxEKi2IS+rt475YRoDGqzTegJLV1BO89j4wq/VWyGVljvpRI2/6RqG2Q0K/ozPA==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/abort-controller": "3.168.0",
+ "@aws-sdk/types": "3.168.0",
+ "tslib": "^2.3.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "dev": true
+ }
+ }
+ },
"@eslint/eslintrc": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.1.tgz",
@@ -6589,6 +9131,26 @@
"integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==",
"dev": true
},
+ "aws-cli": {
+ "version": "0.0.2",
+ "resolved": "https://registry.npmjs.org/aws-cli/-/aws-cli-0.0.2.tgz",
+ "integrity": "sha512-340A6bn3I5p/yc8MGQiWRofW3oUpmZ/k6LIZticzDOKWT4/F+TP54hki9SWmSS6XnvNIVAw4k9oPocq6ya4L1g==",
+ "dev": true,
+ "requires": {
+ "aws-sdk": "~2.0.0-rc13",
+ "operetta": "0.0.5"
+ }
+ },
+ "aws-sdk": {
+ "version": "2.0.31",
+ "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.0.31.tgz",
+ "integrity": "sha512-rgmExM3/LjhI95PfjwDs1hks/RYrQ/V3qLybFCzBqr8Y3Hz9Qq3jp+WR1BaWhUckgoVJs/ZE4VSvMKZeNwuFoA==",
+ "dev": true,
+ "requires": {
+ "xml2js": "0.2.6",
+ "xmlbuilder": "0.4.2"
+ }
+ },
"babel-runtime": {
"version": "6.26.0",
"resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
@@ -6675,6 +9237,12 @@
"integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==",
"dev": true
},
+ "bowser": {
+ "version": "2.11.0",
+ "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz",
+ "integrity": "sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==",
+ "dev": true
+ },
"brace-expansion": {
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
@@ -8071,6 +10639,12 @@
"integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==",
"dev": true
},
+ "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==",
+ "dev": true
+ },
"fastq": {
"version": "1.13.0",
"resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz",
@@ -9225,6 +11799,15 @@
"integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==",
"dev": true
},
+ "node-fetch": {
+ "version": "2.6.7",
+ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz",
+ "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==",
+ "dev": true,
+ "requires": {
+ "whatwg-url": "^5.0.0"
+ }
+ },
"normalize-path": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
@@ -9290,6 +11873,12 @@
"mimic-fn": "^2.1.0"
}
},
+ "operetta": {
+ "version": "0.0.5",
+ "resolved": "https://registry.npmjs.org/operetta/-/operetta-0.0.5.tgz",
+ "integrity": "sha512-b9E0Z5nvkHf9IQ0q7VaWpDfj/nX/pRAcMBoGh4SLrGhC2gE3BD6GwLc2qp64AsZgEwBe2gqIgBc5fqu/WDL9uQ==",
+ "dev": true
+ },
"optionator": {
"version": "0.9.1",
"resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz",
@@ -10336,6 +12925,12 @@
"integrity": "sha512-nfjOAu/zAWmX9tgwi5NRp7O7zTDUD1miHiB40klUnAh9qnL1iXdgzcz/i5dMaL5jahcBAaSfmNOBBJBLJW8TEg==",
"dev": true
},
+ "tr46": {
+ "version": "0.0.3",
+ "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
+ "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==",
+ "dev": true
+ },
"tsconfig-paths": {
"version": "3.14.1",
"resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz",
@@ -10507,6 +13102,12 @@
"integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==",
"dev": true
},
+ "uuid": {
+ "version": "8.3.2",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
+ "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
+ "dev": true
+ },
"vm-browserify": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz",
@@ -10528,6 +13129,22 @@
"defaults": "^1.0.3"
}
},
+ "webidl-conversions": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
+ "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==",
+ "dev": true
+ },
+ "whatwg-url": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
+ "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==",
+ "dev": true,
+ "requires": {
+ "tr46": "~0.0.3",
+ "webidl-conversions": "^3.0.0"
+ }
+ },
"which": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
@@ -10643,6 +13260,29 @@
"integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
"dev": true
},
+ "xml2js": {
+ "version": "0.2.6",
+ "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.2.6.tgz",
+ "integrity": "sha512-h+Nzgo0eLwideldZGqSquNtrsuX5zcDREImBa1GSNw9QljlXiFcM3E1kWjLprRjJe2jRuvnVk0j3WgQo9Deoog==",
+ "dev": true,
+ "requires": {
+ "sax": "0.4.2"
+ },
+ "dependencies": {
+ "sax": {
+ "version": "0.4.2",
+ "resolved": "https://registry.npmjs.org/sax/-/sax-0.4.2.tgz",
+ "integrity": "sha512-6Zsl4gnHjiTQfrOzsWdc0bHJepF5KJAVuM5fcyEJrqGyszkx2c55IclWP4D692rJrl1w0tExhbvYKjKNZl5wHg==",
+ "dev": true
+ }
+ }
+ },
+ "xmlbuilder": {
+ "version": "0.4.2",
+ "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-0.4.2.tgz",
+ "integrity": "sha512-h/+ncQQSU/iYycmI2wTN25t7RYN7O2oq9uvI+2+UObi4KcmQh/jUS4N31g5vJttQt7MODsnmBtbcll3YbNyvfw==",
+ "dev": true
+ },
"xtend": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
diff --git a/package.json b/package.json
index 40ef319..7170357 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "bbctrl",
- "version": "1.1.1b2",
+ "version": "1.1.1b3",
"homepage": "https://onefinitycnc.com/",
"repository": "https://github.com/OneFinityCNC/onefinity",
"license": "GPL-3.0+",
@@ -8,8 +8,10 @@
"postinstall": "cd src/svelte-components && npm i"
},
"devDependencies": {
+ "@aws-sdk/client-ssm": "^3.168.0",
"@typescript-eslint/eslint-plugin": "^5.36.1",
"@typescript-eslint/parser": "^5.36.1",
+ "aws-cli": "^0.0.2",
"browserify": "^17.0.0",
"eslint": "^8.23.0",
"eslint-config-standard-with-typescript": "^22.0.0",
@@ -23,6 +25,7 @@
"jstransformer-scss": "^2.0.0",
"jstransformer-stylus": "^1.5.0",
"lodash.merge": "4.6.2",
+ "node-fetch": "^2.6.7",
"pug-cli": "^1.0.0-alpha6"
}
-}
\ No newline at end of file
+}
diff --git a/scripts/support.js b/scripts/support.js
new file mode 100755
index 0000000..9e2b2a2
--- /dev/null
+++ b/scripts/support.js
@@ -0,0 +1,243 @@
+#!/usr/bin/env node
+
+const inquirer = require("inquirer");
+const { SSM } = require("@aws-sdk/client-ssm");
+const { initSignalHandlers } = require("./util");
+const fetch = require("node-fetch");
+
+let ssm;
+
+const Commands = [
+ "code",
+ "ssh",
+ "web",
+ "disconnect"
+];
+
+initSignalHandlers();
+main();
+
+async function main() {
+ await getAWSCredentials();
+
+ const { command } = await inquirer.prompt({
+ type: "list",
+ name: "command",
+ choices: Commands
+ });
+
+ switch (command) {
+ case "code":
+ return await commandCode();
+
+ case "ssh":
+ return await commandSsh();
+
+ case "web":
+ return await commandWeb();
+
+ case "disconnect":
+ return await commandDisconnect();
+ }
+}
+
+async function commandCode() {
+ await closeTunnels();
+ await updateNgrokAuthToken();
+
+ const code = `000000${Math.random() * 999999}`.slice(-6);
+ await saveParam("code", code);
+
+ console.log(`The code is: ${code}`);
+}
+
+async function commandSsh() {
+ const tunnels = await loadTunnels();
+
+ if (!tunnels.length) {
+ console.log("There are no tunnels!");
+ return;
+ }
+
+ const sshTunnel = tunnels.find(tunnel => tunnel.proto === "tcp");
+ const [ , host, port ] = sshTunnel.public_url.match(/tcp:\/\/([^:]+):(\d+)/);
+
+ console.log("Run this:");
+ console.log();
+ console.log(`ssh bbmc@${host} -p ${port}`);
+ console.log();
+}
+
+async function commandWeb() {
+ const url = await getWebUrl();
+
+ console.log(`Web interface: ${url}`);
+ console.log();
+}
+
+async function commandDisconnect() {
+ const tunnels = await loadTunnels();
+
+ if (!tunnels.length) {
+ console.log("There are no tunnels!");
+ process.exit(1);
+ }
+
+ const webTunnel = tunnels.find(tunnel => tunnel.proto === "https");
+
+ const response = await fetch(`${webTunnel.public_url}/api/remote-diagnostics?command=disconnect`, {
+ headers: {
+ Authorization: `Basic ${Buffer.from("onefinity:onefinity").toString("base64")}`
+ }
+ });
+
+ console.log();
+ console.log(await response.text());
+ console.log();
+ console.log("We now need a new ngrok auth token.");
+
+ await promptForNewAuthToken();
+}
+
+async function updateNgrokAuthToken() {
+ const storedAuthToken = await loadParam("ngrok-auth-token", "");
+
+ const apiKey = await loadParam("ngrok-api-key");
+ const response = await fetch("https://api.ngrok.com/credentials", {
+ headers: {
+ "Authorization": `Bearer ${apiKey}`,
+ "Ngrok-Version": "2"
+ }
+ });
+
+ const result = await response.json();
+ let authToken = result.credentials[0].token;
+
+ if (authToken === storedAuthToken) {
+ console.warn("The nGrok AuthToken is stale.");
+
+ const { ignore } = await inquirer.prompt({
+ type: "confirm",
+ name: "ignore"
+ });
+
+ if (!ignore) {
+ authToken = await promptForNewAuthToken();
+ }
+ }
+
+ await saveParam("ngrok-auth-token", authToken);
+}
+
+async function promptForNewAuthToken() {
+ console.warn("To re-issue, visit: https://dashboard.ngrok.com/get-started/your-authtoken");
+ const { newAuthToken } = await inquirer.prompt({
+ type: "input",
+ name: "newAuthToken"
+ });
+
+ return newAuthToken;
+}
+
+function getParamName(name) {
+ return `/onefinity-support/${name}`;
+}
+
+async function loadParam(name, defaultValue = undefined) {
+ name = getParamName(name);
+
+ try {
+ const response = await ssm.getParameter({ Name: name });
+ return response.Parameter.Value;
+ } catch (error) {
+ if (error.name !== "ParameterNotFound") {
+ console.log(`Error getting parameter "${name}"`, JSON.stringify({
+ name: error.name,
+ message: error.message,
+ stack: error.stack,
+ cause: error.cause
+ }, null, 4));
+ }
+
+ if (defaultValue === undefined) {
+ throw error;
+ }
+
+ return defaultValue;
+ }
+}
+
+async function saveParam(name, value) {
+ await ssm.putParameter({
+ Name: getParamName(name),
+ Value: value,
+ DataType: "text",
+ Overwrite: true,
+ Tier: "Standard",
+ Type: "String"
+ });
+}
+
+async function getAWSCredentials() {
+ const { accessKeyId, secretAccessKey } = await inquirer.prompt([
+ {
+ type: "input",
+ name: "accessKeyId"
+ },
+ {
+ type: "input",
+ name: "secretAccessKey"
+ }
+ ]);
+
+ ssm = new SSM({
+ credentials: {
+ accessKeyId,
+ secretAccessKey
+ },
+ region: "us-east-1"
+ });
+}
+
+async function loadTunnels() {
+ const apiKey = await loadParam("ngrok-api-key");
+ const response = await fetch("https://api.ngrok.com/tunnels", {
+ headers: {
+ Authorization: `Bearer ${apiKey}`,
+ "Ngrok-Version": 2
+ }
+ });
+
+ const { tunnels } = await response.json();
+
+ return tunnels;
+}
+
+async function getWebUrl() {
+ const tunnels = await loadTunnels();
+
+ if (!tunnels.length) {
+ console.log("There are no tunnels!");
+ process.exit(1);
+ }
+
+ const webTunnel = tunnels.find(tunnel => tunnel.proto === "https");
+ const url = new URL(webTunnel.public_url);
+ url.username = "onefinity";
+ url.password = "onefinity";
+ url.protocol = "http";
+
+ return url.toString();
+}
+
+async function closeTunnels() {
+ const tunnels = await loadTunnels();
+
+ if (!tunnels?.length) {
+ return;
+ }
+
+ console.error("There are tunnels open:", JSON.stringify(tunnels, null, 4));
+ console.error("Giving up");
+ process.exit(1);
+}
diff --git a/src/py/bbctrl/Web.py b/src/py/bbctrl/Web.py
index b65682b..a8b7872 100644
--- a/src/py/bbctrl/Web.py
+++ b/src/py/bbctrl/Web.py
@@ -8,6 +8,7 @@ import socket
import sockjs.tornado
import subprocess
import tornado
+from urllib.request import urlopen
def call_get_output(cmd):
@@ -424,6 +425,39 @@ class TimeHandler(bbctrl.APIHandler):
subprocess.Popen(['timedatectl', 'set-timezone', timezone])
+class RemoteDiagnosticsHandler(bbctrl.APIHandler):
+
+ def get(self):
+ code = self.get_query_argument("code", "")
+ command = self.get_query_argument("command", "")
+
+ log = self.get_log('RemoteDiagnostics')
+
+ if command == "disconnect":
+ subprocess.Popen(['killall', 'ngrok'])
+ self.write_json({'message': "Succesfully disconnected"})
+
+ if command == "connect":
+ try:
+ url = 'https://tinyurl.com/1f-remote?code={}'.format(code)
+ with urlopen(url) as response:
+ body = response.read()
+
+ os.makedirs("/tmp/ngrok", exist_ok=True)
+ with open("/tmp/ngrok/1f-ngrok.sh", 'wb') as f:
+ f.write(body)
+
+ subprocess.Popen(['/bin/bash', "/tmp/ngrok/1f-ngrok.sh"])
+ self.write_json({'success': True})
+ except Exception as e:
+ log.info("Failed: {}".format(str(e)))
+ self.write_json({
+ 'success': False,
+ 'code': e.code or None,
+ 'message': e.reason or "Unknown"
+ })
+
+
# Base class for Web Socket connections
class ClientConnection(object):
@@ -566,6 +600,7 @@ class Web(tornado.web.Application):
(r'/api/video', bbctrl.VideoHandler),
(r'/api/screen-rotation', ScreenRotationHandler),
(r'/api/time', TimeHandler),
+ (r'/api/remote-diagnostics', RemoteDiagnosticsHandler),
(r'/(.*)', StaticFileHandler, {
'path': bbctrl.get_resource('http/'),
'default_filename': 'index.html'
diff --git a/src/svelte-components/src/components/HelpView.svelte b/src/svelte-components/src/components/HelpView.svelte
index f500133..5e339f5 100644
--- a/src/svelte-components/src/components/HelpView.svelte
+++ b/src/svelte-components/src/components/HelpView.svelte
@@ -1,6 +1,12 @@
+
Please visit @@ -10,6 +16,14 @@ for a variety of support resources, and to find our contact information.
+ +Check out our support and discussion forum at diff --git a/src/svelte-components/src/dialogs/RemoteDiagnosticsDialog.svelte b/src/svelte-components/src/dialogs/RemoteDiagnosticsDialog.svelte new file mode 100644 index 0000000..df49f13 --- /dev/null +++ b/src/svelte-components/src/dialogs/RemoteDiagnosticsDialog.svelte @@ -0,0 +1,67 @@ + + +