diff --git a/.github/config/release.json b/.github/config/release.json index 078a8824bf..a63e81c81e 100755 --- a/.github/config/release.json +++ b/.github/config/release.json @@ -9,7 +9,6 @@ "import": false, "clone": false, "export-to-csv": false, - "migrate-rte": false, "migration": false, "seed": false, "bootstrap": false, diff --git a/.github/workflows/release-beta.yml b/.github/workflows/release-beta.yml index b11f78e37f..736dbe1a3b 100644 --- a/.github/workflows/release-beta.yml +++ b/.github/workflows/release-beta.yml @@ -243,20 +243,6 @@ jobs: package: ./packages/contentstack-export-to-csv/package.json tag: beta - # Migrate RTE - - name: Installing dependencies of migrate rte - id: migrate-rte-installation - if: ${{env.release_releaseAll == 'true' || env.release_plugins_migrate-rte == 'true'}} - working-directory: ./packages/contentstack-migrate-rte - run: npm install - - name: Publishing migrate rte (Beta) - uses: JS-DevTools/npm-publish@v3 - if: ${{ steps.migrate-rte-installation.conclusion == 'success' }} - with: - token: ${{ secrets.NPM_TOKEN }} - package: ./packages/contentstack-migrate-rte/package.json - tag: beta - # Migration - name: Installing dependencies of migration id: migration-installation diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index accc815e98..37bdc7187b 100755 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -230,19 +230,6 @@ jobs: token: ${{ secrets.NPM_TOKEN }} package: ./packages/contentstack-export-to-csv/package.json - # Migrate RTE - - name: Installing dependencies of migrate rte - id: migrate-rte-installation - if: ${{env.release_releaseAll == 'true' || env.release_plugins_migrate-rte == 'true'}} - working-directory: ./packages/contentstack-migrate-rte - run: npm install - - name: Publishing migrate rte - uses: JS-DevTools/npm-publish@v3 - if: ${{ steps.migrate-rte-installation.conclusion == 'success' }} - with: - token: ${{ secrets.NPM_TOKEN }} - package: ./packages/contentstack-migrate-rte/package.json - # Migration - name: Installing dependencies of migration id: migration-installation diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index e094553fa4..05b9244a97 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -40,10 +40,6 @@ jobs: working-directory: ./packages/contentstack-config run: npm run test - - name: Run tests for Contentstack Migrate RTE - working-directory: ./packages/contentstack-migrate-rte - run: npm run test - - name: Run tests for Contentstack Migration working-directory: ./packages/contentstack-migration run: npm run test diff --git a/.talismanrc b/.talismanrc index eefb4908d6..775859d95c 100644 --- a/.talismanrc +++ b/.talismanrc @@ -1,6 +1,6 @@ fileignoreconfig: - filename: package-lock.json - checksum: d3b93fad9630655f037e36b78fea3354f1a038988562254afdad0f6e54ece12d + checksum: 5e64367e6f00c41d8fec66e335f66202d97a0e75006c9ecd331ce8f5856e296a - filename: pnpm-lock.yaml checksum: aa6177859aaa87caf2892e8034657fd485c3abe7c13a833fd28449a1d33fa950 - filename: packages/contentstack-import-setup/test/unit/backup-handler.test.ts @@ -30,7 +30,7 @@ fileignoreconfig: - filename: packages/contentstack-import-setup/test/unit/import-setup.test.ts checksum: 1eee4f461fa5b115894d1806a14af6f45336cbe6c0392f16078bd2877fadff67 - filename: packages/contentstack-import-setup/test/unit/login-handler.test.ts - checksum: e549f9ca3a9aae0d93b7284f7e771d55c0610725ddcb4333612df2f215e92769 + checksum: 258b92de292ab1a99aef277709fb41a95e57ce294eef445f77a9edd3b93b87f4 - filename: packages/contentstack/README.md checksum: 10f580c697d0b70b813428954b946e60609f41c42e78ca95ca3232443e725615 - filename: packages/contentstack-import-setup/test/unit/modules/assets.test.ts diff --git a/MIGRATION.md b/MIGRATION.md index 34667b7adb..2eebeba746 100644 --- a/MIGRATION.md +++ b/MIGRATION.md @@ -112,6 +112,24 @@ csdx config:set:log --no-show-console-logs [2025-08-22 16:12:25] SUCCESS: Exported stack settings successfully! ``` +### 4. 🏷️ Taxonomy Migration Deprecation + +**What Changed:** +- Taxonomy migration functionality has been deprecated in 2.x.x +- The taxonomy migration script examples have been removed + +**Before (1.x.x):** +```bash +csdx cm:stacks:migration -k b*******9ca0 --file-path "../contentstack-migration/examples/taxonomies/import-taxonomies.js" --config data-dir:'./data/Taxonomy Stack_taxonomies.csv' +``` +- Taxonomy migration supports only in version 1.x.x + +**After (2.x.x-beta):** +- Taxonomy migration is no longer supported through the migration plugin +- Use the standard import/export commands for taxonomy data migration + +**Migration Action:** use the import/export commands instead. + ## Troubleshooting ### Common Issues diff --git a/package-lock.json b/package-lock.json index 2455805114..241b2c8db3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -280,53 +280,52 @@ } }, "node_modules/@aws-sdk/client-cloudfront": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-cloudfront/-/client-cloudfront-3.930.0.tgz", - "integrity": "sha512-g0jkrZRb7JKdty4sJfxc2rsoMPMujJ+o9C0KiTutuAhEmjVFEGCKeLwMoQCvANwkt1x4S7CUqAB7UOLQlUSGhQ==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cloudfront/-/client-cloudfront-3.953.0.tgz", + "integrity": "sha512-HaurEcDAQwx9QvbFuzS2Voot+74hoXxXxp2KFF3Gsy+Lf+XQw6wzMgPb0e+FVgKp7i9/8VRW1PY3pYUNb3lsCQ==", "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.930.0", - "@aws-sdk/credential-provider-node": "3.930.0", - "@aws-sdk/middleware-host-header": "3.930.0", - "@aws-sdk/middleware-logger": "3.930.0", - "@aws-sdk/middleware-recursion-detection": "3.930.0", - "@aws-sdk/middleware-user-agent": "3.930.0", - "@aws-sdk/region-config-resolver": "3.930.0", - "@aws-sdk/types": "3.930.0", - "@aws-sdk/util-endpoints": "3.930.0", - "@aws-sdk/util-user-agent-browser": "3.930.0", - "@aws-sdk/util-user-agent-node": "3.930.0", - "@aws-sdk/xml-builder": "3.930.0", - "@smithy/config-resolver": "^4.4.3", - "@smithy/core": "^3.18.2", - "@smithy/fetch-http-handler": "^5.3.6", - "@smithy/hash-node": "^4.2.5", - "@smithy/invalid-dependency": "^4.2.5", - "@smithy/middleware-content-length": "^4.2.5", - "@smithy/middleware-endpoint": "^4.3.9", - "@smithy/middleware-retry": "^4.4.9", - "@smithy/middleware-serde": "^4.2.5", - "@smithy/middleware-stack": "^4.2.5", - "@smithy/node-config-provider": "^4.3.5", - "@smithy/node-http-handler": "^4.4.5", - "@smithy/protocol-http": "^5.3.5", - "@smithy/smithy-client": "^4.9.5", - "@smithy/types": "^4.9.0", - "@smithy/url-parser": "^4.2.5", + "@aws-sdk/core": "3.953.0", + "@aws-sdk/credential-provider-node": "3.953.0", + "@aws-sdk/middleware-host-header": "3.953.0", + "@aws-sdk/middleware-logger": "3.953.0", + "@aws-sdk/middleware-recursion-detection": "3.953.0", + "@aws-sdk/middleware-user-agent": "3.953.0", + "@aws-sdk/region-config-resolver": "3.953.0", + "@aws-sdk/types": "3.953.0", + "@aws-sdk/util-endpoints": "3.953.0", + "@aws-sdk/util-user-agent-browser": "3.953.0", + "@aws-sdk/util-user-agent-node": "3.953.0", + "@smithy/config-resolver": "^4.4.4", + "@smithy/core": "^3.19.0", + "@smithy/fetch-http-handler": "^5.3.7", + "@smithy/hash-node": "^4.2.6", + "@smithy/invalid-dependency": "^4.2.6", + "@smithy/middleware-content-length": "^4.2.6", + "@smithy/middleware-endpoint": "^4.3.15", + "@smithy/middleware-retry": "^4.4.15", + "@smithy/middleware-serde": "^4.2.7", + "@smithy/middleware-stack": "^4.2.6", + "@smithy/node-config-provider": "^4.3.6", + "@smithy/node-http-handler": "^4.4.6", + "@smithy/protocol-http": "^5.3.6", + "@smithy/smithy-client": "^4.10.0", + "@smithy/types": "^4.10.0", + "@smithy/url-parser": "^4.2.6", "@smithy/util-base64": "^4.3.0", "@smithy/util-body-length-browser": "^4.2.0", "@smithy/util-body-length-node": "^4.2.1", - "@smithy/util-defaults-mode-browser": "^4.3.8", - "@smithy/util-defaults-mode-node": "^4.2.11", - "@smithy/util-endpoints": "^3.2.5", - "@smithy/util-middleware": "^4.2.5", - "@smithy/util-retry": "^4.2.5", - "@smithy/util-stream": "^4.5.6", + "@smithy/util-defaults-mode-browser": "^4.3.14", + "@smithy/util-defaults-mode-node": "^4.2.17", + "@smithy/util-endpoints": "^3.2.6", + "@smithy/util-middleware": "^4.2.6", + "@smithy/util-retry": "^4.2.6", + "@smithy/util-stream": "^4.5.7", "@smithy/util-utf8": "^4.2.0", - "@smithy/util-waiter": "^4.2.5", + "@smithy/util-waiter": "^4.2.6", "tslib": "^2.6.2" }, "engines": { @@ -334,68 +333,66 @@ } }, "node_modules/@aws-sdk/client-s3": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.930.0.tgz", - "integrity": "sha512-5ddhr3ShseFRIdNXH8bkh1CIC78p0ZXpa7HJZpONDU3JGvd/B+yHHgTr141rtgoFTaW0gjPdbdtqtPLnhlnK+A==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.953.0.tgz", + "integrity": "sha512-Lxxdhq5nt6ONulu1UHbIS0tVIar7itXv1m4TJfkVzuSm/yQzxIwnFkLtgW/0P5KIE+FS1yUoE2lS+dJBS1PLFw==", "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/core": "3.930.0", - "@aws-sdk/credential-provider-node": "3.930.0", - "@aws-sdk/middleware-bucket-endpoint": "3.930.0", - "@aws-sdk/middleware-expect-continue": "3.930.0", - "@aws-sdk/middleware-flexible-checksums": "3.930.0", - "@aws-sdk/middleware-host-header": "3.930.0", - "@aws-sdk/middleware-location-constraint": "3.930.0", - "@aws-sdk/middleware-logger": "3.930.0", - "@aws-sdk/middleware-recursion-detection": "3.930.0", - "@aws-sdk/middleware-sdk-s3": "3.930.0", - "@aws-sdk/middleware-ssec": "3.930.0", - "@aws-sdk/middleware-user-agent": "3.930.0", - "@aws-sdk/region-config-resolver": "3.930.0", - "@aws-sdk/signature-v4-multi-region": "3.930.0", - "@aws-sdk/types": "3.930.0", - "@aws-sdk/util-endpoints": "3.930.0", - "@aws-sdk/util-user-agent-browser": "3.930.0", - "@aws-sdk/util-user-agent-node": "3.930.0", - "@aws-sdk/xml-builder": "3.930.0", - "@smithy/config-resolver": "^4.4.3", - "@smithy/core": "^3.18.2", - "@smithy/eventstream-serde-browser": "^4.2.5", - "@smithy/eventstream-serde-config-resolver": "^4.3.5", - "@smithy/eventstream-serde-node": "^4.2.5", - "@smithy/fetch-http-handler": "^5.3.6", - "@smithy/hash-blob-browser": "^4.2.6", - "@smithy/hash-node": "^4.2.5", - "@smithy/hash-stream-node": "^4.2.5", - "@smithy/invalid-dependency": "^4.2.5", - "@smithy/md5-js": "^4.2.5", - "@smithy/middleware-content-length": "^4.2.5", - "@smithy/middleware-endpoint": "^4.3.9", - "@smithy/middleware-retry": "^4.4.9", - "@smithy/middleware-serde": "^4.2.5", - "@smithy/middleware-stack": "^4.2.5", - "@smithy/node-config-provider": "^4.3.5", - "@smithy/node-http-handler": "^4.4.5", - "@smithy/protocol-http": "^5.3.5", - "@smithy/smithy-client": "^4.9.5", - "@smithy/types": "^4.9.0", - "@smithy/url-parser": "^4.2.5", + "@aws-sdk/core": "3.953.0", + "@aws-sdk/credential-provider-node": "3.953.0", + "@aws-sdk/middleware-bucket-endpoint": "3.953.0", + "@aws-sdk/middleware-expect-continue": "3.953.0", + "@aws-sdk/middleware-flexible-checksums": "3.953.0", + "@aws-sdk/middleware-host-header": "3.953.0", + "@aws-sdk/middleware-location-constraint": "3.953.0", + "@aws-sdk/middleware-logger": "3.953.0", + "@aws-sdk/middleware-recursion-detection": "3.953.0", + "@aws-sdk/middleware-sdk-s3": "3.953.0", + "@aws-sdk/middleware-ssec": "3.953.0", + "@aws-sdk/middleware-user-agent": "3.953.0", + "@aws-sdk/region-config-resolver": "3.953.0", + "@aws-sdk/signature-v4-multi-region": "3.953.0", + "@aws-sdk/types": "3.953.0", + "@aws-sdk/util-endpoints": "3.953.0", + "@aws-sdk/util-user-agent-browser": "3.953.0", + "@aws-sdk/util-user-agent-node": "3.953.0", + "@smithy/config-resolver": "^4.4.4", + "@smithy/core": "^3.19.0", + "@smithy/eventstream-serde-browser": "^4.2.6", + "@smithy/eventstream-serde-config-resolver": "^4.3.6", + "@smithy/eventstream-serde-node": "^4.2.6", + "@smithy/fetch-http-handler": "^5.3.7", + "@smithy/hash-blob-browser": "^4.2.7", + "@smithy/hash-node": "^4.2.6", + "@smithy/hash-stream-node": "^4.2.6", + "@smithy/invalid-dependency": "^4.2.6", + "@smithy/md5-js": "^4.2.6", + "@smithy/middleware-content-length": "^4.2.6", + "@smithy/middleware-endpoint": "^4.3.15", + "@smithy/middleware-retry": "^4.4.15", + "@smithy/middleware-serde": "^4.2.7", + "@smithy/middleware-stack": "^4.2.6", + "@smithy/node-config-provider": "^4.3.6", + "@smithy/node-http-handler": "^4.4.6", + "@smithy/protocol-http": "^5.3.6", + "@smithy/smithy-client": "^4.10.0", + "@smithy/types": "^4.10.0", + "@smithy/url-parser": "^4.2.6", "@smithy/util-base64": "^4.3.0", "@smithy/util-body-length-browser": "^4.2.0", "@smithy/util-body-length-node": "^4.2.1", - "@smithy/util-defaults-mode-browser": "^4.3.8", - "@smithy/util-defaults-mode-node": "^4.2.11", - "@smithy/util-endpoints": "^3.2.5", - "@smithy/util-middleware": "^4.2.5", - "@smithy/util-retry": "^4.2.5", - "@smithy/util-stream": "^4.5.6", + "@smithy/util-defaults-mode-browser": "^4.3.14", + "@smithy/util-defaults-mode-node": "^4.2.17", + "@smithy/util-endpoints": "^3.2.6", + "@smithy/util-middleware": "^4.2.6", + "@smithy/util-retry": "^4.2.6", + "@smithy/util-stream": "^4.5.7", "@smithy/util-utf8": "^4.2.0", - "@smithy/util-waiter": "^4.2.5", - "@smithy/uuid": "^1.1.0", + "@smithy/util-waiter": "^4.2.6", "tslib": "^2.6.2" }, "engines": { @@ -403,48 +400,48 @@ } }, "node_modules/@aws-sdk/client-sso": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.930.0.tgz", - "integrity": "sha512-sASqgm1iMLcmi+srSH9WJuqaf3GQAKhuB4xIJwkNEPUQ+yGV8HqErOOHJLXXuTUyskcdtK+4uMaBRLT2ESm+QQ==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.953.0.tgz", + "integrity": "sha512-WU8XtORGnhy1JjTLflcGcNGU329pmwl/2claTVGp7vrgUKyreQV9Ke3BkMuUPYLOGO/Znstzc1VbUT9ORH3+WQ==", "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.930.0", - "@aws-sdk/middleware-host-header": "3.930.0", - "@aws-sdk/middleware-logger": "3.930.0", - "@aws-sdk/middleware-recursion-detection": "3.930.0", - "@aws-sdk/middleware-user-agent": "3.930.0", - "@aws-sdk/region-config-resolver": "3.930.0", - "@aws-sdk/types": "3.930.0", - "@aws-sdk/util-endpoints": "3.930.0", - "@aws-sdk/util-user-agent-browser": "3.930.0", - "@aws-sdk/util-user-agent-node": "3.930.0", - "@smithy/config-resolver": "^4.4.3", - "@smithy/core": "^3.18.2", - "@smithy/fetch-http-handler": "^5.3.6", - "@smithy/hash-node": "^4.2.5", - "@smithy/invalid-dependency": "^4.2.5", - "@smithy/middleware-content-length": "^4.2.5", - "@smithy/middleware-endpoint": "^4.3.9", - "@smithy/middleware-retry": "^4.4.9", - "@smithy/middleware-serde": "^4.2.5", - "@smithy/middleware-stack": "^4.2.5", - "@smithy/node-config-provider": "^4.3.5", - "@smithy/node-http-handler": "^4.4.5", - "@smithy/protocol-http": "^5.3.5", - "@smithy/smithy-client": "^4.9.5", - "@smithy/types": "^4.9.0", - "@smithy/url-parser": "^4.2.5", + "@aws-sdk/core": "3.953.0", + "@aws-sdk/middleware-host-header": "3.953.0", + "@aws-sdk/middleware-logger": "3.953.0", + "@aws-sdk/middleware-recursion-detection": "3.953.0", + "@aws-sdk/middleware-user-agent": "3.953.0", + "@aws-sdk/region-config-resolver": "3.953.0", + "@aws-sdk/types": "3.953.0", + "@aws-sdk/util-endpoints": "3.953.0", + "@aws-sdk/util-user-agent-browser": "3.953.0", + "@aws-sdk/util-user-agent-node": "3.953.0", + "@smithy/config-resolver": "^4.4.4", + "@smithy/core": "^3.19.0", + "@smithy/fetch-http-handler": "^5.3.7", + "@smithy/hash-node": "^4.2.6", + "@smithy/invalid-dependency": "^4.2.6", + "@smithy/middleware-content-length": "^4.2.6", + "@smithy/middleware-endpoint": "^4.3.15", + "@smithy/middleware-retry": "^4.4.15", + "@smithy/middleware-serde": "^4.2.7", + "@smithy/middleware-stack": "^4.2.6", + "@smithy/node-config-provider": "^4.3.6", + "@smithy/node-http-handler": "^4.4.6", + "@smithy/protocol-http": "^5.3.6", + "@smithy/smithy-client": "^4.10.0", + "@smithy/types": "^4.10.0", + "@smithy/url-parser": "^4.2.6", "@smithy/util-base64": "^4.3.0", "@smithy/util-body-length-browser": "^4.2.0", "@smithy/util-body-length-node": "^4.2.1", - "@smithy/util-defaults-mode-browser": "^4.3.8", - "@smithy/util-defaults-mode-node": "^4.2.11", - "@smithy/util-endpoints": "^3.2.5", - "@smithy/util-middleware": "^4.2.5", - "@smithy/util-retry": "^4.2.5", + "@smithy/util-defaults-mode-browser": "^4.3.14", + "@smithy/util-defaults-mode-node": "^4.2.17", + "@smithy/util-endpoints": "^3.2.6", + "@smithy/util-middleware": "^4.2.6", + "@smithy/util-retry": "^4.2.6", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" }, @@ -453,23 +450,23 @@ } }, "node_modules/@aws-sdk/core": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.930.0.tgz", - "integrity": "sha512-E95pWT1ayfRWg0AW2KNOCYM7QQcVeOhMRLX5PXLeDKcdxP7s3x0LHG9t7a3nPbAbvYLRrhC7O2lLWzzMCpqjsw==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.953.0.tgz", + "integrity": "sha512-hnz4ukn+XupuotZcFAyCIX41QqEWSHc8zf4gN4l5qVP2M8YCyZkLLZ5t5LaWLJkUFbOUU2w4SuGpUp+5ddtSkw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.930.0", - "@aws-sdk/xml-builder": "3.930.0", - "@smithy/core": "^3.18.2", - "@smithy/node-config-provider": "^4.3.5", - "@smithy/property-provider": "^4.2.5", - "@smithy/protocol-http": "^5.3.5", - "@smithy/signature-v4": "^5.3.5", - "@smithy/smithy-client": "^4.9.5", - "@smithy/types": "^4.9.0", + "@aws-sdk/types": "3.953.0", + "@aws-sdk/xml-builder": "3.953.0", + "@smithy/core": "^3.19.0", + "@smithy/node-config-provider": "^4.3.6", + "@smithy/property-provider": "^4.2.6", + "@smithy/protocol-http": "^5.3.6", + "@smithy/signature-v4": "^5.3.6", + "@smithy/smithy-client": "^4.10.0", + "@smithy/types": "^4.10.0", "@smithy/util-base64": "^4.3.0", - "@smithy/util-middleware": "^4.2.5", + "@smithy/util-middleware": "^4.2.6", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" }, @@ -478,16 +475,16 @@ } }, "node_modules/@aws-sdk/credential-provider-env": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.930.0.tgz", - "integrity": "sha512-5tJyxNQmm9C1XKeiWt/K67mUHtTiU2FxTkVsqVrzAMjNsF3uyA02kyTK70byh5n29oVR9XNValVEl6jk01ipYg==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.953.0.tgz", + "integrity": "sha512-ahOxDxvaKUf99LU9iRmRtPW2HLmsR+ix2WyzRGl1PpLltiRLMbKJHj5Tu2xyOsgLxs8tefK9D1j0SUgPk8GJ6g==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.930.0", - "@aws-sdk/types": "3.930.0", - "@smithy/property-provider": "^4.2.5", - "@smithy/types": "^4.9.0", + "@aws-sdk/core": "3.953.0", + "@aws-sdk/types": "3.953.0", + "@smithy/property-provider": "^4.2.6", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -495,21 +492,21 @@ } }, "node_modules/@aws-sdk/credential-provider-http": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.930.0.tgz", - "integrity": "sha512-vw565GctpOPoRJyRvgqXM8U/4RG8wYEPfhe6GHvt9dchebw0OaFeW1mmSYpwEPkMhZs9Z808dkSPScwm8WZBKA==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.953.0.tgz", + "integrity": "sha512-kYQEcJpJLiT+1ZdsQDMrIs2o3YydxdAIDdLUxbIwks1+WQz2sCr9b94ld19aMZ0rejosASO0J3dfY0lt3Tfl+Q==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.930.0", - "@aws-sdk/types": "3.930.0", - "@smithy/fetch-http-handler": "^5.3.6", - "@smithy/node-http-handler": "^4.4.5", - "@smithy/property-provider": "^4.2.5", - "@smithy/protocol-http": "^5.3.5", - "@smithy/smithy-client": "^4.9.5", - "@smithy/types": "^4.9.0", - "@smithy/util-stream": "^4.5.6", + "@aws-sdk/core": "3.953.0", + "@aws-sdk/types": "3.953.0", + "@smithy/fetch-http-handler": "^5.3.7", + "@smithy/node-http-handler": "^4.4.6", + "@smithy/property-provider": "^4.2.6", + "@smithy/protocol-http": "^5.3.6", + "@smithy/smithy-client": "^4.10.0", + "@smithy/types": "^4.10.0", + "@smithy/util-stream": "^4.5.7", "tslib": "^2.6.2" }, "engines": { @@ -517,24 +514,45 @@ } }, "node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.930.0.tgz", - "integrity": "sha512-Ua4T5MWjm7QdHi7ZSUvnPBFwBZmLFP/IEGCLacPKbUT1sQO30hlWuB/uQOj0ns4T6p7V4XsM8bz5+xsW2yRYbQ==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.953.0.tgz", + "integrity": "sha512-5cy6b3VntBvhRCanwohRtR0wbKKUd6JfIsnuXImB4JcZa2iMW5tDW0LhNangYZ9wrrM7sJol6cKHtUW9LNemFQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/core": "3.953.0", + "@aws-sdk/credential-provider-env": "3.953.0", + "@aws-sdk/credential-provider-http": "3.953.0", + "@aws-sdk/credential-provider-login": "3.953.0", + "@aws-sdk/credential-provider-process": "3.953.0", + "@aws-sdk/credential-provider-sso": "3.953.0", + "@aws-sdk/credential-provider-web-identity": "3.953.0", + "@aws-sdk/nested-clients": "3.953.0", + "@aws-sdk/types": "3.953.0", + "@smithy/credential-provider-imds": "^4.2.6", + "@smithy/property-provider": "^4.2.6", + "@smithy/shared-ini-file-loader": "^4.4.1", + "@smithy/types": "^4.10.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-login": { + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-login/-/credential-provider-login-3.953.0.tgz", + "integrity": "sha512-Drf4v7uBKnU/nY/qgQD9ZA2zD5gjQEatxQajQHUN54erDSQ2rB5ApNuTnc2cyNwaxURnQvO1J72mwO6P5lIpsg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.930.0", - "@aws-sdk/credential-provider-env": "3.930.0", - "@aws-sdk/credential-provider-http": "3.930.0", - "@aws-sdk/credential-provider-process": "3.930.0", - "@aws-sdk/credential-provider-sso": "3.930.0", - "@aws-sdk/credential-provider-web-identity": "3.930.0", - "@aws-sdk/nested-clients": "3.930.0", - "@aws-sdk/types": "3.930.0", - "@smithy/credential-provider-imds": "^4.2.5", - "@smithy/property-provider": "^4.2.5", - "@smithy/shared-ini-file-loader": "^4.4.0", - "@smithy/types": "^4.9.0", + "@aws-sdk/core": "3.953.0", + "@aws-sdk/nested-clients": "3.953.0", + "@aws-sdk/types": "3.953.0", + "@smithy/property-provider": "^4.2.6", + "@smithy/protocol-http": "^5.3.6", + "@smithy/shared-ini-file-loader": "^4.4.1", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -542,23 +560,23 @@ } }, "node_modules/@aws-sdk/credential-provider-node": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.930.0.tgz", - "integrity": "sha512-LTx5G0PsL51hNCCzOIdacGPwqnTp3X2Ck8CjLL4Kz9FTR0mfY02qEJB5y5segU1hlge/WdQYxzBBMhtMUR2h8A==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.953.0.tgz", + "integrity": "sha512-/3gUap/QwAV/U3RPStcSjdiksDboTdcz82qajfhURhtAe9iEdoKJy7vTYqg75eX7IjpgBwLGajt0URasUofrPg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/credential-provider-env": "3.930.0", - "@aws-sdk/credential-provider-http": "3.930.0", - "@aws-sdk/credential-provider-ini": "3.930.0", - "@aws-sdk/credential-provider-process": "3.930.0", - "@aws-sdk/credential-provider-sso": "3.930.0", - "@aws-sdk/credential-provider-web-identity": "3.930.0", - "@aws-sdk/types": "3.930.0", - "@smithy/credential-provider-imds": "^4.2.5", - "@smithy/property-provider": "^4.2.5", - "@smithy/shared-ini-file-loader": "^4.4.0", - "@smithy/types": "^4.9.0", + "@aws-sdk/credential-provider-env": "3.953.0", + "@aws-sdk/credential-provider-http": "3.953.0", + "@aws-sdk/credential-provider-ini": "3.953.0", + "@aws-sdk/credential-provider-process": "3.953.0", + "@aws-sdk/credential-provider-sso": "3.953.0", + "@aws-sdk/credential-provider-web-identity": "3.953.0", + "@aws-sdk/types": "3.953.0", + "@smithy/credential-provider-imds": "^4.2.6", + "@smithy/property-provider": "^4.2.6", + "@smithy/shared-ini-file-loader": "^4.4.1", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -566,17 +584,17 @@ } }, "node_modules/@aws-sdk/credential-provider-process": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.930.0.tgz", - "integrity": "sha512-lqC4lepxgwR2uZp/JROTRjkHld4/FEpSgofmiIOAfUfDx0OWSg7nkWMMS/DzlMpODqATl9tO0DcvmIJ8tMbh6g==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.953.0.tgz", + "integrity": "sha512-YeqzqxzBzXnqdzn4pBuoXeCmWrXOLIu5owAowUc4dOvHmtlpXxB3beJdQ9g/Ky6fG6iaAPKO1vrCEoHNjM85Dw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.930.0", - "@aws-sdk/types": "3.930.0", - "@smithy/property-provider": "^4.2.5", - "@smithy/shared-ini-file-loader": "^4.4.0", - "@smithy/types": "^4.9.0", + "@aws-sdk/core": "3.953.0", + "@aws-sdk/types": "3.953.0", + "@smithy/property-provider": "^4.2.6", + "@smithy/shared-ini-file-loader": "^4.4.1", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -584,19 +602,19 @@ } }, "node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.930.0.tgz", - "integrity": "sha512-LIs2aaVoFfioRokR1R9SpLS9u8CmbHhrV/gpHO1ED41qNCujn23vAxRNQmWzJ2XoCxSTwvToiHD2i6CjPA6rHQ==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.953.0.tgz", + "integrity": "sha512-Kp/49vAJweixMo3q85eVpq1JO9KgKc6A+f8/8WDkN5CkMsfKQcGJZbO5JtuJfzar4pPmRKbgOeOP1qQsOmfyfw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/client-sso": "3.930.0", - "@aws-sdk/core": "3.930.0", - "@aws-sdk/token-providers": "3.930.0", - "@aws-sdk/types": "3.930.0", - "@smithy/property-provider": "^4.2.5", - "@smithy/shared-ini-file-loader": "^4.4.0", - "@smithy/types": "^4.9.0", + "@aws-sdk/client-sso": "3.953.0", + "@aws-sdk/core": "3.953.0", + "@aws-sdk/token-providers": "3.953.0", + "@aws-sdk/types": "3.953.0", + "@smithy/property-provider": "^4.2.6", + "@smithy/shared-ini-file-loader": "^4.4.1", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -604,18 +622,18 @@ } }, "node_modules/@aws-sdk/credential-provider-web-identity": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.930.0.tgz", - "integrity": "sha512-iIYF8GReLOp16yn2bnRWrc4UOW/vVLifqyRWZ3iAGe8NFzUiHBq+Nok7Edh+2D8zt30QOCOsWCZ31uRrPuXH8w==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.953.0.tgz", + "integrity": "sha512-V8SpGVtNjQZboHjb/GLM4L3/6O/AZJFtwJ8fiBaemKMTntl8haioZlQHDklWixR9s9zthOdFsCDs1+92ndUBRw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.930.0", - "@aws-sdk/nested-clients": "3.930.0", - "@aws-sdk/types": "3.930.0", - "@smithy/property-provider": "^4.2.5", - "@smithy/shared-ini-file-loader": "^4.4.0", - "@smithy/types": "^4.9.0", + "@aws-sdk/core": "3.953.0", + "@aws-sdk/nested-clients": "3.953.0", + "@aws-sdk/types": "3.953.0", + "@smithy/property-provider": "^4.2.6", + "@smithy/shared-ini-file-loader": "^4.4.1", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -623,17 +641,17 @@ } }, "node_modules/@aws-sdk/middleware-bucket-endpoint": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.930.0.tgz", - "integrity": "sha512-cnCLWeKPYgvV4yRYPFH6pWMdUByvu2cy2BAlfsPpvnm4RaVioztyvxmQj5PmVN5fvWs5w/2d6U7le8X9iye2sA==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.953.0.tgz", + "integrity": "sha512-YHVRIOowtGIl/L2WuS83FgRlm31tU0aL1yryWaFtF+AFjA5BIeiFkxIZqaRGxJpJvFEBdohsyq6Ipv5mgWfezg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.930.0", - "@aws-sdk/util-arn-parser": "3.893.0", - "@smithy/node-config-provider": "^4.3.5", - "@smithy/protocol-http": "^5.3.5", - "@smithy/types": "^4.9.0", + "@aws-sdk/types": "3.953.0", + "@aws-sdk/util-arn-parser": "3.953.0", + "@smithy/node-config-provider": "^4.3.6", + "@smithy/protocol-http": "^5.3.6", + "@smithy/types": "^4.10.0", "@smithy/util-config-provider": "^4.2.0", "tslib": "^2.6.2" }, @@ -642,15 +660,15 @@ } }, "node_modules/@aws-sdk/middleware-expect-continue": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.930.0.tgz", - "integrity": "sha512-5HEQ+JU4DrLNWeY27wKg/jeVa8Suy62ivJHOSUf6e6hZdVIMx0h/kXS1fHEQNNiLu2IzSEP/bFXsKBaW7x7s0g==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.953.0.tgz", + "integrity": "sha512-BQTVXrypQ0rbb7au/Hk4IS5GaJZlwk6O44Rjk6Kxb0IvGQhSurNTuesFiJx1sLbf+w+T31saPtODcfQQERqhCQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.930.0", - "@smithy/protocol-http": "^5.3.5", - "@smithy/types": "^4.9.0", + "@aws-sdk/types": "3.953.0", + "@smithy/protocol-http": "^5.3.6", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -658,23 +676,23 @@ } }, "node_modules/@aws-sdk/middleware-flexible-checksums": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.930.0.tgz", - "integrity": "sha512-ZbAwwe7sqIO7tmNH3Q8rH91tZCQwBGliyXUbANoVMp1CWLPDAeaECurkmuBe/UJmoszi2U3gyhIQlbfzD2SBLw==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.953.0.tgz", + "integrity": "sha512-wpCoYg2ok0oSOupFiSPPiXvAhnXce2FkqMt/Bao+kyG3yx26NVG/4/PBftTDVCsJwuDvX/Fw8EuwbAXVmmYLCg==", "dev": true, "license": "Apache-2.0", "dependencies": { "@aws-crypto/crc32": "5.2.0", "@aws-crypto/crc32c": "5.2.0", "@aws-crypto/util": "5.2.0", - "@aws-sdk/core": "3.930.0", - "@aws-sdk/types": "3.930.0", + "@aws-sdk/core": "3.953.0", + "@aws-sdk/types": "3.953.0", "@smithy/is-array-buffer": "^4.2.0", - "@smithy/node-config-provider": "^4.3.5", - "@smithy/protocol-http": "^5.3.5", - "@smithy/types": "^4.9.0", - "@smithy/util-middleware": "^4.2.5", - "@smithy/util-stream": "^4.5.6", + "@smithy/node-config-provider": "^4.3.6", + "@smithy/protocol-http": "^5.3.6", + "@smithy/types": "^4.10.0", + "@smithy/util-middleware": "^4.2.6", + "@smithy/util-stream": "^4.5.7", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" }, @@ -683,15 +701,15 @@ } }, "node_modules/@aws-sdk/middleware-host-header": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.930.0.tgz", - "integrity": "sha512-x30jmm3TLu7b/b+67nMyoV0NlbnCVT5DI57yDrhXAPCtdgM1KtdLWt45UcHpKOm1JsaIkmYRh2WYu7Anx4MG0g==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.953.0.tgz", + "integrity": "sha512-jTGhfkONav+r4E6HLOrl5SzBqDmPByUYCkyB/c/3TVb8jX3wAZx8/q9bphKpCh+G5ARi3IdbSisgkZrJYqQ19Q==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.930.0", - "@smithy/protocol-http": "^5.3.5", - "@smithy/types": "^4.9.0", + "@aws-sdk/types": "3.953.0", + "@smithy/protocol-http": "^5.3.6", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -699,14 +717,14 @@ } }, "node_modules/@aws-sdk/middleware-location-constraint": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.930.0.tgz", - "integrity": "sha512-QIGNsNUdRICog+LYqmtJ03PLze6h2KCORXUs5td/hAEjVP5DMmubhtrGg1KhWyctACluUH/E/yrD14p4pRXxwA==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.953.0.tgz", + "integrity": "sha512-h0urrbteIQEybyIISaJfQLZ/+/lJPRzPWAQT4epvzfgv/4MKZI7K83dK7SfTwAooVKFBHiCMok2Cf0iHDt07Kw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.930.0", - "@smithy/types": "^4.9.0", + "@aws-sdk/types": "3.953.0", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -714,14 +732,14 @@ } }, "node_modules/@aws-sdk/middleware-logger": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.930.0.tgz", - "integrity": "sha512-vh4JBWzMCBW8wREvAwoSqB2geKsZwSHTa0nSt0OMOLp2PdTYIZDi0ZiVMmpfnjcx9XbS6aSluLv9sKx4RrG46A==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.953.0.tgz", + "integrity": "sha512-PlWdVYgcuptkIC0ZKqVUhWNtSHXJSx7U9V8J7dJjRmsXC40X7zpEycvrkzDMJjeTDGcCceYbyYAg/4X1lkcIMw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.930.0", - "@smithy/types": "^4.9.0", + "@aws-sdk/types": "3.953.0", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -729,16 +747,16 @@ } }, "node_modules/@aws-sdk/middleware-recursion-detection": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.930.0.tgz", - "integrity": "sha512-gv0sekNpa2MBsIhm2cjP3nmYSfI4nscx/+K9u9ybrWZBWUIC4kL2sV++bFjjUz4QxUIlvKByow3/a9ARQyCu7Q==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.953.0.tgz", + "integrity": "sha512-cmIJx0gWeesUKK4YwgE+VQL3mpACr3/J24fbwnc1Z5tntC86b+HQFzU5vsBDw6lLwyD46dBgWdsXFh1jL+ZaFw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.930.0", - "@aws/lambda-invoke-store": "^0.1.1", - "@smithy/protocol-http": "^5.3.5", - "@smithy/types": "^4.9.0", + "@aws-sdk/types": "3.953.0", + "@aws/lambda-invoke-store": "^0.2.2", + "@smithy/protocol-http": "^5.3.6", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -746,24 +764,24 @@ } }, "node_modules/@aws-sdk/middleware-sdk-s3": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.930.0.tgz", - "integrity": "sha512-bnVK0xVVmrPyKTbV5MgG6KP7MPe87GngBPD5MrYj9kWmGrJIvnt0qer0UIgWAnsyCi7XrTfw7SMgYRpSxOYEMw==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.953.0.tgz", + "integrity": "sha512-qubXS4GeDdoF7nqq2KEqW6jG7OjifwNfb/m6o5b6o7ZF2OSBr1MqyLykDWqnLjLI4NmM4qRPl5oTDGV0kBqoDA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.930.0", - "@aws-sdk/types": "3.930.0", - "@aws-sdk/util-arn-parser": "3.893.0", - "@smithy/core": "^3.18.2", - "@smithy/node-config-provider": "^4.3.5", - "@smithy/protocol-http": "^5.3.5", - "@smithy/signature-v4": "^5.3.5", - "@smithy/smithy-client": "^4.9.5", - "@smithy/types": "^4.9.0", + "@aws-sdk/core": "3.953.0", + "@aws-sdk/types": "3.953.0", + "@aws-sdk/util-arn-parser": "3.953.0", + "@smithy/core": "^3.19.0", + "@smithy/node-config-provider": "^4.3.6", + "@smithy/protocol-http": "^5.3.6", + "@smithy/signature-v4": "^5.3.6", + "@smithy/smithy-client": "^4.10.0", + "@smithy/types": "^4.10.0", "@smithy/util-config-provider": "^4.2.0", - "@smithy/util-middleware": "^4.2.5", - "@smithy/util-stream": "^4.5.6", + "@smithy/util-middleware": "^4.2.6", + "@smithy/util-stream": "^4.5.7", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" }, @@ -772,14 +790,14 @@ } }, "node_modules/@aws-sdk/middleware-ssec": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.930.0.tgz", - "integrity": "sha512-N2/SvodmaDS6h7CWfuapt3oJyn1T2CBz0CsDIiTDv9cSagXAVFjPdm2g4PFJqrNBeqdDIoYBnnta336HmamWHg==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.953.0.tgz", + "integrity": "sha512-OrhG1kcQ9zZh3NS3RovR028N0+UndQ957zF1k5HPLeFLwFwQN1uPOufzzPzAyXIIKtR69ARFsQI4mstZS4DMvw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.930.0", - "@smithy/types": "^4.9.0", + "@aws-sdk/types": "3.953.0", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -787,18 +805,18 @@ } }, "node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.930.0.tgz", - "integrity": "sha512-UUItqy02biaHoZDd1Z2CskFon3Lej15ZCIZzW4n2lsJmgLWNvz21jtFA8DQny7ZgCLAOOXI8YK3VLZptZWtIcg==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.953.0.tgz", + "integrity": "sha512-xZSU54cEHlIvRTUewyTAajb4WJPdbBd1mIaDYOzac07+vsfMuCREQ5CheQ3inoBfqske7QOX+mIjLpVV4azAnw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.930.0", - "@aws-sdk/types": "3.930.0", - "@aws-sdk/util-endpoints": "3.930.0", - "@smithy/core": "^3.18.2", - "@smithy/protocol-http": "^5.3.5", - "@smithy/types": "^4.9.0", + "@aws-sdk/core": "3.953.0", + "@aws-sdk/types": "3.953.0", + "@aws-sdk/util-endpoints": "3.953.0", + "@smithy/core": "^3.19.0", + "@smithy/protocol-http": "^5.3.6", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -806,48 +824,48 @@ } }, "node_modules/@aws-sdk/nested-clients": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/nested-clients/-/nested-clients-3.930.0.tgz", - "integrity": "sha512-eEDjTVXNiDkoV0ZV+X+WV40GTpF70xZmDW13CQzQF7rzOC2iFjtTRU+F7MUhy/Vs+e9KvDgiuCDecITtaOXUNw==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/nested-clients/-/nested-clients-3.953.0.tgz", + "integrity": "sha512-YEBI0b/4ezNkw5W4+RBRUoueFzqEPPrnkh/3LBqeJ7RWZTymBhxlpoLo6Gfxw9LxtDgv2vZ5K5rgC4/6Ly8ADg==", "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.930.0", - "@aws-sdk/middleware-host-header": "3.930.0", - "@aws-sdk/middleware-logger": "3.930.0", - "@aws-sdk/middleware-recursion-detection": "3.930.0", - "@aws-sdk/middleware-user-agent": "3.930.0", - "@aws-sdk/region-config-resolver": "3.930.0", - "@aws-sdk/types": "3.930.0", - "@aws-sdk/util-endpoints": "3.930.0", - "@aws-sdk/util-user-agent-browser": "3.930.0", - "@aws-sdk/util-user-agent-node": "3.930.0", - "@smithy/config-resolver": "^4.4.3", - "@smithy/core": "^3.18.2", - "@smithy/fetch-http-handler": "^5.3.6", - "@smithy/hash-node": "^4.2.5", - "@smithy/invalid-dependency": "^4.2.5", - "@smithy/middleware-content-length": "^4.2.5", - "@smithy/middleware-endpoint": "^4.3.9", - "@smithy/middleware-retry": "^4.4.9", - "@smithy/middleware-serde": "^4.2.5", - "@smithy/middleware-stack": "^4.2.5", - "@smithy/node-config-provider": "^4.3.5", - "@smithy/node-http-handler": "^4.4.5", - "@smithy/protocol-http": "^5.3.5", - "@smithy/smithy-client": "^4.9.5", - "@smithy/types": "^4.9.0", - "@smithy/url-parser": "^4.2.5", + "@aws-sdk/core": "3.953.0", + "@aws-sdk/middleware-host-header": "3.953.0", + "@aws-sdk/middleware-logger": "3.953.0", + "@aws-sdk/middleware-recursion-detection": "3.953.0", + "@aws-sdk/middleware-user-agent": "3.953.0", + "@aws-sdk/region-config-resolver": "3.953.0", + "@aws-sdk/types": "3.953.0", + "@aws-sdk/util-endpoints": "3.953.0", + "@aws-sdk/util-user-agent-browser": "3.953.0", + "@aws-sdk/util-user-agent-node": "3.953.0", + "@smithy/config-resolver": "^4.4.4", + "@smithy/core": "^3.19.0", + "@smithy/fetch-http-handler": "^5.3.7", + "@smithy/hash-node": "^4.2.6", + "@smithy/invalid-dependency": "^4.2.6", + "@smithy/middleware-content-length": "^4.2.6", + "@smithy/middleware-endpoint": "^4.3.15", + "@smithy/middleware-retry": "^4.4.15", + "@smithy/middleware-serde": "^4.2.7", + "@smithy/middleware-stack": "^4.2.6", + "@smithy/node-config-provider": "^4.3.6", + "@smithy/node-http-handler": "^4.4.6", + "@smithy/protocol-http": "^5.3.6", + "@smithy/smithy-client": "^4.10.0", + "@smithy/types": "^4.10.0", + "@smithy/url-parser": "^4.2.6", "@smithy/util-base64": "^4.3.0", "@smithy/util-body-length-browser": "^4.2.0", "@smithy/util-body-length-node": "^4.2.1", - "@smithy/util-defaults-mode-browser": "^4.3.8", - "@smithy/util-defaults-mode-node": "^4.2.11", - "@smithy/util-endpoints": "^3.2.5", - "@smithy/util-middleware": "^4.2.5", - "@smithy/util-retry": "^4.2.5", + "@smithy/util-defaults-mode-browser": "^4.3.14", + "@smithy/util-defaults-mode-node": "^4.2.17", + "@smithy/util-endpoints": "^3.2.6", + "@smithy/util-middleware": "^4.2.6", + "@smithy/util-retry": "^4.2.6", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" }, @@ -856,16 +874,16 @@ } }, "node_modules/@aws-sdk/region-config-resolver": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.930.0.tgz", - "integrity": "sha512-KL2JZqH6aYeQssu1g1KuWsReupdfOoxD6f1as2VC+rdwYFUu4LfzMsFfXnBvvQWWqQ7rZHWOw1T+o5gJmg7Dzw==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.953.0.tgz", + "integrity": "sha512-5MJgnsc+HLO+le0EK1cy92yrC7kyhGZSpaq8PcQvKs9qtXCXT5Tb6tMdkr5Y07JxYsYOV1omWBynvL6PWh08tQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.930.0", - "@smithy/config-resolver": "^4.4.3", - "@smithy/node-config-provider": "^4.3.5", - "@smithy/types": "^4.9.0", + "@aws-sdk/types": "3.953.0", + "@smithy/config-resolver": "^4.4.4", + "@smithy/node-config-provider": "^4.3.6", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -873,17 +891,17 @@ } }, "node_modules/@aws-sdk/signature-v4-multi-region": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.930.0.tgz", - "integrity": "sha512-UOAq1ftbrZc9HRP/nG970OONNykIDWunjth9GvGDODkW0FR7DHJWBmTwj61ZnrSiuSParp1eQfa+JsZ8eXNPcw==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.953.0.tgz", + "integrity": "sha512-9xDZTrUveWHLJDiXWW7UdrjtdoqlWijQlxIWRMAlxruqdXJDSRkn6taSAs7fGRwHJfxjiDsn84Fcqwx5Lw55zg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-sdk-s3": "3.930.0", - "@aws-sdk/types": "3.930.0", - "@smithy/protocol-http": "^5.3.5", - "@smithy/signature-v4": "^5.3.5", - "@smithy/types": "^4.9.0", + "@aws-sdk/middleware-sdk-s3": "3.953.0", + "@aws-sdk/types": "3.953.0", + "@smithy/protocol-http": "^5.3.6", + "@smithy/signature-v4": "^5.3.6", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -891,18 +909,18 @@ } }, "node_modules/@aws-sdk/token-providers": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.930.0.tgz", - "integrity": "sha512-K+fJFJXA2Tdx10WhhTm+xQmf1WDHu14rUutByyqx6W0iW2rhtl3YeRr188LWSU3/hpz7BPyvigaAb0QyRti6FQ==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.953.0.tgz", + "integrity": "sha512-4FWWR3lDDuIftmCEWpGejfkJu2J1VG2MUktChQshADXABfVfM0fsT7OYlO7Sy106nOe9upE4uQTWXg9YT/6ssw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.930.0", - "@aws-sdk/nested-clients": "3.930.0", - "@aws-sdk/types": "3.930.0", - "@smithy/property-provider": "^4.2.5", - "@smithy/shared-ini-file-loader": "^4.4.0", - "@smithy/types": "^4.9.0", + "@aws-sdk/core": "3.953.0", + "@aws-sdk/nested-clients": "3.953.0", + "@aws-sdk/types": "3.953.0", + "@smithy/property-provider": "^4.2.6", + "@smithy/shared-ini-file-loader": "^4.4.1", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -910,13 +928,13 @@ } }, "node_modules/@aws-sdk/types": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.930.0.tgz", - "integrity": "sha512-we/vaAgwlEFW7IeftmCLlLMw+6hFs3DzZPJw7lVHbj/5HJ0bz9gndxEsS2lQoeJ1zhiiLqAqvXxmM43s0MBg0A==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.953.0.tgz", + "integrity": "sha512-M9Iwg9kTyqTErI0vOTVVpcnTHWzS3VplQppy8MuL02EE+mJ0BIwpWfsaAPQW+/XnVpdNpWZTsHcNE29f1+hR8g==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.9.0", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -924,9 +942,9 @@ } }, "node_modules/@aws-sdk/util-arn-parser": { - "version": "3.893.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.893.0.tgz", - "integrity": "sha512-u8H4f2Zsi19DGnwj5FSZzDMhytYF/bCh37vAtBsn3cNDL3YG578X5oc+wSX54pM3tOxS+NY7tvOAo52SW7koUA==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.953.0.tgz", + "integrity": "sha512-9hqdKkn4OvYzzaLryq2xnwcrPc8ziY34i9szUdgBfSqEC6pBxbY9/lLXmrgzfwMSL2Z7/v2go4Od0p5eukKLMQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -937,16 +955,16 @@ } }, "node_modules/@aws-sdk/util-endpoints": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.930.0.tgz", - "integrity": "sha512-M2oEKBzzNAYr136RRc6uqw3aWlwCxqTP1Lawps9E1d2abRPvl1p1ztQmmXp1Ak4rv8eByIZ+yQyKQ3zPdRG5dw==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.953.0.tgz", + "integrity": "sha512-rjaS6jrFksopXvNg6YeN+D1lYwhcByORNlFuYesFvaQNtPOufbE5tJL4GJ3TMXyaY0uFR28N5BHHITPyWWfH/g==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.930.0", - "@smithy/types": "^4.9.0", - "@smithy/url-parser": "^4.2.5", - "@smithy/util-endpoints": "^3.2.5", + "@aws-sdk/types": "3.953.0", + "@smithy/types": "^4.10.0", + "@smithy/url-parser": "^4.2.6", + "@smithy/util-endpoints": "^3.2.6", "tslib": "^2.6.2" }, "engines": { @@ -954,9 +972,9 @@ } }, "node_modules/@aws-sdk/util-locate-window": { - "version": "3.893.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.893.0.tgz", - "integrity": "sha512-T89pFfgat6c8nMmpI8eKjBcDcgJq36+m9oiXbcUzeU55MP9ZuGgBomGjGnHaEyF36jenW9gmg3NfZDm0AO2XPg==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.953.0.tgz", + "integrity": "sha512-mPxK+I1LcrgC/RSa3G5AMAn8eN2Ay0VOgw8lSRmV1jCtO+iYvNeCqOdxoJUjOW6I5BA4niIRWqVORuRP07776Q==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -967,29 +985,29 @@ } }, "node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.930.0.tgz", - "integrity": "sha512-q6lCRm6UAe+e1LguM5E4EqM9brQlDem4XDcQ87NzEvlTW6GzmNCO0w1jS0XgCFXQHjDxjdlNFX+5sRbHijwklg==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.953.0.tgz", + "integrity": "sha512-UF5NeqYesWuFao+u7LJvpV1SJCaLml5BtFZKUdTnNNMeN6jvV+dW/eQoFGpXF94RCqguX0XESmRuRRPQp+/rzQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.930.0", - "@smithy/types": "^4.9.0", + "@aws-sdk/types": "3.953.0", + "@smithy/types": "^4.10.0", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, "node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.930.0.tgz", - "integrity": "sha512-tYc5uFKogn0vLukeZ6Zz2dR1/WiTjxZH7+Jjoce6aEYgRVfyrDje1POFb7YxhNZ7Pp1WzHCuwW2KgkmMoYVbxQ==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.953.0.tgz", + "integrity": "sha512-HjJ0Nq/57kg0QCjt8mwBAK6C34njKezy9ItUNcrWITzrBZv7ikQtyqM1pindAIzgLaBb7ly/0kbJqMY+NPbcJA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-user-agent": "3.930.0", - "@aws-sdk/types": "3.930.0", - "@smithy/node-config-provider": "^4.3.5", - "@smithy/types": "^4.9.0", + "@aws-sdk/middleware-user-agent": "3.953.0", + "@aws-sdk/types": "3.953.0", + "@smithy/node-config-provider": "^4.3.6", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -1005,13 +1023,13 @@ } }, "node_modules/@aws-sdk/xml-builder": { - "version": "3.930.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.930.0.tgz", - "integrity": "sha512-YIfkD17GocxdmlUVc3ia52QhcWuRIUJonbF8A2CYfcWNV3HzvAqpcPeC0bYUhkK+8e8YO1ARnLKZQE0TlwzorA==", + "version": "3.953.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.953.0.tgz", + "integrity": "sha512-Zmrj21jQ2OeOJGr9spPiN00aQvXa/WUqRXcTVENhrMt+OFoSOfDFpYhUj9NQ09QmQ8KMWFoWuWW6iKurNqLvAA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.9.0", + "@smithy/types": "^4.10.0", "fast-xml-parser": "5.2.5", "tslib": "^2.6.2" }, @@ -1020,9 +1038,9 @@ } }, "node_modules/@aws/lambda-invoke-store": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@aws/lambda-invoke-store/-/lambda-invoke-store-0.1.1.tgz", - "integrity": "sha512-RcLam17LdlbSOSp9VxmUu1eI6Mwxp+OwhD2QhiSNmNCzoDb0EeUXTD2n/WbcnrAYMGlmf05th6QYq23VqvJqpA==", + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@aws/lambda-invoke-store/-/lambda-invoke-store-0.2.2.tgz", + "integrity": "sha512-C0NBLsIqzDIae8HFw9YIrIBsbc0xTiOtt7fAukGPnqQ/+zZNaq+4jhuccltK0QuWHBnNm/a6kLIRA6GFiM10eg==", "dev": true, "license": "Apache-2.0", "engines": { @@ -1692,10 +1710,6 @@ "resolved": "packages/contentstack-import-setup", "link": true }, - "node_modules/@contentstack/cli-cm-migrate-rte": { - "resolved": "packages/contentstack-migrate-rte", - "link": true - }, "node_modules/@contentstack/cli-cm-seed": { "resolved": "packages/contentstack-seed", "link": true @@ -1713,12 +1727,12 @@ "link": true }, "node_modules/@contentstack/cli-launch": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/@contentstack/cli-launch/-/cli-launch-1.9.3.tgz", - "integrity": "sha512-sSaZnxHDiFZjbzEFhFDIT9dvW/6rAXSKS8RO4TsoJk/ed2noUN4gVarAmAZt2B7qy7ICoPoXREIVOqi6FbaZqQ==", + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@contentstack/cli-launch/-/cli-launch-1.9.4.tgz", + "integrity": "sha512-Wev1zDBZ61eJSOGEaj08LZXkK6+sX7TM9TBxNd5ZHc0tkl4y8gDtuoo+wfaCV0/WcXmglUHazFX4ZgDYyB9UDQ==", "license": "MIT", "dependencies": { - "@apollo/client": "^3.11.8", + "@apollo/client": "^3.14.0", "@contentstack/cli-command": "^1.4.0", "@contentstack/cli-utilities": "^1.12.0", "@oclif/core": "^4.2.7", @@ -1735,7 +1749,7 @@ "cross-fetch": "^4.1.0", "dotenv": "^16.4.7", "express": "^4.21.1", - "form-data": "^4.0.0", + "form-data": "4.0.4", "graphql": "^16.9.0", "ini": "^3.0.1", "lodash": "^4.17.21", @@ -1762,35 +1776,6 @@ "resolved": "packages/contentstack-variants", "link": true }, - "node_modules/@contentstack/json-rte-serializer": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@contentstack/json-rte-serializer/-/json-rte-serializer-2.1.0.tgz", - "integrity": "sha512-klw+0kH5UtL4mHGDP7A8olZIaA4CoyAVzveYqso8uxeDXKkTvwF8D5HBhCqQLr0NXwhofl+FF431cbzGZ3TNCg==", - "license": "MIT", - "dependencies": { - "array-flat-polyfill": "^1.0.1", - "lodash": "^4.17.21", - "lodash.clonedeep": "^4.5.0", - "lodash.flatten": "^4.4.0", - "lodash.isempty": "^4.4.0", - "lodash.isequal": "^4.5.0", - "lodash.isobject": "^3.0.2", - "lodash.isplainobject": "^4.0.6", - "lodash.isundefined": "^3.0.1", - "lodash.kebabcase": "^4.1.1", - "slate": "^0.103.0", - "uuid": "^8.3.2" - } - }, - "node_modules/@contentstack/json-rte-serializer/node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "license": "MIT", - "bin": { - "uuid": "dist/bin/uuid" - } - }, "node_modules/@contentstack/management": { "version": "1.22.0", "resolved": "https://registry.npmjs.org/@contentstack/management/-/management-1.22.0.tgz", @@ -1820,10 +1805,9 @@ } }, "node_modules/@contentstack/utils": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/@contentstack/utils/-/utils-1.6.2.tgz", - "integrity": "sha512-HWyCXchCIUUwhcaqEwMEQNSmbVih8x4QKo4UxbFSj5RmIfFDPY/szAl5hQT0Xvnhh6C3uZu2gDI/HmUcDzJQkQ==", - "hasInstallScript": true, + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/@contentstack/utils/-/utils-1.6.3.tgz", + "integrity": "sha512-FU1hFks9vnJ5e9cwBTPgnf3obx/fuKh+c3Gtc71mq1Mrub3/z4rJZJWLJ2kublVKnXWnhz+Yt66rshxO/TT9IQ==", "license": "MIT" }, "node_modules/@cspotcode/source-map-support": { @@ -1862,9 +1846,9 @@ } }, "node_modules/@emnapi/core": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.7.0.tgz", - "integrity": "sha512-pJdKGq/1iquWYtv1RRSljZklxHCOCAJFJrImO5ZLKPJVJlVUcs8yFwNQlqS0Lo8xT1VAXXTCZocF9n26FWEKsw==", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.7.1.tgz", + "integrity": "sha512-o1uhUASyo921r2XtHYOHy7gdkGLge8ghBEQHMWmyJFoXlpU58kIrhhN3w26lpQb6dspetweapMn2CSNwQ8I4wg==", "dev": true, "license": "MIT", "optional": true, @@ -1874,9 +1858,9 @@ } }, "node_modules/@emnapi/runtime": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.7.0.tgz", - "integrity": "sha512-oAYoQnCYaQZKVS53Fq23ceWMRxq5EhQsE0x0RdQ55jT7wagMu5k+fS39v1fiSLrtrLQlXwVINenqhLMtTrV/1Q==", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.7.1.tgz", + "integrity": "sha512-PVtJr5CmLwYAU9PZDMITZoR5iAOShYREoR45EyyLrbntV50mdePTgUn4AmOw90Ifcj+x2kRjdzr1HP3RrNiHGA==", "dev": true, "license": "MIT", "optional": true, @@ -1913,9 +1897,9 @@ } }, "node_modules/@es-joy/jsdoccomment/node_modules/@typescript-eslint/types": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.46.4.tgz", - "integrity": "sha512-USjyxm3gQEePdUwJBFjjGNG18xY9A2grDVGuk7/9AkjIF1L+ZrVnwR5VAU5JXtUnBL/Nwt3H31KlRDaksnM7/w==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.50.0.tgz", + "integrity": "sha512-iX1mgmGrXdANhhITbpp2QQM2fGehBse9LbTf0sidWK6yg/NE+uhV5dfU1g6EYPlcReYmkE9QLPq/2irKAmtS9w==", "dev": true, "license": "MIT", "engines": { @@ -1927,9 +1911,9 @@ } }, "node_modules/@esbuild/aix-ppc64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.12.tgz", - "integrity": "sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.2.tgz", + "integrity": "sha512-GZMB+a0mOMZs4MpDbj8RJp4cw+w1WV5NYD6xzgvzUJ5Ek2jerwfO2eADyI6ExDSUED+1X8aMbegahsJi+8mgpw==", "cpu": [ "ppc64" ], @@ -1944,9 +1928,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.12.tgz", - "integrity": "sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.2.tgz", + "integrity": "sha512-DVNI8jlPa7Ujbr1yjU2PfUSRtAUZPG9I1RwW4F4xFB1Imiu2on0ADiI/c3td+KmDtVKNbi+nffGDQMfcIMkwIA==", "cpu": [ "arm" ], @@ -1961,9 +1945,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.12.tgz", - "integrity": "sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.2.tgz", + "integrity": "sha512-pvz8ZZ7ot/RBphf8fv60ljmaoydPU12VuXHImtAs0XhLLw+EXBi2BLe3OYSBslR4rryHvweW5gmkKFwTiFy6KA==", "cpu": [ "arm64" ], @@ -1978,9 +1962,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.12.tgz", - "integrity": "sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.2.tgz", + "integrity": "sha512-z8Ank4Byh4TJJOh4wpz8g2vDy75zFL0TlZlkUkEwYXuPSgX8yzep596n6mT7905kA9uHZsf/o2OJZubl2l3M7A==", "cpu": [ "x64" ], @@ -1995,9 +1979,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.12.tgz", - "integrity": "sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.2.tgz", + "integrity": "sha512-davCD2Zc80nzDVRwXTcQP/28fiJbcOwvdolL0sOiOsbwBa72kegmVU0Wrh1MYrbuCL98Omp5dVhQFWRKR2ZAlg==", "cpu": [ "arm64" ], @@ -2012,9 +1996,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.12.tgz", - "integrity": "sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.2.tgz", + "integrity": "sha512-ZxtijOmlQCBWGwbVmwOF/UCzuGIbUkqB1faQRf5akQmxRJ1ujusWsb3CVfk/9iZKr2L5SMU5wPBi1UWbvL+VQA==", "cpu": [ "x64" ], @@ -2029,9 +2013,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.12.tgz", - "integrity": "sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.2.tgz", + "integrity": "sha512-lS/9CN+rgqQ9czogxlMcBMGd+l8Q3Nj1MFQwBZJyoEKI50XGxwuzznYdwcav6lpOGv5BqaZXqvBSiB/kJ5op+g==", "cpu": [ "arm64" ], @@ -2046,9 +2030,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.12.tgz", - "integrity": "sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.2.tgz", + "integrity": "sha512-tAfqtNYb4YgPnJlEFu4c212HYjQWSO/w/h/lQaBK7RbwGIkBOuNKQI9tqWzx7Wtp7bTPaGC6MJvWI608P3wXYA==", "cpu": [ "x64" ], @@ -2063,9 +2047,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.12.tgz", - "integrity": "sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.2.tgz", + "integrity": "sha512-vWfq4GaIMP9AIe4yj1ZUW18RDhx6EPQKjwe7n8BbIecFtCQG4CfHGaHuh7fdfq+y3LIA2vGS/o9ZBGVxIDi9hw==", "cpu": [ "arm" ], @@ -2080,9 +2064,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.12.tgz", - "integrity": "sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.2.tgz", + "integrity": "sha512-hYxN8pr66NsCCiRFkHUAsxylNOcAQaxSSkHMMjcpx0si13t1LHFphxJZUiGwojB1a/Hd5OiPIqDdXONia6bhTw==", "cpu": [ "arm64" ], @@ -2097,9 +2081,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.12.tgz", - "integrity": "sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.2.tgz", + "integrity": "sha512-MJt5BRRSScPDwG2hLelYhAAKh9imjHK5+NE/tvnRLbIqUWa+0E9N4WNMjmp/kXXPHZGqPLxggwVhz7QP8CTR8w==", "cpu": [ "ia32" ], @@ -2114,9 +2098,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.12.tgz", - "integrity": "sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.2.tgz", + "integrity": "sha512-lugyF1atnAT463aO6KPshVCJK5NgRnU4yb3FUumyVz+cGvZbontBgzeGFO1nF+dPueHD367a2ZXe1NtUkAjOtg==", "cpu": [ "loong64" ], @@ -2131,9 +2115,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.12.tgz", - "integrity": "sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.2.tgz", + "integrity": "sha512-nlP2I6ArEBewvJ2gjrrkESEZkB5mIoaTswuqNFRv/WYd+ATtUpe9Y09RnJvgvdag7he0OWgEZWhviS1OTOKixw==", "cpu": [ "mips64el" ], @@ -2148,9 +2132,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.12.tgz", - "integrity": "sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.2.tgz", + "integrity": "sha512-C92gnpey7tUQONqg1n6dKVbx3vphKtTHJaNG2Ok9lGwbZil6DrfyecMsp9CrmXGQJmZ7iiVXvvZH6Ml5hL6XdQ==", "cpu": [ "ppc64" ], @@ -2165,9 +2149,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.12.tgz", - "integrity": "sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.2.tgz", + "integrity": "sha512-B5BOmojNtUyN8AXlK0QJyvjEZkWwy/FKvakkTDCziX95AowLZKR6aCDhG7LeF7uMCXEJqwa8Bejz5LTPYm8AvA==", "cpu": [ "riscv64" ], @@ -2182,9 +2166,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.12.tgz", - "integrity": "sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.2.tgz", + "integrity": "sha512-p4bm9+wsPwup5Z8f4EpfN63qNagQ47Ua2znaqGH6bqLlmJ4bx97Y9JdqxgGZ6Y8xVTixUnEkoKSHcpRlDnNr5w==", "cpu": [ "s390x" ], @@ -2199,9 +2183,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.12.tgz", - "integrity": "sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.27.2.tgz", + "integrity": "sha512-uwp2Tip5aPmH+NRUwTcfLb+W32WXjpFejTIOWZFw/v7/KnpCDKG66u4DLcurQpiYTiYwQ9B7KOeMJvLCu/OvbA==", "cpu": [ "x64" ], @@ -2216,9 +2200,9 @@ } }, "node_modules/@esbuild/netbsd-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.12.tgz", - "integrity": "sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.2.tgz", + "integrity": "sha512-Kj6DiBlwXrPsCRDeRvGAUb/LNrBASrfqAIok+xB0LxK8CHqxZ037viF13ugfsIpePH93mX7xfJp97cyDuTZ3cw==", "cpu": [ "arm64" ], @@ -2233,9 +2217,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.12.tgz", - "integrity": "sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.2.tgz", + "integrity": "sha512-HwGDZ0VLVBY3Y+Nw0JexZy9o/nUAWq9MlV7cahpaXKW6TOzfVno3y3/M8Ga8u8Yr7GldLOov27xiCnqRZf0tCA==", "cpu": [ "x64" ], @@ -2250,9 +2234,9 @@ } }, "node_modules/@esbuild/openbsd-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.12.tgz", - "integrity": "sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.2.tgz", + "integrity": "sha512-DNIHH2BPQ5551A7oSHD0CKbwIA/Ox7+78/AWkbS5QoRzaqlev2uFayfSxq68EkonB+IKjiuxBFoV8ESJy8bOHA==", "cpu": [ "arm64" ], @@ -2267,9 +2251,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.12.tgz", - "integrity": "sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.2.tgz", + "integrity": "sha512-/it7w9Nb7+0KFIzjalNJVR5bOzA9Vay+yIPLVHfIQYG/j+j9VTH84aNB8ExGKPU4AzfaEvN9/V4HV+F+vo8OEg==", "cpu": [ "x64" ], @@ -2284,9 +2268,9 @@ } }, "node_modules/@esbuild/openharmony-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.12.tgz", - "integrity": "sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.2.tgz", + "integrity": "sha512-LRBbCmiU51IXfeXk59csuX/aSaToeG7w48nMwA6049Y4J4+VbWALAuXcs+qcD04rHDuSCSRKdmY63sruDS5qag==", "cpu": [ "arm64" ], @@ -2301,9 +2285,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.12.tgz", - "integrity": "sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.2.tgz", + "integrity": "sha512-kMtx1yqJHTmqaqHPAzKCAkDaKsffmXkPHThSfRwZGyuqyIeBvf08KSsYXl+abf5HDAPMJIPnbBfXvP2ZC2TfHg==", "cpu": [ "x64" ], @@ -2318,9 +2302,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.12.tgz", - "integrity": "sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.2.tgz", + "integrity": "sha512-Yaf78O/B3Kkh+nKABUF++bvJv5Ijoy9AN1ww904rOXZFLWVc5OLOfL56W+C8F9xn5JQZa3UX6m+IktJnIb1Jjg==", "cpu": [ "arm64" ], @@ -2335,9 +2319,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.12.tgz", - "integrity": "sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.2.tgz", + "integrity": "sha512-Iuws0kxo4yusk7sw70Xa2E2imZU5HoixzxfGCdxwBdhiDgt9vX9VUCBhqcwY7/uh//78A1hMkkROMJq9l27oLQ==", "cpu": [ "ia32" ], @@ -2352,9 +2336,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.12.tgz", - "integrity": "sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.2.tgz", + "integrity": "sha512-sRdU18mcKf7F+YgheI/zGf5alZatMUTKj/jNS6l744f9u3WFu4v7twcUI9vu4mknF4Y9aDlblIie0IM+5xxaqQ==", "cpu": [ "x64" ], @@ -2499,9 +2483,9 @@ } }, "node_modules/@eslint/css-tree": { - "version": "3.6.6", - "resolved": "https://registry.npmjs.org/@eslint/css-tree/-/css-tree-3.6.6.tgz", - "integrity": "sha512-C3YiJMY9OZyZ/3vEMFWJIesdGaRY6DmIYvmtyxMT934CbrOKqRs+Iw7NWSRlJQEaK4dPYy2lZ2y1zkaj8z0p5A==", + "version": "3.6.8", + "resolved": "https://registry.npmjs.org/@eslint/css-tree/-/css-tree-3.6.8.tgz", + "integrity": "sha512-s0f40zY7dlMp8i0Jf0u6l/aSswS0WRAgkhgETgiCJRcxIWb4S/Sp9uScKHWbkM3BnoFLbJbmOYk5AZUDFVxaLA==", "dev": true, "license": "MIT", "dependencies": { @@ -2920,9 +2904,9 @@ } }, "node_modules/@inquirer/core/node_modules/@types/node": { - "version": "22.19.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.1.tgz", - "integrity": "sha512-LCCV0HdSZZZb34qifBsyWlUmok6W7ouER+oQIGBScS8EsZsQbrtFTUrDX4hOl+CS6p7cnNC4td+qrSVGSCTUfQ==", + "version": "22.19.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.3.tgz", + "integrity": "sha512-1N9SBnWYOJTrNZCdh/yJE+t910Y128BoyY+zBLWhL3r0TYzlTmFdXrPwHL9DyFZmlEXNQQolTZh3KHV31QDhyA==", "dev": true, "license": "MIT", "dependencies": { @@ -3178,9 +3162,9 @@ } }, "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "version": "3.14.2", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.2.tgz", + "integrity": "sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==", "dev": true, "license": "MIT", "dependencies": { @@ -3749,9 +3733,9 @@ } }, "node_modules/@oclif/plugin-help": { - "version": "6.2.35", - "resolved": "https://registry.npmjs.org/@oclif/plugin-help/-/plugin-help-6.2.35.tgz", - "integrity": "sha512-ZMcQTsHaiCEOZIRZoynUQ+98fyM1Adoqx4LbOgYWRVKXKbavHPCZKm6F+/y0GpWscXVoeGnvJO6GIBsigrqaSA==", + "version": "6.2.36", + "resolved": "https://registry.npmjs.org/@oclif/plugin-help/-/plugin-help-6.2.36.tgz", + "integrity": "sha512-NBQIg5hEMhvdbi4mSrdqRGl5XJ0bqTAHq6vDCCCDXUcfVtdk3ZJbSxtRVWyVvo9E28vwqu6MZyHOJylevqcHbA==", "license": "MIT", "dependencies": { "@oclif/core": "^4" @@ -3761,12 +3745,12 @@ } }, "node_modules/@oclif/plugin-not-found": { - "version": "3.2.72", - "resolved": "https://registry.npmjs.org/@oclif/plugin-not-found/-/plugin-not-found-3.2.72.tgz", - "integrity": "sha512-CRcqHGdcEL4l5cls5F9FvwKt04LkdG7WyFozOu2vP1/3w34S29zbw8Tx1gAzfBZDDme5ChSaqFXU5qbTLx5yYQ==", + "version": "3.2.73", + "resolved": "https://registry.npmjs.org/@oclif/plugin-not-found/-/plugin-not-found-3.2.73.tgz", + "integrity": "sha512-2bQieTGI9XNFe9hKmXQjJmHV5rZw+yn7Rud1+C5uLEo8GaT89KZbiLTJgL35tGILahy/cB6+WAs812wjw7TK6w==", "license": "MIT", "dependencies": { - "@inquirer/prompts": "^7.9.0", + "@inquirer/prompts": "^7.10.1", "@oclif/core": "^4.8.0", "ansis": "^3.17.0", "fast-levenshtein": "^3.0.0" @@ -4092,9 +4076,9 @@ } }, "node_modules/@oclif/plugin-not-found/node_modules/@types/node": { - "version": "24.10.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.10.1.tgz", - "integrity": "sha512-GNWcUTRBgIRJD5zj+Tq0fKOJ5XZajIiBroOF0yvj2bSU1WvNdYS/dn9UxwsujGW4JX06dnHyjV2y9rRaybH0iQ==", + "version": "25.0.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-25.0.3.tgz", + "integrity": "sha512-W609buLVRVmeW693xKfzHeIV6nJGGz98uCPfeXI1ELMLXVeKYZ9m15fAMSaUPBHYLGFsVRcMmSCksQOrZV9BYA==", "license": "MIT", "optional": true, "peer": true, @@ -4118,9 +4102,9 @@ } }, "node_modules/@oclif/plugin-not-found/node_modules/iconv-lite": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.7.0.tgz", - "integrity": "sha512-cf6L2Ds3h57VVmkZe+Pn+5APsT7FpqJtEhhieDCvrE2MK5Qk9MyffgQyuxQTm6BChfeZNtcOLHp9IcWRVcIcBQ==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.7.1.tgz", + "integrity": "sha512-2Tth85cXwGFHfvRgZWszZSvdo+0Xsqmw8k8ZwxScfcBneNUraK+dxRxRm24nszx80Y0TVio8kKLt5sLE7ZCLlw==", "license": "MIT", "dependencies": { "safer-buffer": ">= 2.1.2 < 3.0.0" @@ -4177,9 +4161,9 @@ } }, "node_modules/@oclif/plugin-plugins": { - "version": "5.4.53", - "resolved": "https://registry.npmjs.org/@oclif/plugin-plugins/-/plugin-plugins-5.4.53.tgz", - "integrity": "sha512-jezB3NEz8fQdb/jrZq8YPvEiF+aH0wHiexVCvnj7Rmy+mmTHicEuGJMPiYeJNcRvG687raIhc6TjyMMPKi0W4A==", + "version": "5.4.54", + "resolved": "https://registry.npmjs.org/@oclif/plugin-plugins/-/plugin-plugins-5.4.54.tgz", + "integrity": "sha512-yzdukEfvvyXx31AhN+YhxLhuQdx2SrZDcRtPl5CNkuqh/uNSB2BuA3xpurdv2qotpaw/Z9InRl+Sa9bLp/4aLA==", "license": "MIT", "dependencies": { "@oclif/core": "^4.8.0", @@ -4199,9 +4183,9 @@ } }, "node_modules/@oclif/plugin-warn-if-update-available": { - "version": "3.1.52", - "resolved": "https://registry.npmjs.org/@oclif/plugin-warn-if-update-available/-/plugin-warn-if-update-available-3.1.52.tgz", - "integrity": "sha512-CAtBcMBjtuYwv2lf1U3tavAAhFtG3lYvrpestPjfIUyGSoc5kJZME1heS8Ao7IxNgp5sHFm1wNoU2vJbHJKLQg==", + "version": "3.1.53", + "resolved": "https://registry.npmjs.org/@oclif/plugin-warn-if-update-available/-/plugin-warn-if-update-available-3.1.53.tgz", + "integrity": "sha512-ALxKMNFFJQJV1Z2OMVTV+q7EbKHhnTAPcTgkgHeXCNdW5nFExoXuwusZLS4Zv2o83j9UoDx1R/CSX7QZVgEHTA==", "dev": true, "license": "MIT", "dependencies": { @@ -4217,9 +4201,9 @@ } }, "node_modules/@oclif/test": { - "version": "4.1.14", - "resolved": "https://registry.npmjs.org/@oclif/test/-/test-4.1.14.tgz", - "integrity": "sha512-FKPUBOnC1KnYZBcYOMNmt0DfdqTdSo2Vx8OnqgnMslHVPRPqrUF1bxfEHaw5W/+vOQLwF7MiEPq8DObpXfJJbg==", + "version": "4.1.15", + "resolved": "https://registry.npmjs.org/@oclif/test/-/test-4.1.15.tgz", + "integrity": "sha512-OVTmz3RxnOWYPoE9sbB9Przfph+QSLMvHUfqEwXZKupuOHCJAJX0QDUfVyh1pK+XYEQ2RUaF+qhxqBfIfaahBw==", "license": "MIT", "dependencies": { "ansis": "^3.17.0", @@ -4453,9 +4437,9 @@ } }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.53.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.53.2.tgz", - "integrity": "sha512-yDPzwsgiFO26RJA4nZo8I+xqzh7sJTZIWQOxn+/XOdPE31lAvLIYCKqjV+lNH/vxE2L2iH3plKxDCRK6i+CwhA==", + "version": "4.53.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.53.5.tgz", + "integrity": "sha512-iDGS/h7D8t7tvZ1t6+WPK04KD0MwzLZrG0se1hzBjSi5fyxlsiggoJHwh18PCFNn7tG43OWb6pdZ6Y+rMlmyNQ==", "cpu": [ "arm" ], @@ -4466,9 +4450,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.53.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.53.2.tgz", - "integrity": "sha512-k8FontTxIE7b0/OGKeSN5B6j25EuppBcWM33Z19JoVT7UTXFSo3D9CdU39wGTeb29NO3XxpMNauh09B+Ibw+9g==", + "version": "4.53.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.53.5.tgz", + "integrity": "sha512-wrSAViWvZHBMMlWk6EJhvg8/rjxzyEhEdgfMMjREHEq11EtJ6IP6yfcCH57YAEca2Oe3FNCE9DSTgU70EIGmVw==", "cpu": [ "arm64" ], @@ -4479,9 +4463,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.53.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.53.2.tgz", - "integrity": "sha512-A6s4gJpomNBtJ2yioj8bflM2oogDwzUiMl2yNJ2v9E7++sHrSrsQ29fOfn5DM/iCzpWcebNYEdXpaK4tr2RhfQ==", + "version": "4.53.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.53.5.tgz", + "integrity": "sha512-S87zZPBmRO6u1YXQLwpveZm4JfPpAa6oHBX7/ghSiGH3rz/KDgAu1rKdGutV+WUI6tKDMbaBJomhnT30Y2t4VQ==", "cpu": [ "arm64" ], @@ -4492,9 +4476,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.53.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.53.2.tgz", - "integrity": "sha512-e6XqVmXlHrBlG56obu9gDRPW3O3hLxpwHpLsBJvuI8qqnsrtSZ9ERoWUXtPOkY8c78WghyPHZdmPhHLWNdAGEw==", + "version": "4.53.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.53.5.tgz", + "integrity": "sha512-YTbnsAaHo6VrAczISxgpTva8EkfQus0VPEVJCEaboHtZRIb6h6j0BNxRBOwnDciFTZLDPW5r+ZBmhL/+YpTZgA==", "cpu": [ "x64" ], @@ -4505,9 +4489,9 @@ ] }, "node_modules/@rollup/rollup-freebsd-arm64": { - "version": "4.53.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.53.2.tgz", - "integrity": "sha512-v0E9lJW8VsrwPux5Qe5CwmH/CF/2mQs6xU1MF3nmUxmZUCHazCjLgYvToOk+YuuUqLQBio1qkkREhxhc656ViA==", + "version": "4.53.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.53.5.tgz", + "integrity": "sha512-1T8eY2J8rKJWzaznV7zedfdhD1BqVs1iqILhmHDq/bqCUZsrMt+j8VCTHhP0vdfbHK3e1IQ7VYx3jlKqwlf+vw==", "cpu": [ "arm64" ], @@ -4518,9 +4502,9 @@ ] }, "node_modules/@rollup/rollup-freebsd-x64": { - "version": "4.53.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.53.2.tgz", - "integrity": "sha512-ClAmAPx3ZCHtp6ysl4XEhWU69GUB1D+s7G9YjHGhIGCSrsg00nEGRRZHmINYxkdoJehde8VIsDC5t9C0gb6yqA==", + "version": "4.53.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.53.5.tgz", + "integrity": "sha512-sHTiuXyBJApxRn+VFMaw1U+Qsz4kcNlxQ742snICYPrY+DDL8/ZbaC4DVIB7vgZmp3jiDaKA0WpBdP0aqPJoBQ==", "cpu": [ "x64" ], @@ -4531,9 +4515,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.53.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.53.2.tgz", - "integrity": "sha512-EPlb95nUsz6Dd9Qy13fI5kUPXNSljaG9FiJ4YUGU1O/Q77i5DYFW5KR8g1OzTcdZUqQQ1KdDqsTohdFVwCwjqg==", + "version": "4.53.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.53.5.tgz", + "integrity": "sha512-dV3T9MyAf0w8zPVLVBptVlzaXxka6xg1f16VAQmjg+4KMSTWDvhimI/Y6mp8oHwNrmnmVl9XxJ/w/mO4uIQONA==", "cpu": [ "arm" ], @@ -4544,9 +4528,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.53.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.53.2.tgz", - "integrity": "sha512-BOmnVW+khAUX+YZvNfa0tGTEMVVEerOxN0pDk2E6N6DsEIa2Ctj48FOMfNDdrwinocKaC7YXUZ1pHlKpnkja/Q==", + "version": "4.53.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.53.5.tgz", + "integrity": "sha512-wIGYC1x/hyjP+KAu9+ewDI+fi5XSNiUi9Bvg6KGAh2TsNMA3tSEs+Sh6jJ/r4BV/bx/CyWu2ue9kDnIdRyafcQ==", "cpu": [ "arm" ], @@ -4557,9 +4541,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.53.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.53.2.tgz", - "integrity": "sha512-Xt2byDZ+6OVNuREgBXr4+CZDJtrVso5woFtpKdGPhpTPHcNG7D8YXeQzpNbFRxzTVqJf7kvPMCub/pcGUWgBjA==", + "version": "4.53.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.53.5.tgz", + "integrity": "sha512-Y+qVA0D9d0y2FRNiG9oM3Hut/DgODZbU9I8pLLPwAsU0tUKZ49cyV1tzmB/qRbSzGvY8lpgGkJuMyuhH7Ma+Vg==", "cpu": [ "arm64" ], @@ -4570,9 +4554,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.53.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.53.2.tgz", - "integrity": "sha512-+LdZSldy/I9N8+klim/Y1HsKbJ3BbInHav5qE9Iy77dtHC/pibw1SR/fXlWyAk0ThnpRKoODwnAuSjqxFRDHUQ==", + "version": "4.53.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.53.5.tgz", + "integrity": "sha512-juaC4bEgJsyFVfqhtGLz8mbopaWD+WeSOYr5E16y+1of6KQjc0BpwZLuxkClqY1i8sco+MdyoXPNiCkQou09+g==", "cpu": [ "arm64" ], @@ -4583,9 +4567,9 @@ ] }, "node_modules/@rollup/rollup-linux-loong64-gnu": { - "version": "4.53.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.53.2.tgz", - "integrity": "sha512-8ms8sjmyc1jWJS6WdNSA23rEfdjWB30LH8Wqj0Cqvv7qSHnvw6kgMMXRdop6hkmGPlyYBdRPkjJnj3KCUHV/uQ==", + "version": "4.53.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.53.5.tgz", + "integrity": "sha512-rIEC0hZ17A42iXtHX+EPJVL/CakHo+tT7W0pbzdAGuWOt2jxDFh7A/lRhsNHBcqL4T36+UiAgwO8pbmn3dE8wA==", "cpu": [ "loong64" ], @@ -4596,9 +4580,9 @@ ] }, "node_modules/@rollup/rollup-linux-ppc64-gnu": { - "version": "4.53.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.53.2.tgz", - "integrity": "sha512-3HRQLUQbpBDMmzoxPJYd3W6vrVHOo2cVW8RUo87Xz0JPJcBLBr5kZ1pGcQAhdZgX9VV7NbGNipah1omKKe23/g==", + "version": "4.53.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.53.5.tgz", + "integrity": "sha512-T7l409NhUE552RcAOcmJHj3xyZ2h7vMWzcwQI0hvn5tqHh3oSoclf9WgTl+0QqffWFG8MEVZZP1/OBglKZx52Q==", "cpu": [ "ppc64" ], @@ -4609,9 +4593,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.53.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.53.2.tgz", - "integrity": "sha512-fMjKi+ojnmIvhk34gZP94vjogXNNUKMEYs+EDaB/5TG/wUkoeua7p7VCHnE6T2Tx+iaghAqQX8teQzcvrYpaQA==", + "version": "4.53.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.53.5.tgz", + "integrity": "sha512-7OK5/GhxbnrMcxIFoYfhV/TkknarkYC1hqUw1wU2xUN3TVRLNT5FmBv4KkheSG2xZ6IEbRAhTooTV2+R5Tk0lQ==", "cpu": [ "riscv64" ], @@ -4622,9 +4606,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-musl": { - "version": "4.53.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.53.2.tgz", - "integrity": "sha512-XuGFGU+VwUUV5kLvoAdi0Wz5Xbh2SrjIxCtZj6Wq8MDp4bflb/+ThZsVxokM7n0pcbkEr2h5/pzqzDYI7cCgLQ==", + "version": "4.53.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.53.5.tgz", + "integrity": "sha512-GwuDBE/PsXaTa76lO5eLJTyr2k8QkPipAyOrs4V/KJufHCZBJ495VCGJol35grx9xryk4V+2zd3Ri+3v7NPh+w==", "cpu": [ "riscv64" ], @@ -4635,9 +4619,9 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.53.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.53.2.tgz", - "integrity": "sha512-w6yjZF0P+NGzWR3AXWX9zc0DNEGdtvykB03uhonSHMRa+oWA6novflo2WaJr6JZakG2ucsyb+rvhrKac6NIy+w==", + "version": "4.53.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.53.5.tgz", + "integrity": "sha512-IAE1Ziyr1qNfnmiQLHBURAD+eh/zH1pIeJjeShleII7Vj8kyEm2PF77o+lf3WTHDpNJcu4IXJxNO0Zluro8bOw==", "cpu": [ "s390x" ], @@ -4648,9 +4632,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.53.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.53.2.tgz", - "integrity": "sha512-yo8d6tdfdeBArzC7T/PnHd7OypfI9cbuZzPnzLJIyKYFhAQ8SvlkKtKBMbXDxe1h03Rcr7u++nFS7tqXz87Gtw==", + "version": "4.53.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.53.5.tgz", + "integrity": "sha512-Pg6E+oP7GvZ4XwgRJBuSXZjcqpIW3yCBhK4BcsANvb47qMvAbCjR6E+1a/U2WXz1JJxp9/4Dno3/iSJLcm5auw==", "cpu": [ "x64" ], @@ -4661,9 +4645,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.53.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.53.2.tgz", - "integrity": "sha512-ah59c1YkCxKExPP8O9PwOvs+XRLKwh/mV+3YdKqQ5AMQ0r4M4ZDuOrpWkUaqO7fzAHdINzV9tEVu8vNw48z0lA==", + "version": "4.53.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.53.5.tgz", + "integrity": "sha512-txGtluxDKTxaMDzUduGP0wdfng24y1rygUMnmlUJ88fzCCULCLn7oE5kb2+tRB+MWq1QDZT6ObT5RrR8HFRKqg==", "cpu": [ "x64" ], @@ -4674,9 +4658,9 @@ ] }, "node_modules/@rollup/rollup-openharmony-arm64": { - "version": "4.53.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.53.2.tgz", - "integrity": "sha512-4VEd19Wmhr+Zy7hbUsFZ6YXEiP48hE//KPLCSVNY5RMGX2/7HZ+QkN55a3atM1C/BZCGIgqN+xrVgtdak2S9+A==", + "version": "4.53.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.53.5.tgz", + "integrity": "sha512-3DFiLPnTxiOQV993fMc+KO8zXHTcIjgaInrqlG8zDp1TlhYl6WgrOHuJkJQ6M8zHEcntSJsUp1XFZSY8C1DYbg==", "cpu": [ "arm64" ], @@ -4687,9 +4671,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.53.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.53.2.tgz", - "integrity": "sha512-IlbHFYc/pQCgew/d5fslcy1KEaYVCJ44G8pajugd8VoOEI8ODhtb/j8XMhLpwHCMB3yk2J07ctup10gpw2nyMA==", + "version": "4.53.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.53.5.tgz", + "integrity": "sha512-nggc/wPpNTgjGg75hu+Q/3i32R00Lq1B6N1DO7MCU340MRKL3WZJMjA9U4K4gzy3dkZPXm9E1Nc81FItBVGRlA==", "cpu": [ "arm64" ], @@ -4700,9 +4684,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.53.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.53.2.tgz", - "integrity": "sha512-lNlPEGgdUfSzdCWU176ku/dQRnA7W+Gp8d+cWv73jYrb8uT7HTVVxq62DUYxjbaByuf1Yk0RIIAbDzp+CnOTFg==", + "version": "4.53.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.53.5.tgz", + "integrity": "sha512-U/54pTbdQpPLBdEzCT6NBCFAfSZMvmjr0twhnD9f4EIvlm9wy3jjQ38yQj1AGznrNO65EWQMgm/QUjuIVrYF9w==", "cpu": [ "ia32" ], @@ -4713,9 +4697,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-gnu": { - "version": "4.53.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.53.2.tgz", - "integrity": "sha512-S6YojNVrHybQis2lYov1sd+uj7K0Q05NxHcGktuMMdIQ2VixGwAfbJ23NnlvvVV1bdpR2m5MsNBViHJKcA4ADw==", + "version": "4.53.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.53.5.tgz", + "integrity": "sha512-2NqKgZSuLH9SXBBV2dWNRCZmocgSOx8OJSdpRaEcRlIfX8YrKxUT6z0F1NpvDVhOsl190UFTRh2F2WDWWCYp3A==", "cpu": [ "x64" ], @@ -4726,9 +4710,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.53.2", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.53.2.tgz", - "integrity": "sha512-k+/Rkcyx//P6fetPoLMb8pBeqJBNGx81uuf7iljX9++yNBVRDQgD04L+SVXmXmh5ZP4/WOp4mWF0kmi06PW2tA==", + "version": "4.53.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.53.5.tgz", + "integrity": "sha512-JRpZUhCfhZ4keB5v0fe02gQJy05GqboPOaxvjugW04RLSYYoB/9t2lx2u/tMs/Na/1NXfY8QYjgRljRpN+MjTQ==", "cpu": [ "x64" ], @@ -4789,6 +4773,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", + "dev": true, "license": "BSD-3-Clause", "dependencies": { "type-detect": "4.0.8" @@ -4798,6 +4783,7 @@ "version": "4.0.8", "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true, "license": "MIT", "engines": { "node": ">=4" @@ -4817,6 +4803,7 @@ "version": "8.0.3", "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-8.0.3.tgz", "integrity": "sha512-hw6HbX+GyVZzmaYNh82Ecj1vdGZrqVIn/keDTg63IgAwiQPO+xCz99uG6Woqgb4tM0mUiFENKZ4cqd7IX94AXQ==", + "dev": true, "license": "BSD-3-Clause", "dependencies": { "@sinonjs/commons": "^3.0.1", @@ -4827,16 +4814,17 @@ "version": "0.7.3", "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.3.tgz", "integrity": "sha512-DE427ROAphMQzU4ENbliGYrBSYPXF+TtLg9S8vzeA+OF4ZKzoDdzfL8sxuMUGS/lgRhM6j1URSk9ghf7Xo1tyA==", + "dev": true, "license": "(Unlicense OR Apache-2.0)" }, "node_modules/@smithy/abort-controller": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.2.5.tgz", - "integrity": "sha512-j7HwVkBw68YW8UmFRcjZOmssE77Rvk0GWAIN1oFBhsaovQmZWYCIcGa9/pwRB0ExI8Sk9MWNALTjftjHZea7VA==", + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.2.6.tgz", + "integrity": "sha512-P7JD4J+wxHMpGxqIg6SHno2tPkZbBUBLbPpR5/T1DEUvw/mEaINBMaPFZNM7lA+ToSCZ36j6nMHa+5kej+fhGg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.9.0", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -4871,17 +4859,17 @@ } }, "node_modules/@smithy/config-resolver": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.4.3.tgz", - "integrity": "sha512-ezHLe1tKLUxDJo2LHtDuEDyWXolw8WGOR92qb4bQdWq/zKenO5BvctZGrVJBK08zjezSk7bmbKFOXIVyChvDLw==", + "version": "4.4.4", + "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.4.4.tgz", + "integrity": "sha512-s3U5ChS21DwU54kMmZ0UJumoS5cg0+rGVZvN6f5Lp6EbAVi0ZyP+qDSHdewfmXKUgNK1j3z45JyzulkDukrjAA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/node-config-provider": "^4.3.5", - "@smithy/types": "^4.9.0", + "@smithy/node-config-provider": "^4.3.6", + "@smithy/types": "^4.10.0", "@smithy/util-config-provider": "^4.2.0", - "@smithy/util-endpoints": "^3.2.5", - "@smithy/util-middleware": "^4.2.5", + "@smithy/util-endpoints": "^3.2.6", + "@smithy/util-middleware": "^4.2.6", "tslib": "^2.6.2" }, "engines": { @@ -4889,19 +4877,19 @@ } }, "node_modules/@smithy/core": { - "version": "3.18.3", - "resolved": "https://registry.npmjs.org/@smithy/core/-/core-3.18.3.tgz", - "integrity": "sha512-qqpNskkbHOSfrbFbjhYj5o8VMXO26fvN1K/+HbCzUNlTuxgNcPRouUDNm+7D6CkN244WG7aK533Ne18UtJEgAA==", + "version": "3.19.0", + "resolved": "https://registry.npmjs.org/@smithy/core/-/core-3.19.0.tgz", + "integrity": "sha512-Y9oHXpBcXQgYHOcAEmxjkDilUbSTkgKjoHYed3WaYUH8jngq8lPWDBSpjHblJ9uOgBdy5mh3pzebrScDdYr29w==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/middleware-serde": "^4.2.5", - "@smithy/protocol-http": "^5.3.5", - "@smithy/types": "^4.9.0", + "@smithy/middleware-serde": "^4.2.7", + "@smithy/protocol-http": "^5.3.6", + "@smithy/types": "^4.10.0", "@smithy/util-base64": "^4.3.0", "@smithy/util-body-length-browser": "^4.2.0", - "@smithy/util-middleware": "^4.2.5", - "@smithy/util-stream": "^4.5.6", + "@smithy/util-middleware": "^4.2.6", + "@smithy/util-stream": "^4.5.7", "@smithy/util-utf8": "^4.2.0", "@smithy/uuid": "^1.1.0", "tslib": "^2.6.2" @@ -4911,16 +4899,16 @@ } }, "node_modules/@smithy/credential-provider-imds": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.2.5.tgz", - "integrity": "sha512-BZwotjoZWn9+36nimwm/OLIcVe+KYRwzMjfhd4QT7QxPm9WY0HiOV8t/Wlh+HVUif0SBVV7ksq8//hPaBC/okQ==", + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.2.6.tgz", + "integrity": "sha512-xBmawExyTzOjbhzkZwg+vVm/khg28kG+rj2sbGlULjFd1jI70sv/cbpaR0Ev4Yfd6CpDUDRMe64cTqR//wAOyA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/node-config-provider": "^4.3.5", - "@smithy/property-provider": "^4.2.5", - "@smithy/types": "^4.9.0", - "@smithy/url-parser": "^4.2.5", + "@smithy/node-config-provider": "^4.3.6", + "@smithy/property-provider": "^4.2.6", + "@smithy/types": "^4.10.0", + "@smithy/url-parser": "^4.2.6", "tslib": "^2.6.2" }, "engines": { @@ -4928,14 +4916,14 @@ } }, "node_modules/@smithy/eventstream-codec": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-4.2.5.tgz", - "integrity": "sha512-Ogt4Zi9hEbIP17oQMd68qYOHUzmH47UkK7q7Gl55iIm9oKt27MUGrC5JfpMroeHjdkOliOA4Qt3NQ1xMq/nrlA==", + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-4.2.6.tgz", + "integrity": "sha512-OZfsI+YRG26XZik/jKMMg37acnBSbUiK/8nETW3uM3mLj+0tMmFXdHQw1e5WEd/IHN8BGOh3te91SNDe2o4RHg==", "dev": true, "license": "Apache-2.0", "dependencies": { "@aws-crypto/crc32": "5.2.0", - "@smithy/types": "^4.9.0", + "@smithy/types": "^4.10.0", "@smithy/util-hex-encoding": "^4.2.0", "tslib": "^2.6.2" }, @@ -4944,14 +4932,14 @@ } }, "node_modules/@smithy/eventstream-serde-browser": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-4.2.5.tgz", - "integrity": "sha512-HohfmCQZjppVnKX2PnXlf47CW3j92Ki6T/vkAT2DhBR47e89pen3s4fIa7otGTtrVxmj7q+IhH0RnC5kpR8wtw==", + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-4.2.6.tgz", + "integrity": "sha512-6OiaAaEbLB6dEkRbQyNzFSJv5HDvly3Mc6q/qcPd2uS/g3szR8wAIkh7UndAFKfMypNSTuZ6eCBmgCLR5LacTg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/eventstream-serde-universal": "^4.2.5", - "@smithy/types": "^4.9.0", + "@smithy/eventstream-serde-universal": "^4.2.6", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -4959,13 +4947,13 @@ } }, "node_modules/@smithy/eventstream-serde-config-resolver": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-4.3.5.tgz", - "integrity": "sha512-ibjQjM7wEXtECiT6my1xfiMH9IcEczMOS6xiCQXoUIYSj5b1CpBbJ3VYbdwDy8Vcg5JHN7eFpOCGk8nyZAltNQ==", + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-4.3.6.tgz", + "integrity": "sha512-xP5YXbOVRVN8A4pDnSUkEUsL9fYFU6VNhxo8tgr13YnMbf3Pn4xVr+hSyLVjS1Frfi1Uk03ET5Bwml4+0CeYEw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.9.0", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -4973,14 +4961,14 @@ } }, "node_modules/@smithy/eventstream-serde-node": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-node/-/eventstream-serde-node-4.2.5.tgz", - "integrity": "sha512-+elOuaYx6F2H6x1/5BQP5ugv12nfJl66GhxON8+dWVUEDJ9jah/A0tayVdkLRP0AeSac0inYkDz5qBFKfVp2Gg==", + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-node/-/eventstream-serde-node-4.2.6.tgz", + "integrity": "sha512-jhH7nJuaOpnTFcuZpWK9dqb6Ge2yGi1okTo0W6wkJrfwAm2vwmO74tF1v07JmrSyHBcKLQATEexclJw9K1Vj7w==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/eventstream-serde-universal": "^4.2.5", - "@smithy/types": "^4.9.0", + "@smithy/eventstream-serde-universal": "^4.2.6", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -4988,14 +4976,14 @@ } }, "node_modules/@smithy/eventstream-serde-universal": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-4.2.5.tgz", - "integrity": "sha512-G9WSqbST45bmIFaeNuP/EnC19Rhp54CcVdX9PDL1zyEB514WsDVXhlyihKlGXnRycmHNmVv88Bvvt4EYxWef/Q==", + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-4.2.6.tgz", + "integrity": "sha512-olIfZ230B64TvPD6b0tPvrEp2eB0FkyL3KvDlqF4RVmIc/kn3orzXnV6DTQdOOW5UU+M5zKY3/BU47X420/oPw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/eventstream-codec": "^4.2.5", - "@smithy/types": "^4.9.0", + "@smithy/eventstream-codec": "^4.2.6", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -5003,15 +4991,15 @@ } }, "node_modules/@smithy/fetch-http-handler": { - "version": "5.3.6", - "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.3.6.tgz", - "integrity": "sha512-3+RG3EA6BBJ/ofZUeTFJA7mHfSYrZtQIrDP9dI8Lf7X6Jbos2jptuLrAAteDiFVrmbEmLSuRG/bUKzfAXk7dhg==", + "version": "5.3.7", + "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.3.7.tgz", + "integrity": "sha512-fcVap4QwqmzQwQK9QU3keeEpCzTjnP9NJ171vI7GnD7nbkAIcP9biZhDUx88uRH9BabSsQDS0unUps88uZvFIQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/protocol-http": "^5.3.5", - "@smithy/querystring-builder": "^4.2.5", - "@smithy/types": "^4.9.0", + "@smithy/protocol-http": "^5.3.6", + "@smithy/querystring-builder": "^4.2.6", + "@smithy/types": "^4.10.0", "@smithy/util-base64": "^4.3.0", "tslib": "^2.6.2" }, @@ -5020,15 +5008,15 @@ } }, "node_modules/@smithy/hash-blob-browser": { - "version": "4.2.6", - "resolved": "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-4.2.6.tgz", - "integrity": "sha512-8P//tA8DVPk+3XURk2rwcKgYwFvwGwmJH/wJqQiSKwXZtf/LiZK+hbUZmPj/9KzM+OVSwe4o85KTp5x9DUZTjw==", + "version": "4.2.7", + "resolved": "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-4.2.7.tgz", + "integrity": "sha512-CIbCTGGX5CI7tfewBPSYD9ycp2Vb2GW5xnXD1n7GcO9mu37EN7A6DvCHM9MX7pOeS1adMn5D+1yRwI3eABVbcA==", "dev": true, "license": "Apache-2.0", "dependencies": { "@smithy/chunked-blob-reader": "^5.2.0", "@smithy/chunked-blob-reader-native": "^4.2.1", - "@smithy/types": "^4.9.0", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -5036,13 +5024,13 @@ } }, "node_modules/@smithy/hash-node": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-4.2.5.tgz", - "integrity": "sha512-DpYX914YOfA3UDT9CN1BM787PcHfWRBB43fFGCYrZFUH0Jv+5t8yYl+Pd5PW4+QzoGEDvn5d5QIO4j2HyYZQSA==", + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-4.2.6.tgz", + "integrity": "sha512-k3Dy9VNR37wfMh2/1RHkFf/e0rMyN0pjY0FdyY6ItJRjENYyVPRMwad6ZR1S9HFm6tTuIOd9pqKBmtJ4VHxvxg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.9.0", + "@smithy/types": "^4.10.0", "@smithy/util-buffer-from": "^4.2.0", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" @@ -5052,13 +5040,13 @@ } }, "node_modules/@smithy/hash-stream-node": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-4.2.5.tgz", - "integrity": "sha512-6+do24VnEyvWcGdHXomlpd0m8bfZePpUKBy7m311n+JuRwug8J4dCanJdTymx//8mi0nlkflZBvJe+dEO/O12Q==", + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-4.2.6.tgz", + "integrity": "sha512-+3T8LkH39YIhYHsv/Ec8lF+92nykZpU+XMBvAyXF/uLcTp86pxa5oSJk1vzaRY9N++qgDLYjzJ6OVbtAgDGwfw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.9.0", + "@smithy/types": "^4.10.0", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" }, @@ -5067,13 +5055,13 @@ } }, "node_modules/@smithy/invalid-dependency": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-4.2.5.tgz", - "integrity": "sha512-2L2erASEro1WC5nV+plwIMxrTXpvpfzl4e+Nre6vBVRR2HKeGGcvpJyyL3/PpiSg+cJG2KpTmZmq934Olb6e5A==", + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-4.2.6.tgz", + "integrity": "sha512-E4t/V/q2T46RY21fpfznd1iSLTvCXKNKo4zJ1QuEFN4SE9gKfu2vb6bgq35LpufkQ+SETWIC7ZAf2GGvTlBaMQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.9.0", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -5094,13 +5082,13 @@ } }, "node_modules/@smithy/md5-js": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-4.2.5.tgz", - "integrity": "sha512-Bt6jpSTMWfjCtC0s79gZ/WZ1w90grfmopVOWqkI2ovhjpD5Q2XRXuecIPB9689L2+cCySMbaXDhBPU56FKNDNg==", + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-4.2.6.tgz", + "integrity": "sha512-ZXeh8UmH31JdcNsrQ1o9v1IVuva9JFwxIc6zTMxWX7wcmWvVR7Ai9aUEw5LraNKqdkAsb06clpM2sRH4Iy55Sg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.9.0", + "@smithy/types": "^4.10.0", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" }, @@ -5109,14 +5097,14 @@ } }, "node_modules/@smithy/middleware-content-length": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-4.2.5.tgz", - "integrity": "sha512-Y/RabVa5vbl5FuHYV2vUCwvh/dqzrEY/K2yWPSqvhFUwIY0atLqO4TienjBXakoy4zrKAMCZwg+YEqmH7jaN7A==", + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-4.2.6.tgz", + "integrity": "sha512-0cjqjyfj+Gls30ntq45SsBtqF3dfJQCeqQPyGz58Pk8OgrAr5YiB7ZvDzjCA94p4r6DCI4qLm7FKobqBjf515w==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/protocol-http": "^5.3.5", - "@smithy/types": "^4.9.0", + "@smithy/protocol-http": "^5.3.6", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -5124,19 +5112,19 @@ } }, "node_modules/@smithy/middleware-endpoint": { - "version": "4.3.10", - "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.3.10.tgz", - "integrity": "sha512-SoAag3QnWBFoXjwa1jenEThkzJYClidZUyqsLKwWZ8kOlZBwehrLBp4ygVDjNEM2a2AamCQ2FBA/HuzKJ/LiTA==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.4.0.tgz", + "integrity": "sha512-M6qWfUNny6NFNy8amrCGIb9TfOMUkHVtg9bHtEFGRgfH7A7AtPpn/fcrToGPjVDK1ECuMVvqGQOXcZxmu9K+7A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/core": "^3.18.3", - "@smithy/middleware-serde": "^4.2.5", - "@smithy/node-config-provider": "^4.3.5", - "@smithy/shared-ini-file-loader": "^4.4.0", - "@smithy/types": "^4.9.0", - "@smithy/url-parser": "^4.2.5", - "@smithy/util-middleware": "^4.2.5", + "@smithy/core": "^3.19.0", + "@smithy/middleware-serde": "^4.2.7", + "@smithy/node-config-provider": "^4.3.6", + "@smithy/shared-ini-file-loader": "^4.4.1", + "@smithy/types": "^4.10.0", + "@smithy/url-parser": "^4.2.6", + "@smithy/util-middleware": "^4.2.6", "tslib": "^2.6.2" }, "engines": { @@ -5144,19 +5132,19 @@ } }, "node_modules/@smithy/middleware-retry": { - "version": "4.4.10", - "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-4.4.10.tgz", - "integrity": "sha512-6fOwX34gXxcqKa3bsG0mR0arc2Cw4ddOS6tp3RgUD2yoTrDTbQ2aVADnDjhUuxaiDZN2iilxndgGDhnpL/XvJA==", + "version": "4.4.16", + "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-4.4.16.tgz", + "integrity": "sha512-XPpNhNRzm3vhYm7YCsyw3AtmWggJbg1wNGAoqb7NBYr5XA5isMRv14jgbYyUV6IvbTBFZQdf2QpeW43LrRdStQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/node-config-provider": "^4.3.5", - "@smithy/protocol-http": "^5.3.5", - "@smithy/service-error-classification": "^4.2.5", - "@smithy/smithy-client": "^4.9.6", - "@smithy/types": "^4.9.0", - "@smithy/util-middleware": "^4.2.5", - "@smithy/util-retry": "^4.2.5", + "@smithy/node-config-provider": "^4.3.6", + "@smithy/protocol-http": "^5.3.6", + "@smithy/service-error-classification": "^4.2.6", + "@smithy/smithy-client": "^4.10.1", + "@smithy/types": "^4.10.0", + "@smithy/util-middleware": "^4.2.6", + "@smithy/util-retry": "^4.2.6", "@smithy/uuid": "^1.1.0", "tslib": "^2.6.2" }, @@ -5165,14 +5153,14 @@ } }, "node_modules/@smithy/middleware-serde": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.2.5.tgz", - "integrity": "sha512-La1ldWTJTZ5NqQyPqnCNeH9B+zjFhrNoQIL1jTh4zuqXRlmXhxYHhMtI1/92OlnoAtp6JoN7kzuwhWoXrBwPqg==", + "version": "4.2.7", + "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.2.7.tgz", + "integrity": "sha512-PFMVHVPgtFECeu4iZ+4SX6VOQT0+dIpm4jSPLLL6JLSkp9RohGqKBKD0cbiXdeIFS08Forp0UHI6kc0gIHenSA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/protocol-http": "^5.3.5", - "@smithy/types": "^4.9.0", + "@smithy/protocol-http": "^5.3.6", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -5180,13 +5168,13 @@ } }, "node_modules/@smithy/middleware-stack": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.2.5.tgz", - "integrity": "sha512-bYrutc+neOyWxtZdbB2USbQttZN0mXaOyYLIsaTbJhFsfpXyGWUxJpEuO1rJ8IIJm2qH4+xJT0mxUSsEDTYwdQ==", + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.2.6.tgz", + "integrity": "sha512-JSbALU3G+JS4kyBZPqnJ3hxIYwOVRV7r9GNQMS6j5VsQDo5+Es5nddLfr9TQlxZLNHPvKSh+XSB0OuWGfSWFcA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.9.0", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -5194,15 +5182,15 @@ } }, "node_modules/@smithy/node-config-provider": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.3.5.tgz", - "integrity": "sha512-UTurh1C4qkVCtqggI36DGbLB2Kv8UlcFdMXDcWMbqVY2uRg0XmT9Pb4Vj6oSQ34eizO1fvR0RnFV4Axw4IrrAg==", + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.3.6.tgz", + "integrity": "sha512-fYEyL59Qe82Ha1p97YQTMEQPJYmBS+ux76foqluaTVWoG9Px5J53w6NvXZNE3wP7lIicLDF7Vj1Em18XTX7fsA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/property-provider": "^4.2.5", - "@smithy/shared-ini-file-loader": "^4.4.0", - "@smithy/types": "^4.9.0", + "@smithy/property-provider": "^4.2.6", + "@smithy/shared-ini-file-loader": "^4.4.1", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -5210,16 +5198,16 @@ } }, "node_modules/@smithy/node-http-handler": { - "version": "4.4.5", - "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.4.5.tgz", - "integrity": "sha512-CMnzM9R2WqlqXQGtIlsHMEZfXKJVTIrqCNoSd/QpAyp+Dw0a1Vps13l6ma1fH8g7zSPNsA59B/kWgeylFuA/lw==", + "version": "4.4.6", + "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.4.6.tgz", + "integrity": "sha512-Gsb9jf4ido5BhPfani4ggyrKDd3ZK+vTFWmUaZeFg5G3E5nhFmqiTzAIbHqmPs1sARuJawDiGMGR/nY+Gw6+aQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/abort-controller": "^4.2.5", - "@smithy/protocol-http": "^5.3.5", - "@smithy/querystring-builder": "^4.2.5", - "@smithy/types": "^4.9.0", + "@smithy/abort-controller": "^4.2.6", + "@smithy/protocol-http": "^5.3.6", + "@smithy/querystring-builder": "^4.2.6", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -5227,13 +5215,13 @@ } }, "node_modules/@smithy/property-provider": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-4.2.5.tgz", - "integrity": "sha512-8iLN1XSE1rl4MuxvQ+5OSk/Zb5El7NJZ1td6Tn+8dQQHIjp59Lwl6bd0+nzw6SKm2wSSriH2v/I9LPzUic7EOg==", + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-4.2.6.tgz", + "integrity": "sha512-a/tGSLPtaia2krbRdwR4xbZKO8lU67DjMk/jfY4QKt4PRlKML+2tL/gmAuhNdFDioO6wOq0sXkfnddNFH9mNUA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.9.0", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -5241,13 +5229,13 @@ } }, "node_modules/@smithy/protocol-http": { - "version": "5.3.5", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.3.5.tgz", - "integrity": "sha512-RlaL+sA0LNMp03bf7XPbFmT5gN+w3besXSWMkA8rcmxLSVfiEXElQi4O2IWwPfxzcHkxqrwBFMbngB8yx/RvaQ==", + "version": "5.3.6", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.3.6.tgz", + "integrity": "sha512-qLRZzP2+PqhE3OSwvY2jpBbP0WKTZ9opTsn+6IWYI0SKVpbG+imcfNxXPq9fj5XeaUTr7odpsNpK6dmoiM1gJQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.9.0", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -5255,13 +5243,13 @@ } }, "node_modules/@smithy/querystring-builder": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.2.5.tgz", - "integrity": "sha512-y98otMI1saoajeik2kLfGyRp11e5U/iJYH/wLCh3aTV/XutbGT9nziKGkgCaMD1ghK7p6htHMm6b6scl9JRUWg==", + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.2.6.tgz", + "integrity": "sha512-MeM9fTAiD3HvoInK/aA8mgJaKQDvm8N0dKy6EiFaCfgpovQr4CaOkJC28XqlSRABM+sHdSQXbC8NZ0DShBMHqg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.9.0", + "@smithy/types": "^4.10.0", "@smithy/util-uri-escape": "^4.2.0", "tslib": "^2.6.2" }, @@ -5270,13 +5258,13 @@ } }, "node_modules/@smithy/querystring-parser": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.2.5.tgz", - "integrity": "sha512-031WCTdPYgiQRYNPXznHXof2YM0GwL6SeaSyTH/P72M1Vz73TvCNH2Nq8Iu2IEPq9QP2yx0/nrw5YmSeAi/AjQ==", + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.2.6.tgz", + "integrity": "sha512-YmWxl32SQRw/kIRccSOxzS/Ib8/b5/f9ex0r5PR40jRJg8X1wgM3KrR2In+8zvOGVhRSXgvyQpw9yOSlmfmSnA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.9.0", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -5284,26 +5272,26 @@ } }, "node_modules/@smithy/service-error-classification": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-4.2.5.tgz", - "integrity": "sha512-8fEvK+WPE3wUAcDvqDQG1Vk3ANLR8Px979te96m84CbKAjBVf25rPYSzb4xU4hlTyho7VhOGnh5i62D/JVF0JQ==", + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-4.2.6.tgz", + "integrity": "sha512-Q73XBrzJlGTut2nf5RglSntHKgAG0+KiTJdO5QQblLfr4TdliGwIAha1iZIjwisc3rA5ulzqwwsYC6xrclxVQg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.9.0" + "@smithy/types": "^4.10.0" }, "engines": { "node": ">=18.0.0" } }, "node_modules/@smithy/shared-ini-file-loader": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.4.0.tgz", - "integrity": "sha512-5WmZ5+kJgJDjwXXIzr1vDTG+RhF9wzSODQBfkrQ2VVkYALKGvZX1lgVSxEkgicSAFnFhPj5rudJV0zoinqS0bA==", + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.4.1.tgz", + "integrity": "sha512-tph+oQYPbpN6NamF030hx1gb5YN2Plog+GLaRHpoEDwp8+ZPG26rIJvStG9hkWzN2HBn3HcWg0sHeB0tmkYzqA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.9.0", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -5311,17 +5299,17 @@ } }, "node_modules/@smithy/signature-v4": { - "version": "5.3.5", - "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-5.3.5.tgz", - "integrity": "sha512-xSUfMu1FT7ccfSXkoLl/QRQBi2rOvi3tiBZU2Tdy3I6cgvZ6SEi9QNey+lqps/sJRnogIS+lq+B1gxxbra2a/w==", + "version": "5.3.6", + "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-5.3.6.tgz", + "integrity": "sha512-P1TXDHuQMadTMTOBv4oElZMURU4uyEhxhHfn+qOc2iofW9Rd4sZtBGx58Lzk112rIGVEYZT8eUMK4NftpewpRA==", "dev": true, "license": "Apache-2.0", "dependencies": { "@smithy/is-array-buffer": "^4.2.0", - "@smithy/protocol-http": "^5.3.5", - "@smithy/types": "^4.9.0", + "@smithy/protocol-http": "^5.3.6", + "@smithy/types": "^4.10.0", "@smithy/util-hex-encoding": "^4.2.0", - "@smithy/util-middleware": "^4.2.5", + "@smithy/util-middleware": "^4.2.6", "@smithy/util-uri-escape": "^4.2.0", "@smithy/util-utf8": "^4.2.0", "tslib": "^2.6.2" @@ -5331,18 +5319,18 @@ } }, "node_modules/@smithy/smithy-client": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.9.6.tgz", - "integrity": "sha512-hGz42hggqReicRRZUvrKDQiAmoJnx1Q+XfAJnYAGu544gOfxQCAC3hGGD7+Px2gEUUxB/kKtQV7LOtBRNyxteQ==", + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.10.1.tgz", + "integrity": "sha512-1ovWdxzYprhq+mWqiGZlt3kF69LJthuQcfY9BIyHx9MywTFKzFapluku1QXoaBB43GCsLDxNqS+1v30ure69AA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/core": "^3.18.3", - "@smithy/middleware-endpoint": "^4.3.10", - "@smithy/middleware-stack": "^4.2.5", - "@smithy/protocol-http": "^5.3.5", - "@smithy/types": "^4.9.0", - "@smithy/util-stream": "^4.5.6", + "@smithy/core": "^3.19.0", + "@smithy/middleware-endpoint": "^4.4.0", + "@smithy/middleware-stack": "^4.2.6", + "@smithy/protocol-http": "^5.3.6", + "@smithy/types": "^4.10.0", + "@smithy/util-stream": "^4.5.7", "tslib": "^2.6.2" }, "engines": { @@ -5350,9 +5338,9 @@ } }, "node_modules/@smithy/types": { - "version": "4.9.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.9.0.tgz", - "integrity": "sha512-MvUbdnXDTwykR8cB1WZvNNwqoWVaTRA0RLlLmf/cIFNMM2cKWz01X4Ly6SMC4Kks30r8tT3Cty0jmeWfiuyHTA==", + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.10.0.tgz", + "integrity": "sha512-K9mY7V/f3Ul+/Gz4LJANZ3vJ/yiBIwCyxe0sPT4vNJK63Srvd+Yk1IzP0t+nE7XFSpIGtzR71yljtnqpUTYFlQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -5363,14 +5351,14 @@ } }, "node_modules/@smithy/url-parser": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.2.5.tgz", - "integrity": "sha512-VaxMGsilqFnK1CeBX+LXnSuaMx4sTL/6znSZh2829txWieazdVxr54HmiyTsIbpOTLcf5nYpq9lpzmwRdxj6rQ==", + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.2.6.tgz", + "integrity": "sha512-tVoyzJ2vXp4R3/aeV4EQjBDmCuWxRa8eo3KybL7Xv4wEM16nObYh7H1sNfcuLWHAAAzb0RVyxUz1S3sGj4X+Tg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/querystring-parser": "^4.2.5", - "@smithy/types": "^4.9.0", + "@smithy/querystring-parser": "^4.2.6", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -5446,15 +5434,15 @@ } }, "node_modules/@smithy/util-defaults-mode-browser": { - "version": "4.3.9", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-4.3.9.tgz", - "integrity": "sha512-Bh5bU40BgdkXE2BcaNazhNtEXi1TC0S+1d84vUwv5srWfvbeRNUKFzwKQgC6p6MXPvEgw+9+HdX3pOwT6ut5aw==", + "version": "4.3.15", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-4.3.15.tgz", + "integrity": "sha512-LiZQVAg/oO8kueX4c+oMls5njaD2cRLXRfcjlTYjhIqmwHnCwkQO5B3dMQH0c5PACILxGAQf6Mxsq7CjlDc76A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/property-provider": "^4.2.5", - "@smithy/smithy-client": "^4.9.6", - "@smithy/types": "^4.9.0", + "@smithy/property-provider": "^4.2.6", + "@smithy/smithy-client": "^4.10.1", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -5462,18 +5450,18 @@ } }, "node_modules/@smithy/util-defaults-mode-node": { - "version": "4.2.12", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-4.2.12.tgz", - "integrity": "sha512-EHZwe1E9Q7umImIyCKQg/Cm+S+7rjXxCRvfGmKifqwYvn7M8M4ZcowwUOQzvuuxUUmdzCkqL0Eq0z1m74Pq6pw==", + "version": "4.2.18", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-4.2.18.tgz", + "integrity": "sha512-Kw2J+KzYm9C9Z9nY6+W0tEnoZOofstVCMTshli9jhQbQCy64rueGfKzPfuFBnVUqZD9JobxTh2DzHmPkp/Va/Q==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/config-resolver": "^4.4.3", - "@smithy/credential-provider-imds": "^4.2.5", - "@smithy/node-config-provider": "^4.3.5", - "@smithy/property-provider": "^4.2.5", - "@smithy/smithy-client": "^4.9.6", - "@smithy/types": "^4.9.0", + "@smithy/config-resolver": "^4.4.4", + "@smithy/credential-provider-imds": "^4.2.6", + "@smithy/node-config-provider": "^4.3.6", + "@smithy/property-provider": "^4.2.6", + "@smithy/smithy-client": "^4.10.1", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -5481,14 +5469,14 @@ } }, "node_modules/@smithy/util-endpoints": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-3.2.5.tgz", - "integrity": "sha512-3O63AAWu2cSNQZp+ayl9I3NapW1p1rR5mlVHcF6hAB1dPZUQFfRPYtplWX/3xrzWthPGj5FqB12taJJCfH6s8A==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-3.2.6.tgz", + "integrity": "sha512-v60VNM2+mPvgHCBXEfMCYrQ0RepP6u6xvbAkMenfe4Mi872CqNkJzgcnQL837e8NdeDxBgrWQRTluKq5Lqdhfg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/node-config-provider": "^4.3.5", - "@smithy/types": "^4.9.0", + "@smithy/node-config-provider": "^4.3.6", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -5509,13 +5497,13 @@ } }, "node_modules/@smithy/util-middleware": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-4.2.5.tgz", - "integrity": "sha512-6Y3+rvBF7+PZOc40ybeZMcGln6xJGVeY60E7jy9Mv5iKpMJpHgRE6dKy9ScsVxvfAYuEX4Q9a65DQX90KaQ3bA==", + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-4.2.6.tgz", + "integrity": "sha512-qrvXUkxBSAFomM3/OEMuDVwjh4wtqK8D2uDZPShzIqOylPst6gor2Cdp6+XrH4dyksAWq/bE2aSDYBTTnj0Rxg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.9.0", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -5523,14 +5511,14 @@ } }, "node_modules/@smithy/util-retry": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-4.2.5.tgz", - "integrity": "sha512-GBj3+EZBbN4NAqJ/7pAhsXdfzdlznOh8PydUijy6FpNIMnHPSMO2/rP4HKu+UFeikJxShERk528oy7GT79YiJg==", + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-4.2.6.tgz", + "integrity": "sha512-x7CeDQLPQ9cb6xN7fRJEjlP9NyGW/YeXWc4j/RUhg4I+H60F0PEeRc2c/z3rm9zmsdiMFzpV/rT+4UHW6KM1SA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/service-error-classification": "^4.2.5", - "@smithy/types": "^4.9.0", + "@smithy/service-error-classification": "^4.2.6", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -5538,15 +5526,15 @@ } }, "node_modules/@smithy/util-stream": { - "version": "4.5.6", - "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.5.6.tgz", - "integrity": "sha512-qWw/UM59TiaFrPevefOZ8CNBKbYEP6wBAIlLqxn3VAIo9rgnTNc4ASbVrqDmhuwI87usnjhdQrxodzAGFFzbRQ==", + "version": "4.5.7", + "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.5.7.tgz", + "integrity": "sha512-Uuy4S5Aj4oF6k1z+i2OtIBJUns4mlg29Ph4S+CqjR+f4XXpSFVgTCYLzMszHJTicYDBxKFtwq2/QSEDSS5l02A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/fetch-http-handler": "^5.3.6", - "@smithy/node-http-handler": "^4.4.5", - "@smithy/types": "^4.9.0", + "@smithy/fetch-http-handler": "^5.3.7", + "@smithy/node-http-handler": "^4.4.6", + "@smithy/types": "^4.10.0", "@smithy/util-base64": "^4.3.0", "@smithy/util-buffer-from": "^4.2.0", "@smithy/util-hex-encoding": "^4.2.0", @@ -5585,14 +5573,14 @@ } }, "node_modules/@smithy/util-waiter": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-4.2.5.tgz", - "integrity": "sha512-Dbun99A3InifQdIrsXZ+QLcC0PGBPAdrl4cj1mTgJvyc9N2zf7QSxg8TBkzsCmGJdE3TLbO9ycwpY0EkWahQ/g==", + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-4.2.6.tgz", + "integrity": "sha512-xU9HwUSik9UUCJmm530yvBy0AwlQFICveKmqvaaTukKkXEAhyiBdHtSrhPrH3rH+uz0ykyaE3LdgsX86C6mDCQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/abort-controller": "^4.2.5", - "@smithy/types": "^4.9.0", + "@smithy/abort-controller": "^4.2.6", + "@smithy/types": "^4.10.0", "tslib": "^2.6.2" }, "engines": { @@ -5643,14 +5631,14 @@ } }, "node_modules/@stylistic/eslint-plugin/node_modules/@typescript-eslint/scope-manager": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.46.4.tgz", - "integrity": "sha512-tMDbLGXb1wC+McN1M6QeDx7P7c0UWO5z9CXqp7J8E+xGcJuUuevWKxuG8j41FoweS3+L41SkyKKkia16jpX7CA==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.50.0.tgz", + "integrity": "sha512-xCwfuCZjhIqy7+HKxBLrDVT5q/iq7XBVBXLn57RTIIpelLtEIZHXAF/Upa3+gaCpeV1NNS5Z9A+ID6jn50VD4A==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.46.4", - "@typescript-eslint/visitor-keys": "8.46.4" + "@typescript-eslint/types": "8.50.0", + "@typescript-eslint/visitor-keys": "8.50.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -5661,9 +5649,9 @@ } }, "node_modules/@stylistic/eslint-plugin/node_modules/@typescript-eslint/types": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.46.4.tgz", - "integrity": "sha512-USjyxm3gQEePdUwJBFjjGNG18xY9A2grDVGuk7/9AkjIF1L+ZrVnwR5VAU5JXtUnBL/Nwt3H31KlRDaksnM7/w==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.50.0.tgz", + "integrity": "sha512-iX1mgmGrXdANhhITbpp2QQM2fGehBse9LbTf0sidWK6yg/NE+uhV5dfU1g6EYPlcReYmkE9QLPq/2irKAmtS9w==", "dev": true, "license": "MIT", "engines": { @@ -5675,21 +5663,20 @@ } }, "node_modules/@stylistic/eslint-plugin/node_modules/@typescript-eslint/typescript-estree": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.46.4.tgz", - "integrity": "sha512-7oV2qEOr1d4NWNmpXLR35LvCfOkTNymY9oyW+lUHkmCno7aOmIf/hMaydnJBUTBMRCOGZh8YjkFOc8dadEoNGA==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.50.0.tgz", + "integrity": "sha512-W7SVAGBR/IX7zm1t70Yujpbk+zdPq/u4soeFSknWFdXIFuWsBGBOUu/Tn/I6KHSKvSh91OiMuaSnYp3mtPt5IQ==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/project-service": "8.46.4", - "@typescript-eslint/tsconfig-utils": "8.46.4", - "@typescript-eslint/types": "8.46.4", - "@typescript-eslint/visitor-keys": "8.46.4", + "@typescript-eslint/project-service": "8.50.0", + "@typescript-eslint/tsconfig-utils": "8.50.0", + "@typescript-eslint/types": "8.50.0", + "@typescript-eslint/visitor-keys": "8.50.0", "debug": "^4.3.4", - "fast-glob": "^3.3.2", - "is-glob": "^4.0.3", "minimatch": "^9.0.4", "semver": "^7.6.0", + "tinyglobby": "^0.2.15", "ts-api-utils": "^2.1.0" }, "engines": { @@ -5704,16 +5691,16 @@ } }, "node_modules/@stylistic/eslint-plugin/node_modules/@typescript-eslint/utils": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.46.4.tgz", - "integrity": "sha512-AbSv11fklGXV6T28dp2Me04Uw90R2iJ30g2bgLz529Koehrmkbs1r7paFqr1vPCZi7hHwYxYtxfyQMRC8QaVSg==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.50.0.tgz", + "integrity": "sha512-87KgUXET09CRjGCi2Ejxy3PULXna63/bMYv72tCAlDJC3Yqwln0HiFJ3VJMst2+mEtNtZu5oFvX4qJGjKsnAgg==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.46.4", - "@typescript-eslint/types": "8.46.4", - "@typescript-eslint/typescript-estree": "8.46.4" + "@typescript-eslint/scope-manager": "8.50.0", + "@typescript-eslint/types": "8.50.0", + "@typescript-eslint/typescript-estree": "8.50.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -5728,13 +5715,13 @@ } }, "node_modules/@stylistic/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.46.4.tgz", - "integrity": "sha512-/++5CYLQqsO9HFGLI7APrxBJYo+5OCMpViuhV8q5/Qa3o5mMrF//eQHks+PXcsAVaLdn817fMuS7zqoXNNZGaw==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.50.0.tgz", + "integrity": "sha512-Xzmnb58+Db78gT/CCj/PVCvK+zxbnsw6F+O1oheYszJbBSdEjVhQi3C/Xttzxgi/GLmpvOggRs1RFpiJ8+c34Q==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.46.4", + "@typescript-eslint/types": "8.50.0", "eslint-visitor-keys": "^4.2.1" }, "engines": { @@ -5789,15 +5776,6 @@ "node": ">=14.16" } }, - "node_modules/@tootallnate/once": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", - "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", - "license": "MIT", - "engines": { - "node": ">= 10" - } - }, "node_modules/@tsconfig/node10": { "version": "1.0.12", "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.12.tgz", @@ -6097,9 +6075,9 @@ "license": "MIT" }, "node_modules/@types/lodash": { - "version": "4.17.20", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.20.tgz", - "integrity": "sha512-H3MHACvFUEiujabxhaI/ImO6gUrd8oOurg7LQtS7mbwIXA/cUqWrvBsaeJ23aZEPk1TAYkurjfMbSELfoCXlGA==", + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-FOvQ0YPD5NOfPgMzJihoT+Za5pdkDJWcbpuj1DjaKZIr/gxodQjY/uWEFlTNqW2ugXHUiL8lRQgw63dzKHZdeQ==", "license": "MIT" }, "node_modules/@types/markdown-it": { @@ -6323,9 +6301,9 @@ "license": "MIT" }, "node_modules/@types/yargs": { - "version": "17.0.34", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.34.tgz", - "integrity": "sha512-KExbHVa92aJpw9WDQvzBaGVE2/Pz+pLZQloT2hjL8IqsZnV62rlPOYvNnLmf/L2dyllfVUOVBj64M0z/46eR2A==", + "version": "17.0.35", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.35.tgz", + "integrity": "sha512-qUHkeCyQFxMXg79wQfTtfndEC+N9ZZg76HJftDJp+qH2tV7Gj4OJi7l+PiWwJ+pWtW8GwSmqsDj/oymhrTWXjg==", "dev": true, "license": "MIT", "dependencies": { @@ -6404,14 +6382,14 @@ } }, "node_modules/@typescript-eslint/project-service": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.46.4.tgz", - "integrity": "sha512-nPiRSKuvtTN+no/2N1kt2tUh/HoFzeEgOm9fQ6XQk4/ApGqjx0zFIIaLJ6wooR1HIoozvj2j6vTi/1fgAz7UYQ==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.50.0.tgz", + "integrity": "sha512-Cg/nQcL1BcoTijEWyx4mkVC56r8dj44bFDvBdygifuS20f3OZCHmFbjF34DPSi07kwlFvqfv/xOLnJ5DquxSGQ==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.46.4", - "@typescript-eslint/types": "^8.46.4", + "@typescript-eslint/tsconfig-utils": "^8.50.0", + "@typescript-eslint/types": "^8.50.0", "debug": "^4.3.4" }, "engines": { @@ -6426,9 +6404,9 @@ } }, "node_modules/@typescript-eslint/project-service/node_modules/@typescript-eslint/types": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.46.4.tgz", - "integrity": "sha512-USjyxm3gQEePdUwJBFjjGNG18xY9A2grDVGuk7/9AkjIF1L+ZrVnwR5VAU5JXtUnBL/Nwt3H31KlRDaksnM7/w==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.50.0.tgz", + "integrity": "sha512-iX1mgmGrXdANhhITbpp2QQM2fGehBse9LbTf0sidWK6yg/NE+uhV5dfU1g6EYPlcReYmkE9QLPq/2irKAmtS9w==", "dev": true, "license": "MIT", "engines": { @@ -6458,9 +6436,9 @@ } }, "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.46.4.tgz", - "integrity": "sha512-+/XqaZPIAk6Cjg7NWgSGe27X4zMGqrFqZ8atJsX3CWxH/jACqWnrWI68h7nHQld0y+k9eTTjb9r+KU4twLoo9A==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.50.0.tgz", + "integrity": "sha512-vxd3G/ybKTSlm31MOA96gqvrRGv9RJ7LGtZCn2Vrc5htA0zCDvcMqUkifcjrWNNKXHUU3WCkYOzzVSFBd0wa2w==", "dev": true, "license": "MIT", "engines": { @@ -6934,13 +6912,6 @@ "node": ">=8" } }, - "node_modules/abab": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", - "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", - "deprecated": "Use your platform's native atob() and btoa() methods instead", - "license": "BSD-3-Clause" - }, "node_modules/accepts": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", @@ -6958,6 +6929,7 @@ "version": "8.15.0", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", + "dev": true, "license": "MIT", "bin": { "acorn": "bin/acorn" @@ -6966,16 +6938,6 @@ "node": ">=0.4.0" } }, - "node_modules/acorn-globals": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-7.0.1.tgz", - "integrity": "sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==", - "license": "MIT", - "dependencies": { - "acorn": "^8.1.0", - "acorn-walk": "^8.0.2" - } - }, "node_modules/acorn-jsx": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", @@ -6990,6 +6952,7 @@ "version": "8.3.4", "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.4.tgz", "integrity": "sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==", + "dev": true, "license": "MIT", "dependencies": { "acorn": "^8.11.0" @@ -7007,18 +6970,6 @@ "node": ">=12.0" } }, - "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "license": "MIT", - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, "node_modules/aggregate-error": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", @@ -7274,15 +7225,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/array-flat-polyfill": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/array-flat-polyfill/-/array-flat-polyfill-1.0.1.tgz", - "integrity": "sha512-hfJmKupmQN0lwi0xG6FQ5U8Rd97RnIERplymOv/qpq8AoNKPPAnxJadjFA23FNWm88wykh9HmpLJUUwUtNU/iw==", - "license": "CC0-1.0", - "engines": { - "node": ">=6.0.0" - } - }, "node_modules/array-flatten": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", @@ -7663,9 +7605,9 @@ "license": "MIT" }, "node_modules/baseline-browser-mapping": { - "version": "2.8.27", - "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.8.27.tgz", - "integrity": "sha512-2CXFpkjVnY2FT+B6GrSYxzYf65BJWEqz5tIRHCvNsZZ2F3CmsCB37h8SpYgKG7y9C4YAeTipIPWG7EmFmhAeXA==", + "version": "2.9.8", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.9.8.tgz", + "integrity": "sha512-Y1fOuNDowLfgKOypdc9SPABfoWXuZHBOyCS4cD52IeZBhr4Md6CLLs6atcxVrzRmQ06E7hSlm5bHHApPKR/byA==", "dev": true, "license": "Apache-2.0", "bin": { @@ -7734,12 +7676,6 @@ "ieee754": "^1.1.13" } }, - "node_modules/block-elements": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/block-elements/-/block-elements-1.2.0.tgz", - "integrity": "sha512-4E+pnt4v8HSEEH3Dwe2Bcu8TIbdReez7b5Qjs11dJIdbGFaNSobDgphWxy9NtjYB9ZsZd7DzByDbeXy4DvYz5Q==", - "license": "MIT" - }, "node_modules/bluebird": { "version": "3.7.2", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", @@ -7747,23 +7683,23 @@ "license": "MIT" }, "node_modules/body-parser": { - "version": "1.20.3", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", - "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", + "version": "1.20.4", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.4.tgz", + "integrity": "sha512-ZTgYYLMOXY9qKU/57FAo8F+HA2dGX7bqGc71txDRC1rS4frdFI5R7NhluHxH6M0YItAP0sHB4uqAOcYKxO6uGA==", "license": "MIT", "dependencies": { - "bytes": "3.1.2", + "bytes": "~3.1.2", "content-type": "~1.0.5", "debug": "2.6.9", "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.13.0", - "raw-body": "2.5.2", + "destroy": "~1.2.0", + "http-errors": "~2.0.1", + "iconv-lite": "~0.4.24", + "on-finished": "~2.4.1", + "qs": "~6.14.0", + "raw-body": "~2.5.3", "type-is": "~1.6.18", - "unpipe": "1.0.0" + "unpipe": "~1.0.0" }, "engines": { "node": ">= 0.8", @@ -7785,25 +7721,10 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "license": "MIT" }, - "node_modules/body-parser/node_modules/qs": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", - "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", - "license": "BSD-3-Clause", - "dependencies": { - "side-channel": "^1.0.6" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/bowser": { - "version": "2.12.1", - "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.12.1.tgz", - "integrity": "sha512-z4rE2Gxh7tvshQ4hluIT7XcFrgLIQaw9X3A+kTTRdovCz5PMukm/0QC/BKSYPj3omF5Qfypn9O/c5kgpmvYUCw==", + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.13.1.tgz", + "integrity": "sha512-OHawaAbjwx6rqICCKgSG0SAnT05bzd7ppyKLVUITZpANBaaMFBAsaNkto3LoQ31tyFP5kNujE8Cdx85G9VzOkw==", "dev": true, "license": "MIT" }, @@ -7846,9 +7767,9 @@ "license": "ISC" }, "node_modules/browserslist": { - "version": "4.28.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.0.tgz", - "integrity": "sha512-tbydkR/CxfMwelN0vwdP/pLkDwyAASZ+VfWm4EOwlB6SWhx1sYnWLqo8N5j0rAzPfzfRaxt0mM/4wPU/Su84RQ==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.1.tgz", + "integrity": "sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==", "dev": true, "funding": [ { @@ -7866,11 +7787,11 @@ ], "license": "MIT", "dependencies": { - "baseline-browser-mapping": "^2.8.25", - "caniuse-lite": "^1.0.30001754", - "electron-to-chromium": "^1.5.249", + "baseline-browser-mapping": "^2.9.0", + "caniuse-lite": "^1.0.30001759", + "electron-to-chromium": "^1.5.263", "node-releases": "^2.0.27", - "update-browserslist-db": "^1.1.4" + "update-browserslist-db": "^1.2.0" }, "bin": { "browserslist": "cli.js" @@ -8150,9 +8071,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001754", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001754.tgz", - "integrity": "sha512-x6OeBXueoAceOmotzx3PO4Zpt4rzpeIFsSr6AAePTZxSkXiYDUmpypEl7e2+8NCd9bD7bXjqyef8CJYPC1jfxg==", + "version": "1.0.30001760", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001760.tgz", + "integrity": "sha512-7AAMPcueWELt1p3mi13HR/LHH0TJLT11cnwDJEs3xA4+CK/PLKeO9Kl1oru24htkyUKtkGCvAx4ohB0Ttry8Dw==", "dev": true, "funding": [ { @@ -8572,16 +8493,6 @@ "node": ">=0.10.0" } }, - "node_modules/collapse-whitespace": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/collapse-whitespace/-/collapse-whitespace-1.1.7.tgz", - "integrity": "sha512-24up1hbQSsnaDSGHPOvGQT84vmxvG0QUrI8tguiQpo9I5irrnypCKwddXindXMyXhoTe+9V6LYj3aFIhTQ4UCg==", - "license": "MIT", - "dependencies": { - "block-elements": "^1.0.0", - "void-elements": "^2.0.1" - } - }, "node_modules/collect-all": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/collect-all/-/collect-all-1.0.4.tgz", @@ -8604,13 +8515,13 @@ "license": "MIT" }, "node_modules/color": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/color/-/color-5.0.2.tgz", - "integrity": "sha512-e2hz5BzbUPcYlIRHo8ieAhYgoajrJr+hWoceg6E345TPsATMUKqDgzt8fSXZJJbxfpiPzkWyphz8yn8At7q3fA==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/color/-/color-5.0.3.tgz", + "integrity": "sha512-ezmVcLR3xAVp8kYOm4GS45ZLLgIE6SPAFoduLr6hTDajwb3KZ2F46gulK3XpcwRFb5KKGCSezCBAY4Dw4HsyXA==", "license": "MIT", "dependencies": { - "color-convert": "^3.0.1", - "color-string": "^2.0.0" + "color-convert": "^3.1.3", + "color-string": "^2.1.3" }, "engines": { "node": ">=18" @@ -8635,9 +8546,9 @@ "license": "MIT" }, "node_modules/color-string": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/color-string/-/color-string-2.1.2.tgz", - "integrity": "sha512-RxmjYxbWemV9gKu4zPgiZagUxbH3RQpEIO77XoSSX0ivgABDZ+h8Zuash/EMFLTI4N9QgFPOJ6JQpPZKFxa+dA==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-2.1.4.tgz", + "integrity": "sha512-Bb6Cq8oq0IjDOe8wJmi4JeNn763Xs9cfrBcaylK1tPypWzyoy2G3l90v9k64kjphl/ZJjPIShFztenRomi8WTg==", "license": "MIT", "dependencies": { "color-name": "^2.0.0" @@ -8656,9 +8567,9 @@ } }, "node_modules/color/node_modules/color-convert": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-3.1.2.tgz", - "integrity": "sha512-UNqkvCDXstVck3kdowtOTWROIJQwafjOfXSmddoDrXo4cewMKmusCeF22Q24zvjR8nwWib/3S/dfyzPItPEiJg==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-3.1.3.tgz", + "integrity": "sha512-fasDH2ont2GqF5HpyO4w0+BcewlhHEZOFn9c1ckZdHpJ56Qb7MHhH/IcJZbBGgvdtwdwNbLvxiBEdg336iA9Sg==", "license": "MIT", "dependencies": { "color-name": "^2.0.0" @@ -8943,9 +8854,9 @@ } }, "node_modules/contentstack": { - "version": "3.26.2", - "resolved": "https://registry.npmjs.org/contentstack/-/contentstack-3.26.2.tgz", - "integrity": "sha512-q6JVBxAcQRuvpwzrT3XbsuCei/AKZXD4nK4fuc1AYg6PE6Rjnq1v5S5PjSFVCk7N4JCct7OQDQs0xmOSXyRyyQ==", + "version": "3.26.3", + "resolved": "https://registry.npmjs.org/contentstack/-/contentstack-3.26.3.tgz", + "integrity": "sha512-mN1/Z8YV1HoIw03oEgnoHlaX/ueOLZH4unbf3zJt6uOJSO51gDFfOQEnKsTfUfWkyks9xUmED3WzPMxpnxdqcQ==", "license": "MIT", "dependencies": { "@contentstack/utils": "^1.4.1", @@ -8965,28 +8876,28 @@ "license": "MIT" }, "node_modules/cookie": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", - "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", + "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==", "license": "MIT", "engines": { "node": ">= 0.6" } }, "node_modules/cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.7.tgz", + "integrity": "sha512-NXdYc3dLr47pBkpUCHtKSwIOQXLVn8dZEuywboCOJY/osA0wFSLlSawr3KN8qXJEyX66FcONTH8EIlVuK0yyFA==", "license": "MIT" }, "node_modules/core-js-compat": { - "version": "3.46.0", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.46.0.tgz", - "integrity": "sha512-p9hObIIEENxSV8xIu+V68JjSeARg6UVMG5mR+JEUguG3sI6MsiS1njz2jHmyJDvA+8jX/sytkBHup6kxhM9law==", + "version": "3.47.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.47.0.tgz", + "integrity": "sha512-IGfuznZ/n7Kp9+nypamBhvwdwLsW6KC8IOaURw2doAK5e98AG3acVLdh0woOnEqCfUtS+Vu882JE4k/DAm3ItQ==", "dev": true, "license": "MIT", "dependencies": { - "browserslist": "^4.26.3" + "browserslist": "^4.28.0" }, "funding": { "type": "opencollective", @@ -9081,30 +8992,6 @@ "node": ">=8" } }, - "node_modules/cssom": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.5.0.tgz", - "integrity": "sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==", - "license": "MIT" - }, - "node_modules/cssstyle": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", - "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", - "license": "MIT", - "dependencies": { - "cssom": "~0.3.6" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cssstyle/node_modules/cssom": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", - "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", - "license": "MIT" - }, "node_modules/csv": { "version": "5.5.3", "resolved": "https://registry.npmjs.org/csv/-/csv-5.5.3.tgz", @@ -9146,20 +9033,6 @@ "node": ">=0.4.0" } }, - "node_modules/data-urls": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-3.0.2.tgz", - "integrity": "sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==", - "license": "MIT", - "dependencies": { - "abab": "^2.0.6", - "whatwg-mimetype": "^3.0.0", - "whatwg-url": "^11.0.0" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/data-view-buffer": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", @@ -9258,12 +9131,6 @@ "node": ">=0.10.0" } }, - "node_modules/decimal.js": { - "version": "10.6.0", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.6.0.tgz", - "integrity": "sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==", - "license": "MIT" - }, "node_modules/decompress-response": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", @@ -9294,9 +9161,9 @@ } }, "node_modules/dedent": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.7.0.tgz", - "integrity": "sha512-HGFtf8yhuhGhqO07SV79tRp+br4MnbdjeVxotpn1QBl30pcLLCQjX5b2295ll0fv8RKDKsmWYrl05usHM9CewQ==", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.7.1.tgz", + "integrity": "sha512-9JmrhGZpOlEgOLdQgSm0zxFaYoQon408V1v49aqTWuXENVlnCuY9JBZcXZiCsZQWDjTm5Qf/nIvAy77mXDAjEg==", "dev": true, "license": "MIT", "peerDependencies": { @@ -9549,19 +9416,6 @@ "node": ">=6.0.0" } }, - "node_modules/domexception": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/domexception/-/domexception-4.0.0.tgz", - "integrity": "sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw==", - "deprecated": "Use your platform's native DOMException instead", - "license": "MIT", - "dependencies": { - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/dot-case": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", @@ -9652,9 +9506,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.250", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.250.tgz", - "integrity": "sha512-/5UMj9IiGDMOFBnN4i7/Ry5onJrAGSbOGo3s9FEKmwobGq6xw832ccET0CE3CkkMBZ8GJSlUIesZofpyurqDXw==", + "version": "1.5.267", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.267.tgz", + "integrity": "sha512-0Drusm6MVRXSOJpGbaSVgcQsuB4hEkMpHXaVstcPmhu5LIedxs1xNK/nIxmQIU/RPC0+1/o0AVZfBTkTNJOdUw==", "dev": true, "license": "ISC" }, @@ -9712,9 +9566,9 @@ } }, "node_modules/enhanced-resolve": { - "version": "5.18.3", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.3.tgz", - "integrity": "sha512-d4lC8xfavMeBjzGr2vECC3fsGXziXZQyJxD868h2M/mBI3PwAuODxAkLkq5HYuvrPYcUtiLzsTo8U3PgX3Ocww==", + "version": "5.18.4", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.4.tgz", + "integrity": "sha512-LgQMM4WXU3QI+SYgEc2liRgznaD5ojbmY3sb8LxyguVkIg5FxdpTkvk72te2R38/TGKxH634oLxXRGY6d7AP+Q==", "dev": true, "license": "MIT", "dependencies": { @@ -9772,9 +9626,9 @@ } }, "node_modules/es-abstract": { - "version": "1.24.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.0.tgz", - "integrity": "sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg==", + "version": "1.24.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.1.tgz", + "integrity": "sha512-zHXBLhP+QehSSbsS9Pt23Gg964240DPd6QCf8WpkqEXxQ7fhdZzYsocOr5u7apWonsS5EjZDmTF+/slGMyasvw==", "license": "MIT", "dependencies": { "array-buffer-byte-length": "^1.0.2", @@ -9927,9 +9781,9 @@ "license": "MIT" }, "node_modules/esbuild": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.12.tgz", - "integrity": "sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.27.2.tgz", + "integrity": "sha512-HyNQImnsOC7X9PMNaCIeAm4ISCQXs5a5YasTXVliKv4uuBo1dKrG0A+uQS8M5eXjVMnLg3WgXaKvprHlFJQffw==", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -9940,32 +9794,32 @@ "node": ">=18" }, "optionalDependencies": { - "@esbuild/aix-ppc64": "0.25.12", - "@esbuild/android-arm": "0.25.12", - "@esbuild/android-arm64": "0.25.12", - "@esbuild/android-x64": "0.25.12", - "@esbuild/darwin-arm64": "0.25.12", - "@esbuild/darwin-x64": "0.25.12", - "@esbuild/freebsd-arm64": "0.25.12", - "@esbuild/freebsd-x64": "0.25.12", - "@esbuild/linux-arm": "0.25.12", - "@esbuild/linux-arm64": "0.25.12", - "@esbuild/linux-ia32": "0.25.12", - "@esbuild/linux-loong64": "0.25.12", - "@esbuild/linux-mips64el": "0.25.12", - "@esbuild/linux-ppc64": "0.25.12", - "@esbuild/linux-riscv64": "0.25.12", - "@esbuild/linux-s390x": "0.25.12", - "@esbuild/linux-x64": "0.25.12", - "@esbuild/netbsd-arm64": "0.25.12", - "@esbuild/netbsd-x64": "0.25.12", - "@esbuild/openbsd-arm64": "0.25.12", - "@esbuild/openbsd-x64": "0.25.12", - "@esbuild/openharmony-arm64": "0.25.12", - "@esbuild/sunos-x64": "0.25.12", - "@esbuild/win32-arm64": "0.25.12", - "@esbuild/win32-ia32": "0.25.12", - "@esbuild/win32-x64": "0.25.12" + "@esbuild/aix-ppc64": "0.27.2", + "@esbuild/android-arm": "0.27.2", + "@esbuild/android-arm64": "0.27.2", + "@esbuild/android-x64": "0.27.2", + "@esbuild/darwin-arm64": "0.27.2", + "@esbuild/darwin-x64": "0.27.2", + "@esbuild/freebsd-arm64": "0.27.2", + "@esbuild/freebsd-x64": "0.27.2", + "@esbuild/linux-arm": "0.27.2", + "@esbuild/linux-arm64": "0.27.2", + "@esbuild/linux-ia32": "0.27.2", + "@esbuild/linux-loong64": "0.27.2", + "@esbuild/linux-mips64el": "0.27.2", + "@esbuild/linux-ppc64": "0.27.2", + "@esbuild/linux-riscv64": "0.27.2", + "@esbuild/linux-s390x": "0.27.2", + "@esbuild/linux-x64": "0.27.2", + "@esbuild/netbsd-arm64": "0.27.2", + "@esbuild/netbsd-x64": "0.27.2", + "@esbuild/openbsd-arm64": "0.27.2", + "@esbuild/openbsd-x64": "0.27.2", + "@esbuild/openharmony-arm64": "0.27.2", + "@esbuild/sunos-x64": "0.27.2", + "@esbuild/win32-arm64": "0.27.2", + "@esbuild/win32-ia32": "0.27.2", + "@esbuild/win32-x64": "0.27.2" } }, "node_modules/escalade": { @@ -9995,27 +9849,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/escodegen": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", - "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", - "license": "BSD-2-Clause", - "dependencies": { - "esprima": "^4.0.1", - "estraverse": "^5.2.0", - "esutils": "^2.0.2" - }, - "bin": { - "escodegen": "bin/escodegen.js", - "esgenerate": "bin/esgenerate.js" - }, - "engines": { - "node": ">=6.0" - }, - "optionalDependencies": { - "source-map": "~0.6.1" - } - }, "node_modules/eslint": { "version": "8.57.1", "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", @@ -10090,14 +9923,14 @@ } }, "node_modules/eslint-config-oclif": { - "version": "6.0.116", - "resolved": "https://registry.npmjs.org/eslint-config-oclif/-/eslint-config-oclif-6.0.116.tgz", - "integrity": "sha512-h1iKXrrOZFuGy7huGJ6u/rQNg8lVPVk7jNMqWR2ykla4/4IpXgjCtfXCoyv5vX9W3ufr0+acIV+e3D8Lau8eFg==", + "version": "6.0.126", + "resolved": "https://registry.npmjs.org/eslint-config-oclif/-/eslint-config-oclif-6.0.126.tgz", + "integrity": "sha512-X9nixLhi7vd1el9lA4aIyWYx1akHoo0wfZjFDqo17iFxToZi2PKIPRnRJrFMH2Py80BocahWJhZloZ9eZUh3Lg==", "dev": true, "license": "MIT", "dependencies": { "@eslint/compat": "^1.4.1", - "@eslint/eslintrc": "^3.3.1", + "@eslint/eslintrc": "^3.3.3", "@eslint/js": "^9.38.0", "@stylistic/eslint-plugin": "^3.1.0", "@typescript-eslint/eslint-plugin": "^8", @@ -10112,7 +9945,7 @@ "eslint-plugin-n": "^17.22.0", "eslint-plugin-perfectionist": "^4", "eslint-plugin-unicorn": "^56.0.1", - "typescript-eslint": "^8.46.3" + "typescript-eslint": "^8.49.0" }, "engines": { "node": ">=18.18.0" @@ -10506,9 +10339,9 @@ } }, "node_modules/eslint-config-oclif/node_modules/@eslint/eslintrc": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.1.tgz", - "integrity": "sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.3.tgz", + "integrity": "sha512-Kr+LPIUVKz2qkx1HAMH8q1q6azbqBAsXJUxBl/ODDuVPX45Z9DfwB8tPjTi6nNZ8BuM3nbJxC5zCAg5elnBUTQ==", "dev": true, "license": "MIT", "dependencies": { @@ -10518,7 +10351,7 @@ "globals": "^14.0.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", + "js-yaml": "^4.1.1", "minimatch": "^3.1.2", "strip-json-comments": "^3.1.1" }, @@ -10530,9 +10363,9 @@ } }, "node_modules/eslint-config-oclif/node_modules/@eslint/js": { - "version": "9.39.1", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.1.tgz", - "integrity": "sha512-S26Stp4zCy88tH94QbBv3XCuzRQiZ9yXofEILmglYTh/Ug/a9/umqvgFtYBAo3Lp0nsI/5/qH1CCrbdK3AP1Tw==", + "version": "9.39.2", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.2.tgz", + "integrity": "sha512-q1mjIoW1VX4IvSocvM/vbTiveKC4k9eLrajNEuSsmjymSDEbpGddtpfOoN7YGAqBK3NG+uqo8ia4PDTt8buCYA==", "dev": true, "license": "MIT", "engines": { @@ -10543,18 +10376,17 @@ } }, "node_modules/eslint-config-oclif/node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.46.4.tgz", - "integrity": "sha512-R48VhmTJqplNyDxCyqqVkFSZIx1qX6PzwqgcXn1olLrzxcSBDlOsbtcnQuQhNtnNiJ4Xe5gREI1foajYaYU2Vg==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.50.0.tgz", + "integrity": "sha512-O7QnmOXYKVtPrfYzMolrCTfkezCJS9+ljLdKW/+DCvRsc3UAz+sbH6Xcsv7p30+0OwUbeWfUDAQE0vpabZ3QLg==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.46.4", - "@typescript-eslint/type-utils": "8.46.4", - "@typescript-eslint/utils": "8.46.4", - "@typescript-eslint/visitor-keys": "8.46.4", - "graphemer": "^1.4.0", + "@typescript-eslint/scope-manager": "8.50.0", + "@typescript-eslint/type-utils": "8.50.0", + "@typescript-eslint/utils": "8.50.0", + "@typescript-eslint/visitor-keys": "8.50.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", "ts-api-utils": "^2.1.0" @@ -10567,7 +10399,7 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^8.46.4", + "@typescript-eslint/parser": "^8.50.0", "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <6.0.0" } @@ -10583,16 +10415,16 @@ } }, "node_modules/eslint-config-oclif/node_modules/@typescript-eslint/parser": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.46.4.tgz", - "integrity": "sha512-tK3GPFWbirvNgsNKto+UmB/cRtn6TZfyw0D6IKrW55n6Vbs7KJoZtI//kpTKzE/DUmmnAFD8/Ca46s7Obs92/w==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.50.0.tgz", + "integrity": "sha512-6/cmF2piao+f6wSxUsJLZjck7OQsYyRtcOZS02k7XINSNlz93v6emM8WutDQSXnroG2xwYlEVHJI+cPA7CPM3Q==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/scope-manager": "8.46.4", - "@typescript-eslint/types": "8.46.4", - "@typescript-eslint/typescript-estree": "8.46.4", - "@typescript-eslint/visitor-keys": "8.46.4", + "@typescript-eslint/scope-manager": "8.50.0", + "@typescript-eslint/types": "8.50.0", + "@typescript-eslint/typescript-estree": "8.50.0", + "@typescript-eslint/visitor-keys": "8.50.0", "debug": "^4.3.4" }, "engines": { @@ -10608,14 +10440,14 @@ } }, "node_modules/eslint-config-oclif/node_modules/@typescript-eslint/scope-manager": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.46.4.tgz", - "integrity": "sha512-tMDbLGXb1wC+McN1M6QeDx7P7c0UWO5z9CXqp7J8E+xGcJuUuevWKxuG8j41FoweS3+L41SkyKKkia16jpX7CA==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.50.0.tgz", + "integrity": "sha512-xCwfuCZjhIqy7+HKxBLrDVT5q/iq7XBVBXLn57RTIIpelLtEIZHXAF/Upa3+gaCpeV1NNS5Z9A+ID6jn50VD4A==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.46.4", - "@typescript-eslint/visitor-keys": "8.46.4" + "@typescript-eslint/types": "8.50.0", + "@typescript-eslint/visitor-keys": "8.50.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -10626,15 +10458,15 @@ } }, "node_modules/eslint-config-oclif/node_modules/@typescript-eslint/type-utils": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.46.4.tgz", - "integrity": "sha512-V4QC8h3fdT5Wro6vANk6eojqfbv5bpwHuMsBcJUJkqs2z5XnYhJzyz9Y02eUmF9u3PgXEUiOt4w4KHR3P+z0PQ==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.50.0.tgz", + "integrity": "sha512-7OciHT2lKCewR0mFoBrvZJ4AXTMe/sYOe87289WAViOocEmDjjv8MvIOT2XESuKj9jp8u3SZYUSh89QA4S1kQw==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.46.4", - "@typescript-eslint/typescript-estree": "8.46.4", - "@typescript-eslint/utils": "8.46.4", + "@typescript-eslint/types": "8.50.0", + "@typescript-eslint/typescript-estree": "8.50.0", + "@typescript-eslint/utils": "8.50.0", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -10651,9 +10483,9 @@ } }, "node_modules/eslint-config-oclif/node_modules/@typescript-eslint/types": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.46.4.tgz", - "integrity": "sha512-USjyxm3gQEePdUwJBFjjGNG18xY9A2grDVGuk7/9AkjIF1L+ZrVnwR5VAU5JXtUnBL/Nwt3H31KlRDaksnM7/w==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.50.0.tgz", + "integrity": "sha512-iX1mgmGrXdANhhITbpp2QQM2fGehBse9LbTf0sidWK6yg/NE+uhV5dfU1g6EYPlcReYmkE9QLPq/2irKAmtS9w==", "dev": true, "license": "MIT", "engines": { @@ -10665,21 +10497,20 @@ } }, "node_modules/eslint-config-oclif/node_modules/@typescript-eslint/typescript-estree": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.46.4.tgz", - "integrity": "sha512-7oV2qEOr1d4NWNmpXLR35LvCfOkTNymY9oyW+lUHkmCno7aOmIf/hMaydnJBUTBMRCOGZh8YjkFOc8dadEoNGA==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.50.0.tgz", + "integrity": "sha512-W7SVAGBR/IX7zm1t70Yujpbk+zdPq/u4soeFSknWFdXIFuWsBGBOUu/Tn/I6KHSKvSh91OiMuaSnYp3mtPt5IQ==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/project-service": "8.46.4", - "@typescript-eslint/tsconfig-utils": "8.46.4", - "@typescript-eslint/types": "8.46.4", - "@typescript-eslint/visitor-keys": "8.46.4", + "@typescript-eslint/project-service": "8.50.0", + "@typescript-eslint/tsconfig-utils": "8.50.0", + "@typescript-eslint/types": "8.50.0", + "@typescript-eslint/visitor-keys": "8.50.0", "debug": "^4.3.4", - "fast-glob": "^3.3.2", - "is-glob": "^4.0.3", "minimatch": "^9.0.4", "semver": "^7.6.0", + "tinyglobby": "^0.2.15", "ts-api-utils": "^2.1.0" }, "engines": { @@ -10710,16 +10541,16 @@ } }, "node_modules/eslint-config-oclif/node_modules/@typescript-eslint/utils": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.46.4.tgz", - "integrity": "sha512-AbSv11fklGXV6T28dp2Me04Uw90R2iJ30g2bgLz529Koehrmkbs1r7paFqr1vPCZi7hHwYxYtxfyQMRC8QaVSg==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.50.0.tgz", + "integrity": "sha512-87KgUXET09CRjGCi2Ejxy3PULXna63/bMYv72tCAlDJC3Yqwln0HiFJ3VJMst2+mEtNtZu5oFvX4qJGjKsnAgg==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.46.4", - "@typescript-eslint/types": "8.46.4", - "@typescript-eslint/typescript-estree": "8.46.4" + "@typescript-eslint/scope-manager": "8.50.0", + "@typescript-eslint/types": "8.50.0", + "@typescript-eslint/typescript-estree": "8.50.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -10734,13 +10565,13 @@ } }, "node_modules/eslint-config-oclif/node_modules/@typescript-eslint/visitor-keys": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.46.4.tgz", - "integrity": "sha512-/++5CYLQqsO9HFGLI7APrxBJYo+5OCMpViuhV8q5/Qa3o5mMrF//eQHks+PXcsAVaLdn817fMuS7zqoXNNZGaw==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.50.0.tgz", + "integrity": "sha512-Xzmnb58+Db78gT/CCj/PVCvK+zxbnsw6F+O1oheYszJbBSdEjVhQi3C/Xttzxgi/GLmpvOggRs1RFpiJ8+c34Q==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.46.4", + "@typescript-eslint/types": "8.50.0", "eslint-visitor-keys": "^4.2.1" }, "engines": { @@ -10785,9 +10616,9 @@ } }, "node_modules/eslint-config-oclif/node_modules/eslint": { - "version": "9.39.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.1.tgz", - "integrity": "sha512-BhHmn2yNOFA9H9JmmIVKJmd288g9hrVRDkdoIgRCRuSySRUHH7r/DI6aAXW9T1WwUuY3DFgrcaqB+deURBLR5g==", + "version": "9.39.2", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.2.tgz", + "integrity": "sha512-LEyamqS7W5HB3ujJyvi0HQK/dtVINZvd5mAAp9eT5S/ujByGjiZLCzPcHVzuXbpJDJF/cxwHlfceVUDZ2lnSTw==", "dev": true, "license": "MIT", "peer": true, @@ -10798,7 +10629,7 @@ "@eslint/config-helpers": "^0.4.2", "@eslint/core": "^0.17.0", "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "9.39.1", + "@eslint/js": "9.39.2", "@eslint/plugin-kit": "^0.4.1", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", @@ -10944,14 +10775,14 @@ } }, "node_modules/eslint-config-oclif/node_modules/eslint-config-xo/node_modules/@stylistic/eslint-plugin": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@stylistic/eslint-plugin/-/eslint-plugin-5.5.0.tgz", - "integrity": "sha512-IeZF+8H0ns6prg4VrkhgL+yrvDXWDH2cKchrbh80ejG9dQgZWp10epHMbgRuQvgchLII/lfh6Xn3lu6+6L86Hw==", + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/@stylistic/eslint-plugin/-/eslint-plugin-5.6.1.tgz", + "integrity": "sha512-JCs+MqoXfXrRPGbGmho/zGS/jMcn3ieKl/A8YImqib76C8kjgZwq5uUFzc30lJkMvcchuRn6/v8IApLxli3Jyw==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.9.0", - "@typescript-eslint/types": "^8.46.1", + "@typescript-eslint/types": "^8.47.0", "eslint-visitor-keys": "^4.2.1", "espree": "^10.4.0", "estraverse": "^5.3.0", @@ -11514,14 +11345,14 @@ } }, "node_modules/eslint-plugin-perfectionist/node_modules/@typescript-eslint/scope-manager": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.46.4.tgz", - "integrity": "sha512-tMDbLGXb1wC+McN1M6QeDx7P7c0UWO5z9CXqp7J8E+xGcJuUuevWKxuG8j41FoweS3+L41SkyKKkia16jpX7CA==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.50.0.tgz", + "integrity": "sha512-xCwfuCZjhIqy7+HKxBLrDVT5q/iq7XBVBXLn57RTIIpelLtEIZHXAF/Upa3+gaCpeV1NNS5Z9A+ID6jn50VD4A==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.46.4", - "@typescript-eslint/visitor-keys": "8.46.4" + "@typescript-eslint/types": "8.50.0", + "@typescript-eslint/visitor-keys": "8.50.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -11532,9 +11363,9 @@ } }, "node_modules/eslint-plugin-perfectionist/node_modules/@typescript-eslint/types": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.46.4.tgz", - "integrity": "sha512-USjyxm3gQEePdUwJBFjjGNG18xY9A2grDVGuk7/9AkjIF1L+ZrVnwR5VAU5JXtUnBL/Nwt3H31KlRDaksnM7/w==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.50.0.tgz", + "integrity": "sha512-iX1mgmGrXdANhhITbpp2QQM2fGehBse9LbTf0sidWK6yg/NE+uhV5dfU1g6EYPlcReYmkE9QLPq/2irKAmtS9w==", "dev": true, "license": "MIT", "engines": { @@ -11546,21 +11377,20 @@ } }, "node_modules/eslint-plugin-perfectionist/node_modules/@typescript-eslint/typescript-estree": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.46.4.tgz", - "integrity": "sha512-7oV2qEOr1d4NWNmpXLR35LvCfOkTNymY9oyW+lUHkmCno7aOmIf/hMaydnJBUTBMRCOGZh8YjkFOc8dadEoNGA==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.50.0.tgz", + "integrity": "sha512-W7SVAGBR/IX7zm1t70Yujpbk+zdPq/u4soeFSknWFdXIFuWsBGBOUu/Tn/I6KHSKvSh91OiMuaSnYp3mtPt5IQ==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/project-service": "8.46.4", - "@typescript-eslint/tsconfig-utils": "8.46.4", - "@typescript-eslint/types": "8.46.4", - "@typescript-eslint/visitor-keys": "8.46.4", + "@typescript-eslint/project-service": "8.50.0", + "@typescript-eslint/tsconfig-utils": "8.50.0", + "@typescript-eslint/types": "8.50.0", + "@typescript-eslint/visitor-keys": "8.50.0", "debug": "^4.3.4", - "fast-glob": "^3.3.2", - "is-glob": "^4.0.3", "minimatch": "^9.0.4", "semver": "^7.6.0", + "tinyglobby": "^0.2.15", "ts-api-utils": "^2.1.0" }, "engines": { @@ -11575,16 +11405,16 @@ } }, "node_modules/eslint-plugin-perfectionist/node_modules/@typescript-eslint/utils": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.46.4.tgz", - "integrity": "sha512-AbSv11fklGXV6T28dp2Me04Uw90R2iJ30g2bgLz529Koehrmkbs1r7paFqr1vPCZi7hHwYxYtxfyQMRC8QaVSg==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.50.0.tgz", + "integrity": "sha512-87KgUXET09CRjGCi2Ejxy3PULXna63/bMYv72tCAlDJC3Yqwln0HiFJ3VJMst2+mEtNtZu5oFvX4qJGjKsnAgg==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.46.4", - "@typescript-eslint/types": "8.46.4", - "@typescript-eslint/typescript-estree": "8.46.4" + "@typescript-eslint/scope-manager": "8.50.0", + "@typescript-eslint/types": "8.50.0", + "@typescript-eslint/typescript-estree": "8.50.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -11599,13 +11429,13 @@ } }, "node_modules/eslint-plugin-perfectionist/node_modules/@typescript-eslint/visitor-keys": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.46.4.tgz", - "integrity": "sha512-/++5CYLQqsO9HFGLI7APrxBJYo+5OCMpViuhV8q5/Qa3o5mMrF//eQHks+PXcsAVaLdn817fMuS7zqoXNNZGaw==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.50.0.tgz", + "integrity": "sha512-Xzmnb58+Db78gT/CCj/PVCvK+zxbnsw6F+O1oheYszJbBSdEjVhQi3C/Xttzxgi/GLmpvOggRs1RFpiJ8+c34Q==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.46.4", + "@typescript-eslint/types": "8.50.0", "eslint-visitor-keys": "^4.2.1" }, "engines": { @@ -11868,6 +11698,7 @@ "version": "5.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, "license": "BSD-2-Clause", "engines": { "node": ">=4.0" @@ -11883,6 +11714,7 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, "license": "BSD-2-Clause", "engines": { "node": ">=0.10.0" @@ -11961,39 +11793,39 @@ } }, "node_modules/express": { - "version": "4.21.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", - "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", + "version": "4.22.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.22.1.tgz", + "integrity": "sha512-F2X8g9P1X7uCPZMA3MVf9wcTqlyNp7IhH5qPCI0izhaOIYXaW9L535tGA3qmjRzpH+bZczqq7hVKxTR4NWnu+g==", "license": "MIT", "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.20.3", - "content-disposition": "0.5.4", + "body-parser": "~1.20.3", + "content-disposition": "~0.5.4", "content-type": "~1.0.4", - "cookie": "0.7.1", - "cookie-signature": "1.0.6", + "cookie": "~0.7.1", + "cookie-signature": "~1.0.6", "debug": "2.6.9", "depd": "2.0.0", "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "1.3.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", + "finalhandler": "~1.3.1", + "fresh": "~0.5.2", + "http-errors": "~2.0.0", "merge-descriptors": "1.0.3", "methods": "~1.1.2", - "on-finished": "2.4.1", + "on-finished": "~2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.12", + "path-to-regexp": "~0.1.12", "proxy-addr": "~2.0.7", - "qs": "6.13.0", + "qs": "~6.14.0", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", - "send": "0.19.0", - "serve-static": "1.16.2", + "send": "~0.19.0", + "serve-static": "~1.16.2", "setprototypeof": "1.2.0", - "statuses": "2.0.1", + "statuses": "~2.0.1", "type-is": "~1.6.18", "utils-merge": "1.0.1", "vary": "~1.1.2" @@ -12021,21 +11853,6 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "license": "MIT" }, - "node_modules/express/node_modules/qs": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", - "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", - "license": "BSD-3-Clause", - "dependencies": { - "side-channel": "^1.0.6" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/external-editor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", @@ -12350,17 +12167,17 @@ } }, "node_modules/finalhandler": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", - "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.2.tgz", + "integrity": "sha512-aA4RyPcd3badbdABGDuTXCMTtOneUCAYH/gxoYRTZlIJdF0YPWuGqiAsIrhNnnqdXGswYk6dGujem4w80UJFhg==", "license": "MIT", "dependencies": { "debug": "2.6.9", "encodeurl": "~2.0.0", "escape-html": "~1.0.3", - "on-finished": "2.4.1", + "on-finished": "~2.4.1", "parseurl": "~1.3.3", - "statuses": "2.0.1", + "statuses": "~2.0.2", "unpipe": "~1.0.0" }, "engines": { @@ -13405,18 +13222,6 @@ "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", "license": "ISC" }, - "node_modules/html-encoding-sniffer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz", - "integrity": "sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==", - "license": "MIT", - "dependencies": { - "whatwg-encoding": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/html-escaper": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", @@ -13464,33 +13269,23 @@ } }, "node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.1.tgz", + "integrity": "sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ==", "license": "MIT", "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" + "depd": "~2.0.0", + "inherits": "~2.0.4", + "setprototypeof": "~1.2.0", + "statuses": "~2.0.2", + "toidentifier": "~1.0.1" }, "engines": { "node": ">= 0.8" - } - }, - "node_modules/http-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", - "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", - "license": "MIT", - "dependencies": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" }, - "engines": { - "node": ">= 6" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/http2-wrapper": { @@ -13507,19 +13302,6 @@ "node": ">=10.19.0" } }, - "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "license": "MIT", - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, "node_modules/human-signals": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", @@ -13587,16 +13369,6 @@ "node": ">= 4" } }, - "node_modules/immer": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/immer/-/immer-10.2.0.tgz", - "integrity": "sha512-d/+XTN3zfODyjr89gM3mPq1WNX2B8pYsu7eORitdwyA2sBubnTl3laYlBk4sXY5FUa5qTZGBDPJICVbvqzjlbw==", - "license": "MIT", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/immer" - } - }, "node_modules/import-fresh": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", @@ -14262,9 +14034,9 @@ } }, "node_modules/inquirer/node_modules/@types/node": { - "version": "24.10.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.10.1.tgz", - "integrity": "sha512-GNWcUTRBgIRJD5zj+Tq0fKOJ5XZajIiBroOF0yvj2bSU1WvNdYS/dn9UxwsujGW4JX06dnHyjV2y9rRaybH0iQ==", + "version": "25.0.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-25.0.3.tgz", + "integrity": "sha512-W609buLVRVmeW693xKfzHeIV6nJGGz98uCPfeXI1ELMLXVeKYZ9m15fAMSaUPBHYLGFsVRcMmSCksQOrZV9BYA==", "license": "MIT", "optional": true, "peer": true, @@ -14279,9 +14051,9 @@ "license": "MIT" }, "node_modules/inquirer/node_modules/iconv-lite": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.7.0.tgz", - "integrity": "sha512-cf6L2Ds3h57VVmkZe+Pn+5APsT7FpqJtEhhieDCvrE2MK5Qk9MyffgQyuxQTm6BChfeZNtcOLHp9IcWRVcIcBQ==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.7.1.tgz", + "integrity": "sha512-2Tth85cXwGFHfvRgZWszZSvdo+0Xsqmw8k8ZwxScfcBneNUraK+dxRxRm24nszx80Y0TVio8kKLt5sLE7ZCLlw==", "license": "MIT", "dependencies": { "safer-buffer": ">= 2.1.2 < 3.0.0" @@ -14848,21 +14620,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-potential-custom-element-name": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", - "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", - "license": "MIT" - }, "node_modules/is-promise": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", @@ -16404,51 +16161,6 @@ "node": ">=8" } }, - "node_modules/jsdom": { - "version": "20.0.3", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-20.0.3.tgz", - "integrity": "sha512-SYhBvTh89tTfCD/CRdSOm13mOBa42iTaTyfyEWBdKcGdPxPtLFBXuHR8XHb33YNYaP+lLbmSvBTsnoesCNJEsQ==", - "license": "MIT", - "dependencies": { - "abab": "^2.0.6", - "acorn": "^8.8.1", - "acorn-globals": "^7.0.0", - "cssom": "^0.5.0", - "cssstyle": "^2.3.0", - "data-urls": "^3.0.2", - "decimal.js": "^10.4.2", - "domexception": "^4.0.0", - "escodegen": "^2.0.0", - "form-data": "^4.0.0", - "html-encoding-sniffer": "^3.0.0", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.1", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.2", - "parse5": "^7.1.1", - "saxes": "^6.0.0", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.1.2", - "w3c-xmlserializer": "^4.0.0", - "webidl-conversions": "^7.0.0", - "whatwg-encoding": "^2.0.0", - "whatwg-mimetype": "^3.0.0", - "whatwg-url": "^11.0.0", - "ws": "^8.11.0", - "xml-name-validator": "^4.0.0" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "canvas": "^2.5.0" - }, - "peerDependenciesMeta": { - "canvas": { - "optional": true - } - } - }, "node_modules/jsesc": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", @@ -16548,15 +16260,6 @@ ], "license": "MIT" }, - "node_modules/jsonschema": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/jsonschema/-/jsonschema-1.5.0.tgz", - "integrity": "sha512-K+A9hhqbn0f3pJX17Q/7H6yQfD/5OXgdrR5UE12gMXCiN9D5Xq2o5mddV2QEcX/bjla99ASsAAQUyMCCRWAEhw==", - "license": "MIT", - "engines": { - "node": "*" - } - }, "node_modules/JSONStream": { "version": "1.3.5", "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", @@ -16583,6 +16286,7 @@ "version": "6.2.0", "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-6.2.0.tgz", "integrity": "sha512-cYofQu2Xpom82S6qD778jBDpwvvy39s1l/hrYij2u9AMdQcGRpaBu6kY4mVhuno5kJVi1DAz4aiphA2WI1/OAw==", + "dev": true, "license": "MIT" }, "node_modules/keyv": { @@ -17011,24 +16715,12 @@ "dev": true, "license": "MIT" }, - "node_modules/lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==", - "license": "MIT" - }, "node_modules/lodash.escaperegexp": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/lodash.escaperegexp/-/lodash.escaperegexp-4.1.2.tgz", "integrity": "sha512-TM9YBvyC84ZxE3rgfefxUWiQKLilstD6k7PTGt6wfbtXF8ixIJLOL3VYyV/z+ZiPLsVxAsKAFVwWlWeb2Y8Yyw==", "license": "MIT" }, - "node_modules/lodash.flatten": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", - "integrity": "sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g==", - "license": "MIT" - }, "node_modules/lodash.flattendeep": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", @@ -17048,12 +16740,6 @@ "integrity": "sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg==", "license": "MIT" }, - "node_modules/lodash.isempty": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.isempty/-/lodash.isempty-4.4.0.tgz", - "integrity": "sha512-oKMuF3xEeqDltrGMfDxAPGIVMSSRv8tbRSODbrs4KGsRRLEhrW8N8Rd4DRgB2+621hY8A8XwwrTVhXWpxFvMzg==", - "license": "MIT" - }, "node_modules/lodash.isequal": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", @@ -17073,30 +16759,12 @@ "integrity": "sha512-up2Mzq3545mwVnMhTDMdfoG1OurpA/s5t88JmQX809eH3C8491iu2sfKhTfhQtKY78oPNhiaHJUpT/dUDAAtng==", "license": "MIT" }, - "node_modules/lodash.isobject": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/lodash.isobject/-/lodash.isobject-3.0.2.tgz", - "integrity": "sha512-3/Qptq2vr7WeJbB4KHUSKlq8Pl7ASXi3UG6CMbBm8WRtXi8+GHm7mKaU3urfpSEzWe2wCIChs6/sdocUsTKJiA==", - "license": "MIT" - }, - "node_modules/lodash.isplainobject": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", - "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==", - "license": "MIT" - }, "node_modules/lodash.isundefined": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/lodash.isundefined/-/lodash.isundefined-3.0.1.tgz", "integrity": "sha512-MXB1is3s899/cD8jheYYE2V9qTHwKvt+npCwpD+1Sxm3Q3cECXCiYHjeHWXNwr6Q0SOBPrYUDxendrO6goVTEA==", "license": "MIT" }, - "node_modules/lodash.kebabcase": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz", - "integrity": "sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g==", - "license": "MIT" - }, "node_modules/lodash.memoize": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", @@ -17974,6 +17642,7 @@ "version": "6.1.1", "resolved": "https://registry.npmjs.org/nise/-/nise-6.1.1.tgz", "integrity": "sha512-aMSAzLVY7LyeM60gvBS423nBmIPP+Wy7St7hsb+8/fc1HmeoHJfLO8CKse4u3BtOZvQLJghYPI2i/1WZrEj5/g==", + "dev": true, "license": "BSD-3-Clause", "dependencies": { "@sinonjs/commons": "^3.0.1", @@ -17987,6 +17656,7 @@ "version": "13.0.5", "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-13.0.5.tgz", "integrity": "sha512-36/hTbH2uaWuGVERyC6da9YwGWnzUZXuPro/F2LfsdOsLnCojz/iSH8MxUt/FD2S5XBSVPhmArFUXcpCQ2Hkiw==", + "dev": true, "license": "BSD-3-Clause", "dependencies": { "@sinonjs/commons": "^3.0.1" @@ -17996,6 +17666,7 @@ "version": "8.3.0", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-8.3.0.tgz", "integrity": "sha512-7jdwVIRtsP8MYpdXSwOS0YdD0Du+qOoF/AEPIt88PcCFrZCzx41oxku1jD88hZBwbNUIEfpqvuhjFaMAqMTWnA==", + "dev": true, "license": "MIT", "funding": { "type": "opencollective", @@ -18047,28 +17718,6 @@ } } }, - "node_modules/node-fetch/node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "license": "MIT" - }, - "node_modules/node-fetch/node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "license": "BSD-2-Clause" - }, - "node_modules/node-fetch/node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "license": "MIT", - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, "node_modules/node-int64": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", @@ -20665,12 +20314,6 @@ "node": ">=0.10.0" } }, - "node_modules/nwsapi": { - "version": "2.2.22", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.22.tgz", - "integrity": "sha512-ujSMe1OWVn55euT1ihwCI1ZcAaAU3nxUiDwfDQldc51ZXaB9m2AyOn6/jh1BLe2t/G8xd6uKG1UBF2aZJeg2SQ==", - "license": "MIT" - }, "node_modules/nyc": { "version": "15.1.0", "resolved": "https://registry.npmjs.org/nyc/-/nyc-15.1.0.tgz", @@ -21075,21 +20718,21 @@ } }, "node_modules/oclif": { - "version": "4.22.44", - "resolved": "https://registry.npmjs.org/oclif/-/oclif-4.22.44.tgz", - "integrity": "sha512-/0xXjF/dt8qN8SuibVTVU/81gOy4nNprSXSFHVWvKm1Ms8EKsCA6C+4XRcRCCMaaE4t2GKjjRpEwqCQKFUtI/Q==", + "version": "4.22.57", + "resolved": "https://registry.npmjs.org/oclif/-/oclif-4.22.57.tgz", + "integrity": "sha512-qJOdY71q5wdC65AkcyDaVKKGjD40lj4s+OvzJK4tl/u1PR3dNRPPT/shXqTTB+S7KT98PUmv9DUAxriQ7SFhjg==", "dev": true, "license": "MIT", "dependencies": { - "@aws-sdk/client-cloudfront": "^3.927.0", - "@aws-sdk/client-s3": "^3.927.0", + "@aws-sdk/client-cloudfront": "^3.948.0", + "@aws-sdk/client-s3": "^3.948.0", "@inquirer/confirm": "^3.1.22", "@inquirer/input": "^2.2.4", "@inquirer/select": "^2.5.0", "@oclif/core": "^4.8.0", - "@oclif/plugin-help": "^6.2.34", - "@oclif/plugin-not-found": "^3.2.71", - "@oclif/plugin-warn-if-update-available": "^3.1.52", + "@oclif/plugin-help": "^6.2.36", + "@oclif/plugin-not-found": "^3.2.73", + "@oclif/plugin-warn-if-update-available": "^3.1.53", "ansis": "^3.16.0", "async-retry": "^1.3.3", "change-case": "^4", @@ -21148,18 +20791,6 @@ "node": ">= 4.0.0" } }, - "node_modules/omit-deep-lodash": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/omit-deep-lodash/-/omit-deep-lodash-1.1.7.tgz", - "integrity": "sha512-9m9gleSMoxq3YO8aCq5pGUrqG9rKF0w/P70JHQ1ymjUQA/3+fVa2Stju9XORJKLmyLYEO3zzX40MJYaYl5Og4w==", - "license": "MIT", - "dependencies": { - "lodash": "~4.17.21" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/on-finished": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", @@ -21643,30 +21274,6 @@ "dev": true, "license": "MIT" }, - "node_modules/parse5": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz", - "integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==", - "license": "MIT", - "dependencies": { - "entities": "^6.0.0" - }, - "funding": { - "url": "https://github.com/inikulin/parse5?sponsor=1" - } - }, - "node_modules/parse5/node_modules/entities": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", - "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, "node_modules/parseurl": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", @@ -22039,9 +21646,9 @@ } }, "node_modules/pretty-format/node_modules/@types/yargs": { - "version": "15.0.19", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.19.tgz", - "integrity": "sha512-2XUaGVmyQjgyAZldf0D0c14vvo/yv0MhQBSTJcejMMaitsn3nxCB6TmH4G0ZQf+uxROOa9mpanoSm8h6SG/1ZA==", + "version": "15.0.20", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.20.tgz", + "integrity": "sha512-KIkX+/GgfFitlASYCGoSF+T4XRXhOubJLhkLVtSfsRTe9jWMmuM2g28zQ41BtPTG7TRBb2xHW+LCNVE9QR/vsg==", "dev": true, "license": "MIT", "dependencies": { @@ -22272,18 +21879,6 @@ "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", "license": "MIT" }, - "node_modules/psl": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.15.0.tgz", - "integrity": "sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==", - "license": "MIT", - "dependencies": { - "punycode": "^2.3.1" - }, - "funding": { - "url": "https://github.com/sponsors/lupomontero" - } - }, "node_modules/pump": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.3.tgz", @@ -22299,6 +21894,7 @@ "version": "2.3.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, "license": "MIT", "engines": { "node": ">=6" @@ -22346,12 +21942,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/querystringify": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", - "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", - "license": "MIT" - }, "node_modules/queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", @@ -22413,15 +22003,15 @@ } }, "node_modules/raw-body": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", - "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "version": "2.5.3", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.3.tgz", + "integrity": "sha512-s4VSOf6yN0rvbRZGxs8Om5CWj6seneMwK3oDb4lWDH0UPhWcxwOWw5+qk24bxq87szX1ydrwylIOp2uG1ojUpA==", "license": "MIT", "dependencies": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" + "bytes": "~3.1.2", + "http-errors": "~2.0.1", + "iconv-lite": "~0.4.24", + "unpipe": "~1.0.0" }, "engines": { "node": ">= 0.8" @@ -22922,12 +22512,6 @@ "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", "license": "ISC" }, - "node_modules/requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", - "license": "MIT" - }, "node_modules/requizzle": { "version": "0.2.4", "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.4.tgz", @@ -23089,9 +22673,9 @@ } }, "node_modules/rewire/node_modules/@eslint/eslintrc": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.1.tgz", - "integrity": "sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.3.tgz", + "integrity": "sha512-Kr+LPIUVKz2qkx1HAMH8q1q6azbqBAsXJUxBl/ODDuVPX45Z9DfwB8tPjTi6nNZ8BuM3nbJxC5zCAg5elnBUTQ==", "dev": true, "license": "MIT", "dependencies": { @@ -23101,7 +22685,7 @@ "globals": "^14.0.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", + "js-yaml": "^4.1.1", "minimatch": "^3.1.2", "strip-json-comments": "^3.1.1" }, @@ -23113,9 +22697,9 @@ } }, "node_modules/rewire/node_modules/@eslint/js": { - "version": "9.39.1", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.1.tgz", - "integrity": "sha512-S26Stp4zCy88tH94QbBv3XCuzRQiZ9yXofEILmglYTh/Ug/a9/umqvgFtYBAo3Lp0nsI/5/qH1CCrbdK3AP1Tw==", + "version": "9.39.2", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.2.tgz", + "integrity": "sha512-q1mjIoW1VX4IvSocvM/vbTiveKC4k9eLrajNEuSsmjymSDEbpGddtpfOoN7YGAqBK3NG+uqo8ia4PDTt8buCYA==", "dev": true, "license": "MIT", "engines": { @@ -23154,9 +22738,9 @@ } }, "node_modules/rewire/node_modules/eslint": { - "version": "9.39.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.1.tgz", - "integrity": "sha512-BhHmn2yNOFA9H9JmmIVKJmd288g9hrVRDkdoIgRCRuSySRUHH7r/DI6aAXW9T1WwUuY3DFgrcaqB+deURBLR5g==", + "version": "9.39.2", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.2.tgz", + "integrity": "sha512-LEyamqS7W5HB3ujJyvi0HQK/dtVINZvd5mAAp9eT5S/ujByGjiZLCzPcHVzuXbpJDJF/cxwHlfceVUDZ2lnSTw==", "dev": true, "license": "MIT", "dependencies": { @@ -23166,7 +22750,7 @@ "@eslint/config-helpers": "^0.4.2", "@eslint/core": "^0.17.0", "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "9.39.1", + "@eslint/js": "9.39.2", "@eslint/plugin-kit": "^0.4.1", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", @@ -23353,9 +22937,9 @@ } }, "node_modules/rimraf/node_modules/glob": { - "version": "10.4.5", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", - "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz", + "integrity": "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==", "license": "ISC", "dependencies": { "foreground-child": "^3.1.0", @@ -23394,9 +22978,9 @@ } }, "node_modules/rollup": { - "version": "4.53.2", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.53.2.tgz", - "integrity": "sha512-MHngMYwGJVi6Fmnk6ISmnk7JAHRNF0UkuucA0CUW3N3a4KnONPEZz+vUanQP/ZC/iY1Qkf3bwPWzyY84wEks1g==", + "version": "4.53.5", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.53.5.tgz", + "integrity": "sha512-iTNAbFSlRpcHeeWu73ywU/8KuU/LZmNCSxp6fjQkJBD3ivUb8tpDrXhIxEzA05HlYMEwmtaUnb3RP+YNv162OQ==", "license": "MIT", "dependencies": { "@types/estree": "1.0.8" @@ -23409,28 +22993,28 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.53.2", - "@rollup/rollup-android-arm64": "4.53.2", - "@rollup/rollup-darwin-arm64": "4.53.2", - "@rollup/rollup-darwin-x64": "4.53.2", - "@rollup/rollup-freebsd-arm64": "4.53.2", - "@rollup/rollup-freebsd-x64": "4.53.2", - "@rollup/rollup-linux-arm-gnueabihf": "4.53.2", - "@rollup/rollup-linux-arm-musleabihf": "4.53.2", - "@rollup/rollup-linux-arm64-gnu": "4.53.2", - "@rollup/rollup-linux-arm64-musl": "4.53.2", - "@rollup/rollup-linux-loong64-gnu": "4.53.2", - "@rollup/rollup-linux-ppc64-gnu": "4.53.2", - "@rollup/rollup-linux-riscv64-gnu": "4.53.2", - "@rollup/rollup-linux-riscv64-musl": "4.53.2", - "@rollup/rollup-linux-s390x-gnu": "4.53.2", - "@rollup/rollup-linux-x64-gnu": "4.53.2", - "@rollup/rollup-linux-x64-musl": "4.53.2", - "@rollup/rollup-openharmony-arm64": "4.53.2", - "@rollup/rollup-win32-arm64-msvc": "4.53.2", - "@rollup/rollup-win32-ia32-msvc": "4.53.2", - "@rollup/rollup-win32-x64-gnu": "4.53.2", - "@rollup/rollup-win32-x64-msvc": "4.53.2", + "@rollup/rollup-android-arm-eabi": "4.53.5", + "@rollup/rollup-android-arm64": "4.53.5", + "@rollup/rollup-darwin-arm64": "4.53.5", + "@rollup/rollup-darwin-x64": "4.53.5", + "@rollup/rollup-freebsd-arm64": "4.53.5", + "@rollup/rollup-freebsd-x64": "4.53.5", + "@rollup/rollup-linux-arm-gnueabihf": "4.53.5", + "@rollup/rollup-linux-arm-musleabihf": "4.53.5", + "@rollup/rollup-linux-arm64-gnu": "4.53.5", + "@rollup/rollup-linux-arm64-musl": "4.53.5", + "@rollup/rollup-linux-loong64-gnu": "4.53.5", + "@rollup/rollup-linux-ppc64-gnu": "4.53.5", + "@rollup/rollup-linux-riscv64-gnu": "4.53.5", + "@rollup/rollup-linux-riscv64-musl": "4.53.5", + "@rollup/rollup-linux-s390x-gnu": "4.53.5", + "@rollup/rollup-linux-x64-gnu": "4.53.5", + "@rollup/rollup-linux-x64-musl": "4.53.5", + "@rollup/rollup-openharmony-arm64": "4.53.5", + "@rollup/rollup-win32-arm64-msvc": "4.53.5", + "@rollup/rollup-win32-ia32-msvc": "4.53.5", + "@rollup/rollup-win32-x64-gnu": "4.53.5", + "@rollup/rollup-win32-x64-msvc": "4.53.5", "fsevents": "~2.3.2" } }, @@ -23585,18 +23169,6 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "license": "MIT" }, - "node_modules/saxes": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz", - "integrity": "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==", - "license": "ISC", - "dependencies": { - "xmlchars": "^2.2.0" - }, - "engines": { - "node": ">=v12.22.7" - } - }, "node_modules/semver": { "version": "7.7.3", "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", @@ -23610,24 +23182,24 @@ } }, "node_modules/send": { - "version": "0.19.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", - "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.2.tgz", + "integrity": "sha512-VMbMxbDeehAxpOtWJXlcUS5E8iXh6QmN+BkRX1GARS3wRaXEEgzCcB10gTQazO42tpNIya8xIyNx8fll1OFPrg==", "license": "MIT", "dependencies": { "debug": "2.6.9", "depd": "2.0.0", "destroy": "1.2.0", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", + "fresh": "~0.5.2", + "http-errors": "~2.0.1", "mime": "1.6.0", "ms": "2.1.3", - "on-finished": "2.4.1", + "on-finished": "~2.4.1", "range-parser": "~1.2.1", - "statuses": "2.0.1" + "statuses": "~2.0.2" }, "engines": { "node": ">= 0.8.0" @@ -23648,15 +23220,6 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "license": "MIT" }, - "node_modules/send/node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, "node_modules/sentence-case": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/sentence-case/-/sentence-case-3.0.4.tgz", @@ -23680,15 +23243,15 @@ } }, "node_modules/serve-static": { - "version": "1.16.2", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", - "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", + "version": "1.16.3", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.3.tgz", + "integrity": "sha512-x0RTqQel6g5SY7Lg6ZreMmsOzncHFU7nhnRWkKgWuMTu5NN0DR5oruckMqRvacAN9d5w6ARnRBXl9xhDCgfMeA==", "license": "MIT", "dependencies": { "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.19.0" + "send": "~0.19.1" }, "engines": { "node": ">= 0.8.0" @@ -24062,6 +23625,7 @@ "version": "19.0.5", "resolved": "https://registry.npmjs.org/sinon/-/sinon-19.0.5.tgz", "integrity": "sha512-r15s9/s+ub/d4bxNXqIUmwp6imVSdTorIRaxoecYjqTVLZ8RuoXr/4EDGwIBo6Waxn7f2gnURX9zuhAfCwaF6Q==", + "dev": true, "license": "BSD-3-Clause", "dependencies": { "@sinonjs/commons": "^3.0.1", @@ -24080,6 +23644,7 @@ "version": "13.0.5", "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-13.0.5.tgz", "integrity": "sha512-36/hTbH2uaWuGVERyC6da9YwGWnzUZXuPro/F2LfsdOsLnCojz/iSH8MxUt/FD2S5XBSVPhmArFUXcpCQ2Hkiw==", + "dev": true, "license": "BSD-3-Clause", "dependencies": { "@sinonjs/commons": "^3.0.1" @@ -24089,6 +23654,7 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/diff/-/diff-7.0.0.tgz", "integrity": "sha512-PJWHUb1RFevKCwaFA9RlG5tCd+FO5iRh9A8HEtkmBH2Li03iJriB6m6JIN4rGz3K3JLawI7/veA1xzRKP6ISBw==", + "dev": true, "license": "BSD-3-Clause", "engines": { "node": ">=0.3.1" @@ -24098,6 +23664,7 @@ "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, "license": "MIT", "dependencies": { "has-flag": "^4.0.0" @@ -24123,17 +23690,6 @@ "node": ">=8" } }, - "node_modules/slate": { - "version": "0.103.0", - "resolved": "https://registry.npmjs.org/slate/-/slate-0.103.0.tgz", - "integrity": "sha512-eCUOVqUpADYMZ59O37QQvUdnFG+8rin0OGQAXNHvHbQeVJ67Bu0spQbcy621vtf8GQUXTEQBlk6OP9atwwob4w==", - "license": "MIT", - "dependencies": { - "immer": "^10.0.3", - "is-plain-object": "^5.0.0", - "tiny-warning": "^1.0.3" - } - }, "node_modules/slice-ansi": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz", @@ -24368,7 +23924,7 @@ "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "devOptional": true, + "dev": true, "license": "BSD-3-Clause", "engines": { "node": ">=0.10.0" @@ -24579,9 +24135,9 @@ } }, "node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.2.tgz", + "integrity": "sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==", "license": "MIT", "engines": { "node": ">= 0.8" @@ -24871,9 +24427,9 @@ } }, "node_modules/strnum": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/strnum/-/strnum-2.1.1.tgz", - "integrity": "sha512-7ZvoFTiCnGxBtDqJ//Cu6fWtZtc7Y3x+QOirG15wztbdngGSkht27o2pyGWrVy0b4WAy3jbKmnoK6g5VlVNUUw==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/strnum/-/strnum-2.1.2.tgz", + "integrity": "sha512-l63NF9y/cLROq/yqKXSLtcMeeyOfnSQlfMSlzFt/K73oIaD8DGaQWd7Z34X9GPiKqP5rbSh84Hl4bOlLcjiSrQ==", "dev": true, "funding": [ { @@ -24919,12 +24475,6 @@ "node": ">=0.10" } }, - "node_modules/symbol-tree": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", - "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", - "license": "MIT" - }, "node_modules/table": { "version": "6.9.0", "resolved": "https://registry.npmjs.org/table/-/table-6.9.0.tgz", @@ -25153,12 +24703,6 @@ "dev": true, "license": "MIT" }, - "node_modules/tiny-warning": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz", - "integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==", - "license": "MIT" - }, "node_modules/tinyglobby": { "version": "0.2.15", "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", @@ -25213,41 +24757,11 @@ "node": ">=0.6" } }, - "node_modules/tough-cookie": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.4.tgz", - "integrity": "sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==", - "license": "BSD-3-Clause", - "dependencies": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.2.0", - "url-parse": "^1.5.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/tough-cookie/node_modules/universalify": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", - "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", - "license": "MIT", - "engines": { - "node": ">= 4.0.0" - } - }, "node_modules/tr46": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", - "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", - "license": "MIT", - "dependencies": { - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=12" - } + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "license": "MIT" }, "node_modules/traverse": { "version": "0.6.11", @@ -25324,9 +24838,9 @@ } }, "node_modules/ts-jest": { - "version": "29.4.5", - "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.4.5.tgz", - "integrity": "sha512-HO3GyiWn2qvTQA4kTgjDcXiMwYQt68a1Y8+JuLRVpdIzm+UOLSHgl/XqR4c6nzJkq5rOkjc02O2I7P7l/Yof0Q==", + "version": "29.4.6", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.4.6.tgz", + "integrity": "sha512-fSpWtOO/1AjSNQguk43hb/JCo16oJDnMJf3CdEGNkqsEX3t0KX96xvyX1D7PfLCpVoKu4MfVrqUkFyblYoY4lA==", "dev": true, "license": "MIT", "dependencies": { @@ -25519,13 +25033,13 @@ "license": "0BSD" }, "node_modules/tsx": { - "version": "4.20.6", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.20.6.tgz", - "integrity": "sha512-ytQKuwgmrrkDTFP4LjR0ToE2nqgy886GpvRSpU0JAnrdBYppuY5rLkRUYPU1yCryb24SsKBTL/hlDQAEFVwtZg==", + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.21.0.tgz", + "integrity": "sha512-5C1sg4USs1lfG0GFb2RLXsdpXqBSEhAaA/0kPL01wxzpMqLILNxIxIOKiILz+cdg/pLnOUxFYOR5yhHU666wbw==", "dev": true, "license": "MIT", "dependencies": { - "esbuild": "~0.25.0", + "esbuild": "~0.27.0", "get-tsconfig": "^4.7.5" }, "bin": { @@ -25598,6 +25112,7 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.1.0.tgz", "integrity": "sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw==", + "dev": true, "license": "MIT", "engines": { "node": ">=4" @@ -25754,16 +25269,16 @@ } }, "node_modules/typescript-eslint": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.46.4.tgz", - "integrity": "sha512-KALyxkpYV5Ix7UhvjTwJXZv76VWsHG+NjNlt/z+a17SOQSiOcBdUXdbJdyXi7RPxrBFECtFOiPwUJQusJuCqrg==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.50.0.tgz", + "integrity": "sha512-Q1/6yNUmCpH94fbgMUMg2/BSAr/6U7GBk61kZTv1/asghQOWOjTlp9K8mixS5NcJmm2creY+UFfGeW/+OcA64A==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/eslint-plugin": "8.46.4", - "@typescript-eslint/parser": "8.46.4", - "@typescript-eslint/typescript-estree": "8.46.4", - "@typescript-eslint/utils": "8.46.4" + "@typescript-eslint/eslint-plugin": "8.50.0", + "@typescript-eslint/parser": "8.50.0", + "@typescript-eslint/typescript-estree": "8.50.0", + "@typescript-eslint/utils": "8.50.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -25778,18 +25293,17 @@ } }, "node_modules/typescript-eslint/node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.46.4.tgz", - "integrity": "sha512-R48VhmTJqplNyDxCyqqVkFSZIx1qX6PzwqgcXn1olLrzxcSBDlOsbtcnQuQhNtnNiJ4Xe5gREI1foajYaYU2Vg==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.50.0.tgz", + "integrity": "sha512-O7QnmOXYKVtPrfYzMolrCTfkezCJS9+ljLdKW/+DCvRsc3UAz+sbH6Xcsv7p30+0OwUbeWfUDAQE0vpabZ3QLg==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.46.4", - "@typescript-eslint/type-utils": "8.46.4", - "@typescript-eslint/utils": "8.46.4", - "@typescript-eslint/visitor-keys": "8.46.4", - "graphemer": "^1.4.0", + "@typescript-eslint/scope-manager": "8.50.0", + "@typescript-eslint/type-utils": "8.50.0", + "@typescript-eslint/utils": "8.50.0", + "@typescript-eslint/visitor-keys": "8.50.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", "ts-api-utils": "^2.1.0" @@ -25802,22 +25316,22 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^8.46.4", + "@typescript-eslint/parser": "^8.50.0", "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <6.0.0" } }, "node_modules/typescript-eslint/node_modules/@typescript-eslint/parser": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.46.4.tgz", - "integrity": "sha512-tK3GPFWbirvNgsNKto+UmB/cRtn6TZfyw0D6IKrW55n6Vbs7KJoZtI//kpTKzE/DUmmnAFD8/Ca46s7Obs92/w==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.50.0.tgz", + "integrity": "sha512-6/cmF2piao+f6wSxUsJLZjck7OQsYyRtcOZS02k7XINSNlz93v6emM8WutDQSXnroG2xwYlEVHJI+cPA7CPM3Q==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/scope-manager": "8.46.4", - "@typescript-eslint/types": "8.46.4", - "@typescript-eslint/typescript-estree": "8.46.4", - "@typescript-eslint/visitor-keys": "8.46.4", + "@typescript-eslint/scope-manager": "8.50.0", + "@typescript-eslint/types": "8.50.0", + "@typescript-eslint/typescript-estree": "8.50.0", + "@typescript-eslint/visitor-keys": "8.50.0", "debug": "^4.3.4" }, "engines": { @@ -25833,14 +25347,14 @@ } }, "node_modules/typescript-eslint/node_modules/@typescript-eslint/scope-manager": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.46.4.tgz", - "integrity": "sha512-tMDbLGXb1wC+McN1M6QeDx7P7c0UWO5z9CXqp7J8E+xGcJuUuevWKxuG8j41FoweS3+L41SkyKKkia16jpX7CA==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.50.0.tgz", + "integrity": "sha512-xCwfuCZjhIqy7+HKxBLrDVT5q/iq7XBVBXLn57RTIIpelLtEIZHXAF/Upa3+gaCpeV1NNS5Z9A+ID6jn50VD4A==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.46.4", - "@typescript-eslint/visitor-keys": "8.46.4" + "@typescript-eslint/types": "8.50.0", + "@typescript-eslint/visitor-keys": "8.50.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -25851,15 +25365,15 @@ } }, "node_modules/typescript-eslint/node_modules/@typescript-eslint/type-utils": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.46.4.tgz", - "integrity": "sha512-V4QC8h3fdT5Wro6vANk6eojqfbv5bpwHuMsBcJUJkqs2z5XnYhJzyz9Y02eUmF9u3PgXEUiOt4w4KHR3P+z0PQ==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.50.0.tgz", + "integrity": "sha512-7OciHT2lKCewR0mFoBrvZJ4AXTMe/sYOe87289WAViOocEmDjjv8MvIOT2XESuKj9jp8u3SZYUSh89QA4S1kQw==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.46.4", - "@typescript-eslint/typescript-estree": "8.46.4", - "@typescript-eslint/utils": "8.46.4", + "@typescript-eslint/types": "8.50.0", + "@typescript-eslint/typescript-estree": "8.50.0", + "@typescript-eslint/utils": "8.50.0", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -25876,9 +25390,9 @@ } }, "node_modules/typescript-eslint/node_modules/@typescript-eslint/types": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.46.4.tgz", - "integrity": "sha512-USjyxm3gQEePdUwJBFjjGNG18xY9A2grDVGuk7/9AkjIF1L+ZrVnwR5VAU5JXtUnBL/Nwt3H31KlRDaksnM7/w==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.50.0.tgz", + "integrity": "sha512-iX1mgmGrXdANhhITbpp2QQM2fGehBse9LbTf0sidWK6yg/NE+uhV5dfU1g6EYPlcReYmkE9QLPq/2irKAmtS9w==", "dev": true, "license": "MIT", "engines": { @@ -25890,21 +25404,20 @@ } }, "node_modules/typescript-eslint/node_modules/@typescript-eslint/typescript-estree": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.46.4.tgz", - "integrity": "sha512-7oV2qEOr1d4NWNmpXLR35LvCfOkTNymY9oyW+lUHkmCno7aOmIf/hMaydnJBUTBMRCOGZh8YjkFOc8dadEoNGA==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.50.0.tgz", + "integrity": "sha512-W7SVAGBR/IX7zm1t70Yujpbk+zdPq/u4soeFSknWFdXIFuWsBGBOUu/Tn/I6KHSKvSh91OiMuaSnYp3mtPt5IQ==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/project-service": "8.46.4", - "@typescript-eslint/tsconfig-utils": "8.46.4", - "@typescript-eslint/types": "8.46.4", - "@typescript-eslint/visitor-keys": "8.46.4", + "@typescript-eslint/project-service": "8.50.0", + "@typescript-eslint/tsconfig-utils": "8.50.0", + "@typescript-eslint/types": "8.50.0", + "@typescript-eslint/visitor-keys": "8.50.0", "debug": "^4.3.4", - "fast-glob": "^3.3.2", - "is-glob": "^4.0.3", "minimatch": "^9.0.4", "semver": "^7.6.0", + "tinyglobby": "^0.2.15", "ts-api-utils": "^2.1.0" }, "engines": { @@ -25919,16 +25432,16 @@ } }, "node_modules/typescript-eslint/node_modules/@typescript-eslint/utils": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.46.4.tgz", - "integrity": "sha512-AbSv11fklGXV6T28dp2Me04Uw90R2iJ30g2bgLz529Koehrmkbs1r7paFqr1vPCZi7hHwYxYtxfyQMRC8QaVSg==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.50.0.tgz", + "integrity": "sha512-87KgUXET09CRjGCi2Ejxy3PULXna63/bMYv72tCAlDJC3Yqwln0HiFJ3VJMst2+mEtNtZu5oFvX4qJGjKsnAgg==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.46.4", - "@typescript-eslint/types": "8.46.4", - "@typescript-eslint/typescript-estree": "8.46.4" + "@typescript-eslint/scope-manager": "8.50.0", + "@typescript-eslint/types": "8.50.0", + "@typescript-eslint/typescript-estree": "8.50.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -25943,13 +25456,13 @@ } }, "node_modules/typescript-eslint/node_modules/@typescript-eslint/visitor-keys": { - "version": "8.46.4", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.46.4.tgz", - "integrity": "sha512-/++5CYLQqsO9HFGLI7APrxBJYo+5OCMpViuhV8q5/Qa3o5mMrF//eQHks+PXcsAVaLdn817fMuS7zqoXNNZGaw==", + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.50.0.tgz", + "integrity": "sha512-Xzmnb58+Db78gT/CCj/PVCvK+zxbnsw6F+O1oheYszJbBSdEjVhQi3C/Xttzxgi/GLmpvOggRs1RFpiJ8+c34Q==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.46.4", + "@typescript-eslint/types": "8.50.0", "eslint-visitor-keys": "^4.2.1" }, "engines": { @@ -26109,9 +25622,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.4.tgz", - "integrity": "sha512-q0SPT4xyU84saUX+tomz1WLkxUbuaJnR1xWt17M7fJtEJigJeWUNGUqrauFXsHnqev9y9JTRGwk13tFBuKby4A==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", + "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==", "dev": true, "funding": [ { @@ -26169,16 +25682,6 @@ "punycode": "^2.1.0" } }, - "node_modules/url-parse": { - "version": "1.5.10", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", - "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", - "license": "MIT", - "dependencies": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" - } - }, "node_modules/util": { "version": "0.12.5", "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", @@ -26289,27 +25792,6 @@ "node": ">= 0.8" } }, - "node_modules/void-elements": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", - "integrity": "sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/w3c-xmlserializer": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz", - "integrity": "sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw==", - "license": "MIT", - "dependencies": { - "xml-name-validator": "^4.0.0" - }, - "engines": { - "node": ">=14" - } - }, "node_modules/walk-back": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/walk-back/-/walk-back-5.1.1.tgz", @@ -26340,58 +25822,19 @@ } }, "node_modules/webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", - "license": "BSD-2-Clause", - "engines": { - "node": ">=12" - } - }, - "node_modules/whatwg-encoding": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz", - "integrity": "sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==", - "license": "MIT", - "dependencies": { - "iconv-lite": "0.6.3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/whatwg-encoding/node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "license": "MIT", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/whatwg-mimetype": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz", - "integrity": "sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==", - "license": "MIT", - "engines": { - "node": ">=12" - } + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "license": "BSD-2-Clause" }, "node_modules/whatwg-url": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", - "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", "license": "MIT", "dependencies": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=12" + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" } }, "node_modules/which": { @@ -26513,9 +25956,9 @@ } }, "node_modules/winston": { - "version": "3.18.3", - "resolved": "https://registry.npmjs.org/winston/-/winston-3.18.3.tgz", - "integrity": "sha512-NoBZauFNNWENgsnC9YpgyYwOVrl2m58PpQ8lNHjV3kosGs7KJ7Npk9pCUE+WJlawVSe8mykWDKWFSVfs3QO9ww==", + "version": "3.19.0", + "resolved": "https://registry.npmjs.org/winston/-/winston-3.19.0.tgz", + "integrity": "sha512-LZNJgPzfKR+/J3cHkxcpHKpKKvGfDZVPS4hfJCc4cCG0CgYzvlD6yE/S3CIL/Yt91ak327YCpiF/0MyeZHEHKA==", "license": "MIT", "dependencies": { "@colors/colors": "^1.6.0", @@ -26650,27 +26093,6 @@ "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/ws": { - "version": "8.18.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz", - "integrity": "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==", - "license": "MIT", - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, "node_modules/xdg-basedir": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", @@ -26680,21 +26102,6 @@ "node": ">=8" } }, - "node_modules/xml-name-validator": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz", - "integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==", - "license": "Apache-2.0", - "engines": { - "node": ">=12" - } - }, - "node_modules/xmlchars": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", - "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", - "license": "MIT" - }, "node_modules/xmlcreate": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.4.tgz", @@ -26894,13 +26301,12 @@ "@contentstack/cli-cm-export": "~2.0.0-beta.2", "@contentstack/cli-cm-export-to-csv": "~1.10.0", "@contentstack/cli-cm-import": "~2.0.0-beta.2", - "@contentstack/cli-cm-import-setup": "1.7.0", - "@contentstack/cli-cm-migrate-rte": "~1.6.2", + "@contentstack/cli-cm-import-setup": "~2.0.0-beta", "@contentstack/cli-cm-seed": "~2.0.0-beta.2", "@contentstack/cli-command": "~1.6.2", "@contentstack/cli-config": "~1.15.3", "@contentstack/cli-launch": "^1.9.2", - "@contentstack/cli-migration": "~1.8.2", + "@contentstack/cli-migration": "~2.0.0-beta", "@contentstack/cli-utilities": "~1.15.0", "@contentstack/cli-variants": "~2.0.0-beta.2", "@contentstack/management": "~1.22.0", @@ -27005,9 +26411,9 @@ "license": "MIT" }, "packages/contentstack-audit/node_modules/@types/node": { - "version": "20.19.25", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.19.25.tgz", - "integrity": "sha512-ZsJzA5thDQMSQO788d7IocwwQbI8B5OPzmqNvpf3NY/+MHDAS759Wo0gd2WQeXYt5AAAQjzcrTVC6SKCuYgoCQ==", + "version": "20.19.27", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.19.27.tgz", + "integrity": "sha512-N2clP5pJhB2YnZJ3PIHFk5RkygRX5WO/5f0WC08tp0wd+sv0rsJk3MqWn3CbNmT2J505a5336jaQj4ph1AdMug==", "dev": true, "license": "MIT", "dependencies": { @@ -27822,9 +27228,9 @@ } }, "packages/contentstack-dev-dependencies/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "version": "3.14.2", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.2.tgz", + "integrity": "sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==", "dev": true, "license": "MIT", "dependencies": { @@ -28191,9 +27597,9 @@ } }, "packages/contentstack-export-to-csv/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "version": "3.14.2", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.2.tgz", + "integrity": "sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==", "dev": true, "license": "MIT", "dependencies": { @@ -28370,7 +27776,7 @@ }, "packages/contentstack-import-setup": { "name": "@contentstack/cli-cm-import-setup", - "version": "1.7.0", + "version": "2.0.0-beta", "license": "MIT", "dependencies": { "@contentstack/cli-command": "~1.6.1", @@ -28411,41 +27817,9 @@ "node": ">=14.0.0" } }, - "packages/contentstack-migrate-rte": { - "name": "@contentstack/cli-cm-migrate-rte", - "version": "1.6.2", - "license": "MIT", - "dependencies": { - "@contentstack/cli-command": "~1.6.1", - "@contentstack/cli-utilities": "~1.15.0", - "@contentstack/json-rte-serializer": "~2.1.0", - "@oclif/core": "^4.3.0", - "@oclif/plugin-help": "^6.2.28", - "chalk": "^4.1.2", - "collapse-whitespace": "^1.1.7", - "jsdom": "^20.0.3", - "jsonschema": "^1.5.0", - "lodash": "^4.17.21", - "nock": "^13.5.6", - "omit-deep-lodash": "^1.1.7", - "sinon": "^19.0.5" - }, - "devDependencies": { - "@oclif/test": "^4.1.13", - "chai": "^4.5.0", - "eslint": "^8.57.1", - "eslint-config-oclif": "^6.0.62", - "mocha": "^10.8.2", - "nyc": "^15.1.0", - "oclif": "^4.17.46" - }, - "engines": { - "node": ">=14.0.0" - } - }, "packages/contentstack-migration": { "name": "@contentstack/cli-migration", - "version": "1.8.2", + "version": "2.0.0-beta", "license": "MIT", "dependencies": { "@contentstack/cli-command": "~1.6.1", @@ -28711,9 +28085,9 @@ } }, "packages/contentstack-variants/node_modules/@types/node": { - "version": "20.19.25", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.19.25.tgz", - "integrity": "sha512-ZsJzA5thDQMSQO788d7IocwwQbI8B5OPzmqNvpf3NY/+MHDAS759Wo0gd2WQeXYt5AAAQjzcrTVC6SKCuYgoCQ==", + "version": "20.19.27", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.19.27.tgz", + "integrity": "sha512-N2clP5pJhB2YnZJ3PIHFk5RkygRX5WO/5f0WC08tp0wd+sv0rsJk3MqWn3CbNmT2J505a5336jaQj4ph1AdMug==", "dev": true, "license": "MIT", "dependencies": { diff --git a/packages/contentstack-import-setup/package.json b/packages/contentstack-import-setup/package.json index fa80aab692..40ffc8ef33 100644 --- a/packages/contentstack-import-setup/package.json +++ b/packages/contentstack-import-setup/package.json @@ -1,7 +1,7 @@ { "name": "@contentstack/cli-cm-import-setup", "description": "Contentstack CLI plugin to setup the mappers and configurations for the import command", - "version": "1.7.0", + "version": "2.0.0-beta", "author": "Contentstack", "bugs": "https://github.com/contentstack/cli/issues", "dependencies": { diff --git a/packages/contentstack-import-setup/src/types/import-config.ts b/packages/contentstack-import-setup/src/types/import-config.ts index f401d5f41a..cfa555c529 100644 --- a/packages/contentstack-import-setup/src/types/import-config.ts +++ b/packages/contentstack-import-setup/src/types/import-config.ts @@ -39,7 +39,6 @@ export default interface ImportConfig extends DefaultConfig, ExternalConfig { authtoken?: string; destinationStackName?: string; org_uid?: string; - contentVersion: number; stackName?: string; branchName: string; selectedModules: Modules[]; diff --git a/packages/contentstack-import-setup/src/utils/import-config-handler.ts b/packages/contentstack-import-setup/src/utils/import-config-handler.ts index 9949274beb..e099d43ae8 100644 --- a/packages/contentstack-import-setup/src/utils/import-config-handler.ts +++ b/packages/contentstack-import-setup/src/utils/import-config-handler.ts @@ -32,12 +32,6 @@ const setupConfig = async (importCmdFlags: any): Promise => { config.contentDir = path.resolve(config.contentDir); //Note to support the old key config.data = config.contentDir; - if (fileExistsSync(path.join(config.contentDir, 'export-info.json'))) { - config.contentVersion = - ((await readFile(path.join(config.contentDir, 'export-info.json'))) || {}).contentVersion || 2; - } else { - config.contentVersion = 1; - } const managementTokenAlias = importCmdFlags['management-token-alias'] || importCmdFlags['alias']; diff --git a/packages/contentstack-import-setup/src/utils/log.ts b/packages/contentstack-import-setup/src/utils/log.ts index aac6d63457..7bacf4aea8 100644 --- a/packages/contentstack-import-setup/src/utils/log.ts +++ b/packages/contentstack-import-setup/src/utils/log.ts @@ -8,7 +8,7 @@ import { ImportConfig } from '../types'; let logger: Logger; export function isImportConfig(config: ImportConfig | MessageType): config is ImportConfig { - return (config as ImportConfig).data !== undefined && (config as ImportConfig)?.contentVersion !== undefined; + return (config as ImportConfig).data !== undefined; } export function log(entry: LogEntry): void; diff --git a/packages/contentstack-import-setup/test/unit/backup-handler.test.ts b/packages/contentstack-import-setup/test/unit/backup-handler.test.ts index b371864af6..03e85b250f 100644 --- a/packages/contentstack-import-setup/test/unit/backup-handler.test.ts +++ b/packages/contentstack-import-setup/test/unit/backup-handler.test.ts @@ -25,7 +25,6 @@ describe('Backup Handler', () => { branchName: '', selectedModules: ['entries'], backupDir: '', - contentVersion: 1, region: 'us', }; diff --git a/packages/contentstack-import-setup/test/unit/common-helper.test.ts b/packages/contentstack-import-setup/test/unit/common-helper.test.ts index d287219145..bcc50358c6 100644 --- a/packages/contentstack-import-setup/test/unit/common-helper.test.ts +++ b/packages/contentstack-import-setup/test/unit/common-helper.test.ts @@ -23,7 +23,6 @@ describe('Common Helper Utilities', () => { branchName: '', selectedModules: ['entries'], backupDir: '', - contentVersion: 1, region: 'us', }; diff --git a/packages/contentstack-import-setup/test/unit/import-config-handler.test.ts b/packages/contentstack-import-setup/test/unit/import-config-handler.test.ts index 082717ef77..6d05f440db 100644 --- a/packages/contentstack-import-setup/test/unit/import-config-handler.test.ts +++ b/packages/contentstack-import-setup/test/unit/import-config-handler.test.ts @@ -123,16 +123,6 @@ describe('Import Config Handler', () => { expect(config.branchName).to.equal('development'); }); - it('should set default content version to 1', async () => { - const flags = { - 'data-dir': contentDir, - }; - - const config = await setupConfig(flags); - - expect(config.contentVersion).to.equal(1); - }); - it('should ask for modules when none are provided', async () => { const flags = { 'data-dir': contentDir, diff --git a/packages/contentstack-import-setup/test/unit/import-setup.test.ts b/packages/contentstack-import-setup/test/unit/import-setup.test.ts index ee0eca6b6d..a35c1fc490 100644 --- a/packages/contentstack-import-setup/test/unit/import-setup.test.ts +++ b/packages/contentstack-import-setup/test/unit/import-setup.test.ts @@ -29,7 +29,6 @@ describe('ImportSetup', () => { branchName: '', selectedModules: ['entries'], backupDir: '', - contentVersion: 1, region: 'us', modules: { extensions: { @@ -58,6 +57,11 @@ describe('ImportSetup', () => { fileName: 'environments', dependencies: [], }, + locales: { + dirName: 'locales', + fileName: 'locales', + dependencies: [], + }, entries: { dirName: 'entries', fileName: 'entries', diff --git a/packages/contentstack-import-setup/test/unit/login-handler.test.ts b/packages/contentstack-import-setup/test/unit/login-handler.test.ts index dfdb08450c..d5f193ae24 100644 --- a/packages/contentstack-import-setup/test/unit/login-handler.test.ts +++ b/packages/contentstack-import-setup/test/unit/login-handler.test.ts @@ -1,186 +1,555 @@ import { expect } from 'chai'; -import { stub, restore, SinonStub } from 'sinon'; -import proxyquire from 'proxyquire'; +import sinon from 'sinon'; import loginHandler from '../../src/utils/login-handler'; import * as logger from '../../src/utils/logger'; import { ImportConfig } from '../../src/types'; describe('Login Handler', () => { - let managementSDKClientStub: SinonStub; - let clientLoginStub: SinonStub; - let stackStub: SinonStub; - let fetchStub: SinonStub; - let logStub: SinonStub; - let isAuthenticatedStub: SinonStub; - let mockStack: any; - - // Setup stubs for client methods - clientLoginStub = stub(); - fetchStub = stub(); - - mockStack = { - fetch: fetchStub, - }; - - stackStub = stub().returns(mockStack); - - // Create a mock client that will be returned by managementSDKClient - const mockClient = { - login: clientLoginStub, - stack: stackStub, - }; - - // Make managementSDKClient return our mock client - managementSDKClientStub = stub().resolves(mockClient); - isAuthenticatedStub = stub().returns(false); - - // Load the compiled JS version of your TS file - const { default: loginHandler } = proxyquire('../../src/utils/login-handler', { - '@contentstack/cli-utilities': { - managementSDKClient: managementSDKClientStub, - isAuthenticated: isAuthenticatedStub, - }, - }); - - // Base mock config that satisfies ImportConfig type - const baseConfig: Partial = { - contentDir: '/content/path', - data: '/content/path', - apiKey: 'test-api-key', - forceStopMarketplaceAppsPrompt: false, - master_locale: { code: 'en-us' }, - masterLocale: { code: 'en-us' }, - branchName: '', - selectedModules: ['entries'], - backupDir: '', - contentVersion: 1, - region: 'us', - }; + let sandbox: sinon.SinonSandbox; + let managementSDKClientStub: sinon.SinonStub; + let configHandlerGetStub: sinon.SinonStub; + let logStub: sinon.SinonStub; + let mockClient: any; + let mockStackAPIClient: any; beforeEach(() => { - restore(); - - logStub = stub(logger, 'log'); + sandbox = sinon.createSandbox(); + + // Mock stack API client + mockStackAPIClient = { + fetch: sandbox.stub(), + }; + + // Mock management SDK client + mockClient = { + login: sandbox.stub(), + stack: sandbox.stub().returns(mockStackAPIClient), + }; + + // Stub managementSDKClient using .value() pattern - ensure it returns the mock client + const cliUtilitiesModule = require('@contentstack/cli-utilities'); + sandbox.stub(cliUtilitiesModule, 'managementSDKClient').value(() => Promise.resolve(mockClient)); + + // Stub configHandler.get to control isAuthenticated() behavior + // isAuthenticated() internally checks configHandler.get('authorisationType') + // Returns 'OAUTH' or 'AUTH' for authenticated, undefined for not authenticated + const configHandler = require('@contentstack/cli-utilities').configHandler; + configHandlerGetStub = sandbox.stub(configHandler, 'get'); + // Default to undefined (not authenticated) - tests can override as needed + configHandlerGetStub.returns(undefined); + + // Stub logger + logStub = sandbox.stub(logger, 'log'); }); afterEach(() => { - restore(); + sandbox.restore(); }); - describe('with email and password', () => { - it('should login successfully and return updated config', async () => { - const mockConfig = { - ...baseConfig, + describe('Email/Password Authentication', () => { + it('should successfully login with email and password and set headers', async () => { + const config: ImportConfig = { email: 'test@example.com', - password: 'password123', - source_stack: 'test-stack-key', + password: 'testpassword', + source_stack: 'test-api-key', + access_token: 'test-access-token', + authtoken: 'test-auth-token', + apiKey: 'test-api-key', + contentDir: '/test/content', + data: '/test/content', + management_token: undefined, + target_stack: 'test-api-key', } as ImportConfig; - // Mock successful login - clientLoginStub.resolves({ + mockClient.login.resolves({ user: { - authtoken: 'test-auth-token', + authtoken: 'new-auth-token-123', }, }); - const result = await loginHandler(mockConfig); + const result = await loginHandler(config); + + expect(result).to.equal(config); + expect(config.headers).to.exist; + expect(config.headers!.api_key).to.equal('test-api-key'); + expect(config.headers!.access_token).to.equal('test-access-token'); + expect(config.headers!.authtoken).to.equal('test-auth-token'); + expect(config.headers!['X-User-Agent']).to.equal('contentstack-export/v'); + expect(mockClient.login.calledOnce).to.be.true; + expect(mockClient.login.calledWith({ email: 'test@example.com', password: 'testpassword' })).to.be.true; + expect(logStub.calledWith(config, 'Contentstack account authenticated successfully!', 'success')).to.be.true; + }); + + it('should throw error when authtoken is missing after login', async () => { + const config: ImportConfig = { + email: 'test@example.com', + password: 'testpassword', + apiKey: 'test-api-key', + contentDir: '/test/content', + data: '/test/content', + } as ImportConfig; + + mockClient.login.resolves({ + user: { + authtoken: null, + }, + }); - expect(managementSDKClientStub.calledOnce).to.be.true; - expect(clientLoginStub.calledOnce).to.be.true; - expect( - clientLoginStub.calledWith({ - email: 'test@example.com', - password: 'password123', - }), - ).to.be.true; + try { + await loginHandler(config); + expect.fail('Should have thrown an error'); + } catch (error: any) { + expect(error.message).to.equal('Invalid auth token received after login'); + } - expect(logStub.calledWith(result, 'Contentstack account authenticated successfully!', 'success')).to.be.true; + expect(mockClient.login.calledOnce).to.be.true; }); - it('should throw error when login fails', async () => { - const mockConfig = { - ...baseConfig, + it('should throw error when user object is missing authtoken property', async () => { + const config: ImportConfig = { email: 'test@example.com', - password: 'wrong-password', + password: 'testpassword', + apiKey: 'test-api-key', + contentDir: '/test/content', + data: '/test/content', } as ImportConfig; - // Mock failed login - clientLoginStub.resolves({ + mockClient.login.resolves({ user: {}, }); try { - await loginHandler(mockConfig); + await loginHandler(config); expect.fail('Should have thrown an error'); - } catch (err: any) { - expect(err.message).to.equal('Invalid auth token received after login'); + } catch (error: any) { + expect(error.message).to.equal('Invalid auth token received after login'); } }); + + it('should throw error when user object is missing', async () => { + const config: ImportConfig = { + email: 'test@example.com', + password: 'testpassword', + apiKey: 'test-api-key', + contentDir: '/test/content', + data: '/test/content', + } as ImportConfig; + + mockClient.login.resolves({}); + + try { + await loginHandler(config); + expect.fail('Should have thrown an error'); + } catch (error: any) { + expect(error.message).to.equal('Invalid auth token received after login'); + } + }); + + it('should handle login API errors', async () => { + const config: ImportConfig = { + email: 'test@example.com', + password: 'testpassword', + apiKey: 'test-api-key', + contentDir: '/test/content', + data: '/test/content', + } as ImportConfig; + + const loginError = new Error('Login failed'); + mockClient.login.rejects(loginError); + + try { + await loginHandler(config); + expect.fail('Should have thrown an error'); + } catch (error: any) { + expect(error).to.equal(loginError); + } + + expect(mockClient.login.calledOnce).to.be.true; + }); + }); + + describe('Management Token Authentication', () => { + it('should return config when management_token is provided', async () => { + const config: ImportConfig = { + management_token: 'test-management-token', + apiKey: 'test-api-key', + contentDir: '/test/content', + data: '/test/content', + email: undefined, + password: undefined, + } as ImportConfig; + + const result = await loginHandler(config); + + expect(result).to.equal(config); + expect(mockClient.login.called).to.be.false; + expect(mockStackAPIClient.fetch.called).to.be.false; + }); + + it('should return config when management_token is provided without email/password', async () => { + const config: ImportConfig = { + management_token: 'test-management-token', + apiKey: 'test-api-key', + contentDir: '/test/content', + data: '/test/content', + email: undefined, + password: undefined, + } as ImportConfig; + + const result = await loginHandler(config); + + // Management token path is used when email/password are not provided + expect(result).to.equal(config); + expect(mockClient.login.called).to.be.false; + }); }); - describe('with authentication', () => { - it('should handle stack api key error', async () => { - const mockConfig = { - ...baseConfig, - target_stack: 'invalid-stack-key', + describe('Existing Authentication', () => { + it('should validate stack access when user is already authenticated', async () => { + const config: ImportConfig = { + apiKey: 'test-api-key', + target_stack: 'test-api-key', + management_token: undefined, // NOT set - so it will check isAuthenticated() + contentDir: '/test/content', + data: '/test/content', + email: undefined, + password: undefined, } as ImportConfig; - // Set isAuthenticated to return true for this test - isAuthenticatedStub.returns(true); + // Reset stub completely to clear any previous behavior + configHandlerGetStub.reset(); + + // Make isAuthenticated() return true by returning 'OAUTH' for authorisationType + configHandlerGetStub.callsFake((key: string) => { + if (key === 'authorisationType') { + return 'OAUTH'; // This makes isAuthenticated() return true + } + return undefined; + }); + + // Reset fetch stub and mock stack response + mockStackAPIClient.fetch.reset(); + mockStackAPIClient.fetch.resolves({ + name: 'Test Stack Name', + }); + + // Ensure client.stack returns the mock stack client + mockClient.stack.reset(); + mockClient.stack.returns(mockStackAPIClient); + + const result = await loginHandler(config); + + expect(result).to.equal(config); + expect(config.destinationStackName).to.equal('Test Stack Name'); + // Verify stub was called - if stack was called, then isAuthenticated() returned true, which means the stub was called + expect(mockClient.stack.calledOnce).to.be.true; + expect(mockClient.stack.calledWith({ + api_key: 'test-api-key', + management_token: undefined, // This is what gets passed when management_token is not set + })).to.be.true; + expect(mockStackAPIClient.fetch.calledOnce).to.be.true; + }); - const error = { + it('should throw error when stack fetch fails with api_key error', async () => { + const config: ImportConfig = { + apiKey: 'test-api-key', + target_stack: 'test-api-key', + management_token: undefined, // NOT set - so it will check isAuthenticated() + contentDir: '/test/content', + data: '/test/content', + email: undefined, + password: undefined, + } as ImportConfig; + + const apiKeyError: any = { errors: { api_key: ['Invalid stack API key'], }, }; - fetchStub.rejects(error); + // Setup configHandler to return values that isAuthenticated() needs + configHandlerGetStub.callsFake((key: string) => { + if (key === 'authorisationType') { + return 'OAUTH'; // This makes isAuthenticated() return true + } + // Return undefined for other keys + return undefined; + }); + mockStackAPIClient.fetch.reset(); + mockClient.stack.reset(); + mockClient.stack.returns(mockStackAPIClient); + mockStackAPIClient.fetch.rejects(apiKeyError); try { - await loginHandler(mockConfig); + await loginHandler(config); expect.fail('Should have thrown an error'); - } catch (err) { - expect(err).to.equal(error); + } catch (error: any) { + expect(error).to.exist; + expect(error.errors).to.deep.equal(apiKeyError.errors); expect(logStub.called).to.be.true; } + + expect(mockStackAPIClient.fetch.calledOnce).to.be.true; }); - it('should handle general fetch error', async () => { - const mockConfig = { - ...baseConfig, - target_stack: 'test-stack-key', + it('should throw error when stack fetch fails with errorMessage', async () => { + const config: ImportConfig = { + apiKey: 'test-api-key', + target_stack: 'test-api-key', + management_token: undefined, // NOT set - so it will check isAuthenticated() + contentDir: '/test/content', + data: '/test/content', + email: undefined, + password: undefined, } as ImportConfig; - // Set isAuthenticated to return true for this test - isAuthenticatedStub.returns(true); + const fetchError: any = { + errorMessage: 'Stack not found', + }; - const error: any = new Error('Network error'); - error.errorMessage = 'Failed to fetch stack'; + // Reset stubs + configHandlerGetStub.reset(); + mockStackAPIClient.fetch.reset(); + mockClient.stack.reset(); + + configHandlerGetStub.callsFake((key: string) => { + if (key === 'authorisationType') { + return 'OAUTH'; // This makes isAuthenticated() return true + } + return undefined; + }); + mockClient.stack.returns(mockStackAPIClient); + mockStackAPIClient.fetch.rejects(fetchError); - fetchStub.rejects(error); + try { + await loginHandler(config); + expect.fail('Should have thrown an error'); + } catch (error: any) { + expect(error).to.exist; + expect(error.errorMessage).to.equal(fetchError.errorMessage); + expect(logStub.calledWith(config, 'Stack not found', 'error')).to.be.true; + } + + expect(mockStackAPIClient.fetch.calledOnce).to.be.true; + }); + + it('should throw error when stack fetch fails with generic error', async () => { + const config: ImportConfig = { + apiKey: 'test-api-key', + target_stack: 'test-api-key', + management_token: undefined, // NOT set - so it will check isAuthenticated() + contentDir: '/test/content', + data: '/test/content', + email: undefined, + password: undefined, + } as ImportConfig; + + const genericError = new Error('Network error'); + + // Reset stubs + configHandlerGetStub.reset(); + mockStackAPIClient.fetch.reset(); + + configHandlerGetStub.callsFake((key: string) => { + if (key === 'authorisationType') { + return 'OAUTH'; // This makes isAuthenticated() return true + } + return undefined; + }); + mockClient.stack.reset(); + mockClient.stack.returns(mockStackAPIClient); + mockStackAPIClient.fetch.rejects(genericError); + + try { + await loginHandler(config); + expect.fail('Should have thrown an error'); + } catch (error: any) { + expect(error).to.exist; + expect(error.message).to.equal(genericError.message); + } + + expect(mockStackAPIClient.fetch.calledOnce).to.be.true; + }); + + it('should handle error when errorstack_key is empty array', async () => { + const config: ImportConfig = { + apiKey: 'test-api-key', + target_stack: 'test-api-key', + management_token: undefined, // NOT set - so it will check isAuthenticated() + contentDir: '/test/content', + data: '/test/content', + email: undefined, + password: undefined, + } as ImportConfig; + + const errorWithEmptyKey: any = { + errors: { + api_key: [], + }, + errorMessage: 'Stack fetch failed', + }; + + // Reset stubs + configHandlerGetStub.reset(); + mockStackAPIClient.fetch.reset(); + mockClient.stack.reset(); + + configHandlerGetStub.callsFake((key: string) => { + if (key === 'authorisationType') { + return 'OAUTH'; // This makes isAuthenticated() return true + } + return undefined; + }); + mockClient.stack.returns(mockStackAPIClient); + mockStackAPIClient.fetch.rejects(errorWithEmptyKey); try { - await loginHandler(mockConfig); + await loginHandler(config); expect.fail('Should have thrown an error'); - } catch (err) { - expect(err).to.equal(error); - expect(logStub.calledWith(mockConfig, 'Failed to fetch stack', 'error')).to.be.true; + } catch (error: any) { + expect(error).to.exist; + expect(error).to.have.property('errors'); + expect(error).to.have.property('errorMessage'); } }); }); - describe('without credentials', () => { - it('should return undefined when no login method is available', async () => { - const mockConfig = { - ...baseConfig, + describe('Authentication Priority', () => { + it('should prioritize email/password over existing auth when email and password are present', async () => { + const config: ImportConfig = { + email: 'test@example.com', + password: 'testpassword', + apiKey: 'test-api-key', + source_stack: 'test-api-key', + access_token: 'test-access-token', + authtoken: 'test-auth-token', + contentDir: '/test/content', + data: '/test/content', + management_token: undefined, + } as ImportConfig; + + // Reset configHandler stub for this test + configHandlerGetStub.reset(); + configHandlerGetStub.callsFake((key: string) => { + if (key === 'authorisationType') { + return 'OAUTH'; // This makes isAuthenticated() return true + } + return undefined; + }); + + // Reset and setup login mock + mockClient.login.reset(); + mockClient.login.resolves({ + user: { + authtoken: 'new-auth-token', + }, + }); + + const result = await loginHandler(config); + + expect(result).to.equal(config); + expect(mockClient.login.calledOnce).to.be.true; + expect(mockStackAPIClient.fetch.called).to.be.false; + }); + + it('should prioritize management_token over email/password', async () => { + // Reset stubs + configHandlerGetStub.reset(); + mockClient.login.reset(); + mockStackAPIClient.fetch.reset(); + + // Note: Based on the code logic, email/password is checked FIRST, then management_token + // So when both are present, email/password takes priority + // This test verifies that when management_token is provided without email/password, + // it uses management_token (not email/password auth) + const configForManagementToken: ImportConfig = { + management_token: 'test-management-token', + email: undefined, + password: undefined, + apiKey: 'test-api-key', + contentDir: '/test/content', + data: '/test/content', + } as ImportConfig; + + const result = await loginHandler(configForManagementToken); + + expect(result).to.equal(configForManagementToken); + expect(mockClient.login.called).to.be.false; + }); + + it('should check existing auth only when email/password and management_token are not provided', async () => { + const config: ImportConfig = { + apiKey: 'test-api-key', + target_stack: 'test-api-key', + management_token: undefined, + email: undefined, + password: undefined, + contentDir: '/test/content', + data: '/test/content', } as ImportConfig; - // Set isAuthenticated to return false for this test - isAuthenticatedStub.returns(false); + // Reset stub completely to clear any previous behavior + configHandlerGetStub.reset(); + + configHandlerGetStub.callsFake((key: string) => { + if (key === 'authorisationType') { + return 'OAUTH'; // This makes isAuthenticated() return true + } + return undefined; + }); + + mockStackAPIClient.fetch.reset(); + mockStackAPIClient.fetch.resolves({ + name: 'Test Stack', + }); + + // Ensure mockClient.stack is set up (from beforeEach, but ensure it's correct) + mockClient.stack.reset(); + mockClient.stack.returns(mockStackAPIClient); + mockClient.login.reset(); - const result = await loginHandler(mockConfig); + const result = await loginHandler(config); + + expect(result).to.equal(config); + // Verify stub was called - if stack was called, then isAuthenticated() returned true, which means the stub was called + expect(mockClient.login.called).to.be.false; + }); - expect(result).to.be.undefined; + }); + + describe('Edge Cases', () => { + it('should handle null values in error object gracefully', async () => { + const config: ImportConfig = { + apiKey: 'test-api-key', + target_stack: 'test-api-key', + management_token: undefined, // NOT set - so it will check isAuthenticated() + contentDir: '/test/content', + data: '/test/content', + email: undefined, + password: undefined, + } as ImportConfig; + + // Reset stubs + configHandlerGetStub.reset(); + mockStackAPIClient.fetch.reset(); + + configHandlerGetStub.callsFake((key: string) => { + if (key === 'authorisationType') { + return 'OAUTH'; // This makes isAuthenticated() return true + } + return undefined; + }); + mockClient.stack.reset(); + mockClient.stack.returns(mockStackAPIClient); + mockStackAPIClient.fetch.rejects(null); + + try { + await loginHandler(config); + expect.fail('Should have thrown an error'); + } catch (error: any) { + // When error is null, it will still throw but we just verify it was thrown + expect(error).to.exist; + } }); }); }); diff --git a/packages/contentstack-import-setup/test/unit/modules/assets.test.ts b/packages/contentstack-import-setup/test/unit/modules/assets.test.ts index 5cd8d42838..0077e5fb39 100644 --- a/packages/contentstack-import-setup/test/unit/modules/assets.test.ts +++ b/packages/contentstack-import-setup/test/unit/modules/assets.test.ts @@ -24,7 +24,6 @@ describe('AssetImportSetup', () => { branchName: '', selectedModules: ['assets'], backupDir: '/path/to/backup', - contentVersion: 1, region: 'us', fetchConcurrency: 2, writeConcurrency: 1, diff --git a/packages/contentstack-import-setup/test/unit/modules/base-setup.test.ts b/packages/contentstack-import-setup/test/unit/modules/base-setup.test.ts index 9ce1a5d7f3..491cdac11b 100644 --- a/packages/contentstack-import-setup/test/unit/modules/base-setup.test.ts +++ b/packages/contentstack-import-setup/test/unit/modules/base-setup.test.ts @@ -19,7 +19,6 @@ describe('BaseImportSetup', () => { branchName: '', selectedModules: ['entries'], backupDir: '', - contentVersion: 1, region: 'us', fetchConcurrency: 2, writeConcurrency: 1, diff --git a/packages/contentstack-import-setup/test/unit/modules/content-types.test.ts b/packages/contentstack-import-setup/test/unit/modules/content-types.test.ts index 3aecf108b0..4ff5a27cf2 100644 --- a/packages/contentstack-import-setup/test/unit/modules/content-types.test.ts +++ b/packages/contentstack-import-setup/test/unit/modules/content-types.test.ts @@ -20,7 +20,6 @@ describe('ContentTypesImportSetup', () => { branchName: '', selectedModules: ['content-types'], backupDir: '', - contentVersion: 1, region: 'us', fetchConcurrency: 2, writeConcurrency: 1, diff --git a/packages/contentstack-import-setup/test/unit/modules/entries.test.ts b/packages/contentstack-import-setup/test/unit/modules/entries.test.ts index ba50f58434..c5eacd54de 100644 --- a/packages/contentstack-import-setup/test/unit/modules/entries.test.ts +++ b/packages/contentstack-import-setup/test/unit/modules/entries.test.ts @@ -20,7 +20,6 @@ describe('EntriesImportSetup', () => { branchName: '', selectedModules: ['entries'], backupDir: '', - contentVersion: 1, region: 'us', fetchConcurrency: 2, writeConcurrency: 1, diff --git a/packages/contentstack-import-setup/test/unit/modules/extensions.test.ts b/packages/contentstack-import-setup/test/unit/modules/extensions.test.ts index 168efb51e5..fdd12fa38f 100644 --- a/packages/contentstack-import-setup/test/unit/modules/extensions.test.ts +++ b/packages/contentstack-import-setup/test/unit/modules/extensions.test.ts @@ -22,7 +22,6 @@ describe('ExtensionsImportSetup', () => { branchName: '', selectedModules: ['extensions'], backupDir: '/path/to/backup', - contentVersion: 1, region: 'us', fetchConcurrency: 2, writeConcurrency: 1, diff --git a/packages/contentstack-import-setup/test/unit/modules/global-fields.test.ts b/packages/contentstack-import-setup/test/unit/modules/global-fields.test.ts index 605c2116a5..25e7316414 100644 --- a/packages/contentstack-import-setup/test/unit/modules/global-fields.test.ts +++ b/packages/contentstack-import-setup/test/unit/modules/global-fields.test.ts @@ -20,7 +20,6 @@ describe('GlobalFieldsImportSetup', () => { branchName: '', selectedModules: ['global-fields'], backupDir: '', - contentVersion: 1, region: 'us', fetchConcurrency: 2, writeConcurrency: 1, diff --git a/packages/contentstack-import-setup/test/unit/modules/marketplace-apps.test.ts b/packages/contentstack-import-setup/test/unit/modules/marketplace-apps.test.ts index c829093ef0..6dafb1dd83 100644 --- a/packages/contentstack-import-setup/test/unit/modules/marketplace-apps.test.ts +++ b/packages/contentstack-import-setup/test/unit/modules/marketplace-apps.test.ts @@ -22,7 +22,6 @@ describe('MarketplaceAppsImportSetup', () => { branchName: '', selectedModules: ['marketplace-apps'], backupDir: '/path/to/backup', - contentVersion: 1, region: 'us', fetchConcurrency: 2, writeConcurrency: 1, diff --git a/packages/contentstack-import-setup/test/unit/modules/taxonomies.test.ts b/packages/contentstack-import-setup/test/unit/modules/taxonomies.test.ts index cc092a99ba..fa67a6ba46 100644 --- a/packages/contentstack-import-setup/test/unit/modules/taxonomies.test.ts +++ b/packages/contentstack-import-setup/test/unit/modules/taxonomies.test.ts @@ -24,7 +24,6 @@ describe('TaxonomiesImportSetup', () => { branchName: '', selectedModules: ['taxonomies'], backupDir: '/path/to/backup', - contentVersion: 1, region: 'us', fetchConcurrency: 2, writeConcurrency: 1, diff --git a/packages/contentstack-migrate-rte/.eslintrc b/packages/contentstack-migrate-rte/.eslintrc deleted file mode 100644 index e56091ba65..0000000000 --- a/packages/contentstack-migrate-rte/.eslintrc +++ /dev/null @@ -1,3 +0,0 @@ -{ - "extends": "oclif" -} diff --git a/packages/contentstack-migrate-rte/.gitignore b/packages/contentstack-migrate-rte/.gitignore deleted file mode 100644 index 80ee047d32..0000000000 --- a/packages/contentstack-migrate-rte/.gitignore +++ /dev/null @@ -1,9 +0,0 @@ -*-debug.log -*-error.log -/.nyc_output -/dist -/tmp -/logs -/yarn.lock -node_modules -/coverage diff --git a/packages/contentstack-migrate-rte/LICENSE b/packages/contentstack-migrate-rte/LICENSE deleted file mode 100644 index ffb4ad010b..0000000000 --- a/packages/contentstack-migrate-rte/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2024 Contentstack - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/packages/contentstack-migrate-rte/README.md b/packages/contentstack-migrate-rte/README.md deleted file mode 100644 index c38cde1007..0000000000 --- a/packages/contentstack-migrate-rte/README.md +++ /dev/null @@ -1,156 +0,0 @@ -# @contentstack/cli-cm-migrate-rte - -It is Contentstack’s CLI plugin to migrate rte. Using this command, you can copy existing value of HTML RTE into JSON RTE. - - -* [@contentstack/cli-cm-migrate-rte](#contentstackcli-cm-migrate-rte) -* [Usage](#usage) -* [Commands](#commands) - - -# Usage - - -```sh-session -$ npm install -g @contentstack/cli-cm-migrate-rte -$ csdx COMMAND -running command... -$ csdx (--version) -@contentstack/cli-cm-migrate-rte/1.6.2 darwin-arm64 node-v22.14.0 -$ csdx --help [COMMAND] -USAGE - $ csdx COMMAND -... -``` - - -# Commands - - -* [`csdx cm:entries:migrate-html-rte`](#csdx-cmentriesmigrate-html-rte) -* [`csdx cm:migrate-rte`](#csdx-cmmigrate-rte) - -## `csdx cm:entries:migrate-html-rte` - -Migration script to migrate content from HTML RTE to JSON RTE - -``` -USAGE - $ csdx cm:entries:migrate-html-rte [-c ] [-a ] [--stack-api-key ] [--content-type ] - [--global-field] [-y] [--branch ] [--html-path --json-path ] [--delay ] [--locale - ] [--batch-limit ] - -FLAGS - -a, --alias= Enter the alias name. You must use either the --alias flag or the --stack-api-key flag. - -c, --config-path= Specify the path where your config file is located. - -y, --yes Avoids reconfirmation of your configuration. - --batch-limit= [default: 50] Provide batch limit for updating entries (default: 50). - --branch= The name of the branch to be used. - --content-type= Specify the UID of the content type for which you want to migrate HTML RTE content. - --delay= [default: 1000] To set the interval time between the migration of HTML RTE to JSON RTE in - subsequent entries of a content type. The default value is 1,000 milliseconds. - --global-field Checks whether the specified UID belongs to a content type or a global field. This flag - is set to false by default. - --html-path= Enter the path to the HTML RTE whose content you want to migrate. - --json-path= Enter the path to the JSON RTE to which you want to migrate the HTML RTE content. - --locale= The locale from which entries will be migrated. - --stack-api-key= API key of the source stack. You must use either the --stack-api-key flag or the --alias - flag. - -DESCRIPTION - Migration script to migrate content from HTML RTE to JSON RTE - -ALIASES - $ csdx cm:migrate-rte - -EXAMPLES - General Usage - - $ csdx cm:entries:migrate-html-rte --config-path path/to/config.json - - - - Using Flags - - $ csdx cm:entries:migrate-html-rte --alias alias --content-type content_type_uid --html-path html-path --json-path json-path - - - - Nested RTE - - $ csdx cm:entries:migrate-html-rte --alias alias --content-type content_type_uid --html-path modular_block_uid.block_uid.html_rte_uid --json-path modular_block_uid.block_uid.json_rte_uid - - - - $ csdx cm:entries:migrate-html-rte --alias alias --content-type content_type_uid --html-path group_uid.html_rte_uid --json-path group_uid.json_rte_uid - - - - Global Field - - $ csdx cm:entries:migrate-html-rte --alias alias --content-type global_field_uid --global-field --html-path html-path --json-path json-path -``` - -_See code: [src/commands/cm/entries/migrate-html-rte.js](https://github.com/contentstack/cli/blob/main/packages/contentstack-migrate-rte/src/commands/cm/entries/migrate-html-rte.js)_ - -## `csdx cm:migrate-rte` - -Migration script to migrate content from HTML RTE to JSON RTE - -``` -USAGE - $ csdx cm:migrate-rte [-c ] [-a ] [--stack-api-key ] [--content-type ] - [--global-field] [-y] [--branch ] [--html-path --json-path ] [--delay ] [--locale - ] [--batch-limit ] - -FLAGS - -a, --alias= Enter the alias name. You must use either the --alias flag or the --stack-api-key flag. - -c, --config-path= Specify the path where your config file is located. - -y, --yes Avoids reconfirmation of your configuration. - --batch-limit= [default: 50] Provide batch limit for updating entries (default: 50). - --branch= The name of the branch to be used. - --content-type= Specify the UID of the content type for which you want to migrate HTML RTE content. - --delay= [default: 1000] To set the interval time between the migration of HTML RTE to JSON RTE in - subsequent entries of a content type. The default value is 1,000 milliseconds. - --global-field Checks whether the specified UID belongs to a content type or a global field. This flag - is set to false by default. - --html-path= Enter the path to the HTML RTE whose content you want to migrate. - --json-path= Enter the path to the JSON RTE to which you want to migrate the HTML RTE content. - --locale= The locale from which entries will be migrated. - --stack-api-key= API key of the source stack. You must use either the --stack-api-key flag or the --alias - flag. - -DESCRIPTION - Migration script to migrate content from HTML RTE to JSON RTE - -ALIASES - $ csdx cm:migrate-rte - -EXAMPLES - General Usage - - $ csdx cm:entries:migrate-html-rte --config-path path/to/config.json - - - - Using Flags - - $ csdx cm:entries:migrate-html-rte --alias alias --content-type content_type_uid --html-path html-path --json-path json-path - - - - Nested RTE - - $ csdx cm:entries:migrate-html-rte --alias alias --content-type content_type_uid --html-path modular_block_uid.block_uid.html_rte_uid --json-path modular_block_uid.block_uid.json_rte_uid - - - - $ csdx cm:entries:migrate-html-rte --alias alias --content-type content_type_uid --html-path group_uid.html_rte_uid --json-path group_uid.json_rte_uid - - - - Global Field - - $ csdx cm:entries:migrate-html-rte --alias alias --content-type global_field_uid --global-field --html-path html-path --json-path json-path -``` - diff --git a/packages/contentstack-migrate-rte/bin/run.cmd b/packages/contentstack-migrate-rte/bin/run.cmd deleted file mode 100644 index 968fc30758..0000000000 --- a/packages/contentstack-migrate-rte/bin/run.cmd +++ /dev/null @@ -1,3 +0,0 @@ -@echo off - -node "%~dp0\run" %* diff --git a/packages/contentstack-migrate-rte/bin/run.js b/packages/contentstack-migrate-rte/bin/run.js deleted file mode 100755 index 8baf302391..0000000000 --- a/packages/contentstack-migrate-rte/bin/run.js +++ /dev/null @@ -1,7 +0,0 @@ -#!/usr/bin/env node - -// eslint-disable-next-line unicorn/prefer-top-level-await -(async () => { - const oclif = await import('@oclif/core'); - await oclif.execute({ development: false, dir: __dirname }); -})(); diff --git a/packages/contentstack-migrate-rte/package.json b/packages/contentstack-migrate-rte/package.json deleted file mode 100644 index 85e867c762..0000000000 --- a/packages/contentstack-migrate-rte/package.json +++ /dev/null @@ -1,69 +0,0 @@ -{ - "name": "@contentstack/cli-cm-migrate-rte", - "description": "Contentstack CLI plugin to migrate HTML RTE to JSON RTE", - "version": "1.6.2", - "author": "contentstack", - "bugs": "https://github.com/contentstack/cli/issues", - "dependencies": { - "@contentstack/cli-command": "~1.6.1", - "@contentstack/cli-utilities": "~1.15.0", - "@contentstack/json-rte-serializer": "~2.1.0", - "@oclif/core": "^4.3.0", - "@oclif/plugin-help": "^6.2.28", - "collapse-whitespace": "^1.1.7", - "chalk": "^4.1.2", - "jsdom": "^20.0.3", - "jsonschema": "^1.5.0", - "lodash": "^4.17.21", - "nock": "^13.5.6", - "omit-deep-lodash": "^1.1.7", - "sinon": "^19.0.5" - }, - "devDependencies": { - "@oclif/test": "^4.1.13", - "chai": "^4.5.0", - "eslint": "^8.57.1", - "eslint-config-oclif": "^6.0.62", - "mocha": "^10.8.2", - "nyc": "^15.1.0", - "oclif": "^4.17.46" - }, - "engines": { - "node": ">=14.0.0" - }, - "files": [ - "/npm-shrinkwrap.json", - "/oclif.manifest.json", - "/src" - ], - "homepage": "https://github.com/contentstack/cli", - "keywords": [ - "contentstack", - "cli", - "plugin", - "JSON RTE" - ], - "license": "MIT", - "oclif": { - "commands": "./src/commands", - "bin": "csdx", - "repositoryPrefix": "<%- repo %>/blob/main/packages/contentstack-migrate-rte/<%- commandPath %>" - }, - "repository": "contentstack/cli", - "scripts": { - "postpack": "rm -f oclif.manifest.json", - "prepack": "oclif manifest && oclif readme", - "test": "nyc mocha --forbid-only \"test/**/*.test.js\"", - "version": "oclif readme && git add README.md", - "clean": "rm -rf ./node_modules tsconfig.build.tsbuildinfo" - }, - "csdxConfig": { - "expiredCommands": { - "cm:migrate-rte": "csdx cm:entries:migrate-html-rte" - }, - "shortCommandName": { - "cm:entries:migrate-html-rte": "MGRTRTE", - "cm:migrate-rte": "O-MGRTRTE" - } - } -} diff --git a/packages/contentstack-migrate-rte/src/commands/cm/entries/migrate-html-rte.js b/packages/contentstack-migrate-rte/src/commands/cm/entries/migrate-html-rte.js deleted file mode 100644 index 5a04309a1b..0000000000 --- a/packages/contentstack-migrate-rte/src/commands/cm/entries/migrate-html-rte.js +++ /dev/null @@ -1,174 +0,0 @@ -const { Command } = require('@contentstack/cli-command'); -const { printFlagDeprecation, flags } = require('@contentstack/cli-utilities'); -const { isEmpty } = require('lodash'); -const chalk = require('chalk'); -let { - getStack, - getConfig, - getToken, - updateSingleContentTypeEntries, - updateContentTypeForGlobalField, - normalizeFlags, -} = require('../../../lib/util'); - -class JsonMigrationCommand extends Command { - async run() { - const { flags: migrateRteFlags } = await this.parse(JsonMigrationCommand); - try { - const normalizedFlags = normalizeFlags(migrateRteFlags); - let config = await getConfig(normalizedFlags); - if (isEmpty(config.paths)) { - throw new Error('No value provided for the "paths" property in config.'); - } - const stackOptions = { host: this.cmaHost }; - if (config.alias) { - stackOptions.token = getToken(config.alias) - } - if (config['stack-api-key']) { - stackOptions.stackApiKey = config['stack-api-key'] - } - if (config.branch) stackOptions.branch = config.branch; - let stack = await getStack(stackOptions); - config.entriesCount = 0; - config.contentTypeCount = 0; - config.errorEntriesUid = {}; - if (config['global-field']) { - await updateContentTypeForGlobalField(stack, config['content-type'], config); - } else { - await updateSingleContentTypeEntries(stack, config['content-type'], config); - } - console.log( - chalk.green(`\nUpdated ${config.contentTypeCount} Content Type(s) and ${config.entriesCount} Entrie(s)`), - ); - if (config.errorEntriesUid && Object.keys(config.errorEntriesUid).length > 0) { - const failedCTs = Object.keys(config.errorEntriesUid); - for (const failedCT of failedCTs) { - const locales = Object.keys(config.errorEntriesUid[failedCT]); - for (const locale of locales) { - console.log( - chalk.red( - `Faced issue while migrating some entrie(s) for "${failedCT}" Content-type in "${locale}" locale,"${config.errorEntriesUid[ - failedCT - ][locale].join(', ')}"`, - ), - ); - } - } - } - } catch (error) { - this.error(error.message, { exit: 2 }); - } - } -} - -JsonMigrationCommand.description = 'Migration script to migrate content from HTML RTE to JSON RTE'; - -JsonMigrationCommand.flags = { - 'config-path': flags.string({ - char: 'c', - description: 'Specify the path where your config file is located.', - required: false, - }), - alias: flags.string({ - char: 'a', - description: 'Enter the alias name. You must use either the --alias flag or the --stack-api-key flag.', - required: false, - }), - 'stack-api-key': flags.string({ - description: 'API key of the source stack. You must use either the --stack-api-key flag or the --alias flag.', - required: false, - }), - 'content-type': flags.string({ - description: 'Specify the UID of the content type for which you want to migrate HTML RTE content.', - required: false, - }), - 'global-field': flags.boolean({ - description: 'Checks whether the specified UID belongs to a content type or a global field. This flag is set to false by default.', - default: false, - required: false, - }), - yes: flags.boolean({ - char: 'y', - description: 'Avoids reconfirmation of your configuration.', - default: false, - required: false, - }), - branch: flags.string({ - description: 'The name of the branch to be used.', - required: false, - }), - 'html-path': flags.string({ - description: 'Enter the path to the HTML RTE whose content you want to migrate.', - dependsOn: ['json-path'], - required: false, - }), - 'json-path': flags.string({ - description: 'Enter the path to the JSON RTE to which you want to migrate the HTML RTE content.', - dependsOn: ['html-path'], - required: false, - }), - delay: flags.integer({ - description: 'To set the interval time between the migration of HTML RTE to JSON RTE in subsequent entries of a content type. The default value is 1,000 milliseconds.', - default: 1000, - required: false, - }), - locale: flags.string({ - description: 'The locale from which entries will be migrated.', - required: false, - }), - 'batch-limit': flags.integer({ - description: 'Provide batch limit for updating entries (default: 50).', - default: 50, - }), - - // To be deprecated - configPath: flags.string({ - char: 'p', - description: 'Path to the config file', - hidden: true, - parse: printFlagDeprecation(['-p', '--configPath'], ['-c', '--config-path']), - }), - content_type: flags.string({ - description: 'The content-type from which entries need to be migrated', - hidden: true, - parse: printFlagDeprecation(['-c', '--content_type'], ['--content-type']), - }), - isGlobalField: flags.boolean({ - char: 'g', - description: 'Indicates that the current content type is a global field (default: false)', - hidden: true, - parse: printFlagDeprecation(['-g', '--isGlobalField'], ['--global-field']), - }), - htmlPath: flags.string({ - char: 'h', - description: 'Provide the path of HTML RTE to migrate', - hidden: true, - parse: printFlagDeprecation(['-h', '--htmlPath'], ['--html-path']), - }), - jsonPath: flags.string({ - char: 'j', - description: 'Provide the path of JSON RTE to migrate', - hidden: true, - parse: printFlagDeprecation(['-j', '--jsonPath'], ['--json-path']), - }), -}; - -JsonMigrationCommand.examples = [ - 'General Usage', - 'csdx cm:entries:migrate-html-rte --config-path path/to/config.json', - '', - 'Using Flags', - 'csdx cm:entries:migrate-html-rte --alias alias --content-type content_type_uid --html-path html-path --json-path json-path', - '', - 'Nested RTE', - 'csdx cm:entries:migrate-html-rte --alias alias --content-type content_type_uid --html-path modular_block_uid.block_uid.html_rte_uid --json-path modular_block_uid.block_uid.json_rte_uid', - '', - 'csdx cm:entries:migrate-html-rte --alias alias --content-type content_type_uid --html-path group_uid.html_rte_uid --json-path group_uid.json_rte_uid', - '', - 'Global Field', - 'csdx cm:entries:migrate-html-rte --alias alias --content-type global_field_uid --global-field --html-path html-path --json-path json-path', -]; - -JsonMigrationCommand.aliases = ['cm:migrate-rte']; - -module.exports = JsonMigrationCommand; diff --git a/packages/contentstack-migrate-rte/src/lib/util/config_schema.json b/packages/contentstack-migrate-rte/src/lib/util/config_schema.json deleted file mode 100644 index 81410c98a3..0000000000 --- a/packages/contentstack-migrate-rte/src/lib/util/config_schema.json +++ /dev/null @@ -1,272 +0,0 @@ -{ - "$schema": "http://json-schema.org/draft-07/schema", - "$id": "http://example.com/example.json", - "type": "object", - "title": "The root schema", - "description": "The root schema comprises the entire JSON document.", - "default": {}, - "examples": [ - { - "alias": "test1", - "content-type": "Migration Test", - "global-field": false, - "paths": [ - { - "from": "rich_text", - "to": "supercharged_rte" - } - ] - } - ], - "required": ["content-type", "paths"], - "properties": { - "alias": { - "$id": "#/properties/alias", - "type": "string", - "title": "The alias schema", - "description": "An explanation about the purpose of this instance.", - "default": "", - "examples": ["test1"] - }, - "branch": { - "$id": "#/properties/branch", - "type": "string", - "title": "The branch schema", - "description": "An explanation about the purpose of this instance.", - "default": "", - "examples": ["test1"] - }, - "stack-api-key": { - "$id": "#/properties/stack-api-key", - "type": "string", - "title": "The Stack api key", - "description": "An explanation about the purpose of this instance.", - "default": "", - "examples": ["Migration Test"] - }, - "content-type": { - "$id": "#/properties/content-type", - "type": "string", - "title": "The content-type schema", - "description": "An explanation about the purpose of this instance.", - "default": "", - "examples": ["Migration Test"] - }, - "global-field": { - "$id": "#/properties/global-field", - "type": "boolean", - "title": "The global-field schema", - "description": "An explanation about the purpose of this instance.", - "default": false, - "examples": [false] - }, - "paths": { - "$id": "#/properties/paths", - "type": "array", - "title": "The paths schema", - "description": "An explanation about the purpose of this instance.", - "default": [], - "examples": [ - [ - { - "from": "rich_text", - "to": "supercharged_rte" - } - ] - ], - "additionalItems": true, - "items": { - "$id": "#/properties/paths/items", - "anyOf": [ - { - "$id": "html-path and json-path are required", - "type": "object", - "title": "The first anyOf schema", - "description": "An explanation about the purpose of this instance.", - "default": {}, - "examples": [ - { - "from": "rich_text", - "to": "supercharged_rte" - } - ], - "required": ["from", "to"], - "properties": { - "from": { - "$id": "#/properties/paths/items/anyOf/0/properties/from", - "type": "string", - "title": "The from schema", - "description": "An explanation about the purpose of this instance.", - "default": "", - "examples": ["rich_text"] - }, - "to": { - "$id": "#/properties/paths/items/anyOf/0/properties/to", - "type": "string", - "title": "The to schema", - "description": "An explanation about the purpose of this instance.", - "default": "", - "examples": ["supercharged_rte"] - } - }, - "additionalProperties": true - } - ] - } - }, - "delay": { - "$id": "#/properties/delay", - "type": "integer", - "title": "The delay schema", - "description": "Provide delay in ms between two entry update", - "default": 1000, - "examples": [100] - }, - "failed-entries": { - "type": "array", - "default": [], - "title": "The failed-entries Schema", - "items": { - "type": "string", - "default": "", - "title": "A Schema", - "examples": [ - "blt1c37c346218e033e, blt6ed6d545cdc2064f, blt0594909c6f0a2e82, blt07fe0dc0d2f89e71, blt6d0d993a944947e8" - ] - }, - "examples": [ - ["blt1c37c346218e033e, blt6ed6d545cdc2064f, blt0594909c6f0a2e82, blt07fe0dc0d2f89e71, blt6d0d993a944947e8"] - ] - }, - "locale": { - "type": "array", - "default": [], - "title": "The locale Schema", - "items": { - "type": "string", - "default": "", - "title": "A Schema", - "examples": ["en-in"] - }, - "paths": { - "$id": "#/properties/paths", - "type": "array", - "title": "The paths schema", - "description": "An explanation about the purpose of this instance.", - "default": [], - "examples": [ - [ - { - "from": "rich_text", - "to": "supercharged_rte" - } - ] - ], - "additionalItems": true, - "items": { - "$id": "#/properties/paths/items", - "anyOf": [ - { - "$id": "#/properties/paths/items/anyOf/0", - "type": "object", - "title": "The first anyOf schema", - "description": "An explanation about the purpose of this instance.", - "default": {}, - "examples": [ - { - "from": "rich_text", - "to": "supercharged_rte" - } - ], - "required": ["from", "to"], - "properties": { - "from": { - "$id": "#/properties/paths/items/anyOf/0/properties/from", - "type": "string", - "title": "The from schema", - "description": "An explanation about the purpose of this instance.", - "default": "", - "examples": ["rich_text"] - }, - "to": { - "$id": "#/properties/paths/items/anyOf/0/properties/to", - "type": "string", - "title": "The to schema", - "description": "An explanation about the purpose of this instance.", - "default": "", - "examples": ["supercharged_rte"] - } - }, - "additionalProperties": true - } - ] - } - }, - "delay": { - "$id": "#/properties/delay", - "type": "integer", - "title": "The delay schema", - "description": "Provide delay in ms between two entry update", - "default": 1000, - "examples": [100] - }, - "failed-entries": { - "type": "array", - "default": [], - "title": "The failed-entries Schema", - "items": { - "type": "string", - "default": "", - "title": "A Schema", - "examples": [ - "blt1c37c346218e033e, blt6ed6d545cdc2064f, blt0594909c6f0a2e82, blt07fe0dc0d2f89e71, blt6d0d993a944947e8" - ] - }, - "examples": [ - ["blt1c37c346218e033e, blt6ed6d545cdc2064f, blt0594909c6f0a2e82, blt07fe0dc0d2f89e71, blt6d0d993a944947e8"] - ] - }, - "locale": { - "type": "array", - "default": [], - "title": "The locale Schema", - "items": { - "type": "string", - "default": "", - "title": "A Schema", - "examples": ["en-in"] - }, - "examples": [["en-in"]] - }, - "batch-limit": { - "type": "integer", - "default": 50, - "title": "The batch-limit Schema", - "examples": [30], - "maximum": 100, - "minimum": 1 - } - }, - "batch-limit": { - "type": "integer", - "default": 50, - "title": "The batch-limit Schema", - "examples": [30], - "maximum": 100, - "minimum": 1 - } - }, - "oneOf": [ - { - "type": "object", - "title": "stack-api-key", - "required": ["stack-api-key"] - }, - { - "type": "object", - "title": "alias", - "required": ["alias"] - } - ], - "additionalProperties": true -} diff --git a/packages/contentstack-migrate-rte/src/lib/util/index.js b/packages/contentstack-migrate-rte/src/lib/util/index.js deleted file mode 100644 index fef9df0159..0000000000 --- a/packages/contentstack-migrate-rte/src/lib/util/index.js +++ /dev/null @@ -1,720 +0,0 @@ -const { Command } = require('@contentstack/cli-command'); -const command = new Command(); -const chalk = require('chalk'); -const { - isEmpty, - find, - get, - isArray, - isUndefined, - set, - flatten, - cloneDeep, - isNil, - isNull, - isPlainObject, -} = require('lodash'); -const Validator = require('jsonschema').Validator; -const configSchema = require('./config_schema.json'); -const { JSDOM } = require('jsdom'); -const collapseWithSpace = require('collapse-whitespace'); -const { htmlToJson } = require('@contentstack/json-rte-serializer'); -const nodePath = require('path'); -const { - cliux, - managementSDKClient, - isAuthenticated, - doesBranchExist, - pathValidator, -} = require('@contentstack/cli-utilities'); -const packageValue = require('../../../package.json'); -const isBlank = (variable) => { - return isNil(variable) || isEmpty(variable); -}; - -async function getStack(data) { - const stackOptions = {}; - const options = { - host: data.host, - application: `json-rte-migration/${packageValue.version}`, - timeout: 120000, - }; - if (data.token) { - const tokenDetails = data.token; - stackOptions['api_key'] = tokenDetails.apiKey; - options['management_token'] = tokenDetails.token; // need to pass management token so that the sdk doesn't get configured with authtoken (throws error in case of oauth, if the provided stack doesn't belong to the org selected while logging in with oauth) - stackOptions['management_token'] = tokenDetails.token; - } - if (data.stackApiKey) { - if (!isAuthenticated()) { - throw new Error( - 'Please login to proceed further. Or use `--alias` instead of `--stack-api-key` to proceed without logging in.', - ); - } - stackOptions['api_key'] = data.stackApiKey; - } - if (data.branch) options.branchName = data.branch; - const client = await managementSDKClient(options); - const stack = client.stack(stackOptions); - - stack.host = data.host; - if (data.branch) { - let branchData = await doesBranchExist(stack, data.branch); - if (branchData && branchData.errorCode) { - throw new Error(branchData.errorMessage); - } - } - return stack; -} - -const deprecatedFields = { - configPath: 'config-path', - content_type: 'content-type', - isGlobalField: 'global-field', - htmlPath: 'html-path', - jsonPath: 'json-path', -}; -function normalizeFlags(config) { - let normalizedConfig = cloneDeep(config); - Object.keys(deprecatedFields).forEach((key) => { - if (normalizedConfig.hasOwnProperty(key)) { - normalizedConfig[deprecatedFields[key]] = normalizedConfig[key]; - delete normalizedConfig[key]; - } - }); - return normalizedConfig; -} - -const customBar = cliux.progress({ - format: '{title} ' + '| {bar} | {value}/{total} Entries', - barCompleteChar: '\u2588', - barIncompleteChar: '\u2591', - stream: process.stdout, -}); -async function getConfig(flags) { - try { - let config; - if (flags['config-path']) { - const configPath = flags['config-path']; - config = require(pathValidator(configPath)); - } else { - config = { - 'content-type': flags['content-type'], - 'global-field': flags['global-field'], - paths: [ - { - from: flags['html-path'] || flags.htmlPath, - to: flags['json-path'] || flags.jsonPath, - }, - ], - delay: flags.delay, - 'batch-limit': flags['batch-limit'], - }; - if (flags.locale) { - config.locale = [flags.locale]; - } - if (flags.branch) { - config.branch = flags['branch']; - } - if (flags.alias) { - config.alias = flags.alias; - } - if (flags['stack-api-key']) { - config['stack-api-key'] = flags['stack-api-key']; - } - } - if (checkConfig(config)) { - let confirmed = await confirmConfig(config, flags.yes); - if (confirmed) { - return config; - } - throw new Error('User aborted the command.'); - } - } catch (error) { - if (error.code === 'ENOENT' || error.code === 'MODULE_NOT_FOUND') { - throw new Error('The specified path to config file does not exist.'); - } - if (error.schema && error.errors && error.errors[0]) { - throwConfigError(error.errors[0]); - } - throw error; - } -} -function getToken(alias) { - try { - return command.getToken(alias); - } catch (error) { - throw new Error('Invalid alias provided for the management token.'); - } -} -function getContentType(stack, contentTypeUid) { - return stack - .contentType(contentTypeUid) - .fetch({ include_global_field_schema: true }) - .then((content) => content) - .catch((error) => { - throw new Error(error.errorMessage || error.message); - }); -} -function getGlobalField(stack, globalFieldUid) { - return stack - .globalField(globalFieldUid) - .fetch({ include_content_types: true }) - .then((content) => content) - .catch((error) => { - throw new Error(error.errorMessage || error.message); - }); -} -function throwConfigError(error) { - const { name, path, argument } = error; - let fieldName = path.join('.'); - if (fieldName === '') { - fieldName = argument || 'Config'; - } - if (name === 'required') { - throw new Error(`${fieldName} is mandatory while defining config.`); - } else if (name === 'type') { - throw new Error(`Invalid key type. ${fieldName} must be of ${argument[0] || 'string'} type(s).`); - } else if (name === 'minimum' || name === 'maximum') { - throw new Error(`${fieldName} must be between 1 and 100.`); - } -} -function checkConfig(config) { - let v = new Validator(); - let res = v.validate(config, configSchema, { throwError: true, nestedErrors: true }); - return res.valid; -} -function prettyPrint(data) { - console.log(chalk.yellow('Configuration to be used for executing this command:')); - console.log(chalk.grey(JSON.stringify(data, null, 2))); - console.log('\n'); -} -async function confirmConfig(config, skipConfirmation) { - if (skipConfirmation) { - return Promise.resolve(true); - } - prettyPrint(config); - return await cliux.confirm('Do you want to continue with this configuration ? [yes or no]'); -} -const delay = (ms) => new Promise((res) => setTimeout(res, ms)); - -async function updateEntriesInBatch(contentType, config, skip = 0, retry = 0, locale = undefined) { - let title = `Migrating entries for ${contentType.uid}`; - let extraParams = {}; - if (locale) { - extraParams.locale = locale; - extraParams.query = { locale: locale }; - } - if (config['failed-entries'] && config['failed-entries'].length > 0) { - title = `Migrating failed entries for ${contentType.uid}`; - if (extraParams.query) { - extraParams.query['uid'] = { $in: config['failed-entries'] }; - } else { - extraParams = { query: { uid: { $in: config['failed-entries'] } } }; - } - } - let entryQuery = { - include_count: true, - ...extraParams, - skip: skip, - limit: config['batch-limit'] || 50, - }; - try { - await contentType - .entry() - .query(entryQuery) - .find() - .then(async (entriesResponse) => { - try { - customBar.start(entriesResponse.count, skip, { - title: title, - }); - } catch (error) {} - skip += entriesResponse.items.length; - let entries = entriesResponse.items; - - for (const entry of entries) { - try { - customBar.increment(); - } catch (error) {} - await updateSingleEntry(entry, contentType, config); - await delay(config.delay || 1000); - } - if (skip === entriesResponse.count) { - return Promise.resolve(); - } - await updateEntriesInBatch(contentType, config, skip, 0, locale); - }); - } catch (error) { - console.error(`Error while fetching batch of entries: ${error.message}`); - if (retry < 3) { - retry += 1; - console.error(`Retrying again in 5 seconds... (${retry}/3)`); - await delay(5000); - await updateEntriesInBatch(contentType, config, skip, retry, locale); - } else { - throw new Error(`Max retry exceeded: Error while fetching batch of entries: ${error.message}`); - } - } -} -async function updateSingleContentTypeEntries(stack, contentTypeUid, config) { - let contentType = await getContentType(stack, contentTypeUid); - let schema = contentType.schema; - for (const path of config.paths) { - if (!isEmpty(schema)) { - isPathValid(contentType.schema, path); - } else { - throw new Error(`The ${contentTypeUid} content type contains an empty schema.`); - } - } - if (config.locale && isArray(config.locale) && config.locale.length > 0) { - const locales = config.locale; - for (const locale of locales) { - console.log(`\nMigrating entries for "${contentTypeUid}" Content-type in "${locale}" locale`); - await updateEntriesInBatch(contentType, config, 0, 0, locale); - await delay(config.delay || 1000); - } - } else { - await updateEntriesInBatch(contentType, config); - } - config.contentTypeCount += 1; - try { - customBar.stop(); - } catch (error) {} -} -async function updateSingleContentTypeEntriesWithGlobalField(contentType, config) { - let schema = contentType.schema; - for (const path of config.paths) { - isPathValid(schema, path); - } - if (config.locale && isArray(config.locale) && config.locale.length > 0) { - const locales = config.locale; - for (const locale of locales) { - console.log(`\nMigrating entries for ${contentType.uid} in locale ${locale}`); - await updateEntriesInBatch(contentType, config, 0, 0, locale); - await delay(config.delay || 1000); - } - } else { - await updateEntriesInBatch(contentType, config); - } - config.contentTypeCount += 1; -} -async function updateSingleEntry(entry, contentType, config) { - let schema = contentType.schema; - let paths = config.paths; - let entryUploadPath = uploadPaths(schema); - entryUploadPath = Object.keys(entryUploadPath); - for (const path of paths) { - let htmlPath = path.from.split('.'); - let jsonPath = path.to.split('.'); - let htmlRteUid = htmlPath[htmlPath.length - 1]; - let jsonRteUid = jsonPath[jsonPath.length - 1]; - let parentPath = htmlPath.slice(0, htmlPath.length - 1).join('.'); - setEntryData(parentPath, entry, schema, { htmlRteUid, jsonRteUid }); - } - try { - for (const filePath of entryUploadPath) { - let fileFieldPath = filePath.split('.'); - let fileUid = fileFieldPath[fileFieldPath.length - 1]; - let parentFileFieldPath = fileFieldPath.slice(0, fileFieldPath.length - 1).join('.'); - unsetResolvedUploadData(parentFileFieldPath, entry, schema, { fileUid }); - } - } catch (error) { - console.error(`Error while unsetting resolved upload data: ${error.message}`); - } - await handleEntryUpdate(entry, config, 0); -} -async function handleEntryUpdate(entry, config, retry = 0) { - try { - await entry.update({ locale: entry.locale }); - config.entriesCount += 1; - } catch (error) { - console.log(chalk.red(`Error while updating '${entry.uid}' entry`)); - if (error.errors && isPlainObject(error.errors)) { - const errVal = Object.entries(error.errors); - errVal.forEach(([key, vals]) => { - console.log(chalk.red(` ${key}:- ${vals.join(',')}`)); - }); - } else { - console.log(chalk.red(`Error stack: ${error}`)); - } - if (retry < 3) { - retry += 1; - console.log(`Retrying again in 5 seconds... (${retry}/3)`); - await delay(5000); - await handleEntryUpdate(entry, config, retry); - } else { - if ( - config && - config.errorEntriesUid && - config.errorEntriesUid[entry.content_type_uid] && - config.errorEntriesUid[entry.content_type_uid][entry.locale] - ) { - config.errorEntriesUid[entry.content_type_uid][entry.locale].push(entry.uid); - } else { - set(config, ['errorEntriesUid', entry.content_type_uid, entry.locale], [entry.uid]); - } - } - } -} -function traverseSchemaForField(schema, path, field_uid) { - let paths = path.split('.'); - if (paths.length === 1) { - let field = find(schema, (o) => { - return o.uid === paths[0]; - }); - if (Boolean(field) && field.uid === field_uid) { - return field; - } - } else { - let fieldUid = paths.shift(); - let fieldSchema = find(schema, { uid: fieldUid }); - if (!isEmpty(fieldSchema)) { - if (fieldSchema.data_type === 'group' || fieldSchema.data_type === 'global_field') { - return traverseSchemaForField(fieldSchema.schema, paths.join('.'), field_uid); - } - if (fieldSchema.data_type === 'blocks') { - let blockUid = paths.shift(); - let block = find(fieldSchema.blocks, { uid: blockUid }); - if (!isEmpty(block) && block.schema) { - return traverseSchemaForField(block.schema, paths.join('.'), field_uid); - } - } - } - } - return {}; -} -function isPathValid(schema, path) { - let pathFrom = path.from.split('.'); - let htmlParentPath = pathFrom.slice(0, pathFrom.length - 1).join('.'); - const rteUid = pathFrom[pathFrom.length - 1]; - let rteSchema = traverseSchemaForField(schema, path.from, rteUid); - if (isEmpty(rteSchema)) { - throw new Error(`The specified path to ${rteUid} HTML RTE does not exist.`); - } - let ishtmlRteMultiple = rteSchema.multiple || false; - if (rteSchema.field_metadata && rteSchema.field_metadata.allow_rich_text) { - let pathTo = path.to.split('.'); - let jsonParentPath = pathTo.slice(0, pathTo.length - 1).join('.'); - - const jsonUid = pathTo[pathTo.length - 1]; - let jsonSchema = traverseSchemaForField(schema, path.to, jsonUid); - if (isEmpty(jsonSchema)) { - throw new Error(`The specified path to ${jsonUid} JSON RTE does not exist.`); - } - let isJSONRteMultiple = jsonSchema.multiple || false; - - if (jsonSchema.field_metadata && jsonSchema.field_metadata.allow_json_rte) { - if (htmlParentPath === jsonParentPath) { - if (ishtmlRteMultiple === isJSONRteMultiple) { - return true; - } - throw new Error( - `Cannot convert "${ishtmlRteMultiple ? 'Multiple' : 'Single'}" type HTML RTE to "${ - isJSONRteMultiple ? 'Multiple' : 'Single' - }" type JSON RTE.`, - ); - } else { - throw new Error( - 'To complete migration, HTML RTE and JSON RTE should be present at the same field depth level.', - ); - } - } else { - throw new Error(`The specified path to ${jsonUid} JSON RTE does not exist.`); - } - } else { - throw new Error(`The specified path to ${rteUid} HTML RTE does not exist.`); - } -} -function setEntryData(path, entry, schema, fieldMetaData) { - let paths = path.split('.'); - if (paths.length === 1 && paths[0] === '') { - paths.shift(); - } - if (paths.length > 0) { - let field = find(schema, { - uid: paths[0], - }); - if (field) { - if (field.data_type === 'group' || field.data_type === 'global_field') { - paths.shift(); - - let sub_entry_data = get(entry, field.uid); - if (isArray(sub_entry_data)) { - for (const sub_data of sub_entry_data) { - setEntryData(paths.join('.'), sub_data, field.schema, fieldMetaData); - } - } else { - setEntryData(paths.join('.'), sub_entry_data, field.schema, fieldMetaData); - } - } else if (field.data_type === 'blocks') { - if (field.blocks) { - let ModularBlockUid = paths.shift(); - let blockUid = paths.shift(); - let blockField = find(field.blocks, { uid: blockUid }); - if (blockField) { - let modularBlockDetails = get(entry, ModularBlockUid) || []; - for (const blocks of modularBlockDetails) { - let blockdata = get(blocks, blockUid); - if (blockdata) { - setEntryData(paths.join('.'), blockdata, blockField.schema, fieldMetaData); - } - } - } - } - } - } - } else if (paths.length === 0) { - if (entry) { - const { htmlRteUid, jsonRteUid } = fieldMetaData; - const htmlValue = get(entry, htmlRteUid); - // check if html field exist in traversed path - if (!isUndefined(htmlValue)) { - // if Rte field is multiple - if (isArray(htmlValue)) { - for (let i = 0; i < htmlValue.length; i++) { - let html = htmlValue[i]; - setJsonValue(html, entry, `${jsonRteUid}.${i}`); - } - } else { - setJsonValue(htmlValue, entry, jsonRteUid); - } - } - } - } -} - -function unsetResolvedUploadData(path, entry, schema, fieldMetaData) { - let paths = path.split('.'); - if (paths.length === 1 && paths[0] === '') { - paths.shift(); - } - if (paths.length > 0) { - let field = find(schema, { - uid: paths[0], - }); - if (field) { - if (field.data_type === 'group' || field.data_type === 'global_field') { - paths.shift(); - - let sub_entry_data = get(entry, field.uid); - if (isArray(sub_entry_data)) { - for (const sub_data of sub_entry_data) { - unsetResolvedUploadData(paths.join('.'), sub_data, field.schema, fieldMetaData); - } - } else { - unsetResolvedUploadData(paths.join('.'), sub_entry_data, field.schema, fieldMetaData); - } - } else if (field.data_type === 'blocks') { - if (field.blocks) { - let ModularBlockUid = paths.shift(); - let blockUid = paths.shift(); - let blockField = find(field.blocks, { uid: blockUid }); - if (blockField) { - let modularBlockDetails = get(entry, ModularBlockUid) || []; - for (const blocks of modularBlockDetails) { - let blockdata = get(blocks, blockUid); - if (blockdata) { - unsetResolvedUploadData(paths.join('.'), blockdata, blockField.schema, fieldMetaData); - } - } - } - } - } - } - } else if (paths.length === 0) { - if (entry) { - const { fileUid } = fieldMetaData; - const fieldValue = get(entry, fileUid); - if (!isUndefined(fieldValue) && !isNull(fieldValue)) { - if (isArray(fieldValue)) { - for (let i = 0; i < fieldValue.length; i++) { - const singleFile = fieldValue[i]; - if (!isUndefined(singleFile.uid)) { - set(entry, `${fileUid}.${i}`, singleFile.uid); - } - } - } else if (!isUndefined(fieldValue.uid)) { - set(entry, fileUid, fieldValue.uid); - } - } - } - } -} -function setJsonValue(html, entry, path) { - let doc = convertHtmlToJson(html); - set(entry, path, doc); -} -function convertHtmlToJson(html) { - const dom = new JSDOM(html); - let htmlDoc = dom.window.document.querySelector('body'); - collapseWithSpace(htmlDoc); - let doc; - try { - doc = htmlToJson(htmlDoc); - applyDirtyAttributesToBlock(doc); - } catch (error) { - throw new Error('Error while converting html '.concat(error.message)); - } - return doc; -} -function applyDirtyAttributesToBlock(block) { - if (block.hasOwnProperty('text')) { - return block; - } - let children = flatten([...(block.children || [])].map(applyDirtyAttributesToBlock)); - if (block.hasOwnProperty('type')) { - set(block, 'attrs.dirty', true); - } - block.children = children; - return block; -} -async function updateContentTypeForGlobalField(stack, global_field, config) { - const globalField = await getGlobalField(stack, global_field); - if (isEmpty(globalField.schema)) { - throw new Error(`The ${global_field} Global field contains an empty schema.`); - } - let allReferredContentTypes = globalField.referred_content_types; - if (!isEmpty(allReferredContentTypes)) { - for (const contentType of allReferredContentTypes) { - let contentTypeInstance = await getContentType(stack, contentType.uid); - const schema = contentTypeInstance.schema; - if (!isEmpty(schema) && !isUndefined(schema)) { - let globalFieldPaths = getGlobalFieldPath(contentTypeInstance.schema, global_field); - let newConfig = cloneDeep(config); - updateMigrationPath(globalFieldPaths, newConfig); - await updateSingleContentTypeEntriesWithGlobalField(contentTypeInstance, newConfig); - config.contentTypeCount = newConfig.contentTypeCount; - config.entriesCount = newConfig.entriesCount; - config.errorEntriesUid = newConfig.errorEntriesUid; - } else { - throw new Error(`The ${contentType.uid} content type referred in ${globalField.uid} contains an empty schema.`); - } - } - try { - customBar.stop(); - } catch (error) {} - } else { - throw new Error(`${globalField.uid} Global field is not referred in any content type.`); - } -} -function updateMigrationPath(globalFieldPaths, config) { - const newPath = []; - for (const path of config.paths) { - for (const globalFieldPath of globalFieldPaths) { - newPath.push({ from: globalFieldPath + '.' + path.from, to: globalFieldPath + '.' + path.to }); - } - } - config.paths = newPath; -} -function getGlobalFieldPath(schema, globalFieldUid) { - let paths = []; - - function genPath(prefix, path) { - return isEmpty(prefix) ? path : [prefix, path].join('.'); - } - - function traverse(fields, path) { - path = path || ''; - for (const field of fields) { - let currPath = genPath(path, field.uid); - if (field.data_type === 'group') { - traverse(field.schema, currPath); - } - - if ( - field.data_type === 'global_field' && - isUndefined(field.schema) === false && - isEmpty(field.schema) === false - ) { - if (field.reference_to === globalFieldUid) { - paths.push(currPath); - } - } - if (field.data_type === 'blocks') { - field.blocks.forEach(function (block) { - if (block.schema) { - if (block.reference_to && block.reference_to === globalFieldUid) { - paths.push(currPath + '.' + block.uid); - } - traverse(block.schema, currPath + '.' + block.uid); - } - }); - } - // experience_container - if (field.data_type === 'experience_container') { - if (field.variations) { - field.variations.forEach(function (variation) { - if (variation.schema) traverse(variation.schema, currPath + '.' + variation.uid); - }); - } - } - } - } - - if (!isEmpty(schema)) { - traverse(schema, ''); - } - - return paths; -} - -/* - Get the upload paths - */ -function uploadPaths(schema) { - return getPaths(schema, 'file'); -} - -/* -Generic function to get schema paths -*/ -function getPaths(schema, type) { - const paths = {}; - - function genPath(prefix, path) { - return isBlank(prefix) ? path : [prefix, path].join('.'); - } - - function traverse(fields, path) { - path = path || ''; - for (const element of fields) { - const field = element; - const currPath = genPath(path, field.uid); - - if (field.data_type === type) paths[currPath] = true; - - if (field.data_type === 'group') traverse(field.schema, currPath); - - if (field.data_type === 'global_field' && isUndefined(field.schema) === false && isEmpty(field.schema) === false) - traverse(field.schema, currPath); - if (field.data_type === 'blocks') { - field.blocks.forEach(function (block) { - if (block.schema) traverse(block.schema, currPath + '.' + block.uid); - }); - } - // experience_container - if (field.data_type === 'experience_container') { - field.variations.forEach(function (variation) { - if (variation.schema) traverse(variation.schema, currPath + '.' + variation.uid); - }); - } - } - } - - traverse(schema); - - return paths; -} - -module.exports = { - getStack, - getConfig, - getToken, - getContentType, - updateEntriesInBatch, - updateSingleContentTypeEntries, - updateContentTypeForGlobalField, - command, - normalizeFlags, -}; diff --git a/packages/contentstack-migrate-rte/test/commands/json-migration.test.js b/packages/contentstack-migrate-rte/test/commands/json-migration.test.js deleted file mode 100644 index ef7c7f4c0d..0000000000 --- a/packages/contentstack-migrate-rte/test/commands/json-migration.test.js +++ /dev/null @@ -1,940 +0,0 @@ -const { runCommand } = require('@oclif/test'); -const sinon = require('sinon'); -const qs = require('querystring'); -const nock = require('nock'); -const { cliux } = require('@contentstack/cli-utilities'); -const { expect } = require('chai'); -const { fancy } = require('fancy-test'); -const { - getToken, - getContentType, - getEntries, - getExpectedOutput, - getGlobalField, - getEntriesOnlyUID, - getEntry, -} = require('../utils'); -const omitDeep = require('omit-deep-lodash'); -const { isEqual, cloneDeep } = require('lodash'); -const { command } = require('../../src/lib/util'); - -describe('Migration Config validation', () => { - const getTokenCallback = sinon.stub(); - getTokenCallback - .withArgs('test1') - .returns({ - token: 'testManagementToken', - apiKey: 'testApiKey', - type: 'management', - }) - .withArgs('invalidAlias') - .throws("Token with alias 'invalidAlias' was not found"); - - fancy - .stub(cliux, 'confirm', () => false) - .it('deny config confirmation', async () => { - const { error } = await runCommand( - [ - 'cm:entries:migrate-html-rte', - '--alias', - 'test1', - '--content-type', - 'contenttypewithsinglerte', - '--html-path', - 'rich_text_editor', - '--json-path', - 'supercharged_rte', - '--delay', - '50', - ], - { root: process.cwd() }, - ); - expect(error.message).to.contain('User aborted the command.'); - }); - - fancy - .stub(cliux, 'confirm', () => true) - .stub(command, 'getToken', getTokenCallback) - .it('throw error on Empty paths', async () => { - const {error} = await runCommand( - ['cm:entries:migrate-html-rte', '--config-path', './test/dummy/config/configWithEmptyPath.json', '--yes'], - { root: process.cwd() }, - ); - expect(error.message).to.contain('No value provided for the "paths" property in config.'); - }); - - fancy - .stub(cliux, 'confirm', () => true) - .stub(command, 'getToken', getTokenCallback) - .it('throw error on invalid config type', async () => { - const {error} = await runCommand( - ['cm:entries:migrate-html-rte', '--config-path', '../test/dummy/config/invalidConfig.json', '--yes'], - { root: process.cwd() }, - ); - expect(error.message).to.contain('The specified path to config file does not exist.'); - }); - - fancy - .stub(cliux, 'confirm', () => true) - .it('throw error on config without alias property', async () => { - const { error } = await runCommand( - [ - 'cm:entries:migrate-html-rte', - '--content-type', - 'contenttypewithsinglerte', - '--html-path', - 'rich_text_editor', - '--json-path', - 'supercharged_rte', - '--delay', - '50', - ], - { root: process.cwd() }, - ); - expect(error.message).to.contain('is not exactly one from "stack-api-key","alias"'); - }); - - fancy - .stub(cliux, 'confirm', () => true) - .stub(command, 'getToken', getTokenCallback) - .it('throw error on invalidAlias', async () => { - const { error } = await runCommand( - [ - 'cm:entries:migrate-html-rte', - '--alias', - 'invalidAlias', - '--content-type', - 'contenttypewithsinglerte', - '--html-path', - 'rich_text_editor', - '--json-path', - 'supercharged_rte', - '--delay', - '50', - ], - { root: process.cwd() }, - ); - expect(error.message).to.contain('Invalid alias provided for the management token.'); - }); - - fancy - .stub(cliux, 'confirm', () => true) - .stub(command, 'getToken', getTokenCallback) - .it('throw error on invalid config file', async () => { - const { error } = await runCommand( - ['cm:entries:migrate-html-rte', '--config-path', './test/dummy/config/configWithInvalidPath.json', '--yes'], - { root: process.cwd() }, - ); - expect(error.message).to.contain('The specified path to config file does not exist.'); - }); -}); -describe('Content Type with Single RTE Field of Single Type', function () { - this.timeout(1000000); - let token = getToken('test1'); - beforeEach(() => { - nock(`${command.cmaAPIUrl}`, { - reqheaders: { - api_key: token.apiKey, - authorization: token.token, - }, - }) - .persist() - .get(/\/v3\/content_types\/(\w)*/) - .query({ - include_global_field_schema: true, - }) - .reply((uri) => { - var match = uri.match(/\/v3\/content_types\/((\w)*)/); - return getContentType(match[1]); - }); - nock(`${command.cmaAPIUrl}`, { - reqheaders: { - api_key: token.apiKey, - authorization: token.token, - }, - }) - .persist() - .get(/\/v3\/content_types\/((\w)*)\/entries/) - .query({ - include_count: true, - skip: 0, - limit: 100, - 'only[Base][]': 'uid', - }) - .reply(200, (uri) => { - var match = uri.match(/\/v3\/content_types\/((\w)*)\/entries/); - return getEntriesOnlyUID(match[1]); - }); - - nock(`${command.cmaAPIUrl}`, { - reqheaders: { - api_key: token.apiKey, - authorization: token.token, - }, - }) - .persist() - .get(/\/v3\/content_types\/((\w)*)\/entries/) - .query(true) - .reply(200, function (uri) { - let query = this.req.options.search; - query = query.substring(1); - let locale = undefined; - query = qs.parse(query); - if (query.locale) { - locale = query.locale; - } - var match = uri.match(/\/v3\/content_types\/((\w)*)\/entries/); - return getEntries(match[1], locale); - }); - // mock get locale - nock(`${command.cmaAPIUrl}`, { - reqheaders: { - api_key: token.apiKey, - authorization: token.token, - }, - }) - .persist() - .get(/\/v3\/content_types\/((\w)*)\/entries\/((\w)*)\/locale/) - .query({ - deleted: false, - }) - .reply(200, () => { - return { - locales: [ - { - code: 'en-in', - localized: true, - }, - { - code: 'en-us', - }, - ], - }; - }); - - // mock single entry fetch - nock(`${command.cmaAPIUrl}`, { - reqheaders: { - api_key: token.apiKey, - authorization: token.token, - }, - }) - .persist() - .get(/\/v3\/content_types\/((\w)*)\/entries\/((\w)*)/) - .query(true) - .reply(200, (uri) => { - const query = this.queries; - let match = uri.match(/\/v3\/content_types\/((\w)*)\/entries\/((\w)*)/); - if (query.locale) { - return getEntry(match[1], match[3], query.locale); - } else { - return getEntry(match2[1], match2[3]); - } - }); - - nock(`${command.cmaAPIUrl}`, { - reqheaders: { - api_key: token.apiKey, - authorization: token.token, - }, - }) - .persist() - .put(/\/v3\/content_types\/((\w)*)\/entries/) - .reply((uri, body) => { - let match = uri.match(/\/v3\/content_types\/((\w)*)\/entries\/((\w)*)\?locale=((\w|-)*)/); - let responseModified = cloneDeep(omitDeep(body, ['uid'])); - let expectedResponse = omitDeep(getExpectedOutput(match[1], match[3], match[5]), ['uid']); - expectedResponse = cloneDeep(expectedResponse); - if (isEqual(responseModified, expectedResponse)) { - return [ - 200, - { - notice: 'Entry updated successfully.', - entry: {}, - }, - ]; - } - return [ - 400, - { - notice: 'Update Failed.', - error_message: 'Entry update failed.', - entry: {}, - }, - ]; - }); - }); - const getTokenCallback = sinon.stub(); - getTokenCallback.withArgs('test1').returns({ - token: 'testManagementToken', - apiKey: 'testApiKey', - type: 'management', - }); - - fancy - .stub(cliux, 'confirm', () => 'yes') - .stub(command, 'getToken', getTokenCallback) - .it('execute using config file w/o locale', async () => { - const { stdout } = await runCommand( - ['cm:entries:migrate-html-rte', '--config-path', './test/dummy/config/config.json', '--yes'], - { root: process.cwd() }, - ); - expect(stdout).to.contain('Updated 1 Content Type(s) and 2 Entrie(s)'); - }); - - fancy - .stub(cliux, 'confirm', () => 'yes') - .stub(command, 'getToken', getTokenCallback) - .it('execute using config file w/ locale', async () => { - const { stdout } = await runCommand( - ['cm:entries:migrate-html-rte', '--config-path', './test/dummy/config/config_locale.json', '--yes'], - { root: process.cwd() }, - ); - expect(stdout).to.contain('Updated 1 Content Type(s) and 1 Entrie(s)'); - }); - - fancy - .stub(cliux, 'confirm', () => 'yes') - .stub(command, 'getToken', getTokenCallback) - .it('execute using config file w/ multiple locale', async () => { - const { stdout } = await runCommand( - ['cm:entries:migrate-html-rte', '--config-path', './test/dummy/config/config-locale-2.json', '--yes'], - { root: process.cwd() }, - ); - expect(stdout).to.contain('Updated 1 Content Type(s) and 3 Entrie(s)'); - }); - fancy - .stub(cliux, 'confirm', () => 'yes') - .stub(command, 'getToken', getTokenCallback) - .it('execute using flags (w/o locale)', async () => { - const { stdout } = await runCommand( - [ - 'cm:entries:migrate-html-rte', - '--alias', - 'test1', - '--content-type', - 'contenttypewithsinglerte', - '--html-path', - 'rich_text_editor', - '--json-path', - 'supercharged_rte', - '--delay', - '50', - ], - { root: process.cwd() }, - ); - expect(stdout).to.contain('Updated 1 Content Type(s) and 2 Entrie(s)'); - }); - - fancy - .stub(cliux, 'confirm', () => 'yes') - .stub(command, 'getToken', getTokenCallback) - .it('execute using flags w/ locale', async () => { - const { stdout } = await runCommand( - [ - 'cm:entries:migrate-html-rte', - '--alias', - 'test1', - '--content-type', - 'contenttypewithsinglerte', - '--html-path', - 'rich_text_editor', - '--json-path', - 'supercharged_rte', - '--locale', - 'en-in', - '--delay', - '50', - ], - { root: process.cwd() }, - ); - expect(stdout).to.contain('Updated 1 Content Type(s) and 1 Entrie(s)'); - }); - fancy - .stub(cliux, 'confirm', () => 'yes') - .stub(command, 'getToken', getTokenCallback) - .it('throw error on invalid html rte path', async () => { - const { error } = await runCommand([ - 'cm:entries:migrate-html-rte', - '--alias', - 'test1', - '--content-type', - 'contenttypewithsinglerte', - '--html-path', - 'rich_text_editor.invalidPath', - '--json-path', - 'supercharged_rte', - '--yes', - '--delay', - '50', - ],{ root: process.cwd() }); - expect(error.message).to.contain('The specified path to invalidPath HTML RTE does not exist.'); - }); - - fancy - .stub(cliux, 'confirm', () => 'yes') - .stub(command, 'getToken', getTokenCallback) - .it('throw error on invalid html rte field schema', async () => { - const { error } = await runCommand( - [ - 'cm:entries:migrate-html-rte', - '--alias', - 'test1', - '--content-type', - 'contenttypewithinvalidhtmlrteschema', - '--html-path', - 'rich_text_editor', - '--json-path', - 'supercharged_rte', - '--yes', - '--delay', - '50', - ], - { root: process.cwd() }, - ); - expect(error.message).to.contain('The specified path to rich_text_editor HTML RTE does not exist.'); - }); - - fancy - .stub(cliux, 'confirm', () => 'yes') - .stub(command, 'getToken', getTokenCallback) - .it('throw error on invalid json rte field schema', async () => { - const { error } = await runCommand( - [ - 'cm:entries:migrate-html-rte', - '--alias', - 'test1', - '--content-type', - 'contenttypewithinvalidjsonrteschema', - '--html-path', - 'rich_text_editor', - '--json-path', - 'supercharged_rte', - '--yes', - '--delay', - '50', - ], - { root: process.cwd() }, - ); - expect(error.message).to.contain('The specified path to supercharged_rte JSON RTE does not exist.'); - }); - fancy - .stub(cliux, 'confirm', () => 'yes') - .stub(command, 'getToken', getTokenCallback) - .it('throw error on invalid json rte path', async () => { - const { error } = await runCommand( - [ - 'cm:entries:migrate-html-rte', - '--alias', - 'test1', - '--content-type', - 'contenttypewithsinglerte', - '--html-path', - 'rich_text_editor', - '--json-path', - 'supercharged_rte.invalidPath', - '--yes', - '--delay', - '50', - ], - { root: process.cwd() }, - ); - expect(error.message).to.contain('The specified path to invalidPath JSON RTE does not exist.'); - }); - - fancy - .stub(cliux, 'confirm', () => 'yes') - .stub(command, 'getToken', getTokenCallback) - .it('throw error on migration of Mutiple Html rte with single Json rte', async () => { - const { error } = await runCommand( - [ - 'cm:entries:migrate-html-rte', - '--config-path', - './test/dummy/config/configForInvalidContentType.json', - '--yes', - ], - { root: process.cwd() }, - ); - expect(error.message).to.contain('Cannot convert "Multiple" type HTML RTE to "Single" type JSON RTE.'); - }); - - fancy - .stub(cliux, 'confirm', () => 'yes') - .stub(command, 'getToken', getTokenCallback) - .it('throw error on content type with empty schema', async () => { - const { error } = await runCommand( - [ - 'cm:entries:migrate-html-rte', - '--alias', - 'test1', - '--content-type', - 'contenttypewithemptyschema', - '--html-path', - 'rich_text_editor', - '--json-path', - 'supercharged_rte', - '--yes', - '--delay', - '50', - ], - { root: process.cwd() }, - ); - expect(error.message).to.contain('The contenttypewithemptyschema content type contains an empty schema.'); - }); - - fancy - .stub(cliux, 'confirm', () => 'yes') - .stub(command, 'getToken', getTokenCallback) - .it('throw error on different level rte migration', async () => { - const { error } = await runCommand( - [ - 'cm:entries:migrate-html-rte', - '--alias', - 'test1', - '--content-type', - 'contenttypedifferentlevelrte', - '--html-path', - 'group.rich_text_editor', - '--json-path', - 'supercharged_rte', - '--yes', - '--delay', - '50', - ], - { root: process.cwd() }, - ); - expect(error.message).to.contain( - 'To complete migration, HTML RTE and JSON RTE should be present at the same field depth level.', - ); - }); - - fancy - .stub(cliux, 'confirm', () => true) - .stub(command, 'getToken', getTokenCallback) - .it('throw error on invalid contenttype', async () => { - const { error } = await runCommand( - [ - 'cm:entries:migrate-html-rte', - '--alias', - 'test1', - '--content-type', - 'invalidContentType', - '--html-path', - 'rich_text_editor', - '--json-path', - 'supercharged_rte', - '--delay', - '50', - ], - { root: process.cwd() }, - ); - expect(error.message).to.contain("The Content Type 'invalidContentType' was not found. Please try again."); - }); - - fancy - .skip() - .stub(cliux, 'confirm', () => true) - .stub(command, 'getToken', getTokenCallback) - .it('notify user on entry update failed', async () => { - const { stdout } = await runCommand( - [ - 'cm:entries:migrate-html-rte', - '--alias', - 'test1', - '--content-type', - 'contenttypewithentryupdateerror', - '--html-path', - 'rich_text_editor', - '--json-path', - 'supercharged_rte', - '--yes', - '--delay', - '50', - ], - { root: process.cwd() }, - ); - expect(stdout).to.contain( - `Faced issue while migrating some entrie(s) for "contenttypewithentryupdateerror" Content-type in "en-us" locale,"blta9b16ac2827c54ed, blta9b16ac2827c54e1"`, - ); - }); - - fancy - .skip() - .stub(cliux, 'confirm', () => 'yes') - .stub(command, 'getToken', getTokenCallback) - .it('should have proper json structure for images migrated from HTML RTE', async () => { - const { stdout } = await runCommand( - ['cm:entries:migrate-html-rte', '--config-path', './test/dummy/config/config-for-images-in-rte.json', '--yes'], - { root: process.cwd() }, - ); - expect(stdout).to.match(/Updated \d+ Content Type\(s\) and \d+ Entrie\(s\)/); - }); -}); -describe('Global Field Migration', () => { - let token = getToken('test1'); - beforeEach(() => { - nock(`${command.cmaAPIUrl}`, { - reqheaders: { - api_key: token.apiKey, - authorization: token.token, - }, - }) - .persist() - .get(/\/v3\/global_fields\/([a-zA-Z_])*/) - .query({ - include_content_types: true, - }) - .reply((uri) => { - var match = uri.match(/\/v3\/global_fields\/(([a-zA-Z_])*)/); - return getGlobalField(match[1]); - }); - }); - - const getTokenCallback = sinon.stub(); - getTokenCallback.withArgs('test1').returns({ - token: 'testManagementToken', - apiKey: 'testApiKey', - type: 'management', - }); - fancy - .stub(cliux, 'confirm', () => 'yes') - .stub(command, 'getToken', getTokenCallback) - .it('execute using config file', async () => { - const { stdout } = await runCommand( - ['cm:entries:migrate-html-rte', '--config-path', './test/dummy/config/configForGlobalField.json', '--yes'], - { root: process.cwd() }, - ); - expect(stdout).to.contain('Updated 2 Content Type(s) and 2 Entrie(s)'); - }); - - fancy - .stub(cliux, 'confirm', () => 'yes') - .stub(command, 'getToken', getTokenCallback) - .it('throw error on global field with empty referred content_types', async () => { - const { error } = await runCommand( - [ - 'cm:entries:migrate-html-rte', - '--alias', - 'test1', - '--content-type', - 'globalfieldwithemptycontenttype', - '--global-field', - '--html-path', - 'rich_text_editor', - '--json-path', - 'supercharged_rte', - '--yes', - '--delay', - '50', - ], - { root: process.cwd() }, - ); - expect(error.message).to.contain('globalfieldformigration Global field is not referred in any content type.'); - }); - - fancy - .stub(cliux, 'confirm', () => 'yes') - .stub(command, 'getToken', getTokenCallback) - .it('throw error on global field with invalid content_type', async () => { - const { error } = await runCommand( - [ - 'cm:entries:migrate-html-rte', - '--alias', - 'test1', - '--content-type', - 'globalfieldwithinvalidcontenttype', - '--global-field', - '--html-path', - 'rich_text_editor', - '--json-path', - 'supercharged_rte', - '--yes', - '--delay', - '50', - ], - { root: process.cwd() }, - ); - expect(error.message).to.contain( - 'The contenttypewithemptyschema content type referred in globalfieldformigration contains an empty schema.', - ); - }); - - fancy - .stub(cliux, 'confirm', () => 'yes') - .stub(command, 'getToken', getTokenCallback) - .it('throw error on global field with empty schema', async () => { - const { error } = await runCommand( - [ - 'cm:entries:migrate-html-rte', - '--alias', - 'test1', - '--content-type', - 'globalfieldwithemptyschema', - '--global-field', - '--html-path', - 'rich_text_editor', - '--json-path', - 'supercharged_rte', - '--yes', - '--delay', - '50', - ], - { root: process.cwd() }, - ); - expect(error.message).to.contain('The globalfieldwithemptyschema Global field contains an empty schema.'); - }); - - fancy - .stub(cliux, 'confirm', () => 'yes') - .stub(command, 'getToken', getTokenCallback) - .it('throw error on global field with empty schema content_type', async () => { - const { error } = await runCommand( - [ - 'cm:entries:migrate-html-rte', - '--alias', - 'test1', - '--content-type', - 'globalfieldwithemptyschemacontenttype', - '--global-field', - '--html-path', - 'rich_text_editor', - '--json-path', - 'supercharged_rte', - '--yes', - '--delay', - '50', - ], - { root: process.cwd() }, - ); - expect(error.message).to.contain( - 'The contenttypewithemptyschema content type referred in globalfieldwithemptyschemacontenttype contains an empty schema.', - ); - }); - - fancy - .stub(cliux, 'confirm', () => 'yes') - .stub(command, 'getToken', getTokenCallback) - .it('throw error on invalid global_field uid', async () => { - const { error } = await runCommand( - [ - 'cm:entries:migrate-html-rte', - '--alias', - 'test1', - '--content-type', - 'invalidUidGlobalfield', - '--global-field', - '--html-path', - 'rich_text_editor', - '--json-path', - 'supercharged_rte', - '--yes', - '--delay', - '50', - ], - { root: process.cwd() }, - ); - expect(error.message).to.contain("The Global Field 'invalidUidGlobalfield' was not found. Please try again."); - }); -}); - -describe('Content Type with single rte of multiple type', () => { - const getTokenCallback = sinon.stub(); - getTokenCallback.withArgs('test1').returns({ - token: 'testManagementToken', - apiKey: 'testApiKey', - type: 'management', - }); - fancy - .stub(cliux, 'confirm', () => 'yes') - .stub(command, 'getToken', getTokenCallback) - .it('execute using config file', async () => { - const {stdout} = await runCommand( - ['cm:entries:migrate-html-rte', '--config-path', './test/dummy/config/configForMultipleRte.json', '--yes'], - { root: process.cwd() }, - ); - expect(stdout).to.contain('Updated 1 Content Type(s) and 1 Entrie(s)'); - }); -}); - -describe('Content Type with Single RTE inside modular block', () => { - const getTokenCallback = sinon.stub(); - getTokenCallback.withArgs('test1').returns({ - token: 'testManagementToken', - apiKey: 'testApiKey', - type: 'management', - }); - fancy - .stub(cliux, 'confirm', () => 'yes') - .stub(command, 'getToken', getTokenCallback) - .it('execute using Flags', async () => { - const { stdout } = await runCommand( - [ - 'cm:entries:migrate-html-rte', - '--alias', - 'test1', - '--content-type', - 'contenttypewithmodularblock', - '--html-path', - 'modular_blocks.test1.rich_text_editor', - '--json-path', - 'modular_blocks.test1.supercharged_rte', - '--yes', - '--delay', - '50', - ], - { root: process.cwd() }, - ); - expect(stdout).to.contain('Updated 1 Content Type(s) and 1 Entrie(s)'); - }); -}); - -describe('Content Type with Single RTE of type multiple inside group', () => { - const getTokenCallback = sinon.stub(); - getTokenCallback.withArgs('test1').returns({ - token: 'testManagementToken', - apiKey: 'testApiKey', - type: 'management', - }); - fancy - .stub(cliux, 'confirm', () => 'yes') - .stub(command, 'getToken', getTokenCallback) - .it('execute using Flags', async () => { - const { stdout } = await runCommand( - [ - 'cm:entries:migrate-html-rte', - '--alias', - 'test1', - '--content-type', - 'contenttypewithgroup', - '--html-path', - 'group.rich_text_editor', - '--json-path', - 'group.supercharged_rte', - '--yes', - '--delay', - '50', - ], - { root: process.cwd() }, - ); - expect(stdout).to.contain('Updated 1 Content Type(s) and 1 Entrie(s)'); - }); -}); - -describe('Content Type with Single RTE inside group of type multiple', () => { - const getTokenCallback = sinon.stub(); - getTokenCallback.withArgs('test1').returns({ - token: 'testManagementToken', - apiKey: 'testApiKey', - type: 'management', - }); - fancy - .stub(cliux, 'confirm', () => 'yes') - .stub(command, 'getToken', getTokenCallback) - .it('execute using Flags', async () => { - const { stdout } = await runCommand( - [ - 'cm:entries:migrate-html-rte', - '--alias', - 'test1', - '--content-type', - 'contenttypewithmultiplegroup', - '--html-path', - 'group.rich_text_editor', - '--json-path', - 'group.supercharged_rte', - '--yes', - '--delay', - '50', - ], - { root: process.cwd() }, - ); - expect(stdout).to.contain('Updated 1 Content Type(s) and 1 Entrie(s)'); - }); -}); - -// Check this one -describe('Content Type with multiple file field', () => { - const getTokenCallback = sinon.stub(); - getTokenCallback.withArgs('test1').returns({ - token: 'testManagementToken', - apiKey: 'testApiKey', - type: 'management', - }); - fancy - .stub(cliux, 'confirm', () => 'yes') - .stub(command, 'getToken', getTokenCallback) - .it('execute using Flags', async () => { - const { stdout } = await runCommand( - [ - 'cm:entries:migrate-html-rte', - '--alias', - 'test1', - '--content-type', - 'contenttypewithfilefield', - '--html-path', - 'rich_text_editor', - '--json-path', - 'json_rte', - '--yes', - '--delay', - '50', - ], - { root: process.cwd() }, - ); - expect(stdout).to.contain('Updated 1 Content Type(s) and 1 Entrie(s)'); - }); -}); - -describe('Migration with old flags and command', () => { - const getTokenCallback = sinon.stub(); - getTokenCallback.withArgs('test1').returns({ - token: 'testManagementToken', - apiKey: 'testApiKey', - type: 'management', - }); - - fancy - .stub(cliux, 'confirm', () => 'yes') - .stub(command, 'getToken', getTokenCallback) - .it('execute using config file w/o locale', async (ctx) => { - const { stdout } = await runCommand( - ['cm:migrate-rte', '--configPath', './test/dummy/config/config.json', '--yes'], - { root: process.cwd() }, - ); - expect(stdout).to.contain( - `WARNING!!! You're using the old (soon to be deprecated) Contentstack CLI flags (-p, --configPath). We recommend you to use the updated flags (-c, --config-path).`, - ); - }); - - fancy - .stub(cliux, 'confirm', () => 'yes') - .stub(command, 'getToken', getTokenCallback) - .it('execute using flags (w/o locale)', async () => { - const { stdout } = await runCommand( - [ - 'cm:entries:migrate-html-rte', - '--alias', - 'test1', - '--content_type', - 'contenttypewithsinglerte', - '--htmlPath', - 'rich_text_editor', - '--jsonPath', - 'supercharged_rte', - '--delay', - '50', - ], - { root: process.cwd() }, - ); - - expect(stdout).to.contain( - `WARNING!!! You're using the old (soon to be deprecated) Contentstack CLI flags (-c, --content_type). We recommend you to use the updated flags (--content-type).`, - ); - expect(stdout).to.contain( - `WARNING!!! You're using the old (soon to be deprecated) Contentstack CLI flags (-h, --htmlPath). We recommend you to use the updated flags (--html-path)`, - ); - expect(stdout).to.contain( - `WARNING!!! You're using the old (soon to be deprecated) Contentstack CLI flags (-j, --jsonPath). We recommend you to use the updated flags (--json-path).`, - ); - }); -}); diff --git a/packages/contentstack-migrate-rte/test/dummy/config/config-for-images-in-rte.json b/packages/contentstack-migrate-rte/test/dummy/config/config-for-images-in-rte.json deleted file mode 100644 index 4b12389ccc..0000000000 --- a/packages/contentstack-migrate-rte/test/dummy/config/config-for-images-in-rte.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "alias": "test1", - "content-type": "rte_images", - "global-field": false, - "paths": [ - { - "from": "rich_text_editor", - "to": "supercharged_rte" - } - ], - "delay": 50 -} diff --git a/packages/contentstack-migrate-rte/test/dummy/config/config-locale-2.json b/packages/contentstack-migrate-rte/test/dummy/config/config-locale-2.json deleted file mode 100644 index 9405011617..0000000000 --- a/packages/contentstack-migrate-rte/test/dummy/config/config-locale-2.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "alias": "test1", - "content-type": "contenttypewithsinglerte", - "global-field": false, - "paths": [ - { - "from": "rich_text_editor", - "to": "supercharged_rte" - } - ], - "delay": 50, - "locale": ["en-in", "en-us"] -} diff --git a/packages/contentstack-migrate-rte/test/dummy/config/config-locale.json b/packages/contentstack-migrate-rte/test/dummy/config/config-locale.json deleted file mode 100644 index a54e527c80..0000000000 --- a/packages/contentstack-migrate-rte/test/dummy/config/config-locale.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "alias": "test1", - "content_type": "contenttypewithsinglerte", - "isGlobalField": false, - "paths": [ - { - "from": "rich_text_editor", - "to": "supercharged_rte" - } - ], - "delay": 50, - "locale":["en-in"] -} \ No newline at end of file diff --git a/packages/contentstack-migrate-rte/test/dummy/config/config.json b/packages/contentstack-migrate-rte/test/dummy/config/config.json deleted file mode 100644 index 337aa4d3ae..0000000000 --- a/packages/contentstack-migrate-rte/test/dummy/config/config.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "alias": "test1", - "content-type": "contenttypewithsinglerte", - "global-field": false, - "paths": [ - { - "from": "rich_text_editor", - "to": "supercharged_rte" - } - ], - "delay": 50 -} diff --git a/packages/contentstack-migrate-rte/test/dummy/config/configForGlobalField.json b/packages/contentstack-migrate-rte/test/dummy/config/configForGlobalField.json deleted file mode 100644 index 80c572f488..0000000000 --- a/packages/contentstack-migrate-rte/test/dummy/config/configForGlobalField.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "alias": "test1", - "content-type": "globalfieldformigration", - "global-field": true, - "paths": [ - { - "from": "rich_text_editor", - "to": "supercharged_rte" - } - ], - "delay": 50 -} diff --git a/packages/contentstack-migrate-rte/test/dummy/config/configForInvalidContentType.json b/packages/contentstack-migrate-rte/test/dummy/config/configForInvalidContentType.json deleted file mode 100644 index 3506c60cc4..0000000000 --- a/packages/contentstack-migrate-rte/test/dummy/config/configForInvalidContentType.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "alias": "test1", - "content-type": "contenttypewithinvalidrtetype", - "global-field": false, - "paths": [ - { - "from": "rich_text_editor", - "to": "supercharged_rte" - } - ], - "delay": 50 -} diff --git a/packages/contentstack-migrate-rte/test/dummy/config/configForMultipleRte.json b/packages/contentstack-migrate-rte/test/dummy/config/configForMultipleRte.json deleted file mode 100644 index a17c5bb5ba..0000000000 --- a/packages/contentstack-migrate-rte/test/dummy/config/configForMultipleRte.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "alias": "test1", - "content-type": "contenttypewithmultiplerte", - "global-field": false, - "paths": [ - { - "from": "rich_text_editor", - "to": "supercharged_rte" - } - ], - "delay": 50 -} diff --git a/packages/contentstack-migrate-rte/test/dummy/config/configWithEmptyPath.json b/packages/contentstack-migrate-rte/test/dummy/config/configWithEmptyPath.json deleted file mode 100644 index 0361c38197..0000000000 --- a/packages/contentstack-migrate-rte/test/dummy/config/configWithEmptyPath.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "alias": "test2", - "content-type": "contenttypewithsinglerte", - "global-field": false, - "paths": [], - "delay": 50 -} diff --git a/packages/contentstack-migrate-rte/test/dummy/config/config_locale.json b/packages/contentstack-migrate-rte/test/dummy/config/config_locale.json deleted file mode 100644 index ffd4453468..0000000000 --- a/packages/contentstack-migrate-rte/test/dummy/config/config_locale.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "alias": "test1", - "content-type": "contenttypewithsinglerte", - "global-field": false, - "paths": [ - { - "from": "rich_text_editor", - "to": "supercharged_rte" - } - ], - "locale":["en-in"], - "delay": 50 -} diff --git a/packages/contentstack-migrate-rte/test/dummy/config/invalidConfig.json b/packages/contentstack-migrate-rte/test/dummy/config/invalidConfig.json deleted file mode 100644 index 2f939adc07..0000000000 --- a/packages/contentstack-migrate-rte/test/dummy/config/invalidConfig.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "alias": 123, - "content-type": "contenttypewithsinglerte", - "global-field": false, - "paths": [ - { - "from": "rich_text_editor", - "to": "supercharged_rte" - } - ], - "delay": 50 -} diff --git a/packages/contentstack-migrate-rte/test/dummy/contentTypeResponse.json b/packages/contentstack-migrate-rte/test/dummy/contentTypeResponse.json deleted file mode 100644 index 16f5e630e8..0000000000 --- a/packages/contentstack-migrate-rte/test/dummy/contentTypeResponse.json +++ /dev/null @@ -1,3014 +0,0 @@ -{ - "contenttypewithsinglerte": { - "content_type": { - "created_at": "2021-06-18T08:28:40.550Z", - "updated_at": "2021-06-18T08:29:11.162Z", - "title": "ContentTypeWithSingleRTE", - "uid": "contenttypewithsinglerte", - "_version": 2, - "inbuilt_class": false, - "schema": [ - { - "data_type": "text", - "display_name": "Title", - "field_metadata": { - "_default": true, - "version": 3 - }, - "mandatory": true, - "uid": "title", - "unique": true, - "non_localizable": false, - "multiple": false - }, - { - "data_type": "text", - "display_name": "Rich Text Editor", - "uid": "rich_text_editor", - "field_metadata": { - "allow_rich_text": true, - "description": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [], - "version": 3 - }, - "non_localizable": false, - "multiple": false, - "mandatory": false, - "unique": false - }, - { - "data_type": "json", - "display_name": "Supercharged RTE", - "uid": "supercharged_rte", - "field_metadata": { - "allow_json_rte": true, - "description": "", - "default_value": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [] - }, - "format": "", - "error_messages": { - "format": "" - }, - "mandatory": false, - "non_localizable": false, - "multiple": false, - "unique": false - } - ], - "last_activity": {}, - "maintain_revisions": true, - "description": "", - "DEFAULT_ACL": { - "others": { - "read": false, - "create": false - }, - "users": [ - { - "uid": "bltd17749910d177e04", - "read": true, - "sub_acl": { - "read": true - } - } - ] - }, - "SYS_ACL": { - "roles": [ - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - } - ], - "others": { - "read": false, - "create": false, - "update": false, - "delete": false, - "sub_acl": { - "read": false, - "create": false, - "update": false, - "delete": false, - "publish": false - } - } - }, - "options": { - "is_page": false, - "singleton": false, - "sub_title": [], - "title": "title" - }, - "abilities": { - "get_one_object": true, - "get_all_objects": true, - "create_object": true, - "update_object": true, - "delete_object": true, - "delete_all_objects": true - } - } - }, - "contenttypewithinvalidjsonrteschema": { - "content_type": { - "created_at": "2021-06-18T08:28:40.550Z", - "updated_at": "2021-06-18T08:29:11.162Z", - "title": "ContentTypeWithSingleRTE", - "uid": "contenttypewithsinglerte", - "_version": 2, - "inbuilt_class": false, - "schema": [ - { - "data_type": "text", - "display_name": "Title", - "field_metadata": { - "_default": true, - "version": 3 - }, - "mandatory": true, - "uid": "title", - "unique": true, - "non_localizable": false, - "multiple": false - }, - { - "data_type": "text", - "display_name": "Rich Text Editor", - "uid": "rich_text_editor", - "field_metadata": { - "allow_rich_text": true, - "description": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [], - "version": 3 - }, - "non_localizable": false, - "multiple": false, - "mandatory": false, - "unique": false - }, - { - "data_type": "json", - "display_name": "Supercharged RTE", - "uid": "supercharged_rte", - "field_metadata": { - "description": "", - "default_value": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [] - }, - "format": "", - "error_messages": { - "format": "" - }, - "mandatory": false, - "non_localizable": false, - "multiple": false, - "unique": false - } - ], - "last_activity": {}, - "maintain_revisions": true, - "description": "", - "DEFAULT_ACL": { - "others": { - "read": false, - "create": false - }, - "users": [ - { - "uid": "bltd17749910d177e04", - "read": true, - "sub_acl": { - "read": true - } - } - ] - }, - "SYS_ACL": { - "roles": [ - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - } - ], - "others": { - "read": false, - "create": false, - "update": false, - "delete": false, - "sub_acl": { - "read": false, - "create": false, - "update": false, - "delete": false, - "publish": false - } - } - }, - "options": { - "is_page": false, - "singleton": false, - "sub_title": [], - "title": "title" - }, - "abilities": { - "get_one_object": true, - "get_all_objects": true, - "create_object": true, - "update_object": true, - "delete_object": true, - "delete_all_objects": true - } - } - }, - "contenttypedifferentlevelrte": { - "content_type": { - "created_at": "2021-06-22T11:35:00.339Z", - "updated_at": "2021-06-22T11:35:19.016Z", - "title": "contenttypedifferentlevelrte", - "uid": "contenttypedifferentlevelrte", - "_version": 2, - "inbuilt_class": false, - "schema": [ - { - "data_type": "text", - "display_name": "Title", - "field_metadata": { - "_default": true, - "version": 3 - }, - "mandatory": true, - "uid": "title", - "unique": true, - "non_localizable": false, - "multiple": false - }, - { - "data_type": "group", - "display_name": "Group", - "field_metadata": { - "description": "", - "instruction": "" - }, - "schema": [ - { - "data_type": "text", - "display_name": "Rich Text Editor", - "uid": "rich_text_editor", - "field_metadata": { - "allow_rich_text": true, - "description": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [], - "version": 3 - }, - "non_localizable": false, - "multiple": false, - "mandatory": false, - "unique": false - } - ], - "uid": "group", - "non_localizable": false, - "multiple": false, - "mandatory": false, - "unique": false - }, - { - "data_type": "json", - "display_name": "Supercharged RTE", - "uid": "supercharged_rte", - "field_metadata": { - "allow_json_rte": true, - "description": "", - "default_value": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [] - }, - "format": "", - "error_messages": { - "format": "" - }, - "mandatory": false, - "non_localizable": false, - "multiple": false, - "unique": false - } - ], - "last_activity": {}, - "maintain_revisions": true, - "description": "", - "DEFAULT_ACL": { - "others": { - "read": false, - "create": false - }, - "users": [ - { - "uid": "bltd17749910d177e04", - "read": true, - "sub_acl": { - "read": true - } - } - ] - }, - "SYS_ACL": { - "roles": [ - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - } - ], - "others": { - "read": false, - "create": false, - "update": false, - "delete": false, - "sub_acl": { - "read": false, - "create": false, - "update": false, - "delete": false, - "publish": false - } - } - }, - "options": { - "is_page": false, - "singleton": false, - "sub_title": [], - "title": "title" - }, - "abilities": { - "get_one_object": true, - "get_all_objects": true, - "create_object": true, - "update_object": true, - "delete_object": true, - "delete_all_objects": true - } - } - }, - "contenttypewithinvalidhtmlrteschema": { - "content_type": { - "created_at": "2021-06-18T08:28:40.550Z", - "updated_at": "2021-06-18T08:29:11.162Z", - "title": "contenttypewithinvalidhtmlrteschema", - "uid": "contenttypewithinvalidhtmlrteschema", - "_version": 2, - "inbuilt_class": false, - "schema": [ - { - "data_type": "text", - "display_name": "Title", - "field_metadata": { - "_default": true, - "version": 3 - }, - "mandatory": true, - "uid": "title", - "unique": true, - "non_localizable": false, - "multiple": false - }, - { - "data_type": "text", - "display_name": "Rich Text Editor", - "uid": "rich_text_editor", - "non_localizable": false, - "multiple": false, - "mandatory": false, - "unique": false - }, - { - "data_type": "json", - "display_name": "Supercharged RTE", - "uid": "supercharged_rte", - "field_metadata": { - "allow_json_rte": true, - "description": "", - "default_value": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [] - }, - "format": "", - "error_messages": { - "format": "" - }, - "mandatory": false, - "non_localizable": false, - "multiple": false, - "unique": false - } - ], - "last_activity": {}, - "maintain_revisions": true, - "description": "", - "DEFAULT_ACL": { - "others": { - "read": false, - "create": false - }, - "users": [ - { - "uid": "bltd17749910d177e04", - "read": true, - "sub_acl": { - "read": true - } - } - ] - }, - "SYS_ACL": { - "roles": [ - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - } - ], - "others": { - "read": false, - "create": false, - "update": false, - "delete": false, - "sub_acl": { - "read": false, - "create": false, - "update": false, - "delete": false, - "publish": false - } - } - }, - "options": { - "is_page": false, - "singleton": false, - "sub_title": [], - "title": "title" - }, - "abilities": { - "get_one_object": true, - "get_all_objects": true, - "create_object": true, - "update_object": true, - "delete_object": true, - "delete_all_objects": true - } - } - }, - "contenttype1forglobalfield": { - "content_type": { - "created_at": "2021-06-21T09:35:10.023Z", - "updated_at": "2021-06-21T09:35:58.489Z", - "title": "contentType1ForglobalField", - "uid": "contenttype1forglobalfield", - "_version": 2, - "inbuilt_class": false, - "schema": [ - { - "data_type": "text", - "display_name": "Title", - "field_metadata": { - "_default": true, - "version": 3 - }, - "mandatory": true, - "uid": "title", - "unique": true, - "non_localizable": false, - "multiple": false - }, - { - "data_type": "global_field", - "display_name": "Global", - "reference_to": "globalfieldformigration", - "field_metadata": { - "description": "" - }, - "uid": "global_field", - "non_localizable": false, - "multiple": false, - "mandatory": false, - "unique": false, - "schema": [ - { - "data_type": "text", - "display_name": "Rich Text Editor", - "uid": "rich_text_editor", - "field_metadata": { - "allow_rich_text": true, - "description": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [], - "version": 3 - }, - "non_localizable": false, - "multiple": false, - "mandatory": false, - "unique": false, - "indexed": false, - "inbuilt_model": false - }, - { - "data_type": "json", - "display_name": "Supercharged RTE", - "uid": "supercharged_rte", - "field_metadata": { - "allow_json_rte": true, - "description": "", - "default_value": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [] - }, - "format": "", - "error_messages": { - "format": "" - }, - "mandatory": false, - "non_localizable": false, - "multiple": false, - "unique": false, - "indexed": false, - "inbuilt_model": false - } - ] - }, - { - "data_type": "group", - "display_name": "Group", - "field_metadata": { - "description": "", - "instruction": "" - }, - "schema": [ - { - "data_type": "global_field", - "display_name": "Global", - "reference_to": "globalfieldformigration", - "field_metadata": { - "description": "" - }, - "uid": "global_field", - "non_localizable": false, - "multiple": false, - "mandatory": false, - "unique": false, - "schema": [ - { - "data_type": "text", - "display_name": "Rich Text Editor", - "uid": "rich_text_editor", - "field_metadata": { - "allow_rich_text": true, - "description": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [], - "version": 3 - }, - "non_localizable": false, - "multiple": false, - "mandatory": false, - "unique": false, - "indexed": false, - "inbuilt_model": false - }, - { - "data_type": "json", - "display_name": "Supercharged RTE", - "uid": "supercharged_rte", - "field_metadata": { - "allow_json_rte": true, - "description": "", - "default_value": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [] - }, - "format": "", - "error_messages": { - "format": "" - }, - "mandatory": false, - "non_localizable": false, - "multiple": false, - "unique": false, - "indexed": false, - "inbuilt_model": false - } - ] - } - ], - "uid": "group", - "non_localizable": false, - "multiple": false, - "mandatory": false, - "unique": false - } - ], - "last_activity": {}, - "maintain_revisions": true, - "description": "", - "DEFAULT_ACL": { - "others": { - "read": false, - "create": false - }, - "users": [ - { - "uid": "bltd17749910d177e04", - "read": true, - "sub_acl": { - "read": true - } - } - ] - }, - "SYS_ACL": { - "roles": [ - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - } - ], - "others": { - "read": false, - "create": false, - "update": false, - "delete": false, - "sub_acl": { - "read": false, - "create": false, - "update": false, - "delete": false, - "publish": false - } - } - }, - "options": { - "is_page": false, - "singleton": false, - "sub_title": [], - "title": "title" - }, - "abilities": { - "get_one_object": true, - "get_all_objects": true, - "create_object": true, - "update_object": true, - "delete_object": true, - "delete_all_objects": true - } - } - }, - "contenttype2forglobalfield": { - "content_type": { - "created_at": "2021-06-21T09:36:41.354Z", - "updated_at": "2021-06-21T09:37:19.970Z", - "title": "contenttype2forglobalfield", - "uid": "contenttype2forglobalfield", - "_version": 2, - "inbuilt_class": false, - "schema": [ - { - "data_type": "text", - "display_name": "Title", - "field_metadata": { - "_default": true, - "version": 3 - }, - "mandatory": true, - "uid": "title", - "unique": true, - "non_localizable": false, - "multiple": false - }, - { - "data_type": "global_field", - "display_name": "Global", - "reference_to": "globalfieldformigration", - "field_metadata": { - "description": "" - }, - "uid": "global_field", - "non_localizable": false, - "multiple": false, - "mandatory": false, - "unique": false, - "schema": [ - { - "data_type": "text", - "display_name": "Rich Text Editor", - "uid": "rich_text_editor", - "field_metadata": { - "allow_rich_text": true, - "description": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [], - "version": 3 - }, - "non_localizable": false, - "multiple": false, - "mandatory": false, - "unique": false, - "indexed": false, - "inbuilt_model": false - }, - { - "data_type": "json", - "display_name": "Supercharged RTE", - "uid": "supercharged_rte", - "field_metadata": { - "allow_json_rte": true, - "description": "", - "default_value": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [] - }, - "format": "", - "error_messages": { - "format": "" - }, - "mandatory": false, - "non_localizable": false, - "multiple": false, - "unique": false, - "indexed": false, - "inbuilt_model": false - } - ] - } - ], - "last_activity": {}, - "maintain_revisions": true, - "description": "", - "DEFAULT_ACL": { - "others": { - "read": false, - "create": false - }, - "users": [ - { - "uid": "bltd17749910d177e04", - "read": true, - "sub_acl": { - "read": true - } - } - ] - }, - "SYS_ACL": { - "roles": [ - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - } - ], - "others": { - "read": false, - "create": false, - "update": false, - "delete": false, - "sub_acl": { - "read": false, - "create": false, - "update": false, - "delete": false, - "publish": false - } - } - }, - "options": { - "is_page": false, - "singleton": false, - "sub_title": [], - "title": "title" - }, - "abilities": { - "get_one_object": true, - "get_all_objects": true, - "create_object": true, - "update_object": true, - "delete_object": true, - "delete_all_objects": true - } - } - }, - "contenttypewithinvalidrtetype": { - "content_type": { - "created_at": "2021-06-22T05:00:12.357Z", - "updated_at": "2021-06-22T05:01:53.175Z", - "title": "contenttypewithinvalidrtetype", - "uid": "contenttypewithinvalidrtetype", - "_version": 3, - "inbuilt_class": false, - "schema": [ - { - "data_type": "text", - "display_name": "Title", - "field_metadata": { - "_default": true, - "version": 3 - }, - "mandatory": true, - "uid": "title", - "unique": true, - "non_localizable": false, - "multiple": false - }, - { - "data_type": "text", - "display_name": "Rich Text Editor", - "uid": "rich_text_editor", - "field_metadata": { - "allow_rich_text": true, - "description": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [], - "version": 3 - }, - "multiple": true, - "non_localizable": false, - "mandatory": false, - "unique": false - }, - { - "data_type": "json", - "display_name": "Supercharged RTE", - "uid": "supercharged_rte", - "field_metadata": { - "allow_json_rte": true, - "description": "", - "default_value": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [] - }, - "format": "", - "error_messages": { - "format": "" - }, - "mandatory": false, - "non_localizable": false, - "multiple": false, - "unique": false - } - ], - "last_activity": {}, - "maintain_revisions": true, - "description": "", - "DEFAULT_ACL": { - "others": { - "read": false, - "create": false - }, - "users": [ - { - "uid": "bltd17749910d177e04", - "read": true, - "sub_acl": { - "read": true - } - } - ] - }, - "SYS_ACL": { - "roles": [ - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - } - ], - "others": { - "read": false, - "create": false, - "update": false, - "delete": false, - "sub_acl": { - "read": false, - "create": false, - "update": false, - "delete": false, - "publish": false - } - } - }, - "options": { - "is_page": false, - "singleton": false, - "sub_title": [], - "title": "title" - }, - "abilities": { - "get_one_object": true, - "get_all_objects": true, - "create_object": true, - "update_object": true, - "delete_object": true, - "delete_all_objects": true - } - } - }, - "contenttypewithmultiplerte": { - "content_type": { - "created_at": "2021-06-22T05:18:50.239Z", - "updated_at": "2021-06-22T05:50:45.916Z", - "title": "contenttypewithmultiplerte", - "uid": "contenttypewithmultiplerte", - "_version": 3, - "inbuilt_class": false, - "schema": [ - { - "data_type": "text", - "display_name": "Title", - "field_metadata": { - "_default": true, - "version": 3 - }, - "mandatory": true, - "uid": "title", - "unique": true, - "non_localizable": false, - "multiple": false - }, - { - "data_type": "text", - "display_name": "Rich Text Editor", - "uid": "rich_text_editor", - "field_metadata": { - "allow_rich_text": true, - "description": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [], - "version": 3 - }, - "multiple": true, - "non_localizable": false, - "mandatory": false, - "unique": false - }, - { - "data_type": "json", - "display_name": "Supercharged RTE", - "uid": "supercharged_rte", - "field_metadata": { - "allow_json_rte": true, - "description": "", - "default_value": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [] - }, - "format": "", - "error_messages": { - "format": "" - }, - "mandatory": false, - "multiple": true, - "non_localizable": false, - "unique": false - } - ], - "last_activity": {}, - "maintain_revisions": true, - "description": "", - "DEFAULT_ACL": { - "others": { - "read": false, - "create": false - }, - "users": [ - { - "uid": "bltd17749910d177e04", - "read": true, - "sub_acl": { - "read": true - } - } - ] - }, - "SYS_ACL": { - "roles": [ - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - } - ], - "others": { - "read": false, - "create": false, - "update": false, - "delete": false, - "sub_acl": { - "read": false, - "create": false, - "update": false, - "delete": false, - "publish": false - } - } - }, - "options": { - "is_page": false, - "singleton": false, - "sub_title": [], - "title": "title" - }, - "abilities": { - "get_one_object": true, - "get_all_objects": true, - "create_object": true, - "update_object": true, - "delete_object": true, - "delete_all_objects": true - } - } - }, - "contenttypewithemptyschema": { - "content_type": { - "created_at": "2021-06-22T05:18:50.239Z", - "updated_at": "2021-06-22T05:50:45.916Z", - "title": "contenttypewithemptyschema", - "uid": "contenttypewithemptyschema", - "_version": 3, - "inbuilt_class": false, - "schema": [], - "last_activity": {}, - "maintain_revisions": true, - "description": "", - "DEFAULT_ACL": { - "others": { - "read": false, - "create": false - }, - "users": [ - { - "uid": "bltd17749910d177e04", - "read": true, - "sub_acl": { - "read": true - } - } - ] - }, - "SYS_ACL": { - "roles": [ - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - } - ], - "others": { - "read": false, - "create": false, - "update": false, - "delete": false, - "sub_acl": { - "read": false, - "create": false, - "update": false, - "delete": false, - "publish": false - } - } - }, - "options": { - "is_page": false, - "singleton": false, - "sub_title": [], - "title": "title" - }, - "abilities": { - "get_one_object": true, - "get_all_objects": true, - "create_object": true, - "update_object": true, - "delete_object": true, - "delete_all_objects": true - } - } - }, - "contenttypewithmodularblock": { - "content_type": { - "created_at": "2021-06-22T08:36:26.050Z", - "updated_at": "2021-06-22T09:55:52.105Z", - "title": "contenttypewithmodularblock", - "uid": "contenttypewithmodularblock", - "_version": 3, - "inbuilt_class": false, - "schema": [ - { - "data_type": "text", - "display_name": "Title", - "field_metadata": { - "_default": true, - "version": 3 - }, - "mandatory": true, - "uid": "title", - "unique": true, - "non_localizable": false, - "multiple": false - }, - { - "data_type": "blocks", - "display_name": "Modular Blocks", - "blocks": [ - { - "title": "test1", - "uid": "test1", - "schema": [ - { - "data_type": "text", - "display_name": "Rich Text Editor", - "uid": "rich_text_editor", - "field_metadata": { - "allow_rich_text": true, - "description": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [], - "version": 3 - }, - "non_localizable": false, - "multiple": false, - "mandatory": false, - "unique": false - }, - { - "data_type": "json", - "display_name": "Supercharged RTE", - "uid": "supercharged_rte", - "field_metadata": { - "allow_json_rte": true, - "description": "", - "default_value": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [] - }, - "format": "", - "error_messages": { - "format": "" - }, - "mandatory": false, - "non_localizable": false, - "multiple": false, - "unique": false - } - ] - } - ], - "multiple": true, - "uid": "modular_blocks", - "field_metadata": { - "instruction": "", - "description": "" - }, - "non_localizable": false, - "mandatory": false, - "unique": false - } - ], - "last_activity": {}, - "maintain_revisions": true, - "description": "", - "DEFAULT_ACL": { - "others": { - "read": false, - "create": false - }, - "users": [ - { - "uid": "bltd17749910d177e04", - "read": true, - "sub_acl": { - "read": true - } - } - ] - }, - "SYS_ACL": { - "roles": [ - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - } - ], - "others": { - "read": false, - "create": false, - "update": false, - "delete": false, - "sub_acl": { - "read": false, - "create": false, - "update": false, - "delete": false, - "publish": false - } - } - }, - "options": { - "is_page": false, - "singleton": false, - "sub_title": [], - "title": "title" - }, - "abilities": { - "get_one_object": true, - "get_all_objects": true, - "create_object": true, - "update_object": true, - "delete_object": true, - "delete_all_objects": true - } - } - }, - "contenttypewithgroup": { - "content_type": { - "created_at": "2021-06-22T10:18:54.177Z", - "updated_at": "2021-06-22T10:19:31.012Z", - "title": "contenttypewithgroup", - "uid": "contenttypewithgroup", - "_version": 2, - "inbuilt_class": false, - "schema": [ - { - "data_type": "text", - "display_name": "Title", - "field_metadata": { - "_default": true, - "version": 3 - }, - "mandatory": true, - "uid": "title", - "unique": true, - "non_localizable": false, - "multiple": false - }, - { - "data_type": "group", - "display_name": "Group", - "field_metadata": { - "description": "", - "instruction": "" - }, - "schema": [ - { - "data_type": "text", - "display_name": "Rich Text Editor", - "uid": "rich_text_editor", - "field_metadata": { - "allow_rich_text": true, - "description": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [], - "version": 3 - }, - "multiple": true, - "non_localizable": false, - "mandatory": false, - "unique": false - }, - { - "data_type": "json", - "display_name": "Supercharged RTE", - "uid": "supercharged_rte", - "field_metadata": { - "allow_json_rte": true, - "description": "", - "default_value": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [] - }, - "format": "", - "error_messages": { - "format": "" - }, - "mandatory": false, - "multiple": true, - "non_localizable": false, - "unique": false - } - ], - "uid": "group", - "non_localizable": false, - "multiple": false, - "mandatory": false, - "unique": false - } - ], - "last_activity": {}, - "maintain_revisions": true, - "description": "", - "DEFAULT_ACL": { - "others": { - "read": false, - "create": false - }, - "users": [ - { - "uid": "bltd17749910d177e04", - "read": true, - "sub_acl": { - "read": true - } - } - ] - }, - "SYS_ACL": { - "roles": [ - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - } - ], - "others": { - "read": false, - "create": false, - "update": false, - "delete": false, - "sub_acl": { - "read": false, - "create": false, - "update": false, - "delete": false, - "publish": false - } - } - }, - "options": { - "is_page": false, - "singleton": false, - "sub_title": [], - "title": "title" - }, - "abilities": { - "get_one_object": true, - "get_all_objects": true, - "create_object": true, - "update_object": true, - "delete_object": true, - "delete_all_objects": true - } - } - }, - "contenttypewithmultiplegroup": { - "content_type": { - "created_at": "2021-06-22T10:35:26.275Z", - "updated_at": "2021-06-22T10:36:06.768Z", - "title": "contenttypewithmultiplegroup", - "uid": "contenttypewithmultiplegroup", - "_version": 2, - "inbuilt_class": false, - "schema": [ - { - "data_type": "text", - "display_name": "Title", - "field_metadata": { - "_default": true, - "version": 3 - }, - "mandatory": true, - "uid": "title", - "unique": true, - "non_localizable": false, - "multiple": false - }, - { - "data_type": "group", - "display_name": "Group", - "field_metadata": { - "description": "", - "instruction": "" - }, - "schema": [ - { - "data_type": "text", - "display_name": "Rich Text Editor", - "uid": "rich_text_editor", - "field_metadata": { - "allow_rich_text": true, - "description": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [], - "version": 3 - }, - "non_localizable": false, - "multiple": false, - "mandatory": false, - "unique": false - }, - { - "data_type": "json", - "display_name": "Supercharged RTE", - "uid": "supercharged_rte", - "field_metadata": { - "allow_json_rte": true, - "description": "", - "default_value": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [] - }, - "format": "", - "error_messages": { - "format": "" - }, - "mandatory": false, - "non_localizable": false, - "multiple": false, - "unique": false - } - ], - "uid": "group", - "multiple": true, - "non_localizable": false, - "mandatory": false, - "unique": false - } - ], - "last_activity": {}, - "maintain_revisions": true, - "description": "", - "DEFAULT_ACL": { - "others": { - "read": false, - "create": false - }, - "users": [ - { - "uid": "bltd17749910d177e04", - "read": true, - "sub_acl": { - "read": true - } - } - ] - }, - "SYS_ACL": { - "roles": [ - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - } - ], - "others": { - "read": false, - "create": false, - "update": false, - "delete": false, - "sub_acl": { - "read": false, - "create": false, - "update": false, - "delete": false, - "publish": false - } - } - }, - "options": { - "is_page": false, - "singleton": false, - "sub_title": [], - "title": "title" - }, - "abilities": { - "get_one_object": true, - "get_all_objects": true, - "create_object": true, - "update_object": true, - "delete_object": true, - "delete_all_objects": true - } - } - }, - "contenttypewithentryupdateerror": { - "content_type": { - "created_at": "2021-06-24T09:59:49.808Z", - "updated_at": "2021-06-24T10:01:00.908Z", - "title": "contenttypewithentryUpdateError", - "uid": "contenttypewithentryupdateerror", - "_version": 2, - "inbuilt_class": false, - "schema": [ - { - "data_type": "text", - "display_name": "Title", - "field_metadata": { - "_default": true, - "version": 3 - }, - "mandatory": true, - "uid": "title", - "unique": true, - "non_localizable": false, - "multiple": false - }, - { - "data_type": "text", - "display_name": "Rich Text Editor", - "uid": "rich_text_editor", - "field_metadata": { - "allow_rich_text": true, - "description": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [], - "version": 3 - }, - "non_localizable": false, - "multiple": false, - "mandatory": false, - "unique": false - }, - { - "data_type": "json", - "display_name": "Supercharged RTE", - "uid": "supercharged_rte", - "field_metadata": { - "allow_json_rte": true, - "description": "", - "default_value": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [] - }, - "format": "", - "error_messages": { - "format": "" - }, - "mandatory": false, - "non_localizable": false, - "multiple": false, - "unique": false - } - ], - "last_activity": {}, - "maintain_revisions": true, - "description": "", - "DEFAULT_ACL": { - "others": { - "read": false, - "create": false - }, - "users": [ - { - "uid": "bltd17749910d177e04", - "read": true, - "sub_acl": { - "read": true - } - } - ] - }, - "SYS_ACL": { - "roles": [ - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - } - ], - "others": { - "read": false, - "create": false, - "update": false, - "delete": false, - "sub_acl": { - "read": false, - "create": false, - "update": false, - "delete": false, - "publish": false - } - } - }, - "options": { - "is_page": false, - "singleton": false, - "sub_title": [], - "title": "title" - }, - "abilities": { - "get_one_object": true, - "get_all_objects": true, - "create_object": true, - "update_object": true, - "delete_object": true, - "delete_all_objects": true - } - } - }, - "contenttypewithfilefield": { - "content_type": { - "created_at": "2021-08-11T08:48:38.491Z", - "updated_at": "2021-08-11T08:50:42.734Z", - "title": "contenttypewithfilefield", - "uid": "contenttypewithfilefield", - "_version": 3, - "inbuilt_class": false, - "schema": [ - { - "data_type": "text", - "display_name": "Title", - "field_metadata": { - "_default": true, - "version": 3 - }, - "mandatory": true, - "uid": "title", - "unique": true, - "non_localizable": false, - "multiple": false - }, - { - "data_type": "file", - "display_name": "File", - "uid": "file", - "extensions": [], - "field_metadata": { - "description": "", - "rich_text_type": "standard" - }, - "mandatory": false, - "multiple": false, - "non_localizable": false, - "unique": false - }, - { - "data_type": "file", - "display_name": "File", - "uid": "asset", - "extensions": [], - "field_metadata": { - "description": "", - "rich_text_type": "standard" - }, - "mandatory": false, - "multiple": false, - "non_localizable": false, - "unique": false - }, - { - "data_type": "blocks", - "display_name": "Modular Blocks", - "blocks": [ - { - "title": "test1", - "uid": "test1", - "schema": [ - { - "data_type": "file", - "display_name": "File", - "uid": "file", - "extensions": [], - "field_metadata": { - "description": "", - "rich_text_type": "standard" - }, - "mandatory": false, - "multiple": true, - "non_localizable": false, - "unique": false - } - ] - } - ], - "multiple": true, - "uid": "modular_blocks", - "field_metadata": { - "instruction": "", - "description": "" - }, - "mandatory": false, - "non_localizable": false, - "unique": false - }, - { - "data_type": "group", - "display_name": "Group", - "field_metadata": { - "description": "", - "instruction": "" - }, - "schema": [ - { - "data_type": "file", - "display_name": "File", - "uid": "file", - "field_metadata": { - "description": "", - "rich_text_type": "standard", - "image": true - }, - "mandatory": false, - "multiple": false, - "non_localizable": false, - "unique": false, - "dimension": { - "width": { - "min": null, - "max": null - }, - "height": { - "min": null, - "max": null - } - } - } - ], - "uid": "group", - "mandatory": false, - "multiple": false, - "non_localizable": false, - "unique": false - }, - { - "data_type": "text", - "display_name": "Rich Text Editor", - "uid": "rich_text_editor", - "field_metadata": { - "allow_rich_text": true, - "description": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [], - "version": 3 - }, - "mandatory": false, - "multiple": false, - "non_localizable": false, - "unique": false - }, - { - "data_type": "json", - "display_name": "JSON Rich Text Editor", - "uid": "json_rte", - "field_metadata": { - "allow_json_rte": true, - "embed_entry": false, - "description": "", - "default_value": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [] - }, - "format": "", - "error_messages": { - "format": "" - }, - "reference_to": [ - "sys_assets" - ], - "mandatory": false, - "non_localizable": false, - "multiple": false, - "unique": false - } - ], - "last_activity": {}, - "maintain_revisions": true, - "description": "", - "DEFAULT_ACL": { - "others": { - "read": false, - "create": false - }, - "users": [ - { - "uid": "bltd17749910d177e04", - "read": true, - "sub_acl": { - "read": true - } - } - ] - }, - "SYS_ACL": { - "roles": [ - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - } - ], - "others": { - "read": false, - "create": false, - "update": false, - "delete": false, - "sub_acl": { - "read": false, - "create": false, - "update": false, - "delete": false, - "publish": false - } - } - }, - "options": { - "is_page": false, - "singleton": true, - "sub_title": [], - "title": "title" - }, - "abilities": { - "get_one_object": true, - "get_all_objects": true, - "create_object": true, - "update_object": true, - "delete_object": true, - "delete_all_objects": true - }, - "extension_uids": [] - } - }, - "rte_images": { - "content_type": { - "created_at": "2021-06-18T08:28:40.550Z", - "updated_at": "2021-06-18T08:29:11.162Z", - "title": "ContentTypeWithSingleRTE", - "uid": "rte_images", - "_version": 2, - "inbuilt_class": false, - "schema": [ - { - "data_type": "text", - "display_name": "Title", - "field_metadata": { - "_default": true, - "version": 3 - }, - "mandatory": true, - "uid": "title", - "unique": true, - "non_localizable": false, - "multiple": false - }, - { - "data_type": "text", - "display_name": "Rich Text Editor", - "uid": "rich_text_editor", - "field_metadata": { - "allow_rich_text": true, - "description": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [], - "version": 3 - }, - "non_localizable": false, - "multiple": false, - "mandatory": false, - "unique": false - }, - { - "data_type": "json", - "display_name": "Supercharged RTE", - "uid": "supercharged_rte", - "field_metadata": { - "allow_json_rte": true, - "description": "", - "default_value": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [] - }, - "format": "", - "error_messages": { - "format": "" - }, - "mandatory": false, - "non_localizable": false, - "multiple": false, - "unique": false - } - ], - "last_activity": {}, - "maintain_revisions": true, - "description": "", - "DEFAULT_ACL": { - "others": { - "read": false, - "create": false - }, - "users": [ - { - "uid": "bltd17749910d177e04", - "read": true, - "sub_acl": { - "read": true - } - } - ] - }, - "SYS_ACL": { - "roles": [ - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltbfe2abeba30ff382", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - }, - { - "uid": "bltfa739fdd274aa467", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - } - }, - { - "uid": "blt6cafb115ee0f0a25", - "read": true, - "sub_acl": { - "create": true, - "read": true, - "update": true, - "delete": true, - "publish": true - }, - "update": true, - "delete": true - } - ], - "others": { - "read": false, - "create": false, - "update": false, - "delete": false, - "sub_acl": { - "read": false, - "create": false, - "update": false, - "delete": false, - "publish": false - } - } - }, - "options": { - "is_page": false, - "singleton": false, - "sub_title": [], - "title": "title" - }, - "abilities": { - "get_one_object": true, - "get_all_objects": true, - "create_object": true, - "update_object": true, - "delete_object": true, - "delete_all_objects": true - } - } - } -} \ No newline at end of file diff --git a/packages/contentstack-migrate-rte/test/dummy/defaultConfig.json b/packages/contentstack-migrate-rte/test/dummy/defaultConfig.json deleted file mode 100644 index 0eb5963a93..0000000000 --- a/packages/contentstack-migrate-rte/test/dummy/defaultConfig.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "apiEndpoint": "http://localhost:8000", - "cdnEndpoint": "https://cdn.contentstack.io", - "apiVersion": 3 -} \ No newline at end of file diff --git a/packages/contentstack-migrate-rte/test/dummy/entriesResponse.json b/packages/contentstack-migrate-rte/test/dummy/entriesResponse.json deleted file mode 100644 index b313313f67..0000000000 --- a/packages/contentstack-migrate-rte/test/dummy/entriesResponse.json +++ /dev/null @@ -1,444 +0,0 @@ -{ - "contenttypewithsinglerte": { - "entries": [ - { - "title": "Entry 2", - "rich_text_editor": "

value 2

", - "tags": [], - "locale": "en-us", - "uid": "blt6168b6493a122849", - "created_by": "blt3943ff6628403515", - "updated_by": "blt3943ff6628403515", - "created_at": "2021-06-18T10:10:35.292Z", - "updated_at": "2021-06-18T10:10:35.292Z", - "ACL": {}, - "_version": 1, - "_in_progress": false - }, - { - "title": "Entry 2", - "rich_text_editor": "

value 2 en-in

", - "tags": [], - "locale": "en-in", - "uid": "blt6168b6493a122849", - "created_by": "blt3943ff6628403515", - "updated_by": "blt3943ff6628403515", - "created_at": "2021-06-18T10:10:35.292Z", - "updated_at": "2021-06-18T10:10:35.292Z", - "ACL": {}, - "_version": 1, - "_in_progress": false - }, - { - "title": "entry 1", - "rich_text_editor": "

value 1

", - "tags": [], - "locale": "en-us", - "uid": "blt94ab8cf0a7956243", - "created_by": "blt3943ff6628403515", - "updated_by": "blt3943ff6628403515", - "created_at": "2021-06-18T10:01:47.035Z", - "updated_at": "2021-06-18T10:01:47.035Z", - "ACL": {}, - "_version": 1, - "_in_progress": false - } - ], - "count": 2 - }, - "contenttype1forglobalfield": { - "entries": [ - { - "title": "test1", - "global_field": { - "rich_text_editor": "

global => richtext

" - }, - "group": { - "global_field": { - "rich_text_editor": "

group => global => rte

" - } - }, - "tags": [], - "locale": "en-us", - "uid": "blt982804d4a39b0197", - "created_by": "blt3943ff6628403515", - "updated_by": "blt3943ff6628403515", - "created_at": "2021-06-21T09:47:49.318Z", - "updated_at": "2021-06-21T09:47:49.318Z", - "ACL": {}, - "_version": 1, - "_in_progress": false - } - ], - "count": 1 - }, - "contenttype2forglobalfield": { - "entries": [ - { - "title": "test1", - "global_field": { - "rich_text_editor": "

global => rte

" - }, - "tags": [], - "locale": "en-us", - "uid": "blta20a822fdd7bcc87", - "created_by": "blt3943ff6628403515", - "updated_by": "blt3943ff6628403515", - "created_at": "2021-06-21T09:50:48.065Z", - "updated_at": "2021-06-21T09:50:48.065Z", - "ACL": {}, - "_version": 1, - "_in_progress": false - } - ], - "count": 1 - }, - "contenttypewithmultiplerte": { - "entries": [ - { - "title": "test1", - "rich_text_editor": [ - "

multiple 1

", - "

mutiple 2

" - ], - "tags": [], - "locale": "en-us", - "uid": "blt55ac0aa11a1dafe9", - "created_by": "blt3943ff6628403515", - "updated_by": "blt3943ff6628403515", - "created_at": "2021-06-22T05:28:36.417Z", - "updated_at": "2021-06-22T05:28:36.417Z", - "ACL": {}, - "_version": 1, - "_in_progress": false - } - ], - "count": 1 - }, - "contenttypewithmodularblock": { - "entries": [ - { - "title": "", - "modular_blocks": [ - { - "test1": { - "rich_text_editor": "

M1

", - "_metadata": { - "uid": "csa15520723d8f9738" - } - } - }, - { - "test1": { - "rich_text_editor": "

m2

", - "_metadata": { - "uid": "csc3ccd3f10d8ceff6" - } - } - }, - { - "test1": { - "rich_text_editor": "

m3

", - "_metadata": { - "uid": "csf2355ddf2979a0a1" - } - } - } - ], - "tags": [], - "locale": "en-us", - "uid": "blte02628730f4d0c3c", - "created_by": "blt3943ff6628403515", - "updated_by": "blt3943ff6628403515", - "created_at": "2021-06-22T08:37:47.911Z", - "updated_at": "2021-06-22T08:37:47.911Z", - "_version": 1, - "_in_progress": true - } - ], - "count": 1 - }, - "contenttypewithgroup": { - "entries": [ - { - "title": "test1", - "group": { - "rich_text_editor": [ - "

rte1

", - "

rte2

" - ] - }, - "tags": [], - "locale": "en-us", - "uid": "blt279161bdc0c77b2d", - "created_by": "blt3943ff6628403515", - "updated_by": "blt3943ff6628403515", - "created_at": "2021-06-22T10:24:00.471Z", - "updated_at": "2021-06-22T10:24:00.471Z", - "ACL": {}, - "_version": 1, - "_in_progress": false - } - ], - "count": 1 - }, - "contenttypewithmultiplegroup": { - "entries": [ - { - "title": "test1", - "group": [ - { - "rich_text_editor": "

instance 1

", - "_metadata": { - "uid": "cs46fbdc80bbb32699" - } - }, - { - "rich_text_editor": "

instance 2

", - "_metadata": { - "uid": "cs9fa775294fcb9aba" - } - } - ], - "tags": [], - "locale": "en-us", - "uid": "bltd939c78b885da314", - "created_by": "blt3943ff6628403515", - "updated_by": "blt3943ff6628403515", - "created_at": "2021-06-22T10:38:00.168Z", - "updated_at": "2021-06-22T10:38:00.168Z", - "ACL": {}, - "_version": 1, - "_in_progress": false - } - ], - "count": 1 - }, - "contenttypewithentryupdateerror": { - "entries": [ - { - "title": "sdsdsds", - "rich_text_editor": "

will give error

", - "tags": [], - "locale": "en-us", - "uid": "blta9b16ac2827c54ed", - "created_by": "blt3943ff6628403515", - "updated_by": "blt3943ff6628403515", - "created_at": "2021-06-24T10:03:39.192Z", - "updated_at": "2021-06-24T10:03:44.173Z", - "_version": 2, - "_in_progress": false - }, - { - "title": "sdsdsdsds", - "rich_text_editor": "

will give error

", - "tags": [], - "locale": "en-us", - "uid": "blta9b16ac2827c54e1", - "created_by": "blt3943ff6628403515", - "updated_by": "blt3943ff6628403515", - "created_at": "2021-06-24T10:03:39.192Z", - "updated_at": "2021-06-24T10:03:44.173Z", - "_version": 2, - "_in_progress": false - } - ], - "count": 2 - }, - "contenttypewithfilefield": { - "entries": [ - { - "title": "This is test", - "file": null, - "asset": { - "uid": "bltab83acc0e405b6f8", - "created_at": "2021-07-26T10:47:48.337Z", - "updated_at": "2021-08-05T06:30:56.359Z", - "created_by": "blt3943ff6628403515", - "updated_by": "blt3943ff6628403515", - "content_type": "image/png", - "file_size": "344996", - "tags": [], - "filename": "image.png", - "url": "***REMOVED***bltab83acc0e405b6f8/60fe92d4fe65cc54a3e7e5c3/image.png", - "ACL": [], - "is_dir": false, - "parent_uid": null, - "_version": 5, - "title": "image.png", - "description": "5", - "dimension": { - "height": 1080, - "width": 1920 - }, - "publish_details": [] - }, - "modular_blocks": [ - { - "test1": { - "file": [ - { - "uid": "bltb13b08635ebffdc4", - "created_at": "2021-03-10T12:51:20.447Z", - "updated_at": "2021-03-10T12:51:20.447Z", - "created_by": "blt3943ff6628403515", - "updated_by": "blt3943ff6628403515", - "content_type": "image/jpeg", - "file_size": "7701", - "tags": [], - "filename": "48558898.jpeg", - "url": "***REMOVED***bltb13b08635ebffdc4/6048c0c887ab224351aab15f/48558898.jpeg", - "ACL": [], - "is_dir": false, - "parent_uid": null, - "_version": 1, - "title": "48558898.jpeg", - "dimension": { - "height": 275, - "width": 183 - }, - "publish_details": [] - }, - { - "uid": "bltb85f710a4a984858", - "created_at": "2021-03-10T13:37:22.523Z", - "updated_at": "2021-07-22T12:20:20.026Z", - "created_by": "blt3943ff6628403515", - "updated_by": "blt6436c4ee410b7913", - "content_type": "image/jpeg", - "file_size": "5403", - "tags": [], - "filename": "download.jpeg", - "url": "***REMOVED***bltb85f710a4a984858/6049fa897477c27b7b34443d/download.jpeg", - "ACL": [], - "is_dir": false, - "parent_uid": null, - "_version": 37, - "title": "This is test1", - "description": "test1", - "dimension": { - "height": 194, - "width": 259 - }, - "publish_details": [] - }, - { - "uid": "blt3d60320b8e0b9b0a", - "created_at": "2021-03-04T10:36:08.977Z", - "updated_at": "2021-03-04T10:36:08.977Z", - "created_by": "blt3943ff6628403515", - "updated_by": "blt3943ff6628403515", - "content_type": "image/jpeg", - "file_size": "5906", - "tags": [], - "filename": "download_(2).jpeg", - "url": "***REMOVED***blt3d60320b8e0b9b0a/6040b819116a7015b467265e/download_(2).jpeg", - "ACL": [], - "is_dir": false, - "parent_uid": null, - "_version": 1, - "title": "download_(2).jpeg", - "dimension": { - "height": 183, - "width": 275 - }, - "publish_details": [] - } - ], - "_metadata": { - "uid": "csd629a3435c480311" - } - } - }, - { - "test1": { - "file": [ - { - "uid": "bltab83acc0e405b6f8", - "created_at": "2021-07-26T10:47:48.337Z", - "updated_at": "2021-08-05T06:30:56.359Z", - "created_by": "blt3943ff6628403515", - "updated_by": "blt3943ff6628403515", - "content_type": "image/png", - "file_size": "344996", - "tags": [], - "filename": "image.png", - "url": "***REMOVED***bltab83acc0e405b6f8/60fe92d4fe65cc54a3e7e5c3/image.png", - "ACL": [], - "is_dir": false, - "parent_uid": null, - "_version": 5, - "title": "image.png", - "description": "5", - "dimension": { - "height": 1080, - "width": 1920 - }, - "publish_details": [] - } - ], - "_metadata": { - "uid": "cs2fc2c61d898700d9" - } - } - } - ], - "group": { - "file": { - "uid": "bltab83acc0e405b6f8", - "created_at": "2021-07-26T10:47:48.337Z", - "updated_at": "2021-08-05T06:30:56.359Z", - "created_by": "blt3943ff6628403515", - "updated_by": "blt3943ff6628403515", - "content_type": "image/png", - "file_size": "344996", - "tags": [], - "filename": "image.png", - "url": "***REMOVED***bltab83acc0e405b6f8/60fe92d4fe65cc54a3e7e5c3/image.png", - "ACL": [], - "is_dir": false, - "parent_uid": null, - "_version": 5, - "title": "image.png", - "description": "5", - "dimension": { - "height": 1080, - "width": 1920 - }, - "publish_details": [] - } - }, - "rich_text_editor": "

This is test

", - "tags": [], - "locale": "en-us", - "uid": "bltcbf22e3759df80ef", - "created_by": "blt3943ff6628403515", - "updated_by": "blt3943ff6628403515", - "created_at": "2021-08-11T08:57:28.614Z", - "updated_at": "2021-08-11T08:57:28.614Z", - "_version": 1, - "_in_progress": false - } - ], - "count": 1 - }, - "rte_images": { - "entries": [ - { - "title": "Entry 2", - "rich_text_editor": "

", - "tags": [], - "locale": "en-us", - "uid": "blt6168b6493a122849", - "created_by": "blt3943ff6628403515", - "updated_by": "blt3943ff6628403515", - "created_at": "2021-06-18T10:10:35.292Z", - "updated_at": "2021-06-18T10:10:35.292Z", - "ACL": {}, - "_version": 1, - "_in_progress": false - } - ], - "count": 1 - } -} \ No newline at end of file diff --git a/packages/contentstack-migrate-rte/test/dummy/expectedEntriesResponse.json b/packages/contentstack-migrate-rte/test/dummy/expectedEntriesResponse.json deleted file mode 100644 index bfee8fe075..0000000000 --- a/packages/contentstack-migrate-rte/test/dummy/expectedEntriesResponse.json +++ /dev/null @@ -1,663 +0,0 @@ -{ - "contenttypewithsinglerte": { - "blt6168b6493a122849": { - "entry": { - "content_type_uid": "contenttypewithsinglerte", - "title": "Entry 2", - "rich_text_editor": "

value 2

", - "supercharged_rte": { - "attrs": { - "dirty": true - }, - "children": [ - { - "type": "p", - "attrs": { - "dirty": true - }, - "children": [ - { - "text": "value 2" - } - ] - } - ], - "type": "doc" - }, - "tags": [], - "locale": "en-us", - "uid": "blt6168b6493a122849", - "ACL": {}, - "_version": 1, - "_in_progress": false - } - }, - "blt6168b6493a122849_en-in": { - "entry": { - "content_type_uid": "contenttypewithsinglerte", - "title": "Entry 2", - "rich_text_editor": "

value 2 en-in

", - "tags": [ - ], - "locale": "en-in", - "ACL": { - }, - "_version": 1, - "_in_progress": false, - "supercharged_rte": { - "type": "doc", - "attrs": { - "dirty": true - }, - "children": [ - { - "type": "p", - "attrs": { - "dirty": true - }, - "children": [ - { - "text": "value 2 en-in" - } - ] - } - ] - } - } - }, - "blt94ab8cf0a7956243": { - "entry": { - "content_type_uid": "contenttypewithsinglerte", - "title": "entry 1", - "rich_text_editor": "

value 1

", - "supercharged_rte": { - "attrs": { - "dirty": true - }, - "children": [ - { - "type": "p", - "attrs": { - "dirty": true - }, - "children": [ - { - "text": "value 1" - } - ] - } - ], - "type": "doc" - }, - "tags": [], - "locale": "en-us", - "uid": "blt94ab8cf0a7956243", - "ACL": {}, - "_version": 1, - "_in_progress": false - } - } - }, - "contenttype1forglobalfield": { - "blt982804d4a39b0197": { - "entry": { - "content_type_uid": "contenttype1forglobalfield", - "title": "test1", - "global_field": { - "rich_text_editor": "

global => richtext

", - "supercharged_rte": { - "uid": "***REMOVED***", - "attrs": { - "dirty": true - }, - "children": [ - { - "type": "p", - "attrs": { - "dirty": true - }, - "uid": "***REMOVED***", - "children": [ - { - "text": "global => richtext" - } - ] - } - ], - "type": "doc" - } - }, - "group": { - "global_field": { - "rich_text_editor": "

group => global => rte

", - "supercharged_rte": { - "uid": "***REMOVED***", - "attrs": { - "dirty": true - }, - "children": [ - { - "type": "p", - "attrs": { - "dirty": true - }, - "uid": "***REMOVED***", - "children": [ - { - "text": "group => global => rte" - } - ] - } - ], - "type": "doc" - } - } - }, - "tags": [], - "locale": "en-us", - "uid": "blt982804d4a39b0197", - "ACL": {}, - "_version": 1, - "_in_progress": false - } - } - }, - "contenttype2forglobalfield": { - "blta20a822fdd7bcc87": { - "entry": { - "content_type_uid": "contenttype2forglobalfield", - "title": "test1", - "global_field": { - "rich_text_editor": "

global => rte

", - "supercharged_rte": { - "uid": "***REMOVED***", - "attrs": { - "dirty": true - }, - "children": [ - { - "type": "p", - "attrs": { - "dirty": true - }, - "uid": "***REMOVED***", - "children": [ - { - "text": "global => rte" - } - ] - } - ], - "type": "doc" - } - }, - "tags": [], - "locale": "en-us", - "uid": "blta20a822fdd7bcc87", - "ACL": {}, - "_version": 1, - "_in_progress": false - } - } - }, - "contenttypewithmultiplerte": { - "blt55ac0aa11a1dafe9": { - "entry": { - "content_type_uid": "contenttypewithmultiplerte", - "title": "test1", - "rich_text_editor": [ - "

multiple 1

", - "

mutiple 2

" - ], - "tags": [], - "locale": "en-us", - "uid": "blt55ac0aa11a1dafe9", - "ACL": {}, - "_version": 1, - "_in_progress": false, - "supercharged_rte": [ - { - "uid": "***REMOVED***", - "attrs": { - "dirty": true - }, - "children": [ - { - "type": "p", - "attrs": { - "dirty": true - }, - "uid": "***REMOVED***", - "children": [ - { - "text": "multiple 1" - } - ] - } - ], - "type": "doc" - }, - { - "uid": "***REMOVED***", - "attrs": { - "dirty": true - }, - "children": [ - { - "type": "p", - "attrs": { - "dirty": true - }, - "uid": "***REMOVED***", - "children": [ - { - "text": "mutiple 2" - } - ] - } - ], - "type": "doc" - } - ] - } - } - }, - "contenttypewithmodularblock": { - "blte02628730f4d0c3c": { - "entry": { - "content_type_uid": "contenttypewithmodularblock", - "title": "", - "modular_blocks": [ - { - "test1": { - "rich_text_editor": "

M1

", - "_metadata": { - "uid": "csa15520723d8f9738" - }, - "supercharged_rte": { - "uid": "***REMOVED***", - "attrs": { - "dirty": true - }, - "children": [ - { - "type": "p", - "attrs": { - "dirty": true - }, - "uid": "***REMOVED***", - "children": [ - { - "text": "M1" - } - ] - } - ], - "type": "doc" - } - } - }, - { - "test1": { - "rich_text_editor": "

m2

", - "_metadata": { - "uid": "csc3ccd3f10d8ceff6" - }, - "supercharged_rte": { - "uid": "***REMOVED***", - "attrs": { - "dirty": true - }, - "children": [ - { - "type": "p", - "attrs": { - "dirty": true - }, - "uid": "***REMOVED***", - "children": [ - { - "text": "m2" - } - ] - } - ], - "type": "doc" - } - } - }, - { - "test1": { - "rich_text_editor": "

m3

", - "_metadata": { - "uid": "csf2355ddf2979a0a1" - }, - "supercharged_rte": { - "uid": "***REMOVED***", - "attrs": { - "dirty": true - }, - "children": [ - { - "type": "p", - "attrs": { - "dirty": true - }, - "uid": "***REMOVED***", - "children": [ - { - "text": "m3" - } - ] - } - ], - "type": "doc" - } - } - } - ], - "tags": [], - "locale": "en-us", - "uid": "blte02628730f4d0c3c", - "_version": 1, - "_in_progress": true - } - } - }, - "contenttypewithgroup": { - "blt279161bdc0c77b2d": { - "entry": { - "content_type_uid": "contenttypewithgroup", - "title": "test1", - "group": { - "rich_text_editor": [ - "

rte1

", - "

rte2

" - ], - "supercharged_rte": [ - { - "uid": "***REMOVED***", - "attrs": { - "dirty": true - }, - "children": [ - { - "type": "p", - "attrs": { - "dirty": true - }, - "uid": "***REMOVED***", - "children": [ - { - "text": "rte1" - } - ] - } - ], - "type": "doc" - }, - { - "uid": "***REMOVED***", - "attrs": { - "dirty": true - }, - "children": [ - { - "type": "p", - "attrs": { - "dirty": true - }, - "uid": "***REMOVED***", - "children": [ - { - "text": "rte2" - } - ] - } - ], - "type": "doc" - } - ] - }, - "tags": [], - "locale": "en-us", - "uid": "blt279161bdc0c77b2d", - "ACL": {}, - "_version": 1, - "_in_progress": false - } - } - }, - "contenttypewithmultiplegroup": { - "bltd939c78b885da314": { - "entry": { - "content_type_uid": "contenttypewithmultiplegroup", - "title": "test1", - "group": [ - { - "rich_text_editor": "

instance 1

", - "_metadata": { - "uid": "cs46fbdc80bbb32699" - }, - "supercharged_rte": { - "uid": "***REMOVED***", - "attrs": { - "dirty": true - }, - "children": [ - { - "type": "p", - "attrs": { - "dirty": true - }, - "uid": "***REMOVED***", - "children": [ - { - "text": "instance 1" - } - ] - } - ], - "type": "doc" - } - }, - { - "rich_text_editor": "

instance 2

", - "_metadata": { - "uid": "cs9fa775294fcb9aba" - }, - "supercharged_rte": { - "uid": "***REMOVED***", - "attrs": { - "dirty": true - }, - "children": [ - { - "type": "p", - "attrs": { - "dirty": true - }, - "uid": "***REMOVED***", - "children": [ - { - "text": "instance 2" - } - ] - } - ], - "type": "doc" - } - } - ], - "tags": [], - "locale": "en-us", - "uid": "bltd939c78b885da314", - "ACL": {}, - "_version": 1, - "_in_progress": false - } - } - }, - "contenttypewithfilefield": { - "bltcbf22e3759df80ef": { - "entry": { - "content_type_uid": "contenttypewithfilefield", - "title": "This is test", - "file": null, - "asset": "bltab83acc0e405b6f8", - "modular_blocks": [ - { - "test1": { - "file": [ - "bltb13b08635ebffdc4", - "bltb85f710a4a984858", - "blt3d60320b8e0b9b0a" - ], - "_metadata": {} - } - }, - { - "test1": { - "file": [ - "bltab83acc0e405b6f8" - ], - "_metadata": {} - } - } - ], - "group": { - "file": "bltab83acc0e405b6f8" - }, - "rich_text_editor": "

This is test

", - "tags": [], - "locale": "en-us", - "_version": 1, - "_in_progress": false, - "json_rte": { - "type": "doc", - "attrs": { - "dirty": true - }, - "children": [ - { - "type": "p", - "attrs": { - "dirty": true - }, - "children": [ - { - "text": "This is test" - } - ] - } - ] - } - } - } - }, - "rte_images": { - "blt6168b6493a122849": { - "entry": { - "content_type_uid": "rte_images", - "title": "Entry 2", - "rich_text_editor": "

", - "supercharged_rte": { - "type": "doc", - "uid": "***REMOVED***", - "attrs": { - "dirty": true - }, - "children": [ - { - "type": "p", - "attrs": { - "dirty": true - }, - "uid": "***REMOVED***", - "children": [ - { - "text": "" - } - ] - }, - { - "type": "reference", - "attrs": { - "asset-name": "landscape-3.jpg", - "content-type-uid": "sys_assets", - "asset-link": "***REMOVED***8e12437ac2679e/bltfea8157ddfb8e776/6329f1106a7f7364973c028c/landscape-3.jpg", - "asset-type": "image/jpg", - "display-type": "display", - "type": "asset", - "asset-uid": "bltfea8157ddfb8e776", - "style": { - "width": "194px", - "height": "auto" - }, - "redactor-attributes": { - "asset_uid": "bltfea8157ddfb8e776", - "height": "auto", - "src": "***REMOVED***8e12437ac2679e/bltfea8157ddfb8e776/6329f1106a7f7364973c028c/landscape-3.jpg", - "width": "194", - "max-width": "194", - "style": "width: 194px; height: auto;" - }, - "width": 194, - "dirty": true - }, - "uid": "***REMOVED***", - "children": [ - { - "text": "" - } - ] - }, - { - "type": "fragment", - "attrs": { - "dirty": true - }, - "uid": "***REMOVED***", - "children": [ - { - "text": " " - } - ] - }, - { - "type": "img", - "attrs": { - "url": "***REMOVED***8e12437ac2679e/bltfea8157ddfb8e776/6329f1106a7f7364973c028c/landscape-3.jpg", - "style": { - "width": "194px", - "height": "auto" - }, - "redactor-attributes": { - "height": "auto", - "src": "***REMOVED***8e12437ac2679e/bltfea8157ddfb8e776/6329f1106a7f7364973c028c/landscape-3.jpg", - "width": "194", - "max-width": "194", - "style": "width: 194px; height: auto;" - }, - "width": 194, - "dirty": true - }, - "uid": "***REMOVED***", - "children": [ - { - "text": "" - } - ] - } - ] - }, - "tags": [], - "locale": "en-us", - "uid": "blt6168b6493a122849", - "ACL": {}, - "_version": 1, - "_in_progress": false - } - } - } -} \ No newline at end of file diff --git a/packages/contentstack-migrate-rte/test/dummy/globalFieldResponse.json b/packages/contentstack-migrate-rte/test/dummy/globalFieldResponse.json deleted file mode 100644 index c482d60d4e..0000000000 --- a/packages/contentstack-migrate-rte/test/dummy/globalFieldResponse.json +++ /dev/null @@ -1,257 +0,0 @@ -{ - "globalfieldformigration": { - "global_field": { - "created_at": "2021-06-21T09:31:40.548Z", - "updated_at": "2021-06-21T09:31:40.548Z", - "title": "globalFieldForMigration", - "uid": "globalfieldformigration", - "_version": 1, - "inbuilt_class": false, - "schema": [ - { - "data_type": "text", - "display_name": "Rich Text Editor", - "uid": "rich_text_editor", - "field_metadata": { - "allow_rich_text": true, - "description": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [], - "version": 3 - }, - "non_localizable": false, - "multiple": false, - "mandatory": false, - "unique": false - }, - { - "data_type": "json", - "display_name": "Supercharged RTE", - "uid": "supercharged_rte", - "field_metadata": { - "allow_json_rte": true, - "description": "", - "default_value": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [] - }, - "format": "", - "error_messages": { - "format": "" - }, - "mandatory": false, - "non_localizable": false, - "multiple": false, - "unique": false - } - ], - "last_activity": {}, - "maintain_revisions": true, - "description": "", - "referred_content_types": [ - { - "uid": "contenttype1forglobalfield", - "title": "contentType1ForglobalField" - }, - { - "uid": "contenttype2forglobalfield", - "title": "contenttype2forglobalfield" - } - ] - } - }, - "globalfieldwithemptyschema": { - "global_field": { - "created_at": "2021-06-21T09:31:40.548Z", - "updated_at": "2021-06-21T09:31:40.548Z", - "title": "globalfieldwithemptyschema", - "uid": "globalfieldwithemptyschema", - "_version": 1, - "inbuilt_class": false, - "schema": [], - "last_activity": {}, - "maintain_revisions": true, - "description": "", - "referred_content_types": [ - { - "uid": "contenttypewithemptyschema", - "title": "contenttypewithemptyschema" - } - ] - } - }, - "globalfieldwithemptyschemacontenttype": { - "global_field": { - "created_at": "2021-06-21T09:31:40.548Z", - "updated_at": "2021-06-21T09:31:40.548Z", - "title": "globalfieldwithemptyschemacontenttype", - "uid": "globalfieldwithemptyschemacontenttype", - "_version": 1, - "inbuilt_class": false, - "schema": [ - { - "data_type": "text", - "display_name": "Rich Text Editor", - "uid": "rich_text_editor", - "field_metadata": { - "allow_rich_text": true, - "description": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [], - "version": 3 - }, - "non_localizable": false, - "multiple": false, - "mandatory": false, - "unique": false - }, - { - "data_type": "json", - "display_name": "Supercharged RTE", - "uid": "supercharged_rte", - "field_metadata": { - "allow_json_rte": true, - "description": "", - "default_value": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [] - }, - "format": "", - "error_messages": { - "format": "" - }, - "mandatory": false, - "non_localizable": false, - "multiple": false, - "unique": false - } - ], - "last_activity": {}, - "maintain_revisions": true, - "description": "", - "referred_content_types": [ - { - "uid": "contenttypewithemptyschema", - "title": "contenttypewithemptyschema" - } - ] - } - }, - "globalfieldwithemptycontenttype": { - "global_field": { - "created_at": "2021-06-21T09:31:40.548Z", - "updated_at": "2021-06-21T09:31:40.548Z", - "title": "globalFieldForMigration", - "uid": "globalfieldformigration", - "_version": 1, - "inbuilt_class": false, - "schema": [ - { - "data_type": "text", - "display_name": "Rich Text Editor", - "uid": "rich_text_editor", - "field_metadata": { - "allow_rich_text": true, - "description": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [], - "version": 3 - }, - "non_localizable": false, - "multiple": false, - "mandatory": false, - "unique": false - }, - { - "data_type": "json", - "display_name": "Supercharged RTE", - "uid": "supercharged_rte", - "field_metadata": { - "allow_json_rte": true, - "description": "", - "default_value": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [] - }, - "format": "", - "error_messages": { - "format": "" - }, - "mandatory": false, - "non_localizable": false, - "multiple": false, - "unique": false - } - ], - "last_activity": {}, - "maintain_revisions": true, - "description": "", - "referred_content_types": [] - } - }, - "globalfieldwithinvalidcontenttype": { - "global_field": { - "created_at": "2021-06-21T09:31:40.548Z", - "updated_at": "2021-06-21T09:31:40.548Z", - "title": "globalFieldForMigration", - "uid": "globalfieldformigration", - "_version": 1, - "inbuilt_class": false, - "schema": [ - { - "data_type": "text", - "display_name": "Rich Text Editor", - "uid": "rich_text_editor", - "field_metadata": { - "allow_rich_text": true, - "description": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [], - "version": 3 - }, - "non_localizable": false, - "multiple": false, - "mandatory": false, - "unique": false - }, - { - "data_type": "json", - "display_name": "Supercharged RTE", - "uid": "supercharged_rte", - "field_metadata": { - "allow_json_rte": true, - "description": "", - "default_value": "", - "multiline": false, - "rich_text_type": "advanced", - "options": [] - }, - "format": "", - "error_messages": { - "format": "" - }, - "mandatory": false, - "non_localizable": false, - "multiple": false, - "unique": false - } - ], - "last_activity": {}, - "maintain_revisions": true, - "description": "", - "referred_content_types": [ - { - "uid": "contenttypewithemptyschema", - "title": "contenttypewithemptyschema" - } - ] - } - } -} \ No newline at end of file diff --git a/packages/contentstack-migrate-rte/test/mocha.opts b/packages/contentstack-migrate-rte/test/mocha.opts deleted file mode 100644 index c6d1cb290c..0000000000 --- a/packages/contentstack-migrate-rte/test/mocha.opts +++ /dev/null @@ -1,3 +0,0 @@ ---recursive ---reporter spec ---timeout 5000 diff --git a/packages/contentstack-migrate-rte/test/utils/index.js b/packages/contentstack-migrate-rte/test/utils/index.js deleted file mode 100644 index 2d10fe667f..0000000000 --- a/packages/contentstack-migrate-rte/test/utils/index.js +++ /dev/null @@ -1,140 +0,0 @@ -const { find } = require('lodash') -const contentTypeResponse = require('../dummy/contentTypeResponse.json') -const entriesResponse = require('../dummy/entriesResponse.json') -const expectedResponse = require('../dummy/expectedEntriesResponse.json') -const globalFieldResponse = require('../dummy/globalFieldResponse.json') -const dummyToken = { - test1: { - token: 'testManagementToken', - apiKey: 'testApiKey', - type: 'management', - }, -} -function getToken(alias) { - if (dummyToken[alias]) { - return dummyToken[alias] - } - throw new Error('Token with alias ' + "'" + alias + "'" + ' was not found') -} -function getGlobalField(uid) { - if (globalFieldResponse[uid]) { - return [200, globalFieldResponse[uid]] - } - return [422, { - error_message: `The Global Field '${uid}' was not found. Please try again.`, - error_code: 118, - errors: { - uid: [ - 'is not valid.', - ], - }, - }] -} -function getContentType(uid) { - if (contentTypeResponse[uid]) { - return [200, contentTypeResponse[uid]] - } - - return [422, { - error_message: `The Content Type '${uid}' was not found. Please try again.`, - error_code: 118, - errors: { - uid: [ - 'is not valid.', - ], - }, - }] -} -function getEntriesOnlyUID(contentstackTypeUid,locale = 'en-us') { - if (entriesResponse[contentstackTypeUid]) { - const entries = entriesResponse[contentstackTypeUid] - const allEntries = entries.entries.filter(entry => entry.locale === locale).map(entry => ({uid:entry.uid})) - return { - entries: allEntries, - count: allEntries.length - } - } - return { - error_message: `The Content Type '${contentstackTypeUid}' was not found. Please try again.`, - error_code: 118, - errors: { - uid: [ - 'is not valid.', - ], - }, - } -} -function getEntries(contentstackTypeUid,locale = "en-us") { - if (entriesResponse[contentstackTypeUid]) { - const entries = entriesResponse[contentstackTypeUid] - return { - entries: entries.entries.filter(entry => entry.locale === locale), - count: entries.entries.filter(entry => entry.locale === locale).length - } - } - return { - error_message: `The Content Type '${contentstackTypeUid}' was not found. Please try again.`, - error_code: 118, - errors: { - uid: [ - 'is not valid.', - ], - }, - } -} -function getEntry(contentstackTypeUid, entryUid, locale = "en-us") { - if (entriesResponse[contentstackTypeUid]) { - const entries = entriesResponse[contentstackTypeUid] - const entry = find(entries.entries, { uid: entryUid, locale }) - const masterEntry = find(entries.entries, { uid: entryUid, locale: 'en-us' }) - if (entry) { - return { - entry - } - } else { - if (masterEntry) { - return { - entry: masterEntry - } - } else { - return { - "error_message": "The requested object doesn't exist.", - "error_code": 141, - "errors": { - "uid": [ - "is not valid." - ] - } - } - } - } - } - return { - "error_message": "The requested object doesn't exist.", - "error_code": 141, - "errors": { - "uid": [ - "is not valid." - ] - } - } -} -function getExpectedOutput(contentTypeUid, entryUid,locale = "en-us") { - let entrySuffix = '' - if (locale !== 'en-us') { - entrySuffix = '_' + locale - } - if (expectedResponse[contentTypeUid] && expectedResponse[contentTypeUid][`${entryUid}${entrySuffix}`]) { - return expectedResponse[contentTypeUid][`${entryUid}${entrySuffix}`] - } - return {} -} -module.exports = { - getToken, - getContentType, - getEntries, - getExpectedOutput, - getGlobalField, - getEntriesOnlyUID, - getEntry -} diff --git a/packages/contentstack-migration/docs/api-reference.md b/packages/contentstack-migration/docs/api-reference.md index da8e9a473f..42a4d7a38e 100644 --- a/packages/contentstack-migration/docs/api-reference.md +++ b/packages/contentstack-migration/docs/api-reference.md @@ -474,4 +474,4 @@ migration.addTask(task) File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s ----------|---------|----------|---------|---------|------------------- All files | 0 | 0 | 0 | 0 | -----------|---------|----------|---------|---------|------------------- +----------|---------|----------|---------|---------|------------------- \ No newline at end of file diff --git a/packages/contentstack-migration/examples/taxonomies/import-taxonomies.js b/packages/contentstack-migration/examples/taxonomies/import-taxonomies.js deleted file mode 100644 index 586224e3e0..0000000000 --- a/packages/contentstack-migration/examples/taxonomies/import-taxonomies.js +++ /dev/null @@ -1,152 +0,0 @@ -const fs = require('fs'); -const path = require('path'); -const fastcsv = require('fast-csv'); - -module.exports = ({ migration, stackSDKInstance, managementAPIClient, config }) => { - const dataDir = config['data-dir']; - const delimiter = config['delimiter'] ?? ','; // default comma - const locale = config['locale']; - const includeFallback = config['include_fallback'] ?? false; - //parent and child term pointer - let parentDetails = { taxonomy_uid: '' }; - let stack; - let depth = 1, - parentUID = null; - let taxonomies = {}; - - const stackClient = () => { - return managementAPIClient.stack({ api_key: stackSDKInstance.api_key }); - }; - - const pushTaxonomyDetails = async (apiData) => { - if (!taxonomies[apiData?.uid]) taxonomies[apiData?.uid] = { taxonomy: apiData }; - }; - - const pushTermDetails = async (apiData) => { - if (taxonomies[apiData?.taxonomy_uid]) { - const terms = (taxonomies[apiData.taxonomy_uid].terms ||= []); - terms.push({ uid: apiData.uid, name: apiData.name, parent_uid: apiData.parent_uid }); - } - }; - - function handleErrorMsg(err) { - let errMsg; - if (err?.errorMessage || err?.message) { - errMsg = - err?.errorMessage || err?.errors?.taxonomy || err?.errors?.term || JSON.stringify(err?.errors) || err?.message; - } - throw errMsg ?? err; - } - - const readCsv = (path, options) => { - return new Promise((resolve, reject) => { - const taxonomies = []; - fastcsv - .parseFile(path, options) - .on('error', reject) - .on('data', (data) => { - taxonomies.push(data); - }) - .on('end', () => { - resolve(taxonomies); - }); - }); - }; - - const importTaxonomies = async () => { - for (const taxonomyUID in taxonomies) { - const filePath = path.resolve(process.cwd(), `${taxonomyUID}.json`); - if (!fs.existsSync(filePath)) { - fs.writeFileSync(filePath, JSON.stringify(taxonomies[taxonomyUID])); - } - const queryParam = {}; - if (locale) { - queryParam.locale = locale; - queryParam.include_fallback = includeFallback; - } - - await stack - .taxonomy() - .import({ taxonomy: filePath }, queryParam) - .then(() => console.log(`Taxonomy ${taxonomyUID} migrated successfully!`)) - .catch((err) => { - handleErrorMsg(err); - }); - fs.unlinkSync(filePath); - } - }; - - const toSnakeCase = (str) => - str - .match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g) - .map((x) => x.toLowerCase()) - .join('_'); - - const createTaxonomyTask = (params) => { - return { - title: 'Create Taxonomies', - successMessage: 'Taxonomies created successfully!', - failedMessage: 'Failed to create taxonomies!', - task: async (params) => { - try { - stack = stackClient(); - if (!fs.existsSync(dataDir)) throw new Error(`No Taxonomies folder found! - ${dataDir}`); - const taxonomies = await readCsv(dataDir, { headers: true, delimiter }); - - if (!taxonomies?.length) throw new Error('No Taxonomies found!'); - - for (const taxDetails of taxonomies) { - const taxonomyName = taxDetails['Taxonomy Name'] ?? ''; - const taxonomyUID = taxDetails['Taxonomy Uid'] ?? ''; - const taxonomyDesc = taxDetails['Taxonomy Description'] ?? ''; - //taxonomy name required - if (taxonomyName) { - const reqTaxonomyObj = { - name: taxonomyName, - uid: taxonomyUID ?? toSnakeCase(taxonomyName), - description: taxonomyDesc, - }; - parentDetails = { taxonomy_uid: reqTaxonomyObj.uid }; - await pushTaxonomyDetails(reqTaxonomyObj); - } else if (!taxonomyName && parentDetails['taxonomy_uid']) { - const column = Object.keys(taxDetails).find((col) => taxDetails[col] !== ''); - if (!column) continue; - - const termLevel = (column.match(/Level \d+/) || [''])[0]; // Output:- Level 1/Level 2 - const termDepth = +termLevel.replace(/\D/g, ''); // fetch depth from header - const termName = taxDetails[`${termLevel} Term Name`] ?? ''; - - //term name required field to generate term uid - if (termName && termDepth) { - const termUID = taxDetails[`${termLevel} Term Uid`] || toSnakeCase(termName); - //Handled cases - //1.child term case 2.sibling term 3.different parent term parentUID = parentDetails[termDepth - 1] || null - //4.parent term -> parentUID = null & depth=1 - parentUID = parentDetails[termDepth - 1] || (termDepth === 1 ? null : parentUID); - depth = termDepth; - parentDetails[depth] = termUID; - const reqTermObj = { - uid: termUID, - name: termName, - parent_uid: parentUID, - taxonomy_uid: parentDetails['taxonomy_uid'], - }; - await pushTermDetails(reqTermObj); - } - } - } - - // create json file & remove it after migrating taxonomy - await importTaxonomies(); - } catch (error) { - throw error; - } - }, - }; - }; - if (config?.['data-dir']) { - migration.addTask(createTaxonomyTask()); - } else { - console.error('Please provide config using --config data-dir:""'); - } -}; diff --git a/packages/contentstack-migration/examples/taxonomies/test_taxonomies.csv b/packages/contentstack-migration/examples/taxonomies/test_taxonomies.csv deleted file mode 100644 index 67e9e2b36d..0000000000 --- a/packages/contentstack-migration/examples/taxonomies/test_taxonomies.csv +++ /dev/null @@ -1,21 +0,0 @@ -Taxonomy Name,Taxonomy Uid,Taxonomy Description,Taxonomy Locale, Level 1 Term Name,Level 1 Term Uid,Level 1 Term Locale,Level 2 Term Name,Level 2 Term Uid,Level 2 Term Locale,Level 3 Term Name,Level 3 Term Uid,Level 3 Term Locale,Level 4 Term Name,Level 4 Term Uid,Level 4 Term Locale,Level 5 Term Name,Level 5 Term Uid,Level 5 Term Locale,Level 6 Term Name,Level 6 Term Uid,Level 6 Term Locale,Level 7 Term Name,Level 7 Term Uid,Level 7 Term Locale,Level 8 Term Name,Level 8 Term Uid,Level 8 Term Locale,Level 9 Term Name,Level 9 Term Uid,Level 9 Term Locale,Level 10 Term Name,Level 10 Term Uid,Level 10 Term Locale -Regions,regions,A Taxonomy which focuses on the categorization of various regions & it's sub regions,en-us,,,,,,,,,,,,,,,,,,,, -,,,,EMEA,emea,en-us,,,,,,,,,,,,,,,,,, -,,,,,,,Europe,europe,en-us,,,,,,,,,,,,,,,, -,,,,,,,Middle East,middle_east,en-us,,,,,,,,,,,,,,,, -,,,,,,,Africa,africa,en-us,,,,,,,,,,,,,,,, -,,,,APAC,apac,en-us,,,,,,,,,,,,,,,,,, -,,,,,,,Asia,asia,en-us,,,,,,,,,,,,,,,, -,,,,,,,,,,Northeastern Asia,northeastern_asia,en-us,,,,,,,,,,,,,, -,,,,,,,,,,Central and South Asia,central_and_south_asia,en-us,,,,,,,,,,,,,, -,,,,,,,,,,,,,Central Asia,central_asia,en-us,,,,,,,,,,,, -,,,,,,,,,,,,,South Asia,south_asia,en-us,,,,,,,,,,,, -,,,,,,,,,,,,,India,india,en-us,,,,,,,,,, -,,,,,,,,,,,,,,,,Maharashtra,maharashtra,en-us,,,,,,,, -,,,,,,,,,,,,,,,,,,,Mumbai,mumbai,en-us,,,,,, -,,,,,,,,,,Southeastern Asia,southeastern_asia,en-us,,,,,,,,,,,,,, -,,,,,,,Pacific,pacific,en-us,,,,,,,,,,,,,,,, -clothes,clothes,categorization of various clothes,en-us,,,,,,,,,,,,,,,,,,,, -,,,,Casual wear,casual,en-us,,,,,,,,,,,,,,,,,, -,,,,Formal wear,formal,en-us,,,,,,,,,,,,,,,,,, -,,,,Sports wear,sports,en-us,,,,,,,,,,,,,,,,,, \ No newline at end of file diff --git a/packages/contentstack-migration/package.json b/packages/contentstack-migration/package.json index 03cdc2e4e9..16931f722d 100644 --- a/packages/contentstack-migration/package.json +++ b/packages/contentstack-migration/package.json @@ -1,6 +1,6 @@ { "name": "@contentstack/cli-migration", - "version": "1.8.2", + "version": "2.0.0-beta", "author": "@contentstack", "bugs": "https://github.com/contentstack/cli/issues", "dependencies": { diff --git a/packages/contentstack-migration/src/modules/fields.js b/packages/contentstack-migration/src/modules/fields.js index 0b6e69f9e6..a534d099c9 100644 --- a/packages/contentstack-migration/src/modules/fields.js +++ b/packages/contentstack-migration/src/modules/fields.js @@ -336,4 +336,4 @@ class Field extends Base { } } -module.exports = Field; +module.exports = Field; \ No newline at end of file diff --git a/packages/contentstack/README.md b/packages/contentstack/README.md index 61d3f6846f..8214a98e8c 100644 --- a/packages/contentstack/README.md +++ b/packages/contentstack/README.md @@ -18,7 +18,7 @@ $ npm install -g @contentstack/cli $ csdx COMMAND running command... $ csdx (--version|-v) -@contentstack/cli/2.0.0-beta.1 darwin-arm64 node-v22.14.0 +@contentstack/cli/2.0.0-beta.2 darwin-arm64 node-v22.14.0 $ csdx --help [COMMAND] USAGE $ csdx COMMAND @@ -57,7 +57,6 @@ USAGE * [`csdx cm:bulk-publish:revert`](#csdx-cmbulk-publishrevert) * [`csdx csdx cm:stacks:unpublish [-a ] [-e ] [-c ] [-y] [--locale ] [--branch ] [--retry-failed ] [--bulk-unpublish ] [--content-type ] [--delivery-token ] [--only-assets] [--only-entries]`](#csdx-csdx-cmstacksunpublish--a-value--e-value--c-value--y---locale-value---branch-value---retry-failed-value---bulk-unpublish-value---content-type-value---delivery-token-value---only-assets---only-entries) * [`csdx cm:entries:publish-only-unpublished [-a ] [--retry-failed ] [--bulk-publish ] [--source-env ] [--content-types ] [--locales ] [-e ] [-c ] [-y] [--branch ]`](#csdx-cmentriespublish-only-unpublished--a-value---retry-failed-value---bulk-publish-value---source-env-value---content-types-value---locales-value--e-value--c-value--y---branch-value) -* [`csdx cm:entries:migrate-html-rte`](#csdx-cmentriesmigrate-html-rte) * [`csdx cm:entries:publish [-a ] [--retry-failed ] [--bulk-publish ] [--publish-all-content-types] [--content-types ] [--locales ] [-e ] [-c ] [-y] [--branch ] [--delivery-token ] [--source-env ] [--entry-uid ] [--include-variants]`](#csdx-cmentriespublish--a-value---retry-failed-value---bulk-publish-value---publish-all-content-types---content-types-value---locales-value--e-value--c-value--y---branch-value---delivery-token-value---source-env-value---entry-uid-value---include-variants) * [`csdx cm:entries:publish-modified [-a ] [--retry-failed ] [--bulk-publish ] [--source-env ] [--content-types ] [--locales ] [-e ] [-c ] [-y] [--branch ]`](#csdx-cmentriespublish-modified--a-value---retry-failed-value---bulk-publish-value---source-env-value---content-types-value---locales-value--e-value--c-value--y---branch-value) * [`csdx cm:entries:publish-non-localized-fields [-a ] [--retry-failed ] [--bulk-publish ] [--source-env ] [--content-types ] [-e ] [-c ] [-y] [--branch ]`](#csdx-cmentriespublish-non-localized-fields--a-value---retry-failed-value---bulk-publish-value---source-env-value---content-types-value--e-value--c-value--y---branch-value) @@ -68,7 +67,6 @@ USAGE * [`csdx cm:export-to-csv`](#csdx-cmexport-to-csv) * [`csdx cm:stacks:import [-c ] [-k ] [-d ] [-a ] [--module ] [--backup-dir ] [--branch ] [--import-webhook-status disable|current]`](#csdx-cmstacksimport--c-value--k-value--d-value--a-value---module-value---backup-dir-value---branch-value---import-webhook-status-disablecurrent) * [`csdx cm:stacks:import-setup [-k ] [-d ] [-a ] [--modules ]`](#csdx-cmstacksimport-setup--k-value--d-value--a-value---modules-valuevalue) -* [`csdx cm:migrate-rte`](#csdx-cmmigrate-rte) * [`csdx cm:stacks:migration [-k ] [-a ] [--file-path ] [--branch ] [--config-file ] [--config ] [--multiple]`](#csdx-cmstacksmigration--k-value--a-value---file-path-value---branch-value---config-file-value---config-value---multiple) * [`csdx cm:stacks:seed [--repo ] [--org ] [-k ] [-n ] [-y ] [-s ] [--locale ]`](#csdx-cmstacksseed---repo-value---org-value--k-value--n-value--y-value--s-value---locale-value) * [`csdx cm:stacks:clone [--source-branch ] [--target-branch ] [--source-management-token-alias ] [--destination-management-token-alias ] [-n ] [--type a|b] [--source-stack-api-key ] [--destination-stack-api-key ] [--import-webhook-status disable|current]`](#csdx-cmstacksclone---source-branch-value---target-branch-value---source-management-token-alias-value---destination-management-token-alias-value--n-value---type-ab---source-stack-api-key-value---destination-stack-api-key-value---import-webhook-status-disablecurrent) @@ -1596,69 +1594,6 @@ EXAMPLES $ csdx cm:entries:publish-only-unpublished -b --content-types [CONTENT TYPES] -e [ENVIRONMENTS] --locales LOCALE -a [MANAGEMENT TOKEN ALIAS] --stack-api-key [STACK API KEY] -source-env [SOURCE ENV] ``` -## `csdx cm:entries:migrate-html-rte` - -Migration script to migrate content from HTML RTE to JSON RTE - -``` -USAGE - $ csdx cm:entries:migrate-html-rte [-c ] [-a ] [--stack-api-key ] [--content-type ] - [--global-field] [-y] [--branch ] [--html-path --json-path ] [--delay ] [--locale - ] [--batch-limit ] - -FLAGS - -a, --alias= Enter the alias name. You must use either the --alias flag or the --stack-api-key flag. - -c, --config-path= Specify the path where your config file is located. - -y, --yes Avoids reconfirmation of your configuration. - --batch-limit= [default: 50] Provide batch limit for updating entries (default: 50). - --branch= The name of the branch to be used. - --content-type= Specify the UID of the content type for which you want to migrate HTML RTE content. - --delay= [default: 1000] To set the interval time between the migration of HTML RTE to JSON RTE in - subsequent entries of a content type. The default value is 1,000 milliseconds. - --global-field Checks whether the specified UID belongs to a content type or a global field. This flag - is set to false by default. - --html-path= Enter the path to the HTML RTE whose content you want to migrate. - --json-path= Enter the path to the JSON RTE to which you want to migrate the HTML RTE content. - --locale= The locale from which entries will be migrated. - --stack-api-key= API key of the source stack. You must use either the --stack-api-key flag or the --alias - flag. - -DESCRIPTION - Migration script to migrate content from HTML RTE to JSON RTE - -ALIASES - $ csdx cm:migrate-rte - -EXAMPLES - General Usage - - $ csdx cm:entries:migrate-html-rte --config-path path/to/config.json - - - - Using Flags - - $ csdx cm:entries:migrate-html-rte --alias alias --content-type content_type_uid --html-path html-path --json-path json-path - - - - Nested RTE - - $ csdx cm:entries:migrate-html-rte --alias alias --content-type content_type_uid --html-path modular_block_uid.block_uid.html_rte_uid --json-path modular_block_uid.block_uid.json_rte_uid - - - - $ csdx cm:entries:migrate-html-rte --alias alias --content-type content_type_uid --html-path group_uid.html_rte_uid --json-path group_uid.json_rte_uid - - - - Global Field - - $ csdx cm:entries:migrate-html-rte --alias alias --content-type global_field_uid --global-field --html-path html-path --json-path json-path -``` - -_See code: [@contentstack/cli-cm-migrate-rte](https://github.com/contentstack/cli/blob/main/packages/contentstack-migrate-rte/src/commands/cm/entries/migrate-html-rte.js)_ - ## `csdx cm:entries:publish [-a ] [--retry-failed ] [--bulk-publish ] [--publish-all-content-types] [--content-types ] [--locales ] [-e ] [-c ] [-y] [--branch ] [--delivery-token ] [--source-env ] [--entry-uid ] [--include-variants]` Publish entries from multiple contenttypes to multiple environments and locales @@ -2392,8 +2327,6 @@ FLAGS extensions, marketplace-apps, global-fields, labels, locales, webhooks, workflows, custom-roles, personalize projects, and taxonomies. -y, --yes [optional] Force override all Marketplace prompts. - --branch-alias= Specify the branch alias where you want to import your content. If not - specified, the content is imported into the main branch by default. --branch-alias= Specify the branch alias where you want to import your content. If not specified, the content is imported into the main branch by default. --exclude-global-modules Excludes the branch-independent module from the import operation. @@ -2449,8 +2382,6 @@ FLAGS branches involved, then the path should point till the particular branch. For example, “-d "C:\Users\Name\Desktop\cli\content\branch_name" -k, --stack-api-key= API key of the target stack - --branch-alias= Specify the branch alias where you want to import your content. If not specified, the - content is imported into the main branch by default. --branch-alias= Specify the branch alias where you want to import your content. If not specified, the content is imported into the main branch by default. --module=