From ec9288b9b4ea4ad463f5d09435099dbb6bd54bb1 Mon Sep 17 00:00:00 2001
From: bre1470 <40056287+bre1470@users.noreply.github.com>
Date: Wed, 11 Sep 2024 14:31:04 +0200
Subject: [PATCH] Added regular dist script for build, gzip, and upload. (#30)
---
README.md | 6 +-
package-build.json | 2 +-
package-lock.json | 2296 +++++++++++++++++++++++++++++++++++-----
package.json | 9 +-
src/Shared/External.ts | 41 +-
tools/README.md | 22 +
tools/dist.ts | 510 +++++++++
webpack.config.ts | 29 +-
8 files changed, 2642 insertions(+), 273 deletions(-)
create mode 100644 tools/README.md
create mode 100644 tools/dist.ts
diff --git a/README.md b/README.md
index 7d72792..28ed6bf 100644
--- a/README.md
+++ b/README.md
@@ -16,8 +16,10 @@ The connectors are available as
`@highcharts/connectors-morningstar/connectors-morningstar.js` script to your
web app or web page.
-**Note:** The UMD bundle is not available via
-`https://code.highcharts.com/connectors/connectors-morningstar.js` yet.
+* You can also include the UMD bundle for testing purposes directly in HTML:
+ ``` HTML
+
+ ```
diff --git a/package-build.json b/package-build.json
index 659f2f7..7b5ba2c 100644
--- a/package-build.json
+++ b/package-build.json
@@ -1,6 +1,6 @@
{
"private": true,
- "version": "0.3.1",
+ "version": "0.4.0",
"name": "@highcharts/connectors-morningstar",
"license": "UNLICENSED",
"description": "Highcharts connectors for Morningstar Direct Web Services",
diff --git a/package-lock.json b/package-lock.json
index d5491a6..4c2252b 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -12,6 +12,8 @@
"connectors-morningstar": "bin/morningstar-connectors.js"
},
"devDependencies": {
+ "@aws-sdk/client-s3": "^3.592.0",
+ "@aws-sdk/credential-providers": "^3.592.0",
"@types/jsdom": "^21.1.7",
"@types/node": "^20.0.0",
"@typescript-eslint/eslint-plugin": "^7.17.0",
@@ -22,344 +24,2128 @@
"jsdom": "^24.1.1",
"lint-staged": "^15.2.7",
"ts-node": "^10.9.2",
- "typescript": "^5.5.4",
- "webpack": "^5.93.0",
+ "typescript": "~5.5.4",
+ "webpack": "^5.94.0",
"webpack-cli": "^5.1.4"
},
"peerDependencies": {
- "@highcharts/dashboards": ">=2.2.0",
+ "@highcharts/dashboards": ">=2.3.0",
"highcharts": ">=11.4.0"
}
},
- "node_modules/@cspotcode/source-map-support": {
- "version": "0.8.1",
- "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz",
- "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==",
+ "node_modules/@aws-crypto/crc32": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/crc32/-/crc32-5.2.0.tgz",
+ "integrity": "sha512-nLbCWqQNgUiwwtFsen1AdzAtvuLRsQS8rYgMuxCrdKf9kOssamGLuPwyTY9wyYblNr9+1XM8v6zoDTPPSIeANg==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
"dependencies": {
- "@jridgewell/trace-mapping": "0.3.9"
+ "@aws-crypto/util": "^5.2.0",
+ "@aws-sdk/types": "^3.222.0",
+ "tslib": "^2.6.2"
},
"engines": {
- "node": ">=12"
+ "node": ">=16.0.0"
}
},
- "node_modules/@discoveryjs/json-ext": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz",
- "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==",
+ "node_modules/@aws-crypto/crc32c": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/crc32c/-/crc32c-5.2.0.tgz",
+ "integrity": "sha512-+iWb8qaHLYKrNvGRbiYRHSdKRWhto5XlZUEBwDjYNf+ly5SVYG6zEoYIdxvf5R3zyeP16w4PLBn3rH1xc74Rag==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-crypto/util": "^5.2.0",
+ "@aws-sdk/types": "^3.222.0",
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@aws-crypto/sha1-browser": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/sha1-browser/-/sha1-browser-5.2.0.tgz",
+ "integrity": "sha512-OH6lveCFfcDjX4dbAvCFSYUjJZjDr/3XJ3xHtjn3Oj5b9RjojQo8npoLeA/bNwkOkrSQ0wgrHzXk4tDRxGKJeg==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-crypto/supports-web-crypto": "^5.2.0",
+ "@aws-crypto/util": "^5.2.0",
+ "@aws-sdk/types": "^3.222.0",
+ "@aws-sdk/util-locate-window": "^3.0.0",
+ "@smithy/util-utf8": "^2.0.0",
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@aws-crypto/sha1-browser/node_modules/@smithy/is-array-buffer": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz",
+ "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "tslib": "^2.6.2"
+ },
"engines": {
- "node": ">=10.0.0"
+ "node": ">=14.0.0"
}
},
- "node_modules/@es-joy/jsdoccomment": {
- "version": "0.46.0",
- "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.46.0.tgz",
- "integrity": "sha512-C3Axuq1xd/9VqFZpW4YAzOx5O9q/LP46uIQy/iNDpHG3fmPa6TBtvfglMCs3RBiBxAIi0Go97r8+jvTt55XMyQ==",
+ "node_modules/@aws-crypto/sha1-browser/node_modules/@smithy/util-buffer-from": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz",
+ "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
"dependencies": {
- "comment-parser": "1.4.1",
- "esquery": "^1.6.0",
- "jsdoc-type-pratt-parser": "~4.0.0"
+ "@smithy/is-array-buffer": "^2.2.0",
+ "tslib": "^2.6.2"
},
"engines": {
- "node": ">=16"
+ "node": ">=14.0.0"
}
},
- "node_modules/@eslint-community/eslint-utils": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz",
- "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==",
+ "node_modules/@aws-crypto/sha1-browser/node_modules/@smithy/util-utf8": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz",
+ "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
"dependencies": {
- "eslint-visitor-keys": "^3.3.0"
+ "@smithy/util-buffer-from": "^2.2.0",
+ "tslib": "^2.6.2"
},
"engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-crypto/sha256-browser": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-5.2.0.tgz",
+ "integrity": "sha512-AXfN/lGotSQwu6HNcEsIASo7kWXZ5HYWvfOmSNKDsEqC4OashTp8alTmaz+F7TC2L083SFv5RdB+qU3Vs1kZqw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-crypto/sha256-js": "^5.2.0",
+ "@aws-crypto/supports-web-crypto": "^5.2.0",
+ "@aws-crypto/util": "^5.2.0",
+ "@aws-sdk/types": "^3.222.0",
+ "@aws-sdk/util-locate-window": "^3.0.0",
+ "@smithy/util-utf8": "^2.0.0",
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/is-array-buffer": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz",
+ "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-buffer-from": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz",
+ "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/is-array-buffer": "^2.2.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-utf8": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz",
+ "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/util-buffer-from": "^2.2.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-crypto/sha256-js": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-5.2.0.tgz",
+ "integrity": "sha512-FFQQyu7edu4ufvIZ+OadFpHHOt+eSTBaYaki44c+akjg7qZg9oOQeLlk77F6tSYqjDAFClrHJk9tMf0HdVyOvA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-crypto/util": "^5.2.0",
+ "@aws-sdk/types": "^3.222.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@aws-crypto/supports-web-crypto": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-5.2.0.tgz",
+ "integrity": "sha512-iAvUotm021kM33eCdNfwIN//F77/IADDSs58i+MDaOqFrVjZo9bAal0NK7HurRuWLLpF1iLX7gbWrjHjeo+YFg==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@aws-crypto/util": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-5.2.0.tgz",
+ "integrity": "sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/types": "^3.222.0",
+ "@smithy/util-utf8": "^2.0.0",
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@aws-crypto/util/node_modules/@smithy/is-array-buffer": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz",
+ "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-crypto/util/node_modules/@smithy/util-buffer-from": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz",
+ "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/is-array-buffer": "^2.2.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-crypto/util/node_modules/@smithy/util-utf8": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz",
+ "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/util-buffer-from": "^2.2.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/client-cognito-identity": {
+ "version": "3.645.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.645.0.tgz",
+ "integrity": "sha512-nBfWDzWBQI1NCHYqBAmiifhdnLRxQYozaq6OjTuRcALjYJbOdFV7t0w9FWGISOq1OnM7r8UdCXlr2bzdyU0tJA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-crypto/sha256-browser": "5.2.0",
+ "@aws-crypto/sha256-js": "5.2.0",
+ "@aws-sdk/client-sso-oidc": "3.645.0",
+ "@aws-sdk/client-sts": "3.645.0",
+ "@aws-sdk/core": "3.635.0",
+ "@aws-sdk/credential-provider-node": "3.645.0",
+ "@aws-sdk/middleware-host-header": "3.620.0",
+ "@aws-sdk/middleware-logger": "3.609.0",
+ "@aws-sdk/middleware-recursion-detection": "3.620.0",
+ "@aws-sdk/middleware-user-agent": "3.645.0",
+ "@aws-sdk/region-config-resolver": "3.614.0",
+ "@aws-sdk/types": "3.609.0",
+ "@aws-sdk/util-endpoints": "3.645.0",
+ "@aws-sdk/util-user-agent-browser": "3.609.0",
+ "@aws-sdk/util-user-agent-node": "3.614.0",
+ "@smithy/config-resolver": "^3.0.5",
+ "@smithy/core": "^2.4.0",
+ "@smithy/fetch-http-handler": "^3.2.4",
+ "@smithy/hash-node": "^3.0.3",
+ "@smithy/invalid-dependency": "^3.0.3",
+ "@smithy/middleware-content-length": "^3.0.5",
+ "@smithy/middleware-endpoint": "^3.1.0",
+ "@smithy/middleware-retry": "^3.0.15",
+ "@smithy/middleware-serde": "^3.0.3",
+ "@smithy/middleware-stack": "^3.0.3",
+ "@smithy/node-config-provider": "^3.1.4",
+ "@smithy/node-http-handler": "^3.1.4",
+ "@smithy/protocol-http": "^4.1.0",
+ "@smithy/smithy-client": "^3.2.0",
+ "@smithy/types": "^3.3.0",
+ "@smithy/url-parser": "^3.0.3",
+ "@smithy/util-base64": "^3.0.0",
+ "@smithy/util-body-length-browser": "^3.0.0",
+ "@smithy/util-body-length-node": "^3.0.0",
+ "@smithy/util-defaults-mode-browser": "^3.0.15",
+ "@smithy/util-defaults-mode-node": "^3.0.15",
+ "@smithy/util-endpoints": "^2.0.5",
+ "@smithy/util-middleware": "^3.0.3",
+ "@smithy/util-retry": "^3.0.3",
+ "@smithy/util-utf8": "^3.0.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/client-s3": {
+ "version": "3.645.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.645.0.tgz",
+ "integrity": "sha512-RjT/mfNv4yr1uv/+aEXgSIxC5EB+yHPSU7hH0KZOZrvZEFASLl0i4FeoHzbMEOH5KdKGAi0uu3zRP3D1y45sKg==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-crypto/sha1-browser": "5.2.0",
+ "@aws-crypto/sha256-browser": "5.2.0",
+ "@aws-crypto/sha256-js": "5.2.0",
+ "@aws-sdk/client-sso-oidc": "3.645.0",
+ "@aws-sdk/client-sts": "3.645.0",
+ "@aws-sdk/core": "3.635.0",
+ "@aws-sdk/credential-provider-node": "3.645.0",
+ "@aws-sdk/middleware-bucket-endpoint": "3.620.0",
+ "@aws-sdk/middleware-expect-continue": "3.620.0",
+ "@aws-sdk/middleware-flexible-checksums": "3.620.0",
+ "@aws-sdk/middleware-host-header": "3.620.0",
+ "@aws-sdk/middleware-location-constraint": "3.609.0",
+ "@aws-sdk/middleware-logger": "3.609.0",
+ "@aws-sdk/middleware-recursion-detection": "3.620.0",
+ "@aws-sdk/middleware-sdk-s3": "3.635.0",
+ "@aws-sdk/middleware-ssec": "3.609.0",
+ "@aws-sdk/middleware-user-agent": "3.645.0",
+ "@aws-sdk/region-config-resolver": "3.614.0",
+ "@aws-sdk/signature-v4-multi-region": "3.635.0",
+ "@aws-sdk/types": "3.609.0",
+ "@aws-sdk/util-endpoints": "3.645.0",
+ "@aws-sdk/util-user-agent-browser": "3.609.0",
+ "@aws-sdk/util-user-agent-node": "3.614.0",
+ "@aws-sdk/xml-builder": "3.609.0",
+ "@smithy/config-resolver": "^3.0.5",
+ "@smithy/core": "^2.4.0",
+ "@smithy/eventstream-serde-browser": "^3.0.6",
+ "@smithy/eventstream-serde-config-resolver": "^3.0.3",
+ "@smithy/eventstream-serde-node": "^3.0.5",
+ "@smithy/fetch-http-handler": "^3.2.4",
+ "@smithy/hash-blob-browser": "^3.1.2",
+ "@smithy/hash-node": "^3.0.3",
+ "@smithy/hash-stream-node": "^3.1.2",
+ "@smithy/invalid-dependency": "^3.0.3",
+ "@smithy/md5-js": "^3.0.3",
+ "@smithy/middleware-content-length": "^3.0.5",
+ "@smithy/middleware-endpoint": "^3.1.0",
+ "@smithy/middleware-retry": "^3.0.15",
+ "@smithy/middleware-serde": "^3.0.3",
+ "@smithy/middleware-stack": "^3.0.3",
+ "@smithy/node-config-provider": "^3.1.4",
+ "@smithy/node-http-handler": "^3.1.4",
+ "@smithy/protocol-http": "^4.1.0",
+ "@smithy/smithy-client": "^3.2.0",
+ "@smithy/types": "^3.3.0",
+ "@smithy/url-parser": "^3.0.3",
+ "@smithy/util-base64": "^3.0.0",
+ "@smithy/util-body-length-browser": "^3.0.0",
+ "@smithy/util-body-length-node": "^3.0.0",
+ "@smithy/util-defaults-mode-browser": "^3.0.15",
+ "@smithy/util-defaults-mode-node": "^3.0.15",
+ "@smithy/util-endpoints": "^2.0.5",
+ "@smithy/util-middleware": "^3.0.3",
+ "@smithy/util-retry": "^3.0.3",
+ "@smithy/util-stream": "^3.1.3",
+ "@smithy/util-utf8": "^3.0.0",
+ "@smithy/util-waiter": "^3.1.2",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/client-sso": {
+ "version": "3.645.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.645.0.tgz",
+ "integrity": "sha512-2rc8TjnsNddOeKQ/pfNN7deNvGLXAeKeYtHtGDAiM2qfTKxd2sNcAsZ+JCDLyshuD4xLM5fpUyR0X8As9EAouQ==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-crypto/sha256-browser": "5.2.0",
+ "@aws-crypto/sha256-js": "5.2.0",
+ "@aws-sdk/core": "3.635.0",
+ "@aws-sdk/middleware-host-header": "3.620.0",
+ "@aws-sdk/middleware-logger": "3.609.0",
+ "@aws-sdk/middleware-recursion-detection": "3.620.0",
+ "@aws-sdk/middleware-user-agent": "3.645.0",
+ "@aws-sdk/region-config-resolver": "3.614.0",
+ "@aws-sdk/types": "3.609.0",
+ "@aws-sdk/util-endpoints": "3.645.0",
+ "@aws-sdk/util-user-agent-browser": "3.609.0",
+ "@aws-sdk/util-user-agent-node": "3.614.0",
+ "@smithy/config-resolver": "^3.0.5",
+ "@smithy/core": "^2.4.0",
+ "@smithy/fetch-http-handler": "^3.2.4",
+ "@smithy/hash-node": "^3.0.3",
+ "@smithy/invalid-dependency": "^3.0.3",
+ "@smithy/middleware-content-length": "^3.0.5",
+ "@smithy/middleware-endpoint": "^3.1.0",
+ "@smithy/middleware-retry": "^3.0.15",
+ "@smithy/middleware-serde": "^3.0.3",
+ "@smithy/middleware-stack": "^3.0.3",
+ "@smithy/node-config-provider": "^3.1.4",
+ "@smithy/node-http-handler": "^3.1.4",
+ "@smithy/protocol-http": "^4.1.0",
+ "@smithy/smithy-client": "^3.2.0",
+ "@smithy/types": "^3.3.0",
+ "@smithy/url-parser": "^3.0.3",
+ "@smithy/util-base64": "^3.0.0",
+ "@smithy/util-body-length-browser": "^3.0.0",
+ "@smithy/util-body-length-node": "^3.0.0",
+ "@smithy/util-defaults-mode-browser": "^3.0.15",
+ "@smithy/util-defaults-mode-node": "^3.0.15",
+ "@smithy/util-endpoints": "^2.0.5",
+ "@smithy/util-middleware": "^3.0.3",
+ "@smithy/util-retry": "^3.0.3",
+ "@smithy/util-utf8": "^3.0.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/client-sso-oidc": {
+ "version": "3.645.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.645.0.tgz",
+ "integrity": "sha512-X9ULtdk3cO+1ysurEkJ1MSnu6U00qodXx+IVual+1jXX4RYY1WmQmfo7uDKf6FFkz7wW1DAqU+GJIBNQr0YH8A==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-crypto/sha256-browser": "5.2.0",
+ "@aws-crypto/sha256-js": "5.2.0",
+ "@aws-sdk/core": "3.635.0",
+ "@aws-sdk/credential-provider-node": "3.645.0",
+ "@aws-sdk/middleware-host-header": "3.620.0",
+ "@aws-sdk/middleware-logger": "3.609.0",
+ "@aws-sdk/middleware-recursion-detection": "3.620.0",
+ "@aws-sdk/middleware-user-agent": "3.645.0",
+ "@aws-sdk/region-config-resolver": "3.614.0",
+ "@aws-sdk/types": "3.609.0",
+ "@aws-sdk/util-endpoints": "3.645.0",
+ "@aws-sdk/util-user-agent-browser": "3.609.0",
+ "@aws-sdk/util-user-agent-node": "3.614.0",
+ "@smithy/config-resolver": "^3.0.5",
+ "@smithy/core": "^2.4.0",
+ "@smithy/fetch-http-handler": "^3.2.4",
+ "@smithy/hash-node": "^3.0.3",
+ "@smithy/invalid-dependency": "^3.0.3",
+ "@smithy/middleware-content-length": "^3.0.5",
+ "@smithy/middleware-endpoint": "^3.1.0",
+ "@smithy/middleware-retry": "^3.0.15",
+ "@smithy/middleware-serde": "^3.0.3",
+ "@smithy/middleware-stack": "^3.0.3",
+ "@smithy/node-config-provider": "^3.1.4",
+ "@smithy/node-http-handler": "^3.1.4",
+ "@smithy/protocol-http": "^4.1.0",
+ "@smithy/smithy-client": "^3.2.0",
+ "@smithy/types": "^3.3.0",
+ "@smithy/url-parser": "^3.0.3",
+ "@smithy/util-base64": "^3.0.0",
+ "@smithy/util-body-length-browser": "^3.0.0",
+ "@smithy/util-body-length-node": "^3.0.0",
+ "@smithy/util-defaults-mode-browser": "^3.0.15",
+ "@smithy/util-defaults-mode-node": "^3.0.15",
+ "@smithy/util-endpoints": "^2.0.5",
+ "@smithy/util-middleware": "^3.0.3",
+ "@smithy/util-retry": "^3.0.3",
+ "@smithy/util-utf8": "^3.0.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
},
"peerDependencies": {
- "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0"
+ "@aws-sdk/client-sts": "^3.645.0"
}
},
- "node_modules/@eslint-community/regexpp": {
- "version": "4.11.0",
- "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz",
- "integrity": "sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==",
+ "node_modules/@aws-sdk/client-sts": {
+ "version": "3.645.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.645.0.tgz",
+ "integrity": "sha512-6azXYtvtnAsPf2ShN9vKynIYVcJOpo6IoVmoMAVgNaBJyllP+s/RORzranYZzckqfmrudSxtct4rVapjLWuAMg==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-crypto/sha256-browser": "5.2.0",
+ "@aws-crypto/sha256-js": "5.2.0",
+ "@aws-sdk/client-sso-oidc": "3.645.0",
+ "@aws-sdk/core": "3.635.0",
+ "@aws-sdk/credential-provider-node": "3.645.0",
+ "@aws-sdk/middleware-host-header": "3.620.0",
+ "@aws-sdk/middleware-logger": "3.609.0",
+ "@aws-sdk/middleware-recursion-detection": "3.620.0",
+ "@aws-sdk/middleware-user-agent": "3.645.0",
+ "@aws-sdk/region-config-resolver": "3.614.0",
+ "@aws-sdk/types": "3.609.0",
+ "@aws-sdk/util-endpoints": "3.645.0",
+ "@aws-sdk/util-user-agent-browser": "3.609.0",
+ "@aws-sdk/util-user-agent-node": "3.614.0",
+ "@smithy/config-resolver": "^3.0.5",
+ "@smithy/core": "^2.4.0",
+ "@smithy/fetch-http-handler": "^3.2.4",
+ "@smithy/hash-node": "^3.0.3",
+ "@smithy/invalid-dependency": "^3.0.3",
+ "@smithy/middleware-content-length": "^3.0.5",
+ "@smithy/middleware-endpoint": "^3.1.0",
+ "@smithy/middleware-retry": "^3.0.15",
+ "@smithy/middleware-serde": "^3.0.3",
+ "@smithy/middleware-stack": "^3.0.3",
+ "@smithy/node-config-provider": "^3.1.4",
+ "@smithy/node-http-handler": "^3.1.4",
+ "@smithy/protocol-http": "^4.1.0",
+ "@smithy/smithy-client": "^3.2.0",
+ "@smithy/types": "^3.3.0",
+ "@smithy/url-parser": "^3.0.3",
+ "@smithy/util-base64": "^3.0.0",
+ "@smithy/util-body-length-browser": "^3.0.0",
+ "@smithy/util-body-length-node": "^3.0.0",
+ "@smithy/util-defaults-mode-browser": "^3.0.15",
+ "@smithy/util-defaults-mode-node": "^3.0.15",
+ "@smithy/util-endpoints": "^2.0.5",
+ "@smithy/util-middleware": "^3.0.3",
+ "@smithy/util-retry": "^3.0.3",
+ "@smithy/util-utf8": "^3.0.0",
+ "tslib": "^2.6.2"
+ },
"engines": {
- "node": "^12.0.0 || ^14.0.0 || >=16.0.0"
+ "node": ">=16.0.0"
}
},
- "node_modules/@eslint/eslintrc": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz",
- "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==",
+ "node_modules/@aws-sdk/core": {
+ "version": "3.635.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.635.0.tgz",
+ "integrity": "sha512-i1x/E/sgA+liUE1XJ7rj1dhyXpAKO1UKFUcTTHXok2ARjWTvszHnSXMOsB77aPbmn0fUp1JTx2kHUAZ1LVt5Bg==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
"dependencies": {
- "ajv": "^6.12.4",
- "debug": "^4.3.2",
- "espree": "^9.6.0",
- "globals": "^13.19.0",
- "ignore": "^5.2.0",
- "import-fresh": "^3.2.1",
- "js-yaml": "^4.1.0",
- "minimatch": "^3.1.2",
- "strip-json-comments": "^3.1.1"
+ "@smithy/core": "^2.4.0",
+ "@smithy/node-config-provider": "^3.1.4",
+ "@smithy/property-provider": "^3.1.3",
+ "@smithy/protocol-http": "^4.1.0",
+ "@smithy/signature-v4": "^4.1.0",
+ "@smithy/smithy-client": "^3.2.0",
+ "@smithy/types": "^3.3.0",
+ "@smithy/util-middleware": "^3.0.3",
+ "fast-xml-parser": "4.4.1",
+ "tslib": "^2.6.2"
},
"engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/credential-provider-cognito-identity": {
+ "version": "3.645.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.645.0.tgz",
+ "integrity": "sha512-Z4By/90TaYQZO1dPR1udYhegFiOlSWnZsJOYSAk4Gdny26Tqb78xVLw9R/33CzFblXC4WVSt4gizXTQ/sYyHNg==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/client-cognito-identity": "3.645.0",
+ "@aws-sdk/types": "3.609.0",
+ "@smithy/property-provider": "^3.1.3",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
},
- "funding": {
- "url": "https://opencollective.com/eslint"
+ "engines": {
+ "node": ">=16.0.0"
}
},
- "node_modules/@eslint/eslintrc/node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "node_modules/@aws-sdk/credential-provider-env": {
+ "version": "3.620.1",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.620.1.tgz",
+ "integrity": "sha512-ExuILJ2qLW5ZO+rgkNRj0xiAipKT16Rk77buvPP8csR7kkCflT/gXTyzRe/uzIiETTxM7tr8xuO9MP/DQXqkfg==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
"dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
+ "@aws-sdk/types": "3.609.0",
+ "@smithy/property-provider": "^3.1.3",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
}
},
- "node_modules/@eslint/eslintrc/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "node_modules/@aws-sdk/credential-provider-http": {
+ "version": "3.635.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.635.0.tgz",
+ "integrity": "sha512-iJyRgEjOCQlBMXqtwPLIKYc7Bsc6nqjrZybdMDenPDa+kmLg7xh8LxHsu9088e+2/wtLicE34FsJJIfzu3L82g==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/types": "3.609.0",
+ "@smithy/fetch-http-handler": "^3.2.4",
+ "@smithy/node-http-handler": "^3.1.4",
+ "@smithy/property-provider": "^3.1.3",
+ "@smithy/protocol-http": "^4.1.0",
+ "@smithy/smithy-client": "^3.2.0",
+ "@smithy/types": "^3.3.0",
+ "@smithy/util-stream": "^3.1.3",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/credential-provider-ini": {
+ "version": "3.645.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.645.0.tgz",
+ "integrity": "sha512-LlZW0qwUwNlTaAIDCNpLbPsyXvS42pRIwF92fgtCQedmdnpN3XRUC6hcwSYI7Xru3GGKp3RnceOvsdOaRJORsw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/credential-provider-env": "3.620.1",
+ "@aws-sdk/credential-provider-http": "3.635.0",
+ "@aws-sdk/credential-provider-process": "3.620.1",
+ "@aws-sdk/credential-provider-sso": "3.645.0",
+ "@aws-sdk/credential-provider-web-identity": "3.621.0",
+ "@aws-sdk/types": "3.609.0",
+ "@smithy/credential-provider-imds": "^3.2.0",
+ "@smithy/property-provider": "^3.1.3",
+ "@smithy/shared-ini-file-loader": "^3.1.4",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ },
+ "peerDependencies": {
+ "@aws-sdk/client-sts": "^3.645.0"
+ }
+ },
+ "node_modules/@aws-sdk/credential-provider-node": {
+ "version": "3.645.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.645.0.tgz",
+ "integrity": "sha512-eGFFuNvLeXjCJf5OCIuSEflxUowmK+bCS+lK4M8ofsYOEGAivdx7C0UPxNjHpvM8wKd8vpMl5phTeS9BWX5jMQ==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/credential-provider-env": "3.620.1",
+ "@aws-sdk/credential-provider-http": "3.635.0",
+ "@aws-sdk/credential-provider-ini": "3.645.0",
+ "@aws-sdk/credential-provider-process": "3.620.1",
+ "@aws-sdk/credential-provider-sso": "3.645.0",
+ "@aws-sdk/credential-provider-web-identity": "3.621.0",
+ "@aws-sdk/types": "3.609.0",
+ "@smithy/credential-provider-imds": "^3.2.0",
+ "@smithy/property-provider": "^3.1.3",
+ "@smithy/shared-ini-file-loader": "^3.1.4",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/credential-provider-process": {
+ "version": "3.620.1",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.620.1.tgz",
+ "integrity": "sha512-hWqFMidqLAkaV9G460+1at6qa9vySbjQKKc04p59OT7lZ5cO5VH5S4aI05e+m4j364MBROjjk2ugNvfNf/8ILg==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/types": "3.609.0",
+ "@smithy/property-provider": "^3.1.3",
+ "@smithy/shared-ini-file-loader": "^3.1.4",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/credential-provider-sso": {
+ "version": "3.645.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.645.0.tgz",
+ "integrity": "sha512-d6XuChAl5NCsCrUexc6AFb4efPmb9+66iwPylKG+iMTMYgO1ackfy1Q2/f35jdn0jolkPkzKsVyfzsEVoID6ew==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/client-sso": "3.645.0",
+ "@aws-sdk/token-providers": "3.614.0",
+ "@aws-sdk/types": "3.609.0",
+ "@smithy/property-provider": "^3.1.3",
+ "@smithy/shared-ini-file-loader": "^3.1.4",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/credential-provider-web-identity": {
+ "version": "3.621.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.621.0.tgz",
+ "integrity": "sha512-w7ASSyfNvcx7+bYGep3VBgC3K6vEdLmlpjT7nSIHxxQf+WSdvy+HynwJosrpZax0sK5q0D1Jpn/5q+r5lwwW6w==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/types": "3.609.0",
+ "@smithy/property-provider": "^3.1.3",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ },
+ "peerDependencies": {
+ "@aws-sdk/client-sts": "^3.621.0"
+ }
+ },
+ "node_modules/@aws-sdk/credential-providers": {
+ "version": "3.645.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.645.0.tgz",
+ "integrity": "sha512-6g9qMngrMCvHNsxmh/1urnWKrvaa2fv55b3bYwPxwJCYAvg/xc7bV8YHL7GS2rJpACG707k9G86DTW+Hab8bJA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/client-cognito-identity": "3.645.0",
+ "@aws-sdk/client-sso": "3.645.0",
+ "@aws-sdk/client-sts": "3.645.0",
+ "@aws-sdk/credential-provider-cognito-identity": "3.645.0",
+ "@aws-sdk/credential-provider-env": "3.620.1",
+ "@aws-sdk/credential-provider-http": "3.635.0",
+ "@aws-sdk/credential-provider-ini": "3.645.0",
+ "@aws-sdk/credential-provider-node": "3.645.0",
+ "@aws-sdk/credential-provider-process": "3.620.1",
+ "@aws-sdk/credential-provider-sso": "3.645.0",
+ "@aws-sdk/credential-provider-web-identity": "3.621.0",
+ "@aws-sdk/types": "3.609.0",
+ "@smithy/credential-provider-imds": "^3.2.0",
+ "@smithy/property-provider": "^3.1.3",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-bucket-endpoint": {
+ "version": "3.620.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.620.0.tgz",
+ "integrity": "sha512-eGLL0W6L3HDb3OACyetZYOWpHJ+gLo0TehQKeQyy2G8vTYXqNTeqYhuI6up9HVjBzU9eQiULVQETmgQs7TFaRg==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/types": "3.609.0",
+ "@aws-sdk/util-arn-parser": "3.568.0",
+ "@smithy/node-config-provider": "^3.1.4",
+ "@smithy/protocol-http": "^4.1.0",
+ "@smithy/types": "^3.3.0",
+ "@smithy/util-config-provider": "^3.0.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-expect-continue": {
+ "version": "3.620.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.620.0.tgz",
+ "integrity": "sha512-QXeRFMLfyQ31nAHLbiTLtk0oHzG9QLMaof5jIfqcUwnOkO8YnQdeqzakrg1Alpy/VQ7aqzIi8qypkBe2KXZz0A==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/types": "3.609.0",
+ "@smithy/protocol-http": "^4.1.0",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-flexible-checksums": {
+ "version": "3.620.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.620.0.tgz",
+ "integrity": "sha512-ftz+NW7qka2sVuwnnO1IzBku5ccP+s5qZGeRTPgrKB7OzRW85gthvIo1vQR2w+OwHFk7WJbbhhWwbCbktnP4UA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-crypto/crc32": "5.2.0",
+ "@aws-crypto/crc32c": "5.2.0",
+ "@aws-sdk/types": "3.609.0",
+ "@smithy/is-array-buffer": "^3.0.0",
+ "@smithy/protocol-http": "^4.1.0",
+ "@smithy/types": "^3.3.0",
+ "@smithy/util-utf8": "^3.0.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-host-header": {
+ "version": "3.620.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.620.0.tgz",
+ "integrity": "sha512-VMtPEZwqYrII/oUkffYsNWY9PZ9xpNJpMgmyU0rlDQ25O1c0Hk3fJmZRe6pEkAJ0omD7kLrqGl1DUjQVxpd/Rg==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/types": "3.609.0",
+ "@smithy/protocol-http": "^4.1.0",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-location-constraint": {
+ "version": "3.609.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.609.0.tgz",
+ "integrity": "sha512-xzsdoTkszGVqGVPjUmgoP7TORiByLueMHieI1fhQL888WPdqctwAx3ES6d/bA9Q/i8jnc6hs+Fjhy8UvBTkE9A==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/types": "3.609.0",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-logger": {
+ "version": "3.609.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.609.0.tgz",
+ "integrity": "sha512-S62U2dy4jMDhDFDK5gZ4VxFdWzCtLzwbYyFZx2uvPYTECkepLUfzLic2BHg2Qvtu4QjX+oGE3P/7fwaGIsGNuQ==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/types": "3.609.0",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-recursion-detection": {
+ "version": "3.620.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.620.0.tgz",
+ "integrity": "sha512-nh91S7aGK3e/o1ck64sA/CyoFw+gAYj2BDOnoNa6ouyCrVJED96ZXWbhye/fz9SgmNUZR2g7GdVpiLpMKZoI5w==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/types": "3.609.0",
+ "@smithy/protocol-http": "^4.1.0",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-sdk-s3": {
+ "version": "3.635.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.635.0.tgz",
+ "integrity": "sha512-RLdYJPEV4JL/7NBoFUs7VlP90X++5FlJdxHz0DzCjmiD3qCviKy+Cym3qg1gBgHwucs5XisuClxDrGokhAdTQw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/core": "3.635.0",
+ "@aws-sdk/types": "3.609.0",
+ "@aws-sdk/util-arn-parser": "3.568.0",
+ "@smithy/core": "^2.4.0",
+ "@smithy/node-config-provider": "^3.1.4",
+ "@smithy/protocol-http": "^4.1.0",
+ "@smithy/signature-v4": "^4.1.0",
+ "@smithy/smithy-client": "^3.2.0",
+ "@smithy/types": "^3.3.0",
+ "@smithy/util-config-provider": "^3.0.0",
+ "@smithy/util-middleware": "^3.0.3",
+ "@smithy/util-stream": "^3.1.3",
+ "@smithy/util-utf8": "^3.0.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-ssec": {
+ "version": "3.609.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.609.0.tgz",
+ "integrity": "sha512-GZSD1s7+JswWOTamVap79QiDaIV7byJFssBW68GYjyRS5EBjNfwA/8s+6uE6g39R3ojyTbYOmvcANoZEhSULXg==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/types": "3.609.0",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/middleware-user-agent": {
+ "version": "3.645.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.645.0.tgz",
+ "integrity": "sha512-NpTAtqWK+49lRuxfz7st9for80r4NriCMK0RfdJSoPFVntjsSQiQ7+2nW2XL05uVY633e9DvCAw8YatX3zd1mw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/types": "3.609.0",
+ "@aws-sdk/util-endpoints": "3.645.0",
+ "@smithy/protocol-http": "^4.1.0",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/region-config-resolver": {
+ "version": "3.614.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.614.0.tgz",
+ "integrity": "sha512-vDCeMXvic/LU0KFIUjpC3RiSTIkkvESsEfbVHiHH0YINfl8HnEqR5rj+L8+phsCeVg2+LmYwYxd5NRz4PHxt5g==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/types": "3.609.0",
+ "@smithy/node-config-provider": "^3.1.4",
+ "@smithy/types": "^3.3.0",
+ "@smithy/util-config-provider": "^3.0.0",
+ "@smithy/util-middleware": "^3.0.3",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/signature-v4-multi-region": {
+ "version": "3.635.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.635.0.tgz",
+ "integrity": "sha512-J6QY4/invOkpogCHjSaDON1hF03viPpOnsrzVuCvJMmclS/iG62R4EY0wq1alYll0YmSdmKlpJwHMWwGtqK63Q==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/middleware-sdk-s3": "3.635.0",
+ "@aws-sdk/types": "3.609.0",
+ "@smithy/protocol-http": "^4.1.0",
+ "@smithy/signature-v4": "^4.1.0",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/token-providers": {
+ "version": "3.614.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.614.0.tgz",
+ "integrity": "sha512-okItqyY6L9IHdxqs+Z116y5/nda7rHxLvROxtAJdLavWTYDydxrZstImNgGWTeVdmc0xX2gJCI77UYUTQWnhRw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/types": "3.609.0",
+ "@smithy/property-provider": "^3.1.3",
+ "@smithy/shared-ini-file-loader": "^3.1.4",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ },
+ "peerDependencies": {
+ "@aws-sdk/client-sso-oidc": "^3.614.0"
+ }
+ },
+ "node_modules/@aws-sdk/types": {
+ "version": "3.609.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.609.0.tgz",
+ "integrity": "sha512-+Tqnh9w0h2LcrUsdXyT1F8mNhXz+tVYBtP19LpeEGntmvHwa2XzvLUCWpoIAIVsHp5+HdB2X9Sn0KAtmbFXc2Q==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/util-arn-parser": {
+ "version": "3.568.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.568.0.tgz",
+ "integrity": "sha512-XUKJWWo+KOB7fbnPP0+g/o5Ulku/X53t7i/h+sPHr5xxYTJJ9CYnbToo95mzxe7xWvkLrsNtJ8L+MnNn9INs2w==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/util-endpoints": {
+ "version": "3.645.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.645.0.tgz",
+ "integrity": "sha512-Oe+xaU4ic4PB1k3pb5VTC1/MWES13IlgpaQw01bVHGfwP6Yv6zZOxizRzca2Y3E+AyR+nKD7vXtHRY+w3bi4bg==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/types": "3.609.0",
+ "@smithy/types": "^3.3.0",
+ "@smithy/util-endpoints": "^2.0.5",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/util-locate-window": {
+ "version": "3.568.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.568.0.tgz",
+ "integrity": "sha512-3nh4TINkXYr+H41QaPelCceEB2FXP3fxp93YZXB/kqJvX0U9j0N0Uk45gvsjmEPzG8XxkPEeLIfT2I1M7A6Lig==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@aws-sdk/util-user-agent-browser": {
+ "version": "3.609.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.609.0.tgz",
+ "integrity": "sha512-fojPU+mNahzQ0YHYBsx0ZIhmMA96H+ZIZ665ObU9tl+SGdbLneVZVikGve+NmHTQwHzwkFsZYYnVKAkreJLAtA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/types": "3.609.0",
+ "@smithy/types": "^3.3.0",
+ "bowser": "^2.11.0",
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@aws-sdk/util-user-agent-node": {
+ "version": "3.614.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.614.0.tgz",
+ "integrity": "sha512-15ElZT88peoHnq5TEoEtZwoXTXRxNrk60TZNdpl/TUBJ5oNJ9Dqb5Z4ryb8ofN6nm9aFf59GVAerFDz8iUoHBA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/types": "3.609.0",
+ "@smithy/node-config-provider": "^3.1.4",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ },
+ "peerDependencies": {
+ "aws-crt": ">=1.0.0"
+ },
+ "peerDependenciesMeta": {
+ "aws-crt": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@aws-sdk/xml-builder": {
+ "version": "3.609.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.609.0.tgz",
+ "integrity": "sha512-l9XxNcA4HX98rwCC2/KoiWcmEiRfZe4G+mYwDbCFT87JIMj6GBhLDkAzr/W8KAaA2IDr8Vc6J8fZPgVulxxfMA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@cspotcode/source-map-support": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz",
+ "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jridgewell/trace-mapping": "0.3.9"
+ },
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@discoveryjs/json-ext": {
+ "version": "0.5.7",
+ "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz",
+ "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=10.0.0"
+ }
+ },
+ "node_modules/@es-joy/jsdoccomment": {
+ "version": "0.46.0",
+ "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.46.0.tgz",
+ "integrity": "sha512-C3Axuq1xd/9VqFZpW4YAzOx5O9q/LP46uIQy/iNDpHG3fmPa6TBtvfglMCs3RBiBxAIi0Go97r8+jvTt55XMyQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "comment-parser": "1.4.1",
+ "esquery": "^1.6.0",
+ "jsdoc-type-pratt-parser": "~4.0.0"
+ },
+ "engines": {
+ "node": ">=16"
+ }
+ },
+ "node_modules/@eslint-community/eslint-utils": {
+ "version": "4.4.0",
+ "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz",
+ "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "eslint-visitor-keys": "^3.3.0"
+ },
+ "engines": {
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ },
+ "peerDependencies": {
+ "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0"
+ }
+ },
+ "node_modules/@eslint-community/regexpp": {
+ "version": "4.11.0",
+ "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz",
+ "integrity": "sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": "^12.0.0 || ^14.0.0 || >=16.0.0"
+ }
+ },
+ "node_modules/@eslint/eslintrc": {
+ "version": "2.1.4",
+ "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz",
+ "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ajv": "^6.12.4",
+ "debug": "^4.3.2",
+ "espree": "^9.6.0",
+ "globals": "^13.19.0",
+ "ignore": "^5.2.0",
+ "import-fresh": "^3.2.1",
+ "js-yaml": "^4.1.0",
+ "minimatch": "^3.1.2",
+ "strip-json-comments": "^3.1.1"
+ },
+ "engines": {
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/eslint"
+ }
+ },
+ "node_modules/@eslint/eslintrc/node_modules/brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "node_modules/@eslint/eslintrc/node_modules/minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/@eslint/js": {
+ "version": "8.57.0",
+ "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz",
+ "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ }
+ },
+ "node_modules/@highcharts/dashboards": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@highcharts/dashboards/-/dashboards-2.3.0.tgz",
+ "integrity": "sha512-YWL0OLsXk+uGhJ5GaA3q+kq5/AJ/FxN9o6SgCBBIkcogTlnWVTgpy/TBh+xDqlea0+Er5p8pL7HPwNuFn5wyIw==",
+ "license": "https://www.highcharts.com/license",
+ "peer": true,
+ "peerDependencies": {
+ "highcharts": ">=10.0.0"
+ }
+ },
+ "node_modules/@humanwhocodes/config-array": {
+ "version": "0.11.14",
+ "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz",
+ "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==",
+ "deprecated": "Use @eslint/config-array instead",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@humanwhocodes/object-schema": "^2.0.2",
+ "debug": "^4.3.1",
+ "minimatch": "^3.0.5"
+ },
+ "engines": {
+ "node": ">=10.10.0"
+ }
+ },
+ "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "node_modules/@humanwhocodes/config-array/node_modules/minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/@humanwhocodes/module-importer": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz",
+ "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=12.22"
+ },
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/nzakas"
+ }
+ },
+ "node_modules/@humanwhocodes/object-schema": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz",
+ "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==",
+ "deprecated": "Use @eslint/object-schema instead",
+ "dev": true,
+ "license": "BSD-3-Clause"
+ },
+ "node_modules/@jridgewell/gen-mapping": {
+ "version": "0.3.5",
+ "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
+ "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jridgewell/set-array": "^1.2.1",
+ "@jridgewell/sourcemap-codec": "^1.4.10",
+ "@jridgewell/trace-mapping": "^0.3.24"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@jridgewell/gen-mapping/node_modules/@jridgewell/trace-mapping": {
+ "version": "0.3.25",
+ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
+ "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jridgewell/resolve-uri": "^3.1.0",
+ "@jridgewell/sourcemap-codec": "^1.4.14"
+ }
+ },
+ "node_modules/@jridgewell/resolve-uri": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
+ "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@jridgewell/set-array": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz",
+ "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@jridgewell/source-map": {
+ "version": "0.3.6",
+ "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz",
+ "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jridgewell/gen-mapping": "^0.3.5",
+ "@jridgewell/trace-mapping": "^0.3.25"
+ }
+ },
+ "node_modules/@jridgewell/source-map/node_modules/@jridgewell/trace-mapping": {
+ "version": "0.3.25",
+ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
+ "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jridgewell/resolve-uri": "^3.1.0",
+ "@jridgewell/sourcemap-codec": "^1.4.14"
+ }
+ },
+ "node_modules/@jridgewell/sourcemap-codec": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz",
+ "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@jridgewell/trace-mapping": {
+ "version": "0.3.9",
+ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz",
+ "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jridgewell/resolve-uri": "^3.0.3",
+ "@jridgewell/sourcemap-codec": "^1.4.10"
+ }
+ },
+ "node_modules/@nodelib/fs.scandir": {
+ "version": "2.1.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
+ "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@nodelib/fs.stat": "2.0.5",
+ "run-parallel": "^1.1.9"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/@nodelib/fs.stat": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
+ "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/@nodelib/fs.walk": {
+ "version": "1.2.8",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
+ "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@nodelib/fs.scandir": "2.1.5",
+ "fastq": "^1.6.0"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/@pkgr/core": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz",
+ "integrity": "sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": "^12.20.0 || ^14.18.0 || >=16.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/unts"
+ }
+ },
+ "node_modules/@smithy/abort-controller": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-3.1.1.tgz",
+ "integrity": "sha512-MBJBiidoe+0cTFhyxT8g+9g7CeVccLM0IOKKUMCNQ1CNMJ/eIfoo0RTfVrXOONEI1UCN1W+zkiHSbzUNE9dZtQ==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@smithy/chunked-blob-reader": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader/-/chunked-blob-reader-3.0.0.tgz",
+ "integrity": "sha512-sbnURCwjF0gSToGlsBiAmd1lRCmSn72nu9axfJu5lIx6RUEgHu6GwTMbqCdhQSi0Pumcm5vFxsi9XWXb2mTaoA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@smithy/chunked-blob-reader-native": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader-native/-/chunked-blob-reader-native-3.0.0.tgz",
+ "integrity": "sha512-VDkpCYW+peSuM4zJip5WDfqvg2Mo/e8yxOv3VF1m11y7B8KKMKVFtmZWDe36Fvk8rGuWrPZHHXZ7rR7uM5yWyg==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/util-base64": "^3.0.0",
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@smithy/config-resolver": {
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-3.0.5.tgz",
+ "integrity": "sha512-SkW5LxfkSI1bUC74OtfBbdz+grQXYiPYolyu8VfpLIjEoN/sHVBlLeGXMQ1vX4ejkgfv6sxVbQJ32yF2cl1veA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/node-config-provider": "^3.1.4",
+ "@smithy/types": "^3.3.0",
+ "@smithy/util-config-provider": "^3.0.0",
+ "@smithy/util-middleware": "^3.0.3",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@smithy/core": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/@smithy/core/-/core-2.4.0.tgz",
+ "integrity": "sha512-cHXq+FneIF/KJbt4q4pjN186+Jf4ZB0ZOqEaZMBhT79srEyGDDBV31NqBRBjazz8ppQ1bJbDJMY9ba5wKFV36w==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/middleware-endpoint": "^3.1.0",
+ "@smithy/middleware-retry": "^3.0.15",
+ "@smithy/middleware-serde": "^3.0.3",
+ "@smithy/protocol-http": "^4.1.0",
+ "@smithy/smithy-client": "^3.2.0",
+ "@smithy/types": "^3.3.0",
+ "@smithy/util-body-length-browser": "^3.0.0",
+ "@smithy/util-middleware": "^3.0.3",
+ "@smithy/util-utf8": "^3.0.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@smithy/credential-provider-imds": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-3.2.0.tgz",
+ "integrity": "sha512-0SCIzgd8LYZ9EJxUjLXBmEKSZR/P/w6l7Rz/pab9culE/RWuqelAKGJvn5qUOl8BgX8Yj5HWM50A5hiB/RzsgA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/node-config-provider": "^3.1.4",
+ "@smithy/property-provider": "^3.1.3",
+ "@smithy/types": "^3.3.0",
+ "@smithy/url-parser": "^3.0.3",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@smithy/eventstream-codec": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-3.1.2.tgz",
+ "integrity": "sha512-0mBcu49JWt4MXhrhRAlxASNy0IjDRFU+aWNDRal9OtUJvJNiwDuyKMUONSOjLjSCeGwZaE0wOErdqULer8r7yw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-crypto/crc32": "5.2.0",
+ "@smithy/types": "^3.3.0",
+ "@smithy/util-hex-encoding": "^3.0.0",
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@smithy/eventstream-serde-browser": {
+ "version": "3.0.6",
+ "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-3.0.6.tgz",
+ "integrity": "sha512-2hM54UWQUOrki4BtsUI1WzmD13/SeaqT/AB3EUJKbcver/WgKNaiJ5y5F5XXuVe6UekffVzuUDrBZVAA3AWRpQ==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/eventstream-serde-universal": "^3.0.5",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@smithy/eventstream-serde-config-resolver": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-3.0.3.tgz",
+ "integrity": "sha512-NVTYjOuYpGfrN/VbRQgn31x73KDLfCXCsFdad8DiIc3IcdxL+dYA9zEQPyOP7Fy2QL8CPy2WE4WCUD+ZsLNfaQ==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@smithy/eventstream-serde-node": {
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-node/-/eventstream-serde-node-3.0.5.tgz",
+ "integrity": "sha512-+upXvnHNyZP095s11jF5dhGw/Ihzqwl5G+/KtMnoQOpdfC3B5HYCcDVG9EmgkhJMXJlM64PyN5gjJl0uXFQehQ==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/eventstream-serde-universal": "^3.0.5",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@smithy/eventstream-serde-universal": {
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-3.0.5.tgz",
+ "integrity": "sha512-5u/nXbyoh1s4QxrvNre9V6vfyoLWuiVvvd5TlZjGThIikc3G+uNiG9uOTCWweSRjv1asdDIWK7nOmN7le4RYHQ==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/eventstream-codec": "^3.1.2",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@smithy/fetch-http-handler": {
+ "version": "3.2.4",
+ "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-3.2.4.tgz",
+ "integrity": "sha512-kBprh5Gs5h7ug4nBWZi1FZthdqSM+T7zMmsZxx0IBvWUn7dK3diz2SHn7Bs4dQGFDk8plDv375gzenDoNwrXjg==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/protocol-http": "^4.1.0",
+ "@smithy/querystring-builder": "^3.0.3",
+ "@smithy/types": "^3.3.0",
+ "@smithy/util-base64": "^3.0.0",
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@smithy/hash-blob-browser": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-3.1.2.tgz",
+ "integrity": "sha512-hAbfqN2UbISltakCC2TP0kx4LqXBttEv2MqSPE98gVuDFMf05lU+TpC41QtqGP3Ff5A3GwZMPfKnEy0VmEUpmg==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/chunked-blob-reader": "^3.0.0",
+ "@smithy/chunked-blob-reader-native": "^3.0.0",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@smithy/hash-node": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-3.0.3.tgz",
+ "integrity": "sha512-2ctBXpPMG+B3BtWSGNnKELJ7SH9e4TNefJS0cd2eSkOOROeBnnVBnAy9LtJ8tY4vUEoe55N4CNPxzbWvR39iBw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/types": "^3.3.0",
+ "@smithy/util-buffer-from": "^3.0.0",
+ "@smithy/util-utf8": "^3.0.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@smithy/hash-stream-node": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-3.1.2.tgz",
+ "integrity": "sha512-PBgDMeEdDzi6JxKwbfBtwQG9eT9cVwsf0dZzLXoJF4sHKHs5HEo/3lJWpn6jibfJwT34I1EBXpBnZE8AxAft6g==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/types": "^3.3.0",
+ "@smithy/util-utf8": "^3.0.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@smithy/invalid-dependency": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-3.0.3.tgz",
+ "integrity": "sha512-ID1eL/zpDULmHJbflb864k72/SNOZCADRc9i7Exq3RUNJw6raWUSlFEQ+3PX3EYs++bTxZB2dE9mEHTQLv61tw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@smithy/is-array-buffer": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-3.0.0.tgz",
+ "integrity": "sha512-+Fsu6Q6C4RSJiy81Y8eApjEB5gVtM+oFKTffg+jSuwtvomJJrhUJBu2zS8wjXSgH/g1MKEWrzyChTBe6clb5FQ==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@smithy/md5-js": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-3.0.3.tgz",
+ "integrity": "sha512-O/SAkGVwpWmelpj/8yDtsaVe6sINHLB1q8YE/+ZQbDxIw3SRLbTZuRaI10K12sVoENdnHqzPp5i3/H+BcZ3m3Q==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/types": "^3.3.0",
+ "@smithy/util-utf8": "^3.0.0",
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@smithy/middleware-content-length": {
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-3.0.5.tgz",
+ "integrity": "sha512-ILEzC2eyxx6ncej3zZSwMpB5RJ0zuqH7eMptxC4KN3f+v9bqT8ohssKbhNR78k/2tWW+KS5Spw+tbPF4Ejyqvw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/protocol-http": "^4.1.0",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@smithy/middleware-endpoint": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-3.1.0.tgz",
+ "integrity": "sha512-5y5aiKCEwg9TDPB4yFE7H6tYvGFf1OJHNczeY10/EFF8Ir8jZbNntQJxMWNfeQjC1mxPsaQ6mR9cvQbf+0YeMw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/middleware-serde": "^3.0.3",
+ "@smithy/node-config-provider": "^3.1.4",
+ "@smithy/shared-ini-file-loader": "^3.1.4",
+ "@smithy/types": "^3.3.0",
+ "@smithy/url-parser": "^3.0.3",
+ "@smithy/util-middleware": "^3.0.3",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@smithy/middleware-retry": {
+ "version": "3.0.15",
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-3.0.15.tgz",
+ "integrity": "sha512-iTMedvNt1ApdvkaoE8aSDuwaoc+BhvHqttbA/FO4Ty+y/S5hW6Ci/CTScG7vam4RYJWZxdTElc3MEfHRVH6cgQ==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/node-config-provider": "^3.1.4",
+ "@smithy/protocol-http": "^4.1.0",
+ "@smithy/service-error-classification": "^3.0.3",
+ "@smithy/smithy-client": "^3.2.0",
+ "@smithy/types": "^3.3.0",
+ "@smithy/util-middleware": "^3.0.3",
+ "@smithy/util-retry": "^3.0.3",
+ "tslib": "^2.6.2",
+ "uuid": "^9.0.1"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@smithy/middleware-serde": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-3.0.3.tgz",
+ "integrity": "sha512-puUbyJQBcg9eSErFXjKNiGILJGtiqmuuNKEYNYfUD57fUl4i9+mfmThtQhvFXU0hCVG0iEJhvQUipUf+/SsFdA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@smithy/middleware-stack": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-3.0.3.tgz",
+ "integrity": "sha512-r4klY9nFudB0r9UdSMaGSyjyQK5adUyPnQN/ZM6M75phTxOdnc/AhpvGD1fQUvgmqjQEBGCwpnPbDm8pH5PapA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@smithy/node-config-provider": {
+ "version": "3.1.4",
+ "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.1.4.tgz",
+ "integrity": "sha512-YvnElQy8HR4vDcAjoy7Xkx9YT8xZP4cBXcbJSgm/kxmiQu08DwUwj8rkGnyoJTpfl/3xYHH+d8zE+eHqoDCSdQ==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/property-provider": "^3.1.3",
+ "@smithy/shared-ini-file-loader": "^3.1.4",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@smithy/node-http-handler": {
+ "version": "3.1.4",
+ "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-3.1.4.tgz",
+ "integrity": "sha512-+UmxgixgOr/yLsUxcEKGH0fMNVteJFGkmRltYFHnBMlogyFdpzn2CwqWmxOrfJELhV34v0WSlaqG1UtE1uXlJg==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/abort-controller": "^3.1.1",
+ "@smithy/protocol-http": "^4.1.0",
+ "@smithy/querystring-builder": "^3.0.3",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@smithy/property-provider": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.1.3.tgz",
+ "integrity": "sha512-zahyOVR9Q4PEoguJ/NrFP4O7SMAfYO1HLhB18M+q+Z4KFd4V2obiMnlVoUFzFLSPeVt1POyNWneHHrZaTMoc/g==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@smithy/protocol-http": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.1.0.tgz",
+ "integrity": "sha512-dPVoHYQ2wcHooGXg3LQisa1hH0e4y0pAddPMeeUPipI1tEOqL6A4N0/G7abeq+K8wrwSgjk4C0wnD1XZpJm5aA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@smithy/querystring-builder": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-3.0.3.tgz",
+ "integrity": "sha512-vyWckeUeesFKzCDaRwWLUA1Xym9McaA6XpFfAK5qI9DKJ4M33ooQGqvM4J+LalH4u/Dq9nFiC8U6Qn1qi0+9zw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/types": "^3.3.0",
+ "@smithy/util-uri-escape": "^3.0.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@smithy/querystring-parser": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-3.0.3.tgz",
+ "integrity": "sha512-zahM1lQv2YjmznnfQsWbYojFe55l0SLG/988brlLv1i8z3dubloLF+75ATRsqPBboUXsW6I9CPGE5rQgLfY0vQ==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@smithy/service-error-classification": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-3.0.3.tgz",
+ "integrity": "sha512-Jn39sSl8cim/VlkLsUhRFq/dKDnRUFlfRkvhOJaUbLBXUsLRLNf9WaxDv/z9BjuQ3A6k/qE8af1lsqcwm7+DaQ==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/types": "^3.3.0"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@smithy/shared-ini-file-loader": {
+ "version": "3.1.4",
+ "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.1.4.tgz",
+ "integrity": "sha512-qMxS4hBGB8FY2GQqshcRUy1K6k8aBWP5vwm8qKkCT3A9K2dawUwOIJfqh9Yste/Bl0J2lzosVyrXDj68kLcHXQ==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@smithy/signature-v4": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-4.1.0.tgz",
+ "integrity": "sha512-aRryp2XNZeRcOtuJoxjydO6QTaVhxx/vjaR+gx7ZjaFgrgPRyZ3HCTbfwqYj6ZWEBHkCSUfcaymKPURaByukag==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/is-array-buffer": "^3.0.0",
+ "@smithy/protocol-http": "^4.1.0",
+ "@smithy/types": "^3.3.0",
+ "@smithy/util-hex-encoding": "^3.0.0",
+ "@smithy/util-middleware": "^3.0.3",
+ "@smithy/util-uri-escape": "^3.0.0",
+ "@smithy/util-utf8": "^3.0.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@smithy/smithy-client": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-3.2.0.tgz",
+ "integrity": "sha512-pDbtxs8WOhJLJSeaF/eAbPgXg4VVYFlRcL/zoNYA5WbG3wBL06CHtBSg53ppkttDpAJ/hdiede+xApip1CwSLw==",
"dev": true,
- "license": "ISC",
+ "license": "Apache-2.0",
"dependencies": {
- "brace-expansion": "^1.1.7"
+ "@smithy/middleware-endpoint": "^3.1.0",
+ "@smithy/middleware-stack": "^3.0.3",
+ "@smithy/protocol-http": "^4.1.0",
+ "@smithy/types": "^3.3.0",
+ "@smithy/util-stream": "^3.1.3",
+ "tslib": "^2.6.2"
},
"engines": {
- "node": "*"
+ "node": ">=16.0.0"
}
},
- "node_modules/@eslint/js": {
- "version": "8.57.0",
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz",
- "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==",
+ "node_modules/@smithy/types": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.3.0.tgz",
+ "integrity": "sha512-IxvBBCTFDHbVoK7zIxqA1ZOdc4QfM5HM7rGleCuHi7L1wnKv5Pn69xXJQ9hgxH60ZVygH9/JG0jRgtUncE3QUA==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "tslib": "^2.6.2"
+ },
"engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ "node": ">=16.0.0"
}
},
- "node_modules/@highcharts/dashboards": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@highcharts/dashboards/-/dashboards-2.2.0.tgz",
- "integrity": "sha512-e/QAx1FOrpCh4UCmu6zBuRnfZi8eCDnekNQHKJb2ixxQlskSVScQjrCB/5sMMj1M6H/h5C4HX08fjyVF95zrvg==",
- "license": "https://www.highcharts.com/license",
- "peer": true,
- "peerDependencies": {
- "highcharts": ">=10.0.0"
+ "node_modules/@smithy/url-parser": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-3.0.3.tgz",
+ "integrity": "sha512-pw3VtZtX2rg+s6HMs6/+u9+hu6oY6U7IohGhVNnjbgKy86wcIsSZwgHrFR+t67Uyxvp4Xz3p3kGXXIpTNisq8A==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/querystring-parser": "^3.0.3",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
}
},
- "node_modules/@humanwhocodes/config-array": {
- "version": "0.11.14",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz",
- "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==",
- "deprecated": "Use @eslint/config-array instead",
+ "node_modules/@smithy/util-base64": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-3.0.0.tgz",
+ "integrity": "sha512-Kxvoh5Qtt0CDsfajiZOCpJxgtPHXOKwmM+Zy4waD43UoEMA+qPxxa98aE/7ZhdnBFZFXMOiBR5xbcaMhLtznQQ==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
- "@humanwhocodes/object-schema": "^2.0.2",
- "debug": "^4.3.1",
- "minimatch": "^3.0.5"
+ "@smithy/util-buffer-from": "^3.0.0",
+ "@smithy/util-utf8": "^3.0.0",
+ "tslib": "^2.6.2"
},
"engines": {
- "node": ">=10.10.0"
+ "node": ">=16.0.0"
}
},
- "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "node_modules/@smithy/util-body-length-browser": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-3.0.0.tgz",
+ "integrity": "sha512-cbjJs2A1mLYmqmyVl80uoLTJhAcfzMOyPgjwAYusWKMdLeNtzmMz9YxNl3/jRLoxSS3wkqkf0jwNdtXWtyEBaQ==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
"dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
+ "tslib": "^2.6.2"
}
},
- "node_modules/@humanwhocodes/config-array/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "node_modules/@smithy/util-body-length-node": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-3.0.0.tgz",
+ "integrity": "sha512-Tj7pZ4bUloNUP6PzwhN7K386tmSmEET9QtQg0TgdNOnxhZvCssHji+oZTUIuzxECRfG8rdm2PMw2WCFs6eIYkA==",
"dev": true,
- "license": "ISC",
+ "license": "Apache-2.0",
"dependencies": {
- "brace-expansion": "^1.1.7"
+ "tslib": "^2.6.2"
},
"engines": {
- "node": "*"
+ "node": ">=16.0.0"
}
},
- "node_modules/@humanwhocodes/module-importer": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz",
- "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==",
+ "node_modules/@smithy/util-buffer-from": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-3.0.0.tgz",
+ "integrity": "sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA==",
"dev": true,
"license": "Apache-2.0",
- "engines": {
- "node": ">=12.22"
+ "dependencies": {
+ "@smithy/is-array-buffer": "^3.0.0",
+ "tslib": "^2.6.2"
},
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/nzakas"
+ "engines": {
+ "node": ">=16.0.0"
}
},
- "node_modules/@humanwhocodes/object-schema": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz",
- "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==",
- "deprecated": "Use @eslint/object-schema instead",
- "dev": true,
- "license": "BSD-3-Clause"
- },
- "node_modules/@jridgewell/gen-mapping": {
- "version": "0.3.5",
- "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
- "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
+ "node_modules/@smithy/util-config-provider": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-3.0.0.tgz",
+ "integrity": "sha512-pbjk4s0fwq3Di/ANL+rCvJMKM5bzAQdE5S/6RL5NXgMExFAi6UgQMPOm5yPaIWPpr+EOXKXRonJ3FoxKf4mCJQ==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
"dependencies": {
- "@jridgewell/set-array": "^1.2.1",
- "@jridgewell/sourcemap-codec": "^1.4.10",
- "@jridgewell/trace-mapping": "^0.3.24"
+ "tslib": "^2.6.2"
},
"engines": {
- "node": ">=6.0.0"
+ "node": ">=16.0.0"
}
},
- "node_modules/@jridgewell/gen-mapping/node_modules/@jridgewell/trace-mapping": {
- "version": "0.3.25",
- "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
- "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
+ "node_modules/@smithy/util-defaults-mode-browser": {
+ "version": "3.0.15",
+ "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-3.0.15.tgz",
+ "integrity": "sha512-FZ4Psa3vjp8kOXcd3HJOiDPBCWtiilLl57r0cnNtq/Ga9RSDrM5ERL6xt+tO43+2af6Pn5Yp92x2n5vPuduNfg==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
"dependencies": {
- "@jridgewell/resolve-uri": "^3.1.0",
- "@jridgewell/sourcemap-codec": "^1.4.14"
+ "@smithy/property-provider": "^3.1.3",
+ "@smithy/smithy-client": "^3.2.0",
+ "@smithy/types": "^3.3.0",
+ "bowser": "^2.11.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">= 10.0.0"
}
},
- "node_modules/@jridgewell/resolve-uri": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
- "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
+ "node_modules/@smithy/util-defaults-mode-node": {
+ "version": "3.0.15",
+ "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-3.0.15.tgz",
+ "integrity": "sha512-KSyAAx2q6d0t6f/S4XB2+3+6aQacm3aLMhs9aLMqn18uYGUepbdssfogW5JQZpc6lXNBnp0tEnR5e9CEKmEd7A==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/config-resolver": "^3.0.5",
+ "@smithy/credential-provider-imds": "^3.2.0",
+ "@smithy/node-config-provider": "^3.1.4",
+ "@smithy/property-provider": "^3.1.3",
+ "@smithy/smithy-client": "^3.2.0",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
"engines": {
- "node": ">=6.0.0"
+ "node": ">= 10.0.0"
}
},
- "node_modules/@jridgewell/set-array": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz",
- "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
+ "node_modules/@smithy/util-endpoints": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-2.0.5.tgz",
+ "integrity": "sha512-ReQP0BWihIE68OAblC/WQmDD40Gx+QY1Ez8mTdFMXpmjfxSyz2fVQu3A4zXRfQU9sZXtewk3GmhfOHswvX+eNg==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/node-config-provider": "^3.1.4",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
"engines": {
- "node": ">=6.0.0"
+ "node": ">=16.0.0"
}
},
- "node_modules/@jridgewell/source-map": {
- "version": "0.3.6",
- "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz",
- "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==",
+ "node_modules/@smithy/util-hex-encoding": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-3.0.0.tgz",
+ "integrity": "sha512-eFndh1WEK5YMUYvy3lPlVmYY/fZcQE1D8oSf41Id2vCeIkKJXPcYDCZD+4+xViI6b1XSd7tE+s5AmXzz5ilabQ==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
"dependencies": {
- "@jridgewell/gen-mapping": "^0.3.5",
- "@jridgewell/trace-mapping": "^0.3.25"
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
}
},
- "node_modules/@jridgewell/source-map/node_modules/@jridgewell/trace-mapping": {
- "version": "0.3.25",
- "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
- "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
+ "node_modules/@smithy/util-middleware": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.3.tgz",
+ "integrity": "sha512-l+StyYYK/eO3DlVPbU+4Bi06Jjal+PFLSMmlWM1BEwyLxZ3aKkf1ROnoIakfaA7mC6uw3ny7JBkau4Yc+5zfWw==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
"dependencies": {
- "@jridgewell/resolve-uri": "^3.1.0",
- "@jridgewell/sourcemap-codec": "^1.4.14"
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
}
},
- "node_modules/@jridgewell/sourcemap-codec": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz",
- "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@jridgewell/trace-mapping": {
- "version": "0.3.9",
- "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz",
- "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==",
+ "node_modules/@smithy/util-retry": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-3.0.3.tgz",
+ "integrity": "sha512-AFw+hjpbtVApzpNDhbjNG5NA3kyoMs7vx0gsgmlJF4s+yz1Zlepde7J58zpIRIsdjc+emhpAITxA88qLkPF26w==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
"dependencies": {
- "@jridgewell/resolve-uri": "^3.0.3",
- "@jridgewell/sourcemap-codec": "^1.4.10"
+ "@smithy/service-error-classification": "^3.0.3",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
}
},
- "node_modules/@nodelib/fs.scandir": {
- "version": "2.1.5",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
- "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
+ "node_modules/@smithy/util-stream": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-3.1.3.tgz",
+ "integrity": "sha512-FIv/bRhIlAxC0U7xM1BCnF2aDRPq0UaelqBHkM2lsCp26mcBbgI0tCVTv+jGdsQLUmAMybua/bjDsSu8RQHbmw==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
"dependencies": {
- "@nodelib/fs.stat": "2.0.5",
- "run-parallel": "^1.1.9"
+ "@smithy/fetch-http-handler": "^3.2.4",
+ "@smithy/node-http-handler": "^3.1.4",
+ "@smithy/types": "^3.3.0",
+ "@smithy/util-base64": "^3.0.0",
+ "@smithy/util-buffer-from": "^3.0.0",
+ "@smithy/util-hex-encoding": "^3.0.0",
+ "@smithy/util-utf8": "^3.0.0",
+ "tslib": "^2.6.2"
},
"engines": {
- "node": ">= 8"
+ "node": ">=16.0.0"
}
},
- "node_modules/@nodelib/fs.stat": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
- "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
+ "node_modules/@smithy/util-uri-escape": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@smithy/util-uri-escape/-/util-uri-escape-3.0.0.tgz",
+ "integrity": "sha512-LqR7qYLgZTD7nWLBecUi4aqolw8Mhza9ArpNEQ881MJJIU2sE5iHCK6TdyqqzcDLy0OPe10IY4T8ctVdtynubg==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "tslib": "^2.6.2"
+ },
"engines": {
- "node": ">= 8"
+ "node": ">=16.0.0"
}
},
- "node_modules/@nodelib/fs.walk": {
- "version": "1.2.8",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
- "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
+ "node_modules/@smithy/util-utf8": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz",
+ "integrity": "sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
"dependencies": {
- "@nodelib/fs.scandir": "2.1.5",
- "fastq": "^1.6.0"
+ "@smithy/util-buffer-from": "^3.0.0",
+ "tslib": "^2.6.2"
},
"engines": {
- "node": ">= 8"
+ "node": ">=16.0.0"
}
},
- "node_modules/@pkgr/core": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz",
- "integrity": "sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==",
+ "node_modules/@smithy/util-waiter": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-3.1.2.tgz",
+ "integrity": "sha512-4pP0EV3iTsexDx+8PPGAKCQpd/6hsQBaQhqWzU4hqKPHN5epPsxKbvUTIiYIHTxaKt6/kEaqPBpu/ufvfbrRzw==",
"dev": true,
- "license": "MIT",
- "engines": {
- "node": "^12.20.0 || ^14.18.0 || >=16.0.0"
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/abort-controller": "^3.1.1",
+ "@smithy/types": "^3.3.0",
+ "tslib": "^2.6.2"
},
- "funding": {
- "url": "https://opencollective.com/unts"
+ "engines": {
+ "node": ">=16.0.0"
}
},
"node_modules/@tsconfig/node10": {
@@ -390,28 +2176,6 @@
"dev": true,
"license": "MIT"
},
- "node_modules/@types/eslint": {
- "version": "9.6.0",
- "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-9.6.0.tgz",
- "integrity": "sha512-gi6WQJ7cHRgZxtkQEoyHMppPjq9Kxo5Tjn2prSKDSmZrCz8TZ3jSRCeTJm+WoM+oB0WG37bRqLzaaU3q7JypGg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@types/estree": "*",
- "@types/json-schema": "*"
- }
- },
- "node_modules/@types/eslint-scope": {
- "version": "3.7.7",
- "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz",
- "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@types/eslint": "*",
- "@types/estree": "*"
- }
- },
"node_modules/@types/estree": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz",
@@ -1054,6 +2818,13 @@
"dev": true,
"license": "MIT"
},
+ "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,
+ "license": "MIT"
+ },
"node_modules/brace-expansion": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
@@ -1854,6 +3625,29 @@
"dev": true,
"license": "MIT"
},
+ "node_modules/fast-xml-parser": {
+ "version": "4.4.1",
+ "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.4.1.tgz",
+ "integrity": "sha512-xkjOecfnKGkSsOwtZ5Pz7Us/T6mrbPQrq0nh+aCO5V9nk5NLWmasAHumTKjiPJPWANe+kAZ84Jc8ooJkzZ88Sw==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/NaturalIntelligence"
+ },
+ {
+ "type": "paypal",
+ "url": "https://paypal.me/naturalintelligence"
+ }
+ ],
+ "license": "MIT",
+ "dependencies": {
+ "strnum": "^1.0.5"
+ },
+ "bin": {
+ "fxparser": "src/cli/cli.js"
+ }
+ },
"node_modules/fastest-levenshtein": {
"version": "1.0.16",
"resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz",
@@ -2831,9 +4625,9 @@
}
},
"node_modules/micromatch": {
- "version": "4.0.7",
- "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.7.tgz",
- "integrity": "sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==",
+ "version": "4.0.8",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz",
+ "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -3804,6 +5598,13 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
+ "node_modules/strnum": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz",
+ "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==",
+ "dev": true,
+ "license": "MIT"
+ },
"node_modules/supports-color": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
@@ -4158,6 +5959,20 @@
"requires-port": "^1.0.0"
}
},
+ "node_modules/uuid": {
+ "version": "9.0.1",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz",
+ "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==",
+ "dev": true,
+ "funding": [
+ "https://github.com/sponsors/broofa",
+ "https://github.com/sponsors/ctavan"
+ ],
+ "license": "MIT",
+ "bin": {
+ "uuid": "dist/bin/uuid"
+ }
+ },
"node_modules/v8-compile-cache-lib": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz",
@@ -4203,13 +6018,12 @@
}
},
"node_modules/webpack": {
- "version": "5.93.0",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.93.0.tgz",
- "integrity": "sha512-Y0m5oEY1LRuwly578VqluorkXbvXKh7U3rLoQCEO04M97ScRr44afGVkI0FQFsXzysk5OgFAxjZAb9rsGQVihA==",
+ "version": "5.94.0",
+ "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.94.0.tgz",
+ "integrity": "sha512-KcsGn50VT+06JH/iunZJedYGUJS5FGjow8wb9c0v5n1Om8O1g4L6LjtfxwlXIATopoQu+vOXXa7gYisWxCoPyg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@types/eslint-scope": "^3.7.3",
"@types/estree": "^1.0.5",
"@webassemblyjs/ast": "^1.12.1",
"@webassemblyjs/wasm-edit": "^1.12.1",
@@ -4218,7 +6032,7 @@
"acorn-import-attributes": "^1.9.5",
"browserslist": "^4.21.10",
"chrome-trace-event": "^1.0.2",
- "enhanced-resolve": "^5.17.0",
+ "enhanced-resolve": "^5.17.1",
"es-module-lexer": "^1.2.1",
"eslint-scope": "5.1.1",
"events": "^3.2.0",
diff --git a/package.json b/package.json
index 46fb1b7..8415b93 100644
--- a/package.json
+++ b/package.json
@@ -12,6 +12,8 @@
"main": "code/es-modules/index.js",
"types": "code/es-modules/index.d.ts",
"devDependencies": {
+ "@aws-sdk/client-s3": "^3.592.0",
+ "@aws-sdk/credential-providers": "^3.592.0",
"@typescript-eslint/eslint-plugin": "^7.17.0",
"@types/jsdom": "^21.1.7",
"@types/node": "^20.0.0",
@@ -22,8 +24,8 @@
"jsdom": "^24.1.1",
"lint-staged": "^15.2.7",
"ts-node": "^10.9.2",
- "typescript": "^5.5.4",
- "webpack": "^5.93.0",
+ "typescript": "~5.5.4",
+ "webpack": "^5.94.0",
"webpack-cli": "^5.1.4"
},
"lint-staged": {
@@ -35,7 +37,7 @@
]
},
"peerDependencies": {
- "@highcharts/dashboards": ">=2.2.0",
+ "@highcharts/dashboards": ">=2.3.0",
"highcharts": ">=11.4.0"
},
"scripts": {
@@ -46,6 +48,7 @@
"build:prepare": "rm -rf build/ ; mkdir -p build/package/",
"demos": "npm run webpack && npm run demos:server",
"demos:server": "(sleep 1 ; open http://localhost:8080) & node bin/connectors-morningstar demos",
+ "dryrun": "ts-node tools/dist --dryrun",
"husky:pre-commit": "npx lint-staged && npm run webpack",
"prepare": "rm -rf '.husky/_' ; husky",
"scripts": "npm run scripts:bin && npm run scripts:code",
diff --git a/src/Shared/External.ts b/src/Shared/External.ts
index 4b1ac3a..77d69ba 100644
--- a/src/Shared/External.ts
+++ b/src/Shared/External.ts
@@ -22,8 +22,13 @@
* */
+import type * as _Dashboards from '@highcharts/dashboards';
+import type * as _DataGrid from '@highcharts/dashboards/datagrid';
+
+
+import _DataConnector from '@highcharts/dashboards/es-modules/Data/Connectors/DataConnector';
import _DataConverter from '@highcharts/dashboards/es-modules/Data/Converters/DataConverter';
-import * as _Dashboards from '@highcharts/dashboards';
+import _DataTable from '@highcharts/dashboards/es-modules/Data/DataTable';
/* *
@@ -33,19 +38,13 @@ import * as _Dashboards from '@highcharts/dashboards';
* */
-export type DataConnector = _Dashboards.DataConnector;
-
-
-export type DataConnectorOptions = Partial<_Dashboards.DataConnector.UserOptions>;
-
-
-export type DataConveter = _DataConverter;
+export type DataConnectorOptions = Partial<_DataConnector.UserOptions>;
export type DataConverterOptions = Partial<_DataConverter.Options>;
-export type DataTable = _Dashboards.DataTable;
+export type DataTable = _DataTable;
/* *
@@ -55,13 +54,31 @@ export type DataTable = _Dashboards.DataTable;
* */
-export const DataConnector = _Dashboards.DataConnector;
+const Dashboards: typeof _Dashboards = globalThis.Dashboards;
+
+
+const DataGrid: typeof _DataGrid = globalThis.DataGrid;
+
+
+export const DataConnector = (
+ Dashboards?.DataConnector ||
+ DataGrid?.DataConnector ||
+ _DataConnector
+);
-export const DataConverter = _DataConverter;
+export const DataConverter = (
+ Dashboards?.DataConverter ||
+ DataGrid?.DataConverter ||
+ _DataConverter
+);
-export const DataTable = _Dashboards.DataTable;
+export const DataTable = (
+ Dashboards?.DataTable ||
+ DataGrid?.DataTable ||
+ _DataTable
+);
/* *
diff --git a/tools/README.md b/tools/README.md
new file mode 100644
index 0000000..f82454b
--- /dev/null
+++ b/tools/README.md
@@ -0,0 +1,22 @@
+Highcharts Morningstar Connectors Tools
+=======================================
+
+These scripts are used to prepare distribution of new releases.
+
+
+
+Dry-run
+-------
+
+1. Run `npm test` and make sure everything works as expected.
+
+2. Run `npx ts-node tools/dist --bucket [...] --region [...] --release [x.x.x] --dryrun`.
+
+
+
+Release
+-------
+
+1. Run `npm test` and make sure everything works as expected.
+
+2. Run `npx ts-node tools/dist --bucket [...] --region [...] --release [x.x.x]`.
diff --git a/tools/dist.ts b/tools/dist.ts
new file mode 100644
index 0000000..c02a843
--- /dev/null
+++ b/tools/dist.ts
@@ -0,0 +1,510 @@
+/* *
+ *
+ * (c) 2009-2024 Highsoft AS
+ *
+ * License: www.highcharts.com/license
+ *
+ * This should be run with `npx ts-node`.
+ *
+ * Authors:
+ * - Sophie Bremer
+ *
+ * */
+
+
+/* *
+ *
+ * Imports
+ *
+ * */
+
+
+import Args from '../src/CLI/Library/Args';
+import * as AWS from '@aws-sdk/client-s3';
+import * as AWSCredentials from '@aws-sdk/credential-providers';
+import * as ChildProcess from 'node:child_process';
+import * as FS from 'node:fs';
+import * as FSP from 'node:fs/promises';
+import * as Path from 'node:path/posix';
+import * as Stream from 'node:stream/promises';
+import * as ZLib from 'node:zlib';
+
+
+/* *
+ *
+ * Constants
+ *
+ * */
+
+
+const ARGS = Args.getArgs(process.argv);
+
+
+const BUILD_FOLDER = 'build/';
+
+
+const CDN_FOLDER = 'connectors/morningstar/';
+
+
+const CODE_FOLDER = 'code/';
+
+
+const COMPRESS_FOLDER = 'build/js-gzip/';
+
+
+const HELP = `
+Highcharts Distribute
+=====================
+
+npx ts-node tools/dist --bucket [...] --region [...] --release [x.x.x]
+
+OPTIONS:
+ --bucket S3 bucket to upload to. (required)
+ --region AWS region of S3 bucket. (required)
+ --release Release version to create. (required)
+ --dryrun Dry run without uploading. (optional)
+ --helpme This help.
+ --profile AWS profile to load from AWS credentials file. If no profile is
+ provided the default profile or standard AWS environment variables
+ for credentials will be used. (optional)
+`;
+
+
+const HTTP_MAX_AGE: Record = {
+ oneDay: 86400,
+ month: 2592001,
+ fiveYears: 157680000
+};
+
+
+const MIME_TYPE: Record = {
+ '.css': 'text/css',
+ '.eot': 'application/vnd.ms-fontobject',
+ '.gif': 'image/gif',
+ '.htm': 'text/html',
+ '.html': 'text/html',
+ '.php': 'text/plain',
+ '.ico': 'image/x-icon',
+ '.jpeg': 'image/jpeg',
+ '.jpg': 'image/jpeg',
+ '.js': 'text/javascript',
+ '.json': 'application/json',
+ '.png': 'image/png',
+ '.svg': 'image/svg+xml',
+ '.ttf': 'application/font-sfnt',
+ '.woff': 'application/font-woff',
+ '.woff2': 'application/font-woff',
+ '.zip': 'application/zip'
+};
+
+const NOW = Date.UTC(
+ new Date().getFullYear(),
+ new Date().getMonth(),
+ new Date().getDate()
+);
+
+
+/* *
+ *
+ * Functions
+ *
+ * */
+
+
+/**
+ * Update the build package and build the release.
+ */
+async function build (): Promise {
+
+ if (ARGS.dryrun) {
+ ARGS.bucket = ARGS.bucket || 'code.highcharts.com';
+ ARGS.region = ARGS.region || 'eu-west-1';
+ ARGS.release = '99.99.99-dryrun';
+ }
+
+ if (
+ ARGS.help ||
+ !validateRelease(ARGS.release)
+ ) {
+ process.stdout.write(HELP + '\n');
+ process.exit();
+ }
+
+ const dryrun = !!ARGS.dryrun;
+ const packagePath = Path.join(__dirname, '..', 'package-build.json');
+ const packageJSON =
+ JSON.parse(await FSP.readFile(packagePath, 'utf8')) as Record;
+ const originalVersion = packageJSON.version;
+
+ try {
+
+ packageJSON.version = ARGS.release;
+ await FSP.writeFile(
+ packagePath,
+ JSON.stringify(packageJSON, null, ' ') + '\n',
+ 'utf8'
+ );
+
+ log('⏳', 'Build', '...');
+ ChildProcess.execFileSync('npm', [ 'run', 'build' ], { stdio: 'inherit' });
+ log('✅', 'Build Done.');
+
+ } finally {
+
+ if (dryrun) {
+ packageJSON.version = originalVersion;
+ await FSP.writeFile(
+ packagePath,
+ JSON.stringify(packageJSON, null, ' ') + '\n',
+ 'utf8'
+ );
+ }
+
+ }
+
+}
+
+
+/**
+ * Creates compressed versions of all JS files.
+ */
+async function compress (): Promise {
+ const filePaths = FS
+ .readdirSync(CODE_FOLDER, { encoding: 'utf8', recursive: true })
+ .filter(sourcePath => (
+ Path.basename(sourcePath)[0] !== '.' &&
+ (
+ Path.extname(sourcePath) === '.js' ||
+ Path.extname(sourcePath) === '.map'
+ )
+ ));
+
+
+ log('⏳', 'Compressing ', CODE_FOLDER, 'to', COMPRESS_FOLDER, '...');
+
+ let fileTarget: string;
+
+ for (const filePath of filePaths) {
+ fileTarget = Path.join(COMPRESS_FOLDER, filePath);
+
+ if (!FS.existsSync(Path.dirname(fileTarget))) {
+ FS.mkdirSync(Path.dirname(fileTarget), { recursive: true });
+ }
+
+ await Stream.pipeline(
+ FS.createReadStream(Path.join(CODE_FOLDER, filePath)),
+ ZLib.createGzip(),
+ FS.createWriteStream(fileTarget)
+ );
+
+ log('✅', fileTarget, 'compressed');
+ }
+
+ log('✅', 'Compressing Done.');
+}
+
+
+/**
+ * Delays promise chain for given time.
+ *
+ * @param milliseconds
+ * Seconds to delay
+ *
+ * @return
+ * Promise to keep.
+ */
+function delay (milliseconds: number): Promise {
+ return new Promise(resolve => setTimeout(resolve, milliseconds));
+}
+
+
+/**
+ * Converts an array of items into chunks of sub-arrays with 100 items.
+ *
+ * @param items
+ * Array to split into chunks.
+ *
+ * @return
+ * Array of chunks.
+ */
+function getChunks (
+ items: Array
+): Array> {
+ items = items.slice();
+
+ if (items.length <= 100) {
+ return [items];
+ }
+
+ const chunks = [];
+
+ while (items.length) {
+ chunks.push(items.splice(0, 100));
+ }
+
+ return chunks;
+}
+
+
+/**
+ * Console log with current time.
+ *
+ * @param content
+ * Content to log.
+ */
+function log (...content: Array) {
+
+ content.unshift(
+ '[' +
+ (new Date()).toISOString().substring(0, 19).replace('T', ' ') +
+ ']'
+ );
+
+ process.stdout.write(content.join(' ') + '\n');
+}
+
+
+/**
+ * Uploads distribution files.
+ *
+ * @return
+ * Promise to keep.
+ */
+async function upload (): Promise {
+
+ if (
+ ARGS.help ||
+ typeof ARGS.bucket !== 'string' ||
+ typeof ARGS.region !== 'string' ||
+ !validateRelease(ARGS.release)
+ ) {
+ process.stdout.write(HELP + '\n');
+ return;
+ }
+
+ if (!ARGS.bucket) {
+ throw new Error('❌ No `--bucket s3` provided.');
+ }
+
+ if (!ARGS.region) {
+ throw new Error('❌ No `--region aws` provided.');
+ }
+
+ const sourceFolder = Path.join(BUILD_FOLDER, 'js-gzip/');
+
+ if (!FS.existsSync(sourceFolder)) {
+ throw new Error(`❌ Folder "${sourceFolder}" not found.`);
+ }
+
+ const targetStorage = new AWS.S3({
+ region: ARGS.region,
+ credentials: (
+ typeof ARGS.profile === 'string' ?
+ AWSCredentials.fromIni({ profile: ARGS.profile }) :
+ AWSCredentials.fromEnv()
+ )
+ });
+
+ if (ARGS.dryrun) {
+ // Dry run messages
+ const [major, minor] = ARGS.release.split('.');
+ const versions = [
+ ARGS.release,
+ `${major}.${minor}`,
+ major
+ ];
+
+ for (const version of versions) {
+ const cdnVersionFolder = Path.join(CDN_FOLDER, version, '/');
+ log('🚧', 'Skipping upload to', cdnVersionFolder, '... (dry run)');
+ }
+
+ log('🚧', 'Skipping upload to', CDN_FOLDER, '... (dry run)');
+ } else {
+ // Upload versioned paths
+ const [major, minor] = ARGS.release.split('.');
+ const versions = [
+ ARGS.release,
+ `${major}.${minor}`,
+ major
+ ];
+
+ for (const version of versions) {
+ const cdnVersionFolder = Path.join(CDN_FOLDER, version, '/');
+
+ log('⏳', 'Uploading to', cdnVersionFolder, '...');
+
+ await uploadFolder(
+ sourceFolder,
+ targetStorage,
+ ARGS.bucket,
+ cdnVersionFolder,
+ HTTP_MAX_AGE.fiveYears
+ );
+ }
+
+ // Upload to path without version
+ log('⏳', 'Uploading to', CDN_FOLDER, '...');
+ await uploadFolder(sourceFolder, targetStorage, ARGS.bucket, CDN_FOLDER);
+ }
+
+ log('✅', 'Uploading Done.');
+
+}
+
+
+/**
+ * Uploads a file to the bucket.
+ *
+ * @param sourceFolder
+ * Base folder of file.
+ *
+ * @param sourceFile
+ * File to upload.
+ *
+ * @param targetStorage
+ * AWS S3 instance to upload to.
+ *
+ * @param targetBucket
+ * AWS S3 bucket to upload to.
+ *
+ * @param targetFolder
+ * Base folder to upload to.
+ *
+ * @param maxAge
+ * Max age for cache control.
+ *
+ * @return
+ * Promise to keep.
+ */
+async function uploadFile (
+ sourceFolder: string,
+ sourceFile: string,
+ targetStorage: AWS.S3,
+ targetBucket: string,
+ targetFolder: string,
+ maxAge = HTTP_MAX_AGE.oneDay
+): Promise {
+ const fileContent = await FSP.readFile(sourceFile);
+ const filePath = Path.join(
+ targetFolder,
+ Path.relative(sourceFolder, sourceFile)
+ );
+ const isGzip = fileContent.readUInt16BE() === 8075;
+
+
+ await targetStorage.putObject({
+ Bucket: targetBucket,
+ Key: filePath,
+ Body: fileContent,
+ ACL: 'public-read',
+ ContentType: MIME_TYPE[Path.extname(filePath)],
+ ...(!maxAge ? {} : {
+ CacheControl: `public, max-age=${maxAge}`,
+ Expires: new Date(NOW + (maxAge * 1000))
+ }),
+ ...(!isGzip ? {} : {
+ ContentEncoding: 'gzip'
+ })
+ });
+
+ log('✅', filePath, 'uploaded');
+}
+
+
+/**
+ * Uploads a folder to the bucket.
+ *
+ * @param sourceFolder
+ * Source path to load from.
+ *
+ * @param targetStorage
+ * AWS S3 instance to upload to.
+ *
+ * @param targetBucket
+ * AWS S3 bucket to upload to.
+ *
+ * @param targetFolder
+ * Base folder to upload to.
+ *
+ * @param maxAge
+ * Max age for cache control.
+ *
+ * @return
+ * Promise to keep.
+ */
+async function uploadFolder (
+ sourceFolder: string,
+ targetStorage: AWS.S3,
+ targetBucket: string,
+ targetFolder: string,
+ maxAge?: number
+): Promise {
+
+ log('⏳', 'Start upload of', sourceFolder, '...');
+
+ const filePaths = FS
+ .readdirSync(sourceFolder, { encoding: 'utf8', recursive: true })
+ .filter(sourcePath => Path.basename(sourcePath)[0] !== '.')
+ .map(sourcePath => Path.join(sourceFolder, sourcePath))
+ .filter(sourcePath => FS.lstatSync(sourcePath).isFile());
+
+ for (const filePathsChunk of getChunks(filePaths)) {
+ await delay(1000);
+ await Promise.all(
+ filePathsChunk
+ .map(filePath => uploadFile(
+ sourceFolder,
+ filePath,
+ targetStorage,
+ targetBucket,
+ targetFolder,
+ maxAge
+ ))
+ );
+ }
+
+}
+
+
+/**
+ * Validates the release pattern.
+ *
+ * @param release
+ * Release pattern to validate.
+ *
+ * @return
+ * `true` if release pattern is valid.
+ */
+function validateRelease (
+ release: unknown
+): release is string {
+ return (
+ typeof ARGS.release === 'string' &&
+ /^\d+\.\d+\.\d+(?:-\w+)?$/su.test(ARGS.release)
+ );
+}
+
+
+/* *
+ *
+ * Runtime
+ *
+ * */
+
+build()
+ .then(() => compress())
+ .then(() => upload())
+ .then(() => log('✅', 'DONE'))
+ .catch(error => {
+
+ log('❌', 'ERROR');
+
+ process.stderr.write('' + error + '\n');
+
+ if (error instanceof Error && error.stack) {
+ process.stderr.write(error.stack + '\n');
+ }
+
+ process.exit(1);
+ });
diff --git a/webpack.config.ts b/webpack.config.ts
index bbf2b48..412aea8 100644
--- a/webpack.config.ts
+++ b/webpack.config.ts
@@ -10,7 +10,6 @@ import type { Configuration } from 'webpack';
import * as FS from 'node:fs';
import * as Path from 'node:path';
-
/* *
*
* Declarations
@@ -75,6 +74,8 @@ const externals = {
const metas: Record = {
+ /**
+ * @todo fix bridge targets
dashboards: {
filename: 'dashboards-morningstar.js',
umdNames: {
@@ -98,7 +99,7 @@ const metas: Record = {
commonjs,
root: ['Highcharts', 'Morningstar']
}
- },
+ }, */
standalone: {
filename: 'connectors-morningstar.js',
noExternals: true,
@@ -115,7 +116,7 @@ const sharedConfiguration: Configuration = {
mode: 'production',
- devtool: 'source-map',
+ devtool: 'hidden-source-map',
performance: {
hints: 'error',
@@ -136,7 +137,7 @@ const webpacks: Array = Object.keys(metas).map(variant => ({
// Path to the main file
entry: Path.resolve(projectFolder, `${sourceFolder}/index.js`),
- externals: (metas[variant].noExternals ? void 0 : externals),
+ externals,
// Name for the javascript file that is created/compiled in memory
output: {
@@ -168,27 +169,27 @@ const webpacks: Array = Object.keys(metas).map(variant => ({
for (let webpack of webpacks.slice()) {
+ const filename = '' + webpack.output?.filename;
+ const path = '' + webpack.output?.path;
+
webpack = structuredClone(webpack);
+
webpack.optimization = {
...webpack.optimization,
minimize: false
};
- if (
- typeof webpack.output === 'object' &&
- typeof webpack.output.filename === 'string' &&
- typeof webpack.output.path === 'string'
- ) {
- webpack.output.filename =
- Path.basename(webpack.output.filename, '.js') + '.src.js';
- webpack.output.path =
- Path.resolve(webpack.output.path, Path.join('..', 'code'));
- }
+
+ webpack.output!.filename = Path.basename(filename, '.js') + '.src.js';
+ webpack.output!.path = Path.resolve(path, Path.join('..', 'code'));
+
webpack.performance = {
...webpack.performance,
maxAssetSize: 1000000,
maxEntrypointSize: 1000000
};
+
webpacks.push(webpack);
+
}