From bb81aca62ad4325e2766c2a2eb4726abf1ff55ab Mon Sep 17 00:00:00 2001 From: Nikolay Kost Date: Tue, 23 Apr 2024 21:12:59 +0200 Subject: [PATCH] Revert "feat: typescript support (#185)" This reverts commit 8797f7f363a34b6a53578e0b2f50033cbb6a7eeb. --- .changeset/khaki-cobras-hide.md | 5 - .devcontainer/devcontainer.json | 25 - .github/workflows/test.yml | 6 +- .gitignore | 5 - .npmrc | 1 - .swcrc-commonjs.json | 9 +- .swcrc.json | 9 +- benchmark/index.js | 8 +- benchmark/package.json | 3 +- lerna.json | 4 +- nx.json | 83 +- package.json | 68 +- packages/bbob-cli/.gitignore | 5 - packages/bbob-cli/.npmignore | 8 +- packages/bbob-cli/README.md | 15 +- packages/bbob-cli/bin/bbob | 3 + packages/bbob-cli/bin/bbob.js | 3 + packages/bbob-cli/lib/cli.js | 25 + packages/bbob-cli/package.json | 40 +- packages/bbob-cli/src/cli.ts | 4 - packages/bbob-cli/src/index.ts | 24 - packages/bbob-cli/test/cli.test.js | 8 + packages/bbob-cli/test/cli.test.ts | 30 - packages/bbob-cli/tsconfig.json | 10 - packages/bbob-core/.gitignore | 3 - packages/bbob-core/.npmignore | 2 +- packages/bbob-core/package.json | 36 +- packages/bbob-core/pnpm-lock.yaml | 3 - packages/bbob-core/src/errors.ts | 10 - packages/bbob-core/src/index.js | 62 + packages/bbob-core/src/index.ts | 76 - packages/bbob-core/src/types.ts | 57 - packages/bbob-core/src/utils.js | 60 + packages/bbob-core/src/utils.ts | 72 - .../test/{index.test.ts => index.test.js} | 69 +- .../test/{utils.test.ts => utils.test.js} | 31 +- packages/bbob-core/tsconfig.json | 10 - packages/bbob-html/.gitignore | 4 - packages/bbob-html/.npmignore | 2 +- packages/bbob-html/package.json | 37 +- packages/bbob-html/src/index.js | 47 + packages/bbob-html/src/index.ts | 61 - .../test/{index.test.ts => index.test.js} | 4 +- packages/bbob-html/tsconfig.json | 10 - packages/bbob-parser/.gitignore | 4 - packages/bbob-parser/.npmignore | 2 +- packages/bbob-parser/package.json | 77 +- .../bbob-parser/src/{Token.ts => Token.js} | 90 +- packages/bbob-parser/src/index.js | 2 + packages/bbob-parser/src/index.ts | 5 - .../bbob-parser/src/{lexer.ts => lexer.js} | 82 +- .../bbob-parser/src}/lexer_old.js | 13 +- packages/bbob-parser/src/parse.js | 303 + packages/bbob-parser/src/parse.ts | 349 -- packages/bbob-parser/src/types.ts | 15 - packages/bbob-parser/src/utils.js | 165 + packages/bbob-parser/src/utils.ts | 121 - .../test/{Token.test.ts => Token.test.js} | 0 .../test/{index.test.ts => index.test.js} | 3 +- .../test/{lexer.test.ts => lexer.test.js} | 28 +- .../test/{parse.test.ts => parse.test.js} | 5 +- .../{posthtml.test.ts => posthtml.test.js} | 0 .../test/{utils.test.ts => utils.test.js} | 0 packages/bbob-parser/tsconfig.json | 10 - packages/bbob-plugin-helper/.gitignore | 4 - packages/bbob-plugin-helper/.npmignore | 2 +- packages/bbob-plugin-helper/package.json | 70 +- packages/bbob-plugin-helper/src/TagNode.js | 77 + packages/bbob-plugin-helper/src/TagNode.ts | 115 - .../src/{char.ts => char.js} | 0 packages/bbob-plugin-helper/src/helpers.js | 100 + packages/bbob-plugin-helper/src/helpers.ts | 125 - packages/bbob-plugin-helper/src/index.js | 3 + packages/bbob-plugin-helper/src/index.ts | 4 - packages/bbob-plugin-helper/src/types.ts | 13 - .../test/{TagNode.test.ts => TagNode.test.js} | 31 - .../bbob-plugin-helper/test/helpers.test.js | 116 + .../bbob-plugin-helper/test/helpers.test.ts | 117 - packages/bbob-plugin-helper/tsconfig.json | 10 - packages/bbob-preset-html5/.gitignore | 3 - packages/bbob-preset-html5/.npmignore | 2 +- packages/bbob-preset-html5/package.json | 40 +- packages/bbob-preset-html5/pnpm-lock.yaml | 3 - packages/bbob-preset-html5/src/defaultTags.js | 91 + packages/bbob-preset-html5/src/defaultTags.ts | 146 - packages/bbob-preset-html5/src/index.js | 5 + packages/bbob-preset-html5/src/index.ts | 6 - .../test/{index.test.ts => index.test.js} | 10 +- packages/bbob-preset-html5/tsconfig.json | 10 - packages/bbob-preset-react/.gitignore | 3 - packages/bbob-preset-react/.npmignore | 2 +- packages/bbob-preset-react/package.json | 38 +- .../src/{index.ts => index.js} | 5 +- .../test/{index.test.ts => index.test.js} | 0 packages/bbob-preset-react/tsconfig.json | 10 - packages/bbob-preset-vue/.gitignore | 3 - packages/bbob-preset-vue/.npmignore | 2 +- packages/bbob-preset-vue/package.json | 38 +- .../src/{index.ts => index.js} | 7 +- .../test/{index.test.ts => index.test.js} | 0 packages/bbob-preset-vue/tsconfig.json | 10 - packages/bbob-preset/.gitignore | 3 - packages/bbob-preset/.npmignore | 2 +- packages/bbob-preset/package.json | 52 +- packages/bbob-preset/pnpm-lock.yaml | 8 - packages/bbob-preset/src/index.js | 37 + packages/bbob-preset/src/index.ts | 3 - packages/bbob-preset/src/preset.ts | 91 - packages/bbob-preset/src/types.ts | 15 - packages/bbob-preset/test/index.test.js | 54 + packages/bbob-preset/test/index.test.ts | 61 - packages/bbob-preset/tsconfig.json | 10 - packages/bbob-react/.eslintignore | 3 - packages/bbob-react/.gitignore | 3 - packages/bbob-react/.npmignore | 2 +- packages/bbob-react/package.json | 43 +- packages/bbob-react/src/Component.js | 48 + packages/bbob-react/src/Component.ts | 34 - .../bbob-react/src/{index.ts => index.js} | 0 packages/bbob-react/src/render.js | 57 + packages/bbob-react/src/render.ts | 90 - .../test/{index.test.tsx => index.test.js} | 0 .../test/{render.test.tsx => render.test.js} | 0 packages/bbob-react/tsconfig.json | 10 - packages/bbob-vue2/.gitignore | 3 - packages/bbob-vue2/.npmignore | 2 +- packages/bbob-vue2/package.json | 41 +- .../src/{Component.ts => Component.js} | 9 +- packages/bbob-vue2/src/index.js | 10 + packages/bbob-vue2/src/index.ts | 11 - packages/bbob-vue2/src/render.js | 52 + packages/bbob-vue2/src/render.ts | 57 - packages/bbob-vue2/tsconfig.json | 10 - packages/bbob-vue3/.gitignore | 3 - packages/bbob-vue3/.npmignore | 2 +- packages/bbob-vue3/package.json | 44 +- packages/bbob-vue3/src/Component.js | 33 + packages/bbob-vue3/src/Component.ts | 47 - packages/bbob-vue3/src/index.js | 10 + packages/bbob-vue3/src/index.ts | 11 - packages/bbob-vue3/src/render.js | 52 + packages/bbob-vue3/src/render.ts | 90 - packages/bbob-vue3/test/render.test.js | 2 +- packages/bbob-vue3/tsconfig.json | 10 - pnpm-lock.yaml | 5092 ++++++----------- scripts/cleanup | 40 - scripts/package.json | 9 +- scripts/pkg-task | 5 - tsconfig.json | 39 - 149 files changed, 3715 insertions(+), 6147 deletions(-) delete mode 100644 .changeset/khaki-cobras-hide.md delete mode 100644 .devcontainer/devcontainer.json create mode 100755 packages/bbob-cli/bin/bbob create mode 100644 packages/bbob-cli/bin/bbob.js create mode 100644 packages/bbob-cli/lib/cli.js delete mode 100755 packages/bbob-cli/src/cli.ts delete mode 100644 packages/bbob-cli/src/index.ts create mode 100644 packages/bbob-cli/test/cli.test.js delete mode 100644 packages/bbob-cli/test/cli.test.ts delete mode 100644 packages/bbob-cli/tsconfig.json delete mode 100644 packages/bbob-core/src/errors.ts create mode 100644 packages/bbob-core/src/index.js delete mode 100644 packages/bbob-core/src/index.ts delete mode 100644 packages/bbob-core/src/types.ts create mode 100644 packages/bbob-core/src/utils.js delete mode 100644 packages/bbob-core/src/utils.ts rename packages/bbob-core/test/{index.test.ts => index.test.js} (65%) rename packages/bbob-core/test/{utils.test.ts => utils.test.js} (70%) delete mode 100644 packages/bbob-core/tsconfig.json create mode 100644 packages/bbob-html/src/index.js delete mode 100644 packages/bbob-html/src/index.ts rename packages/bbob-html/test/{index.test.ts => index.test.js} (89%) delete mode 100644 packages/bbob-html/tsconfig.json rename packages/bbob-parser/src/{Token.ts => Token.js} (64%) create mode 100644 packages/bbob-parser/src/index.js delete mode 100644 packages/bbob-parser/src/index.ts rename packages/bbob-parser/src/{lexer.ts => lexer.js} (77%) rename {benchmark => packages/bbob-parser/src}/lexer_old.js (97%) create mode 100644 packages/bbob-parser/src/parse.js delete mode 100644 packages/bbob-parser/src/parse.ts delete mode 100644 packages/bbob-parser/src/types.ts create mode 100644 packages/bbob-parser/src/utils.js delete mode 100644 packages/bbob-parser/src/utils.ts rename packages/bbob-parser/test/{Token.test.ts => Token.test.js} (100%) rename packages/bbob-parser/test/{index.test.ts => index.test.js} (67%) rename packages/bbob-parser/test/{lexer.test.ts => lexer.test.js} (95%) rename packages/bbob-parser/test/{parse.test.ts => parse.test.js} (98%) rename packages/bbob-parser/test/{posthtml.test.ts => posthtml.test.js} (100%) rename packages/bbob-parser/test/{utils.test.ts => utils.test.js} (100%) delete mode 100644 packages/bbob-parser/tsconfig.json create mode 100644 packages/bbob-plugin-helper/src/TagNode.js delete mode 100644 packages/bbob-plugin-helper/src/TagNode.ts rename packages/bbob-plugin-helper/src/{char.ts => char.js} (100%) create mode 100644 packages/bbob-plugin-helper/src/helpers.js delete mode 100644 packages/bbob-plugin-helper/src/helpers.ts create mode 100644 packages/bbob-plugin-helper/src/index.js delete mode 100644 packages/bbob-plugin-helper/src/index.ts delete mode 100644 packages/bbob-plugin-helper/src/types.ts rename packages/bbob-plugin-helper/test/{TagNode.test.ts => TagNode.test.js} (60%) create mode 100644 packages/bbob-plugin-helper/test/helpers.test.js delete mode 100644 packages/bbob-plugin-helper/test/helpers.test.ts delete mode 100644 packages/bbob-plugin-helper/tsconfig.json create mode 100644 packages/bbob-preset-html5/src/defaultTags.js delete mode 100644 packages/bbob-preset-html5/src/defaultTags.ts create mode 100644 packages/bbob-preset-html5/src/index.js delete mode 100644 packages/bbob-preset-html5/src/index.ts rename packages/bbob-preset-html5/test/{index.test.ts => index.test.js} (95%) delete mode 100644 packages/bbob-preset-html5/tsconfig.json rename packages/bbob-preset-react/src/{index.ts => index.js} (70%) rename packages/bbob-preset-react/test/{index.test.ts => index.test.js} (100%) delete mode 100644 packages/bbob-preset-react/tsconfig.json rename packages/bbob-preset-vue/src/{index.ts => index.js} (70%) rename packages/bbob-preset-vue/test/{index.test.ts => index.test.js} (100%) delete mode 100644 packages/bbob-preset-vue/tsconfig.json create mode 100644 packages/bbob-preset/src/index.js delete mode 100644 packages/bbob-preset/src/index.ts delete mode 100644 packages/bbob-preset/src/preset.ts delete mode 100644 packages/bbob-preset/src/types.ts create mode 100644 packages/bbob-preset/test/index.test.js delete mode 100644 packages/bbob-preset/test/index.test.ts delete mode 100644 packages/bbob-preset/tsconfig.json create mode 100644 packages/bbob-react/src/Component.js delete mode 100644 packages/bbob-react/src/Component.ts rename packages/bbob-react/src/{index.ts => index.js} (100%) create mode 100644 packages/bbob-react/src/render.js delete mode 100644 packages/bbob-react/src/render.ts rename packages/bbob-react/test/{index.test.tsx => index.test.js} (100%) rename packages/bbob-react/test/{render.test.tsx => render.test.js} (100%) delete mode 100644 packages/bbob-react/tsconfig.json rename packages/bbob-vue2/src/{Component.ts => Component.js} (70%) create mode 100644 packages/bbob-vue2/src/index.js delete mode 100644 packages/bbob-vue2/src/index.ts create mode 100644 packages/bbob-vue2/src/render.js delete mode 100644 packages/bbob-vue2/src/render.ts delete mode 100644 packages/bbob-vue2/tsconfig.json create mode 100644 packages/bbob-vue3/src/Component.js delete mode 100644 packages/bbob-vue3/src/Component.ts create mode 100644 packages/bbob-vue3/src/index.js delete mode 100644 packages/bbob-vue3/src/index.ts create mode 100644 packages/bbob-vue3/src/render.js delete mode 100644 packages/bbob-vue3/src/render.ts delete mode 100644 packages/bbob-vue3/tsconfig.json delete mode 100755 scripts/cleanup delete mode 100644 tsconfig.json diff --git a/.changeset/khaki-cobras-hide.md b/.changeset/khaki-cobras-hide.md deleted file mode 100644 index cf6a91f3..00000000 --- a/.changeset/khaki-cobras-hide.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"feat: typescript support": minor ---- - -Now BBob supports Typescript with typings diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json deleted file mode 100644 index 8d7dd934..00000000 --- a/.devcontainer/devcontainer.json +++ /dev/null @@ -1,25 +0,0 @@ -// For format details, see https://aka.ms/devcontainer.json. For config options, see the -// README at: https://github.com/devcontainers/templates/tree/main/src/typescript-node -{ - "name": "Node.js & TypeScript", - // Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile - "image": "mcr.microsoft.com/devcontainers/typescript-node:1-20-bullseye", - "features": { - "ghcr.io/devcontainers/features/node:1": {} - } - - // Features to add to the dev container. More info: https://containers.dev/features. - // "features": {}, - - // Use 'forwardPorts' to make a list of ports inside the container available locally. - // "forwardPorts": [], - - // Use 'postCreateCommand' to run commands after the container is created. - // "postCreateCommand": "yarn install", - - // Configure tool-specific properties. - // "customizations": {}, - - // Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root. - // "remoteUser": "root" -} diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 1df5ad8e..83d75ea0 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -32,16 +32,16 @@ jobs: cache: 'pnpm' - name: Install - run: pnpm i --frozen-lockfile --strict-peer-dependencies + run: pnpm install --frozen-lockfile --strict-peer-dependencies - name: Run the lint - run: pnpm run lint + run: pnpm lint - name: Install coverage run: pnpm install --global codecov - name: Run the coverage - run: pnpm run cover + run: pnpm cover - name: Run the coverage run: codecov diff --git a/.gitignore b/.gitignore index dd56be10..e65f739c 100644 --- a/.gitignore +++ b/.gitignore @@ -64,8 +64,3 @@ typings/ # benchmark test files benchmark/html5 .nx - -.nx - - -.nx/cache diff --git a/.npmrc b/.npmrc index 361b1968..214c29d1 100644 --- a/.npmrc +++ b/.npmrc @@ -1,2 +1 @@ registry=https://registry.npmjs.org/ -link-workspace-packages=true diff --git a/.swcrc-commonjs.json b/.swcrc-commonjs.json index b5e908a2..f334ce80 100644 --- a/.swcrc-commonjs.json +++ b/.swcrc-commonjs.json @@ -1,5 +1,4 @@ { - "$schema": "https://json.schemastore.org/swcrc", "module": { "type": "commonjs", @@ -10,12 +9,14 @@ }, "jsc": { "transform": { - "optimizer": {} + "optimizer": { + "simplify": false + } }, "loose": true, "parser": { - "syntax": "typescript", - "tsx": true + "syntax": "ecmascript", + "jsx": true } } } diff --git a/.swcrc.json b/.swcrc.json index 4e71507d..b03dcfe7 100644 --- a/.swcrc.json +++ b/.swcrc.json @@ -1,5 +1,4 @@ { - "$schema": "https://json.schemastore.org/swcrc", "module": { "type": "es6", "strict": false, @@ -10,13 +9,15 @@ "minify": false, "jsc": { "transform": { - "optimizer": {} + "optimizer": { + "simplify": false + } }, "target": "es2018", "loose": true, "parser": { - "syntax": "typescript", - "tsx": true + "syntax": "ecmascript", + "jsx": true }, "externalHelpers": false } diff --git a/benchmark/index.js b/benchmark/index.js index 40d736bd..59f23d3a 100644 --- a/benchmark/index.js +++ b/benchmark/index.js @@ -48,17 +48,17 @@ suite }); }) .add('@bbob/parser lexer old', () => { - const lexer1 = require('./lexer_old'); + const lexer1 = require('@bbob/parser/lib/lexer_old'); - return require('@bbob/parser').parse(stub, { + return require('@bbob/parser/lib/index').parse(stub, { onlyAllowTags: ['ch'], createTokenizer: lexer1.createLexer, }); }) .add('@bbob/parser lexer', () => { - const lexer2 = require('@bbob/parser'); + const lexer2 = require('@bbob/parser/lib/lexer'); - return require('@bbob/parser').parse(stub, { + return require('@bbob/parser/lib/index').parse(stub, { onlyAllowTags: ['ch'], createTokenizer: lexer2.createLexer, }); diff --git a/benchmark/package.json b/benchmark/package.json index 2bfdcff6..7d7bfb1b 100644 --- a/benchmark/package.json +++ b/benchmark/package.json @@ -13,8 +13,7 @@ "url": "https://artkost.ru/" }, "dependencies": { - "@bbob/parser": "*", - "@bbob/plugin-helper": "*", + "@bbob/parser": "workspace:*", "benchmark": "2.1.4", "picocolors": "1.0.0", "xbbcode-parser": "0.1.2", diff --git a/lerna.json b/lerna.json index 385a8642..8f0cc1fc 100644 --- a/lerna.json +++ b/lerna.json @@ -27,7 +27,5 @@ "message": "chore(release): publish %s" } }, - "npmClient": "pnpm", - "useNx": true, - "useWorkspaces": true + "useNx": true } diff --git a/nx.json b/nx.json index 9952b4ed..0e5b9009 100644 --- a/nx.json +++ b/nx.json @@ -1,81 +1,12 @@ { - "targetDefaults": { - "types": { - "dependsOn": [ - "^types" - ], - "outputs": ["{projectRoot}/types"], - "cache": true - }, - "build": { - "dependsOn": [ - "^types", - "^build:commonjs", - "^build:es", - "^build:umd" - ], - "outputs": ["{projectRoot}/lib", "{projectRoot}/es", "{projectRoot}/dist"], - "cache": true - }, - "test": { - "dependsOn": [ - "^build", - "^test" - ] - }, - "cover": { - "dependsOn": [ - "^build", - "^cover" - ], - "outputs": ["{projectRoot}/coverage"] - }, - "lint": { - "dependsOn": [ - "^lint" - ] - }, - "build:commonjs": { - "dependsOn": [ - "^build:es", - "^build:commonjs" - ], - "outputs": ["{projectRoot}/lib"], - "cache": true - }, - "build:es": { - "dependsOn": [ - "^build:es" - ], - "outputs": ["{projectRoot}/es"], - "cache": true - }, - "build:umd": { - "dependsOn": [ - "^build:es", - "^build:umd" - ], - "outputs": ["{projectRoot}/dist"], - "cache": true - } - }, - "$schema": "./node_modules/nx/schemas/nx-schema.json", - "defaultBase": "master", - "extends": "nx/presets/npm.json", - "plugins": [ - { - "plugin": "@nx/eslint/plugin", + "tasksRunnerOptions": { + "default": { + "runner": "nx/tasks-runners/default", "options": { - "targetName": "eslint:lint", - "extensions": [ - "ts", - "tsx", - "js", - "jsx", - "html", - "vue" - ] + "cacheableOperations": ["build"] } } - ] + }, + "targetDefaults": {}, + "defaultBase": "master" } diff --git a/package.json b/package.json index 33fc5db6..a1e53c3e 100644 --- a/package.json +++ b/package.json @@ -1,8 +1,7 @@ { - "name": "bbob", "scripts": { "prepublishOnly": "npm run test", - "bootstrap": "pnpm re", + "bootstrap": "lerna bootstrap --no-ci", "publish-ci": "npm run build && lerna publish from-package --yes --include-merged-tags --conventional-commits", "publish-canary": "npm run build && lerna publish --yes --include-merged-tags --conventional-commits --no-private --no-git-tag-version", "publish-from-packages": "npm run build && lerna publish from-package --yes --include-merged-tags --conventional-commits --create-release github", @@ -11,13 +10,11 @@ "publish-minor": "npm run build && lerna version minor --include-merged-tags --conventional-commits --no-git-tag-version --no-private", "size": "nx run-many --target=size", "bundlesize": "nx run-many --target=bundlesize", - "test": "nx run-many --target=test", + "test": "npm run build && nx run-many --target=link && nx run-many --target=test", "cover": "nx run-many --target=cover", "build": "nx run-many --target=build", - "types": "nx run-many --target=types", "release": "npm run build && changeset publish", - "lint": "nx run-many --target=lint", - "cleanup": "node scripts/cleanup" + "lint": "nx run-many --target=link && npm run build && nx run-many --target=lint" }, "author": { "name": "Nikolay Kostyurin ", @@ -29,13 +26,14 @@ "@changesets/cli": "2.26.2", "@commitlint/cli": "13.2.1", "@commitlint/config-conventional": "13.2.0", - "@rollup/plugin-commonjs": "25.0.7", - "@rollup/plugin-node-resolve": "15.2.3", - "@rollup/plugin-replace": "5.0.5", - "@size-limit/preset-small-lib": "11.0.1", - "@swc/cli": "0.3.10", - "@swc/core": "1.3.107", - "@swc/jest": "0.2.36", + "@nrwl/cli": "15.3.3", + "@rollup/plugin-commonjs": "23.0.2", + "@rollup/plugin-node-resolve": "15.0.1", + "@rollup/plugin-replace": "5.0.1", + "@size-limit/preset-small-lib": "6.0.1", + "@swc/cli": "0.1.57", + "@swc/core": "1.3.16", + "@swc/jest": "0.2.23", "@testing-library/dom": "9.3.1", "@testing-library/jest-dom": "6.1.2", "bundlesize2": "0.0.31", @@ -48,26 +46,18 @@ "eslint-plugin-react": "7.26.1", "eslint-plugin-react-hooks": "4.6.0", "husky": "7.0.2", - "jest": "29.7.0", - "jest-environment-jsdom": "29.7.0", - "lerna": "7.4.1", + "jest": "29.5.0", + "jest-environment-jsdom": "29.6.4", + "lerna": "6.0.3", "lint-staged": "11.2.3", "microtime": "3.0.0", - "nx": "18.3.3", - "posthtml-render": "3.0.0", - "rimraf": "5.0.5", - "rollup": "4.1.5", + "nx": "15.3.3", + "posthtml-render": "^3.0.0", + "rimraf": "^3.0.2", + "rollup": "3.3.0", "rollup-plugin-gzip": "3.1.0", - "rollup-plugin-swc3": "0.11.0", - "size-limit": "11.0.1", - "typescript": "5.1.6", - "@types/node": "20.4.5", - "@types/jest": "29.5.3", - "@types/react": "18.2.18", - "@nx/eslint": "18.3.3", - "@nx/rollup": "18.3.3", - "@nx/jest": "18.3.3", - "@bbob/scripts": "*" + "rollup-plugin-swc3": "0.7.0", + "size-limit": "6.0.1" }, "publishConfig": { "access": "public", @@ -79,18 +69,15 @@ } }, "pkgTasks": { - "build:commonjs": "@/cross-env BABEL_ENV=commonjs NODE_ENV=production @/swc ./src/ --config-file ../../.swcrc-commonjs.json --out-dir lib --strip-leading-paths", - "build:es": "@/cross-env BABEL_ENV=es NODE_ENV=production @/swc ./src/ --config-file ../../.swcrc.json --out-dir es --strip-leading-paths", - "build:umd": "@/cross-env BABEL_ENV=rollup NODE_ENV=production @/rollup --config ../../rollup.config.mjs", - "build": "npm run build:es && npm run build:commonjs && npm run build:umd", + "build-commonjs": "@/cross-env BABEL_ENV=commonjs NODE_ENV=production @/swc --config-file ../../.swcrc-commonjs.json --out-dir lib src", + "build-es": "@/cross-env BABEL_ENV=es NODE_ENV=production @/swc --config-file ../../.swcrc.json --out-dir es src", + "build-umd": "@/cross-env BABEL_ENV=rollup NODE_ENV=production @/rollup --config ../../rollup.config.mjs", "test": "@/jest", - "cover": "@/jest --coverage .", + "cover": "@/jest --config ../../jest.config.js --coverage .", "lint": "@/eslint .", - "types": "@/tsc", - "bundlesize": "npm run build && @/cross-env NODE_ENV=production @/bundlesize .", - "size": "npm run build && @/cross-env NODE_ENV=production @/size-limit ." + "bundlesize": "npm run build && @/cross-env NODE_ENV=production @/bundlesize ." }, - "packageManager": "pnpm@8.15.1", + "packageManager": "pnpm@8.7.6", "pnpm": { "overrides": { "semver@>=7.0.0 <7.5.2": ">=7.5.2", @@ -113,8 +100,5 @@ } } } - }, - "nx": { - "includedScripts": [] } } diff --git a/packages/bbob-cli/.gitignore b/packages/bbob-cli/.gitignore index 62307a2c..29f44348 100644 --- a/packages/bbob-cli/.gitignore +++ b/packages/bbob-cli/.gitignore @@ -1,7 +1,2 @@ coverage dist -lib -es -types -test/*.d.ts -test/*.map diff --git a/packages/bbob-cli/.npmignore b/packages/bbob-cli/.npmignore index c1046191..57abbddd 100644 --- a/packages/bbob-cli/.npmignore +++ b/packages/bbob-cli/.npmignore @@ -1,7 +1,5 @@ -pnpm-lock.yaml +package-lock.json coverage src -!dist -!lib -!es -*.test.js +dist +!lib \ No newline at end of file diff --git a/packages/bbob-cli/README.md b/packages/bbob-cli/README.md index 5cd0e32b..5ce47522 100644 --- a/packages/bbob-cli/README.md +++ b/packages/bbob-cli/README.md @@ -1,15 +1,4 @@ -# @bbob/cli -[![install size](https://packagephobia.now.sh/badge?p=@bbob/cli)](https://packagephobia.now.sh/result?p=@bbob/html) [![Known Vulnerabilities](https://snyk.io/test/github/JiLiZART/bbob/badge.svg?targetFile=packages%2Fbbob-cli%2Fpackage.json)](https://snyk.io/test/github/JiLiZART/bbob?targetFile=packages%2Fbbob-cli%2Fpackage.json) +#@bbob/cli -> Converts bbcode string to html +Convert BBCode to HTML -```shell -npm i -g @bbob/cli -``` - -```shell -echo "[i]Text[/i]" | bbob - -# prints -Text -``` diff --git a/packages/bbob-cli/bin/bbob b/packages/bbob-cli/bin/bbob new file mode 100755 index 00000000..d2316ff6 --- /dev/null +++ b/packages/bbob-cli/bin/bbob @@ -0,0 +1,3 @@ +#!/usr/bin/env node + +require('../lib/cli'); diff --git a/packages/bbob-cli/bin/bbob.js b/packages/bbob-cli/bin/bbob.js new file mode 100644 index 00000000..d2316ff6 --- /dev/null +++ b/packages/bbob-cli/bin/bbob.js @@ -0,0 +1,3 @@ +#!/usr/bin/env node + +require('../lib/cli'); diff --git a/packages/bbob-cli/lib/cli.js b/packages/bbob-cli/lib/cli.js new file mode 100644 index 00000000..f9749fc8 --- /dev/null +++ b/packages/bbob-cli/lib/cli.js @@ -0,0 +1,25 @@ +const fs = require('fs'); +const program = require('commander'); +const { version } = require('../package.json'); + +program + .version(version) + .parse(process.argv); + +const options = {}; + +// eslint-disable-next-line no-unused-vars +function readFile(filename, encoding, callback) { + if (options.file === '-') { + // read from stdin + const chunks = []; + + process.stdin.on('data', (chunk) => { + chunks.push(chunk); + }); + + process.stdin.on('end', () => callback(null, Buffer.concat(chunks).toString(encoding))); + } else { + fs.readFile(filename, encoding, callback); + } +} diff --git a/packages/bbob-cli/package.json b/packages/bbob-cli/package.json index 92bd9247..f7a90f33 100644 --- a/packages/bbob-cli/package.json +++ b/packages/bbob-cli/package.json @@ -2,30 +2,17 @@ "name": "@bbob/cli", "version": "3.0.2", "description": "Comand line bbcode parser", + "main": "lib/cli.js", "bin": { - "bbob": "lib/cli.js" + "bbob": "bin/bbob" }, - "main": "lib/index.js", - "module": "es/index.js", - "jsnext:main": "es/index.js", - "browser": "dist/index.js", - "browserName": "BbobCli", - "types": "types/index.d.ts", - "exports": { - ".": { - "types": "./types/index.d.ts", - "import": "./es/index.js", - "require": "./lib/index.js", - "browser": "./dist/index.min.js", - "umd": "./dist/index.min.js" - } + "directories": { + "lib": "lib" }, "dependencies": { - "@bbob/html": "*", - "@bbob/preset-html5": "*" - }, - "devDependencies": { - "@types/node": "20.11.30" + "@bbob/html": "workspace:*", + "@bbob/preset-html5": "workspace:*", + "commander": "^2.15.1" }, "repository": { "type": "git", @@ -42,16 +29,9 @@ }, "homepage": "https://github.com/JiLiZART/bbob#readme", "scripts": { - "build:commonjs": "pkg-task", - "build:es": "pkg-task", - "build:umd": "pkg-task", - "build": "pkg-task", - "test": "pkg-task", - "lint": "pkg-task", - "size": "pkg-task", - "bundlesize": "pkg-task", - "types": "pkg-task", - "prepublishOnly": "npm run build" + "test": "../../scripts/pkg-task test", + "cover": "../../scripts/pkg-task cover", + "lint": "../../scripts/pkg-task lint" }, "author": "Nikolay Kostyurin ", "license": "MIT", diff --git a/packages/bbob-cli/src/cli.ts b/packages/bbob-cli/src/cli.ts deleted file mode 100755 index cd5b6bcd..00000000 --- a/packages/bbob-cli/src/cli.ts +++ /dev/null @@ -1,4 +0,0 @@ -#!/usr/bin/env node -import { run } from './index'; - -run(process.stdin, process.stdout); diff --git a/packages/bbob-cli/src/index.ts b/packages/bbob-cli/src/index.ts deleted file mode 100644 index 91630ba7..00000000 --- a/packages/bbob-cli/src/index.ts +++ /dev/null @@ -1,24 +0,0 @@ -import html from '@bbob/html' -import presetHTML5 from '@bbob/preset-html5' - -export function run(stdin = process.stdin, stdout = process.stdout) { - stdin.setEncoding('utf8'); - - let inputData = ''; - - // Read data from stdin - stdin.on('readable', () => { - const chunk = stdin.read(); - - if (chunk !== null) { - inputData += chunk; - } - }); - - // Once there's no more data to read, reverse the input and write it to stdout - stdin.on('end', () => { - const reversedData = html(inputData, presetHTML5()).toString(); - - stdout.write(reversedData); - }); -} diff --git a/packages/bbob-cli/test/cli.test.js b/packages/bbob-cli/test/cli.test.js new file mode 100644 index 00000000..0de9d1fc --- /dev/null +++ b/packages/bbob-cli/test/cli.test.js @@ -0,0 +1,8 @@ + + + +describe('CLI Interface', () => { + test('read from file', () => { + + }) +}); \ No newline at end of file diff --git a/packages/bbob-cli/test/cli.test.ts b/packages/bbob-cli/test/cli.test.ts deleted file mode 100644 index 47daf208..00000000 --- a/packages/bbob-cli/test/cli.test.ts +++ /dev/null @@ -1,30 +0,0 @@ -const { execSync } = require('child_process'); -const path = require('path'); - -const pathToBin = path.resolve(__dirname, '../lib/cli.js') - -describe('@bbob/cli', () => { - test('simple string', () => { - const stdout = execSync(`echo "hello" | ${pathToBin}`); - - expect(String(stdout).trim()).toBe('hello'); - }); - - test('string with bbcodes', () => { - const stdout = execSync(`echo "[i]Text[/i]" | ${pathToBin}`); - - expect(String(stdout).trim()).toBe('Text'); - }); - - test('empty string', () => { - const stdout = execSync(`echo "" | ${pathToBin}`); - - expect(String(stdout).trim()).toBe(''); - }); - - test('multiline string', () => { - const stdout = execSync(`echo "[i]Text[/i]\n[i]Text[/i]" | ${pathToBin}`); - - expect(String(stdout).trim()).toBe('Text\nText'); - }); -}); diff --git a/packages/bbob-cli/tsconfig.json b/packages/bbob-cli/tsconfig.json deleted file mode 100644 index 305c0bb6..00000000 --- a/packages/bbob-cli/tsconfig.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "extends": "../../tsconfig.json", - "compilerOptions": { - "baseUrl": ".", - "outDir": "./types" - }, - "include": [ - "./src/*" - ] -} diff --git a/packages/bbob-core/.gitignore b/packages/bbob-core/.gitignore index 62307a2c..22f5164e 100644 --- a/packages/bbob-core/.gitignore +++ b/packages/bbob-core/.gitignore @@ -2,6 +2,3 @@ coverage dist lib es -types -test/*.d.ts -test/*.map diff --git a/packages/bbob-core/.npmignore b/packages/bbob-core/.npmignore index c1046191..65922b56 100644 --- a/packages/bbob-core/.npmignore +++ b/packages/bbob-core/.npmignore @@ -1,4 +1,4 @@ -pnpm-lock.yaml +package-lock.json coverage src !dist diff --git a/packages/bbob-core/package.json b/packages/bbob-core/package.json index 8af558b4..1d9e8598 100644 --- a/packages/bbob-core/package.json +++ b/packages/bbob-core/package.json @@ -20,24 +20,13 @@ "core" ], "dependencies": { - "@bbob/parser": "*", - "@bbob/plugin-helper": "*" + "@bbob/parser": "workspace:*" }, "main": "lib/index.js", "module": "es/index.js", "jsnext:main": "es/index.js", "browser": "dist/index.js", "browserName": "BbobCore", - "types": "types/index.d.ts", - "exports": { - ".": { - "types": "./types/index.d.ts", - "import": "./es/index.js", - "require": "./lib/index.js", - "browser": "./dist/index.min.js", - "umd": "./dist/index.min.js" - } - }, "homepage": "https://github.com/JiLiZART/bbob", "author": "Nikolay Kostyurin ", "license": "MIT", @@ -49,22 +38,19 @@ "url": "git://github.com/JiLiZART/bbob.git" }, "scripts": { - "build:commonjs": "pkg-task", - "build:es": "pkg-task", - "build:umd": "pkg-task", - "build": "pkg-task", - "test": "pkg-task", - "cover": "pkg-task", - "lint": "pkg-task", - "size": "pkg-task", - "bundlesize": "pkg-task", - "types": "pkg-task", - "prepublishOnly": "npm run build" + "build:commonjs": "../../scripts/pkg-task build-commonjs", + "build:es": "../../scripts/pkg-task build-es", + "build:umd": "../../scripts/pkg-task build-umd", + "build": "npm run build:commonjs && npm run build:es && npm run build:umd", + "test": "../../scripts/pkg-task test", + "cover": "../../scripts/pkg-task cover", + "lint": "../../scripts/pkg-task lint", + "size": "../../scripts/pkg-task size", + "bundlesize": "../../scripts/pkg-task bundlesize" }, "size-limit": [ { - "path": "./dist/index.min.js", - "limit": "4.5 KB" + "path": "lib/index.js" } ], "bundlesize": [ diff --git a/packages/bbob-core/pnpm-lock.yaml b/packages/bbob-core/pnpm-lock.yaml index fd24893d..060dfd9d 100644 --- a/packages/bbob-core/pnpm-lock.yaml +++ b/packages/bbob-core/pnpm-lock.yaml @@ -8,6 +8,3 @@ dependencies: '@bbob/parser': specifier: workspace:* version: link:../bbob-parser - '@bbob/plugin-helper': - specifier: workspace:* - version: link:../bbob-plugin-helper diff --git a/packages/bbob-core/src/errors.ts b/packages/bbob-core/src/errors.ts deleted file mode 100644 index eb80e47b..00000000 --- a/packages/bbob-core/src/errors.ts +++ /dev/null @@ -1,10 +0,0 @@ - -let C1 = 'C1' -let C2 = 'C2' - -if (process.env.NODE_ENV !== 'production') { - C1 = '"parser" is not a function, please pass to "process(input, { parser })" right function' - C2 = '"render" function not defined, please pass to "process(input, { render })"' -} - -export { C1, C2 } diff --git a/packages/bbob-core/src/index.js b/packages/bbob-core/src/index.js new file mode 100644 index 00000000..cb01d20e --- /dev/null +++ b/packages/bbob-core/src/index.js @@ -0,0 +1,62 @@ +import { parse } from '@bbob/parser'; +import { iterate, match } from './utils'; + +function walk(cb) { + return iterate(this, cb); +} + +export default function bbob(plugs) { + const plugins = typeof plugs === 'function' ? [plugs] : plugs || []; + + let options = { + skipParse: false, + }; + + return { + process(input, opts) { + options = opts || {}; + + const parseFn = options.parser || parse; + const renderFn = options.render; + const data = options.data || null; + + if (typeof parseFn !== 'function') { + throw new Error('"parser" is not a function, please pass to "process(input, { parser })" right function'); + } + + let tree = options.skipParse + ? input || [] + : parseFn(input, options); + + // raw tree before modification with plugins + const raw = tree; + + tree.messages = []; + tree.options = options; + tree.walk = walk; + tree.match = match; + + plugins.forEach((plugin) => { + tree = plugin(tree, { + parse: parseFn, + render: renderFn, + iterate, + match, + data, + }) || tree; + }); + + return { + get html() { + if (typeof renderFn !== 'function') { + throw new Error('"render" function not defined, please pass to "process(input, { render })"'); + } + return renderFn(tree, tree.options); + }, + tree, + raw, + messages: tree.messages, + }; + }, + }; +} diff --git a/packages/bbob-core/src/index.ts b/packages/bbob-core/src/index.ts deleted file mode 100644 index 7dadc055..00000000 --- a/packages/bbob-core/src/index.ts +++ /dev/null @@ -1,76 +0,0 @@ -import { parse } from '@bbob/parser'; -import { iterate, match } from './utils'; -import { C1, C2 } from './errors' - -import type { IterateCallback } from './utils'; -import type { NodeContent, PartialNodeContent } from "@bbob/plugin-helper"; -import type { BBobCore, BBobCoreOptions, BBobCoreTagNodeTree, BBobPlugins } from "./types"; - -export * from './types' - -export function createTree(tree: NodeContent[], options: Options) { - const extendedTree = tree as BBobCoreTagNodeTree - - extendedTree.messages = [...(extendedTree.messages || [])] - extendedTree.options = {...options, ...extendedTree.options} - extendedTree.walk = function walkNodes(cb: IterateCallback) { - return iterate(this, cb); - } - extendedTree.match = function matchNodes(expr: PartialNodeContent | PartialNodeContent[], cb: IterateCallback) { - return match(this, expr, cb) - } - - return extendedTree -} - -export default function bbob( - plugs?: BBobPlugins -): BBobCore { - const plugins = typeof plugs === 'function' ? [plugs] : plugs || []; - const mockRender = () => "" - - return { - process(input, opts) { - const options = opts || { skipParse: false, parser: parse, render: mockRender, data: null } as BBobCoreOptions - const parseFn = options.parser || parse; - const renderFn = options.render; - const data = options.data || null; - - if (typeof parseFn !== 'function') { - throw new Error(C1); - } - - // raw tree before modification with plugins - const raw = options.skipParse && Array.isArray(input) ? input : parseFn(input as string, options); - let tree = options.skipParse && Array.isArray(input) ? createTree((input || []) as NodeContent[], options) : createTree(raw, options) - - for (let idx = 0; idx < plugins.length; idx++) { - const plugin = plugins[idx] - - if (typeof plugin === 'function' && renderFn) { - const newTree = plugin(tree, { - parse: parseFn, - render: renderFn, - iterate, - data, - }) - - tree = createTree(newTree || tree, options) - } - } - - return { - get html() { - if (typeof renderFn !== 'function') { - throw new Error(C2); - } - - return renderFn(tree, tree.options); - }, - tree, - raw, - messages: tree.messages, - }; - }, - }; -} diff --git a/packages/bbob-core/src/types.ts b/packages/bbob-core/src/types.ts deleted file mode 100644 index 8cfed97a..00000000 --- a/packages/bbob-core/src/types.ts +++ /dev/null @@ -1,57 +0,0 @@ -import type { ParseOptions, TagNode } from "@bbob/parser"; -import type { - NodeContent, - PartialNodeContent, - TagNodeTree, -} from "@bbob/plugin-helper"; -import type { IterateCallback, iterate } from "./utils"; - -export interface BBobCoreOptions< - Data = unknown | null, - Options extends ParseOptions = ParseOptions -> extends ParseOptions { - skipParse?: boolean; - parser?: (source: string, options?: Options) => TagNode[]; - render?: (ast: TagNodeTree, options?: Options) => string; - data?: Data; -} - -export interface BbobPluginOptions< - Options extends ParseOptions = ParseOptions -> { - parse: BBobCoreOptions["parser"]; - render: (ast: TagNodeTree, options?: Options) => string; - iterate: typeof iterate; - data: unknown | null; -} - -export interface BBobPluginFunction { - (tree: BBobCoreTagNodeTree, options: BbobPluginOptions): BBobCoreTagNodeTree; -} - -export interface BBobCore< - InputValue = string | TagNode[], - Options extends BBobCoreOptions = BBobCoreOptions -> { - process( - input: InputValue, - opts?: Options - ): { - readonly html: string; - tree: BBobCoreTagNodeTree; - raw: TagNode[] | string; - messages: unknown[]; - }; -} - -export interface BBobCoreTagNodeTree extends Array { - messages: unknown[]; - options: BBobCoreOptions; - walk: (cb: IterateCallback) => BBobCoreTagNodeTree; - match: ( - expression: PartialNodeContent | PartialNodeContent[], - cb: IterateCallback - ) => BBobCoreTagNodeTree; -} - -export type BBobPlugins = BBobPluginFunction | BBobPluginFunction[]; diff --git a/packages/bbob-core/src/utils.js b/packages/bbob-core/src/utils.js new file mode 100644 index 00000000..e0f24e71 --- /dev/null +++ b/packages/bbob-core/src/utils.js @@ -0,0 +1,60 @@ +/* eslint-disable no-plusplus */ +const isObj = (value) => (typeof value === 'object'); +const isBool = (value) => (typeof value === 'boolean'); + +export function iterate(t, cb) { + const tree = t; + + if (Array.isArray(tree)) { + for (let idx = 0; idx < tree.length; idx++) { + tree[idx] = iterate(cb(tree[idx]), cb); + } + } else if (tree && isObj(tree) && tree.content) { + iterate(tree.content, cb); + } + + return tree; +} + +export function same(expected, actual) { + if (typeof expected !== typeof actual) { + return false; + } + + if (!isObj(expected) || expected === null) { + return expected === actual; + } + + if (Array.isArray(expected)) { + return expected.every((exp) => [].some.call(actual, (act) => same(exp, act))); + } + + return Object.keys(expected).every((key) => { + const ao = actual[key]; + const eo = expected[key]; + + if (isObj(eo) && eo !== null && ao !== null) { + return same(eo, ao); + } + + if (isBool(eo)) { + return eo !== (ao === null); + } + + return ao === eo; + }); +} + +export function match(expression, cb) { + return Array.isArray(expression) + ? iterate(this, (node) => { + for (let idx = 0; idx < expression.length; idx++) { + if (same(expression[idx], node)) { + return cb(node); + } + } + + return node; + }) + : iterate(this, (node) => (same(expression, node) ? cb(node) : node)); +} diff --git a/packages/bbob-core/src/utils.ts b/packages/bbob-core/src/utils.ts deleted file mode 100644 index d271e780..00000000 --- a/packages/bbob-core/src/utils.ts +++ /dev/null @@ -1,72 +0,0 @@ -/* eslint-disable no-plusplus */ -const isObj = (value: unknown): value is Record => (typeof value === 'object' && value !== null); -const isBool = (value: unknown): value is boolean => (typeof value === 'boolean'); - -export type IterateCallback = (node: Content) => Content - -export function iterate | Content>(t: Iterable, cb: IterateCallback): Iterable { - const tree = t; - - if (Array.isArray(tree)) { - for (let idx = 0; idx < tree.length; idx++) { - tree[idx] = iterate(cb(tree[idx]), cb); - } - } else if (isObj(tree) && 'content' in tree) { - iterate(tree.content, cb); - } - - return tree; -} - -export function same(expected: unknown, actual: unknown): boolean { - if (typeof expected !== typeof actual) { - return false; - } - - if (!isObj(expected) || expected === null) { - return expected === actual; - } - - if (Array.isArray(expected)) { - return expected.every((exp) => [].some.call(actual, (act) => same(exp, act))); - } - - if (isObj(expected) && isObj(actual)) { - return Object.keys(expected).every((key) => { - const ao = actual[key]; - const eo = expected[key]; - - if (isObj(eo) && isObj(ao)) { - return same(eo, ao); - } - - if (isBool(eo)) { - return eo !== (ao === null); - } - - return ao === eo; - }); - } - - return false -} - -export function match>( - t: Iterable, - expression: Content | ArrayLike, - cb: IterateCallback -) { - if (Array.isArray(expression)) { - return iterate(t, (node) => { - for (let idx = 0; idx < expression.length; idx++) { - if (same(expression[idx], node)) { - return cb(node); - } - } - - return node; - }) - } - - return iterate(t, (node) => (same(expression, node) ? cb(node) : node)); -} diff --git a/packages/bbob-core/test/index.test.ts b/packages/bbob-core/test/index.test.js similarity index 65% rename from packages/bbob-core/test/index.test.ts rename to packages/bbob-core/test/index.test.js index f8732272..18e3affa 100644 --- a/packages/bbob-core/test/index.test.ts +++ b/packages/bbob-core/test/index.test.js @@ -1,10 +1,9 @@ import { TagNode } from '@bbob/parser' -import core, { BBobPluginFunction, BBobPlugins } from '../src' -import { isTagNode } from "@bbob/plugin-helper"; +import core from '../src' -const stringify = (val: unknown) => JSON.stringify(val); +const stringify = val => JSON.stringify(val); -const process = (plugins: BBobPlugins, input: string) => core(plugins).process(input, { render: stringify }); +const process = (plugins, input) => core(plugins).process(input, { render: stringify }); describe('@bbob/core', () => { test('parse bbcode string to ast and html', () => { @@ -23,27 +22,17 @@ describe('@bbob/core', () => { }); test('plugin walk api node', () => { - const testPlugin = () => { - - const plugin: BBobPluginFunction = (tree) => tree.walk(node => { - if (isTagNode(node)) { - if (node?.tag === 'mytag') { - node.attrs = { - pass: 1 - }; - - if (Array.isArray(node.content)) { - node.content.push('Test'); - } - } - - } + const testPlugin = () => (tree) => tree.walk(node => { + if (node.tag === 'mytag') { + node.attrs = { + pass: 1 + }; - return node - }); + node.content.push('Test'); + } - return plugin - } + return node + }); const res = process([testPlugin()], '[mytag size="15px"]Large Text[/mytag]'); const ast = res.tree; @@ -67,18 +56,13 @@ describe('@bbob/core', () => { }); test('plugin walk api string', () => { - const testPlugin = () => { - - const plugin: BBobPluginFunction = (tree) => tree.walk(node => { - if (node === ':)') { - return TagNode.create('test-tag') - } - - return node - }) + const testPlugin = () => (tree) => tree.walk(node => { + if (node === ':)') { + return TagNode.create('test-tag') + } - return plugin - }; + return node + }); const res = process([testPlugin()], '[mytag]Large Text :)[/mytag]'); const ast = res.tree; @@ -105,18 +89,13 @@ describe('@bbob/core', () => { }); test('plugin match api', () => { - const testPlugin = () => { - - const plugin: BBobPluginFunction = (tree) => tree.match([{ tag: 'mytag1' }, { tag: 'mytag2' }], node => { - if (isTagNode(node) && node.attrs) { - node.attrs['pass'] = 1 - } - - return node - }) + const testPlugin = () => (tree) => tree.match([{ tag: 'mytag1' }, { tag: 'mytag2' }], node => { + if (node.attrs) { + node.attrs['pass'] = 1 + } - return plugin - }; + return node + }); const res = process([testPlugin()], `[mytag1 size="15"]Tag1[/mytag1][mytag2 size="16"]Tag2[/mytag2][mytag3]Tag3[/mytag3]`); const ast = res.tree; diff --git a/packages/bbob-core/test/utils.test.ts b/packages/bbob-core/test/utils.test.js similarity index 70% rename from packages/bbob-core/test/utils.test.ts rename to packages/bbob-core/test/utils.test.js index 7a42de34..591039cf 100644 --- a/packages/bbob-core/test/utils.test.ts +++ b/packages/bbob-core/test/utils.test.js @@ -1,5 +1,7 @@ import { iterate, match, same } from '../src/utils'; -import { isTagNode } from "@bbob/plugin-helper"; + +const stringify = val => JSON.stringify(val); + describe('@bbob/core utils', () => { test('iterate', () => { @@ -12,12 +14,7 @@ describe('@bbob/core utils', () => { }]; const resultArr = iterate(testArr, node => { - if (typeof node === 'object' && node !== null) { - return { - ...node, - pass: 1 - } - } + node.pass = 1; return node; }); @@ -34,7 +31,7 @@ describe('@bbob/core utils', () => { } ]; - expect(resultArr).toEqual(expected); + expect(stringify(resultArr)).toEqual(stringify(expected)); }); test('match', () => { const testArr = [ @@ -46,25 +43,24 @@ describe('@bbob/core utils', () => { { tag: 'mytag6', six: 1 }, ]; - const resultArr = match(testArr, [{ tag: 'mytag1' }, { tag: 'mytag2' }], node => { - if (isTagNode(node)) { - node.attrs = node.attrs || {} - node.attrs.pass = 1 - } + testArr.match = match; + + const resultArr = testArr.match([{ tag: 'mytag1' }, { tag: 'mytag2' }], node => { + node.pass = 1; return node; }); const expected = [ - { tag: 'mytag1', one: 1, attrs: { pass: 1 } }, - { tag: 'mytag2', two: 1, attrs: { pass: 1 } }, + { tag: 'mytag1', one: 1, pass: 1 }, + { tag: 'mytag2', two: 1, pass: 1 }, { tag: 'mytag3', three: 1 }, { tag: 'mytag4', four: 1 }, { tag: 'mytag5', five: 1 }, { tag: 'mytag6', six: 1 }, ]; - expect(resultArr).toEqual(expected) + expect(stringify(resultArr)).toEqual(stringify(expected)) }) describe('same', () => { @@ -83,8 +79,5 @@ describe('@bbob/core utils', () => { test('same object', () => { expect(same({ foo: true, bar: 'test' }, { foo: true, bar: 'test', ext: true })).toBe(true) }) - test('same string', () => { - expect(same('bar', 'bar')).toBe(true) - }) }) }); diff --git a/packages/bbob-core/tsconfig.json b/packages/bbob-core/tsconfig.json deleted file mode 100644 index 385f1a81..00000000 --- a/packages/bbob-core/tsconfig.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "extends": "../../tsconfig.json", - "compilerOptions": { - "baseUrl": ".", - "outDir": "./types" - }, - "include": [ - "./src/**/*" - ] -} diff --git a/packages/bbob-html/.gitignore b/packages/bbob-html/.gitignore index 3f22f0b7..22f5164e 100644 --- a/packages/bbob-html/.gitignore +++ b/packages/bbob-html/.gitignore @@ -2,7 +2,3 @@ coverage dist lib es -types -test/*.d.ts -test/*.map -tsconfig.tsbuildinfo diff --git a/packages/bbob-html/.npmignore b/packages/bbob-html/.npmignore index c1046191..65922b56 100644 --- a/packages/bbob-html/.npmignore +++ b/packages/bbob-html/.npmignore @@ -1,4 +1,4 @@ -pnpm-lock.yaml +package-lock.json coverage src !dist diff --git a/packages/bbob-html/package.json b/packages/bbob-html/package.json index 391ba43b..89d0c0af 100644 --- a/packages/bbob-html/package.json +++ b/packages/bbob-html/package.json @@ -9,24 +9,14 @@ "bbob" ], "dependencies": { - "@bbob/core": "*", - "@bbob/plugin-helper": "*" + "@bbob/core": "workspace:*", + "@bbob/plugin-helper": "workspace:*" }, "main": "lib/index.js", "module": "es/index.js", "jsnext:main": "es/index.js", "browser": "dist/index.js", "browserName": "BbobHtml", - "types": "types/index.d.ts", - "exports": { - ".": { - "types": "./types/index.d.ts", - "import": "./es/index.js", - "require": "./lib/index.js", - "browser": "./dist/index.min.js", - "umd": "./dist/index.min.js" - } - }, "homepage": "https://github.com/JiLiZART/bbob", "author": "Nikolay Kostyurin ", "license": "MIT", @@ -38,22 +28,19 @@ "url": "git://github.com/JiLiZART/bbob.git" }, "scripts": { - "build:commonjs": "pkg-task", - "build:es": "pkg-task", - "build:umd": "pkg-task", - "build": "pkg-task", - "test": "pkg-task", - "cover": "pkg-task", - "lint": "pkg-task", - "size": "pkg-task", - "bundlesize": "pkg-task", - "types": "pkg-task", - "prepublishOnly": "npm run build" + "build:commonjs": "../../scripts/pkg-task build-commonjs", + "build:es": "../../scripts/pkg-task build-es", + "build:umd": "../../scripts/pkg-task build-umd", + "build": "npm run build:commonjs && npm run build:es && npm run build:umd", + "test": "../../scripts/pkg-task test", + "cover": "../../scripts/pkg-task cover", + "lint": "../../scripts/pkg-task lint", + "size": "../../scripts/pkg-task size", + "bundlesize": "../../scripts/pkg-task bundlesize" }, "size-limit": [ { - "path": "./dist/index.min.js", - "size": "4.6 KB" + "path": "lib/index.js" } ], "bundlesize": [ diff --git a/packages/bbob-html/src/index.js b/packages/bbob-html/src/index.js new file mode 100644 index 00000000..10acab4c --- /dev/null +++ b/packages/bbob-html/src/index.js @@ -0,0 +1,47 @@ +import core from '@bbob/core'; +import { attrsToString } from '@bbob/plugin-helper'; + +const SELFCLOSE_END_TAG = '/>'; +const CLOSE_START_TAG = ''; + +const renderNode = (node, { stripTags = false }) => { + if (!node) return ''; + const type = typeof node; + + if (type === 'string' || type === 'number') { + return node; + } + + if (type === 'object') { + if (stripTags === true) { + // eslint-disable-next-line no-use-before-define + return renderNodes(node.content, { stripTags }); + } + + if (node.content === null) { + return [START_TAG, node.tag, attrsToString(node.attrs), SELFCLOSE_END_TAG].join(''); + } + + // eslint-disable-next-line no-use-before-define + return [START_TAG, node.tag, attrsToString(node.attrs), END_TAG, renderNodes(node.content), CLOSE_START_TAG, node.tag, END_TAG].join(''); + } + + if (Array.isArray(node)) { + // eslint-disable-next-line no-use-before-define + return renderNodes(node, { stripTags }); + } + + return ''; +}; + +const renderNodes = (nodes, { stripTags = false } = {}) => [] + .concat(nodes) + .reduce((r, node) => r + renderNode(node, { stripTags }), ''); + +const toHTML = (source, plugins, options) => core(plugins) + .process(source, { ...options, render: renderNodes }).html; + +export const render = renderNodes; +export default toHTML; diff --git a/packages/bbob-html/src/index.ts b/packages/bbob-html/src/index.ts deleted file mode 100644 index 1248e756..00000000 --- a/packages/bbob-html/src/index.ts +++ /dev/null @@ -1,61 +0,0 @@ -import core, { BBobCoreOptions, BBobPlugins } from '@bbob/core'; -import { attrsToString, isTagNode, TagNode, TagNodeTree } from '@bbob/plugin-helper'; - -const SELFCLOSE_END_TAG = '/>'; -const CLOSE_START_TAG = ''; - -export type BBobHTMLOptions = { - stripTags?: boolean -} & BBobCoreOptions - -function renderNode(node?: TagNodeTree, options?: BBobHTMLOptions): string { - const { stripTags = false } = options || {} - - if (typeof node === 'undefined' || node === null) { - return '' - } - - if (typeof node === 'string' || typeof node === 'number') { - return String(node); - } - - if (Array.isArray(node)) { - return render(node, options); - } - - if (isTagNode(node)) { - if (stripTags) { - return render(node.content, options); - } - - const attrs = attrsToString(node.attrs) - - if (node.content === null) { - return START_TAG + node.tag + attrs + SELFCLOSE_END_TAG - } - - return START_TAG + node.tag + attrs + END_TAG + render(node.content, options) + CLOSE_START_TAG + node.tag + END_TAG; - } - - return ''; -} - -export function render(nodes: TagNodeTree, options?: BBobHTMLOptions): string { - if (Array.isArray(nodes)) { - return nodes.reduce((r, node) => r + renderNode(node, options), '') - } - - if (nodes) { - return renderNode(nodes, options) - } - - return '' -} - -export function html(source: InputValue, plugins: BBobPlugins, options?: BBobHTMLOptions) { - return core(plugins).process(source, { ...options, render: render }).html -} - -export default html; diff --git a/packages/bbob-html/test/index.test.ts b/packages/bbob-html/test/index.test.js similarity index 89% rename from packages/bbob-html/test/index.test.ts rename to packages/bbob-html/test/index.test.js index ec098180..453912c7 100644 --- a/packages/bbob-html/test/index.test.ts +++ b/packages/bbob-html/test/index.test.js @@ -1,6 +1,6 @@ -import toHTML, { BBobHTMLOptions, render } from '../src'; +import toHTML, {render} from '../src'; -const process = (input: string, params?: BBobHTMLOptions) => toHTML(input, [], params); +const process = (input, params) => toHTML(input, [], params); describe('@bbob/html', () => { test('render bbcode tag with single param as html tag', () => { diff --git a/packages/bbob-html/tsconfig.json b/packages/bbob-html/tsconfig.json deleted file mode 100644 index 385f1a81..00000000 --- a/packages/bbob-html/tsconfig.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "extends": "../../tsconfig.json", - "compilerOptions": { - "baseUrl": ".", - "outDir": "./types" - }, - "include": [ - "./src/**/*" - ] -} diff --git a/packages/bbob-parser/.gitignore b/packages/bbob-parser/.gitignore index 3f22f0b7..22f5164e 100644 --- a/packages/bbob-parser/.gitignore +++ b/packages/bbob-parser/.gitignore @@ -2,7 +2,3 @@ coverage dist lib es -types -test/*.d.ts -test/*.map -tsconfig.tsbuildinfo diff --git a/packages/bbob-parser/.npmignore b/packages/bbob-parser/.npmignore index c1046191..65922b56 100644 --- a/packages/bbob-parser/.npmignore +++ b/packages/bbob-parser/.npmignore @@ -1,4 +1,4 @@ -pnpm-lock.yaml +package-lock.json coverage src !dist diff --git a/packages/bbob-parser/package.json b/packages/bbob-parser/package.json index 78660238..f73b207b 100644 --- a/packages/bbob-parser/package.json +++ b/packages/bbob-parser/package.json @@ -12,59 +12,14 @@ "array", "parse" ], - "files": [ - "dist", - "lib", - "src", - "es", - "types" - ], "dependencies": { - "@bbob/plugin-helper": "*" + "@bbob/plugin-helper": "workspace:*" }, "main": "lib/index.js", "module": "es/index.js", "jsnext:main": "es/index.js", "browser": "dist/index.js", "browserName": "BbobParser", - "types": "types/index.d.ts", - "exports": { - ".": { - "types": "./types/index.d.ts", - "import": "./es/index.js", - "require": "./lib/index.js", - "browser": "./dist/index.min.js", - "umd": "./dist/index.min.js" - }, - "./lexer": { - "types": "./types/lexer.d.ts", - "import": "./es/lexer.js", - "require": "./lib/lexer.js", - "browser": "./dist/index.min.js", - "umd": "./dist/index.min.js" - }, - "./parse": { - "types": "./types/parse.d.ts", - "import": "./es/parse.js", - "require": "./lib/parse.js", - "browser": "./dist/index.min.js", - "umd": "./dist/index.min.js" - }, - "./Token": { - "types": "./types/Token.d.ts", - "import": "./es/Token.js", - "require": "./lib/Token.js", - "browser": "./dist/index.min.js", - "umd": "./dist/index.min.js" - }, - "./utils": { - "types": "./types/utils.d.ts", - "import": "./es/utils.js", - "require": "./lib/utils.js", - "browser": "./dist/index.min.js", - "umd": "./dist/index.min.js" - } - }, "homepage": "https://github.com/JiLiZART/bbob", "author": "Nikolay Kostyurin ", "license": "MIT", @@ -76,22 +31,20 @@ "url": "git://github.com/JiLiZART/bbob.git" }, "scripts": { - "build:commonjs": "pkg-task", - "build:es": "pkg-task", - "build:umd": "pkg-task", - "build": "pkg-task", - "test": "pkg-task", - "cover": "pkg-task", - "lint": "pkg-task", - "size": "pkg-task", - "bundlesize": "pkg-task", - "types": "pkg-task", + "build:commonjs": "../../scripts/pkg-task build-commonjs", + "build:es": "../../scripts/pkg-task build-es", + "build:umd": "../../scripts/pkg-task build-umd", + "build": "npm run build:commonjs && npm run build:es && npm run build:umd", + "test": "../../scripts/pkg-task test", + "cover": "../../scripts/pkg-task cover", + "lint": "../../scripts/pkg-task lint", + "size": "../../scripts/pkg-task size", + "bundlesize": "../../scripts/pkg-task bundlesize", "prepublishOnly": "npm run build" }, "size-limit": [ { - "path": "./dist/index.min.js", - "size": "3 KB" + "path": "lib/index.js" } ], "bundlesize": [ @@ -102,5 +55,11 @@ ], "publishConfig": { "registry": "https://registry.npmjs.org/" - } + }, + "files": [ + "dist", + "lib", + "src", + "es" + ] } diff --git a/packages/bbob-parser/src/Token.ts b/packages/bbob-parser/src/Token.js similarity index 64% rename from packages/bbob-parser/src/Token.ts rename to packages/bbob-parser/src/Token.js index 43f3b02c..c9e2dbee 100644 --- a/packages/bbob-parser/src/Token.ts +++ b/packages/bbob-parser/src/Token.js @@ -5,11 +5,10 @@ import { } from '@bbob/plugin-helper'; // type, value, line, row, - -const TOKEN_TYPE_ID = 't'; // 0; -const TOKEN_VALUE_ID = 'v'; // 1; -const TOKEN_COLUMN_ID = 'r'; // 2; -const TOKEN_LINE_ID = 'l'; // 3; +const TOKEN_TYPE_ID = 'type'; // 0; +const TOKEN_VALUE_ID = 'value'; // 1; +const TOKEN_COLUMN_ID = 'row'; // 2; +const TOKEN_LINE_ID = 'line'; // 3; const TOKEN_TYPE_WORD = 1; // 'word'; const TOKEN_TYPE_TAG = 2; // 'tag'; @@ -18,19 +17,29 @@ const TOKEN_TYPE_ATTR_VALUE = 4; // 'attr-value'; const TOKEN_TYPE_SPACE = 5; // 'space'; const TOKEN_TYPE_NEW_LINE = 6; // 'new-line'; -const getTokenValue = (token: Token) => { +/** + * @param {Token} token + * @returns {string} + */ +const getTokenValue = (token) => { if (token && typeof token[TOKEN_VALUE_ID] !== 'undefined') { return token[TOKEN_VALUE_ID]; } return ''; }; +/** + * @param {Token}token + * @returns {number} + */ +const getTokenLine = (token) => (token && token[TOKEN_LINE_ID]) || 0; +const getTokenColumn = (token) => (token && token[TOKEN_COLUMN_ID]) || 0; -const getTokenLine = (token: Token) => (token && token[TOKEN_LINE_ID]) || 0; - -const getTokenColumn = (token: Token) => (token && token[TOKEN_COLUMN_ID]) || 0; - -const isTextToken = (token: Token) => { +/** + * @param {Token} token + * @returns {boolean} + */ +const isTextToken = (token) => { if (token && typeof token[TOKEN_TYPE_ID] !== 'undefined') { return token[TOKEN_TYPE_ID] === TOKEN_TYPE_SPACE || token[TOKEN_TYPE_ID] === TOKEN_TYPE_NEW_LINE @@ -40,19 +49,20 @@ const isTextToken = (token: Token) => { return false; }; -const isTagToken = (token: Token) => { +/** + * @param {Token} token + * @returns {boolean} + */ +const isTagToken = (token) => { if (token && typeof token[TOKEN_TYPE_ID] !== 'undefined') { return token[TOKEN_TYPE_ID] === TOKEN_TYPE_TAG; } return false; }; - -const isTagEnd = (token: Token) => getTokenValue(token).charCodeAt(0) === SLASH.charCodeAt(0); - -const isTagStart = (token: Token) => !isTagEnd(token); - -const isAttrNameToken = (token: Token) => { +const isTagEnd = (token) => getTokenValue(token).charCodeAt(0) === SLASH.charCodeAt(0); +const isTagStart = (token) => !isTagEnd(token); +const isAttrNameToken = (token) => { if (token && typeof token[TOKEN_TYPE_ID] !== 'undefined') { return token[TOKEN_TYPE_ID] === TOKEN_TYPE_ATTR_NAME; } @@ -60,7 +70,11 @@ const isAttrNameToken = (token: Token) => { return false; }; -const isAttrValueToken = (token: Token) => { +/** + * @param {Token} token + * @returns {boolean} + */ +const isAttrValueToken = (token) => { if (token && typeof token[TOKEN_TYPE_ID] !== 'undefined') { return token[TOKEN_TYPE_ID] === TOKEN_TYPE_ATTR_VALUE; } @@ -68,13 +82,13 @@ const isAttrValueToken = (token: Token) => { return false; }; -const getTagName = (token: Token) => { +const getTagName = (token) => { const value = getTokenValue(token); return isTagEnd(token) ? value.slice(1) : value; }; -const tokenToText = (token: Token) => { +const convertTagToText = (token) => { let text = OPEN_BRAKET; text += getTokenValue(token); @@ -83,29 +97,23 @@ const tokenToText = (token: Token) => { return text; }; -/** - * @export - * @class Token - */ -class Token { - private t: number // type - private v: string // value - private l: number // line - private r: number // row - - constructor(type?: number, value?: TokenValue, row: number = 0, col: number = 0) { - this[TOKEN_LINE_ID] = row; - this[TOKEN_COLUMN_ID] = col; - this[TOKEN_TYPE_ID] = type || 0; +class Token { + /** + * @param {String} type + * @param {String} value + * @param line + * @param row + */ + constructor(type, value, line, row) { + this[TOKEN_TYPE_ID] = Number(type); this[TOKEN_VALUE_ID] = String(value); - } - - get type() { - return this[TOKEN_TYPE_ID] + this[TOKEN_LINE_ID] = Number(line); + this[TOKEN_COLUMN_ID] = Number(row); } isEmpty() { - return this[TOKEN_TYPE_ID] === 0 || isNaN(this[TOKEN_TYPE_ID]); + // eslint-disable-next-line no-restricted-globals + return isNaN(this[TOKEN_TYPE_ID]); } isText() { @@ -149,7 +157,7 @@ class Token { } toString() { - return tokenToText(this); + return convertTagToText(this); } } diff --git a/packages/bbob-parser/src/index.js b/packages/bbob-parser/src/index.js new file mode 100644 index 00000000..4b92525c --- /dev/null +++ b/packages/bbob-parser/src/index.js @@ -0,0 +1,2 @@ +export { TagNode } from '@bbob/plugin-helper'; +export { default, parse } from './parse'; diff --git a/packages/bbob-parser/src/index.ts b/packages/bbob-parser/src/index.ts deleted file mode 100644 index 82e60e86..00000000 --- a/packages/bbob-parser/src/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -export { TagNode } from '@bbob/plugin-helper'; -export { default } from './parse'; -export * from './parse'; -export * from './lexer' -export * from './types' diff --git a/packages/bbob-parser/src/lexer.ts b/packages/bbob-parser/src/lexer.js similarity index 77% rename from packages/bbob-parser/src/lexer.ts rename to packages/bbob-parser/src/lexer.js index 546555c5..0bab1fed 100644 --- a/packages/bbob-parser/src/lexer.ts +++ b/packages/bbob-parser/src/lexer.js @@ -14,17 +14,36 @@ import { import { Token, TYPE_ATTR_NAME, TYPE_ATTR_VALUE, TYPE_NEW_LINE, TYPE_SPACE, TYPE_TAG, TYPE_WORD, } from './Token'; -import { CharGrabber, createCharGrabber, trimChar, unquote } from './utils'; -import type { LexerOptions, LexerTokenizer } from "./types"; +import { createCharGrabber, trimChar, unquote } from './utils'; // for cases const EM = '!'; -export function createTokenOfType(type: number, value: string, r = 0, cl = 0) { - return new Token(type, value, r, cl) -} - -export function createLexer(buffer: string, options: LexerOptions = {}): LexerTokenizer { +/** + * Creates a Token entity class + * @param {Number} type + * @param {String} value + * @param {Number} r line number + * @param {Number} cl char number in line + */ +const createToken = (type, value, r = 0, cl = 0) => new Token(type, value, r, cl); + +/** + * @typedef {Object} Lexer + * @property {Function} tokenize + * @property {Function} isTokenNested + */ + +/** + * @param {String} buffer + * @param {Object} options + * @param {Function} options.onToken + * @param {String} options.openTag + * @param {String} options.closeTag + * @param {Boolean} options.enableEscapeTags + * @return {Lexer} + */ +function createLexer(buffer, options = {}) { const STATE_WORD = 0; const STATE_TAG = 1; const STATE_TAG_ATTRS = 2; @@ -40,7 +59,7 @@ export function createLexer(buffer: string, options: LexerOptions = {}): LexerTo let stateMode = STATE_WORD; let tagMode = TAG_STATE_NAME; let contextFreeTag = ''; - const tokens = new Array>(Math.floor(buffer.length)); + const tokens = new Array(Math.floor(buffer.length)); const openTag = options.openTag || OPEN_BRAKET; const closeTag = options.closeTag || CLOSE_BRAKET; const escapeTags = !!options.enableEscapeTags; @@ -57,20 +76,20 @@ export function createLexer(buffer: string, options: LexerOptions = {}): LexerTo const WHITESPACES = [SPACE, TAB]; const SPECIAL_CHARS = [EQ, SPACE, TAB]; - const isCharReserved = (char: string) => (RESERVED_CHARS.indexOf(char) >= 0); - const isNewLine = (char: string) => char === N; - const isWhiteSpace = (char: string) => (WHITESPACES.indexOf(char) >= 0); - const isCharToken = (char: string) => (NOT_CHAR_TOKENS.indexOf(char) === -1); - const isSpecialChar = (char: string) => (SPECIAL_CHARS.indexOf(char) >= 0); - const isEscapableChar = (char: string) => (char === openTag || char === closeTag || char === BACKSLASH); - const isEscapeChar = (char: string) => char === BACKSLASH; + const isCharReserved = (char) => (RESERVED_CHARS.indexOf(char) >= 0); + const isNewLine = (char) => char === N; + const isWhiteSpace = (char) => (WHITESPACES.indexOf(char) >= 0); + const isCharToken = (char) => (NOT_CHAR_TOKENS.indexOf(char) === -1); + const isSpecialChar = (char) => (SPECIAL_CHARS.indexOf(char) >= 0); + const isEscapableChar = (char) => (char === openTag || char === closeTag || char === BACKSLASH); + const isEscapeChar = (char) => char === BACKSLASH; const onSkip = () => { col++; }; - const unq = (val: string) => unquote(trimChar(val, QUOTEMARK)); + const unq = (val) => unquote(trimChar(val, QUOTEMARK)); - const checkContextFreeMode = (name: string, isClosingTag?: boolean) => { + const checkContextFreeMode = (name, isClosingTag) => { if (contextFreeTag !== '' && isClosingTag) { contextFreeTag = ''; } @@ -87,8 +106,8 @@ export function createLexer(buffer: string, options: LexerOptions = {}): LexerTo * @param {Number} type * @param {String} value */ - function emitToken(type: number, value: string) { - const token = createTokenOfType(type, value, row, col); + function emitToken(type, value) { + const token = createToken(type, value, row, col); onToken(token); @@ -96,9 +115,9 @@ export function createLexer(buffer: string, options: LexerOptions = {}): LexerTo tokens[tokenIndex] = token; } - function nextTagState(tagChars: CharGrabber, isSingleValueTag: boolean) { + function nextTagState(tagChars, isSingleValueTag) { if (tagMode === TAG_STATE_ATTR) { - const validAttrName = (char: string) => !(char === EQ || isWhiteSpace(char)); + const validAttrName = (char) => !(char === EQ || isWhiteSpace(char)); const name = tagChars.grabWhile(validAttrName); const isEnd = tagChars.isLast(); const isValue = tagChars.getCurr() !== EQ; @@ -124,7 +143,7 @@ export function createLexer(buffer: string, options: LexerOptions = {}): LexerTo if (tagMode === TAG_STATE_VALUE) { let stateSpecial = false; - const validAttrValue = (char: string) => { + const validAttrValue = (char) => { // const isEQ = char === EQ; const isQM = char === QUOTEMARK; const prevChar = tagChars.getPrev(); @@ -133,7 +152,7 @@ export function createLexer(buffer: string, options: LexerOptions = {}): LexerTo const isNextEQ = nextChar === EQ; const isWS = isWhiteSpace(char); // const isPrevWS = isWhiteSpace(prevChar); - const isNextWS = nextChar && isWhiteSpace(nextChar); + const isNextWS = isWhiteSpace(nextChar); if (stateSpecial && isSpecialChar(char)) { return true; @@ -148,7 +167,7 @@ export function createLexer(buffer: string, options: LexerOptions = {}): LexerTo } if (!isSingleValueTag) { - return !isWS; + return isWS === false; // return (isEQ || isWS) === false; } @@ -167,7 +186,7 @@ export function createLexer(buffer: string, options: LexerOptions = {}): LexerTo return TAG_STATE_ATTR; } - const validName = (char: string) => !(char === EQ || isWhiteSpace(char) || tagChars.isLast()); + const validName = (char) => !(char === EQ || isWhiteSpace(char) || tagChars.isLast()); const name = tagChars.grabWhile(validName); emitToken(TYPE_TAG, name); @@ -195,7 +214,7 @@ export function createLexer(buffer: string, options: LexerOptions = {}): LexerTo const substr = chars.substrUntilChar(closeTag); const hasInvalidChars = substr.length === 0 || substr.indexOf(openTag) >= 0; - if ((nextChar && isCharReserved(nextChar)) || hasInvalidChars || chars.isLast()) { + if (isCharReserved(nextChar) || hasInvalidChars || chars.isLast()) { emitToken(TYPE_WORD, currChar); return STATE_WORD; @@ -285,7 +304,7 @@ export function createLexer(buffer: string, options: LexerOptions = {}): LexerTo chars.skip(); // skip the \ without emitting anything - if (nextChar && isEscapableChar(nextChar)) { + if (isEscapableChar(nextChar)) { chars.skip(); // skip past the [, ] or \ as well emitToken(TYPE_WORD, nextChar); @@ -298,7 +317,7 @@ export function createLexer(buffer: string, options: LexerOptions = {}): LexerTo return STATE_WORD; } - const isChar = (char: string) => isCharToken(char) && !isEscapeChar(char); + const isChar = (char) => isCharToken(char) && !isEscapeChar(char); const word = chars.grabWhile(isChar); @@ -337,7 +356,7 @@ export function createLexer(buffer: string, options: LexerOptions = {}): LexerTo return tokens; } - function isTokenNested(token: Token) { + function isTokenNested(token) { const value = openTag + SLASH + token.getValue(); // potential bottleneck return buffer.indexOf(value) > -1; @@ -346,5 +365,8 @@ export function createLexer(buffer: string, options: LexerOptions = {}): LexerTo return { tokenize, isTokenNested, - } + }; } + +export const createTokenOfType = createToken; +export { createLexer }; diff --git a/benchmark/lexer_old.js b/packages/bbob-parser/src/lexer_old.js similarity index 97% rename from benchmark/lexer_old.js rename to packages/bbob-parser/src/lexer_old.js index 0332fabb..dd64d1ed 100644 --- a/benchmark/lexer_old.js +++ b/packages/bbob-parser/src/lexer_old.js @@ -1,5 +1,5 @@ /* eslint-disable no-plusplus,no-param-reassign */ -const { +import { OPEN_BRAKET, CLOSE_BRAKET, QUOTEMARK, @@ -9,12 +9,12 @@ const { TAB, EQ, N, -} = require('@bbob/plugin-helper'); +} from '@bbob/plugin-helper'; -const { +import { Token, TYPE_ATTR_NAME, TYPE_ATTR_VALUE, TYPE_NEW_LINE, TYPE_SPACE, TYPE_TAG, TYPE_WORD, -} = require('@bbob/parser/Token'); -const { createCharGrabber, trimChar, unquote } = require('@bbob/parser/utils'); +} from './Token'; +import { createCharGrabber, trimChar, unquote } from './utils'; // for cases const EM = '!'; @@ -238,4 +238,5 @@ function createLexer(buffer, options = {}) { }; } -module.exports.createLexer = createLexer; +export const createTokenOfType = createToken; +export { createLexer }; diff --git a/packages/bbob-parser/src/parse.js b/packages/bbob-parser/src/parse.js new file mode 100644 index 00000000..3d3eba10 --- /dev/null +++ b/packages/bbob-parser/src/parse.js @@ -0,0 +1,303 @@ +import { + TagNode, CLOSE_BRAKET, OPEN_BRAKET, isTagNode, +} from '@bbob/plugin-helper'; +import { createLexer } from './lexer'; +import { createList } from './utils'; + +/** + * @public + * @param {string} input + * @param {Object} opts + * @param {Function} opts.createTokenizer + * @param {Array} opts.onlyAllowTags + * @param {Array} opts.contextFreeTags + * @param {Boolean} opts.enableEscapeTags + * @param {string} opts.openTag + * @param {string} opts.closeTag + * @return {Array} + */ +const parse = (input, opts = {}) => { + const options = opts; + const openTag = options.openTag || OPEN_BRAKET; + const closeTag = options.closeTag || CLOSE_BRAKET; + const onlyAllowTags = (options.onlyAllowTags || []) + .filter(Boolean) + .map((tag) => tag.toLowerCase()); + + let tokenizer = null; + + /** + * Result AST of nodes + * @private + * @type {NodeList} + */ + const nodes = createList(); + /** + * Temp buffer of nodes that's nested to another node + * @private + * @type {NodeList} + */ + const nestedNodes = createList(); + /** + * Temp buffer of nodes [tag..]...[/tag] + * @private + * @type {NodeList} + */ + const tagNodes = createList(); + /** + * Temp buffer of tag attributes + * @private + * @type {NodeList} + */ + const tagNodesAttrName = createList(); + + /** + * Cache for nested tags checks + * @type Set + */ + const nestedTagsMap = new Set(); + + /** + * @param {Token} token + * @returns {boolean} + */ + const isTokenNested = (token) => { + const value = token.getValue(); + + if (!nestedTagsMap.has(value) && tokenizer.isTokenNested && tokenizer.isTokenNested(token)) { + nestedTagsMap.add(value); + + return true; + } + + return nestedTagsMap.has(value); + }; + + /** + * @private + * @param {string} tagName + * @returns {boolean} + */ + const isTagNested = (tagName) => Boolean(nestedTagsMap.has(tagName)); + + /** + * @private + * @param {string} value + * @return {boolean} + */ + const isAllowedTag = (value) => { + if (onlyAllowTags.length) { + return onlyAllowTags.indexOf(value.toLowerCase()) >= 0; + } + + return true; + }; + + /** + * Flushes temp tag nodes and its attributes buffers + * @private + * @return {Array} + */ + const flushTagNodes = () => { + if (tagNodes.flushLast()) { + tagNodesAttrName.flushLast(); + } + }; + + /** + * @private + * @return {Array} + */ + const getNodes = () => { + const lastNestedNode = nestedNodes.getLast(); + + if (lastNestedNode && Array.isArray(lastNestedNode.content)) { + return lastNestedNode.content; + } + + return nodes.toArray(); + }; + + /** + * @private + * @param {string|TagNode} node + * @param {boolean} isNested + */ + const appendNodeAsString = (node, isNested = true) => { + const items = getNodes(); + + if (Array.isArray(items)) { + items.push(node.toTagStart({ openTag, closeTag })); + + if (node.content.length) { + node.content.forEach((item) => { + items.push(item); + }); + + if (isNested) { + items.push(node.toTagEnd({ openTag, closeTag })); + } + } + } + }; + + /** + * @private + * @param {string|TagNode} node + */ + const appendNodes = (node) => { + const items = getNodes(); + + if (Array.isArray(items)) { + if (isTagNode(node)) { + if (isAllowedTag(node.tag)) { + items.push(node.toTagNode()); + } else { + appendNodeAsString(node); + } + } else { + items.push(node); + } + } + }; + + /** + * @private + * @param {Token} token + */ + const handleTagStart = (token) => { + flushTagNodes(); + + const tagNode = TagNode.create(token.getValue()); + const isNested = isTokenNested(token); + + tagNodes.push(tagNode); + + if (isNested) { + nestedNodes.push(tagNode); + } else { + appendNodes(tagNode, token); + } + }; + + /** + * @private + * @param {Token} token + */ + const handleTagEnd = (token) => { + flushTagNodes(); + + const lastNestedNode = nestedNodes.flushLast(); + + if (lastNestedNode) { + appendNodes(lastNestedNode, token); + } else if (typeof options.onError === 'function') { + const tag = token.getValue(); + const line = token.getLine(); + const column = token.getColumn(); + + options.onError({ + message: `Inconsistent tag '${tag}' on line ${line} and column ${column}`, + tagName: tag, + lineNumber: line, + columnNumber: column, + }); + } + }; + + /** + * @private + * @param {Token} token + */ + const handleTag = (token) => { + // [tag] + if (token.isStart()) { + handleTagStart(token); + } + + // [/tag] + if (token.isEnd()) { + handleTagEnd(token); + } + }; + + /** + * @private + * @param {Token} token + */ + const handleNode = (token) => { + /** + * @type {TagNode} + */ + const lastTagNode = tagNodes.getLast(); + const tokenValue = token.getValue(); + const isNested = isTagNested(token); + + if (lastTagNode) { + if (token.isAttrName()) { + tagNodesAttrName.push(tokenValue); + lastTagNode.attr(tagNodesAttrName.getLast(), ''); + } else if (token.isAttrValue()) { + const attrName = tagNodesAttrName.getLast(); + + if (attrName) { + lastTagNode.attr(attrName, tokenValue); + tagNodesAttrName.flushLast(); + } else { + lastTagNode.attr(tokenValue, tokenValue); + } + } else if (token.isText()) { + if (isNested) { + lastTagNode.append(tokenValue); + } else { + appendNodes(tokenValue); + } + } else if (token.isTag()) { + // if tag is not allowed, just past it as is + appendNodes(token.toString()); + } + } else if (token.isText()) { + appendNodes(tokenValue); + } else if (token.isTag()) { + // if tag is not allowed, just past it as is + appendNodes(token.toString()); + } + }; + + /** + * @private + * @param {Token} token + */ + const onToken = (token) => { + if (token.isTag()) { + handleTag(token); + } else { + handleNode(token); + } + }; + + tokenizer = (opts.createTokenizer ? opts.createTokenizer : createLexer)(input, { + onToken, + openTag, + closeTag, + onlyAllowTags: options.onlyAllowTags, + contextFreeTags: options.contextFreeTags, + enableEscapeTags: options.enableEscapeTags, + }); + + // eslint-disable-next-line no-unused-vars + const tokens = tokenizer.tokenize(); + + // handles situations where we open tag, but forgot close them + // for ex [q]test[/q][u]some[/u][q]some [u]some[/u] // forgot to close [/q] + // so we need to flush nested content to nodes array + const lastNestedNode = nestedNodes.flushLast(); + if (lastNestedNode && isTagNested(lastNestedNode.tag)) { + appendNodeAsString(lastNestedNode, false); + } + + return nodes.toArray(); +}; + +export { parse }; +export default parse; diff --git a/packages/bbob-parser/src/parse.ts b/packages/bbob-parser/src/parse.ts deleted file mode 100644 index 3aecb6b3..00000000 --- a/packages/bbob-parser/src/parse.ts +++ /dev/null @@ -1,349 +0,0 @@ -import { - CLOSE_BRAKET, - OPEN_BRAKET, - TagNode, - isTagNode, -} from "@bbob/plugin-helper"; - -import { createLexer } from "./lexer"; - -import type { NodeContent, TagNodeTree } from "@bbob/plugin-helper"; -import type { LexerTokenizer, LexerOptions } from "./types"; -import type { Token } from "./Token"; - -type ParseError = { - tagName: string; - lineNumber: number; - columnNumber: number; -}; - -export interface ParseOptions { - createTokenizer?: (input: string, options?: LexerOptions) => LexerTokenizer; - openTag?: string; - closeTag?: string; - onlyAllowTags?: string[]; - contextFreeTags?: string[]; - enableEscapeTags?: boolean; - onError?: (error: ParseError) => void; -} - -class NodeList { - private n: Value[]; - - constructor() { - this.n = []; - } - - last() { - if ( - Array.isArray(this.n) && - this.n.length > 0 && - typeof this.n[this.n.length - 1] !== "undefined" - ) { - return this.n[this.n.length - 1]; - } - - return null; - } - - flush() { - return this.n.length ? this.n.pop() : false; - } - - push(value: Value) { - this.n.push(value); - } - - toArray() { - return this.n; - } -} - -const createList = () => new NodeList(); - -function parse(input: string, opts: ParseOptions = {}) { - const options = opts; - const openTag = options.openTag || OPEN_BRAKET; - const closeTag = options.closeTag || CLOSE_BRAKET; - const onlyAllowTags = (options.onlyAllowTags || []) - .filter(Boolean) - .map((tag) => tag.toLowerCase()); - - let tokenizer: LexerTokenizer | null = null; - - /** - * Result AST of nodes - * @private - * @type {NodeList} - */ - const nodes = createList(); - /** - * Temp buffer of nodes that's nested to another node - * @private - */ - const nestedNodes = createList(); - /** - * Temp buffer of nodes [tag..]...[/tag] - * @private - * @type {NodeList} - */ - const tagNodes = createList(); - /** - * Temp buffer of tag attributes - * @private - * @type {NodeList} - */ - const tagNodesAttrName = createList(); - - /** - * Cache for nested tags checks - */ - const nestedTagsMap = new Set(); - - function isTokenNested(token: Token) { - const value = token.getValue(); - const { isTokenNested } = tokenizer || {}; - - if (!nestedTagsMap.has(value) && isTokenNested && isTokenNested(token)) { - nestedTagsMap.add(value); - - return true; - } - - return nestedTagsMap.has(value); - } - - /** - * @private - */ - function isTagNested(tagName: string) { - return Boolean(nestedTagsMap.has(tagName)); - } - - /** - * @private - */ - function isAllowedTag(value: string) { - if (onlyAllowTags.length) { - return onlyAllowTags.indexOf(value.toLowerCase()) >= 0; - } - - return true; - } - - /** - * Flushes temp tag nodes and its attributes buffers - * @private - */ - function flushTagNodes() { - if (tagNodes.flush()) { - tagNodesAttrName.flush(); - } - } - - /** - * @private - */ - function getNodes() { - const lastNestedNode = nestedNodes.last(); - - if (lastNestedNode && isTagNode(lastNestedNode)) { - return lastNestedNode.content; - } - - return nodes.toArray(); - } - - /** - * @private - */ - function appendNodeAsString( - nodes?: TagNodeTree, - node?: TagNode, - isNested = true - ) { - if (Array.isArray(nodes) && typeof node !== "undefined") { - nodes.push(node.toTagStart({ openTag, closeTag })); - - if (Array.isArray(node.content) && node.content.length) { - node.content.forEach((item) => { - nodes.push(item); - }); - - if (isNested) { - nodes.push(node.toTagEnd({ openTag, closeTag })); - } - } - } - } - - /** - * @private - */ - function appendNodes(nodes?: TagNodeTree, node?: NodeContent) { - if (Array.isArray(nodes) && typeof node !== "undefined") { - if (isTagNode(node)) { - if (isAllowedTag(node.tag)) { - nodes.push(node.toTagNode()); - } else { - appendNodeAsString(nodes, node); - } - } else { - nodes.push(node); - } - } - } - - /** - * @private - * @param {Token} token - */ - function handleTagStart(token: Token) { - flushTagNodes(); - - const tagNode = TagNode.create(token.getValue()); - const isNested = isTokenNested(token); - - tagNodes.push(tagNode); - - if (isNested) { - nestedNodes.push(tagNode); - } else { - const nodes = getNodes(); - appendNodes(nodes, tagNode); - } - } - - /** - * @private - * @param {Token} token - */ - function handleTagEnd(token: Token) { - flushTagNodes(); - - const lastNestedNode = nestedNodes.flush(); - - if (lastNestedNode) { - const nodes = getNodes(); - appendNodes(nodes, lastNestedNode); - } else if (typeof options.onError === "function") { - const tag = token.getValue(); - const line = token.getLine(); - const column = token.getColumn(); - - options.onError({ - tagName: tag, - lineNumber: line, - columnNumber: column, - }); - } - } - - /** - * @private - * @param {Token} token - */ - function handleTag(token: Token) { - // [tag] - if (token.isStart()) { - handleTagStart(token); - } - - // [/tag] - if (token.isEnd()) { - handleTagEnd(token); - } - } - - /** - * @private - * @param {Token} token - */ - function handleNode(token: Token) { - /** - * @type {TagNode} - */ - const activeTagNode = tagNodes.last(); - const tokenValue = token.getValue(); - const isNested = isTagNested(token.toString()); - const nodes = getNodes(); - - if (activeTagNode !== null) { - if (token.isAttrName()) { - tagNodesAttrName.push(tokenValue); - const attrName = tagNodesAttrName.last(); - - if (attrName) { - activeTagNode.attr(attrName, ""); - } - } else if (token.isAttrValue()) { - const attrName = tagNodesAttrName.last(); - - if (attrName) { - activeTagNode.attr(attrName, tokenValue); - tagNodesAttrName.flush(); - } else { - activeTagNode.attr(tokenValue, tokenValue); - } - } else if (token.isText()) { - if (isNested) { - activeTagNode.append(tokenValue); - } else { - appendNodes(nodes, tokenValue); - } - } else if (token.isTag()) { - // if tag is not allowed, just pass it as is - appendNodes(nodes, token.toString()); - } - } else if (token.isText()) { - appendNodes(nodes, tokenValue); - } else if (token.isTag()) { - // if tag is not allowed, just pass it as is - appendNodes(nodes, token.toString()); - } - } - - /** - * @private - * @param {Token} token - */ - function onToken(token: Token) { - if (token.isTag()) { - handleTag(token); - } else { - handleNode(token); - } - } - - const lexer = opts.createTokenizer ? opts.createTokenizer : createLexer; - - tokenizer = lexer(input, { - onToken, - openTag, - closeTag, - onlyAllowTags: options.onlyAllowTags, - contextFreeTags: options.contextFreeTags, - enableEscapeTags: options.enableEscapeTags, - }); - - // eslint-disable-next-line no-unused-vars - const tokens = tokenizer.tokenize(); - - // handles situations where we open tag, but forgot close them - // for ex [q]test[/q][u]some[/u][q]some [u]some[/u] // forgot to close [/q] - // so we need to flush nested content to nodes array - const lastNestedNode = nestedNodes.flush(); - if ( - lastNestedNode !== null && - lastNestedNode && - isTagNode(lastNestedNode) && - isTagNested(lastNestedNode.tag) - ) { - appendNodeAsString(getNodes(), lastNestedNode, false); - } - - return nodes.toArray(); -} - -export { parse }; -export default parse; diff --git a/packages/bbob-parser/src/types.ts b/packages/bbob-parser/src/types.ts deleted file mode 100644 index c2dd1b73..00000000 --- a/packages/bbob-parser/src/types.ts +++ /dev/null @@ -1,15 +0,0 @@ -import type Token from "./Token"; - -export interface LexerTokenizer { - tokenize: () => Token[]; - isTokenNested?: (token: Token) => boolean; -} - -export type LexerOptions = { - openTag?: string; - closeTag?: string; - onlyAllowTags?: string[]; - enableEscapeTags?: boolean; - contextFreeTags?: string[]; - onToken?: (token?: Token) => void; -}; diff --git a/packages/bbob-parser/src/utils.js b/packages/bbob-parser/src/utils.js new file mode 100644 index 00000000..c3b68f60 --- /dev/null +++ b/packages/bbob-parser/src/utils.js @@ -0,0 +1,165 @@ +import { + QUOTEMARK, + BACKSLASH, +} from '@bbob/plugin-helper'; + +function CharGrabber(source, options) { + const cursor = { + pos: 0, + len: source.length, + }; + + const substrUntilChar = (char) => { + const { pos } = cursor; + const idx = source.indexOf(char, pos); + + return idx >= 0 ? source.substring(pos, idx) : ''; + }; + const includes = (val) => source.indexOf(val, cursor.pos) >= 0; + const hasNext = () => cursor.len > cursor.pos; + const isLast = () => cursor.pos === cursor.len; + const skip = (num = 1, silent) => { + cursor.pos += num; + + if (options && options.onSkip && !silent) { + options.onSkip(); + } + }; + const rest = () => source.substring(cursor.pos); + const grabN = (num = 0) => source.substring(cursor.pos, cursor.pos + num); + const curr = () => source[cursor.pos]; + const prev = () => { + const prevPos = cursor.pos - 1; + + return typeof source[prevPos] !== 'undefined' ? source[prevPos] : null; + }; + const next = () => { + const nextPos = cursor.pos + 1; + + return nextPos <= (source.length - 1) ? source[nextPos] : null; + }; + const grabWhile = (cond, silent) => { + let start = 0; + + if (hasNext()) { + start = cursor.pos; + + while (hasNext() && cond(curr())) { + skip(1, silent); + } + } + + return source.substring(start, cursor.pos); + }; + /** + * @type {skip} + */ + this.skip = skip; + /** + * @returns {Boolean} + */ + this.hasNext = hasNext; + /** + * @returns {String} + */ + this.getCurr = curr; + /** + * @returns {String} + */ + this.getRest = rest; + /** + * @returns {String} + */ + this.getNext = next; + /** + * @returns {String} + */ + this.getPrev = prev; + /** + * @returns {Boolean} + */ + this.isLast = isLast; + /** + * @returns {Boolean} + */ + this.includes = includes; + /** + * @param {Function} cond + * @param {Boolean} silent + * @return {String} + */ + this.grabWhile = grabWhile; + /** + * @param {Number} num + * @return {String} + */ + this.grabN = grabN; + /** + * Grabs rest of string until it find a char + * @param {String} char + * @return {String} + */ + this.substrUntilChar = substrUntilChar; +} + +/** + * Creates a grabber wrapper for source string, that helps to iterate over string char by char + * @param {String} source + * @param {Object} options + * @param {Function} options.onSkip + * @return CharGrabber + */ +export const createCharGrabber = (source, options) => new CharGrabber(source, options); + +/** + * Trims string from start and end by char + * @example + * trimChar('*hello*', '*') ==> 'hello' + * @param {String} str + * @param {String} charToRemove + * @returns {String} + */ +export const trimChar = (str, charToRemove) => { + while (str.charAt(0) === charToRemove) { + // eslint-disable-next-line no-param-reassign + str = str.substring(1); + } + + while (str.charAt(str.length - 1) === charToRemove) { + // eslint-disable-next-line no-param-reassign + str = str.substring(0, str.length - 1); + } + + return str; +}; + +/** + * Unquotes \" to " + * @param str + * @return {String} + */ +export const unquote = (str) => str.replace(BACKSLASH + QUOTEMARK, QUOTEMARK); + +function NodeList(values = []) { + const nodes = values; + + const getLast = () => ( + Array.isArray(nodes) && nodes.length > 0 && typeof nodes[nodes.length - 1] !== 'undefined' + ? nodes[nodes.length - 1] + : null); + const flushLast = () => (nodes.length ? nodes.pop() : false); + const push = (value) => nodes.push(value); + const toArray = () => nodes; + + this.push = push; + this.toArray = toArray; + this.getLast = getLast; + this.flushLast = flushLast; +} + +/** + * + * @param values + * @return {NodeList} + */ +export const createList = (values = []) => new NodeList(values); diff --git a/packages/bbob-parser/src/utils.ts b/packages/bbob-parser/src/utils.ts deleted file mode 100644 index 4df33621..00000000 --- a/packages/bbob-parser/src/utils.ts +++ /dev/null @@ -1,121 +0,0 @@ -import { - QUOTEMARK, - BACKSLASH, -} from '@bbob/plugin-helper'; - -export type CharGrabberOptions = { - onSkip?: () => void -} - -export class CharGrabber { - private s: string; - private c: { len: number; pos: number }; - private o: CharGrabberOptions; - - constructor(source: string, options: CharGrabberOptions = {}) { - this.s = source - this.c = { - pos: 0, - len: source.length, - }; - - this.o = options - } - - skip(num = 1, silent?: boolean) { - this.c.pos += num; - - if (this.o && this.o.onSkip && !silent) { - this.o.onSkip(); - } - } - - hasNext() { - return this.c.len > this.c.pos - } - - getCurr() { - return this.s[this.c.pos] - } - - getRest() { - return this.s.substring(this.c.pos) - } - - getNext() { - const nextPos = this.c.pos + 1; - - return nextPos <= (this.s.length - 1) ? this.s[nextPos] : null; - } - - getPrev() { - const prevPos = this.c.pos - 1; - - return typeof this.s[prevPos] !== 'undefined' ? this.s[prevPos] : null; - } - - isLast() { - return this.c.pos === this.c.len - } - - includes(val: string) { - return this.s.indexOf(val, this.c.pos) >= 0 - } - - grabWhile(condition: (curr: string) => boolean, silent?: boolean) { - let start = 0; - - if (this.hasNext()) { - start = this.c.pos; - - while (this.hasNext() && condition(this.getCurr())) { - this.skip(1, silent); - } - } - - return this.s.substring(start, this.c.pos); - } - - grabN(num: number = 0) { - return this.s.substring(this.c.pos, this.c.pos + num) - } - - /** - * Grabs rest of string until it find a char - */ - substrUntilChar(char: string) { - const { pos } = this.c; - const idx = this.s.indexOf(char, pos); - - return idx >= 0 ? this.s.substring(pos, idx) : ''; - } -} - -/** - * Creates a grabber wrapper for source string, that helps to iterate over string char by char - */ -export const createCharGrabber = (source: string, options?: CharGrabberOptions) => new CharGrabber(source, options); - -/** - * Trims string from start and end by char - * @example - * trimChar('*hello*', '*') ==> 'hello' - */ -export const trimChar = (str: string, charToRemove: string) => { - while (str.charAt(0) === charToRemove) { - // eslint-disable-next-line no-param-reassign - str = str.substring(1); - } - - while (str.charAt(str.length - 1) === charToRemove) { - // eslint-disable-next-line no-param-reassign - str = str.substring(0, str.length - 1); - } - - return str; -}; - -/** - * Unquotes \" to " - */ -export const unquote = (str: string) => str.replace(BACKSLASH + QUOTEMARK, QUOTEMARK); diff --git a/packages/bbob-parser/test/Token.test.ts b/packages/bbob-parser/test/Token.test.js similarity index 100% rename from packages/bbob-parser/test/Token.test.ts rename to packages/bbob-parser/test/Token.test.js diff --git a/packages/bbob-parser/test/index.test.ts b/packages/bbob-parser/test/index.test.js similarity index 67% rename from packages/bbob-parser/test/index.test.ts rename to packages/bbob-parser/test/index.test.js index 8aa1e84a..cbc20189 100644 --- a/packages/bbob-parser/test/index.test.ts +++ b/packages/bbob-parser/test/index.test.js @@ -2,8 +2,7 @@ import { TagNode } from "../src/index"; describe('index', () => { test('tag with content and params', () => { - const attrs = {test: 1} - const tagNode = TagNode.create('test', attrs, ['Hello']); + const tagNode = TagNode.create('test', {test: 1}, ['Hello']); expect(String(tagNode)).toBe('[test test="1"]Hello[/test]'); }); diff --git a/packages/bbob-parser/test/lexer.test.ts b/packages/bbob-parser/test/lexer.test.js similarity index 95% rename from packages/bbob-parser/test/lexer.test.ts rename to packages/bbob-parser/test/lexer.test.js index 0b6b16ba..e534ab96 100644 --- a/packages/bbob-parser/test/lexer.test.ts +++ b/packages/bbob-parser/test/lexer.test.js @@ -1,14 +1,6 @@ import { TYPE_ID, VALUE_ID, TYPE_WORD, TYPE_TAG, TYPE_ATTR_NAME, TYPE_ATTR_VALUE, TYPE_SPACE, TYPE_NEW_LINE} from '../src/Token' import { createLexer } from '../src/lexer' -declare global { - namespace jest { - interface Matchers { - toBeMantchOutput(expected: Array): CustomMatcherResult; - } - } -} - const TYPE = { WORD: TYPE_WORD, TAG: TYPE_TAG, @@ -18,15 +10,13 @@ const TYPE = { NEW_LINE: TYPE_NEW_LINE, }; -const TYPE_NAMES = Object.fromEntries(Object.keys(TYPE).map((key: keyof typeof TYPE) => [TYPE[key], key])); +const TYPE_NAMES = Object.fromEntries(Object.keys(TYPE).map(key => [TYPE[key], key])); -const tokenize = (input: string) => (createLexer(input).tokenize()); -const tokenizeEscape = (input: string) => (createLexer(input, { enableEscapeTags: true }).tokenize()); -const tokenizeContextFreeTags = (input: string, tags: string[] = []) => (createLexer(input, { contextFreeTags: tags }).tokenize()); +const tokenize = input => (createLexer(input).tokenize()); +const tokenizeEscape = input => (createLexer(input, { enableEscapeTags: true }).tokenize()); +const tokenizeContextFreeTags = (input, tags = []) => (createLexer(input, { contextFreeTags: tags }).tokenize()); describe('lexer', () => { - - expect.extend({ toBeMantchOutput(tokens, output) { if (tokens.length !== output.length) { @@ -525,7 +515,7 @@ describe('lexer', () => { }); describe('html', () => { - const tokenizeHTML = (input: string) => createLexer(input, { openTag: '<', closeTag: '>' }).tokenize(); + const tokenizeHTML = input => createLexer(input, { openTag: '<', closeTag: '>' }).tokenize(); test('normal attributes', () => { const content = ``; @@ -603,7 +593,9 @@ input.buttonred{cursor:hand;font-family:verdana;background:#d12124;color:#fff;he --> ` const tokens = tokenizeHTML(content); - expect(tokens).toBeMantchOutput([]); + const output = []; + + expect(tokens).toBeMantchOutput(output); }); test.skip('script tag', () => { @@ -614,7 +606,9 @@ input.buttonred{cursor:hand;font-family:verdana;background:#d12124;color:#fff;he //--> `; const tokens = tokenizeHTML(content); - expect(tokens).toBeMantchOutput([]); + const output = []; + + expect(tokens).toBeMantchOutput(output); }) }) }); diff --git a/packages/bbob-parser/test/parse.test.ts b/packages/bbob-parser/test/parse.test.js similarity index 98% rename from packages/bbob-parser/test/parse.test.ts rename to packages/bbob-parser/test/parse.test.js index 69c67422..96c5c170 100644 --- a/packages/bbob-parser/test/parse.test.ts +++ b/packages/bbob-parser/test/parse.test.js @@ -1,8 +1,7 @@ import { parse } from '../src' -import type { TagNodeTree } from "@bbob/plugin-helper"; describe('Parser', () => { - const expectOutput = (ast: TagNodeTree, output: Partial) => { + const expectOutput = (ast, output) => { expect(ast).toBeInstanceOf(Array); expect(ast).toEqual(output); }; @@ -441,7 +440,7 @@ sdfasdfasdf }) describe('html', () => { - const parseHTML = (input: string) => parse(input, { openTag: '<', closeTag: '>' }); + const parseHTML = input => parse(input, { openTag: '<', closeTag: '>' }); test('normal attributes', () => { const content = ``; diff --git a/packages/bbob-parser/test/posthtml.test.ts b/packages/bbob-parser/test/posthtml.test.js similarity index 100% rename from packages/bbob-parser/test/posthtml.test.ts rename to packages/bbob-parser/test/posthtml.test.js diff --git a/packages/bbob-parser/test/utils.test.ts b/packages/bbob-parser/test/utils.test.js similarity index 100% rename from packages/bbob-parser/test/utils.test.ts rename to packages/bbob-parser/test/utils.test.js diff --git a/packages/bbob-parser/tsconfig.json b/packages/bbob-parser/tsconfig.json deleted file mode 100644 index 385f1a81..00000000 --- a/packages/bbob-parser/tsconfig.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "extends": "../../tsconfig.json", - "compilerOptions": { - "baseUrl": ".", - "outDir": "./types" - }, - "include": [ - "./src/**/*" - ] -} diff --git a/packages/bbob-plugin-helper/.gitignore b/packages/bbob-plugin-helper/.gitignore index 3f22f0b7..22f5164e 100644 --- a/packages/bbob-plugin-helper/.gitignore +++ b/packages/bbob-plugin-helper/.gitignore @@ -2,7 +2,3 @@ coverage dist lib es -types -test/*.d.ts -test/*.map -tsconfig.tsbuildinfo diff --git a/packages/bbob-plugin-helper/.npmignore b/packages/bbob-plugin-helper/.npmignore index c1046191..65922b56 100644 --- a/packages/bbob-plugin-helper/.npmignore +++ b/packages/bbob-plugin-helper/.npmignore @@ -1,4 +1,4 @@ -pnpm-lock.yaml +package-lock.json coverage src !dist diff --git a/packages/bbob-plugin-helper/package.json b/packages/bbob-plugin-helper/package.json index f4d9464a..e29b6ebe 100644 --- a/packages/bbob-plugin-helper/package.json +++ b/packages/bbob-plugin-helper/package.json @@ -7,49 +7,11 @@ "plugin", "helper" ], - "files": [ - "dist", - "lib", - "src", - "es", - "types" - ], "main": "lib/index.js", "module": "es/index.js", "jsnext:main": "es/index.js", "browser": "dist/index.js", "browserName": "BbobPluginHelper", - "types": "types/index.d.ts", - "exports": { - ".": { - "types": "./types/index.d.ts", - "import": "./es/index.js", - "require": "./lib/index.js", - "browser": "./dist/index.min.js", - "umd": "./dist/index.min.js" - }, - "./char": { - "types": "./types/char.d.ts", - "import": "./es/char.js", - "require": "./lib/char.js", - "browser": "./dist/index.min.js", - "umd": "./dist/index.min.js" - }, - "./helpers": { - "types": "./types/helpers.d.ts", - "import": "./es/helpers.js", - "require": "./lib/helpers.js", - "browser": "./dist/index.min.js", - "umd": "./dist/index.min.js" - }, - "./TagNode": { - "types": "./types/TagNode.d.ts", - "import": "./es/TagNode.js", - "require": "./lib/TagNode.js", - "browser": "./dist/index.min.js", - "umd": "./dist/index.min.js" - } - }, "homepage": "https://github.com/JiLiZART/bbob", "author": "Nikolay Kostyurin ", "license": "MIT", @@ -61,31 +23,35 @@ "url": "git://github.com/JiLiZART/bbob.git" }, "scripts": { - "build:commonjs": "pkg-task", - "build:es": "pkg-task", - "build:umd": "pkg-task", - "build": "pkg-task", - "test": "pkg-task", - "cover": "pkg-task", - "lint": "pkg-task", - "size": "pkg-task", - "bundlesize": "pkg-task", - "types": "pkg-task", + "build:commonjs": "../../scripts/pkg-task build-commonjs", + "build:es": "../../scripts/pkg-task build-es", + "build:umd": "../../scripts/pkg-task build-umd", + "build": "npm run build:commonjs && npm run build:es && npm run build:umd", + "test": "../../scripts/pkg-task test", + "cover": "../../scripts/pkg-task cover", + "lint": "../../scripts/pkg-task lint", + "size": "../../scripts/pkg-task size", + "bundlesize": "../../scripts/pkg-task bundlesize", "prepublishOnly": "npm run build" }, "size-limit": [ { - "path": "./dist/index.min.js", - "size": "1 KB" + "path": "lib/index.js" } ], "bundlesize": [ { "path": "./dist/index.min.js", - "maxSize": "1 KB" + "maxSize": "1024 B" } ], "publishConfig": { "registry": "https://registry.npmjs.org/" - } + }, + "files": [ + "dist", + "lib", + "src", + "es" + ] } diff --git a/packages/bbob-plugin-helper/src/TagNode.js b/packages/bbob-plugin-helper/src/TagNode.js new file mode 100644 index 00000000..810fded5 --- /dev/null +++ b/packages/bbob-plugin-helper/src/TagNode.js @@ -0,0 +1,77 @@ +import { OPEN_BRAKET, CLOSE_BRAKET, SLASH } from './char'; +import { + getNodeLength, appendToNode, attrsToString, attrValue, getUniqAttr, +} from './helpers'; + +const getTagAttrs = (tag, params) => { + const uniqAattr = getUniqAttr(params); + + if (uniqAattr) { + const tagAttr = attrValue(tag, uniqAattr); + const attrs = { ...params }; + + delete attrs[uniqAattr]; + + const attrsStr = attrsToString(attrs); + + return `${tagAttr}${attrsStr}`; + } + + return `${tag}${attrsToString(params)}`; +}; + +class TagNode { + constructor(tag, attrs, content) { + this.tag = tag; + this.attrs = attrs; + this.content = Array.isArray(content) ? content : [content]; + } + + attr(name, value) { + if (typeof value !== 'undefined') { + this.attrs[name] = value; + } + + return this.attrs[name]; + } + + append(value) { + return appendToNode(this, value); + } + + get length() { + return getNodeLength(this); + } + + toTagStart({ openTag = OPEN_BRAKET, closeTag = CLOSE_BRAKET } = {}) { + const tagAttrs = getTagAttrs(this.tag, this.attrs); + + return `${openTag}${tagAttrs}${closeTag}`; + } + + toTagEnd({ openTag = OPEN_BRAKET, closeTag = CLOSE_BRAKET } = {}) { + return `${openTag}${SLASH}${this.tag}${closeTag}`; + } + + toTagNode() { + return new TagNode(this.tag.toLowerCase(), this.attrs, this.content); + } + + toString({ openTag = OPEN_BRAKET, closeTag = CLOSE_BRAKET } = {}) { + const isEmpty = this.content.length === 0; + const content = this.content.reduce((r, node) => r + node.toString({ openTag, closeTag }), ''); + const tagStart = this.toTagStart({ openTag, closeTag }); + + if (isEmpty) { + return tagStart; + } + + return `${tagStart}${content}${this.toTagEnd({ openTag, closeTag })}`; + } +} + +TagNode.create = (tag, attrs = {}, content = []) => new TagNode(tag, attrs, content); +TagNode.isOf = (node, type) => (node.tag === type); + +export { TagNode }; +export default TagNode; diff --git a/packages/bbob-plugin-helper/src/TagNode.ts b/packages/bbob-plugin-helper/src/TagNode.ts deleted file mode 100644 index 40c1eec1..00000000 --- a/packages/bbob-plugin-helper/src/TagNode.ts +++ /dev/null @@ -1,115 +0,0 @@ -import { OPEN_BRAKET, CLOSE_BRAKET, SLASH } from './char'; -import { - getUniqAttr, - getNodeLength, - appendToNode, - attrsToString, - attrValue, - isTagNode, -} from './helpers'; - -import type { NodeContent, TagNodeObject, TagNodeTree } from "./types"; - -const getTagAttrs = (tag: string, params: Record) => { - const uniqAttr = getUniqAttr(params); - - if (uniqAttr) { - const tagAttr = attrValue(tag, uniqAttr); - const attrs = { ...params }; - - delete attrs[String(uniqAttr)]; - - const attrsStr = attrsToString(attrs); - - return `${tagAttr}${attrsStr}`; - } - - return `${tag}${attrsToString(params)}`; -}; - -const renderContent = (content: TagNodeTree, openTag: string, closeTag: string) => { - const toString = (node: NodeContent) => { - if (isTagNode(node)) { - return node.toString({ openTag, closeTag }) - } - - return String(node) - } - - if (Array.isArray(content)) { - return content.reduce((r, node) => { - if (node !== null) { - return r + toString(node) - } - - return r - }, '') - } - - if (content) { - return toString(content) - } - - return null -} - -export class TagNode implements TagNodeObject { - public readonly tag: string - public attrs: Record - public content: TagNodeTree - - constructor(tag: string, attrs: Record, content: TagNodeTree) { - this.tag = tag; - this.attrs = attrs; - this.content = content - } - - attr(name: string, value?: unknown) { - if (typeof value !== 'undefined') { - this.attrs[name] = value; - } - - return this.attrs[name]; - } - - append(value: string) { - return appendToNode(this, value); - } - - get length(): number { - return getNodeLength(this); - } - - toTagStart({ openTag = OPEN_BRAKET, closeTag = CLOSE_BRAKET } = {}) { - const tagAttrs = getTagAttrs(this.tag, this.attrs); - - return `${openTag}${tagAttrs}${closeTag}`; - } - - toTagEnd({ openTag = OPEN_BRAKET, closeTag = CLOSE_BRAKET } = {}) { - return `${openTag}${SLASH}${this.tag}${closeTag}`; - } - - toTagNode() { - return new TagNode(this.tag.toLowerCase(), this.attrs, this.content); - } - - toString({ openTag = OPEN_BRAKET, closeTag = CLOSE_BRAKET } = {}): string { - const content = this.content ? renderContent(this.content, openTag, closeTag) : '' - const tagStart = this.toTagStart({ openTag, closeTag }); - - if (this.content === null || Array.isArray(this.content) && this.content.length === 0) { - return tagStart; - } - - return `${tagStart}${content}${this.toTagEnd({ openTag, closeTag })}`; - } - - static create(tag: string, attrs: Record = {}, content: TagNodeTree = []) { - return new TagNode(tag, attrs, content) - } - - static isOf(node: TagNode, type: string) { - return (node.tag === type) - } -} diff --git a/packages/bbob-plugin-helper/src/char.ts b/packages/bbob-plugin-helper/src/char.js similarity index 100% rename from packages/bbob-plugin-helper/src/char.ts rename to packages/bbob-plugin-helper/src/char.js diff --git a/packages/bbob-plugin-helper/src/helpers.js b/packages/bbob-plugin-helper/src/helpers.js new file mode 100644 index 00000000..9a78821e --- /dev/null +++ b/packages/bbob-plugin-helper/src/helpers.js @@ -0,0 +1,100 @@ +import { N } from './char'; + +const isTagNode = (el) => typeof el === 'object' && !!el.tag; +const isStringNode = (el) => typeof el === 'string'; +const isEOL = (el) => el === N; + +const keysReduce = (obj, reduce, def) => Object.keys(obj).reduce(reduce, def); + +const getNodeLength = (node) => { + if (isTagNode(node)) { + return node.content.reduce((count, contentNode) => count + getNodeLength(contentNode), 0); + } if (isStringNode(node)) { + return node.length; + } + + return 0; +}; + +/** + * Appends value to Tag Node + * @param {TagNode} node + * @param value + */ +const appendToNode = (node, value) => { + node.content.push(value); +}; + +/** + * Replaces " to &qquot; + * @param {String} value + */ +const escapeHTML = (value) => value + .replace(/&/g, '&') + .replace(//g, '>') + .replace(/"/g, '"') + .replace(/'/g, ''') +// eslint-disable-next-line no-script-url + .replace(/(javascript|data|vbscript):/gi, '$1%3A'); + +/** + * Acept name and value and return valid html5 attribute string + * @param {String} name + * @param {String} value + * @return {string} + */ +const attrValue = (name, value) => { + const type = typeof value; + + const types = { + boolean: () => (value ? `${name}` : ''), + number: () => `${name}="${value}"`, + string: () => `${name}="${escapeHTML(value)}"`, + object: () => `${name}="${escapeHTML(JSON.stringify(value))}"`, + }; + + return types[type] ? types[type]() : ''; +}; + +/** + * Transforms attrs to html params string + * @param values + */ +const attrsToString = (values) => { + // To avoid some malformed attributes + if (values == null) { + return ''; + } + + return keysReduce( + values, + (arr, key) => [...arr, attrValue(key, values[key])], + [''], + ).join(' '); +}; + +/** + * Gets value from + * @example + * getUniqAttr({ 'foo': true, 'bar': bar' }) => 'bar' + * @param attrs + * @returns {string} + */ +const getUniqAttr = (attrs) => keysReduce( + attrs, + (res, key) => (attrs[key] === key ? attrs[key] : null), + null, +); + +export { + attrsToString, + attrValue, + appendToNode, + escapeHTML, + getNodeLength, + getUniqAttr, + isTagNode, + isStringNode, + isEOL, +}; diff --git a/packages/bbob-plugin-helper/src/helpers.ts b/packages/bbob-plugin-helper/src/helpers.ts deleted file mode 100644 index 4f3859b0..00000000 --- a/packages/bbob-plugin-helper/src/helpers.ts +++ /dev/null @@ -1,125 +0,0 @@ -import { N } from './char'; -import type { TagNode } from "./TagNode"; -import type { NodeContent, StringNode } from "./types"; - -function isTagNode(el: unknown): el is TagNode { - return typeof el === 'object' && el !== null && 'tag' in el; -} - -function isStringNode(el: unknown): el is StringNode { - return typeof el === 'string'; -} - -// check string is end of line -function isEOL(el: string) { - return el === N -} - -function keysReduce>(obj: T, reduce: (acc: Def, key: keyof T) => Res, def: Def): Res { - const keys = Object.keys(obj) - - return keys.reduce((acc, key) => reduce(acc, key), def) -} - -function getNodeLength(node: NodeContent): number { - if (isTagNode(node) && Array.isArray(node.content)) { - return node.content.reduce((count, contentNode) => { - return count + getNodeLength(contentNode) - }, 0); - } - - if (isStringNode(node)) { - return String(node).length; - } - - return 0; -} - -function appendToNode(node: TagNode, value: NodeContent) { - if (Array.isArray(node.content)) { - node.content.push(value); - } -} - -/** - * Replaces " to &qquot; - * @param {string} value - */ -function escapeAttrValue(value: string) { - return value - .replace(/&/g, '&') - .replace(//g, '>') - .replace(/"/g, '"') - .replace(/'/g, ''') - // eslint-disable-next-line no-script-url - .replace(/(javascript|data|vbscript):/gi, '$1%3A'); -} - -/** - * @deprecated use escapeAttrValue - */ -const escapeHTML = escapeAttrValue - -/** - * Accept name and value and return valid html5 attribute string - */ -function attrValue(name: string, value: AttrValue) { - // in case of performance - switch (typeof value) { - case 'boolean': - return value ? `${name}` : '' - case 'number': - return `${name}="${value}"` - case 'string': - return `${name}="${escapeAttrValue(value as string)}"` - case 'object': - return `${name}="${escapeAttrValue(JSON.stringify(value))}"` - default: - return '' - } -} - -/** - * Transforms attrs to html params string - * @example - * attrsToString({ 'foo': true, 'bar': bar' }) => 'foo="true" bar="bar"' - */ -function attrsToString(values: Record | null) { - // To avoid some malformed attributes - if (values == null) { - return ''; - } - - return keysReduce( - values, - (arr, key) => [...arr, attrValue(key, values[key])], - [''], - ).join(' '); -} - -/** - * Gets value from - * @example - * getUniqAttr({ 'foo': true, 'bar': bar' }) => 'bar' - */ -function getUniqAttr(attrs: Record) { - return keysReduce( - attrs, - (res, key) => (attrs[key] === key ? attrs[key] : null), - null, - ) -} - -export { - attrsToString, - attrValue, - appendToNode, - escapeHTML, - escapeAttrValue, - getNodeLength, - getUniqAttr, - isTagNode, - isStringNode, - isEOL, -}; diff --git a/packages/bbob-plugin-helper/src/index.js b/packages/bbob-plugin-helper/src/index.js new file mode 100644 index 00000000..a138236e --- /dev/null +++ b/packages/bbob-plugin-helper/src/index.js @@ -0,0 +1,3 @@ +export * from './helpers'; +export * from './char'; +export { TagNode } from './TagNode'; diff --git a/packages/bbob-plugin-helper/src/index.ts b/packages/bbob-plugin-helper/src/index.ts deleted file mode 100644 index 3c93b97e..00000000 --- a/packages/bbob-plugin-helper/src/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * from "./helpers"; -export * from "./char"; -export * from "./TagNode"; -export * from "./types"; diff --git a/packages/bbob-plugin-helper/src/types.ts b/packages/bbob-plugin-helper/src/types.ts deleted file mode 100644 index 2ec75735..00000000 --- a/packages/bbob-plugin-helper/src/types.ts +++ /dev/null @@ -1,13 +0,0 @@ -export type StringNode = string | number - -export interface TagNodeObject { - readonly tag: string - attrs: Record - content: TagNodeTree -} - -export type NodeContent = TagNodeObject | StringNode | null - -export type PartialNodeContent = Partial | StringNode | null - -export type TagNodeTree = NodeContent | NodeContent[] | null diff --git a/packages/bbob-plugin-helper/test/TagNode.test.ts b/packages/bbob-plugin-helper/test/TagNode.test.js similarity index 60% rename from packages/bbob-plugin-helper/test/TagNode.test.ts rename to packages/bbob-plugin-helper/test/TagNode.test.js index 9a0977aa..a07b9838 100644 --- a/packages/bbob-plugin-helper/test/TagNode.test.ts +++ b/packages/bbob-plugin-helper/test/TagNode.test.js @@ -13,37 +13,6 @@ describe('@bbob/plugin-helper/TagNode', () => { expect(TagNode.isOf(tagNode, 'test')).toBe(true); }); - test('attr', () => { - const tagNode = TagNode.create('test', {test: 1}, ['Hello']); - - tagNode.attr('foo', 'bar') - - expect(tagNode.attrs.foo).toBe('bar'); - }); - - test('append', () => { - const tagNode = TagNode.create('test', {test: 1}, ['Hello']); - - tagNode.append('World') - - expect(tagNode.content).toEqual(['Hello', 'World']); - }); - - test('length', () => { - const tagNode = TagNode.create('test', {test: 1}, ['Hello', 'World']); - - expect(tagNode.length).toEqual('HelloWorld'.length); - }); - - test('toTagNode', () => { - const tagNode = TagNode.create('test', {test: 1}, ['Hello']); - const newTagNode = tagNode.toTagNode() - - expect(newTagNode !== tagNode).toBe(true); - expect(newTagNode.tag).toEqual(tagNode.tag); - expect(newTagNode.content).toEqual(tagNode.content); - }); - describe('toString', () => { test('tag with content and params', () => { const tagNode = TagNode.create('test', {test: 1}, ['Hello']); diff --git a/packages/bbob-plugin-helper/test/helpers.test.js b/packages/bbob-plugin-helper/test/helpers.test.js new file mode 100644 index 00000000..c8a7d48e --- /dev/null +++ b/packages/bbob-plugin-helper/test/helpers.test.js @@ -0,0 +1,116 @@ +import { + attrsToString, + attrValue, + appendToNode, + getNodeLength, + getUniqAttr, + isTagNode, + isStringNode, + isEOL, +} from '../src'; + +describe('@bbob/plugin-helper/helpers', () => { + test('appendToNode', () => { + const value = 'test'; + const node = { content: [] }; + + appendToNode(node, value); + expect(node.content.pop()).toBe(value); + }); + + test('getNodeLength', () => { + const node = { + tag: 'test', + content: [ + '123', + { + tag: 'test2', + content: ['123'] + } + ] + }; + + expect(getNodeLength(node)).toBe(6) + }); + + test('isTagNode', () => { + const node = { + tag: 'test', + content: [] + }; + + expect(isTagNode(node)).toBe(true) + }); + + test('isStringNode', () => { + const node = { + tag: 'test', + content: ['123'] + }; + + expect(isStringNode(node.content[0])).toBe(true); + }); + + test('attrValue boolean', () => { + expect(attrValue('test', true)).toBe('test'); + }); + + test('attrValue number', () => { + expect(attrValue('test', 123)).toBe('test="123"'); + }); + + test('attrValue string', () => { + expect(attrValue('test', 'hello')).toBe('test="hello"'); + }); + + test('attrValue object', () => { + const attrs = { tag: 'test' }; + + expect(attrValue('test', attrs)).toBe('test="{"tag":"test"}"'); + }); + + test('isEOL', () => { + expect(isEOL('\n')).toBe(true) + }); + + test('attrsToString', () => { + expect(attrsToString({ + tag: 'test', + foo: 'bar', + disabled: true + })).toBe(` tag="test" foo="bar" disabled`) + }); + + test('attrsToString undefined', () => { + expect(attrsToString(undefined)).toBe('') + }); + + describe('attrsToString escape', () => { + test(`javascript:alert("hello")`, () => { + expect(attrsToString({ + onclick: `javascript:alert('hello')`, + href: `javascript:alert('hello')`, + })).toBe(` onclick="javascript%3Aalert('hello')" href="javascript%3Aalert('hello')"`) + }); + test(`JAVASCRIPT:alert("hello")`, () => { + expect(attrsToString({ + onclick: `JAVASCRIPT:alert('hello')`, + href: `JAVASCRIPT:alert('hello')`, + })).toBe(` onclick="JAVASCRIPT%3Aalert('hello')" href="JAVASCRIPT%3Aalert('hello')"`) + }); + test(``, () => { + expect(attrsToString({ + onclick: ``, + href: ``, + })).toBe(` onclick="<tag>" href="<tag>"`) + }); + }); + + test('getUniqAttr with unq attr', () => { + expect(getUniqAttr({foo: true, 'http://bar.com': 'http://bar.com'})).toBe('http://bar.com') + }); + + test('getUniqAttr without unq attr', () => { + expect(getUniqAttr({foo: true})).toBe(null) + }) +}); diff --git a/packages/bbob-plugin-helper/test/helpers.test.ts b/packages/bbob-plugin-helper/test/helpers.test.ts deleted file mode 100644 index 7df74e74..00000000 --- a/packages/bbob-plugin-helper/test/helpers.test.ts +++ /dev/null @@ -1,117 +0,0 @@ -import { - attrsToString, - attrValue, - appendToNode, - getNodeLength, - getUniqAttr, - isTagNode, - isStringNode, - isEOL, - TagNode, -} from '../src'; - -describe('@bbob/plugin-helper/helpers', () => { - test('appendToNode', () => { - const value = 'test'; - const node = {content: []} as TagNode; - - appendToNode(node, value); - expect(node.content.pop()).toBe(value); - }); - - test('getNodeLength', () => { - const node = { - tag: 'test', - content: [ - '123', - { - tag: 'test2', - content: ['123'] - } - ] - } as TagNode; - - expect(getNodeLength(node)).toBe(6) - }); - - test('isTagNode', () => { - const node = { - tag: 'test', - content: [] - } as TagNode; - - expect(isTagNode(node)).toBe(true) - }); - - test('isStringNode', () => { - const node = { - tag: 'test', - content: ['123'] - }; - - expect(isStringNode(node.content[0])).toBe(true); - }); - - test('attrValue boolean', () => { - expect(attrValue('test', true)).toBe('test'); - }); - - test('attrValue number', () => { - expect(attrValue('test', 123)).toBe('test="123"'); - }); - - test('attrValue string', () => { - expect(attrValue('test', 'hello')).toBe('test="hello"'); - }); - - test('attrValue object', () => { - const attrs = {tag: 'test'}; - - expect(attrValue('test', attrs)).toBe('test="{"tag":"test"}"'); - }); - - test('isEOL', () => { - expect(isEOL('\n')).toBe(true) - }); - - test('attrsToString', () => { - expect(attrsToString({ - tag: 'test', - foo: 'bar', - disabled: true - })).toBe(` tag="test" foo="bar" disabled`) - }); - - test('attrsToString undefined', () => { - expect(attrsToString(undefined)).toBe('') - }); - - describe('attrsToString escape', () => { - test(`javascript:alert("hello")`, () => { - expect(attrsToString({ - onclick: `javascript:alert('hello')`, - href: `javascript:alert('hello')`, - })).toBe(` onclick="javascript%3Aalert('hello')" href="javascript%3Aalert('hello')"`) - }); - test(`JAVASCRIPT:alert("hello")`, () => { - expect(attrsToString({ - onclick: `JAVASCRIPT:alert('hello')`, - href: `JAVASCRIPT:alert('hello')`, - })).toBe(` onclick="JAVASCRIPT%3Aalert('hello')" href="JAVASCRIPT%3Aalert('hello')"`) - }); - test(``, () => { - expect(attrsToString({ - onclick: ``, - href: ``, - })).toBe(` onclick="<tag>" href="<tag>"`) - }); - }); - - test('getUniqAttr with unq attr', () => { - expect(getUniqAttr({foo: true, 'http://bar.com': 'http://bar.com'})).toBe('http://bar.com') - }); - - test('getUniqAttr without unq attr', () => { - expect(getUniqAttr({foo: true})).toBe(null) - }) -}); diff --git a/packages/bbob-plugin-helper/tsconfig.json b/packages/bbob-plugin-helper/tsconfig.json deleted file mode 100644 index 385f1a81..00000000 --- a/packages/bbob-plugin-helper/tsconfig.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "extends": "../../tsconfig.json", - "compilerOptions": { - "baseUrl": ".", - "outDir": "./types" - }, - "include": [ - "./src/**/*" - ] -} diff --git a/packages/bbob-preset-html5/.gitignore b/packages/bbob-preset-html5/.gitignore index 62307a2c..22f5164e 100644 --- a/packages/bbob-preset-html5/.gitignore +++ b/packages/bbob-preset-html5/.gitignore @@ -2,6 +2,3 @@ coverage dist lib es -types -test/*.d.ts -test/*.map diff --git a/packages/bbob-preset-html5/.npmignore b/packages/bbob-preset-html5/.npmignore index c1046191..65922b56 100644 --- a/packages/bbob-preset-html5/.npmignore +++ b/packages/bbob-preset-html5/.npmignore @@ -1,4 +1,4 @@ -pnpm-lock.yaml +package-lock.json coverage src !dist diff --git a/packages/bbob-preset-html5/package.json b/packages/bbob-preset-html5/package.json index 58a29380..36d455cc 100644 --- a/packages/bbob-preset-html5/package.json +++ b/packages/bbob-preset-html5/package.json @@ -8,28 +8,17 @@ "bbob" ], "dependencies": { - "@bbob/plugin-helper": "*", - "@bbob/preset": "*" + "@bbob/plugin-helper": "workspace:*", + "@bbob/preset": "workspace:*" }, "devDependencies": { - "@bbob/core": "*", - "@bbob/html": "*" + "@bbob/html": "workspace:*" }, "main": "lib/index.js", "module": "es/index.js", "jsnext:main": "es/index.js", "browser": "dist/index.js", "browserName": "BbobPresetHTML5", - "types": "types/index.d.ts", - "exports": { - ".": { - "types": "./types/index.d.ts", - "import": "./es/index.js", - "require": "./lib/index.js", - "browser": "./dist/index.min.js", - "umd": "./dist/index.min.js" - } - }, "homepage": "https://github.com/JiLiZART/bbob", "author": "Nikolay Kostyurin ", "license": "MIT", @@ -41,22 +30,19 @@ "url": "git://github.com/JiLiZART/bbob.git" }, "scripts": { - "build:commonjs": "pkg-task", - "build:es": "pkg-task", - "build:umd": "pkg-task", - "build": "pkg-task", - "test": "pkg-task", - "cover": "pkg-task", - "lint": "pkg-task", - "size": "pkg-task", - "bundlesize": "pkg-task", - "types": "pkg-task", - "prepublishOnly": "npm run build" + "build:commonjs": "../../scripts/pkg-task build-commonjs", + "build:es": "../../scripts/pkg-task build-es", + "build:umd": "../../scripts/pkg-task build-umd", + "build": "npm run build:commonjs && npm run build:es && npm run build:umd", + "test": "../../scripts/pkg-task test", + "cover": "../../scripts/pkg-task cover", + "lint": "../../scripts/pkg-task lint", + "size": "../../scripts/pkg-task size", + "bundlesize": "../../scripts/pkg-task bundlesize" }, "size-limit": [ { - "path": "./dist/index.min.js", - "size": "2.6 KB" + "path": "lib/index.js" } ], "bundlesize": [ diff --git a/packages/bbob-preset-html5/pnpm-lock.yaml b/packages/bbob-preset-html5/pnpm-lock.yaml index 8457b021..e1f27fda 100644 --- a/packages/bbob-preset-html5/pnpm-lock.yaml +++ b/packages/bbob-preset-html5/pnpm-lock.yaml @@ -13,9 +13,6 @@ dependencies: version: link:../bbob-preset devDependencies: - '@bbob/core': - specifier: workspace:* - version: link:../bbob-core '@bbob/html': specifier: workspace:* version: link:../bbob-html diff --git a/packages/bbob-preset-html5/src/defaultTags.js b/packages/bbob-preset-html5/src/defaultTags.js new file mode 100644 index 00000000..9931f87a --- /dev/null +++ b/packages/bbob-preset-html5/src/defaultTags.js @@ -0,0 +1,91 @@ +/* eslint-disable no-plusplus,no-lonely-if */ +import { + getUniqAttr, isStringNode, isTagNode, TagNode, +} from '@bbob/plugin-helper'; + +const isStartsWith = (node, type) => (node[0] === type); + +const styleMap = { + color: (val) => `color:${val};`, + size: (val) => `font-size:${val};`, +}; + +const getStyleFromAttrs = (attrs) => Object + .keys(attrs) + .reduce((acc, key) => (styleMap[key] ? acc.concat(styleMap[key](attrs[key])) : acc), []) + .join(' '); + +const asListItems = (content) => { + let listIdx = 0; + const listItems = []; + + const createItemNode = () => TagNode.create('li'); + const ensureListItem = (val) => { + listItems[listIdx] = listItems[listIdx] || val; + }; + const addItem = (val) => { + if (listItems[listIdx] && listItems[listIdx].content) { + listItems[listIdx].content = listItems[listIdx].content.concat(val); + } else { + listItems[listIdx] = listItems[listIdx].concat(val); + } + }; + + content.forEach((el) => { + if (isStringNode(el) && isStartsWith(el, '*')) { + if (listItems[listIdx]) { + listIdx++; + } + ensureListItem(createItemNode()); + addItem(el.substr(1)); + } else if (isTagNode(el) && TagNode.isOf(el, '*')) { + if (listItems[listIdx]) { + listIdx++; + } + ensureListItem(createItemNode()); + } else if (!isTagNode(listItems[listIdx])) { + listIdx++; + ensureListItem(el); + } else if (listItems[listIdx]) { + addItem(el); + } else { + ensureListItem(el); + } + }); + + return [].concat(listItems); +}; + +const renderUrl = (node, render) => (getUniqAttr(node.attrs) + ? getUniqAttr(node.attrs) + : render(node.content)); + +const toNode = (tag, attrs, content) => ({ + tag, + attrs, + content, +}); + +const toStyle = (style) => ({ style }); + +export default { + b: (node) => toNode('span', toStyle('font-weight: bold;'), node.content), + i: (node) => toNode('span', toStyle('font-style: italic;'), node.content), + u: (node) => toNode('span', toStyle('text-decoration: underline;'), node.content), + s: (node) => toNode('span', toStyle('text-decoration: line-through;'), node.content), + url: (node, { render }, options) => toNode('a', { + href: renderUrl(node, render, options), + }, node.content), + img: (node, { render }) => toNode('img', { + src: render(node.content), + }, null), + quote: (node) => toNode('blockquote', {}, [toNode('p', {}, node.content)]), + code: (node) => toNode('pre', {}, node.content), + style: (node) => toNode('span', toStyle(getStyleFromAttrs(node.attrs)), node.content), + list: (node) => { + const type = getUniqAttr(node.attrs); + + return toNode(type ? 'ol' : 'ul', type ? { type } : {}, asListItems(node.content)); + }, + color: (node) => toNode('span', toStyle(`color: ${getUniqAttr(node.attrs)};`), node.content), +}; diff --git a/packages/bbob-preset-html5/src/defaultTags.ts b/packages/bbob-preset-html5/src/defaultTags.ts deleted file mode 100644 index b5e4b679..00000000 --- a/packages/bbob-preset-html5/src/defaultTags.ts +++ /dev/null @@ -1,146 +0,0 @@ -/* eslint-disable no-plusplus,no-lonely-if */ -import { - getUniqAttr, - isStringNode, - isTagNode, - TagNode, - TagNodeTree, -} from "@bbob/plugin-helper"; -import type { NodeContent, TagNodeObject } from "@bbob/plugin-helper"; -import type { PresetTagsDefinition } from "@bbob/preset"; -import type { BbobPluginOptions } from "@bbob/core"; - -const isStartsWith = (node: string, type: string) => node[0] === type; - -const getStyleFromAttrs = (attrs: Record) => { - return Object.keys(attrs) - .reduce((acc, key: "color" | "size") => { - const value = attrs[key]; - - if (typeof value === "string") { - if (key === "color") { - return acc.concat(`color:${value};`); - } - - if (key === "size") { - return acc.concat(`font-size:${value};`); - } - } - - return acc; - }, []) - .join(" "); -}; - -const asListItems = (content: TagNodeTree): NodeContent[] => { - let listIdx = 0; - const listItems = [] as Array; - - const createItemNode = () => TagNode.create("li"); - const ensureListItem = (val: NodeContent) => { - listItems[listIdx] = listItems[listIdx] || val; - }; - const addItem = (val: NodeContent) => { - const listItem = listItems[listIdx]; - - if (listItem && isTagNode(listItem) && Array.isArray(listItem.content)) { - listItem.content = listItem.content.concat(val); - } - // else if (Array.isArray(listItem) && Array.isArray(listItems[listIdx])) { - // listItems[listIdx] = listItems[listIdx].concat(val); - // } - }; - - if (Array.isArray(content)) { - content.forEach((el) => { - if (isStringNode(el) && isStartsWith(String(el), "*")) { - if (listItems[listIdx]) { - listIdx++; - } - ensureListItem(createItemNode()); - addItem(String(el).substr(1)); - } else if (isTagNode(el) && TagNode.isOf(el, "*")) { - if (listItems[listIdx]) { - listIdx++; - } - ensureListItem(createItemNode()); - } else if (!isTagNode(listItems[listIdx])) { - listIdx++; - ensureListItem(el); - } else if (listItems[listIdx]) { - addItem(el); - } else { - ensureListItem(el); - } - }); - } - - return listItems; -}; - -const renderUrl = (node: TagNodeObject, render: BbobPluginOptions["render"]) => - getUniqAttr(node.attrs) - ? getUniqAttr(node.attrs) - : render(node.content || []); - -const toNode = ( - tag: string, - attrs: Record, - content: TagNodeTree -) => TagNode.create(tag, attrs, content); - -const toStyle = (style: string) => ({ style }); - -const defaultTags: PresetTagsDefinition< - | "b" - | "i" - | "u" - | "s" - | "url" - | "img" - | "quote" - | "code" - | "style" - | "list" - | "color" -> = { - b: (node) => toNode("span", toStyle("font-weight: bold;"), node.content), - i: (node) => toNode("span", toStyle("font-style: italic;"), node.content), - u: (node) => - toNode("span", toStyle("text-decoration: underline;"), node.content), - s: (node) => - toNode("span", toStyle("text-decoration: line-through;"), node.content), - url: (node, { render }) => - toNode( - "a", - { - href: renderUrl(node, render), - }, - node.content - ), - img: (node, { render }) => - toNode( - "img", - { - src: render(node.content), - }, - null - ), - quote: (node) => toNode("blockquote", {}, [toNode("p", {}, node.content)]), - code: (node) => toNode("pre", {}, node.content), - style: (node) => - toNode("span", toStyle(getStyleFromAttrs(node.attrs)), node.content), - list: (node) => { - const type = getUniqAttr(node.attrs); - - return toNode( - type ? "ol" : "ul", - type ? { type } : {}, - asListItems(node.content) - ); - }, - color: (node) => - toNode("span", toStyle(`color: ${getUniqAttr(node.attrs)};`), node.content), -}; - -export default defaultTags; diff --git a/packages/bbob-preset-html5/src/index.js b/packages/bbob-preset-html5/src/index.js new file mode 100644 index 00000000..ce2c53c6 --- /dev/null +++ b/packages/bbob-preset-html5/src/index.js @@ -0,0 +1,5 @@ +/* eslint-disable indent */ +import { createPreset } from '@bbob/preset'; +import defaultTags from './defaultTags'; + +export default createPreset(defaultTags); diff --git a/packages/bbob-preset-html5/src/index.ts b/packages/bbob-preset-html5/src/index.ts deleted file mode 100644 index 4f919266..00000000 --- a/packages/bbob-preset-html5/src/index.ts +++ /dev/null @@ -1,6 +0,0 @@ -/* eslint-disable indent */ -import { createPreset } from "@bbob/preset"; -import defaultTags from "./defaultTags"; -export type * from "@bbob/preset"; - -export default createPreset(defaultTags); diff --git a/packages/bbob-preset-html5/test/index.test.ts b/packages/bbob-preset-html5/test/index.test.js similarity index 95% rename from packages/bbob-preset-html5/test/index.test.ts rename to packages/bbob-preset-html5/test/index.test.js index 3eab8b26..3a30f492 100644 --- a/packages/bbob-preset-html5/test/index.test.ts +++ b/packages/bbob-preset-html5/test/index.test.js @@ -1,13 +1,7 @@ -import html, { render } from '@bbob/html' -import core from '@bbob/core' - +import html from '@bbob/html' import preset from '../src' -const parse = (input: string) => { - const tree = core(preset()).process(input, { render }) - - return html(input, preset()) -}; +const parse = input => html(input, preset()); describe('@bbob/preset-html5', () => { test('[b]bolded text[/b]', () => { diff --git a/packages/bbob-preset-html5/tsconfig.json b/packages/bbob-preset-html5/tsconfig.json deleted file mode 100644 index 385f1a81..00000000 --- a/packages/bbob-preset-html5/tsconfig.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "extends": "../../tsconfig.json", - "compilerOptions": { - "baseUrl": ".", - "outDir": "./types" - }, - "include": [ - "./src/**/*" - ] -} diff --git a/packages/bbob-preset-react/.gitignore b/packages/bbob-preset-react/.gitignore index 62307a2c..22f5164e 100644 --- a/packages/bbob-preset-react/.gitignore +++ b/packages/bbob-preset-react/.gitignore @@ -2,6 +2,3 @@ coverage dist lib es -types -test/*.d.ts -test/*.map diff --git a/packages/bbob-preset-react/.npmignore b/packages/bbob-preset-react/.npmignore index c1046191..65922b56 100644 --- a/packages/bbob-preset-react/.npmignore +++ b/packages/bbob-preset-react/.npmignore @@ -1,4 +1,4 @@ -pnpm-lock.yaml +package-lock.json coverage src !dist diff --git a/packages/bbob-preset-react/package.json b/packages/bbob-preset-react/package.json index 8e9415a8..e5747fb7 100644 --- a/packages/bbob-preset-react/package.json +++ b/packages/bbob-preset-react/package.json @@ -8,27 +8,16 @@ "react" ], "dependencies": { - "@bbob/preset-html5": "*", - "@bbob/preset": "*" + "@bbob/preset-html5": "workspace:*" }, "devDependencies": { - "@bbob/core": "*" + "@bbob/core": "workspace:*" }, "main": "lib/index.js", "module": "es/index.js", "jsnext:main": "es/index.js", "browser": "dist/index.js", "browserName": "BbobPresetReact", - "types": "types/index.d.ts", - "exports": { - ".": { - "types": "./types/index.d.ts", - "import": "./es/index.js", - "require": "./lib/index.js", - "browser": "./dist/index.min.js", - "umd": "./dist/index.min.js" - } - }, "homepage": "https://github.com/JiLiZART/bbob", "author": "Nikolay Kostyurin ", "license": "MIT", @@ -40,22 +29,19 @@ "url": "git://github.com/JiLiZART/bbob.git" }, "scripts": { - "build:commonjs": "pkg-task", - "build:es": "pkg-task", - "build:umd": "pkg-task", - "build": "pkg-task", - "test": "pkg-task", - "cover": "pkg-task", - "lint": "pkg-task", - "size": "pkg-task", - "bundlesize": "pkg-task", - "types": "pkg-task", - "prepublishOnly": "npm run build" + "build:commonjs": "../../scripts/pkg-task build-commonjs", + "build:es": "../../scripts/pkg-task build-es", + "build:umd": "../../scripts/pkg-task build-umd", + "build": "npm run build:commonjs && npm run build:es && npm run build:umd", + "test": "../../scripts/pkg-task test", + "cover": "../../scripts/pkg-task cover", + "lint": "../../scripts/pkg-task lint", + "size": "../../scripts/pkg-task size", + "bundlesize": "../../scripts/pkg-task bundlesize" }, "size-limit": [ { - "path": "./dist/index.min.js", - "size": "2.5 KB" + "path": "lib/index.js" } ], "bundlesize": [ diff --git a/packages/bbob-preset-react/src/index.ts b/packages/bbob-preset-react/src/index.js similarity index 70% rename from packages/bbob-preset-react/src/index.ts rename to packages/bbob-preset-react/src/index.js index cb8a4dbc..8c7d7d2a 100644 --- a/packages/bbob-preset-react/src/index.ts +++ b/packages/bbob-preset-react/src/index.js @@ -1,13 +1,12 @@ import presetHTML5 from '@bbob/preset-html5'; -import type { PresetTagsDefinition } from '@bbob/preset'; -const tagAttr = (style: Record) => ({ +const tagAttr = (style) => ({ attrs: { style, }, }); -export default presetHTML5.extend((tags: PresetTagsDefinition<'b' | 'i' | 'u' | 's'>) => ({ +export default presetHTML5.extend((tags) => ({ ...tags, b: (...args) => ({ diff --git a/packages/bbob-preset-react/test/index.test.ts b/packages/bbob-preset-react/test/index.test.js similarity index 100% rename from packages/bbob-preset-react/test/index.test.ts rename to packages/bbob-preset-react/test/index.test.js diff --git a/packages/bbob-preset-react/tsconfig.json b/packages/bbob-preset-react/tsconfig.json deleted file mode 100644 index 385f1a81..00000000 --- a/packages/bbob-preset-react/tsconfig.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "extends": "../../tsconfig.json", - "compilerOptions": { - "baseUrl": ".", - "outDir": "./types" - }, - "include": [ - "./src/**/*" - ] -} diff --git a/packages/bbob-preset-vue/.gitignore b/packages/bbob-preset-vue/.gitignore index 62307a2c..22f5164e 100644 --- a/packages/bbob-preset-vue/.gitignore +++ b/packages/bbob-preset-vue/.gitignore @@ -2,6 +2,3 @@ coverage dist lib es -types -test/*.d.ts -test/*.map diff --git a/packages/bbob-preset-vue/.npmignore b/packages/bbob-preset-vue/.npmignore index c1046191..65922b56 100644 --- a/packages/bbob-preset-vue/.npmignore +++ b/packages/bbob-preset-vue/.npmignore @@ -1,4 +1,4 @@ -pnpm-lock.yaml +package-lock.json coverage src !dist diff --git a/packages/bbob-preset-vue/package.json b/packages/bbob-preset-vue/package.json index df5b8ec4..0a7b2cbb 100644 --- a/packages/bbob-preset-vue/package.json +++ b/packages/bbob-preset-vue/package.json @@ -8,27 +8,16 @@ "vue" ], "dependencies": { - "@bbob/preset-html5": "*", - "@bbob/preset": "*" + "@bbob/preset-html5": "workspace:*" }, "devDependencies": { - "@bbob/core": "*" + "@bbob/core": "workspace:*" }, "main": "lib/index.js", "module": "es/index.js", "jsnext:main": "es/index.js", "browser": "dist/index.js", "browserName": "BbobPresetVue", - "types": "types/index.d.ts", - "exports": { - ".": { - "types": "./types/index.d.ts", - "import": "./es/index.js", - "require": "./lib/index.js", - "browser": "./dist/index.min.js", - "umd": "./dist/index.min.js" - } - }, "homepage": "https://github.com/JiLiZART/bbob", "author": "Nikolay Kostyurin ", "license": "MIT", @@ -40,22 +29,19 @@ "url": "git://github.com/JiLiZART/bbob.git" }, "scripts": { - "build:commonjs": "pkg-task", - "build:es": "pkg-task", - "build:umd": "pkg-task", - "build": "pkg-task", - "test": "pkg-task", - "cover": "pkg-task", - "lint": "pkg-task", - "size": "pkg-task", - "bundlesize": "pkg-task", - "types": "pkg-task", - "prepublishOnly": "npm run build" + "build:commonjs": "../../scripts/pkg-task build-commonjs", + "build:es": "../../scripts/pkg-task build-es", + "build:umd": "../../scripts/pkg-task build-umd", + "build": "npm run build:commonjs && npm run build:es && npm run build:umd", + "test": "../../scripts/pkg-task test", + "cover": "../../scripts/pkg-task cover", + "lint": "../../scripts/pkg-task lint", + "size": "../../scripts/pkg-task size", + "bundlesize": "../../scripts/pkg-task bundlesize" }, "size-limit": [ { - "path": "./dist/index.min.js", - "size": "2.5 KB" + "path": "lib/index.js" } ], "bundlesize": [ diff --git a/packages/bbob-preset-vue/src/index.ts b/packages/bbob-preset-vue/src/index.js similarity index 70% rename from packages/bbob-preset-vue/src/index.ts rename to packages/bbob-preset-vue/src/index.js index 7b02777a..6f621980 100644 --- a/packages/bbob-preset-vue/src/index.ts +++ b/packages/bbob-preset-vue/src/index.js @@ -1,13 +1,12 @@ import presetHTML5 from '@bbob/preset-html5'; -import type { PresetTagsDefinition } from '@bbob/preset'; -export const tagAttr = (style: Record) => ({ +export const tagAttr = (style) => ({ attrs: { style, }, }); -export const createTags = (tags: PresetTagsDefinition<'b' | 'i' | 'u' | 's'>) => ({ +export const createTags = (tags) => ({ b: (...args) => ({ ...tags.b(...args), ...tagAttr({ fontWeight: 'bold' }), @@ -27,7 +26,7 @@ export const createTags = (tags: PresetTagsDefinition<'b' | 'i' | 'u' | 's'>) => ...tags.s(...args), ...tagAttr({ textDecoration: 'line-through' }), }), -} as PresetTagsDefinition); +}); export default presetHTML5.extend((tags) => ({ ...tags, diff --git a/packages/bbob-preset-vue/test/index.test.ts b/packages/bbob-preset-vue/test/index.test.js similarity index 100% rename from packages/bbob-preset-vue/test/index.test.ts rename to packages/bbob-preset-vue/test/index.test.js diff --git a/packages/bbob-preset-vue/tsconfig.json b/packages/bbob-preset-vue/tsconfig.json deleted file mode 100644 index 385f1a81..00000000 --- a/packages/bbob-preset-vue/tsconfig.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "extends": "../../tsconfig.json", - "compilerOptions": { - "baseUrl": ".", - "outDir": "./types" - }, - "include": [ - "./src/**/*" - ] -} diff --git a/packages/bbob-preset/.gitignore b/packages/bbob-preset/.gitignore index 62307a2c..22f5164e 100644 --- a/packages/bbob-preset/.gitignore +++ b/packages/bbob-preset/.gitignore @@ -2,6 +2,3 @@ coverage dist lib es -types -test/*.d.ts -test/*.map diff --git a/packages/bbob-preset/.npmignore b/packages/bbob-preset/.npmignore index c1046191..65922b56 100644 --- a/packages/bbob-preset/.npmignore +++ b/packages/bbob-preset/.npmignore @@ -1,4 +1,4 @@ -pnpm-lock.yaml +package-lock.json coverage src !dist diff --git a/packages/bbob-preset/package.json b/packages/bbob-preset/package.json index 7b6fc0c4..b0935576 100644 --- a/packages/bbob-preset/package.json +++ b/packages/bbob-preset/package.json @@ -7,32 +7,11 @@ "base", "bbob" ], - "files": [ - "dist", - "lib", - "src", - "es", - "types" - ], - "dependencies": { - "@bbob/plugin-helper": "*", - "@bbob/core": "*" - }, "main": "lib/index.js", "module": "es/index.js", "jsnext:main": "es/index.js", "browser": "dist/index.js", "browserName": "BbobPreset", - "types": "types/index.d.ts", - "exports": { - ".": { - "types": "./types/index.d.ts", - "import": "./es/index.js", - "require": "./lib/index.js", - "browser": "./dist/index.min.js", - "umd": "./dist/index.min.js" - } - }, "homepage": "https://github.com/JiLiZART/bbob", "author": "Nikolay Kostyurin ", "license": "MIT", @@ -44,22 +23,19 @@ "url": "git://github.com/JiLiZART/bbob.git" }, "scripts": { - "build:commonjs": "pkg-task", - "build:es": "pkg-task", - "build:umd": "pkg-task", - "build": "pkg-task", - "test": "pkg-task", - "cover": "pkg-task", - "lint": "pkg-task", - "size": "pkg-task", - "bundlesize": "pkg-task", - "types": "pkg-task", - "prepublishOnly": "npm run build" + "build:commonjs": "../../scripts/pkg-task build-commonjs", + "build:es": "../../scripts/pkg-task build-es", + "build:umd": "../../scripts/pkg-task build-umd", + "build": "npm run build:commonjs && npm run build:es && npm run build:umd", + "test": "../../scripts/pkg-task test", + "cover": "../../scripts/pkg-task cover", + "lint": "../../scripts/pkg-task lint", + "size": "../../scripts/pkg-task size", + "bundlesize": "../../scripts/pkg-task bundlesize" }, "size-limit": [ { - "path": "./dist/index.min.js", - "size": "1 KB" + "path": "lib/index.js" } ], "bundlesize": [ @@ -70,5 +46,11 @@ ], "publishConfig": { "registry": "https://registry.npmjs.org/" - } + }, + "files": [ + "dist", + "lib", + "src", + "es" + ] } diff --git a/packages/bbob-preset/pnpm-lock.yaml b/packages/bbob-preset/pnpm-lock.yaml index 9665d7c8..2b9f1883 100644 --- a/packages/bbob-preset/pnpm-lock.yaml +++ b/packages/bbob-preset/pnpm-lock.yaml @@ -3,11 +3,3 @@ lockfileVersion: '6.0' settings: autoInstallPeers: true excludeLinksFromLockfile: false - -dependencies: - '@bbob/core': - specifier: workspace:* - version: link:../bbob-core - '@bbob/plugin-helper': - specifier: workspace:* - version: link:../bbob-plugin-helper diff --git a/packages/bbob-preset/src/index.js b/packages/bbob-preset/src/index.js new file mode 100644 index 00000000..822b5046 --- /dev/null +++ b/packages/bbob-preset/src/index.js @@ -0,0 +1,37 @@ +/* eslint-disable indent */ + +const isTagNode = (el) => typeof el === 'object' && !!el.tag; + +function process(tags, tree, core, options) { + tree.walk((node) => (isTagNode(node) && tags[node.tag] + ? tags[node.tag](node, core, options) + : node)); +} + +/** + * Creates preset for @bbob/core + * @param defTags {Object} + * @param processor {Function} a processor function of tree + * @returns {function(*=): function(*=, *=): void} + */ +function createPreset(defTags, processor = process) { + const presetFactory = (opts = {}) => { + presetFactory.options = Object.assign(presetFactory.options || {}, opts); + + const presetExecutor = (tree, core) => processor(defTags, tree, core, presetFactory.options); + + presetExecutor.options = presetFactory.options; + + return presetExecutor; + }; + + presetFactory.extend = (callback) => createPreset( + callback(defTags, presetFactory.options), + processor, + ); + + return presetFactory; +} + +export { createPreset }; +export default createPreset; diff --git a/packages/bbob-preset/src/index.ts b/packages/bbob-preset/src/index.ts deleted file mode 100644 index a47d5c41..00000000 --- a/packages/bbob-preset/src/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { default } from "./preset"; -export * from "./preset"; -export * from "./types"; diff --git a/packages/bbob-preset/src/preset.ts b/packages/bbob-preset/src/preset.ts deleted file mode 100644 index 7e9d3dbe..00000000 --- a/packages/bbob-preset/src/preset.ts +++ /dev/null @@ -1,91 +0,0 @@ -import type { - BBobCoreTagNodeTree, - BbobPluginOptions, - BBobPluginFunction, -} from "@bbob/core"; -import { isTagNode } from "@bbob/plugin-helper"; -import type { - PresetExtendCallback, - PresetFactoryOptions, - PresetOptions, - PresetTagsDefinition, -} from "./types"; - -function process( - tags: PresetTagsDefinition, - tree: BBobCoreTagNodeTree, - core: BbobPluginOptions, - options: PresetFactoryOptions = {} -) { - return tree.walk((node) => { - if (isTagNode(node) && typeof tags[node.tag] === "function") { - const tag = node.tag; - const tagCallback = tags[tag]; - - return tagCallback(node, core, options); - } - - return node; - }); -} - -export type ProcessorFunction = typeof process; - -export type ProcessorReturnType = ReturnType; - -export interface PresetExecutor< - TagName extends string = string, - AttrValue = unknown -> extends BBobPluginFunction { - (tree: BBobCoreTagNodeTree, core?: BbobPluginOptions): ProcessorReturnType; - options: PresetOptions; -} - -export interface PresetFactory< - TagName extends string = string, - AttrValue = unknown, - Names extends string = string -> { - (opts?: PresetOptions): PresetExecutor; - options?: PresetOptions; - extend: ( - cb: PresetExtendCallback - ) => PresetFactory; -} - -/** - * Create a preset plugin for @bbob/core - */ -function createPreset( - defTags: PresetTagsDefinition, - processor: ProcessorFunction = process -) { - const presetFactory: PresetFactory = (opts: PresetOptions = {}) => { - presetFactory.options = Object.assign(presetFactory.options || {}, opts); - - function presetExecutor( - tree: BBobCoreTagNodeTree, - core: BbobPluginOptions - ) { - return processor(defTags, tree, core, presetFactory.options); - } - - presetExecutor.options = presetFactory.options; - - return presetExecutor; - }; - - presetFactory.extend = function presetExtend( - callback: PresetExtendCallback - ) { - return createPreset( - callback(defTags, presetFactory.options || {}), - processor - ); - }; - - return presetFactory; -} - -export { createPreset }; -export default createPreset; diff --git a/packages/bbob-preset/src/types.ts b/packages/bbob-preset/src/types.ts deleted file mode 100644 index 50e93a3b..00000000 --- a/packages/bbob-preset/src/types.ts +++ /dev/null @@ -1,15 +0,0 @@ -import type { TagNodeObject } from "@bbob/plugin-helper"; -import type { BbobPluginOptions } from "@bbob/core"; - -export type PresetFactoryOptions = Record - -export type PresetTagFunction = ( - node: Node, - core: BbobPluginOptions, - options: PresetFactoryOptions -) => Node - -export type PresetTagsDefinition = Record - -export type PresetOptions = Record -export type PresetExtendCallback = (defTags: PresetTagsDefinition, options: PresetOptions) => PresetTagsDefinition diff --git a/packages/bbob-preset/test/index.test.js b/packages/bbob-preset/test/index.test.js new file mode 100644 index 00000000..1615b5ff --- /dev/null +++ b/packages/bbob-preset/test/index.test.js @@ -0,0 +1,54 @@ +import { createPreset } from '../src/index'; + +describe('@bbob/preset', () => { + const presetFactory = (defTags) => { + const processor = jest.fn((tags, tree, core, options) => tags) + + return [createPreset(defTags, processor), processor]; + } + + test('create', () => { + const defTags = { test: true } + const options = { foo: 'bar' } + const tree = [] + const [preset, processor] = presetFactory(defTags); + + expect(preset.extend) + .toBeDefined(); + expect(preset) + .toBeInstanceOf(Function); + + expect(preset(options)(tree)).toEqual(defTags); + + expect(processor.mock.calls.length).toBe(1); + }); + test('extend', () => { + const defTags = { foo: true } + const extendedTags = { bar: true } + const options = { foo: 'bar' } + const tree = [] + const [preset, processor] = presetFactory(defTags); + const newPreset = preset.extend(tags => ({ ...tags, ...extendedTags })); + + expect(preset) + .toBeInstanceOf(Function); + expect(newPreset) + .toBeInstanceOf(Function); + + expect(newPreset(options)(tree)).toEqual({...defTags, ...extendedTags}); + + expect(processor.mock.calls.length).toBe(1); + }); + test('pass options', () => { + const [preset, processor] = presetFactory({ test: true }); + const newPreset = preset.extend((tags, options) => ({ bar: true })); + + const instance = preset({ foo: 'bar' }); + const instance2 = newPreset({ some: true }); + + expect(instance.options) + .toEqual({ foo: 'bar' }); + expect(instance2.options) + .toEqual({ some: true }); + }); +}); diff --git a/packages/bbob-preset/test/index.test.ts b/packages/bbob-preset/test/index.test.ts deleted file mode 100644 index 6c724086..00000000 --- a/packages/bbob-preset/test/index.test.ts +++ /dev/null @@ -1,61 +0,0 @@ -import { createPreset, PresetTagsDefinition } from '../src'; -import { BBobCoreOptions, createTree } from '@bbob/core' - -describe('@bbob/preset', () => { - const presetFactory = (defTags: PresetTagsDefinition) => { - const processor = jest.fn((tags, tree, core, options) => tags) - - return { - preset: createPreset(defTags, processor), - processor, - core: {} as BBobCoreOptions - } - } - - test('create', () => { - const defTags = { test: () => 'test' } - const options = { foo: 'bar' } - const tree = createTree([], {}) - const { preset, processor, core } = presetFactory(defTags); - - expect(preset.extend) - .toBeDefined(); - expect(preset) - .toBeInstanceOf(Function); - - expect(preset(options)(tree)).toEqual(defTags); - - expect(processor.mock.calls.length).toBe(1); - }); - test('extend', () => { - const defTags = { foo: () => 'foo' } - const extendedTags = { bar: () => 'bar' } - const options = { foo: 'bar' } - const tree = createTree([], {}) - const { preset, processor, core } = presetFactory(defTags); - const newPreset = preset.extend(tags => ({ ...tags, ...extendedTags })); - - expect(preset) - .toBeInstanceOf(Function); - expect(newPreset) - .toBeInstanceOf(Function); - - const newPresetRes = newPreset(options) - - expect(newPresetRes(tree)).toEqual({...defTags, ...extendedTags}); - - expect(processor.mock.calls.length).toBe(1); - }); - test('pass options', () => { - const { preset, processor } = presetFactory({ test: () => 'test' }); - const newPreset = preset.extend((tags, options) => ({ bar: () => 'bar' })); - - const instance = preset({ foo: 'bar' }); - const instance2 = newPreset({ some: 'some' }); - - expect(instance.options) - .toEqual({ foo: 'bar' }); - expect(instance2.options) - .toEqual({ some: 'some' }) - }); -}); diff --git a/packages/bbob-preset/tsconfig.json b/packages/bbob-preset/tsconfig.json deleted file mode 100644 index 385f1a81..00000000 --- a/packages/bbob-preset/tsconfig.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "extends": "../../tsconfig.json", - "compilerOptions": { - "baseUrl": ".", - "outDir": "./types" - }, - "include": [ - "./src/**/*" - ] -} diff --git a/packages/bbob-react/.eslintignore b/packages/bbob-react/.eslintignore index d64aeb74..dc879671 100644 --- a/packages/bbob-react/.eslintignore +++ b/packages/bbob-react/.eslintignore @@ -2,6 +2,3 @@ dist es lib test -types -test/*.d.ts -test/*.map diff --git a/packages/bbob-react/.gitignore b/packages/bbob-react/.gitignore index 62307a2c..22f5164e 100644 --- a/packages/bbob-react/.gitignore +++ b/packages/bbob-react/.gitignore @@ -2,6 +2,3 @@ coverage dist lib es -types -test/*.d.ts -test/*.map diff --git a/packages/bbob-react/.npmignore b/packages/bbob-react/.npmignore index c1046191..65922b56 100644 --- a/packages/bbob-react/.npmignore +++ b/packages/bbob-react/.npmignore @@ -1,4 +1,4 @@ -pnpm-lock.yaml +package-lock.json coverage src !dist diff --git a/packages/bbob-react/package.json b/packages/bbob-react/package.json index cba801d5..79d464ab 100644 --- a/packages/bbob-react/package.json +++ b/packages/bbob-react/package.json @@ -9,11 +9,12 @@ "bbob" ], "dependencies": { - "@bbob/core": "*", - "@bbob/html": "*", - "@bbob/plugin-helper": "*" + "@bbob/core": "workspace:*", + "@bbob/html": "workspace:*", + "@bbob/plugin-helper": "workspace:*" }, "peerDependencies": { + "prop-types": "> 15.0", "react": "> 15.0" }, "devDependencies": { @@ -21,24 +22,13 @@ "@testing-library/jest-dom": "^5.16.4", "@testing-library/react": "13.x", "react": "18.x", - "react-dom": "18.x", - "@types/react": "18.x" + "react-dom": "18.x" }, "main": "lib/index.js", "module": "es/index.js", "jsnext:main": "es/index.js", "browser": "dist/index.js", "browserName": "BbobReact", - "types": "types/index.d.ts", - "exports": { - ".": { - "types": "./types/index.d.ts", - "import": "./es/index.js", - "require": "./lib/index.js", - "browser": "./dist/index.min.js", - "umd": "./dist/index.min.js" - } - }, "homepage": "https://github.com/JiLiZART/bbob", "author": "Nikolay Kostyurin ", "license": "MIT", @@ -50,22 +40,19 @@ "url": "git://github.com/JiLiZART/bbob.git" }, "scripts": { - "build:commonjs": "pkg-task", - "build:es": "pkg-task", - "build:umd": "pkg-task", - "build": "pkg-task", - "test": "pkg-task", - "cover": "pkg-task", - "lint": "pkg-task", - "size": "pkg-task", - "bundlesize": "pkg-task", - "types": "pkg-task", - "prepublishOnly": "npm run build" + "build:commonjs": "../../scripts/pkg-task build-commonjs", + "build:es": "../../scripts/pkg-task build-es", + "build:umd": "../../scripts/pkg-task build-umd", + "build": "npm run build:commonjs && npm run build:es && npm run build:umd", + "test": "../../scripts/pkg-task test", + "cover": "../../scripts/pkg-task cover", + "lint": "../../scripts/pkg-task lint", + "size": "../../scripts/pkg-task size", + "bundlesize": "../../scripts/pkg-task bundlesize" }, "size-limit": [ { - "path": "./dist/index.min.js", - "size": "8 KB" + "path": "lib/index.js" } ], "bundlesize": [ diff --git a/packages/bbob-react/src/Component.js b/packages/bbob-react/src/Component.js new file mode 100644 index 00000000..abc953c7 --- /dev/null +++ b/packages/bbob-react/src/Component.js @@ -0,0 +1,48 @@ +import React from 'react'; +import PropTypes from 'prop-types'; +import { render } from './render'; + +const content = (children, plugins, options) => React.Children.map(children, (child) => (typeof child === 'string' ? render(child, plugins, options) : child)); + +const Component = ({ + container, + componentProps, + children, + plugins, + options, +}) => React.createElement( + container, + componentProps, + content(children, plugins, options), +); + +if (process.env.NODE_ENV !== 'production') { + Component.propTypes = { + container: PropTypes.oneOfType([ + PropTypes.node, + PropTypes.element, + PropTypes.elementType, + ]), + children: PropTypes.node.isRequired, + plugins: PropTypes.arrayOf(PropTypes.func), + componentProps: PropTypes.shape({ + className: PropTypes.string, + }), + options: PropTypes.shape({ + parser: PropTypes.func, + skipParse: PropTypes.bool, + onlyAllowTags: PropTypes.arrayOf(PropTypes.string), + openTag: PropTypes.string, + closeTag: PropTypes.string, + }), + }; +} + +Component.defaultProps = { + container: 'span', + plugins: [], + options: {}, + componentProps: {}, +}; + +export default Component; diff --git a/packages/bbob-react/src/Component.ts b/packages/bbob-react/src/Component.ts deleted file mode 100644 index 0b504f19..00000000 --- a/packages/bbob-react/src/Component.ts +++ /dev/null @@ -1,34 +0,0 @@ -import React, { ReactNode } from 'react'; -import type { BBobPlugins, BBobCoreOptions } from '@bbob/core'; -import { render } from './render'; - -const content = (children: ReactNode, plugins?: BBobPlugins, options?: BBobCoreOptions) => React.Children.map(children, (child) => (typeof child === 'string' ? render(child, plugins, options) : child)); - -export type BBobReactComponentProps = { - children: ReactNode - container: string - componentProps: Record - plugins?: BBobPlugins - options?: BBobCoreOptions -} - -const Component = ({ - container = 'span', - componentProps = {}, - children, - plugins = [], - options = {}, -}: BBobReactComponentProps) => React.createElement( - container, - componentProps, - content(children, plugins, options), -); - -Component.defaultProps = { - container: 'span', - plugins: [], - options: {}, - componentProps: {}, -}; - -export default Component; diff --git a/packages/bbob-react/src/index.ts b/packages/bbob-react/src/index.js similarity index 100% rename from packages/bbob-react/src/index.ts rename to packages/bbob-react/src/index.js diff --git a/packages/bbob-react/src/render.js b/packages/bbob-react/src/render.js new file mode 100644 index 00000000..3a0bd228 --- /dev/null +++ b/packages/bbob-react/src/render.js @@ -0,0 +1,57 @@ +/* eslint-disable no-use-before-define */ +import React from 'react'; +import core from '@bbob/core'; +import * as html from '@bbob/html'; + +import { isTagNode, isEOL } from '@bbob/plugin-helper'; + +const toAST = (source, plugins, options) => core(plugins) + .process(source, { + ...options, + render: (input) => html.render(input, { stripTags: true }), + }).tree; + +const isContentEmpty = (content) => (!content || content.length === 0); + +function tagToReactElement(node, index) { + return React.createElement( + node.tag, + { ...node.attrs, key: index }, + isContentEmpty(node.content) ? null : renderToReactNodes(node.content), + ); +} + +function renderToReactNodes(nodes) { + const els = [].concat(nodes).reduce((arr, node, index) => { + if (isTagNode(node)) { + arr.push(tagToReactElement(node, index)); + return arr; + } + + if (isEOL(node)) { + arr.push(node); + return arr; + } + + const lastIdx = arr.length - 1; + const prevNode = lastIdx >= 0 ? arr[lastIdx] : null; + + if (prevNode !== null && !isTagNode(prevNode) && !isEOL(prevNode)) { + const prevArr = arr; // stupid eslint + prevArr[lastIdx] += node; + return prevArr; + } + + arr.push(node); + + return arr; + }, []); + return els; +} + +function render(source, plugins, options) { + return renderToReactNodes(toAST(source, plugins, options)); +} + +export { render }; +export default render; diff --git a/packages/bbob-react/src/render.ts b/packages/bbob-react/src/render.ts deleted file mode 100644 index c6691b51..00000000 --- a/packages/bbob-react/src/render.ts +++ /dev/null @@ -1,90 +0,0 @@ -/* eslint-disable no-use-before-define */ -import React, { ReactNode } from "react"; -import { render as htmlrender } from "@bbob/html"; -import core, { - BBobCoreOptions, - BBobCoreTagNodeTree, - BBobPlugins, -} from "@bbob/core"; - -import { - isTagNode, - isStringNode, - isEOL, - TagNode, - TagNodeTree, -} from "@bbob/plugin-helper"; - -const toAST = ( - source: string, - plugins?: BBobPlugins, - options?: BBobCoreOptions -) => - core(plugins).process(source, { - ...options, - render: (input) => htmlrender(input, { stripTags: true }), - }).tree; - -const isContentEmpty = (content: TagNodeTree) => { - if (!content) { - return true; - } - - if (typeof content === "number") { - return String(content).length === 0; - } - - return Array.isArray(content) ? content.length === 0 : !content; -}; - -function tagToReactElement(node: TagNode, index: number) { - return React.createElement( - node.tag, - { ...node.attrs, key: index }, - isContentEmpty(node.content) ? null : renderToReactNodes(node.content) - ); -} - -function renderToReactNodes(nodes: BBobCoreTagNodeTree | TagNodeTree) { - if (Array.isArray(nodes) && nodes.length) { - return nodes.reduce((arr, node, index) => { - if (isTagNode(node)) { - arr.push(tagToReactElement(node, index)); - return arr; - } - - if (isStringNode(node)) { - if (isEOL(String(node))) { - arr.push(node); - return arr; - } - - const lastIdx = arr.length - 1; - const prevArr = arr; // stupid eslint - const prevNode = lastIdx >= 0 ? prevArr[lastIdx] : null; - - if (prevArr[lastIdx] && prevNode !== null && !isEOL(String(prevNode))) { - prevArr[lastIdx] += String(node); - - return prevArr; - } - - arr.push(node); - } - - return arr; - }, []); - } - return []; -} - -function render( - source: string, - plugins?: BBobPlugins, - options?: BBobCoreOptions -) { - return renderToReactNodes(toAST(source, plugins, options)); -} - -export { render }; -export default render; diff --git a/packages/bbob-react/test/index.test.tsx b/packages/bbob-react/test/index.test.js similarity index 100% rename from packages/bbob-react/test/index.test.tsx rename to packages/bbob-react/test/index.test.js diff --git a/packages/bbob-react/test/render.test.tsx b/packages/bbob-react/test/render.test.js similarity index 100% rename from packages/bbob-react/test/render.test.tsx rename to packages/bbob-react/test/render.test.js diff --git a/packages/bbob-react/tsconfig.json b/packages/bbob-react/tsconfig.json deleted file mode 100644 index 385f1a81..00000000 --- a/packages/bbob-react/tsconfig.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "extends": "../../tsconfig.json", - "compilerOptions": { - "baseUrl": ".", - "outDir": "./types" - }, - "include": [ - "./src/**/*" - ] -} diff --git a/packages/bbob-vue2/.gitignore b/packages/bbob-vue2/.gitignore index 62307a2c..22f5164e 100644 --- a/packages/bbob-vue2/.gitignore +++ b/packages/bbob-vue2/.gitignore @@ -2,6 +2,3 @@ coverage dist lib es -types -test/*.d.ts -test/*.map diff --git a/packages/bbob-vue2/.npmignore b/packages/bbob-vue2/.npmignore index c1046191..65922b56 100644 --- a/packages/bbob-vue2/.npmignore +++ b/packages/bbob-vue2/.npmignore @@ -1,4 +1,4 @@ -pnpm-lock.yaml +package-lock.json coverage src !dist diff --git a/packages/bbob-vue2/package.json b/packages/bbob-vue2/package.json index b1b16431..82715237 100644 --- a/packages/bbob-vue2/package.json +++ b/packages/bbob-vue2/package.json @@ -9,15 +9,15 @@ "bbob" ], "dependencies": { - "@bbob/core": "*", - "@bbob/html": "*", - "@bbob/plugin-helper": "*" + "@bbob/core": "workspace:*", + "@bbob/html": "workspace:*", + "@bbob/plugin-helper": "workspace:*" }, "peerDependencies": { "vue": "2.x" }, "devDependencies": { - "@bbob/preset-vue": "*", + "@bbob/preset-vue": "workspace:*", "@testing-library/vue": "5.9.0", "vue": "2.7.16", "vue-template-compiler": "2.7.16" @@ -27,16 +27,6 @@ "jsnext:main": "es/index.js", "browser": "dist/index.js", "browserName": "BbobVue", - "types": "types/index.d.ts", - "exports": { - ".": { - "types": "./types/index.d.ts", - "import": "./es/index.js", - "require": "./lib/index.js", - "browser": "./dist/index.min.js", - "umd": "./dist/index.min.js" - } - }, "homepage": "https://github.com/JiLiZART/bbob", "author": "Nikolay Kostyurin ", "license": "MIT", @@ -48,22 +38,19 @@ "url": "git://github.com/JiLiZART/bbob.git" }, "scripts": { - "build:commonjs": "pkg-task", - "build:es": "pkg-task", - "build:umd": "pkg-task", - "build": "pkg-task", - "test": "pkg-task", - "cover": "pkg-task", - "lint": "pkg-task", - "size": "pkg-task", - "bundlesize": "pkg-task", - "types": "pkg-task", - "prepublishOnly": "npm run build" + "build:commonjs": "../../scripts/pkg-task build-commonjs", + "build:es": "../../scripts/pkg-task build-es", + "build:umd": "../../scripts/pkg-task build-umd", + "build": "npm run build:commonjs && npm run build:es && npm run build:umd", + "test": "../../scripts/pkg-task test", + "cover": "../../scripts/pkg-task cover", + "lint": "../../scripts/pkg-task lint", + "size": "../../scripts/pkg-task size", + "bundlesize": "../../scripts/pkg-task bundlesize" }, "size-limit": [ { - "path": "./dist/index.min.js", - "size": "8 KB" + "path": "lib/index.js" } ], "bundlesize": [ diff --git a/packages/bbob-vue2/src/Component.ts b/packages/bbob-vue2/src/Component.js similarity index 70% rename from packages/bbob-vue2/src/Component.ts rename to packages/bbob-vue2/src/Component.js index 6dfb8df4..d797e553 100644 --- a/packages/bbob-vue2/src/Component.ts +++ b/packages/bbob-vue2/src/Component.js @@ -1,15 +1,8 @@ import { defineComponent } from 'vue'; import { render } from './render'; -import type { BBobCoreOptions, BBobPlugins } from '@bbob/core'; -export type BBobVueComponentProps = { - container: string - plugins?: BBobPlugins - options?: BBobCoreOptions -} - -const Component = defineComponent({ +const Component = defineComponent({ props: { container: { type: String, diff --git a/packages/bbob-vue2/src/index.js b/packages/bbob-vue2/src/index.js new file mode 100644 index 00000000..f92d2be3 --- /dev/null +++ b/packages/bbob-vue2/src/index.js @@ -0,0 +1,10 @@ +import Component from './Component'; + +export { render } from './render'; +export { Component }; + +function install(Vue) { + Vue.component('bbob-bbcode', Component); +} + +export default install; diff --git a/packages/bbob-vue2/src/index.ts b/packages/bbob-vue2/src/index.ts deleted file mode 100644 index 20e01c3b..00000000 --- a/packages/bbob-vue2/src/index.ts +++ /dev/null @@ -1,11 +0,0 @@ -import type{ VueConstructor } from 'vue'; -import Component from './Component'; - -export { render } from './render'; -export { Component }; - -function install(vue: VueConstructor) { - vue.component('bbob-bbcode', Component); -} - -export default install; diff --git a/packages/bbob-vue2/src/render.js b/packages/bbob-vue2/src/render.js new file mode 100644 index 00000000..7f1b9c1c --- /dev/null +++ b/packages/bbob-vue2/src/render.js @@ -0,0 +1,52 @@ +/* eslint-disable no-use-before-define,import/prefer-default-export */ +import core from '@bbob/core'; +import * as html from '@bbob/html'; + +import { isStringNode, isTagNode } from '@bbob/plugin-helper'; + +const toAST = (source, plugins = [], options = {}) => core(plugins) + .process(source, { + ...options, + render: (input) => html.render(input, { stripTags: true }), + }).tree; + +const isContentEmpty = (content) => (!content || content.length === 0); + +function tagToVueNode(createElement, node, index) { + const { class: className, style, ...domProps } = node.attrs || {}; + + return createElement( + node.tag, + { + key: index, + class: className, + style, + domProps, + }, + isContentEmpty(node.content) ? null : renderToVueNodes(createElement, node.content), + ); +} + +function renderToVueNodes(createElement, nodes) { + return [].concat(nodes).reduce((arr, node, index) => { + if (isTagNode(node)) { + arr.push(tagToVueNode(createElement, node, index)); + } else if (isStringNode(node)) { + arr.push(node); + } + + return arr; + }, []); +} + +/** + * Converts string to Vue 2 VNodes + * @param createElement {CreateElement} + * @param source {String} + * @param plugins {Array} + * @param options {Object} + * @returns {Array} + */ +export function render(createElement, source, plugins, options) { + return renderToVueNodes(createElement, toAST(source, plugins, options)); +} diff --git a/packages/bbob-vue2/src/render.ts b/packages/bbob-vue2/src/render.ts deleted file mode 100644 index 7a8b386e..00000000 --- a/packages/bbob-vue2/src/render.ts +++ /dev/null @@ -1,57 +0,0 @@ -/* eslint-disable no-use-before-define,import/prefer-default-export */ -import core, { BBobPlugins, BBobCoreOptions } from '@bbob/core'; -import * as html from '@bbob/html'; - -import { isStringNode, isTagNode } from '@bbob/plugin-helper'; -import type { TagNodeTree, TagNode } from "@bbob/plugin-helper"; -import type { CreateElement, VNodeChildrenArrayContents } from 'vue'; -import type { StyleValue } from 'vue/types/jsx'; - -const toAST = (source: string, plugins: BBobPlugins = [], options: BBobCoreOptions = {}) => core(plugins) - .process(source, { - ...options, - render: (input) => html.render(input, { stripTags: true }), - }).tree; - -const isContentEmpty = (content: TagNodeTree) => (!content || Array.isArray(content) && content?.length === 0); - -function tagToVueNode(createElement: CreateElement, node: TagNode, index: number) { - const { class: className, style, ...domProps } = node.attrs || {}; - - return createElement( - node.tag, - { - key: index, - class: className, - style: style as StyleValue, - domProps, - }, - isContentEmpty(node.content) ? null : renderToVueNodes(createElement, node.content), - ); -} - -function renderToVueNodes(createElement: CreateElement, nodes: TagNodeTree) { - if (Array.isArray(nodes)) { - return nodes.reduce((arr, node, index) => { - if (isTagNode(node)) { - arr.push(tagToVueNode(createElement, node, index)); - } else if (isStringNode(node)) { - arr.push(String(node)); - } - - return arr; - }, [] as VNodeChildrenArrayContents); - } -} - -/** - * Converts string to Vue 2 VNodes - * @param createElement {CreateElement} - * @param source {String} - * @param plugins {Array} - * @param options {Object} - * @returns {Array} - */ -export function render(createElement: CreateElement, source: string, plugins?: BBobPlugins, options?: BBobCoreOptions) { - return renderToVueNodes(createElement, toAST(source, plugins, options)); -} diff --git a/packages/bbob-vue2/tsconfig.json b/packages/bbob-vue2/tsconfig.json deleted file mode 100644 index 385f1a81..00000000 --- a/packages/bbob-vue2/tsconfig.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "extends": "../../tsconfig.json", - "compilerOptions": { - "baseUrl": ".", - "outDir": "./types" - }, - "include": [ - "./src/**/*" - ] -} diff --git a/packages/bbob-vue3/.gitignore b/packages/bbob-vue3/.gitignore index 62307a2c..22f5164e 100644 --- a/packages/bbob-vue3/.gitignore +++ b/packages/bbob-vue3/.gitignore @@ -2,6 +2,3 @@ coverage dist lib es -types -test/*.d.ts -test/*.map diff --git a/packages/bbob-vue3/.npmignore b/packages/bbob-vue3/.npmignore index c1046191..65922b56 100644 --- a/packages/bbob-vue3/.npmignore +++ b/packages/bbob-vue3/.npmignore @@ -1,4 +1,4 @@ -pnpm-lock.yaml +package-lock.json coverage src !dist diff --git a/packages/bbob-vue3/package.json b/packages/bbob-vue3/package.json index 6297e86a..f5b7d82b 100644 --- a/packages/bbob-vue3/package.json +++ b/packages/bbob-vue3/package.json @@ -9,20 +9,17 @@ "bbob" ], "dependencies": { - "@bbob/core": "*", - "@bbob/html": "*", - "@bbob/plugin-helper": "*" + "@bbob/core": "workspace:*", + "@bbob/html": "workspace:*", + "@bbob/plugin-helper": "workspace:*" }, "peerDependencies": { "vue": "3.x" }, "devDependencies": { - "@bbob/preset-vue": "*", + "@bbob/preset-vue": "workspace:*", "@testing-library/vue": "7.0.0", "@vue/compiler-sfc": "3.4.21", - "@vue/runtime-dom": "3.4.21", - "@vue/runtime-core": "3.4.21", - "@vue/compiler-dom": "3.4.21", "@vue/test-utils": "2.4.5", "vue": "3.4.21" }, @@ -31,16 +28,6 @@ "jsnext:main": "es/index.js", "browser": "dist/index.js", "browserName": "BbobVue3", - "types": "types/index.d.ts", - "exports": { - ".": { - "types": "./types/index.d.ts", - "import": "./es/index.js", - "require": "./lib/index.js", - "browser": "./dist/index.min.js", - "umd": "./dist/index.min.js" - } - }, "homepage": "https://github.com/JiLiZART/bbob", "author": "Nikolay Kostyurin ", "license": "MIT", @@ -52,22 +39,19 @@ "url": "git://github.com/JiLiZART/bbob.git" }, "scripts": { - "build:commonjs": "pkg-task", - "build:es": "pkg-task", - "build:umd": "pkg-task", - "build": "pkg-task", - "test": "pkg-task", - "cover": "pkg-task", - "lint": "pkg-task", - "size": "pkg-task", - "bundlesize": "pkg-task", - "types": "pkg-task", - "prepublishOnly": "npm run build" + "build:commonjs": "../../scripts/pkg-task build-commonjs", + "build:es": "../../scripts/pkg-task build-es", + "build:umd": "../../scripts/pkg-task build-umd", + "build": "npm run build:commonjs && npm run build:es && npm run build:umd", + "test": "../../scripts/pkg-task test", + "cover": "../../scripts/pkg-task cover", + "lint": "../../scripts/pkg-task lint", + "size": "../../scripts/pkg-task size", + "bundlesize": "../../scripts/pkg-task bundlesize" }, "size-limit": [ { - "path": "./dist/index.min.js", - "size": "8 KB" + "path": "lib/index.js" } ], "bundlesize": [ diff --git a/packages/bbob-vue3/src/Component.js b/packages/bbob-vue3/src/Component.js new file mode 100644 index 00000000..4b0fbc35 --- /dev/null +++ b/packages/bbob-vue3/src/Component.js @@ -0,0 +1,33 @@ +import { defineComponent, h } from 'vue'; + +import { render } from './render'; + +const Component = defineComponent({ + props: { + container: { + type: String, + default: 'span', + }, + plugins: { + type: Array, + }, + options: { + type: Object, + }, + }, + + render(props) { + if (this.$slots.default) { + const source = this.$slots.default().reduce((acc, vnode) => acc + vnode.children, ''); + + return h( + props.container, + render(h, source, props.plugins, props.options), + ); + } + + return null; + }, +}); + +export default Component; diff --git a/packages/bbob-vue3/src/Component.ts b/packages/bbob-vue3/src/Component.ts deleted file mode 100644 index bbff78b4..00000000 --- a/packages/bbob-vue3/src/Component.ts +++ /dev/null @@ -1,47 +0,0 @@ -import { defineComponent, h, VNode } from "vue"; -import { render } from "./render"; - -import type { BBobPlugins, BBobCoreOptions } from "@bbob/core"; - -type VueComponentProps = { - container: string; - componentProps: Record; - plugins?: BBobPlugins; - options?: BBobCoreOptions; -}; - -const Component = defineComponent({ - props: { - container: { - type: String, - default: "span", - }, - plugins: { - type: Array, - }, - options: { - type: Object, - }, - }, - - render(props: VueComponentProps) { - if (this.$slots.default) { - const source = this.$slots - .default() - .reduce((acc: VNode, vnode: VNode) => { - if (typeof acc === "string") { - return acc + vnode.children; - } - }, ""); - - return h( - props.container, - render(h, source, props.plugins, props.options) - ); - } - - return null; - }, -}); - -export default Component; diff --git a/packages/bbob-vue3/src/index.js b/packages/bbob-vue3/src/index.js new file mode 100644 index 00000000..f92d2be3 --- /dev/null +++ b/packages/bbob-vue3/src/index.js @@ -0,0 +1,10 @@ +import Component from './Component'; + +export { render } from './render'; +export { Component }; + +function install(Vue) { + Vue.component('bbob-bbcode', Component); +} + +export default install; diff --git a/packages/bbob-vue3/src/index.ts b/packages/bbob-vue3/src/index.ts deleted file mode 100644 index b5572e83..00000000 --- a/packages/bbob-vue3/src/index.ts +++ /dev/null @@ -1,11 +0,0 @@ -import type { App } from "vue"; -import Component from "./Component"; - -export { render } from "./render"; -export { Component }; - -function install(Vue: App) { - Vue.component("bbob-bbcode", Component); -} - -export default install; diff --git a/packages/bbob-vue3/src/render.js b/packages/bbob-vue3/src/render.js new file mode 100644 index 00000000..e71be642 --- /dev/null +++ b/packages/bbob-vue3/src/render.js @@ -0,0 +1,52 @@ +/* eslint-disable no-use-before-define,import/prefer-default-export */ +import core from '@bbob/core'; +import * as html from '@bbob/html'; + +import { isStringNode, isTagNode } from '@bbob/plugin-helper'; + +const toAST = (source, plugins = [], options = {}) => core(plugins) + .process(source, { + ...options, + render: (input) => html.render(input, { stripTags: true }), + }).tree; + +const isContentEmpty = (content) => (!content || content.length === 0); + +function tagToVueNode(createElement, node, index) { + const { class: className, style, ...domProps } = node.attrs || {}; + + return createElement( + node.tag, + { + key: index, + class: className, + style, + ...domProps, + }, + isContentEmpty(node.content) ? null : renderToVueNodes(createElement, node.content), + ); +} + +function renderToVueNodes(createElement, nodes) { + return [].concat(nodes).reduce((arr, node, index) => { + if (isTagNode(node)) { + arr.push(tagToVueNode(createElement, node, index)); + } else if (isStringNode(node)) { + arr.push(node); + } + + return arr; + }, []); +} + +/** + * Converts string to Vue 3 VNodes + * @param createElement {CreateElement} + * @param source {String} + * @param plugins {Array} + * @param options {Object} + * @returns {Array} + */ +export function render(createElement, source, plugins, options) { + return renderToVueNodes(createElement, toAST(source, plugins, options)); +} diff --git a/packages/bbob-vue3/src/render.ts b/packages/bbob-vue3/src/render.ts deleted file mode 100644 index 90517a80..00000000 --- a/packages/bbob-vue3/src/render.ts +++ /dev/null @@ -1,90 +0,0 @@ -/* eslint-disable no-use-before-define,import/prefer-default-export */ -import core, { BBobCoreOptions, BBobPlugins } from "@bbob/core"; -import * as html from "@bbob/html"; -import { h, VNodeArrayChildren } from "vue"; - -import { - TagNode, - TagNodeTree, - isStringNode, - isTagNode, -} from "@bbob/plugin-helper"; - -type CreateElement = typeof h; - -const toAST = ( - source: string, - plugins?: BBobPlugins, - options?: BBobCoreOptions -) => - core(plugins).process(source, { - ...options, - render: (input) => html.render(input, { stripTags: true }), - }).tree; - -const isContentEmpty = (content: TagNodeTree) => { - if (!content) { - return true; - } - - if (typeof content === "number") { - return String(content).length === 0; - } - - return Array.isArray(content) ? content.length === 0 : !content; -}; - -function tagToVueNode( - createElement: CreateElement, - node: TagNode, - index: number -) { - const { class: className, style, ...domProps } = node.attrs; - - return createElement( - node.tag, - { - key: index, - class: className, - style, - ...domProps, - }, - isContentEmpty(node.content) ? undefined : renderToVueNodes(createElement, node.content), - ); -} - -function renderToVueNodes( - createElement: CreateElement, - nodes: TagNodeTree -): VNodeArrayChildren { - if (Array.isArray(nodes) && nodes.length) { - return nodes.reduce((arr, node, index) => { - if (isTagNode(node)) { - arr.push(tagToVueNode(createElement, node, index)); - } else if (isStringNode(node)) { - arr.push(String(node)); - } - - return arr; - }, [] as VNodeArrayChildren); - } - - return []; -} - -/** - * Converts string to Vue 3 VNodes - * @param createElement {CreateElement} - * @param source {String} - * @param plugins {Array} - * @param options {Object} - * @returns {Array} - */ -export function render( - createElement: CreateElement, - source: string, - plugins?: BBobPlugins, - options?: BBobCoreOptions -) { - return renderToVueNodes(createElement, toAST(source, plugins, options)); -} diff --git a/packages/bbob-vue3/test/render.test.js b/packages/bbob-vue3/test/render.test.js index 32deffda..6cfc10cf 100644 --- a/packages/bbob-vue3/test/render.test.js +++ b/packages/bbob-vue3/test/render.test.js @@ -22,7 +22,7 @@ describe('@bbob/vue3 render', () => { expect(html).toStrictEqual([ { - "children": undefined, + "children": null, "props": { "class": undefined, "key": 0, "style": undefined }, "tagName": "b" } diff --git a/packages/bbob-vue3/tsconfig.json b/packages/bbob-vue3/tsconfig.json deleted file mode 100644 index 385f1a81..00000000 --- a/packages/bbob-vue3/tsconfig.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "extends": "../../tsconfig.json", - "compilerOptions": { - "baseUrl": ".", - "outDir": "./types" - }, - "include": [ - "./src/**/*" - ] -} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 91a79d52..6220555e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -19,9 +19,6 @@ importers: .: devDependencies: - '@bbob/scripts': - specifier: '*' - version: link:scripts '@changesets/changelog-github': specifier: 0.4.8 version: 0.4.8 @@ -34,51 +31,36 @@ importers: '@commitlint/config-conventional': specifier: 13.2.0 version: 13.2.0 - '@nx/eslint': - specifier: 18.3.3 - version: 18.3.3(@swc/core@1.3.107)(@types/node@20.4.5)(nx@18.3.3) - '@nx/jest': - specifier: 18.3.3 - version: 18.3.3(@swc/core@1.3.107)(@types/node@20.4.5)(nx@18.3.3)(typescript@5.1.6) - '@nx/rollup': - specifier: 18.3.3 - version: 18.3.3(@babel/core@7.23.2)(@swc/core@1.3.107)(@types/node@20.4.5)(nx@18.3.3)(typescript@5.1.6) + '@nrwl/cli': + specifier: 15.3.3 + version: 15.3.3(@swc/core@1.3.16) '@rollup/plugin-commonjs': - specifier: 25.0.7 - version: 25.0.7(rollup@4.1.5) + specifier: 23.0.2 + version: 23.0.2(rollup@3.3.0) '@rollup/plugin-node-resolve': - specifier: 15.2.3 - version: 15.2.3(rollup@4.1.5) + specifier: 15.0.1 + version: 15.0.1(rollup@3.3.0) '@rollup/plugin-replace': - specifier: 5.0.5 - version: 5.0.5(rollup@4.1.5) + specifier: 5.0.1 + version: 5.0.1(rollup@3.3.0) '@size-limit/preset-small-lib': - specifier: 11.0.1 - version: 11.0.1(size-limit@11.0.1) + specifier: 6.0.1 + version: 6.0.1(@swc/core@1.3.16)(size-limit@6.0.1) '@swc/cli': - specifier: 0.3.10 - version: 0.3.10(@swc/core@1.3.107) + specifier: 0.1.57 + version: 0.1.57(@swc/core@1.3.16) '@swc/core': - specifier: 1.3.107 - version: 1.3.107 + specifier: 1.3.16 + version: 1.3.16 '@swc/jest': - specifier: 0.2.36 - version: 0.2.36(@swc/core@1.3.107) + specifier: 0.2.23 + version: 0.2.23(@swc/core@1.3.16) '@testing-library/dom': specifier: 9.3.1 version: 9.3.1 '@testing-library/jest-dom': specifier: 6.1.2 - version: 6.1.2(@types/jest@29.5.3)(jest@29.7.0) - '@types/jest': - specifier: 29.5.3 - version: 29.5.3 - '@types/node': - specifier: 20.4.5 - version: 20.4.5 - '@types/react': - specifier: 18.2.18 - version: 18.2.18 + version: 6.1.2(jest@29.5.0) bundlesize2: specifier: 0.0.31 version: 0.0.31 @@ -96,7 +78,7 @@ importers: version: 2.24.2(eslint@7.32.0) eslint-plugin-jest: specifier: 25.0.1 - version: 25.0.1(eslint@7.32.0)(typescript@5.1.6) + version: 25.0.1(eslint@7.32.0)(typescript@4.9.5) eslint-plugin-jsx-a11y: specifier: 6.4.1 version: 6.4.1(eslint@7.32.0) @@ -110,14 +92,14 @@ importers: specifier: 7.0.2 version: 7.0.2 jest: - specifier: 29.7.0 - version: 29.7.0(@types/node@20.4.5) + specifier: 29.5.0 + version: 29.5.0 jest-environment-jsdom: - specifier: 29.7.0 - version: 29.7.0 + specifier: 29.6.4 + version: 29.6.4 lerna: - specifier: 7.4.1 - version: 7.4.1(@swc/core@1.3.107) + specifier: 6.0.3 + version: 6.0.3(@swc/core@1.3.16) lint-staged: specifier: 11.2.3 version: 11.2.3 @@ -125,38 +107,32 @@ importers: specifier: 3.0.0 version: 3.0.0 nx: - specifier: 18.3.3 - version: 18.3.3(@swc/core@1.3.107) + specifier: 15.3.3 + version: 15.3.3(@swc/core@1.3.16) posthtml-render: - specifier: 3.0.0 + specifier: ^3.0.0 version: 3.0.0 rimraf: - specifier: 5.0.5 - version: 5.0.5 + specifier: ^3.0.2 + version: 3.0.2 rollup: - specifier: 4.1.5 - version: 4.1.5 + specifier: 3.3.0 + version: 3.3.0 rollup-plugin-gzip: specifier: 3.1.0 - version: 3.1.0(rollup@4.1.5) + version: 3.1.0(rollup@3.3.0) rollup-plugin-swc3: - specifier: 0.11.0 - version: 0.11.0(@swc/core@1.3.107)(rollup@4.1.5) + specifier: 0.7.0 + version: 0.7.0(@swc/core@1.3.16)(rollup@3.3.0) size-limit: - specifier: 11.0.1 - version: 11.0.1 - typescript: - specifier: 5.1.6 - version: 5.1.6 + specifier: 6.0.1 + version: 6.0.1 benchmark: dependencies: '@bbob/parser': - specifier: '*' + specifier: workspace:* version: link:../packages/bbob-parser - '@bbob/plugin-helper': - specifier: '*' - version: link:../packages/bbob-plugin-helper benchmark: specifier: 2.1.4 version: 2.1.4 @@ -187,10 +163,10 @@ importers: devDependencies: '@vue/cli-plugin-babel': specifier: 5.0.8 - version: 5.0.8(@swc/core@1.3.107)(@vue/cli-service@5.0.8)(core-js@3.26.1)(vue@2.7.16) + version: 5.0.8(@swc/core@1.3.16)(@vue/cli-service@5.0.8)(core-js@3.26.1)(vue@2.7.16) '@vue/cli-service': specifier: 5.0.8 - version: 5.0.8(@swc/core@1.3.107)(vue-template-compiler@2.7.14)(vue@2.7.16) + version: 5.0.8(@swc/core@1.3.16)(vue-template-compiler@2.7.14)(vue@2.7.16) vue-template-compiler: specifier: 2.7.14 version: 2.7.14 @@ -198,104 +174,87 @@ importers: packages/bbob-cli: dependencies: '@bbob/html': - specifier: '*' + specifier: workspace:* version: link:../bbob-html '@bbob/preset-html5': - specifier: '*' + specifier: workspace:* version: link:../bbob-preset-html5 - devDependencies: - '@types/node': - specifier: 20.11.30 - version: 20.11.30 + commander: + specifier: ^2.15.1 + version: 2.20.3 packages/bbob-core: dependencies: '@bbob/parser': - specifier: '*' + specifier: workspace:* version: link:../bbob-parser - '@bbob/plugin-helper': - specifier: '*' - version: link:../bbob-plugin-helper packages/bbob-html: dependencies: '@bbob/core': - specifier: '*' + specifier: workspace:* version: link:../bbob-core '@bbob/plugin-helper': - specifier: '*' + specifier: workspace:* version: link:../bbob-plugin-helper packages/bbob-parser: dependencies: '@bbob/plugin-helper': - specifier: '*' + specifier: workspace:* version: link:../bbob-plugin-helper packages/bbob-plugin-helper: {} - packages/bbob-preset: - dependencies: - '@bbob/core': - specifier: '*' - version: link:../bbob-core - '@bbob/plugin-helper': - specifier: '*' - version: link:../bbob-plugin-helper + packages/bbob-preset: {} packages/bbob-preset-html5: dependencies: '@bbob/plugin-helper': - specifier: '*' + specifier: workspace:* version: link:../bbob-plugin-helper '@bbob/preset': - specifier: '*' + specifier: workspace:* version: link:../bbob-preset devDependencies: - '@bbob/core': - specifier: '*' - version: link:../bbob-core '@bbob/html': - specifier: '*' + specifier: workspace:* version: link:../bbob-html packages/bbob-preset-react: dependencies: - '@bbob/preset': - specifier: '*' - version: link:../bbob-preset '@bbob/preset-html5': - specifier: '*' + specifier: workspace:* version: link:../bbob-preset-html5 devDependencies: '@bbob/core': - specifier: '*' + specifier: workspace:* version: link:../bbob-core packages/bbob-preset-vue: dependencies: - '@bbob/preset': - specifier: '*' - version: link:../bbob-preset '@bbob/preset-html5': - specifier: '*' + specifier: workspace:* version: link:../bbob-preset-html5 devDependencies: '@bbob/core': - specifier: '*' + specifier: workspace:* version: link:../bbob-core packages/bbob-react: dependencies: '@bbob/core': - specifier: '*' + specifier: workspace:* version: link:../bbob-core '@bbob/html': - specifier: '*' + specifier: workspace:* version: link:../bbob-html '@bbob/plugin-helper': - specifier: '*' + specifier: workspace:* version: link:../bbob-plugin-helper + prop-types: + specifier: '> 15.0' + version: 15.8.1 devDependencies: '@bbob/preset-react': specifier: ^3.0.2 @@ -306,9 +265,6 @@ importers: '@testing-library/react': specifier: 13.x version: 13.4.0(react-dom@18.2.0)(react@18.2.0) - '@types/react': - specifier: 18.x - version: 18.2.18 react: specifier: 18.x version: 18.2.0 @@ -319,17 +275,17 @@ importers: packages/bbob-vue2: dependencies: '@bbob/core': - specifier: '*' + specifier: workspace:* version: link:../bbob-core '@bbob/html': - specifier: '*' + specifier: workspace:* version: link:../bbob-html '@bbob/plugin-helper': - specifier: '*' + specifier: workspace:* version: link:../bbob-plugin-helper devDependencies: '@bbob/preset-vue': - specifier: '*' + specifier: workspace:* version: link:../bbob-preset-vue '@testing-library/vue': specifier: 5.9.0 @@ -344,41 +300,36 @@ importers: packages/bbob-vue3: dependencies: '@bbob/core': - specifier: '*' + specifier: workspace:* version: link:../bbob-core '@bbob/html': - specifier: '*' + specifier: workspace:* version: link:../bbob-html '@bbob/plugin-helper': - specifier: '*' + specifier: workspace:* version: link:../bbob-plugin-helper devDependencies: '@bbob/preset-vue': - specifier: '*' + specifier: workspace:* version: link:../bbob-preset-vue '@testing-library/vue': specifier: 7.0.0 - version: 7.0.0(@vue/compiler-sfc@3.4.21)(typescript@5.1.6)(vue@3.4.21) - '@vue/compiler-dom': - specifier: 3.4.21 - version: 3.4.21 + version: 7.0.0(@vue/compiler-sfc@3.4.21)(typescript@4.9.5)(vue@3.4.21) '@vue/compiler-sfc': specifier: 3.4.21 version: 3.4.21 - '@vue/runtime-core': - specifier: 3.4.21 - version: 3.4.21 - '@vue/runtime-dom': - specifier: 3.4.21 - version: 3.4.21 '@vue/test-utils': specifier: 2.4.5 - version: 2.4.5(typescript@5.1.6) + version: 2.4.5(typescript@4.9.5) vue: specifier: 3.4.21 - version: 3.4.21(typescript@5.1.6) + version: 3.4.21(typescript@4.9.5) - scripts: {} + scripts: + dependencies: + commander: + specifier: 8.2.0 + version: 8.2.0 packages: @@ -853,7 +804,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.22.5 dev: true /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.23.2): @@ -1042,17 +993,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.24.0 - dev: true - - /@babel/plugin-syntax-typescript@7.24.1(@babel/core@7.23.2): - resolution: {integrity: sha512-Yhnmvy5HZEnHUty6i++gcfH1/l68AHnItFHnaCv6hn9dNh0hQvvQJsxpi4BMBFN5DLeHBuucT/0DgzXif/OyRw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.22.5 dev: true /@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.23.2): @@ -1571,19 +1512,6 @@ packages: '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-typescript@7.24.1(@babel/core@7.23.2): - resolution: {integrity: sha512-liYSESjX2fZ7JyBFkYG78nfvHlMKE6IpNdTVnxmlYUR+j5ZLsitFbaAE+eJSK2zPPkNWNw4mXL51rQ8WrvdK0w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-create-class-features-plugin': 7.24.1(@babel/core@7.23.2) - '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-typescript': 7.24.1(@babel/core@7.23.2) - dev: true - /@babel/plugin-transform-unicode-escapes@7.24.1(@babel/core@7.23.2): resolution: {integrity: sha512-RlkVIcWT4TLI96zM660S877E7beKlQw7Ig+wqkKBiWfj0zH5Q4h50q6er4wzZKRNSYpfo6ILJ+hrJAGSX2qcNw==} engines: {node: '>=6.9.0'} @@ -1729,20 +1657,6 @@ packages: esutils: 2.0.3 dev: true - /@babel/preset-typescript@7.24.1(@babel/core@7.23.2): - resolution: {integrity: sha512-1DBaMmRDpuYQBPWD8Pf/WEwCrtgRHxsZnP4mIy9G/X+hFfbI47Q2G4t1Paakld84+qsk2fSsUPMKg71jkoOOaQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/helper-validator-option': 7.23.5 - '@babel/plugin-syntax-jsx': 7.24.1(@babel/core@7.23.2) - '@babel/plugin-transform-modules-commonjs': 7.24.1(@babel/core@7.23.2) - '@babel/plugin-transform-typescript': 7.24.1(@babel/core@7.23.2) - dev: true - /@babel/regjsgen@0.8.0: resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==} dev: true @@ -2181,18 +2095,16 @@ packages: chalk: 4.1.2 dev: true - /@cspotcode/source-map-support@0.8.1: - resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} - engines: {node: '>=12'} - dependencies: - '@jridgewell/trace-mapping': 0.3.9 - dev: true - /@discoveryjs/json-ext@0.5.7: resolution: {integrity: sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==} engines: {node: '>=10.0.0'} dev: true + /@discoveryjs/natural-compare@1.1.0: + resolution: {integrity: sha512-yuctPJs5lRXoI8LkpVZGAV6n+DKOuEsfpfcIDQ8ZjWHwazqk1QjBc4jMlof0UlZHyUqv4dwsOTooMiAmtzvwXA==} + engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} + dev: true + /@endemolshinegroup/cosmiconfig-typescript-loader@3.0.2(cosmiconfig@7.1.0)(typescript@4.9.5): resolution: {integrity: sha512-QRVtqJuS1mcT56oHpVegkKBlgtWjXw/gHNWO3eL9oyB5Sc7HBoc2OLG/nYpVfT/Jejvo3NUrD0Udk7XgoyDKkA==} engines: {node: '>=10.0.0'} @@ -2208,359 +2120,103 @@ packages: - typescript dev: true - /@esbuild/aix-ppc64@0.19.12: - resolution: {integrity: sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==} - engines: {node: '>=12'} - cpu: [ppc64] - os: [aix] - requiresBuild: true - dev: true - optional: true - - /@esbuild/android-arm64@0.19.12: - resolution: {integrity: sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA==} - engines: {node: '>=12'} - cpu: [arm64] - os: [android] - requiresBuild: true - dev: true - optional: true - - /@esbuild/android-arm@0.19.12: - resolution: {integrity: sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w==} - engines: {node: '>=12'} - cpu: [arm] - os: [android] - requiresBuild: true - dev: true - optional: true - - /@esbuild/android-x64@0.19.12: - resolution: {integrity: sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew==} - engines: {node: '>=12'} - cpu: [x64] - os: [android] - requiresBuild: true - dev: true - optional: true - - /@esbuild/darwin-arm64@0.19.12: - resolution: {integrity: sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g==} - engines: {node: '>=12'} - cpu: [arm64] - os: [darwin] - requiresBuild: true - dev: true - optional: true - - /@esbuild/darwin-x64@0.19.12: - resolution: {integrity: sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A==} - engines: {node: '>=12'} - cpu: [x64] - os: [darwin] - requiresBuild: true + /@eslint/eslintrc@0.4.3: + resolution: {integrity: sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==} + engines: {node: ^10.12.0 || >=12.0.0} + dependencies: + ajv: 6.12.6 + debug: 4.3.4(supports-color@8.1.1) + espree: 7.3.1 + globals: 13.23.0 + ignore: 4.0.6 + import-fresh: 3.3.0 + js-yaml: 3.14.1 + minimatch: 3.1.2 + strip-json-comments: 3.1.1 + transitivePeerDependencies: + - supports-color dev: true - optional: true - /@esbuild/freebsd-arm64@0.19.12: - resolution: {integrity: sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA==} - engines: {node: '>=12'} - cpu: [arm64] - os: [freebsd] - requiresBuild: true + /@fastify/deepmerge@1.3.0: + resolution: {integrity: sha512-J8TOSBq3SoZbDhM9+R/u77hP93gz/rajSA+K2kGyijPpORPWUXHUpTaleoj+92As0S9uPRP7Oi8IqMf0u+ro6A==} dev: true - optional: true - /@esbuild/freebsd-x64@0.19.12: - resolution: {integrity: sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg==} - engines: {node: '>=12'} - cpu: [x64] - os: [freebsd] - requiresBuild: true + /@gar/promisify@1.1.3: + resolution: {integrity: sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==} dev: true - optional: true - /@esbuild/linux-arm64@0.19.12: - resolution: {integrity: sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA==} - engines: {node: '>=12'} - cpu: [arm64] - os: [linux] - requiresBuild: true + /@hapi/hoek@9.3.0: + resolution: {integrity: sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==} dev: true - optional: true - /@esbuild/linux-arm@0.19.12: - resolution: {integrity: sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w==} - engines: {node: '>=12'} - cpu: [arm] - os: [linux] - requiresBuild: true + /@hapi/topo@5.1.0: + resolution: {integrity: sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==} + dependencies: + '@hapi/hoek': 9.3.0 dev: true - optional: true - /@esbuild/linux-ia32@0.19.12: - resolution: {integrity: sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA==} - engines: {node: '>=12'} - cpu: [ia32] - os: [linux] - requiresBuild: true + /@humanwhocodes/config-array@0.5.0: + resolution: {integrity: sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==} + engines: {node: '>=10.10.0'} + dependencies: + '@humanwhocodes/object-schema': 1.2.1 + debug: 4.3.4(supports-color@8.1.1) + minimatch: 3.1.2 + transitivePeerDependencies: + - supports-color dev: true - optional: true - /@esbuild/linux-loong64@0.19.12: - resolution: {integrity: sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA==} - engines: {node: '>=12'} - cpu: [loong64] - os: [linux] - requiresBuild: true + /@humanwhocodes/object-schema@1.2.1: + resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} dev: true - optional: true - /@esbuild/linux-mips64el@0.19.12: - resolution: {integrity: sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w==} - engines: {node: '>=12'} - cpu: [mips64el] - os: [linux] - requiresBuild: true + /@hutson/parse-repository-url@3.0.2: + resolution: {integrity: sha512-H9XAx3hc0BQHY6l+IFSWHDySypcXsvsuLhgYLUGywmJ5pswRVQJUHpOsobnLYp2ZUaUlKiKDrgWWhosOwAEM8Q==} + engines: {node: '>=6.9.0'} dev: true - optional: true - /@esbuild/linux-ppc64@0.19.12: - resolution: {integrity: sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg==} + /@isaacs/cliui@8.0.2: + resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} engines: {node: '>=12'} - cpu: [ppc64] - os: [linux] - requiresBuild: true + dependencies: + string-width: 5.1.2 + string-width-cjs: /string-width@4.2.3 + strip-ansi: 7.1.0 + strip-ansi-cjs: /strip-ansi@6.0.1 + wrap-ansi: 8.1.0 + wrap-ansi-cjs: /wrap-ansi@7.0.0 dev: true - optional: true - /@esbuild/linux-riscv64@0.19.12: - resolution: {integrity: sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg==} - engines: {node: '>=12'} - cpu: [riscv64] - os: [linux] - requiresBuild: true + /@isaacs/string-locale-compare@1.1.0: + resolution: {integrity: sha512-SQ7Kzhh9+D+ZW9MA0zkYv3VXhIDNx+LzM6EJ+/65I3QY+enU6Itte7E5XX7EWrqLW2FN4n06GWzBnPoC3th2aQ==} dev: true - optional: true - /@esbuild/linux-s390x@0.19.12: - resolution: {integrity: sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg==} - engines: {node: '>=12'} - cpu: [s390x] - os: [linux] - requiresBuild: true + /@istanbuljs/load-nyc-config@1.1.0: + resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==} + engines: {node: '>=8'} + dependencies: + camelcase: 5.3.1 + find-up: 4.1.0 + get-package-type: 0.1.0 + js-yaml: 3.14.1 + resolve-from: 5.0.0 dev: true - optional: true - /@esbuild/linux-x64@0.19.12: - resolution: {integrity: sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg==} - engines: {node: '>=12'} - cpu: [x64] - os: [linux] - requiresBuild: true + /@istanbuljs/schema@0.1.3: + resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} + engines: {node: '>=8'} dev: true - optional: true - /@esbuild/netbsd-x64@0.19.12: - resolution: {integrity: sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA==} - engines: {node: '>=12'} - cpu: [x64] - os: [netbsd] - requiresBuild: true - dev: true - optional: true - - /@esbuild/openbsd-x64@0.19.12: - resolution: {integrity: sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw==} - engines: {node: '>=12'} - cpu: [x64] - os: [openbsd] - requiresBuild: true - dev: true - optional: true - - /@esbuild/sunos-x64@0.19.12: - resolution: {integrity: sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA==} - engines: {node: '>=12'} - cpu: [x64] - os: [sunos] - requiresBuild: true - dev: true - optional: true - - /@esbuild/win32-arm64@0.19.12: - resolution: {integrity: sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A==} - engines: {node: '>=12'} - cpu: [arm64] - os: [win32] - requiresBuild: true - dev: true - optional: true - - /@esbuild/win32-ia32@0.19.12: - resolution: {integrity: sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ==} - engines: {node: '>=12'} - cpu: [ia32] - os: [win32] - requiresBuild: true - dev: true - optional: true - - /@esbuild/win32-x64@0.19.12: - resolution: {integrity: sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA==} - engines: {node: '>=12'} - cpu: [x64] - os: [win32] - requiresBuild: true - dev: true - optional: true - - /@eslint-community/eslint-utils@4.4.0(eslint@8.57.0): - resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - dependencies: - eslint: 8.57.0 - eslint-visitor-keys: 3.4.3 - dev: true - - /@eslint-community/regexpp@4.10.0: - resolution: {integrity: sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==} - engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - dev: true - - /@eslint/eslintrc@0.4.3: - resolution: {integrity: sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==} - engines: {node: ^10.12.0 || >=12.0.0} - dependencies: - ajv: 6.12.6 - debug: 4.3.4(supports-color@8.1.1) - espree: 7.3.1 - globals: 13.23.0 - ignore: 4.0.6 - import-fresh: 3.3.0 - js-yaml: 3.14.1 - minimatch: 3.1.2 - strip-json-comments: 3.1.1 - transitivePeerDependencies: - - supports-color - dev: true - - /@eslint/eslintrc@2.1.4: - resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - ajv: 6.12.6 - debug: 4.3.4(supports-color@8.1.1) - espree: 9.6.1 - globals: 13.23.0 - ignore: 5.2.4 - import-fresh: 3.3.0 - js-yaml: 4.1.0 - minimatch: 3.1.2 - strip-json-comments: 3.1.1 - transitivePeerDependencies: - - supports-color - dev: true - - /@eslint/js@8.57.0: - resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dev: true - - /@fastify/deepmerge@1.3.0: - resolution: {integrity: sha512-J8TOSBq3SoZbDhM9+R/u77hP93gz/rajSA+K2kGyijPpORPWUXHUpTaleoj+92As0S9uPRP7Oi8IqMf0u+ro6A==} - dev: true - - /@hapi/hoek@9.3.0: - resolution: {integrity: sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==} - dev: true - - /@hapi/topo@5.1.0: - resolution: {integrity: sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==} - dependencies: - '@hapi/hoek': 9.3.0 - dev: true - - /@humanwhocodes/config-array@0.11.14: - resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==} - engines: {node: '>=10.10.0'} - dependencies: - '@humanwhocodes/object-schema': 2.0.2 - debug: 4.3.4(supports-color@8.1.1) - minimatch: 3.1.2 - transitivePeerDependencies: - - supports-color - dev: true - - /@humanwhocodes/config-array@0.5.0: - resolution: {integrity: sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==} - engines: {node: '>=10.10.0'} - dependencies: - '@humanwhocodes/object-schema': 1.2.1 - debug: 4.3.4(supports-color@8.1.1) - minimatch: 3.1.2 - transitivePeerDependencies: - - supports-color - dev: true - - /@humanwhocodes/module-importer@1.0.1: - resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} - engines: {node: '>=12.22'} - dev: true - - /@humanwhocodes/object-schema@1.2.1: - resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} - dev: true - - /@humanwhocodes/object-schema@2.0.2: - resolution: {integrity: sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==} - dev: true - - /@hutson/parse-repository-url@3.0.2: - resolution: {integrity: sha512-H9XAx3hc0BQHY6l+IFSWHDySypcXsvsuLhgYLUGywmJ5pswRVQJUHpOsobnLYp2ZUaUlKiKDrgWWhosOwAEM8Q==} - engines: {node: '>=6.9.0'} - dev: true - - /@isaacs/cliui@8.0.2: - resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} - engines: {node: '>=12'} - dependencies: - string-width: 5.1.2 - string-width-cjs: /string-width@4.2.3 - strip-ansi: 7.1.0 - strip-ansi-cjs: /strip-ansi@6.0.1 - wrap-ansi: 8.1.0 - wrap-ansi-cjs: /wrap-ansi@7.0.0 - dev: true - - /@istanbuljs/load-nyc-config@1.1.0: - resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==} - engines: {node: '>=8'} - dependencies: - camelcase: 5.3.1 - find-up: 4.1.0 - get-package-type: 0.1.0 - js-yaml: 3.14.1 - resolve-from: 5.0.0 - dev: true - - /@istanbuljs/schema@0.1.3: - resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} - engines: {node: '>=8'} - dev: true - - /@jest/console@29.7.0: - resolution: {integrity: sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - dependencies: - '@jest/types': 29.6.3 - '@types/node': 20.11.30 - chalk: 4.1.2 - jest-message-util: 29.7.0 - jest-util: 29.7.0 - slash: 3.0.0 + /@jest/console@29.7.0: + resolution: {integrity: sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@jest/types': 29.6.3 + '@types/node': 20.8.7 + chalk: 4.1.2 + jest-message-util: 29.7.0 + jest-util: 29.7.0 + slash: 3.0.0 dev: true /@jest/core@29.7.0: @@ -2577,14 +2233,14 @@ packages: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 20.11.30 + '@types/node': 20.8.7 ansi-escapes: 4.3.2 chalk: 4.1.2 ci-info: 3.9.0 exit: 0.1.2 graceful-fs: 4.2.11 jest-changed-files: 29.7.0 - jest-config: 29.7.0(@types/node@20.11.30) + jest-config: 29.7.0(@types/node@20.8.7) jest-haste-map: 29.7.0 jest-message-util: 29.7.0 jest-regex-util: 29.6.3 @@ -2606,11 +2262,11 @@ packages: - ts-node dev: true - /@jest/create-cache-key-function@29.7.0: - resolution: {integrity: sha512-4QqS3LY5PBmTRHj9sAg1HLoPzqAI0uOX6wI/TRqHIcOxlFidy6YEmCQJk6FSZjNLGCeubDMfmkWL+qaLKhSGQA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + /@jest/create-cache-key-function@27.5.1: + resolution: {integrity: sha512-dmH1yW+makpTSURTy8VzdUwFnfQh1G8R+DxO2Ho2FFmBbKFEVm+3jWdvFhE2VqB/LATCTokkP0dotjyQyw5/AQ==} + engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} dependencies: - '@jest/types': 29.6.3 + '@jest/types': 27.5.1 dev: true /@jest/environment@29.7.0: @@ -2619,7 +2275,7 @@ packages: dependencies: '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 20.11.30 + '@types/node': 20.8.7 jest-mock: 29.7.0 dev: true @@ -2646,7 +2302,7 @@ packages: dependencies: '@jest/types': 29.6.3 '@sinonjs/fake-timers': 10.3.0 - '@types/node': 20.11.30 + '@types/node': 20.8.7 jest-message-util: 29.7.0 jest-mock: 29.7.0 jest-util: 29.7.0 @@ -2678,8 +2334,8 @@ packages: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@jridgewell/trace-mapping': 0.3.25 - '@types/node': 20.11.30 + '@jridgewell/trace-mapping': 0.3.20 + '@types/node': 20.8.7 chalk: 4.1.2 collect-v8-coverage: 1.0.2 exit: 0.1.2 @@ -2712,7 +2368,7 @@ packages: resolution: {integrity: sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@jridgewell/trace-mapping': 0.3.25 + '@jridgewell/trace-mapping': 0.3.20 callsites: 3.1.0 graceful-fs: 4.2.11 dev: true @@ -2743,7 +2399,7 @@ packages: dependencies: '@babel/core': 7.23.2 '@jest/types': 29.6.3 - '@jridgewell/trace-mapping': 0.3.25 + '@jridgewell/trace-mapping': 0.3.20 babel-plugin-istanbul: 6.1.1 chalk: 4.1.2 convert-source-map: 2.0.0 @@ -2760,6 +2416,17 @@ packages: - supports-color dev: true + /@jest/types@27.5.1: + resolution: {integrity: sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==} + engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + dependencies: + '@types/istanbul-lib-coverage': 2.0.5 + '@types/istanbul-reports': 3.0.3 + '@types/node': 20.8.7 + '@types/yargs': 16.0.7 + chalk: 4.1.2 + dev: true + /@jest/types@29.6.3: resolution: {integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -2767,7 +2434,7 @@ packages: '@jest/schemas': 29.6.3 '@types/istanbul-lib-coverage': 2.0.5 '@types/istanbul-reports': 3.0.3 - '@types/node': 20.11.30 + '@types/node': 20.8.7 '@types/yargs': 17.0.29 chalk: 4.1.2 dev: true @@ -2830,783 +2497,954 @@ packages: '@jridgewell/sourcemap-codec': 1.4.15 dev: true - /@jridgewell/trace-mapping@0.3.9: - resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} - dependencies: - '@jridgewell/resolve-uri': 3.1.1 - '@jridgewell/sourcemap-codec': 1.4.15 - dev: true - /@leichtgewicht/ip-codec@2.0.4: resolution: {integrity: sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==} dev: true - /@lerna/child-process@7.4.1: - resolution: {integrity: sha512-Bx1cRCZcVcWoz+atDQc4CSVzGuEgGJPOpIAXjQbBEA2cX5nqIBWdbye8eHu31En/F03aH9BhpNEJghs6wy4iTg==} - engines: {node: '>=16.0.0'} + /@lerna/add@6.0.3: + resolution: {integrity: sha512-EM9hJExG6bV4Hg+XpHTg5nGCuZl3pUEdbYLtyXfMUj/7fpCrUkxB0oESIVhFINVbxHm2pdnUfOxPDHwFSyWBig==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: - chalk: 4.1.2 - execa: 5.1.1 - strong-log-transformer: 2.1.0 + '@lerna/bootstrap': 6.0.3 + '@lerna/command': 6.0.3 + '@lerna/filter-options': 6.0.3 + '@lerna/npm-conf': 6.0.3 + '@lerna/validation-error': 6.0.3 + dedent: 0.7.0 + npm-package-arg: 8.1.1 + p-map: 4.0.0 + pacote: 13.6.2 + semver: 7.5.4 + transitivePeerDependencies: + - bluebird + - supports-color dev: true - /@lerna/create@7.4.1(@swc/core@1.3.107)(typescript@5.1.6): - resolution: {integrity: sha512-zPO9GyWceRimtMD+j+aQ8xJgNPYn/Q/SzHf4wYN+4Rj5nrFKMyX+Et7FbWgUNpj0dRgyCCKBDYmTB7xQVVq4gQ==} - engines: {node: '>=16.0.0'} - dependencies: - '@lerna/child-process': 7.4.1 - '@npmcli/run-script': 6.0.2 - '@nx/devkit': 16.10.0(nx@16.10.0) - '@octokit/plugin-enterprise-rest': 6.0.1 - '@octokit/rest': 19.0.11 - byte-size: 8.1.1 - chalk: 4.1.0 - clone-deep: 4.0.1 - cmd-shim: 6.0.1 - columnify: 1.6.0 - conventional-changelog-core: 5.0.1 - conventional-recommended-bump: 7.0.1 - cosmiconfig: 8.3.6(typescript@5.1.6) + /@lerna/bootstrap@6.0.3: + resolution: {integrity: sha512-51eT07tAiH1oca9dNrrLXXH6PJZFY4zKEYDqLkx+zMCG/LsIUnzEfy4JBe1GXbFasXfM24pG8wLKoj1sj1CR3A==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + '@lerna/command': 6.0.3 + '@lerna/filter-options': 6.0.3 + '@lerna/has-npm-version': 6.0.3 + '@lerna/npm-install': 6.0.3 + '@lerna/package-graph': 6.0.3 + '@lerna/pulse-till-done': 6.0.3 + '@lerna/rimraf-dir': 6.0.3 + '@lerna/run-lifecycle': 6.0.3 + '@lerna/run-topologically': 6.0.3 + '@lerna/symlink-binary': 6.0.3 + '@lerna/symlink-dependencies': 6.0.3 + '@lerna/validation-error': 6.0.3 + '@npmcli/arborist': 5.3.0 dedent: 0.7.0 - execa: 5.0.0 - fs-extra: 11.2.0 - get-stream: 6.0.0 - git-url-parse: 13.1.0 - glob-parent: 5.1.2 - globby: 11.1.0 - graceful-fs: 4.2.11 - has-unicode: 2.0.1 - ini: 1.3.8 - init-package-json: 5.0.0 - inquirer: 8.2.6 - is-ci: 3.0.1 - is-stream: 2.0.0 - js-yaml: 4.1.0 - libnpmpublish: 7.3.0 - load-json-file: 6.2.0 - lodash: 4.17.21 - make-dir: 4.0.0 - minimatch: 3.0.5 + get-port: 5.1.1 multimatch: 5.0.0 - node-fetch: 2.6.7 npm-package-arg: 8.1.1 - npm-packlist: 5.1.1 - npm-registry-fetch: 14.0.5 npmlog: 6.0.2 - nx: 16.10.0(@swc/core@1.3.107) p-map: 4.0.0 p-map-series: 2.1.0 - p-queue: 6.6.2 - p-reduce: 2.1.0 - pacote: 15.2.0 - pify: 5.0.0 - read-cmd-shim: 4.0.0 - read-package-json: 6.0.4 - resolve-from: 5.0.0 - rimraf: 4.4.1 + p-waterfall: 2.1.1 semver: 7.5.4 - signal-exit: 3.0.7 - slash: 3.0.0 - ssri: 9.0.1 - strong-log-transformer: 2.1.0 - tar: 6.1.11 - temp-dir: 1.0.0 - upath: 2.0.1 - uuid: 9.0.1 - validate-npm-package-license: 3.0.4 - validate-npm-package-name: 5.0.0 - write-file-atomic: 5.0.1 - write-pkg: 4.0.0 - yargs: 16.2.0 - yargs-parser: 20.2.4 transitivePeerDependencies: - - '@swc-node/register' - - '@swc/core' - bluebird - - debug - - encoding - supports-color - - typescript dev: true - /@manypkg/find-root@1.1.0: - resolution: {integrity: sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA==} + /@lerna/changed@6.0.3: + resolution: {integrity: sha512-VhKl/vVnrY12z2q1it2FkPkRwC3kyZh++kWMNDbMuUqH1kDHuw7KWJjPw6H4LDpoFWj4Q0hPcNRXxJpNiRWD1g==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: - '@babel/runtime': 7.23.2 - '@types/node': 12.20.55 - find-up: 4.1.0 - fs-extra: 8.1.0 + '@lerna/collect-updates': 6.0.3 + '@lerna/command': 6.0.3 + '@lerna/listable': 6.0.3 + '@lerna/output': 6.0.3 dev: true - /@manypkg/get-packages@1.1.3: - resolution: {integrity: sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==} + /@lerna/check-working-tree@6.0.3: + resolution: {integrity: sha512-ulAilI5AHvSVluH4QdcRPBbGH6lKU6OARfJFIgFYm8KoPyMESygYIBKBKuTUuyzfp5DOsASq2NiumBW4rpC7hg==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: - '@babel/runtime': 7.23.2 - '@changesets/types': 4.1.0 - '@manypkg/find-root': 1.1.0 - fs-extra: 8.1.0 - globby: 11.1.0 - read-yaml-file: 1.1.0 + '@lerna/collect-uncommitted': 6.0.3 + '@lerna/describe-ref': 6.0.3 + '@lerna/validation-error': 6.0.3 dev: true - /@mole-inc/bin-wrapper@8.0.1: - resolution: {integrity: sha512-sTGoeZnjI8N4KS+sW2AN95gDBErhAguvkw/tWdCjeM8bvxpz5lqrnd0vOJABA1A+Ic3zED7PYoLP/RANLgVotA==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + /@lerna/child-process@6.0.3: + resolution: {integrity: sha512-WfFwWdtGA0wvbyq7FB78Gvkd5mVjCGhRoLQY0FIGPQrmZBv3uy7kz5KbRKJlEmoIhVUnFbbV1xURxdqLzNrxoA==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: - bin-check: 4.1.0 - bin-version-check: 5.1.0 - content-disposition: 0.5.4 - ext-name: 5.0.0 - file-type: 17.1.6 - filenamify: 5.1.1 - got: 11.8.6 - os-filter-obj: 2.0.0 + chalk: 4.1.2 + execa: 5.1.1 + strong-log-transformer: 2.1.0 dev: true - /@node-ipc/js-queue@2.0.3: - resolution: {integrity: sha512-fL1wpr8hhD5gT2dA1qifeVaoDFlQR5es8tFuKqjHX+kdOtdNHnxkVZbtIrR2rxnMFvehkjaZRNV2H/gPXlb0hw==} - engines: {node: '>=1.0.0'} + /@lerna/clean@6.0.3: + resolution: {integrity: sha512-4H+leVVVhwnc/GBOkFBIrLBia+MRm2ETZyXdCNckCJZ/e5tm6XHJLprGMSP2QwhJ0H20r+ciiQGzo3TGjQAEwQ==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: - easy-stack: 1.0.1 + '@lerna/command': 6.0.3 + '@lerna/filter-options': 6.0.3 + '@lerna/prompt': 6.0.3 + '@lerna/pulse-till-done': 6.0.3 + '@lerna/rimraf-dir': 6.0.3 + p-map: 4.0.0 + p-map-series: 2.1.0 + p-waterfall: 2.1.1 dev: true - /@nodelib/fs.scandir@2.1.5: - resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} - engines: {node: '>= 8'} + /@lerna/cli@6.0.3: + resolution: {integrity: sha512-4J3dOmDGxl32FJJryE65wXR//FOMFRM0osURnr+sylzStpaEwYO24GN1oVl0YIlnGVBuPIBDpr7n0uyjvfn+2A==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: - '@nodelib/fs.stat': 2.0.5 - run-parallel: 1.2.0 - dev: true - - /@nodelib/fs.stat@2.0.5: - resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} - engines: {node: '>= 8'} + '@lerna/global-options': 6.0.3 + dedent: 0.7.0 + npmlog: 6.0.2 + yargs: 16.2.0 dev: true - /@nodelib/fs.walk@1.2.8: - resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} - engines: {node: '>= 8'} + /@lerna/collect-uncommitted@6.0.3: + resolution: {integrity: sha512-kMKL+U6fIMIHMENez6HrZEYZum+YObhmPzRr/5kkuaYqKPw2up/z1dHYQ/+w+tvzavGP15VKAWy/tZ0WsMuTWw==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: - '@nodelib/fs.scandir': 2.1.5 - fastq: 1.15.0 + '@lerna/child-process': 6.0.3 + chalk: 4.1.2 + npmlog: 6.0.2 dev: true - /@npmcli/fs@3.1.0: - resolution: {integrity: sha512-7kZUAaLscfgbwBQRbvdMYaZOWyMEcPTH/tJjnyAWJ/dvvs9Ef+CERx/qJb9GExJpl1qipaDGn7KqHnFGGixd0w==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /@lerna/collect-updates@6.0.3: + resolution: {integrity: sha512-qLuCHaHlVHu/tkdnncG6bQZHz9IFfZ6i7lexWfFnQnZ/aLEY7dVnFUde1jbsTFNMhJesKEbXJshXRcTcplDH6Q==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: + '@lerna/child-process': 6.0.3 + '@lerna/describe-ref': 6.0.3 + minimatch: 3.1.2 + npmlog: 6.0.2 + slash: 3.0.0 + dev: true + + /@lerna/command@6.0.3: + resolution: {integrity: sha512-iFkIQKLy+Ef2Kf20wOKBdkCA5J64Wjgr3XC62ZdrlDkx6wydfcfJMiXx2bhRqNKMe1cHxlBKGoRKzy8J+tBrHw==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + '@lerna/child-process': 6.0.3 + '@lerna/package-graph': 6.0.3 + '@lerna/project': 6.0.3 + '@lerna/validation-error': 6.0.3 + '@lerna/write-log-file': 6.0.3 + clone-deep: 4.0.1 + dedent: 0.7.0 + execa: 5.1.1 + is-ci: 2.0.0 + npmlog: 6.0.2 + dev: true + + /@lerna/conventional-commits@6.0.3: + resolution: {integrity: sha512-TZof9i0u9TK/Q7LEErjMQAMLf++MjO9NYG81sAuUaNKHMchUOmlFKtJmbT4/JjmgnBX5W0pCUF6DBxr/Bdjj9g==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + '@lerna/validation-error': 6.0.3 + conventional-changelog-angular: 5.0.13 + conventional-changelog-core: 4.2.4 + conventional-recommended-bump: 6.1.0 + fs-extra: 9.1.0 + get-stream: 6.0.1 + npm-package-arg: 8.1.1 + npmlog: 6.0.2 + pify: 5.0.0 semver: 7.5.4 dev: true - /@npmcli/git@4.1.0: - resolution: {integrity: sha512-9hwoB3gStVfa0N31ymBmrX+GuDGdVA/QWShZVqE0HK2Af+7QGGrCTbZia/SW0ImUTjTne7SP91qxDmtXvDHRPQ==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /@lerna/create-symlink@6.0.3: + resolution: {integrity: sha512-myCpuQZ4yYJ5sD+xZiyQHfONBIWlQnM3crIlAvObRYs1U+HwniO9YWk0HcW9dyzplwaYo+Vn55mdi67pTdsdDg==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: - '@npmcli/promise-spawn': 6.0.2 - lru-cache: 7.18.3 - npm-pick-manifest: 8.0.2 - proc-log: 3.0.0 - promise-inflight: 1.0.1 - promise-retry: 2.0.1 + cmd-shim: 5.0.0 + fs-extra: 9.1.0 + npmlog: 6.0.2 + dev: true + + /@lerna/create@6.0.3: + resolution: {integrity: sha512-mq3D5laUMe6DWhCoWS0mYJw9PZez/8up81860lk5m7Zojk1Ataa08ZWtGhBgP+p77piNRvmjN89hhjkWiXG6ng==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + '@lerna/child-process': 6.0.3 + '@lerna/command': 6.0.3 + '@lerna/npm-conf': 6.0.3 + '@lerna/validation-error': 6.0.3 + dedent: 0.7.0 + fs-extra: 9.1.0 + init-package-json: 3.0.2 + npm-package-arg: 8.1.1 + p-reduce: 2.1.0 + pacote: 13.6.2 + pify: 5.0.0 semver: 7.5.4 - which: 3.0.1 + slash: 3.0.0 + validate-npm-package-license: 3.0.4 + validate-npm-package-name: 4.0.0 + yargs-parser: 20.2.4 transitivePeerDependencies: - bluebird + - supports-color dev: true - /@npmcli/installed-package-contents@2.0.2: - resolution: {integrity: sha512-xACzLPhnfD51GKvTOOuNX2/V4G4mz9/1I2MfDoye9kBM3RYe5g2YbscsaGoTlaWqkxeiapBWyseULVKpSVHtKQ==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - hasBin: true + /@lerna/describe-ref@6.0.3: + resolution: {integrity: sha512-3gj6r9PK+c5SfHQr2j8MQ3qb6xQTrX8KvvGhe3YDW8h3jxx9SAGao8zuvzjI3tVpLx7ZSbxmHqMpyUmnLh5kuw==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: - npm-bundled: 3.0.0 - npm-normalize-package-bin: 3.0.1 + '@lerna/child-process': 6.0.3 + npmlog: 6.0.2 dev: true - /@npmcli/node-gyp@3.0.0: - resolution: {integrity: sha512-gp8pRXC2oOxu0DUE1/M3bYtb1b3/DbJ5aM113+XJBgfXdussRAsX0YOrOhdd8WvnAR6auDBvJomGAkLKA5ydxA==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /@lerna/diff@6.0.3: + resolution: {integrity: sha512-9syquyKF2oxg0fF736RWT2cf3Oyk4eRXRUNzT0hF0DL/8frQ98H+gF3ftIFVzz1bfPbXtubzBbLDi29bGEG3bQ==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + '@lerna/child-process': 6.0.3 + '@lerna/command': 6.0.3 + '@lerna/validation-error': 6.0.3 + npmlog: 6.0.2 dev: true - /@npmcli/promise-spawn@6.0.2: - resolution: {integrity: sha512-gGq0NJkIGSwdbUt4yhdF8ZrmkGKVz9vAdVzpOfnom+V8PLSmSOVhZwbNvZZS1EYcJN5hzzKBxmmVVAInM6HQLg==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /@lerna/exec@6.0.3: + resolution: {integrity: sha512-4xKTXPQe3/0hrwCao7evcQfaacfROhVkR2zfnQEA+rkKRiV6ILWdvu9jCxI7DMkzoh4DgABVuGAv84CeraunMg==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: - which: 3.0.1 + '@lerna/child-process': 6.0.3 + '@lerna/command': 6.0.3 + '@lerna/filter-options': 6.0.3 + '@lerna/profiler': 6.0.3 + '@lerna/run-topologically': 6.0.3 + '@lerna/validation-error': 6.0.3 + p-map: 4.0.0 dev: true - /@npmcli/run-script@6.0.2: - resolution: {integrity: sha512-NCcr1uQo1k5U+SYlnIrbAh3cxy+OQT1VtqiAbxdymSlptbzBb62AjH2xXgjNCoP073hoa1CfCAcwoZ8k96C4nA==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /@lerna/filter-options@6.0.3: + resolution: {integrity: sha512-6WjtXo1nNfOIYxjysGgjnCUqAbIqvoIIyQznLQYPsKN/6NN4U7sXr0P3nbaEgBZ2NHeV+seLWA/wraJ1zDaD4Q==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: - '@npmcli/node-gyp': 3.0.0 - '@npmcli/promise-spawn': 6.0.2 - node-gyp: 9.4.0 - read-package-json-fast: 3.0.2 - which: 3.0.1 - transitivePeerDependencies: - - supports-color + '@lerna/collect-updates': 6.0.3 + '@lerna/filter-packages': 6.0.3 + dedent: 0.7.0 + npmlog: 6.0.2 dev: true - /@nrwl/devkit@16.10.0(nx@16.10.0): - resolution: {integrity: sha512-fRloARtsDQoQgQ7HKEy0RJiusg/HSygnmg4gX/0n/Z+SUS+4KoZzvHjXc6T5ZdEiSjvLypJ+HBM8dQzIcVACPQ==} + /@lerna/filter-packages@6.0.3: + resolution: {integrity: sha512-UlLgondhCpy7mzZWpOoUy8OlLux8YIqw07Obba0TvVLzrVIGIPIeXhqleRchUGVRV1vfQJ2d3vCTx31s1e/V4g==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: - '@nx/devkit': 16.10.0(nx@16.10.0) - transitivePeerDependencies: - - nx + '@lerna/validation-error': 6.0.3 + multimatch: 5.0.0 + npmlog: 6.0.2 dev: true - /@nrwl/devkit@18.3.3(nx@18.3.3): - resolution: {integrity: sha512-3zZLE1vfwsNie7qjVUt9lqaM1slU0RTr/dW+Yt/2lxe8Peu6f8bnCM1Pf3kSlzoxQroctfocRtVHFXJsAuAt4g==} + /@lerna/get-npm-exec-opts@6.0.3: + resolution: {integrity: sha512-zmKmHkXzmFQIBh2k9rCwzSkearKD+Pz1GypdJ0hAehemnabtW5QQKoGFsGh+7i5mOP0JBUl5kXTYTnwRGOWmYQ==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: - '@nx/devkit': 18.3.3(nx@18.3.3) - transitivePeerDependencies: - - nx + npmlog: 6.0.2 dev: true - /@nrwl/jest@18.3.3(@swc/core@1.3.107)(@types/node@20.4.5)(nx@18.3.3)(typescript@5.1.6): - resolution: {integrity: sha512-BPI0mIbmjTHFb0/qtMND59ECld7gorV+SEVLwf4BLl7SWumVB2gLAA2+yx71cvF1jO4R5Ndi2FrBwBC9E2Va5Q==} + /@lerna/get-packed@6.0.3: + resolution: {integrity: sha512-NX/Ifi/A7iTXasfBioyv/nQ8+IC4gE1SEAuE39/ExGviOM3Jkk5EmeCqwAbhZyhYkxoDBQDJJvagQ5DobpfS7g==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: - '@nx/jest': 18.3.3(@swc/core@1.3.107)(@types/node@20.4.5)(nx@18.3.3)(typescript@5.1.6) - transitivePeerDependencies: - - '@babel/traverse' - - '@swc-node/register' - - '@swc/core' - - '@swc/wasm' - - '@types/node' - - babel-plugin-macros - - debug - - node-notifier - - nx - - supports-color - - ts-node - - typescript - - verdaccio + fs-extra: 9.1.0 + ssri: 9.0.1 + tar: 6.2.0 dev: true - /@nrwl/js@18.3.3(@swc/core@1.3.107)(@types/node@20.4.5)(nx@18.3.3)(typescript@5.1.6): - resolution: {integrity: sha512-7Wtv5kpeMWUDBUFu5go49HM/S8vDrtMOvZf9xnUcnjsFDReWe8XIEkTWudZDbzID3X4T6WQAftzj2Ov6k566lQ==} + /@lerna/github-client@6.0.3: + resolution: {integrity: sha512-wMOKH3FIDdE5T8UF88gvhUEBEFD9IUseFHqYt19hgzQyZxAx/hQQE2lqAEosYThPXqtKntIPKQGAfl0gquAMFQ==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: - '@nx/js': 18.3.3(@swc/core@1.3.107)(@types/node@20.4.5)(nx@18.3.3)(typescript@5.1.6) + '@lerna/child-process': 6.0.3 + '@octokit/plugin-enterprise-rest': 6.0.1 + '@octokit/rest': 19.0.13 + git-url-parse: 13.1.1 + npmlog: 6.0.2 transitivePeerDependencies: - - '@babel/traverse' - - '@swc-node/register' - - '@swc/core' - - '@swc/wasm' - - '@types/node' - - debug - - nx - - supports-color - - typescript - - verdaccio + - encoding dev: true - /@nrwl/js@18.3.3(@swc/core@1.3.107)(@types/node@20.4.5)(nx@18.3.3)(typescript@5.4.5): - resolution: {integrity: sha512-7Wtv5kpeMWUDBUFu5go49HM/S8vDrtMOvZf9xnUcnjsFDReWe8XIEkTWudZDbzID3X4T6WQAftzj2Ov6k566lQ==} + /@lerna/gitlab-client@6.0.3: + resolution: {integrity: sha512-dBZiTsiHJ1j3tkW9JKSqCCZCk6aBiYaU9R/dSnpoPb6ZRthgoMGxtnfdk/1CKZlDargAu12XLJmcXLi7+UbyPg==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: - '@nx/js': 18.3.3(@swc/core@1.3.107)(@types/node@20.4.5)(nx@18.3.3)(typescript@5.4.5) + node-fetch: 2.7.0 + npmlog: 6.0.2 transitivePeerDependencies: - - '@babel/traverse' - - '@swc-node/register' - - '@swc/core' - - '@swc/wasm' - - '@types/node' - - debug - - nx - - supports-color - - typescript - - verdaccio + - encoding dev: true - /@nrwl/rollup@18.3.3(@babel/core@7.23.2)(@swc/core@1.3.107)(@types/node@20.4.5)(nx@18.3.3)(typescript@5.1.6): - resolution: {integrity: sha512-JBx16bKWURXWkWf1fAezArz0eXHoxHiLhpz3VkWiZSLBBRKGEId3fiN1yzaP22cdBNsmDVzd4vYrVX38jsUfpA==} - dependencies: - '@nx/rollup': 18.3.3(@babel/core@7.23.2)(@swc/core@1.3.107)(@types/node@20.4.5)(nx@18.3.3)(typescript@5.1.6) - transitivePeerDependencies: - - '@babel/core' - - '@babel/traverse' - - '@swc-node/register' - - '@swc/core' - - '@swc/wasm' - - '@types/babel__core' - - '@types/node' - - debug - - nx - - supports-color - - ts-node - - typescript - - verdaccio + /@lerna/global-options@6.0.3: + resolution: {integrity: sha512-XE22Mogzjh8w1rr07hALq40kmPuCr25cQ+K0OwYEiPsyH1dpOM7PSkP4qdT1l2UlWNM64LjgJtnjZ9hsx282VQ==} + engines: {node: ^14.15.0 || >=16.0.0} dev: true - /@nrwl/tao@16.10.0(@swc/core@1.3.107): - resolution: {integrity: sha512-QNAanpINbr+Pod6e1xNgFbzK1x5wmZl+jMocgiEFXZ67KHvmbD6MAQQr0MMz+GPhIu7EE4QCTLTyCEMlAG+K5Q==} - hasBin: true + /@lerna/has-npm-version@6.0.3: + resolution: {integrity: sha512-azZJkKPUWmfZf4AR40t9L6+utZaaCcZcXHOw/vHhmpn9GpZuc8Ck5cM5+8w9bgMglz0YwvTTWvutY2/mCnN5jA==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: - nx: 16.10.0(@swc/core@1.3.107) - tslib: 2.6.2 - transitivePeerDependencies: - - '@swc-node/register' - - '@swc/core' - - debug + '@lerna/child-process': 6.0.3 + semver: 7.5.4 dev: true - /@nrwl/tao@18.3.3(@swc/core@1.3.107): - resolution: {integrity: sha512-f/PUDLpSMEObiLQ5sIDySJM+5DxSCNunkxxbY1R9rmQ1cFcgrHaXIHQqbSj91mMa3mmtbKACk8u1LbI+oQV0Tg==} - hasBin: true + /@lerna/import@6.0.3: + resolution: {integrity: sha512-AWSwoS9e5udSrJ7E15rR+8V7Hnhli4+3IHh658bpvcGvsIntL7hBZucqWiKRMOmrsafncaBpLkfFgdiyGwy1Pw==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: - nx: 18.3.3(@swc/core@1.3.107) - tslib: 2.6.2 - transitivePeerDependencies: - - '@swc-node/register' - - '@swc/core' - - debug + '@lerna/child-process': 6.0.3 + '@lerna/command': 6.0.3 + '@lerna/prompt': 6.0.3 + '@lerna/pulse-till-done': 6.0.3 + '@lerna/validation-error': 6.0.3 + dedent: 0.7.0 + fs-extra: 9.1.0 + p-map-series: 2.1.0 dev: true - /@nrwl/workspace@18.3.3(@swc/core@1.3.107): - resolution: {integrity: sha512-9Giuec9l3PpS8mekD00W9kBIKmWRpQSkp+/RvYmc+7kKtVC+Uj/kc68exBOanVgq6zKzYrn+FqHWHGWnHxp+ww==} + /@lerna/info@6.0.3: + resolution: {integrity: sha512-fqFGejIjjHN9obKUiWgmkknDJliyyRDbv/g6TMvQptxwiGfFBjR55TSPdKyUi9XslIQL5HWMYU7NWzZPiilk/A==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: - '@nx/workspace': 18.3.3(@swc/core@1.3.107) - transitivePeerDependencies: - - '@swc-node/register' - - '@swc/core' - - debug + '@lerna/command': 6.0.3 + '@lerna/output': 6.0.3 + envinfo: 7.10.0 dev: true - /@nx/devkit@16.10.0(nx@16.10.0): - resolution: {integrity: sha512-IvKQqRJFDDiaj33SPfGd3ckNHhHi6ceEoqCbAP4UuMXOPPVOX6H0KVk+9tknkPb48B7jWIw6/AgOeWkBxPRO5w==} - peerDependencies: - nx: '>= 15 <= 17' + /@lerna/init@6.0.3: + resolution: {integrity: sha512-PmEmIJNNpXkGtEINBO5wfFrOlipAwY/4k674mbBWAfVJX+Affyx8yMcnMM28oDnFwe8gi12w5oRI0JcxcjpCFg==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: - '@nrwl/devkit': 16.10.0(nx@16.10.0) - ejs: 3.1.9 - enquirer: 2.3.6 - ignore: 5.2.4 - nx: 16.10.0(@swc/core@1.3.107) - semver: 7.5.3 - tmp: 0.2.1 - tslib: 2.6.2 + '@lerna/child-process': 6.0.3 + '@lerna/command': 6.0.3 + '@lerna/project': 6.0.3 + fs-extra: 9.1.0 + p-map: 4.0.0 + write-json-file: 4.3.0 dev: true - /@nx/devkit@18.3.3(nx@18.3.3): - resolution: {integrity: sha512-FtkZ6mA5//vEA5lcbT80m080ROVacHYV5F1peztTRA+IY2JZGJoqx425kn5ylDO8aCSAIAwcn2qIdhI8BnpG3Q==} - peerDependencies: - nx: '>= 16 <= 19' + /@lerna/link@6.0.3: + resolution: {integrity: sha512-jVTk8QWoVb+gPSkLm6XLtEKdOyqH4WwpOatSZ5zMgiRfjGDiwxCc3dB994JFPJ5FEnr9qCwqXFKjIqef7POIyQ==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: - '@nrwl/devkit': 18.3.3(nx@18.3.3) - ejs: 3.1.9 - enquirer: 2.3.6 - ignore: 5.2.4 - nx: 18.3.3(@swc/core@1.3.107) - semver: 7.5.4 - tmp: 0.2.1 - tslib: 2.6.2 - yargs-parser: 21.1.1 + '@lerna/command': 6.0.3 + '@lerna/package-graph': 6.0.3 + '@lerna/symlink-dependencies': 6.0.3 + '@lerna/validation-error': 6.0.3 + p-map: 4.0.0 + slash: 3.0.0 dev: true - /@nx/eslint@18.3.3(@swc/core@1.3.107)(@types/node@20.4.5)(nx@18.3.3): - resolution: {integrity: sha512-cvJjyykTEtQN08b5wQFelD/cbye7Nl5zFVESs+mn9/ezCukjAgP9seOk39nchKykRBAm7zzA1xZOB9thNqw9aA==} - peerDependencies: - js-yaml: 4.1.0 - peerDependenciesMeta: - js-yaml: - optional: true + /@lerna/list@6.0.3: + resolution: {integrity: sha512-5cQHJ2GAeN2/GV6uMJ4CVIQa3YOcmuNGqzr0DWwatR+5tire6dxFu5uY9Kjn2PYjmFUlwFwVgZzqRrSKPPPiVw==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: - '@nx/devkit': 18.3.3(nx@18.3.3) - '@nx/js': 18.3.3(@swc/core@1.3.107)(@types/node@20.4.5)(nx@18.3.3)(typescript@5.4.5) - '@nx/linter': 18.3.3(@swc/core@1.3.107)(@types/node@20.4.5)(nx@18.3.3) - eslint: 8.57.0 - tslib: 2.6.2 - typescript: 5.4.5 - transitivePeerDependencies: - - '@babel/traverse' - - '@swc-node/register' - - '@swc/core' - - '@swc/wasm' - - '@types/node' - - debug - - nx - - supports-color - - verdaccio + '@lerna/command': 6.0.3 + '@lerna/filter-options': 6.0.3 + '@lerna/listable': 6.0.3 + '@lerna/output': 6.0.3 dev: true - /@nx/jest@18.3.3(@swc/core@1.3.107)(@types/node@20.4.5)(nx@18.3.3)(typescript@5.1.6): - resolution: {integrity: sha512-AwkwYSJqu0vrDFMxKAc3lb0yHZFhsD8rX6rMMwe/fZMlAYml9FvGCp/ixWpcRWIo/1t3pxiF3Vejk9+oq/Avfw==} + /@lerna/listable@6.0.3: + resolution: {integrity: sha512-7EDzDMc22A/U4O1tCfLzb7MoFQVwwfv6E4F8JSilRupd7mp+2tMi7kvrwS5Dk5imNlHia4e5T0fVWXDUnIO2Sg==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: - '@jest/reporters': 29.7.0 - '@jest/test-result': 29.7.0 - '@nrwl/jest': 18.3.3(@swc/core@1.3.107)(@types/node@20.4.5)(nx@18.3.3)(typescript@5.1.6) - '@nx/devkit': 18.3.3(nx@18.3.3) - '@nx/js': 18.3.3(@swc/core@1.3.107)(@types/node@20.4.5)(nx@18.3.3)(typescript@5.1.6) - '@phenomnomnominal/tsquery': 5.0.1(typescript@5.1.6) + '@lerna/query-graph': 6.0.3 chalk: 4.1.2 - identity-obj-proxy: 3.0.0 - jest-config: 29.7.0(@types/node@20.4.5) - jest-resolve: 29.7.0 - jest-util: 29.7.0 - minimatch: 9.0.3 - resolve.exports: 1.1.0 - tslib: 2.6.2 - yargs-parser: 21.1.1 - transitivePeerDependencies: - - '@babel/traverse' - - '@swc-node/register' - - '@swc/core' - - '@swc/wasm' - - '@types/node' - - babel-plugin-macros - - debug - - node-notifier - - nx - - supports-color - - ts-node - - typescript - - verdaccio + columnify: 1.6.0 dev: true - /@nx/js@18.3.3(@swc/core@1.3.107)(@types/node@20.4.5)(nx@18.3.3)(typescript@5.1.6): - resolution: {integrity: sha512-e8u56oG0mlTVz48EeH0C7txX0GeLYN0o4mK1LDAMIHQa4tKefNfwrdqHaZBiVqFOPopeFtqi8s0kqce5prwCaw==} - peerDependencies: - verdaccio: ^5.0.4 - peerDependenciesMeta: - verdaccio: - optional: true + /@lerna/log-packed@6.0.3: + resolution: {integrity: sha512-MCGAaaywfs8Z0eeG4mhP1u1ma+ORO8c9gGgtpX0LkjJ9HlE23BkCznC8VrJSVTqChtU4tkVp/38hhwEzZmcPFA==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: - '@babel/core': 7.23.2 - '@babel/plugin-proposal-decorators': 7.24.1(@babel/core@7.23.2) - '@babel/plugin-transform-class-properties': 7.24.1(@babel/core@7.23.2) - '@babel/plugin-transform-runtime': 7.24.3(@babel/core@7.23.2) - '@babel/preset-env': 7.24.3(@babel/core@7.23.2) - '@babel/preset-typescript': 7.24.1(@babel/core@7.23.2) - '@babel/runtime': 7.23.2 - '@nrwl/js': 18.3.3(@swc/core@1.3.107)(@types/node@20.4.5)(nx@18.3.3)(typescript@5.1.6) - '@nx/devkit': 18.3.3(nx@18.3.3) - '@nx/workspace': 18.3.3(@swc/core@1.3.107) - '@phenomnomnominal/tsquery': 5.0.1(typescript@5.1.6) - babel-plugin-const-enum: 1.2.0(@babel/core@7.23.2) - babel-plugin-macros: 2.8.0 - babel-plugin-transform-typescript-metadata: 0.3.2(@babel/core@7.23.2) - chalk: 4.1.2 + byte-size: 7.0.1 columnify: 1.6.0 - detect-port: 1.5.1 - fast-glob: 3.2.7 - fs-extra: 11.2.0 - ignore: 5.2.4 - js-tokens: 4.0.0 - minimatch: 9.0.3 - npm-package-arg: 11.0.1 - npm-run-path: 4.0.1 - ora: 5.3.0 - semver: 7.5.4 - source-map-support: 0.5.19 - ts-node: 10.9.1(@swc/core@1.3.107)(@types/node@20.4.5)(typescript@5.1.6) - tsconfig-paths: 4.2.0 - tslib: 2.6.2 - transitivePeerDependencies: - - '@babel/traverse' - - '@swc-node/register' - - '@swc/core' - - '@swc/wasm' - - '@types/node' - - debug - - nx - - supports-color - - typescript + has-unicode: 2.0.1 + npmlog: 6.0.2 dev: true - /@nx/js@18.3.3(@swc/core@1.3.107)(@types/node@20.4.5)(nx@18.3.3)(typescript@5.4.5): - resolution: {integrity: sha512-e8u56oG0mlTVz48EeH0C7txX0GeLYN0o4mK1LDAMIHQa4tKefNfwrdqHaZBiVqFOPopeFtqi8s0kqce5prwCaw==} - peerDependencies: - verdaccio: ^5.0.4 - peerDependenciesMeta: - verdaccio: - optional: true + /@lerna/npm-conf@6.0.3: + resolution: {integrity: sha512-lX4nAJgScfDmmdPVM9rOO6AzwCY9UPjuNpY6ZpMYkg/FIr1dch5+MFjexpan4VL2KRBNMWUYpDk3U/e2V+7k/A==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: - '@babel/core': 7.23.2 - '@babel/plugin-proposal-decorators': 7.24.1(@babel/core@7.23.2) - '@babel/plugin-transform-class-properties': 7.24.1(@babel/core@7.23.2) - '@babel/plugin-transform-runtime': 7.24.3(@babel/core@7.23.2) - '@babel/preset-env': 7.24.3(@babel/core@7.23.2) - '@babel/preset-typescript': 7.24.1(@babel/core@7.23.2) - '@babel/runtime': 7.23.2 - '@nrwl/js': 18.3.3(@swc/core@1.3.107)(@types/node@20.4.5)(nx@18.3.3)(typescript@5.4.5) - '@nx/devkit': 18.3.3(nx@18.3.3) - '@nx/workspace': 18.3.3(@swc/core@1.3.107) - '@phenomnomnominal/tsquery': 5.0.1(typescript@5.4.5) - babel-plugin-const-enum: 1.2.0(@babel/core@7.23.2) - babel-plugin-macros: 2.8.0 - babel-plugin-transform-typescript-metadata: 0.3.2(@babel/core@7.23.2) - chalk: 4.1.2 - columnify: 1.6.0 - detect-port: 1.5.1 - fast-glob: 3.2.7 - fs-extra: 11.2.0 - ignore: 5.2.4 - js-tokens: 4.0.0 - minimatch: 9.0.3 - npm-package-arg: 11.0.1 - npm-run-path: 4.0.1 - ora: 5.3.0 - semver: 7.5.4 - source-map-support: 0.5.19 - ts-node: 10.9.1(@swc/core@1.3.107)(@types/node@20.4.5)(typescript@5.4.5) - tsconfig-paths: 4.2.0 - tslib: 2.6.2 - transitivePeerDependencies: - - '@babel/traverse' - - '@swc-node/register' - - '@swc/core' - - '@swc/wasm' - - '@types/node' - - debug - - nx - - supports-color - - typescript + config-chain: 1.1.13 + pify: 5.0.0 dev: true - /@nx/linter@18.3.3(@swc/core@1.3.107)(@types/node@20.4.5)(nx@18.3.3): - resolution: {integrity: sha512-5HmAN/8jZ2scrA0OiJSUdBPhIjwIHecK8AK7TxYX4fg1VJ3VcpknV8pWcETuNoBW8WlgF1RX2RW7Gog7vjf+Ww==} + /@lerna/npm-dist-tag@6.0.3: + resolution: {integrity: sha512-wjbVPZQq1bdfikldEJ6TICikKhVh8gOWPsqR0iTj5iCDRUAiQM5HscrCApTIrB/hASyKV2xG60ruCpMG2Qo6AQ==} + engines: {node: ^14.15.0 || >=16.0.0} dependencies: - '@nx/eslint': 18.3.3(@swc/core@1.3.107)(@types/node@20.4.5)(nx@18.3.3) + '@lerna/otplease': 6.0.3 + npm-package-arg: 8.1.1 + npm-registry-fetch: 13.3.1 + npmlog: 6.0.2 transitivePeerDependencies: - - '@babel/traverse' - - '@swc-node/register' - - '@swc/core' - - '@swc/wasm' - - '@types/node' - - debug - - js-yaml - - nx + - bluebird - supports-color - - verdaccio dev: true - /@nx/nx-darwin-arm64@16.10.0: - resolution: {integrity: sha512-YF+MIpeuwFkyvM5OwgY/rTNRpgVAI/YiR0yTYCZR+X3AAvP775IVlusNgQ3oedTBRUzyRnI4Tknj1WniENFsvQ==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [darwin] - requiresBuild: true - dev: true - optional: true - - /@nx/nx-darwin-arm64@18.3.3: - resolution: {integrity: sha512-NpA2/7o1uUuaocMYopX9muxKif9HlGfWaXo2UeiR918usF6xri4aUqweZbaXVc9iqCAEbVMWUsjaLYGKPXHAjw==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [darwin] - requiresBuild: true + /@lerna/npm-install@6.0.3: + resolution: {integrity: sha512-mBypvdtt1feL7L6f8++/tChn/5bM+KbYX06WXjW3yUT81o9geg6p7aaZoxfP6A8ff5XVsTFFL7j86MwPxTsTQQ==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + '@lerna/child-process': 6.0.3 + '@lerna/get-npm-exec-opts': 6.0.3 + fs-extra: 9.1.0 + npm-package-arg: 8.1.1 + npmlog: 6.0.2 + signal-exit: 3.0.7 + write-pkg: 4.0.0 dev: true - optional: true - /@nx/nx-darwin-x64@16.10.0: - resolution: {integrity: sha512-ypi6YxwXgb0kg2ixKXE3pwf5myVNUgWf1CsV5OzVccCM8NzheMO51KDXTDmEpXdzUsfT0AkO1sk5GZeCjhVONg==} - engines: {node: '>= 10'} - cpu: [x64] - os: [darwin] - requiresBuild: true + /@lerna/npm-publish@6.0.3: + resolution: {integrity: sha512-RpjnUy7wWIWu7DJB2NQJ8rNgKz+yPoIXpzYOktIjb7gUrL+Ks4KjfbrgGuYk2nWFUEAzJlsOSJ8ggAQUoNIL9Q==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + '@lerna/otplease': 6.0.3 + '@lerna/run-lifecycle': 6.0.3 + fs-extra: 9.1.0 + libnpmpublish: 6.0.5 + npm-package-arg: 8.1.1 + npmlog: 6.0.2 + pify: 5.0.0 + read-package-json: 5.0.2 + transitivePeerDependencies: + - bluebird + - supports-color dev: true - optional: true - /@nx/nx-darwin-x64@18.3.3: - resolution: {integrity: sha512-aydPLbc7DeceJ6szRf6DLT4ERoPvwfWyFiGXdAlEZYWhjEuNZLeG8K6jA3yHeWltKfX/qJqhnyKbnubBNzBKlQ==} - engines: {node: '>= 10'} - cpu: [x64] - os: [darwin] - requiresBuild: true + /@lerna/npm-run-script@6.0.3: + resolution: {integrity: sha512-+IEo8BYBdyEzgdqHCw3sr4ZxAM9g7SoSdo+oskXyrwD8zScH+OadAZz+DukCad8kXlaSPWSNEc42biP2o611Ew==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + '@lerna/child-process': 6.0.3 + '@lerna/get-npm-exec-opts': 6.0.3 + npmlog: 6.0.2 dev: true - optional: true - /@nx/nx-freebsd-x64@16.10.0: - resolution: {integrity: sha512-UeEYFDmdbbDkTQamqvtU8ibgu5jQLgFF1ruNb/U4Ywvwutw2d4ruOMl2e0u9hiNja9NFFAnDbvzrDcMo7jYqYw==} - engines: {node: '>= 10'} - cpu: [x64] - os: [freebsd] - requiresBuild: true + /@lerna/otplease@6.0.3: + resolution: {integrity: sha512-bNQn6IRrMJ8D6yF9v52KHiWD/XDB7ZkN2ziQjPwwOBcbzoVrDRCar91HQK7ygudPgmyjQNQZOrZqGlSTrh/wqA==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + '@lerna/prompt': 6.0.3 dev: true - optional: true - /@nx/nx-freebsd-x64@18.3.3: - resolution: {integrity: sha512-sEYEWsK/fwC1l7wzls7RNOjhmrooH0lK0mpgj1vDXesLBSZ7k+pddAqaHFECN4QXBSbHZI2PWOEhbnIH+Errsg==} - engines: {node: '>= 10'} - cpu: [x64] - os: [freebsd] - requiresBuild: true + /@lerna/output@6.0.3: + resolution: {integrity: sha512-/x7Bv4MVRwBJM6UVbfUYE1wjTGNUEnpFCHNc15MCUU3VY9O/Y1ZYq7iZHkYGMT9BmNeMS64fHBkDEwoqoJn/vA==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + npmlog: 6.0.2 dev: true - optional: true - /@nx/nx-linux-arm-gnueabihf@16.10.0: - resolution: {integrity: sha512-WV3XUC2DB6/+bz1sx+d1Ai9q2Cdr+kTZRN50SOkfmZUQyEBaF6DRYpx/a4ahhxH3ktpNfyY8Maa9OEYxGCBkQA==} - engines: {node: '>= 10'} - cpu: [arm] - os: [linux] - requiresBuild: true + /@lerna/pack-directory@6.0.3: + resolution: {integrity: sha512-LVs/q6Dn1kXIxHA80e/Jo9AmAsesPs7TbBAxZ40lHXhJFvvFgx0r2bY+r3eV+77sziGmyKVBorgcbkEfFehfZw==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + '@lerna/get-packed': 6.0.3 + '@lerna/package': 6.0.3 + '@lerna/run-lifecycle': 6.0.3 + '@lerna/temp-write': 6.0.3 + npm-packlist: 5.1.3 + npmlog: 6.0.2 + tar: 6.2.0 + transitivePeerDependencies: + - supports-color dev: true - optional: true - /@nx/nx-linux-arm-gnueabihf@18.3.3: - resolution: {integrity: sha512-B9GGMkrrzwiAfvew22x85ITO9TiNxbgRbKJQWQaoopNpXrnSWpY8WTNxpDT24fwV1qdQfsPKcY3F4O0NOUgPRA==} - engines: {node: '>= 10'} - cpu: [arm] - os: [linux] - requiresBuild: true + /@lerna/package-graph@6.0.3: + resolution: {integrity: sha512-Xf4FxCpCFB2vSI+D/LR3k+ueSmam5Tx7LRbGiZnzdfXPvPqukZfcAXHLZbSzuJiv5NKVyG/VJjZk4SCogjrFTQ==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + '@lerna/prerelease-id-from-version': 6.0.3 + '@lerna/validation-error': 6.0.3 + npm-package-arg: 8.1.1 + npmlog: 6.0.2 + semver: 7.5.4 dev: true - optional: true - /@nx/nx-linux-arm64-gnu@16.10.0: - resolution: {integrity: sha512-aWIkOUw995V3ItfpAi5FuxQ+1e9EWLS1cjWM1jmeuo+5WtaKToJn5itgQOkvSlPz+HSLgM3VfXMvOFALNk125g==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [linux] - requiresBuild: true + /@lerna/package@6.0.3: + resolution: {integrity: sha512-UbaZSRT3lTmncmPCws0V6XcZhc0GLRm8LtspxyLeDjhyP0EabKAbaB3HVCelPn69CM81UtP8CLkTh+NpUNH2Aw==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + load-json-file: 6.2.0 + npm-package-arg: 8.1.1 + write-pkg: 4.0.0 dev: true - optional: true - /@nx/nx-linux-arm64-gnu@18.3.3: - resolution: {integrity: sha512-1EucHf5/0JeqZmhritqkpEdOcdo9Dl32gpFvhNfS6kCAYmaDlEl4zqedz3VIoj4C7+C0pV3mcRO9qB9H7GM5bQ==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [linux] - requiresBuild: true + /@lerna/prerelease-id-from-version@6.0.3: + resolution: {integrity: sha512-mgDo6L93mlcg7GDgWZfRGxHmR5xFPQSMQJZeyU/5VY6sCbTnwTDSpYOoce6m71E4v15iJ/G5EKIchq8yVUIBBw==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + semver: 7.5.4 dev: true - optional: true - /@nx/nx-linux-arm64-musl@16.10.0: - resolution: {integrity: sha512-uO6Gg+irqpVcCKMcEPIQcTFZ+tDI02AZkqkP7koQAjniLEappd8DnUBSQdcn53T086pHpdc264X/ZEpXFfrKWQ==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [linux] - requiresBuild: true + /@lerna/profiler@6.0.3: + resolution: {integrity: sha512-tkFZEAALPtPOzcEZlH554SHH4rMORmpWH45mF3Py3mpy+HpQXLZmYlxot+wr3jPXkXQzwaIgDe0DMYJhhC8T9A==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + fs-extra: 9.1.0 + npmlog: 6.0.2 + upath: 2.0.1 dev: true - optional: true - /@nx/nx-linux-arm64-musl@18.3.3: - resolution: {integrity: sha512-HPgOgnYYLPVCBEaAkSEGPGzZqTDCiyCAF/qtvx5z0f1U/hZYb1ubgxw70ogY82Cafr7X4gQBz5k4/ZCnoCXlOQ==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [linux] - requiresBuild: true + /@lerna/project@6.0.3: + resolution: {integrity: sha512-YBSWZRnRlwAwDuLKx7M7f1HyiqDY/dH+eMadHgasWgFJ5yHhtkwMCZTNgHvMAXTdN6iGb/A6mkPAN5zWhcDYBw==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + '@lerna/package': 6.0.3 + '@lerna/validation-error': 6.0.3 + cosmiconfig: 7.1.0 + dedent: 0.7.0 + dot-prop: 6.0.1 + glob-parent: 5.1.2 + globby: 11.1.0 + js-yaml: 4.1.0 + load-json-file: 6.2.0 + npmlog: 6.0.2 + p-map: 4.0.0 + resolve-from: 5.0.0 + write-json-file: 4.3.0 + dev: true + + /@lerna/prompt@6.0.3: + resolution: {integrity: sha512-M/3poJp9Nqr2xJ2nB9gE6qsCwxJqvVyEnM5mMPUzRpfCvAtVa6Rhx/x60I20GSogb8/J9Zapav3MNoX2rdv2UQ==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + inquirer: 8.2.6 + npmlog: 6.0.2 + dev: true + + /@lerna/publish@6.0.3(nx@15.3.3): + resolution: {integrity: sha512-Vv9aDQEQv+5NRfaIpZpBqXcgfXkb18kpIUqBI4bAnqC/t168Gn/UzOxxjVkl5wuAKJ2sj8tDoZTEIb/DVoV53Q==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + '@lerna/check-working-tree': 6.0.3 + '@lerna/child-process': 6.0.3 + '@lerna/collect-updates': 6.0.3 + '@lerna/command': 6.0.3 + '@lerna/describe-ref': 6.0.3 + '@lerna/log-packed': 6.0.3 + '@lerna/npm-conf': 6.0.3 + '@lerna/npm-dist-tag': 6.0.3 + '@lerna/npm-publish': 6.0.3 + '@lerna/otplease': 6.0.3 + '@lerna/output': 6.0.3 + '@lerna/pack-directory': 6.0.3 + '@lerna/prerelease-id-from-version': 6.0.3 + '@lerna/prompt': 6.0.3 + '@lerna/pulse-till-done': 6.0.3 + '@lerna/run-lifecycle': 6.0.3 + '@lerna/run-topologically': 6.0.3 + '@lerna/validation-error': 6.0.3 + '@lerna/version': 6.0.3(nx@15.3.3) + fs-extra: 9.1.0 + libnpmaccess: 6.0.4 + npm-package-arg: 8.1.1 + npm-registry-fetch: 13.3.1 + npmlog: 6.0.2 + p-map: 4.0.0 + p-pipe: 3.1.0 + pacote: 13.6.2 + semver: 7.5.4 + transitivePeerDependencies: + - bluebird + - encoding + - nx + - supports-color + dev: true + + /@lerna/pulse-till-done@6.0.3: + resolution: {integrity: sha512-/HjvHtaDCr0qJuhJT6PuwoHFvPsZMB7f/GnEYGIzS0+ovwOTrbULD6ESo2lWcsFnxJ3tWv2OPIKEiHkJ0y1PCg==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + npmlog: 6.0.2 + dev: true + + /@lerna/query-graph@6.0.3: + resolution: {integrity: sha512-Se3G4ZIckjleki/BWUEInITfLTuNIYkqeStq50KEz74xhQ9jQs7ZLAOWc/Qxn3EPngCTLe8WqhLVeHFOfxgjvw==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + '@lerna/package-graph': 6.0.3 + dev: true + + /@lerna/resolve-symlink@6.0.3: + resolution: {integrity: sha512-9HkEl7kMQ4sZ3/+FEOhBt2rYoQP2cXQlhV7TNIej6SGaR0VtKe98ciM9bQAdkc/rOZtyZLc2cFBoUd10NEjzoA==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + fs-extra: 9.1.0 + npmlog: 6.0.2 + read-cmd-shim: 3.0.1 + dev: true + + /@lerna/rimraf-dir@6.0.3: + resolution: {integrity: sha512-jyC/PVL3rqC83l5Wphog8pSOmDbe5CIAHn9TeHvV8f/zdJnNE3zKXWTNjvyLgB1aPneQ4i2V+3BgdfpeDVAtHQ==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + '@lerna/child-process': 6.0.3 + npmlog: 6.0.2 + path-exists: 4.0.0 + rimraf: 3.0.2 + dev: true + + /@lerna/run-lifecycle@6.0.3: + resolution: {integrity: sha512-qnFOyp9de81FA2HSBuXtW7LSklF+T6WtFkYH9q3kOJY/EghZlgzFmQYFHgJ/xVYxNu75QDuv6fsfJu4EtrR7ag==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + '@lerna/npm-conf': 6.0.3 + '@npmcli/run-script': 4.2.1 + npmlog: 6.0.2 + p-queue: 6.6.2 + transitivePeerDependencies: + - supports-color + dev: true + + /@lerna/run-topologically@6.0.3: + resolution: {integrity: sha512-nN0kcOO1TzWlxg5byM1V12tm4+lvchbawc1mNje1KsujdzE4gSwD84ub4SFRNkUUBmsPvTGysorhtXckQfqQWw==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + '@lerna/query-graph': 6.0.3 + p-queue: 6.6.2 + dev: true + + /@lerna/run@6.0.3: + resolution: {integrity: sha512-eiMF/Pfld/ngH+Emkwyxqf40WWEK6bQE2KhRtu0xyuSIFycFlZJursd72ylTnvZAX3Qx4P4drdHaFnfWyuglcw==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + '@lerna/command': 6.0.3 + '@lerna/filter-options': 6.0.3 + '@lerna/npm-run-script': 6.0.3 + '@lerna/output': 6.0.3 + '@lerna/profiler': 6.0.3 + '@lerna/run-topologically': 6.0.3 + '@lerna/timer': 6.0.3 + '@lerna/validation-error': 6.0.3 + fs-extra: 9.1.0 + p-map: 4.0.0 + dev: true + + /@lerna/symlink-binary@6.0.3: + resolution: {integrity: sha512-bRrPPuZoYvEDc8eTGwhTLQwRmtjYfD/hBVElqhfAlUTPcuA36VrQwBkmhGAUKcIDmEHTVk6IHNiFb/JwuiOSYA==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + '@lerna/create-symlink': 6.0.3 + '@lerna/package': 6.0.3 + fs-extra: 9.1.0 + p-map: 4.0.0 + dev: true + + /@lerna/symlink-dependencies@6.0.3: + resolution: {integrity: sha512-4DmKLZkJ9oyQ8DXdXCMT6fns6w6G/7h9D2pXGNOYa/IFtjb4mKDMBfJ61XhmvTlxrEzjEc9CnqMeO7BQBXWt8A==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + '@lerna/create-symlink': 6.0.3 + '@lerna/resolve-symlink': 6.0.3 + '@lerna/symlink-binary': 6.0.3 + fs-extra: 9.1.0 + p-map: 4.0.0 + p-map-series: 2.1.0 + dev: true + + /@lerna/temp-write@6.0.3: + resolution: {integrity: sha512-ws+EHk7Bp4hR6liusGk8K+ybnh9iOSkCnHD6d+avwa2lMYtX28v93kle/Y5JbTghjumgDUF9/C+EQg51zIVQmw==} + dependencies: + graceful-fs: 4.2.11 + is-stream: 2.0.1 + make-dir: 3.1.0 + temp-dir: 1.0.0 + uuid: 8.3.2 + dev: true + + /@lerna/timer@6.0.3: + resolution: {integrity: sha512-Ywfu3cGi0pV9vN4ki8oTu+qdJArMwrW3MiXL3/2fospKRdGL7sGCuXlS9Byd+aduMvmMwKbnX0EW+6R7Np+qSg==} + engines: {node: ^14.15.0 || >=16.0.0} + dev: true + + /@lerna/validation-error@6.0.3: + resolution: {integrity: sha512-cWYKMFne/euWnW4w7ry+RvDkj8iVNYMrbRF86Px/609GXFOoOwEROJyvTlRp1BgCmC2/3KzidyBletN/R3JHEA==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + npmlog: 6.0.2 + dev: true + + /@lerna/version@6.0.3(nx@15.3.3): + resolution: {integrity: sha512-ssQhsK51IBMabB+RpQPIRn93iozwMRpvfh2vVIVdTs76j8r/1ljIs3gLXPDzLo9RbyLcou+VKi3c/7coCAwsdw==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + '@lerna/check-working-tree': 6.0.3 + '@lerna/child-process': 6.0.3 + '@lerna/collect-updates': 6.0.3 + '@lerna/command': 6.0.3 + '@lerna/conventional-commits': 6.0.3 + '@lerna/github-client': 6.0.3 + '@lerna/gitlab-client': 6.0.3 + '@lerna/output': 6.0.3 + '@lerna/prerelease-id-from-version': 6.0.3 + '@lerna/prompt': 6.0.3 + '@lerna/run-lifecycle': 6.0.3 + '@lerna/run-topologically': 6.0.3 + '@lerna/temp-write': 6.0.3 + '@lerna/validation-error': 6.0.3 + '@nrwl/devkit': 15.9.7(nx@15.3.3) + chalk: 4.1.2 + dedent: 0.7.0 + load-json-file: 6.2.0 + minimatch: 3.1.2 + npmlog: 6.0.2 + p-map: 4.0.0 + p-pipe: 3.1.0 + p-reduce: 2.1.0 + p-waterfall: 2.1.1 + semver: 7.5.4 + slash: 3.0.0 + write-json-file: 4.3.0 + transitivePeerDependencies: + - encoding + - nx + - supports-color + dev: true + + /@lerna/write-log-file@6.0.3: + resolution: {integrity: sha512-xZFC9IgGkvuv1MUIC7EKD5ltlljgLlz7isbfQ2QHAqOmGJG6jPqa0Yo38pGe8wEDtGSVgtlUGkx7iHK22MawEA==} + engines: {node: ^14.15.0 || >=16.0.0} + dependencies: + npmlog: 6.0.2 + write-file-atomic: 4.0.2 + dev: true + + /@manypkg/find-root@1.1.0: + resolution: {integrity: sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA==} + dependencies: + '@babel/runtime': 7.23.2 + '@types/node': 12.20.55 + find-up: 4.1.0 + fs-extra: 8.1.0 + dev: true + + /@manypkg/get-packages@1.1.3: + resolution: {integrity: sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==} + dependencies: + '@babel/runtime': 7.23.2 + '@changesets/types': 4.1.0 + '@manypkg/find-root': 1.1.0 + fs-extra: 8.1.0 + globby: 11.1.0 + read-yaml-file: 1.1.0 dev: true - optional: true - /@nx/nx-linux-x64-gnu@16.10.0: - resolution: {integrity: sha512-134PW/u/arNFAQKpqMJniC7irbChMPz+W+qtyKPAUXE0XFKPa7c1GtlI/wK2dvP9qJDZ6bKf0KtA0U/m2HMUOA==} + /@node-ipc/js-queue@2.0.3: + resolution: {integrity: sha512-fL1wpr8hhD5gT2dA1qifeVaoDFlQR5es8tFuKqjHX+kdOtdNHnxkVZbtIrR2rxnMFvehkjaZRNV2H/gPXlb0hw==} + engines: {node: '>=1.0.0'} + dependencies: + easy-stack: 1.0.1 + dev: true + + /@nodelib/fs.scandir@2.1.5: + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} + engines: {node: '>= 8'} + dependencies: + '@nodelib/fs.stat': 2.0.5 + run-parallel: 1.2.0 + dev: true + + /@nodelib/fs.stat@2.0.5: + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} + engines: {node: '>= 8'} + dev: true + + /@nodelib/fs.walk@1.2.8: + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} + engines: {node: '>= 8'} + dependencies: + '@nodelib/fs.scandir': 2.1.5 + fastq: 1.15.0 + dev: true + + /@npmcli/arborist@5.3.0: + resolution: {integrity: sha512-+rZ9zgL1lnbl8Xbb1NQdMjveOMwj4lIYfcDtyJHHi5x4X8jtR6m8SXooJMZy5vmFVZ8w7A2Bnd/oX9eTuU8w5A==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + hasBin: true + dependencies: + '@isaacs/string-locale-compare': 1.1.0 + '@npmcli/installed-package-contents': 1.0.7 + '@npmcli/map-workspaces': 2.0.4 + '@npmcli/metavuln-calculator': 3.1.1 + '@npmcli/move-file': 2.0.1 + '@npmcli/name-from-folder': 1.0.1 + '@npmcli/node-gyp': 2.0.0 + '@npmcli/package-json': 2.0.0 + '@npmcli/run-script': 4.2.1 + bin-links: 3.0.3 + cacache: 16.1.3 + common-ancestor-path: 1.0.1 + json-parse-even-better-errors: 2.3.1 + json-stringify-nice: 1.1.4 + mkdirp: 1.0.4 + mkdirp-infer-owner: 2.0.0 + nopt: 5.0.0 + npm-install-checks: 5.0.0 + npm-package-arg: 9.1.2 + npm-pick-manifest: 7.0.2 + npm-registry-fetch: 13.3.1 + npmlog: 6.0.2 + pacote: 13.6.2 + parse-conflict-json: 2.0.2 + proc-log: 2.0.1 + promise-all-reject-late: 1.0.1 + promise-call-limit: 1.0.2 + read-package-json-fast: 2.0.3 + readdir-scoped-modules: 1.1.0 + rimraf: 3.0.2 + semver: 7.5.4 + ssri: 9.0.1 + treeverse: 2.0.0 + walk-up-path: 1.0.0 + transitivePeerDependencies: + - bluebird + - supports-color + dev: true + + /@npmcli/fs@2.1.2: + resolution: {integrity: sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + '@gar/promisify': 1.1.3 + semver: 7.5.4 + dev: true + + /@npmcli/fs@3.1.0: + resolution: {integrity: sha512-7kZUAaLscfgbwBQRbvdMYaZOWyMEcPTH/tJjnyAWJ/dvvs9Ef+CERx/qJb9GExJpl1qipaDGn7KqHnFGGixd0w==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + semver: 7.5.4 + dev: true + + /@npmcli/git@3.0.2: + resolution: {integrity: sha512-CAcd08y3DWBJqJDpfuVL0uijlq5oaXaOJEKHKc4wqrjd00gkvTZB+nFuLn+doOOKddaQS9JfqtNoFCO2LCvA3w==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + '@npmcli/promise-spawn': 3.0.0 + lru-cache: 7.18.3 + mkdirp: 1.0.4 + npm-pick-manifest: 7.0.2 + proc-log: 2.0.1 + promise-inflight: 1.0.1 + promise-retry: 2.0.1 + semver: 7.5.4 + which: 2.0.2 + transitivePeerDependencies: + - bluebird + dev: true + + /@npmcli/installed-package-contents@1.0.7: + resolution: {integrity: sha512-9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw==} engines: {node: '>= 10'} - cpu: [x64] - os: [linux] - requiresBuild: true + hasBin: true + dependencies: + npm-bundled: 1.1.2 + npm-normalize-package-bin: 1.0.1 dev: true - optional: true - /@nx/nx-linux-x64-gnu@18.3.3: - resolution: {integrity: sha512-FgYTQ3VEE6EUOGtJT9riRK8IBwPGFjKS+N2mudQJn2bB/9IumUvVRYQUIX08gqGLlqZPO6uUUhUjwZY8SnjRLQ==} - engines: {node: '>= 10'} - cpu: [x64] - os: [linux] - requiresBuild: true + /@npmcli/map-workspaces@2.0.4: + resolution: {integrity: sha512-bMo0aAfwhVwqoVM5UzX1DJnlvVvzDCHae821jv48L1EsrYwfOZChlqWYXEtto/+BkBXetPbEWgau++/brh4oVg==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + '@npmcli/name-from-folder': 1.0.1 + glob: 8.1.0 + minimatch: 5.1.6 + read-package-json-fast: 2.0.3 dev: true - optional: true - /@nx/nx-linux-x64-musl@16.10.0: - resolution: {integrity: sha512-q8sINYLdIJxK/iUx9vRk5jWAWb/2O0PAbOJFwv4qkxBv4rLoN7y+otgCZ5v0xfx/zztFgk/oNY4lg5xYjIso2Q==} - engines: {node: '>= 10'} - cpu: [x64] - os: [linux] - requiresBuild: true + /@npmcli/metavuln-calculator@3.1.1: + resolution: {integrity: sha512-n69ygIaqAedecLeVH3KnO39M6ZHiJ2dEv5A7DGvcqCB8q17BGUgW8QaanIkbWUo2aYGZqJaOORTLAlIvKjNDKA==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + cacache: 16.1.3 + json-parse-even-better-errors: 2.3.1 + pacote: 13.6.2 + semver: 7.5.4 + transitivePeerDependencies: + - bluebird + - supports-color dev: true - optional: true - /@nx/nx-linux-x64-musl@18.3.3: - resolution: {integrity: sha512-QnWjGViR1Wj9gJXa1RJ9mXyy2/JzQ7NF2C4ulTYSH5St1HoxhkfnLsV0+uNLFEV9PSZq+2BfxmQuT8Appefv1A==} - engines: {node: '>= 10'} - cpu: [x64] - os: [linux] - requiresBuild: true + /@npmcli/move-file@2.0.1: + resolution: {integrity: sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + deprecated: This functionality has been moved to @npmcli/fs + dependencies: + mkdirp: 1.0.4 + rimraf: 3.0.2 dev: true - optional: true - /@nx/nx-win32-arm64-msvc@16.10.0: - resolution: {integrity: sha512-moJkL9kcqxUdJSRpG7dET3UeLIciwrfP08mzBQ12ewo8K8FzxU8ZUsTIVVdNrwt01CXOdXoweGfdQLjJ4qTURA==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [win32] - requiresBuild: true + /@npmcli/name-from-folder@1.0.1: + resolution: {integrity: sha512-qq3oEfcLFwNfEYOQ8HLimRGKlD8WSeGEdtUa7hmzpR8Sa7haL1KVQrvgO6wqMjhWFFVjgtrh1gIxDz+P8sjUaA==} dev: true - optional: true - /@nx/nx-win32-arm64-msvc@18.3.3: - resolution: {integrity: sha512-Xn3LUaPsF8QkEYUVV3lc693NTCMWrfZBFXTy1cQpvLzQ+idsXQ/EGWoq93cIM3Nc2YWyblT2hHHelb8dHCZAlw==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [win32] - requiresBuild: true + /@npmcli/node-gyp@2.0.0: + resolution: {integrity: sha512-doNI35wIe3bBaEgrlPfdJPaCpUR89pJWep4Hq3aRdh6gKazIVWfs0jHttvSSoq47ZXgC7h73kDsUl8AoIQUB+A==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} dev: true - optional: true - /@nx/nx-win32-x64-msvc@16.10.0: - resolution: {integrity: sha512-5iV2NKZnzxJwZZ4DM5JVbRG/nkhAbzEskKaLBB82PmYGKzaDHuMHP1lcPoD/rtYMlowZgNA/RQndfKvPBPwmXA==} - engines: {node: '>= 10'} - cpu: [x64] - os: [win32] - requiresBuild: true + /@npmcli/package-json@2.0.0: + resolution: {integrity: sha512-42jnZ6yl16GzjWSH7vtrmWyJDGVa/LXPdpN2rcUWolFjc9ON2N3uz0qdBbQACfmhuJZ2lbKYtmK5qx68ZPLHMA==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + json-parse-even-better-errors: 2.3.1 dev: true - optional: true - /@nx/nx-win32-x64-msvc@18.3.3: - resolution: {integrity: sha512-t8HvOnQEiaaoTFOOIrql30NPhIwDFO7jg0Jtz3Tbneulh7ceswJp71yFHsRGGrYZ23Tgg+Sna6M9qLRGzlRGkg==} - engines: {node: '>= 10'} - cpu: [x64] - os: [win32] - requiresBuild: true + /@npmcli/promise-spawn@3.0.0: + resolution: {integrity: sha512-s9SgS+p3a9Eohe68cSI3fi+hpcZUmXq5P7w0kMlAsWVtR7XbK3ptkZqKT2cK1zLDObJ3sR+8P59sJE0w/KTL1g==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + infer-owner: 1.0.4 dev: true - optional: true - /@nx/rollup@18.3.3(@babel/core@7.23.2)(@swc/core@1.3.107)(@types/node@20.4.5)(nx@18.3.3)(typescript@5.1.6): - resolution: {integrity: sha512-gE8w2K7Ck0yeUeZ+aQwA7xYSkPLMhJ5omooFCnZF22tXYsZC/r6IEyp40B116nmkBVho5JkrVt6dtBWD3+B5wA==} - dependencies: - '@nrwl/rollup': 18.3.3(@babel/core@7.23.2)(@swc/core@1.3.107)(@types/node@20.4.5)(nx@18.3.3)(typescript@5.1.6) - '@nx/devkit': 18.3.3(nx@18.3.3) - '@nx/js': 18.3.3(@swc/core@1.3.107)(@types/node@20.4.5)(nx@18.3.3)(typescript@5.1.6) - '@rollup/plugin-babel': 5.3.1(@babel/core@7.23.2)(rollup@2.79.1) - '@rollup/plugin-commonjs': 20.0.0(rollup@2.79.1) - '@rollup/plugin-image': 2.1.1(rollup@2.79.1) - '@rollup/plugin-json': 4.1.0(rollup@2.79.1) - '@rollup/plugin-node-resolve': 13.3.0(rollup@2.79.1) - autoprefixer: 10.4.19(postcss@8.4.38) - babel-plugin-transform-async-to-promises: 0.8.18 - chalk: 4.1.2 - postcss: 8.4.38 - rollup: 2.79.1 - rollup-plugin-copy: 3.5.0 - rollup-plugin-peer-deps-external: 2.2.4(rollup@2.79.1) - rollup-plugin-postcss: 4.0.2(postcss@8.4.38) - rollup-plugin-typescript2: 0.36.0(rollup@2.79.1)(typescript@5.1.6) - tslib: 2.6.2 + /@npmcli/run-script@4.2.1: + resolution: {integrity: sha512-7dqywvVudPSrRCW5nTHpHgeWnbBtz8cFkOuKrecm6ih+oO9ciydhWt6OF7HlqupRRmB8Q/gECVdB9LMfToJbRg==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + '@npmcli/node-gyp': 2.0.0 + '@npmcli/promise-spawn': 3.0.0 + node-gyp: 9.4.0 + read-package-json-fast: 2.0.3 + which: 2.0.2 + transitivePeerDependencies: + - supports-color + dev: true + + /@nrwl/cli@15.3.3(@swc/core@1.3.16): + resolution: {integrity: sha512-ZWTmVP9H3ukppWWGaS/s3Nym2nOYgnt6eHtuUFNsroz8LesG5oFAJviOz9jDEM/b+pLIrvYfU5aAGZqrtM3Z2A==} + dependencies: + nx: 15.3.3(@swc/core@1.3.16) transitivePeerDependencies: - - '@babel/core' - - '@babel/traverse' - '@swc-node/register' - '@swc/core' - - '@swc/wasm' - - '@types/babel__core' - - '@types/node' - debug - - nx - - supports-color - - ts-node - - typescript - - verdaccio dev: true - /@nx/workspace@18.3.3(@swc/core@1.3.107): - resolution: {integrity: sha512-SUJJKzOUuNnclpHHde6f6nlF+pQwMjeF026jFpWDFaNzdsADhhRulkz0GLRXB9kKszvzz2JKde9WBWnKrFZ2IQ==} + /@nrwl/devkit@15.9.7(nx@15.3.3): + resolution: {integrity: sha512-Sb7Am2TMT8AVq8e+vxOlk3AtOA2M0qCmhBzoM1OJbdHaPKc0g0UgSnWRml1kPGg5qfPk72tWclLoZJ5/ut0vTg==} + peerDependencies: + nx: '>= 14.1 <= 16' dependencies: - '@nrwl/workspace': 18.3.3(@swc/core@1.3.107) - '@nx/devkit': 18.3.3(nx@18.3.3) - chalk: 4.1.2 - enquirer: 2.3.6 - nx: 18.3.3(@swc/core@1.3.107) + ejs: 3.1.9 + ignore: 5.2.4 + nx: 15.3.3(@swc/core@1.3.16) + semver: 7.5.4 + tmp: 0.2.1 tslib: 2.6.2 - yargs-parser: 21.1.1 + dev: true + + /@nrwl/tao@15.3.3(@swc/core@1.3.16): + resolution: {integrity: sha512-f9+VwhlJ/7TWpjHSgoUOAA067uP9DmzABMY9HC5OREEDaCx+rzYEvbLAPv6cXzWw+6IYM6cyKw0zWSQrdEVrWg==} + hasBin: true + dependencies: + nx: 15.3.3(@swc/core@1.3.16) transitivePeerDependencies: - '@swc-node/register' - '@swc/core' @@ -3713,8 +3551,8 @@ packages: - encoding dev: true - /@octokit/rest@19.0.11: - resolution: {integrity: sha512-m2a9VhaP5/tUw8FwfnW2ICXlXpLPIqxtg3XcAiGMLj/Xhw3RSBfZ8le/466ktO1Gcjr8oXudGnHhxV1TXJgFxw==} + /@octokit/rest@19.0.13: + resolution: {integrity: sha512-/EzVox5V9gYGdbAI+ovYj3nXQT1TtTHRT+0eZPcuC05UFSWO3mdO9UY1C0i2eLF9Un1ONJkAk+IEtYGAC+TahA==} engines: {node: '>= 14'} dependencies: '@octokit/core': 4.2.4 @@ -3754,24 +3592,6 @@ packages: node-gyp-build: 4.6.1 dev: true - /@phenomnomnominal/tsquery@5.0.1(typescript@5.1.6): - resolution: {integrity: sha512-3nVv+e2FQwsW8Aw6qTU6f+1rfcJ3hrcnvH/mu9i8YhxO+9sqbOfpL8m6PbET5+xKOlz/VSbp0RoYWYCtIsnmuA==} - peerDependencies: - typescript: ^3 || ^4 || ^5 - dependencies: - esquery: 1.5.0 - typescript: 5.1.6 - dev: true - - /@phenomnomnominal/tsquery@5.0.1(typescript@5.4.5): - resolution: {integrity: sha512-3nVv+e2FQwsW8Aw6qTU6f+1rfcJ3hrcnvH/mu9i8YhxO+9sqbOfpL8m6PbET5+xKOlz/VSbp0RoYWYCtIsnmuA==} - peerDependencies: - typescript: ^3 || ^4 || ^5 - dependencies: - esquery: 1.5.0 - typescript: 5.4.5 - dev: true - /@pkgjs/parseargs@0.11.0: resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} engines: {node: '>=14'} @@ -3783,134 +3603,54 @@ packages: resolution: {integrity: sha512-j7P6Rgr3mmtdkeDGTe0E/aYyWEWVtc5yFXtHCRHs28/jptDEWfaVOc5T7cblqy1XKPPfCxJc/8DwQ5YgLOZOVQ==} dev: true - /@rollup/plugin-babel@5.3.1(@babel/core@7.23.2)(rollup@2.79.1): - resolution: {integrity: sha512-WFfdLWU/xVWKeRQnKmIAQULUI7Il0gZnBIH/ZFO069wYIfPu+8zrfp/KMW0atmELoRDq8FbiP3VCss9MhCut7Q==} - engines: {node: '>= 10.0.0'} - peerDependencies: - '@babel/core': ^7.0.0 - '@types/babel__core': ^7.1.9 - rollup: ^1.20.0||^2.0.0 - peerDependenciesMeta: - '@types/babel__core': - optional: true - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-module-imports': 7.24.3 - '@rollup/pluginutils': 3.1.0(rollup@2.79.1) - rollup: 2.79.1 - dev: true - - /@rollup/plugin-commonjs@20.0.0(rollup@2.79.1): - resolution: {integrity: sha512-5K0g5W2Ol8hAcTHqcTBHiA7M58tfmYi1o9KxeJuuRNpGaTa5iLjcyemBitCBcKXaHamOBBEH2dGom6v6Unmqjg==} - engines: {node: '>= 8.0.0'} - peerDependencies: - rollup: ^2.38.3 - dependencies: - '@rollup/pluginutils': 3.1.0(rollup@2.79.1) - commondir: 1.0.1 - estree-walker: 2.0.2 - glob: 7.2.3 - is-reference: 1.2.1 - magic-string: 0.25.9 - resolve: 1.22.8 - rollup: 2.79.1 - dev: true - - /@rollup/plugin-commonjs@25.0.7(rollup@4.1.5): - resolution: {integrity: sha512-nEvcR+LRjEjsaSsc4x3XZfCCvZIaSMenZu/OiwOKGN2UhQpAYI7ru7czFvyWbErlpoGjnSX3D5Ch5FcMA3kRWQ==} + /@rollup/plugin-commonjs@23.0.2(rollup@3.3.0): + resolution: {integrity: sha512-e9ThuiRf93YlVxc4qNIurvv+Hp9dnD+4PjOqQs5vAYfcZ3+AXSrcdzXnVjWxcGQOa6KGJFcRZyUI3ktWLavFjg==} engines: {node: '>=14.0.0'} peerDependencies: - rollup: ^2.68.0||^3.0.0||^4.0.0 + rollup: ^2.68.0||^3.0.0 peerDependenciesMeta: rollup: optional: true dependencies: - '@rollup/pluginutils': 5.0.5(rollup@4.1.5) + '@rollup/pluginutils': 5.0.5(rollup@3.3.0) commondir: 1.0.1 estree-walker: 2.0.2 glob: 8.1.0 is-reference: 1.2.1 - magic-string: 0.30.8 - rollup: 4.1.5 - dev: true - - /@rollup/plugin-image@2.1.1(rollup@2.79.1): - resolution: {integrity: sha512-AgP4U85zuQJdUopLUCM+hTf45RepgXeTb8EJsleExVy99dIoYpt3ZlDYJdKmAc2KLkNntCDg6BPJvgJU3uGF+g==} - engines: {node: '>= 8.0.0'} - peerDependencies: - rollup: ^1.20.0 || ^2.0.0 - dependencies: - '@rollup/pluginutils': 3.1.0(rollup@2.79.1) - mini-svg-data-uri: 1.4.4 - rollup: 2.79.1 - dev: true - - /@rollup/plugin-json@4.1.0(rollup@2.79.1): - resolution: {integrity: sha512-yfLbTdNS6amI/2OpmbiBoW12vngr5NW2jCJVZSBEz+H5KfUJZ2M7sDjk0U6GOOdCWFVScShte29o9NezJ53TPw==} - peerDependencies: - rollup: ^1.20.0 || ^2.0.0 - dependencies: - '@rollup/pluginutils': 3.1.0(rollup@2.79.1) - rollup: 2.79.1 - dev: true - - /@rollup/plugin-node-resolve@13.3.0(rollup@2.79.1): - resolution: {integrity: sha512-Lus8rbUo1eEcnS4yTFKLZrVumLPY+YayBdWXgFSHYhTT2iJbMhoaaBL3xl5NCdeRytErGr8tZ0L71BMRmnlwSw==} - engines: {node: '>= 10.0.0'} - peerDependencies: - rollup: ^2.42.0 - dependencies: - '@rollup/pluginutils': 3.1.0(rollup@2.79.1) - '@types/resolve': 1.17.1 - deepmerge: 4.3.1 - is-builtin-module: 3.2.1 - is-module: 1.0.0 - resolve: 1.22.8 - rollup: 2.79.1 + magic-string: 0.26.7 + rollup: 3.3.0 dev: true - /@rollup/plugin-node-resolve@15.2.3(rollup@4.1.5): - resolution: {integrity: sha512-j/lym8nf5E21LwBT4Df1VD6hRO2L2iwUeUmP7litikRsVp1H6NWx20NEp0Y7su+7XGc476GnXXc4kFeZNGmaSQ==} + /@rollup/plugin-node-resolve@15.0.1(rollup@3.3.0): + resolution: {integrity: sha512-ReY88T7JhJjeRVbfCyNj+NXAG3IIsVMsX9b5/9jC98dRP8/yxlZdz7mHZbHk5zHr24wZZICS5AcXsFZAXYUQEg==} engines: {node: '>=14.0.0'} peerDependencies: - rollup: ^2.78.0||^3.0.0||^4.0.0 + rollup: ^2.78.0||^3.0.0 peerDependenciesMeta: rollup: optional: true dependencies: - '@rollup/pluginutils': 5.0.5(rollup@4.1.5) + '@rollup/pluginutils': 5.0.5(rollup@3.3.0) '@types/resolve': 1.20.2 deepmerge: 4.3.1 is-builtin-module: 3.2.1 is-module: 1.0.0 resolve: 1.22.8 - rollup: 4.1.5 + rollup: 3.3.0 dev: true - /@rollup/plugin-replace@5.0.5(rollup@4.1.5): - resolution: {integrity: sha512-rYO4fOi8lMaTg/z5Jb+hKnrHHVn8j2lwkqwyS4kTRhKyWOLf2wST2sWXr4WzWiTcoHTp2sTjqUbqIj2E39slKQ==} + /@rollup/plugin-replace@5.0.1(rollup@3.3.0): + resolution: {integrity: sha512-Z3MfsJ4CK17BfGrZgvrcp/l6WXoKb0kokULO+zt/7bmcyayokDaQ2K3eDJcRLCTAlp5FPI4/gz9MHAsosz4Rag==} engines: {node: '>=14.0.0'} peerDependencies: - rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 + rollup: ^1.20.0||^2.0.0||^3.0.0 peerDependenciesMeta: rollup: optional: true dependencies: - '@rollup/pluginutils': 5.0.5(rollup@4.1.5) - magic-string: 0.30.8 - rollup: 4.1.5 - dev: true - - /@rollup/pluginutils@3.1.0(rollup@2.79.1): - resolution: {integrity: sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==} - engines: {node: '>= 8.0.0'} - peerDependencies: - rollup: ^1.20.0||^2.0.0 - dependencies: - '@types/estree': 0.0.39 - estree-walker: 1.0.1 - picomatch: 2.3.1 - rollup: 2.79.1 + '@rollup/pluginutils': 5.0.5(rollup@3.3.0) + magic-string: 0.26.7 + rollup: 3.3.0 dev: true /@rollup/pluginutils@4.2.1: @@ -3921,7 +3661,7 @@ packages: picomatch: 2.3.1 dev: true - /@rollup/pluginutils@5.0.5(rollup@4.1.5): + /@rollup/pluginutils@5.0.5(rollup@3.3.0): resolution: {integrity: sha512-6aEYR910NyP73oHiJglti74iRyOwgFU4x3meH/H8OJx6Ry0j6cOVZ5X/wTvub7G7Ao6qaHBEaNsV3GLJkSsF+Q==} engines: {node: '>=14.0.0'} peerDependencies: @@ -3930,182 +3670,28 @@ packages: rollup: optional: true dependencies: - '@types/estree': 1.0.3 - estree-walker: 2.0.2 - picomatch: 2.3.1 - rollup: 4.1.5 - dev: true - - /@rollup/pluginutils@5.1.0(rollup@4.1.5): - resolution: {integrity: sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - dependencies: - '@types/estree': 1.0.3 - estree-walker: 2.0.2 - picomatch: 2.3.1 - rollup: 4.1.5 - dev: true - - /@rollup/rollup-android-arm-eabi@4.1.5: - resolution: {integrity: sha512-/fwx6GS8cIbM2rTNyLMxjSCOegHywOdXO+kN9yFy018iCULcKZCyA3xvzw4bxyKbYfdSxQgdhbsl0egNcxerQw==} - cpu: [arm] - os: [android] - requiresBuild: true - dev: true - optional: true - - /@rollup/rollup-android-arm64@4.1.5: - resolution: {integrity: sha512-tmXh7dyEt+JEz/NgDJlB1UeL/1gFV0v8qYzUAU42WZH4lmUJ5rp6/HkR2qUNC5jCgYEwd8/EfbHKtGIEfS4CUg==} - cpu: [arm64] - os: [android] - requiresBuild: true - dev: true - optional: true - - /@rollup/rollup-darwin-arm64@4.1.5: - resolution: {integrity: sha512-lTDmLxdEVhzI3KCesZUrNbl3icBvPrDv/85JasY5gh4P2eAuDFmM4uj9HC5DdH0anLC0fwJ+1Uzasr4qOXcjRQ==} - cpu: [arm64] - os: [darwin] - requiresBuild: true - dev: true - optional: true - - /@rollup/rollup-darwin-x64@4.1.5: - resolution: {integrity: sha512-v6qEHZyjWnIgcc4oiy8AIeFsUJAx+Kg0sLj+RE7ICwv3u7YC/+bSClxAiBASRjMzqsq0Z+I/pfxj+OD8mjBYxg==} - cpu: [x64] - os: [darwin] - requiresBuild: true - dev: true - optional: true - - /@rollup/rollup-linux-arm-gnueabihf@4.1.5: - resolution: {integrity: sha512-WngCfwPEDUNbZR1FNO2TCROYUwJvRlbvPi3AS85bDUkkoRDBcjUIz42cuB1j4PKilmnZascL5xTMF/yU8YFayA==} - cpu: [arm] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@rollup/rollup-linux-arm64-gnu@4.1.5: - resolution: {integrity: sha512-Q2A/PEP/UTPTOBwgar3mmCaApahoezai/8e/7f4GCLV6XWCpnU4YwkQQtla7d7nUnc792Ps7g1G0WMovzIknrA==} - cpu: [arm64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@rollup/rollup-linux-arm64-musl@4.1.5: - resolution: {integrity: sha512-84aBKNAVzTU/eG3tb2+kR4NGRAtm2YVW/KHwkGGDR4z1k4hyrDbuImsfs/6J74t6y0YLOe9HOSu7ejRjzUBGVQ==} - cpu: [arm64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@rollup/rollup-linux-x64-gnu@4.1.5: - resolution: {integrity: sha512-mldtP9UEBurIq2+GYMdNeiqCLW1fdgf4KdkMR/QegAeXk4jFHkKQl7p0NITrKFVyVqzISGXH5gR6GSTBH4wszw==} - cpu: [x64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@rollup/rollup-linux-x64-musl@4.1.5: - resolution: {integrity: sha512-36p+nMcSxjAEzfU47+by102HolUtf/EfgBAidocTKAofJMTqG5QD50qzaFLk4QO+z7Qvg4qd0wr99jGAwnKOig==} - cpu: [x64] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@rollup/rollup-win32-arm64-msvc@4.1.5: - resolution: {integrity: sha512-5oxhubo0A3J8aF/tG+6jHBg785HF8/88kl1YnfbDKmnqMxz/EFiAQDH9cq6lbnxofjn8tlq5KiTf0crJGOGThg==} - cpu: [arm64] - os: [win32] - requiresBuild: true - dev: true - optional: true - - /@rollup/rollup-win32-ia32-msvc@4.1.5: - resolution: {integrity: sha512-uVQyBREKX9ErofL8KAZ4iVlqzSZOXSIG+BOLYuz5FD+Cg6jh1eLIeUa3Q4SgX0QaTRFeeAgSNqCC+8kZrZBpSw==} - cpu: [ia32] - os: [win32] - requiresBuild: true - dev: true - optional: true - - /@rollup/rollup-win32-x64-msvc@4.1.5: - resolution: {integrity: sha512-FQ5qYqRJ2vUBSom3Fos8o/6UvAMOvlus4+HGCAifH1TagbbwVnVVe0o01J1V52EWnQ8kmfpJDJ0FMrfM5yzcSA==} - cpu: [x64] - os: [win32] - requiresBuild: true - dev: true - optional: true - - /@sideway/address@4.1.5: - resolution: {integrity: sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q==} - dependencies: - '@hapi/hoek': 9.3.0 - dev: true - - /@sideway/formula@3.0.1: - resolution: {integrity: sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==} - dev: true - - /@sideway/pinpoint@2.0.0: - resolution: {integrity: sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==} - dev: true - - /@sigstore/bundle@1.1.0: - resolution: {integrity: sha512-PFutXEy0SmQxYI4texPw3dd2KewuNqv7OuK1ZFtY2fM754yhvG2KdgwIhRnoEE2uHdtdGNQ8s0lb94dW9sELog==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - dependencies: - '@sigstore/protobuf-specs': 0.2.1 - dev: true - - /@sigstore/protobuf-specs@0.2.1: - resolution: {integrity: sha512-XTWVxnWJu+c1oCshMLwnKvz8ZQJJDVOlciMfgpJBQbThVjKTCG8dwyhgLngBD2KN0ap9F/gOV8rFDEx8uh7R2A==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - dev: true - - /@sigstore/sign@1.0.0: - resolution: {integrity: sha512-INxFVNQteLtcfGmcoldzV6Je0sbbfh9I16DM4yJPw3j5+TFP8X6uIiA18mvpEa9yyeycAKgPmOA3X9hVdVTPUA==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - dependencies: - '@sigstore/bundle': 1.1.0 - '@sigstore/protobuf-specs': 0.2.1 - make-fetch-happen: 11.1.1 - transitivePeerDependencies: - - supports-color + '@types/estree': 1.0.3 + estree-walker: 2.0.2 + picomatch: 2.3.1 + rollup: 3.3.0 dev: true - /@sigstore/tuf@1.0.3: - resolution: {integrity: sha512-2bRovzs0nJZFlCN3rXirE4gwxCn97JNjMmwpecqlbgV9WcxX7WRuIrgzx/X7Ib7MYRbyUTpBYE0s2x6AmZXnlg==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /@sideway/address@4.1.5: + resolution: {integrity: sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q==} dependencies: - '@sigstore/protobuf-specs': 0.2.1 - tuf-js: 1.1.7 - transitivePeerDependencies: - - supports-color + '@hapi/hoek': 9.3.0 dev: true - /@sinclair/typebox@0.27.8: - resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} + /@sideway/formula@3.0.1: + resolution: {integrity: sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==} dev: true - /@sindresorhus/is@4.6.0: - resolution: {integrity: sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==} - engines: {node: '>=10'} + /@sideway/pinpoint@2.0.0: + resolution: {integrity: sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==} dev: true - /@sindresorhus/merge-streams@2.3.0: - resolution: {integrity: sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==} - engines: {node: '>=18'} + /@sinclair/typebox@0.27.8: + resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} dev: true /@sinonjs/commons@3.0.0: @@ -4120,34 +3706,57 @@ packages: '@sinonjs/commons': 3.0.0 dev: true - /@size-limit/esbuild@11.0.1(size-limit@11.0.1): - resolution: {integrity: sha512-JXxzmDW7Rch6yxd4u8g6uE21g34oT7fk7Ex2gfDwN4TtciOghI3By4fqxXOwGYkDueEcIw3LXNGjHnTS8Dz5nA==} - engines: {node: ^18.0.0 || >=20.0.0} + /@size-limit/file@6.0.1(size-limit@6.0.1): + resolution: {integrity: sha512-NurTGHCE2LByAZh1Rlqzjr9M1+0Hj49kpN1bNqDtH2RoTOHe02GUQbZadZcNmXEcMwoZr3/dxCaxb6txbiA9eA==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} peerDependencies: - size-limit: 11.0.1 + size-limit: 6.0.1 dependencies: - esbuild: 0.19.12 - nanoid: 5.0.6 - size-limit: 11.0.1 + semver: 7.5.4 + size-limit: 6.0.1 dev: true - /@size-limit/file@11.0.1(size-limit@11.0.1): - resolution: {integrity: sha512-ioSYJ1WY66kc9+3dgTHi5mT/gcaNNCJ22xU87cjzfKiNxmol+lGsNKbplmrJf+QezvPH9kRIFOWxBjGY+DOt3g==} - engines: {node: ^18.0.0 || >=20.0.0} + /@size-limit/preset-small-lib@6.0.1(@swc/core@1.3.16)(size-limit@6.0.1): + resolution: {integrity: sha512-xopnY/JBBklZ/RVHH/z/w+/xgCo48pBo7SV2QbkJ0mT76cf+mS4puGttvB3gxu2nASoD98W0nBXVVhXlZ7Ndxg==} peerDependencies: - size-limit: 11.0.1 + size-limit: 6.0.1 dependencies: - size-limit: 11.0.1 + '@size-limit/file': 6.0.1(size-limit@6.0.1) + '@size-limit/webpack': 6.0.1(@swc/core@1.3.16)(size-limit@6.0.1) + size-limit: 6.0.1 + transitivePeerDependencies: + - '@parcel/css' + - '@swc/core' + - clean-css + - csso + - esbuild + - uglify-js + - webpack-cli dev: true - /@size-limit/preset-small-lib@11.0.1(size-limit@11.0.1): - resolution: {integrity: sha512-c1N5/wN5FRQ03aOpoCw9ed2TP/1cmjt8vKAeTxO40OSfj6ImkpkMarl7e7pCnBElMULc993aUP5UjFhDN6bU4w==} + /@size-limit/webpack@6.0.1(@swc/core@1.3.16)(size-limit@6.0.1): + resolution: {integrity: sha512-fQFTb3bkldQllDdV9jQAXUgrVvrlrZXm0BzR024amUqStPflKLri2jL4Q2/H263DEvDOOmSbdNca6HT7x30qzg==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} peerDependencies: - size-limit: 11.0.1 + size-limit: 6.0.1 dependencies: - '@size-limit/esbuild': 11.0.1(size-limit@11.0.1) - '@size-limit/file': 11.0.1(size-limit@11.0.1) - size-limit: 11.0.1 + '@statoscope/webpack-plugin': 5.28.1(@swc/core@1.3.16)(webpack@5.89.0) + css-loader: 6.8.1(webpack@5.89.0) + css-minimizer-webpack-plugin: 3.4.1(webpack@5.89.0) + escape-string-regexp: 4.0.0 + mkdirp: 1.0.4 + nanoid: 3.3.6 + size-limit: 6.0.1 + style-loader: 3.3.3(webpack@5.89.0) + webpack: 5.89.0(@swc/core@1.3.16) + transitivePeerDependencies: + - '@parcel/css' + - '@swc/core' + - clean-css + - csso + - esbuild + - uglify-js + - webpack-cli dev: true /@soda/friendly-errors-webpack-plugin@1.8.1(webpack@5.89.0): @@ -4160,16 +3769,172 @@ packages: error-stack-parser: 2.1.4 string-width: 4.2.3 strip-ansi: 6.0.1 - webpack: 5.89.0(@swc/core@1.3.107) + webpack: 5.89.0(@swc/core@1.3.16) dev: true /@soda/get-current-script@1.0.2: resolution: {integrity: sha512-T7VNNlYVM1SgQ+VsMYhnDkcGmWhQdL0bDyGm5TlQ3GBXnJscEClUUOKduWTmm2zCnvNLC1hc3JpuXjs/nFOc5w==} dev: true - /@swc/cli@0.3.10(@swc/core@1.3.107): - resolution: {integrity: sha512-YWfYo9kXdbmIuGwIPth9geKgb0KssCMTdZa44zAN5KoqcuCP2rTW9s60heQDSRNpbtCmUr7BKF1VivsoHXrvrQ==} - engines: {node: '>= 16.14.0'} + /@statoscope/extensions@5.28.1: + resolution: {integrity: sha512-jxkHSNfr7KJOfxlueCtahv1LqscTALLkcGSrYCU71C4tR9GVYoVCUMOrhAFJr6ia+GlPhSaxOSk/j+Ay+ZN9vg==} + dev: true + + /@statoscope/helpers@5.28.1: + resolution: {integrity: sha512-G+o+wCYsuc8+0OdY+kyrTOzm5A6X3yp8ArGTWjr9TCllqDk4LzBlHBmWo7z4SPigjNeY/i38sqi1PeWztW+rWA==} + dependencies: + '@types/archy': 0.0.32 + '@types/semver': 7.5.4 + archy: 1.0.0 + jora: 1.0.0-beta.8 + semver: 7.5.4 + dev: true + + /@statoscope/report-writer@5.28.1: + resolution: {integrity: sha512-BjZVdZa7XWkK+zUnFLFWp8yNgmis0DTaPiy/QyU56iWuW+DcF/un1wkvt8ha0jxlXRDbBOfezAztdLNx4U5mxw==} + dependencies: + '@discoveryjs/json-ext': 0.5.7 + '@types/node': 18.18.6 + '@types/pako': 2.0.2 + pako: 2.1.0 + dev: true + + /@statoscope/stats-extension-compressed@5.28.1: + resolution: {integrity: sha512-tmmKbQwibSaRpWv+p8Tb7BxhMNuSGS28NJeN1t2byzakz/FLCzvkT9tj/aBxfQqEIOGusmN+8znz6XSmJ0cbew==} + dependencies: + '@statoscope/extensions': 5.28.1 + '@statoscope/helpers': 5.28.1 + '@statoscope/stats': 5.28.1 + gzip-size: 6.0.0 + dev: true + + /@statoscope/stats-extension-custom-reports@5.28.1: + resolution: {integrity: sha512-f527f6bjl+6iJow+zQFw+hZxGR2hY/FIuFTxhrcbrDXqXu7ApK0e0azJJxAQs0eO1WPMSduXt2k/5kSFecC/kA==} + dependencies: + '@statoscope/extensions': 5.28.1 + '@statoscope/helpers': 5.28.1 + '@statoscope/stats': 5.28.1 + '@statoscope/types': 5.28.1 + dev: true + + /@statoscope/stats-extension-package-info@5.28.1: + resolution: {integrity: sha512-HvwlMfFVSx91KmwUmeIcJZS/0rVbNTRvMEBHzPsZ1Y5BIqZlH/bk/HK8nWYjptUaNkpmcxewp5xO9FtpMaSNVA==} + dependencies: + '@statoscope/extensions': 5.28.1 + '@statoscope/helpers': 5.28.1 + '@statoscope/stats': 5.28.1 + dev: true + + /@statoscope/stats-extension-stats-validation-result@5.28.1: + resolution: {integrity: sha512-vekMnWXVikWo2c4IzmjqKkHGxBTE9RNpTxnD5t5qGz2wx3IHuosV8kp4yaUlD/Atv8C+aLoF0Jg0Q4eB7IYWEA==} + dependencies: + '@statoscope/extensions': 5.28.1 + '@statoscope/helpers': 5.28.1 + '@statoscope/stats': 5.28.1 + '@statoscope/types': 5.28.1 + dev: true + + /@statoscope/stats@5.28.1: + resolution: {integrity: sha512-BB9IZQcBo9I0FFL5sHttF5ubhfE3HkbDMPw5MqEBCee7m6NrlrRe8dxLpPsCUkeFytTWjRLKrY1JOgQq/iE4Fg==} + dev: true + + /@statoscope/types@5.28.1: + resolution: {integrity: sha512-PLcSaRQvGkKhjVLU3YbjFDfZN6H2WF0vp0QqQOOh6qvxRhlOc14ckyou04bnvEqsSWXpvkMPJhOLue+YdIFI9A==} + dependencies: + '@statoscope/stats': 5.28.1 + dev: true + + /@statoscope/webpack-model@5.28.1(@swc/core@1.3.16): + resolution: {integrity: sha512-/WELQXP4Yisx3ATpIjuTd7/m7qDFRv52g4Y8mbKLr5ve1hHEwnI3w46qqRV+idJv+3ntO0HxPnv8jIoHJzgmIA==} + dependencies: + '@statoscope/extensions': 5.28.1 + '@statoscope/helpers': 5.28.1 + '@statoscope/stats': 5.28.1 + '@statoscope/stats-extension-compressed': 5.28.1 + '@statoscope/stats-extension-custom-reports': 5.28.1 + '@statoscope/stats-extension-package-info': 5.28.1 + '@statoscope/stats-extension-stats-validation-result': 5.28.1 + '@statoscope/types': 5.28.1 + '@types/md5': 2.3.4 + '@types/webpack': 5.28.4(@swc/core@1.3.16) + md5: 2.3.0 + transitivePeerDependencies: + - '@swc/core' + - esbuild + - uglify-js + - webpack-cli + dev: true + + /@statoscope/webpack-plugin@5.28.1(@swc/core@1.3.16)(webpack@5.89.0): + resolution: {integrity: sha512-prVwWkBoGiNmJmzjWhpIT/NAV1cqSGiTHjRVpRZYWSdkQBJ5upsXg++GXhFpZEE0p1fkTFgEsVFElYFclnAT6A==} + peerDependencies: + webpack: ^4.0.0 || ^5.0.0 + dependencies: + '@discoveryjs/json-ext': 0.5.7 + '@statoscope/report-writer': 5.28.1 + '@statoscope/stats': 5.28.1 + '@statoscope/stats-extension-compressed': 5.28.1 + '@statoscope/stats-extension-custom-reports': 5.28.1 + '@statoscope/types': 5.28.1 + '@statoscope/webpack-model': 5.28.1(@swc/core@1.3.16) + '@statoscope/webpack-stats-extension-compressed': 5.28.1(@swc/core@1.3.16)(webpack@5.89.0) + '@statoscope/webpack-stats-extension-package-info': 5.28.1(@swc/core@1.3.16)(webpack@5.89.0) + '@statoscope/webpack-ui': 5.28.1 + '@types/node': 18.18.6 + '@types/webpack': 5.28.4(@swc/core@1.3.16) + open: 8.4.2 + webpack: 5.89.0(@swc/core@1.3.16) + transitivePeerDependencies: + - '@swc/core' + - esbuild + - uglify-js + - webpack-cli + dev: true + + /@statoscope/webpack-stats-extension-compressed@5.28.1(@swc/core@1.3.16)(webpack@5.89.0): + resolution: {integrity: sha512-ynQUGOmn+11TnpoKhcSAdE2UztWmeIQhSnflIkAyum1qp8jSzoPgYMas3cgwsI4+Lt8n+HKMjpBI4hKzJoGEQg==} + peerDependencies: + webpack: ^4.0.0 || ^5.0.0 + dependencies: + '@statoscope/stats': 5.28.1 + '@statoscope/stats-extension-compressed': 5.28.1 + '@statoscope/webpack-model': 5.28.1(@swc/core@1.3.16) + '@types/webpack': 5.28.4(@swc/core@1.3.16) + webpack: 5.89.0(@swc/core@1.3.16) + transitivePeerDependencies: + - '@swc/core' + - esbuild + - uglify-js + - webpack-cli + dev: true + + /@statoscope/webpack-stats-extension-package-info@5.28.1(@swc/core@1.3.16)(webpack@5.89.0): + resolution: {integrity: sha512-3tHHQrvEf7nE7LSII1+QYdKGN92s4r0wVjt9xrmitt8FfKrq4UnizIJbLKoeebmOndN5Vz0518QqL4em1Vmhlg==} + peerDependencies: + webpack: ^4.0.0 || ^5.0.0 + dependencies: + '@statoscope/stats': 5.28.1 + '@statoscope/stats-extension-package-info': 5.28.1 + '@statoscope/webpack-model': 5.28.1(@swc/core@1.3.16) + '@types/webpack': 5.28.4(@swc/core@1.3.16) + webpack: 5.89.0(@swc/core@1.3.16) + transitivePeerDependencies: + - '@swc/core' + - esbuild + - uglify-js + - webpack-cli + dev: true + + /@statoscope/webpack-ui@5.28.1: + resolution: {integrity: sha512-mmBaLmpuqG244shyrIFt1ZLAZg6bCzJ9aIrqevTzbuXug869ieVS4moWDJPG7CB/G67yiztEzzPJ23LHJJelQw==} + dependencies: + '@statoscope/types': 5.28.1 + '@types/md5': 2.3.4 + dev: true + + /@swc/cli@0.1.57(@swc/core@1.3.16): + resolution: {integrity: sha512-HxM8TqYHhAg+zp7+RdTU69bnkl4MWdt1ygyp6BDIPjTiaJVH6Dizn2ezbgDS8mnFZI1FyhKvxU/bbaUs8XhzQg==} + engines: {node: '>= 12.13'} hasBin: true peerDependencies: '@swc/core': ^1.2.66 @@ -4178,20 +3943,15 @@ packages: chokidar: optional: true dependencies: - '@mole-inc/bin-wrapper': 8.0.1 - '@swc/core': 1.3.107 - '@swc/counter': 0.1.3 - commander: 8.3.0 + '@swc/core': 1.3.16 + commander: 7.2.0 fast-glob: 3.3.1 - minimatch: 9.0.3 - piscina: 4.4.0 - semver: 7.5.4 slash: 3.0.0 source-map: 0.7.4 dev: true - /@swc/core-darwin-arm64@1.3.107: - resolution: {integrity: sha512-47tD/5vSXWxPd0j/ZllyQUg4bqalbQTsmqSw0J4dDdS82MWqCAwUErUrAZPRjBkjNQ6Kmrf5rpCWaGTtPw+ngw==} + /@swc/core-darwin-arm64@1.3.16: + resolution: {integrity: sha512-tVhkffyl0UQELkz4tfIcBw4PahRTmeP72Yds1v2bvVpeH35i9SIYCsE9z6nH2uG5CwD+3OqvHZ47PNg3Shq+bw==} engines: {node: '>=10'} cpu: [arm64] os: [darwin] @@ -4199,8 +3959,8 @@ packages: dev: true optional: true - /@swc/core-darwin-x64@1.3.107: - resolution: {integrity: sha512-hwiLJ2ulNkBGAh1m1eTfeY1417OAYbRGcb/iGsJ+LuVLvKAhU/itzsl535CvcwAlt2LayeCFfcI8gdeOLeZa9A==} + /@swc/core-darwin-x64@1.3.16: + resolution: {integrity: sha512-5wFflU0G31TlTpgpGEmUxRvSVgRnMPGdbY/dCaGri8xIlE7jVm5lf9mGhdAAKtG+Y0gxmMtNzi2NLicOAfEKbw==} engines: {node: '>=10'} cpu: [x64] os: [darwin] @@ -4208,8 +3968,8 @@ packages: dev: true optional: true - /@swc/core-linux-arm-gnueabihf@1.3.107: - resolution: {integrity: sha512-I2wzcC0KXqh0OwymCmYwNRgZ9nxX7DWnOOStJXV3pS0uB83TXAkmqd7wvMBuIl9qu4Hfomi9aDM7IlEEn9tumQ==} + /@swc/core-linux-arm-gnueabihf@1.3.16: + resolution: {integrity: sha512-KxTs9/Qo45MazfVywsol+OQIUTutGSPY1GbmnfVAhYqrLDt0C21YnpV9+9tjvGNys77F2QdoZGOMJ+fBvr7AJw==} engines: {node: '>=10'} cpu: [arm] os: [linux] @@ -4217,8 +3977,8 @@ packages: dev: true optional: true - /@swc/core-linux-arm64-gnu@1.3.107: - resolution: {integrity: sha512-HWgnn7JORYlOYnGsdunpSF8A+BCZKPLzLtEUA27/M/ZuANcMZabKL9Zurt7XQXq888uJFAt98Gy+59PU90aHKg==} + /@swc/core-linux-arm64-gnu@1.3.16: + resolution: {integrity: sha512-K0F8KVZzHpPsiL3+x3XZBAlECnLn5+BsAa995KUmQ4ALMkOGfkXRVrqkPEpxOTMyjNMyQgIbo261gk7o13+ONg==} engines: {node: '>=10'} cpu: [arm64] os: [linux] @@ -4226,8 +3986,8 @@ packages: dev: true optional: true - /@swc/core-linux-arm64-musl@1.3.107: - resolution: {integrity: sha512-vfPF74cWfAm8hyhS8yvYI94ucMHIo8xIYU+oFOW9uvDlGQRgnUf/6DEVbLyt/3yfX5723Ln57U8uiMALbX5Pyw==} + /@swc/core-linux-arm64-musl@1.3.16: + resolution: {integrity: sha512-tBZtiS2YmAgHNS6TxxUGc1Tn8HqL8XT3EbmyfewmJf8ALE5RcP12tMuXGJJr/9ac+QmwWaFMnXsmfu3hzdDdkQ==} engines: {node: '>=10'} cpu: [arm64] os: [linux] @@ -4235,8 +3995,8 @@ packages: dev: true optional: true - /@swc/core-linux-x64-gnu@1.3.107: - resolution: {integrity: sha512-uBVNhIg0ip8rH9OnOsCARUFZ3Mq3tbPHxtmWk9uAa5u8jQwGWeBx5+nTHpDOVd3YxKb6+5xDEI/edeeLpha/9g==} + /@swc/core-linux-x64-gnu@1.3.16: + resolution: {integrity: sha512-G/opqijVDalDZ7XfQYFhMRK1o74y5ZMP0SAOAajZQUiYBjAYWphpIbPLGoM3g3sK0CA2khA/P+l9kjV7VSvgyA==} engines: {node: '>=10'} cpu: [x64] os: [linux] @@ -4244,8 +4004,8 @@ packages: dev: true optional: true - /@swc/core-linux-x64-musl@1.3.107: - resolution: {integrity: sha512-mvACkUvzSIB12q1H5JtabWATbk3AG+pQgXEN95AmEX2ZA5gbP9+B+mijsg7Sd/3tboHr7ZHLz/q3SHTvdFJrEw==} + /@swc/core-linux-x64-musl@1.3.16: + resolution: {integrity: sha512-eedKXdDV1SFMZ20lETf4Qz0zc+yYzsQ7pqQzT9qNQwh3fo1u/iPx55Aq9MO0CEN+w579WRwwANtSSsuT3yr0tA==} engines: {node: '>=10'} cpu: [x64] os: [linux] @@ -4253,8 +4013,8 @@ packages: dev: true optional: true - /@swc/core-win32-arm64-msvc@1.3.107: - resolution: {integrity: sha512-J3P14Ngy/1qtapzbguEH41kY109t6DFxfbK4Ntz9dOWNuVY3o9/RTB841ctnJk0ZHEG+BjfCJjsD2n8H5HcaOA==} + /@swc/core-win32-arm64-msvc@1.3.16: + resolution: {integrity: sha512-7mBA6aCtBWKQJ5teL+v8wHB4ShNCLQslzu5lso7fUH7mNViMl013X6HPV1umQLIM3f2tC+jMhSmtosxrRNiGDQ==} engines: {node: '>=10'} cpu: [arm64] os: [win32] @@ -4262,8 +4022,8 @@ packages: dev: true optional: true - /@swc/core-win32-ia32-msvc@1.3.107: - resolution: {integrity: sha512-ZBUtgyjTHlz8TPJh7kfwwwFma+ktr6OccB1oXC8fMSopD0AxVnQasgun3l3099wIsAB9eEsJDQ/3lDkOLs1gBA==} + /@swc/core-win32-ia32-msvc@1.3.16: + resolution: {integrity: sha512-if3fwUYrwmskEM9QyYdg4edx1dIXrUYvolszAxfMyUq1GqezkK5PmIO5IAazSZOk8QHaUIA0wcTNKkf8sVyLAw==} engines: {node: '>=10'} cpu: [ia32] os: [win32] @@ -4271,8 +4031,8 @@ packages: dev: true optional: true - /@swc/core-win32-x64-msvc@1.3.107: - resolution: {integrity: sha512-Eyzo2XRqWOxqhE1gk9h7LWmUf4Bp4Xn2Ttb0ayAXFp6YSTxQIThXcT9kipXZqcpxcmDwoq8iWbbf2P8XL743EA==} + /@swc/core-win32-x64-msvc@1.3.16: + resolution: {integrity: sha512-EaXXW0M4EoodsH1ftEaPzixF5nZYKyXk5Qnzqq6hDSOfYzoUOiJ8nBXTHF6xqDHIPVRS1OUDzBujhHsGhQcuPw==} engines: {node: '>=10'} cpu: [x64] os: [win32] @@ -4280,60 +4040,35 @@ packages: dev: true optional: true - /@swc/core@1.3.107: - resolution: {integrity: sha512-zKhqDyFcTsyLIYK1iEmavljZnf4CCor5pF52UzLAz4B6Nu/4GLU+2LQVAf+oRHjusG39PTPjd2AlRT3f3QWfsQ==} + /@swc/core@1.3.16: + resolution: {integrity: sha512-y6xxxampiKWNMGWnEAJktDwk/u9j0SApgJyjgi3LQv+OTtm2LiPS3wtfYnWWXtsuKkL1HCf/H2/NLOwO0WLaPw==} engines: {node: '>=10'} + hasBin: true requiresBuild: true - peerDependencies: - '@swc/helpers': ^0.5.0 - peerDependenciesMeta: - '@swc/helpers': - optional: true - dependencies: - '@swc/counter': 0.1.3 - '@swc/types': 0.1.6 optionalDependencies: - '@swc/core-darwin-arm64': 1.3.107 - '@swc/core-darwin-x64': 1.3.107 - '@swc/core-linux-arm-gnueabihf': 1.3.107 - '@swc/core-linux-arm64-gnu': 1.3.107 - '@swc/core-linux-arm64-musl': 1.3.107 - '@swc/core-linux-x64-gnu': 1.3.107 - '@swc/core-linux-x64-musl': 1.3.107 - '@swc/core-win32-arm64-msvc': 1.3.107 - '@swc/core-win32-ia32-msvc': 1.3.107 - '@swc/core-win32-x64-msvc': 1.3.107 - dev: true - - /@swc/counter@0.1.3: - resolution: {integrity: sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==} - dev: true - - /@swc/jest@0.2.36(@swc/core@1.3.107): - resolution: {integrity: sha512-8X80dp81ugxs4a11z1ka43FPhP+/e+mJNXJSxiNYk8gIX/jPBtY4gQTrKu/KIoco8bzKuPI5lUxjfLiGsfvnlw==} + '@swc/core-darwin-arm64': 1.3.16 + '@swc/core-darwin-x64': 1.3.16 + '@swc/core-linux-arm-gnueabihf': 1.3.16 + '@swc/core-linux-arm64-gnu': 1.3.16 + '@swc/core-linux-arm64-musl': 1.3.16 + '@swc/core-linux-x64-gnu': 1.3.16 + '@swc/core-linux-x64-musl': 1.3.16 + '@swc/core-win32-arm64-msvc': 1.3.16 + '@swc/core-win32-ia32-msvc': 1.3.16 + '@swc/core-win32-x64-msvc': 1.3.16 + dev: true + + /@swc/jest@0.2.23(@swc/core@1.3.16): + resolution: {integrity: sha512-ZLj17XjHbPtNsgqjm83qizENw05emLkKGu3WuPUttcy9hkngl0/kcc7fDbcSBpADS0GUtsO+iKPjZFWVAtJSlA==} engines: {npm: '>= 7.0.0'} peerDependencies: '@swc/core': '*' dependencies: - '@jest/create-cache-key-function': 29.7.0 - '@swc/core': 1.3.107 - '@swc/counter': 0.1.3 + '@jest/create-cache-key-function': 27.5.1 + '@swc/core': 1.3.16 jsonc-parser: 3.2.0 dev: true - /@swc/types@0.1.6: - resolution: {integrity: sha512-/JLo/l2JsT/LRd80C3HfbmVpxOAJ11FO2RCEslFrgzLltoP9j8XIbsyDcfCt2WWyX+CM96rBoNM+IToAkFOugg==} - dependencies: - '@swc/counter': 0.1.3 - dev: true - - /@szmarczak/http-timer@4.0.6: - resolution: {integrity: sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==} - engines: {node: '>=10'} - dependencies: - defer-to-connect: 2.0.1 - dev: true - /@testing-library/dom@8.20.1: resolution: {integrity: sha512-/DiOQ5xBxgdYRC8LNk7U+RWat0S3qRLeIw3ZIkMQ9kkVlRmwD/Eg8k8CqIpD6GW7u20JIUOfMKbxtiLutpjQ4g==} engines: {node: '>=12'} @@ -4377,7 +4112,7 @@ packages: redent: 3.0.0 dev: true - /@testing-library/jest-dom@6.1.2(@types/jest@29.5.3)(jest@29.7.0): + /@testing-library/jest-dom@6.1.2(jest@29.5.0): resolution: {integrity: sha512-NP9jl1Q2qDDtx+cqogowtQtmgD2OVs37iMSIsTv5eN5ETRkf26Kj6ugVwA93/gZzzFWQAsgkKkcftDe91BJCkQ==} engines: {node: '>=14', npm: '>=6', yarn: '>=1'} peerDependencies: @@ -4397,12 +4132,11 @@ packages: dependencies: '@adobe/css-tools': 4.3.2 '@babel/runtime': 7.23.2 - '@types/jest': 29.5.3 aria-query: 5.3.0 chalk: 3.0.0 css.escape: 1.5.1 dom-accessibility-api: 0.5.16 - jest: 29.7.0(@types/node@20.4.5) + jest: 29.5.0 lodash: 4.17.21 redent: 3.0.0 dev: true @@ -4435,7 +4169,7 @@ packages: vue-template-compiler: 2.7.16 dev: true - /@testing-library/vue@7.0.0(@vue/compiler-sfc@3.4.21)(typescript@5.1.6)(vue@3.4.21): + /@testing-library/vue@7.0.0(@vue/compiler-sfc@3.4.21)(typescript@4.9.5)(vue@3.4.21): resolution: {integrity: sha512-JU/q93HGo2qdm1dCgWymkeQlfpC0/0/DBZ2nAHgEAsVZxX11xVIxT7gbXdI7HACQpUbsUWt1zABGU075Fzt9XQ==} engines: {node: '>=14'} peerDependencies: @@ -4445,16 +4179,12 @@ packages: '@babel/runtime': 7.23.2 '@testing-library/dom': 9.3.1 '@vue/compiler-sfc': 3.4.21 - '@vue/test-utils': 2.4.5(typescript@5.1.6) - vue: 3.4.21(typescript@5.1.6) + '@vue/test-utils': 2.4.5(typescript@4.9.5) + vue: 3.4.21(typescript@4.9.5) transitivePeerDependencies: - typescript dev: true - /@tokenizer/token@0.3.0: - resolution: {integrity: sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==} - dev: true - /@tootallnate/once@2.0.0: resolution: {integrity: sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==} engines: {node: '>= 10'} @@ -4465,33 +4195,8 @@ packages: engines: {node: '>=10.13.0'} dev: true - /@tsconfig/node10@1.0.10: - resolution: {integrity: sha512-PiaIWIoPvO6qm6t114ropMCagj6YAF24j9OkCA2mJDXFnlionEwhsBCJ8yek4aib575BI3OkART/90WsgHgLWw==} - dev: true - - /@tsconfig/node12@1.0.11: - resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==} - dev: true - - /@tsconfig/node14@1.0.3: - resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==} - dev: true - - /@tsconfig/node16@1.0.4: - resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} - dev: true - - /@tufjs/canonical-json@1.0.0: - resolution: {integrity: sha512-QTnf++uxunWvG2z3UFNzAoQPHxnSXOwtaI3iJ+AohhV+5vONuArPjJE7aPXPVXfXJsqrVbZBu9b81AJoSd09IQ==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - dev: true - - /@tufjs/models@1.0.4: - resolution: {integrity: sha512-qaGV9ltJP0EO25YfFUPhxRVK0evXFIAGicsVXuRim4Ed9cjPxYhNnNJ49SFmbeLgtxpslIkX317IgpfcHPVj/A==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - dependencies: - '@tufjs/canonical-json': 1.0.0 - minimatch: 9.0.3 + /@types/archy@0.0.32: + resolution: {integrity: sha512-5ZZ5+YGmUE01yejiXsKnTcvhakMZ2UllZlMsQni53Doc1JWhe21ia8VntRoRD6fAEWw08JBh/z9qQHJ+//MrIg==} dev: true /@types/aria-query@5.0.3: @@ -4531,35 +4236,26 @@ packages: resolution: {integrity: sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==} dependencies: '@types/connect': 3.4.38 - '@types/node': 20.11.30 + '@types/node': 20.8.7 dev: true /@types/bonjour@3.5.13: resolution: {integrity: sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==} dependencies: - '@types/node': 20.11.30 - dev: true - - /@types/cacheable-request@6.0.3: - resolution: {integrity: sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==} - dependencies: - '@types/http-cache-semantics': 4.0.4 - '@types/keyv': 3.1.4 - '@types/node': 20.11.30 - '@types/responselike': 1.0.3 + '@types/node': 20.8.7 dev: true /@types/connect-history-api-fallback@1.5.4: resolution: {integrity: sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw==} dependencies: '@types/express-serve-static-core': 4.17.43 - '@types/node': 20.11.30 + '@types/node': 20.8.7 dev: true /@types/connect@3.4.38: resolution: {integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==} dependencies: - '@types/node': 20.11.30 + '@types/node': 20.8.7 dev: true /@types/eslint-scope@3.7.6: @@ -4576,10 +4272,6 @@ packages: '@types/json-schema': 7.0.14 dev: true - /@types/estree@0.0.39: - resolution: {integrity: sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==} - dev: true - /@types/estree@1.0.3: resolution: {integrity: sha512-CS2rOaoQ/eAgAfcTfq6amKG7bsN+EMcgGY4FAFQdvSj2y1ixvOZTUA9mOtCai7E1SYu283XNw7urKK30nP3wkQ==} dev: true @@ -4587,7 +4279,7 @@ packages: /@types/express-serve-static-core@4.17.43: resolution: {integrity: sha512-oaYtiBirUOPQGSWNGPWnzyAFJ0BP3cwvN4oWZQY+zUBwpVIGsKUkpBpSztp74drYcjavs7SKFZ4DX1V2QeN8rg==} dependencies: - '@types/node': 20.11.30 + '@types/node': 20.8.7 '@types/qs': 6.9.14 '@types/range-parser': 1.2.7 '@types/send': 0.17.4 @@ -4602,33 +4294,16 @@ packages: '@types/serve-static': 1.15.5 dev: true - /@types/fs-extra@8.1.5: - resolution: {integrity: sha512-0dzKcwO+S8s2kuF5Z9oUWatQJj5Uq/iqphEtE3GQJVRRYm/tD1LglU2UnXi2A8jLq5umkGouOXOR9y0n613ZwQ==} - dependencies: - '@types/node': 20.11.30 - dev: true - - /@types/glob@7.2.0: - resolution: {integrity: sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==} - dependencies: - '@types/minimatch': 3.0.5 - '@types/node': 20.11.30 - dev: true - /@types/graceful-fs@4.1.8: resolution: {integrity: sha512-NhRH7YzWq8WiNKVavKPBmtLYZHxNY19Hh+az28O/phfp68CF45pMFud+ZzJ8ewnxnC5smIdF3dqFeiSUQ5I+pw==} dependencies: - '@types/node': 20.11.30 + '@types/node': 20.8.7 dev: true /@types/html-minifier-terser@6.1.0: resolution: {integrity: sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==} dev: true - /@types/http-cache-semantics@4.0.4: - resolution: {integrity: sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==} - dev: true - /@types/http-errors@2.0.4: resolution: {integrity: sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==} dev: true @@ -4636,7 +4311,7 @@ packages: /@types/http-proxy@1.17.14: resolution: {integrity: sha512-SSrD0c1OQzlFX7pGu1eXxSEjemej64aaNPRhhVYUGqXh0BtldAAx37MG8btcumvpgKyZp1F5Gn3JkktdxiFv6w==} dependencies: - '@types/node': 20.11.30 + '@types/node': 20.8.7 dev: true /@types/is-ci@3.0.3: @@ -4661,8 +4336,8 @@ packages: '@types/istanbul-lib-report': 3.0.2 dev: true - /@types/jest@29.5.3: - resolution: {integrity: sha512-1Nq7YrO/vJE/FYnqYyw0FS8LdrjExSgIiHyKg7xPpn+yi8Q4huZryKnkJatN1ZRH89Kw2v33/8ZMB7DuZeSLlA==} + /@types/jest@29.5.12: + resolution: {integrity: sha512-eDC8bTvT/QhYdxJAulQikueigY5AsdBRH2yDKW3yveW7svY3+DzN84/2NUgkw10RTiJbWqZrTtoGVdYlvFJdLw==} dependencies: expect: 29.7.0 pretty-format: 29.7.0 @@ -4671,7 +4346,7 @@ packages: /@types/jsdom@20.0.1: resolution: {integrity: sha512-d0r18sZPmMQr1eG35u12FZfhIXNrnsPU/g5wvRKCUf/tOGilKKwYMYGqh33BNR6ba+2gkHw1EUiHoN3mn7E5IQ==} dependencies: - '@types/node': 20.11.30 + '@types/node': 20.8.7 '@types/tough-cookie': 4.0.4 parse5: 7.1.2 dev: true @@ -4684,10 +4359,8 @@ packages: resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} dev: true - /@types/keyv@3.1.4: - resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==} - dependencies: - '@types/node': 20.11.30 + /@types/md5@2.3.4: + resolution: {integrity: sha512-e/L4hvpCK8GavKXmP02QlNilZOj8lpmZGGA9QGMMPZjCUoKgi1B4BvhXcbruIi6r+PqzpcjLfda/tocpHFKqDA==} dev: true /@types/mime@1.3.5: @@ -4709,27 +4382,31 @@ packages: /@types/node-forge@1.3.11: resolution: {integrity: sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==} dependencies: - '@types/node': 20.11.30 + '@types/node': 20.8.7 dev: true /@types/node@12.20.55: resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==} dev: true - /@types/node@20.11.30: - resolution: {integrity: sha512-dHM6ZxwlmuZaRmUPfv1p+KrdD1Dci04FbdEm/9wEMouFqxYoFl5aMkt0VMAUtYRQDyYvD41WJLukhq/ha3YuTw==} - dependencies: - undici-types: 5.26.5 + /@types/node@18.18.6: + resolution: {integrity: sha512-wf3Vz+jCmOQ2HV1YUJuCWdL64adYxumkrxtc+H1VUQlnQI04+5HtH+qZCOE21lBE7gIrt+CwX2Wv8Acrw5Ak6w==} dev: true - /@types/node@20.4.5: - resolution: {integrity: sha512-rt40Nk13II9JwQBdeYqmbn2Q6IVTA5uPhvSO+JVqdXw/6/4glI6oR9ezty/A9Hg5u7JH4OmYmuQ+XvjKm0Datg==} + /@types/node@20.8.7: + resolution: {integrity: sha512-21TKHHh3eUHIi2MloeptJWALuCu5H7HQTdTrWIFReA8ad+aggoX+lRes3ex7/FtpC+sVUpFMQ+QTfYr74mruiQ==} + dependencies: + undici-types: 5.25.3 dev: true /@types/normalize-package-data@2.4.3: resolution: {integrity: sha512-ehPtgRgaULsFG8x0NeYJvmyH1hmlfsNLujHe9dQEia/7MAJYdzMSi19JtchUHjmBA6XC/75dK55mzZH+RyieSg==} dev: true + /@types/pako@2.0.2: + resolution: {integrity: sha512-AtTbzIwhvLMTEUPudP3hxUwNK50DoX3amfVJmmL7WQH5iF3Kfqs8pG1tStsewHqmh75ULmjjldKn/B70D6DNcQ==} + dev: true + /@types/parse-json@4.0.1: resolution: {integrity: sha512-3YmXzzPAdOTVljVMkTMBdBEvlOLg2cDQaDhnnhT3nT9uDbnJzjWhKlzb+desT12Y7tGqaN6d+AbozcKzyL36Ng==} dev: true @@ -4749,33 +4426,21 @@ packages: /@types/react-dom@18.2.22: resolution: {integrity: sha512-fHkBXPeNtfvri6gdsMYyW+dW7RXFo6Ad09nLFK0VQWR7yGLai/Cyvyj696gbwYvBnhGtevUG9cET0pmUbMtoPQ==} dependencies: - '@types/react': 18.2.18 + '@types/react': 18.2.70 dev: true - /@types/react@18.2.18: - resolution: {integrity: sha512-da4NTSeBv/P34xoZPhtcLkmZuJ+oYaCxHmyHzwaDQo9RQPBeXV+06gEk2FpqEcsX9XrnNLvRpVh6bdavDSjtiQ==} + /@types/react@18.2.70: + resolution: {integrity: sha512-hjlM2hho2vqklPhopNkXkdkeq6Lv8WSZTpr7956zY+3WS5cfYUewtCzsJLsbW5dEv3lfSeQ4W14ZFeKC437JRQ==} dependencies: '@types/prop-types': 15.7.12 '@types/scheduler': 0.16.8 csstype: 3.1.3 dev: true - /@types/resolve@1.17.1: - resolution: {integrity: sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==} - dependencies: - '@types/node': 20.11.30 - dev: true - /@types/resolve@1.20.2: resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==} dev: true - /@types/responselike@1.0.3: - resolution: {integrity: sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==} - dependencies: - '@types/node': 20.11.30 - dev: true - /@types/retry@0.12.0: resolution: {integrity: sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==} dev: true @@ -4792,7 +4457,7 @@ packages: resolution: {integrity: sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==} dependencies: '@types/mime': 1.3.5 - '@types/node': 20.11.30 + '@types/node': 20.8.7 dev: true /@types/serve-index@1.9.4: @@ -4806,13 +4471,13 @@ packages: dependencies: '@types/http-errors': 2.0.4 '@types/mime': 3.0.4 - '@types/node': 20.11.30 + '@types/node': 20.8.7 dev: true /@types/sockjs@0.3.36: resolution: {integrity: sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==} dependencies: - '@types/node': 20.11.30 + '@types/node': 20.8.7 dev: true /@types/stack-utils@2.0.2: @@ -4822,30 +4487,49 @@ packages: /@types/testing-library__jest-dom@5.14.9: resolution: {integrity: sha512-FSYhIjFlfOpGSRyVoMBMuS3ws5ehFQODymf3vlI7U1K8c7PHwWwFY7VREfmsuzHSOnoKs/9/Y983ayOs7eRzqw==} dependencies: - '@types/jest': 29.5.3 + '@types/jest': 29.5.12 dev: true /@types/tough-cookie@4.0.4: resolution: {integrity: sha512-95Sfz4nvMAb0Nl9DTxN3j64adfwfbBPEYq14VN7zT5J5O2M9V6iZMIIQU1U+pJyl9agHYHNCqhCXgyEtIRRa5A==} dev: true + /@types/webpack@5.28.4(@swc/core@1.3.16): + resolution: {integrity: sha512-sVIGIQdg0bNruxwQvpiNXaIXndScf+qTfYULLo2DI8urXgxC7f8Rw8aNHjjckdI3QaV3cRHqoHdCuBMMyUtGiw==} + dependencies: + '@types/node': 18.18.6 + tapable: 2.2.1 + webpack: 5.89.0(@swc/core@1.3.16) + transitivePeerDependencies: + - '@swc/core' + - esbuild + - uglify-js + - webpack-cli + dev: true + /@types/ws@8.5.10: resolution: {integrity: sha512-vmQSUcfalpIq0R9q7uTo2lXs6eGIpt9wtnLdMv9LVpIjCA/+ufZRozlVoVelIYixx1ugCBKDhn89vnsEGOCx9A==} dependencies: - '@types/node': 20.11.30 + '@types/node': 20.8.7 dev: true /@types/yargs-parser@21.0.2: resolution: {integrity: sha512-5qcvofLPbfjmBfKaLfj/+f+Sbd6pN4zl7w7VSVI5uz7m9QZTuB2aZAa2uo1wHFBNN2x6g/SoTkXmd8mQnQF2Cw==} dev: true + /@types/yargs@16.0.7: + resolution: {integrity: sha512-lQcYmxWuOfJq4IncK88/nwud9rwr1F04CFc5xzk0k4oKVyz/AI35TfsXmhjf6t8zp8mpCOi17BfvuNWx+zrYkg==} + dependencies: + '@types/yargs-parser': 21.0.2 + dev: true + /@types/yargs@17.0.29: resolution: {integrity: sha512-nacjqA3ee9zRF/++a3FUY1suHTFKZeHba2n8WeDw9cCVdmzmHpIxyzOJBcpHvvEmS8E9KqWlSnWHUkOrkhWcvA==} dependencies: '@types/yargs-parser': 21.0.2 dev: true - /@typescript-eslint/experimental-utils@4.33.0(eslint@7.32.0)(typescript@5.1.6): + /@typescript-eslint/experimental-utils@4.33.0(eslint@7.32.0)(typescript@4.9.5): resolution: {integrity: sha512-zeQjOoES5JFjTnAhI5QY7ZviczMzDptls15GFsI6jyUOq0kOf9+WonkhtlIhh0RgHRnqj5gdNxW5j1EvAyYg6Q==} engines: {node: ^10.12.0 || >=12.0.0} peerDependencies: @@ -4854,7 +4538,7 @@ packages: '@types/json-schema': 7.0.14 '@typescript-eslint/scope-manager': 4.33.0 '@typescript-eslint/types': 4.33.0 - '@typescript-eslint/typescript-estree': 4.33.0(typescript@5.1.6) + '@typescript-eslint/typescript-estree': 4.33.0(typescript@4.9.5) eslint: 7.32.0 eslint-scope: 5.1.1 eslint-utils: 3.0.0(eslint@7.32.0) @@ -4876,7 +4560,7 @@ packages: engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} dev: true - /@typescript-eslint/typescript-estree@4.33.0(typescript@5.1.6): + /@typescript-eslint/typescript-estree@4.33.0(typescript@4.9.5): resolution: {integrity: sha512-rkWRY1MPFzjwnEVHsxGemDzqqddw2QbTJlICPD9p9I9LfsO8fdmfQPOX3uKfUaGRDFJbfrtm/sXhVXN4E+bzCA==} engines: {node: ^10.12.0 || >=12.0.0} peerDependencies: @@ -4891,8 +4575,8 @@ packages: globby: 11.1.0 is-glob: 4.0.3 semver: 7.5.4 - tsutils: 3.21.0(typescript@5.1.6) - typescript: 5.1.6 + tsutils: 3.21.0(typescript@4.9.5) + typescript: 4.9.5 transitivePeerDependencies: - supports-color dev: true @@ -4905,10 +4589,6 @@ packages: eslint-visitor-keys: 2.1.0 dev: true - /@ungap/structured-clone@1.2.0: - resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} - dev: true - /@vue/babel-helper-vue-jsx-merge-props@1.4.0: resolution: {integrity: sha512-JkqXfCkUDp4PIlFdDQ0TdXoIejMtTHP67/pvxlgeY+u5k3LEdKuWZ3LK6xkxo52uDoABIVyRwqVkfLQJhk7VBA==} dev: true @@ -5087,18 +4767,18 @@ packages: resolution: {integrity: sha512-KmtievE/B4kcXp6SuM2gzsnSd8WebkQpg3XaB6GmFh1BJGRqa1UiW9up7L/Q67uOdTigHxr5Ar2lZms4RcDjwQ==} dev: true - /@vue/cli-plugin-babel@5.0.8(@swc/core@1.3.107)(@vue/cli-service@5.0.8)(core-js@3.26.1)(vue@2.7.16): + /@vue/cli-plugin-babel@5.0.8(@swc/core@1.3.16)(@vue/cli-service@5.0.8)(core-js@3.26.1)(vue@2.7.16): resolution: {integrity: sha512-a4qqkml3FAJ3auqB2kN2EMPocb/iu0ykeELwed+9B1c1nQ1HKgslKMHMPavYx3Cd/QAx2mBD4hwKBqZXEI/CsQ==} peerDependencies: '@vue/cli-service': ^3.0.0 || ^4.0.0 || ^5.0.0-0 dependencies: '@babel/core': 7.23.2 '@vue/babel-preset-app': 5.0.8(@babel/core@7.23.2)(core-js@3.26.1)(vue@2.7.16) - '@vue/cli-service': 5.0.8(@swc/core@1.3.107)(vue-template-compiler@2.7.14)(vue@2.7.16) + '@vue/cli-service': 5.0.8(@swc/core@1.3.16)(vue-template-compiler@2.7.14)(vue@2.7.16) '@vue/cli-shared-utils': 5.0.8 babel-loader: 8.3.0(@babel/core@7.23.2)(webpack@5.89.0) thread-loader: 3.0.4(webpack@5.89.0) - webpack: 5.89.0(@swc/core@1.3.107) + webpack: 5.89.0(@swc/core@1.3.16) transitivePeerDependencies: - '@swc/core' - core-js @@ -5115,7 +4795,7 @@ packages: peerDependencies: '@vue/cli-service': ^3.0.0 || ^4.0.0 || ^5.0.0-0 dependencies: - '@vue/cli-service': 5.0.8(@swc/core@1.3.107)(vue-template-compiler@2.7.14)(vue@2.7.16) + '@vue/cli-service': 5.0.8(@swc/core@1.3.16)(vue-template-compiler@2.7.14)(vue@2.7.16) '@vue/cli-shared-utils': 5.0.8 transitivePeerDependencies: - encoding @@ -5126,10 +4806,10 @@ packages: peerDependencies: '@vue/cli-service': ^3.0.0 || ^4.0.0 || ^5.0.0-0 dependencies: - '@vue/cli-service': 5.0.8(@swc/core@1.3.107)(vue-template-compiler@2.7.14)(vue@2.7.16) + '@vue/cli-service': 5.0.8(@swc/core@1.3.16)(vue-template-compiler@2.7.14)(vue@2.7.16) dev: true - /@vue/cli-service@5.0.8(@swc/core@1.3.107)(vue-template-compiler@2.7.14)(vue@2.7.16): + /@vue/cli-service@5.0.8(@swc/core@1.3.16)(vue-template-compiler@2.7.14)(vue@2.7.16): resolution: {integrity: sha512-nV7tYQLe7YsTtzFrfOMIHc5N2hp5lHG2rpYr0aNja9rNljdgcPZLyQRb2YRivTHqTv7lI962UXFURcpStHgyFw==} engines: {node: ^12.0.0 || >= 14.0.0} hasBin: true @@ -5204,12 +4884,12 @@ packages: postcss-loader: 6.2.1(postcss@8.4.31)(webpack@5.89.0) progress-webpack-plugin: 1.0.16(webpack@5.89.0) ssri: 8.0.1 - terser-webpack-plugin: 5.3.9(@swc/core@1.3.107)(webpack@5.89.0) + terser-webpack-plugin: 5.3.9(@swc/core@1.3.16)(webpack@5.89.0) thread-loader: 3.0.4(webpack@5.89.0) vue-loader: 17.4.2(vue@2.7.16)(webpack@5.89.0) vue-style-loader: 4.1.3 vue-template-compiler: 2.7.14 - webpack: 5.89.0(@swc/core@1.3.107) + webpack: 5.89.0(@swc/core@1.3.16) webpack-bundle-analyzer: 4.10.1 webpack-chain: 6.5.1 webpack-dev-server: 4.15.2(debug@4.3.4)(webpack@5.89.0) @@ -5450,7 +5130,7 @@ packages: dependencies: '@vue/compiler-ssr': 3.4.21 '@vue/shared': 3.4.21 - vue: 3.4.21(typescript@5.1.6) + vue: 3.4.21(typescript@4.9.5) dev: true /@vue/shared@3.4.21: @@ -5470,11 +5150,11 @@ packages: vue-template-compiler: 2.7.16 dev: true - /@vue/test-utils@2.4.5(typescript@5.1.6): + /@vue/test-utils@2.4.5(typescript@4.9.5): resolution: {integrity: sha512-oo2u7vktOyKUked36R93NB7mg2B+N7Plr8lxp2JBGwr18ch6EggFjixSCdIVVLkT6Qr0z359Xvnafc9dcKyDUg==} dependencies: js-beautify: 1.15.1 - vue: 3.4.21(typescript@5.1.6) + vue: 3.4.21(typescript@4.9.5) vue-component-type-helpers: 2.0.7 transitivePeerDependencies: - typescript @@ -5602,9 +5282,9 @@ packages: resolution: {integrity: sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==} dev: true - /@yarnpkg/parsers@3.0.0-rc.46: - resolution: {integrity: sha512-aiATs7pSutzda/rq8fnuPwTglyVwjM22bNnK2ZgjrpAjQHSSl3lztd2f9evst1W/qnC58DRz7T7QndUDumAR4Q==} - engines: {node: '>=14.15.0'} + /@yarnpkg/parsers@3.0.0: + resolution: {integrity: sha512-jVZa3njBv6tcOUw34nlUdUM/40wwtm/gnVF8rtk0tA6vNcokqYI8CFU1BZjlpFwUSZaXxYkrtuPE/f2MMFlTxQ==} + engines: {node: '>=18.12.0'} dependencies: js-yaml: 3.14.1 tslib: 2.6.2 @@ -5627,7 +5307,6 @@ packages: /abab@2.0.6: resolution: {integrity: sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==} - deprecated: Use your platform's native atob() and btoa() methods instead dev: true /abbrev@1.1.1: @@ -5670,14 +5349,6 @@ packages: acorn: 7.4.1 dev: true - /acorn-jsx@5.3.2(acorn@8.10.0): - resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} - peerDependencies: - acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - dependencies: - acorn: 8.10.0 - dev: true - /acorn-walk@8.2.0: resolution: {integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==} engines: {node: '>=0.4.0'} @@ -5856,6 +5527,10 @@ packages: resolution: {integrity: sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==} dev: true + /archy@1.0.0: + resolution: {integrity: sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==} + dev: true + /are-we-there-yet@3.0.1: resolution: {integrity: sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==} engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} @@ -5977,6 +5652,10 @@ packages: engines: {node: '>=8'} dev: true + /asap@2.0.6: + resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==} + dev: true + /ast-types-flow@0.0.7: resolution: {integrity: sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==} dev: true @@ -6021,22 +5700,6 @@ packages: postcss-value-parser: 4.2.0 dev: true - /autoprefixer@10.4.19(postcss@8.4.38): - resolution: {integrity: sha512-BaENR2+zBZ8xXhM4pUaKUxlVdxZ0EZhjvbopwnXmxRUfqDmwSpC2lAi/QXvx7NRdPCo1WKEcEF6mV64si1z4Ew==} - engines: {node: ^10 || ^12 || >=14} - hasBin: true - peerDependencies: - postcss: '>=8.4.31' - dependencies: - browserslist: 4.23.0 - caniuse-lite: 1.0.30001600 - fraction.js: 4.3.7 - normalize-range: 0.1.2 - picocolors: 1.0.0 - postcss: 8.4.38 - postcss-value-parser: 4.2.0 - dev: true - /available-typed-arrays@1.0.5: resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} engines: {node: '>= 0.4'} @@ -6091,20 +5754,7 @@ packages: loader-utils: 2.0.4 make-dir: 3.1.0 schema-utils: 2.7.1 - webpack: 5.89.0(@swc/core@1.3.107) - dev: true - - /babel-plugin-const-enum@1.2.0(@babel/core@7.23.2): - resolution: {integrity: sha512-o1m/6iyyFnp9MRsK1dHF3bneqyf3AlM2q3A/YbgQr2pCat6B6XJVDv2TXqzfY2RYUi4mak6WAksSBPlyYGx9dg==} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-typescript': 7.24.1(@babel/core@7.23.2) - '@babel/traverse': 7.24.1 - transitivePeerDependencies: - - supports-color + webpack: 5.89.0(@swc/core@1.3.16) dev: true /babel-plugin-dynamic-import-node@2.3.3: @@ -6117,7 +5767,7 @@ packages: resolution: {integrity: sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==} engines: {node: '>=8'} dependencies: - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.22.5 '@istanbuljs/load-nyc-config': 1.1.0 '@istanbuljs/schema': 0.1.3 istanbul-lib-instrument: 5.2.1 @@ -6130,20 +5780,12 @@ packages: resolution: {integrity: sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@babel/template': 7.24.0 + '@babel/template': 7.22.15 '@babel/types': 7.24.0 '@types/babel__core': 7.20.3 '@types/babel__traverse': 7.20.3 dev: true - /babel-plugin-macros@2.8.0: - resolution: {integrity: sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg==} - dependencies: - '@babel/runtime': 7.23.2 - cosmiconfig: 6.0.0 - resolve: 1.22.8 - dev: true - /babel-plugin-polyfill-corejs2@0.4.10(@babel/core@7.23.2): resolution: {integrity: sha512-rpIuu//y5OX6jVU+a5BCn1R5RSZYWAl2Nar76iwaOdycqb6JPxediskWFMMl7stfwNJR4b7eiQvh5fB5TEQJTQ==} peerDependencies: @@ -6180,23 +5822,6 @@ packages: - supports-color dev: true - /babel-plugin-transform-async-to-promises@0.8.18: - resolution: {integrity: sha512-WpOrF76nUHijnNn10eBGOHZmXQC8JYRME9rOLxStOga7Av2VO53ehVFvVNImMksVtQuL2/7ZNxEgxnx7oo/3Hw==} - dev: true - - /babel-plugin-transform-typescript-metadata@0.3.2(@babel/core@7.23.2): - resolution: {integrity: sha512-mWEvCQTgXQf48yDqgN7CH50waTyYBeP2Lpqx4nNWab9sxEpdXVeKgfj1qYI2/TgUPQtNFZ85i3PemRtnXVYYJg==} - peerDependencies: - '@babel/core': ^7 - '@babel/traverse': ^7 - peerDependenciesMeta: - '@babel/traverse': - optional: true - dependencies: - '@babel/core': 7.23.2 - '@babel/helper-plugin-utils': 7.24.0 - dev: true - /babel-preset-current-node-syntax@1.0.1(@babel/core@7.23.2): resolution: {integrity: sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==} peerDependencies: @@ -6252,39 +5877,26 @@ packages: dev: false /better-path-resolve@1.0.0: - resolution: {integrity: sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g==} - engines: {node: '>=4'} - dependencies: - is-windows: 1.0.2 - dev: true - - /big.js@5.2.2: - resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==} - dev: true - - /bin-check@4.1.0: - resolution: {integrity: sha512-b6weQyEUKsDGFlACWSIOfveEnImkJyK/FGW6FAG42loyoquvjdtOIqO6yBFzHyqyVVhNgNkQxxx09SFLK28YnA==} + resolution: {integrity: sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g==} engines: {node: '>=4'} dependencies: - execa: 0.7.0 - executable: 4.1.1 + is-windows: 1.0.2 dev: true - /bin-version-check@5.1.0: - resolution: {integrity: sha512-bYsvMqJ8yNGILLz1KP9zKLzQ6YpljV3ln1gqhuLkUtyfGi3qXKGuK2p+U4NAvjVFzDFiBBtOpCOSFNuYYEGZ5g==} - engines: {node: '>=12'} - dependencies: - bin-version: 6.0.0 - semver: 7.5.4 - semver-truncate: 3.0.0 + /big.js@5.2.2: + resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==} dev: true - /bin-version@6.0.0: - resolution: {integrity: sha512-nk5wEsP4RiKjG+vF+uG8lFsEn4d7Y6FVDamzzftSunXOoOcOOkzcWdKVlGgFFwlUQCj63SgnUkLLGF8v7lufhw==} - engines: {node: '>=12'} + /bin-links@3.0.3: + resolution: {integrity: sha512-zKdnMPWEdh4F5INR07/eBrodC7QrF5JKvqskjz/ZZRXg5YSAZIbn8zGhbhUrElzHBZ2fvEQdOU59RHcTG3GiwA==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} dependencies: - execa: 5.1.1 - find-versions: 5.1.0 + cmd-shim: 5.0.0 + mkdirp-infer-owner: 2.0.0 + npm-normalize-package-bin: 2.0.0 + read-cmd-shim: 3.0.1 + rimraf: 3.0.2 + write-file-atomic: 4.0.2 dev: true /binary-extensions@2.2.0: @@ -6434,9 +6046,9 @@ packages: - encoding dev: true - /byte-size@8.1.1: - resolution: {integrity: sha512-tUkzZWK0M/qdoLEqikxBWe4kumyuwjl3HO6zHTr4yEI23EojPtLYXdG1+AQY7MN0cGyNDvEaJ8wiYQm6P2bPxg==} - engines: {node: '>=12.17'} + /byte-size@7.0.1: + resolution: {integrity: sha512-crQdqyCwhokxwV1UyDzLZanhkugAgft7vt0qbbdt60C6Zf3CAiGmtUCylbtYwrU6loOUw3euGrNtW1J651ot1A==} + engines: {node: '>=10'} dev: true /bytes-iec@3.1.1: @@ -6454,6 +6066,32 @@ packages: engines: {node: '>= 0.8'} dev: true + /cacache@16.1.3: + resolution: {integrity: sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + '@npmcli/fs': 2.1.2 + '@npmcli/move-file': 2.0.1 + chownr: 2.0.0 + fs-minipass: 2.1.0 + glob: 8.1.0 + infer-owner: 1.0.4 + lru-cache: 7.18.3 + minipass: 3.3.6 + minipass-collect: 1.0.2 + minipass-flush: 1.0.5 + minipass-pipeline: 1.2.4 + mkdirp: 1.0.4 + p-map: 4.0.0 + promise-inflight: 1.0.1 + rimraf: 3.0.2 + ssri: 9.0.1 + tar: 6.2.0 + unique-filename: 2.0.1 + transitivePeerDependencies: + - bluebird + dev: true + /cacache@17.1.4: resolution: {integrity: sha512-/aJwG2l3ZMJ1xNAnqbMpA40of9dj/pIH3QfiuQSqjfPJF747VR0J/bHn+/KdNnHKc6XQcWt/AfRSBft82W1d2A==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -6472,24 +6110,6 @@ packages: unique-filename: 3.0.0 dev: true - /cacheable-lookup@5.0.4: - resolution: {integrity: sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==} - engines: {node: '>=10.6.0'} - dev: true - - /cacheable-request@7.0.4: - resolution: {integrity: sha512-v+p6ongsrp0yTGbJXjgxPow2+DL93DASP4kXCDKb8/bwRtt9OEF3whggkkDkGNzgcWy2XaF4a8nZglC7uElscg==} - engines: {node: '>=8'} - dependencies: - clone-response: 1.0.3 - get-stream: 5.2.0 - http-cache-semantics: 4.1.1 - keyv: 4.5.4 - lowercase-keys: 2.0.0 - normalize-url: 6.1.0 - responselike: 2.0.1 - dev: true - /call-bind@1.0.5: resolution: {integrity: sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==} dependencies: @@ -6612,6 +6232,10 @@ packages: resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} dev: true + /charenc@0.0.2: + resolution: {integrity: sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==} + dev: true + /chokidar@3.5.3: resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} engines: {node: '>= 8.10.0'} @@ -6641,11 +6265,19 @@ packages: resolution: {integrity: sha512-NtTjhgSEqv4Aj90TUYHQLxHdnCPXnjdtuGG1X8lTfp/JqeXTdw0FTWl/vUAPuvbWZTF8QVpv6ASe/XacE+7R2A==} dev: true + /ci-info@2.0.0: + resolution: {integrity: sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==} + dev: true + /ci-info@3.9.0: resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} engines: {node: '>=8'} dev: true + /ci-job-number@1.2.2: + resolution: {integrity: sha512-CLOGsVDrVamzv8sXJGaILUVI6dsuAkouJP/n6t+OxLPeeA4DDby7zn9SB6EUpa1H7oIKoE+rMmkW80zYsFfUjA==} + dev: true + /cjs-module-lexer@1.2.3: resolution: {integrity: sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==} dev: true @@ -6755,20 +6387,16 @@ packages: shallow-clone: 3.0.1 dev: true - /clone-response@1.0.3: - resolution: {integrity: sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==} - dependencies: - mimic-response: 1.0.1 - dev: true - /clone@1.0.4: resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==} engines: {node: '>=0.8'} dev: true - /cmd-shim@6.0.1: - resolution: {integrity: sha512-S9iI9y0nKR4hwEQsVWpyxld/6kRfGepGfzff83FcaiEBpmvlbA2nnGe7Cylgrx2f/p1P5S5wpRm9oL8z1PbS3Q==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /cmd-shim@5.0.0: + resolution: {integrity: sha512-qkCtZ59BidfEwHltnJwkyVZn+XQojdAySM1D1gSeh11Z4pW1Kpolkyo53L5noc0nrxmIvyFwTmJRo4xs7FFLPw==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + mkdirp-infer-owner: 2.0.0 dev: true /co@4.6.0: @@ -6840,7 +6468,6 @@ packages: /commander@2.20.3: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} - dev: true /commander@5.1.0: resolution: {integrity: sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==} @@ -6855,13 +6482,16 @@ packages: /commander@8.2.0: resolution: {integrity: sha512-LLKxDvHeL91/8MIyTAD5BFMNtoIwztGPMiM/7Bl8rIPmHCZXRxmSWr91h57dpOpnQ6jIUqEWdXE/uBYMfiVZDA==} engines: {node: '>= 12'} - dev: true /commander@8.3.0: resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==} engines: {node: '>= 12'} dev: true + /common-ancestor-path@1.0.1: + resolution: {integrity: sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w==} + dev: true + /commondir@1.0.1: resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} dev: true @@ -6909,12 +6539,6 @@ packages: typedarray: 0.0.6 dev: true - /concat-with-sourcemaps@1.1.0: - resolution: {integrity: sha512-4gEjHJFT9e+2W/77h/DS5SGUgwDaOwprX8L/gl5+3ixnzkVJJsZWDSelmN3Oilw3LNDZjZV0yqH1hLG3k6nghg==} - dependencies: - source-map: 0.6.1 - dev: true - /condense-newlines@0.2.1: resolution: {integrity: sha512-P7X+QL9Hb9B/c8HI5BFFKmjgBu2XpQuF98WZ9XkO+dBGgk5XgwiQz7o1SmpglNWId3581UcS0SFAWfoIhMHPfg==} engines: {node: '>=0.10.0'} @@ -7133,13 +6757,6 @@ packages: q: 1.5.1 dev: true - /conventional-changelog-angular@6.0.0: - resolution: {integrity: sha512-6qLgrBF4gueoC7AFVHu51nHL9pF9FRjXrH+ceVf7WmAfH3gs+gEYOkvxhjMPjZu57I4AGUGoNTY8V7Hrgf1uqg==} - engines: {node: '>=14'} - dependencies: - compare-func: 2.0.0 - dev: true - /conventional-changelog-conventionalcommits@4.6.3: resolution: {integrity: sha512-LTTQV4fwOM4oLPad317V/QNQ1FY4Hju5qeBIM1uTHbrnCE+Eg4CdRZ3gO2pUeR+tzWdp80M2j3qFFEDWVqOV4g==} engines: {node: '>=10'} @@ -7149,45 +6766,50 @@ packages: q: 1.5.1 dev: true - /conventional-changelog-core@5.0.1: - resolution: {integrity: sha512-Rvi5pH+LvgsqGwZPZ3Cq/tz4ty7mjijhr3qR4m9IBXNbxGGYgTVVO+duXzz9aArmHxFtwZ+LRkrNIMDQzgoY4A==} - engines: {node: '>=14'} + /conventional-changelog-core@4.2.4: + resolution: {integrity: sha512-gDVS+zVJHE2v4SLc6B0sLsPiloR0ygU7HaDW14aNJE1v4SlqJPILPl/aJC7YdtRE4CybBf8gDwObBvKha8Xlyg==} + engines: {node: '>=10'} dependencies: add-stream: 1.0.0 - conventional-changelog-writer: 6.0.1 - conventional-commits-parser: 4.0.0 + conventional-changelog-writer: 5.0.1 + conventional-commits-parser: 3.2.4 dateformat: 3.0.3 get-pkg-repo: 4.2.1 - git-raw-commits: 3.0.0 + git-raw-commits: 2.0.11 git-remote-origin-url: 2.0.0 - git-semver-tags: 5.0.1 + git-semver-tags: 4.1.1 + lodash: 4.17.21 normalize-package-data: 3.0.3 + q: 1.5.1 read-pkg: 3.0.0 read-pkg-up: 3.0.0 + through2: 4.0.2 dev: true - /conventional-changelog-preset-loader@3.0.0: - resolution: {integrity: sha512-qy9XbdSLmVnwnvzEisjxdDiLA4OmV3o8db+Zdg4WiFw14fP3B6XNz98X0swPPpkTd/pc1K7+adKgEDM1JCUMiA==} - engines: {node: '>=14'} + /conventional-changelog-preset-loader@2.3.4: + resolution: {integrity: sha512-GEKRWkrSAZeTq5+YjUZOYxdHq+ci4dNwHvpaBC3+ENalzFWuCWa9EZXSuZBpkr72sMdKB+1fyDV4takK1Lf58g==} + engines: {node: '>=10'} dev: true - /conventional-changelog-writer@6.0.1: - resolution: {integrity: sha512-359t9aHorPw+U+nHzUXHS5ZnPBOizRxfQsWT5ZDHBfvfxQOAik+yfuhKXG66CN5LEWPpMNnIMHUTCKeYNprvHQ==} - engines: {node: '>=14'} + /conventional-changelog-writer@5.0.1: + resolution: {integrity: sha512-5WsuKUfxW7suLblAbFnxAcrvf6r+0b7GvNaWUwUIk0bXMnENP/PEieGKVUQrjPqwPT4o3EPAASBXiY6iHooLOQ==} + engines: {node: '>=10'} hasBin: true dependencies: - conventional-commits-filter: 3.0.0 + conventional-commits-filter: 2.0.7 dateformat: 3.0.3 handlebars: 4.7.8 json-stringify-safe: 5.0.1 + lodash: 4.17.21 meow: 8.1.2 - semver: 7.5.4 + semver: 6.3.1 split: 1.0.1 + through2: 4.0.2 dev: true - /conventional-commits-filter@3.0.0: - resolution: {integrity: sha512-1ymej8b5LouPx9Ox0Dw/qAO2dVdfpRFq28e5Y0jJEU8ZrLdy0vOSkkIInwmxErFGhg6SALro60ZrwYFVTUDo4Q==} - engines: {node: '>=14'} + /conventional-commits-filter@2.0.7: + resolution: {integrity: sha512-ASS9SamOP4TbCClsRHxIHXRfcGCnIoQqkvAzCSbZzTFLfcTqJVugB0agRgsEELsqaeWgsXv513eS116wnlSSPA==} + engines: {node: '>=10'} dependencies: lodash.ismatch: 4.4.0 modify-values: 1.0.1 @@ -7206,29 +6828,19 @@ packages: through2: 4.0.2 dev: true - /conventional-commits-parser@4.0.0: - resolution: {integrity: sha512-WRv5j1FsVM5FISJkoYMR6tPk07fkKT0UodruX4je86V4owk451yjXAKzKAPOs9l7y59E2viHUS9eQ+dfUA9NSg==} - engines: {node: '>=14'} - hasBin: true - dependencies: - JSONStream: 1.3.5 - is-text-path: 1.0.1 - meow: 8.1.2 - split2: 3.2.2 - dev: true - - /conventional-recommended-bump@7.0.1: - resolution: {integrity: sha512-Ft79FF4SlOFvX4PkwFDRnaNiIVX7YbmqGU0RwccUaiGvgp3S0a8ipR2/Qxk31vclDNM+GSdJOVs2KrsUCjblVA==} - engines: {node: '>=14'} + /conventional-recommended-bump@6.1.0: + resolution: {integrity: sha512-uiApbSiNGM/kkdL9GTOLAqC4hbptObFo4wW2QRyHsKciGAfQuLU1ShZ1BIVI/+K2BE/W1AWYQMCXAsv4dyKPaw==} + engines: {node: '>=10'} hasBin: true dependencies: concat-stream: 2.0.0 - conventional-changelog-preset-loader: 3.0.0 - conventional-commits-filter: 3.0.0 - conventional-commits-parser: 4.0.0 - git-raw-commits: 3.0.0 - git-semver-tags: 5.0.1 + conventional-changelog-preset-loader: 2.3.4 + conventional-commits-filter: 2.0.7 + conventional-commits-parser: 3.2.4 + git-raw-commits: 2.0.11 + git-semver-tags: 4.1.1 meow: 8.1.2 + q: 1.5.1 dev: true /convert-source-map@2.0.0: @@ -7256,7 +6868,7 @@ packages: normalize-path: 3.0.0 schema-utils: 3.3.0 serialize-javascript: 6.0.1 - webpack: 5.89.0(@swc/core@1.3.107) + webpack: 5.89.0(@swc/core@1.3.16) dev: true /core-js-compat@3.36.1: @@ -7288,17 +6900,6 @@ packages: parse-json: 4.0.0 dev: true - /cosmiconfig@6.0.0: - resolution: {integrity: sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==} - engines: {node: '>=8'} - dependencies: - '@types/parse-json': 4.0.1 - import-fresh: 3.3.0 - parse-json: 5.2.0 - path-type: 4.0.0 - yaml: 1.10.2 - dev: true - /cosmiconfig@7.1.0: resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==} engines: {node: '>=10'} @@ -7310,23 +6911,7 @@ packages: yaml: 1.10.2 dev: true - /cosmiconfig@8.3.6(typescript@5.1.6): - resolution: {integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==} - engines: {node: '>=14'} - peerDependencies: - typescript: '>=4.9.5' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - import-fresh: 3.3.0 - js-yaml: 4.1.0 - parse-json: 5.2.0 - path-type: 4.0.0 - typescript: 5.1.6 - dev: true - - /create-jest@29.7.0(@types/node@20.4.5): + /create-jest@29.7.0: resolution: {integrity: sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} hasBin: true @@ -7335,7 +6920,7 @@ packages: chalk: 4.1.2 exit: 0.1.2 graceful-fs: 4.2.11 - jest-config: 29.7.0(@types/node@20.4.5) + jest-config: 29.7.0(@types/node@20.8.7) jest-util: 29.7.0 prompts: 2.4.2 transitivePeerDependencies: @@ -7385,6 +6970,10 @@ packages: which: 2.0.2 dev: true + /crypt@0.0.2: + resolution: {integrity: sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==} + dev: true + /css-declaration-sorter@6.4.1(postcss@8.4.31): resolution: {integrity: sha512-rtdthzxKuyq6IzqX6jEcIzQF/YqccluefyCYheovBOLhFT/drQA9zj/UbRAa9J7C0o6EG6u3E6g+vKkay7/k3g==} engines: {node: ^10 || ^12 || >=14} @@ -7417,7 +7006,7 @@ packages: postcss-modules-values: 4.0.0(postcss@8.4.38) postcss-value-parser: 4.2.0 semver: 7.5.4 - webpack: 5.89.0(@swc/core@1.3.107) + webpack: 5.89.0(@swc/core@1.3.16) dev: true /css-minimizer-webpack-plugin@3.4.1(webpack@5.89.0): @@ -7445,7 +7034,7 @@ packages: schema-utils: 4.2.0 serialize-javascript: 6.0.1 source-map: 0.6.1 - webpack: 5.89.0(@swc/core@1.3.107) + webpack: 5.89.0(@swc/core@1.3.16) dev: true /css-select@4.3.0: @@ -7715,6 +7304,11 @@ packages: supports-color: 8.1.1 dev: true + /debuglog@1.0.1: + resolution: {integrity: sha512-syBZ+rnAK3EgMsH2aYEOLUW7mZSY9Gb+0wUMCFsZvcmiz+HigA0LOcq/HoQqVuGG+EKykunc7QG2bzrponfaSw==} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. + dev: true + /decamelize-keys@1.1.1: resolution: {integrity: sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==} engines: {node: '>=0.10.0'} @@ -7732,13 +7326,6 @@ packages: resolution: {integrity: sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==} dev: true - /decompress-response@6.0.0: - resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} - engines: {node: '>=10'} - dependencies: - mimic-response: 3.1.0 - dev: true - /dedent@0.7.0: resolution: {integrity: sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==} dev: true @@ -7802,11 +7389,6 @@ packages: clone: 1.0.4 dev: true - /defer-to-connect@2.0.1: - resolution: {integrity: sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==} - engines: {node: '>=10'} - dev: true - /define-data-property@1.1.1: resolution: {integrity: sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==} engines: {node: '>= 0.4'} @@ -7882,14 +7464,11 @@ packages: resolution: {integrity: sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==} dev: true - /detect-port@1.5.1: - resolution: {integrity: sha512-aBzdj76lueB6uUst5iAs7+0H/oOjqI5D16XUWxlWMIMROhcM0rfsNVk93zTngq1dDNpoXRr++Sus7ETAExppAQ==} - hasBin: true + /dezalgo@1.0.4: + resolution: {integrity: sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==} dependencies: - address: 1.2.2 - debug: 4.3.4(supports-color@8.1.1) - transitivePeerDependencies: - - supports-color + asap: 2.0.6 + wrappy: 1.0.2 dev: true /diff-sequences@29.6.3: @@ -7959,7 +7538,6 @@ packages: /domexception@4.0.0: resolution: {integrity: sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw==} engines: {node: '>=12'} - deprecated: Use your platform's native DOMException instead dependencies: webidl-conversions: 7.0.0 dev: true @@ -7993,9 +7571,11 @@ packages: is-obj: 2.0.0 dev: true - /dotenv-expand@10.0.0: - resolution: {integrity: sha512-GopVGCpVS1UKH75VKHGuQFqS1Gusej0z4FyQkPdwjil2gNIv+LNsqBlboOzpJFZKVT95GkCyWJbBSdFEFUWI2A==} - engines: {node: '>=12'} + /dot-prop@6.0.1: + resolution: {integrity: sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==} + engines: {node: '>=10'} + dependencies: + is-obj: 2.0.0 dev: true /dotenv-expand@5.1.0: @@ -8007,11 +7587,6 @@ packages: engines: {node: '>=10'} dev: true - /dotenv@16.3.2: - resolution: {integrity: sha512-HTlk5nmhkm8F6JcdXvHIzaorzCoziNQT9mGxLPVXW8wJF1TiGSL60ZGB4gHWabHOaMmWmhvk2/lPHfnBiT78AQ==} - engines: {node: '>=12'} - dev: true - /dotenv@8.6.0: resolution: {integrity: sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==} engines: {node: '>=10'} @@ -8135,8 +7710,8 @@ packages: engines: {node: '>=6'} dev: true - /envinfo@7.8.1: - resolution: {integrity: sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw==} + /envinfo@7.10.0: + resolution: {integrity: sha512-ZtUjZO6l5mwTHvc1L9+1q5p/R3wTopcfqMW8r5t8SJSKqeVI/LtajORwRFEKpEFuekjD0VBjwu1HMxL4UalIRw==} engines: {node: '>=4'} hasBin: true dev: true @@ -8244,37 +7819,6 @@ packages: is-symbol: 1.0.4 dev: true - /esbuild@0.19.12: - resolution: {integrity: sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg==} - engines: {node: '>=12'} - hasBin: true - requiresBuild: true - optionalDependencies: - '@esbuild/aix-ppc64': 0.19.12 - '@esbuild/android-arm': 0.19.12 - '@esbuild/android-arm64': 0.19.12 - '@esbuild/android-x64': 0.19.12 - '@esbuild/darwin-arm64': 0.19.12 - '@esbuild/darwin-x64': 0.19.12 - '@esbuild/freebsd-arm64': 0.19.12 - '@esbuild/freebsd-x64': 0.19.12 - '@esbuild/linux-arm': 0.19.12 - '@esbuild/linux-arm64': 0.19.12 - '@esbuild/linux-ia32': 0.19.12 - '@esbuild/linux-loong64': 0.19.12 - '@esbuild/linux-mips64el': 0.19.12 - '@esbuild/linux-ppc64': 0.19.12 - '@esbuild/linux-riscv64': 0.19.12 - '@esbuild/linux-s390x': 0.19.12 - '@esbuild/linux-x64': 0.19.12 - '@esbuild/netbsd-x64': 0.19.12 - '@esbuild/openbsd-x64': 0.19.12 - '@esbuild/sunos-x64': 0.19.12 - '@esbuild/win32-arm64': 0.19.12 - '@esbuild/win32-ia32': 0.19.12 - '@esbuild/win32-x64': 0.19.12 - dev: true - /escalade@3.1.1: resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} engines: {node: '>=6'} @@ -8299,11 +7843,6 @@ packages: engines: {node: '>=10'} dev: true - /escape-string-regexp@5.0.0: - resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} - engines: {node: '>=12'} - dev: true - /escodegen@2.1.0: resolution: {integrity: sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==} engines: {node: '>=6.0'} @@ -8420,7 +7959,7 @@ packages: - supports-color dev: true - /eslint-plugin-jest@25.0.1(eslint@7.32.0)(typescript@5.1.6): + /eslint-plugin-jest@25.0.1(eslint@7.32.0)(typescript@4.9.5): resolution: {integrity: sha512-h54W6EOFGWHvKmGQul1Ahc8nLfzWR7jbynjeb4NT/acg6yOaRPQv6MXeSuQO3a7+21xaVtmULowYANuu4JIimQ==} engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} peerDependencies: @@ -8430,7 +7969,7 @@ packages: '@typescript-eslint/eslint-plugin': optional: true dependencies: - '@typescript-eslint/experimental-utils': 4.33.0(eslint@7.32.0)(typescript@5.1.6) + '@typescript-eslint/experimental-utils': 4.33.0(eslint@7.32.0)(typescript@4.9.5) eslint: 7.32.0 transitivePeerDependencies: - supports-color @@ -8497,14 +8036,6 @@ packages: estraverse: 4.3.0 dev: true - /eslint-scope@7.2.2: - resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - esrecurse: 4.3.0 - estraverse: 5.3.0 - dev: true - /eslint-utils@2.1.0: resolution: {integrity: sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==} engines: {node: '>=6'} @@ -8532,11 +8063,6 @@ packages: engines: {node: '>=10'} dev: true - /eslint-visitor-keys@3.4.3: - resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dev: true - /eslint@7.32.0: resolution: {integrity: sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==} engines: {node: ^10.12.0 || >=12.0.0} @@ -8586,53 +8112,6 @@ packages: - supports-color dev: true - /eslint@8.57.0: - resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - hasBin: true - dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - '@eslint-community/regexpp': 4.10.0 - '@eslint/eslintrc': 2.1.4 - '@eslint/js': 8.57.0 - '@humanwhocodes/config-array': 0.11.14 - '@humanwhocodes/module-importer': 1.0.1 - '@nodelib/fs.walk': 1.2.8 - '@ungap/structured-clone': 1.2.0 - ajv: 6.12.6 - chalk: 4.1.2 - cross-spawn: 7.0.3 - debug: 4.3.4(supports-color@8.1.1) - doctrine: 3.0.0 - escape-string-regexp: 4.0.0 - eslint-scope: 7.2.2 - eslint-visitor-keys: 3.4.3 - espree: 9.6.1 - esquery: 1.5.0 - esutils: 2.0.3 - fast-deep-equal: 3.1.3 - file-entry-cache: 6.0.1 - find-up: 5.0.0 - glob-parent: 6.0.2 - globals: 13.23.0 - graphemer: 1.4.0 - ignore: 5.2.4 - imurmurhash: 0.1.4 - is-glob: 4.0.3 - is-path-inside: 3.0.3 - js-yaml: 4.1.0 - json-stable-stringify-without-jsonify: 1.0.1 - levn: 0.4.1 - lodash.merge: 4.6.2 - minimatch: 3.1.2 - natural-compare: 1.4.0 - optionator: 0.9.3 - strip-ansi: 6.0.1 - text-table: 0.2.0 - transitivePeerDependencies: - - supports-color - dev: true - /espree@7.3.1: resolution: {integrity: sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==} engines: {node: ^10.12.0 || >=12.0.0} @@ -8642,15 +8121,6 @@ packages: eslint-visitor-keys: 1.3.0 dev: true - /espree@9.6.1: - resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - acorn: 8.10.0 - acorn-jsx: 5.3.2(acorn@8.10.0) - eslint-visitor-keys: 3.4.3 - dev: true - /esprima@4.0.1: resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} engines: {node: '>=4'} @@ -8681,14 +8151,6 @@ packages: engines: {node: '>=4.0'} dev: true - /estree-walker@0.6.1: - resolution: {integrity: sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==} - dev: true - - /estree-walker@1.0.1: - resolution: {integrity: sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==} - dev: true - /estree-walker@2.0.2: resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} dev: true @@ -8717,19 +8179,6 @@ packages: engines: {node: '>=0.8.x'} dev: true - /execa@0.7.0: - resolution: {integrity: sha512-RztN09XglpYI7aBBrJCPW95jEH7YF1UEPOoX9yDhUTPdp7mK+CQvnLTuD10BNXZ3byLTu2uehZ8EcKT/4CGiFw==} - engines: {node: '>=4'} - dependencies: - cross-spawn: 5.1.0 - get-stream: 3.0.0 - is-stream: 1.1.0 - npm-run-path: 2.0.2 - p-finally: 1.0.0 - signal-exit: 3.0.7 - strip-eof: 1.0.0 - dev: true - /execa@1.0.0: resolution: {integrity: sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==} engines: {node: '>=6'} @@ -8743,21 +8192,6 @@ packages: strip-eof: 1.0.0 dev: true - /execa@5.0.0: - resolution: {integrity: sha512-ov6w/2LCiuyO4RLYGdpFGjkcs0wMTgGE8PrkTHikeUy5iJekXyPIKUjifk5CsE0pt7sMCrMZ3YNqoCj6idQOnQ==} - engines: {node: '>=10'} - dependencies: - cross-spawn: 7.0.3 - get-stream: 6.0.1 - human-signals: 2.1.0 - is-stream: 2.0.1 - merge-stream: 2.0.0 - npm-run-path: 4.0.1 - onetime: 5.1.2 - signal-exit: 3.0.7 - strip-final-newline: 2.0.0 - dev: true - /execa@5.1.1: resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} engines: {node: '>=10'} @@ -8773,13 +8207,6 @@ packages: strip-final-newline: 2.0.0 dev: true - /executable@4.1.1: - resolution: {integrity: sha512-8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==} - engines: {node: '>=4'} - dependencies: - pify: 2.3.0 - dev: true - /exit@0.1.2: resolution: {integrity: sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==} engines: {node: '>= 0.8.0'} @@ -8839,21 +8266,6 @@ packages: - supports-color dev: true - /ext-list@2.2.2: - resolution: {integrity: sha512-u+SQgsubraE6zItfVA0tBuCBhfU9ogSRnsvygI7wht9TS510oLkBRXBsqopeUG/GBOIQyKZO9wjTqIu/sf5zFA==} - engines: {node: '>=0.10.0'} - dependencies: - mime-db: 1.52.0 - dev: true - - /ext-name@5.0.0: - resolution: {integrity: sha512-yblEwXAbGv1VQDmow7s38W77hzAgJAO50ztBLMcUyUBfxv1HC+LGwtiEN+Co6LtlqT/5uwVOxsD4TNIilWhwdQ==} - engines: {node: '>=4'} - dependencies: - ext-list: 2.2.2 - sort-keys-length: 1.0.1 - dev: true - /extend-shallow@2.0.1: resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==} engines: {node: '>=0.10.0'} @@ -8900,17 +8312,6 @@ packages: micromatch: 4.0.5 dev: true - /fast-glob@3.3.2: - resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} - engines: {node: '>=8.6.0'} - dependencies: - '@nodelib/fs.stat': 2.0.5 - '@nodelib/fs.walk': 1.2.8 - glob-parent: 5.1.2 - merge2: 1.4.1 - micromatch: 4.0.5 - dev: true - /fast-json-stable-stringify@2.1.0: resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} dev: true @@ -8959,33 +8360,10 @@ packages: flat-cache: 3.1.1 dev: true - /file-type@17.1.6: - resolution: {integrity: sha512-hlDw5Ev+9e883s0pwUsuuYNu4tD7GgpUnOvykjv1Gya0ZIjuKumthDRua90VUn6/nlRKAjcxLUnHNTIUWwWIiw==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - dependencies: - readable-web-to-node-stream: 3.0.2 - strtok3: 7.0.0 - token-types: 5.0.1 - dev: true - /filelist@1.0.4: - resolution: {integrity: sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==} - dependencies: - minimatch: 5.1.6 - dev: true - - /filename-reserved-regex@3.0.0: - resolution: {integrity: sha512-hn4cQfU6GOT/7cFHXBqeBg2TbrMBgdD0kcjLhvSQYYwm3s4B6cjvBfb7nBALJLAXqmU5xajSa7X2NnUud/VCdw==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - dev: true - - /filenamify@5.1.1: - resolution: {integrity: sha512-M45CbrJLGACfrPOkrTp3j2EcO9OBkKUYME0eiqOCa7i2poaklU0jhlIaMlr8ijLorT0uLAzrn3qXOp5684CkfA==} - engines: {node: '>=12.20'} + resolution: {integrity: sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==} dependencies: - filename-reserved-regex: 3.0.0 - strip-outer: 2.0.0 - trim-repeated: 2.0.0 + minimatch: 5.1.6 dev: true /fill-range@7.0.1: @@ -9042,13 +8420,6 @@ packages: path-exists: 4.0.0 dev: true - /find-versions@5.1.0: - resolution: {integrity: sha512-+iwzCJ7C5v5KgcBuueqVoNiHVoQpwiUK5XFLjf0affFTep+Wcw93tPvmb8tqujDNmzhBDPddnWV/qgWSXgq+Hg==} - engines: {node: '>=12'} - dependencies: - semver-regex: 4.0.5 - dev: true - /find-yarn-workspace-root2@1.2.16: resolution: {integrity: sha512-hr6hb1w8ePMpPVUK39S4RlwJzi+xPLuVuG8XlwXU3KD5Yn3qgBWVfy3AzNlDhWvE1EORCE65/Qm26rFQt3VLVA==} dependencies: @@ -9136,15 +8507,6 @@ packages: universalify: 2.0.0 dev: true - /fs-extra@11.2.0: - resolution: {integrity: sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==} - engines: {node: '>=14.14'} - dependencies: - graceful-fs: 4.2.11 - jsonfile: 6.1.0 - universalify: 2.0.0 - dev: true - /fs-extra@7.0.1: resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==} engines: {node: '>=6 <7 || >=8'} @@ -9239,12 +8601,6 @@ packages: wide-align: 1.1.5 dev: true - /generic-names@4.0.0: - resolution: {integrity: sha512-ySFolZQfw9FoDb3ed9d80Cm9f0+r7qj+HJkWjeD9RBfpxEVTlVhol+gvaQB/78WbwYfbnNh8nWHHBSlg072y6A==} - dependencies: - loader-utils: 3.2.1 - dev: true - /gensync@1.0.0-beta.2: resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} engines: {node: '>=6.9.0'} @@ -9289,11 +8645,6 @@ packages: engines: {node: '>=8'} dev: true - /get-stream@3.0.0: - resolution: {integrity: sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ==} - engines: {node: '>=4'} - dev: true - /get-stream@4.1.0: resolution: {integrity: sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==} engines: {node: '>=6'} @@ -9301,18 +8652,6 @@ packages: pump: 3.0.0 dev: true - /get-stream@5.2.0: - resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==} - engines: {node: '>=8'} - dependencies: - pump: 3.0.0 - dev: true - - /get-stream@6.0.0: - resolution: {integrity: sha512-A1B3Bh1UmL0bidM/YX2NsCOTnGJePL9rO/M+Mw3m9f2gUpfokS0hi5Eah0WSUEWZdZhIZtMjkIYS7mDfOqNHbg==} - engines: {node: '>=10'} - dev: true - /get-stream@6.0.1: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} engines: {node: '>=10'} @@ -9344,16 +8683,6 @@ packages: through2: 4.0.2 dev: true - /git-raw-commits@3.0.0: - resolution: {integrity: sha512-b5OHmZ3vAgGrDn/X0kS+9qCfNKWe4K/jFnhwzVWWg0/k5eLa3060tZShrRg8Dja5kPc+YjS0Gc6y7cRr44Lpjw==} - engines: {node: '>=14'} - hasBin: true - dependencies: - dargs: 7.0.0 - meow: 8.1.2 - split2: 3.2.2 - dev: true - /git-remote-origin-url@2.0.0: resolution: {integrity: sha512-eU+GGrZgccNJcsDH5LkXR3PB9M958hxc7sbA8DFJjrv9j4L2P/eZfKhM+QD6wyzpiv+b1BpK0XrYCxkovtjSLw==} engines: {node: '>=4'} @@ -9362,13 +8691,13 @@ packages: pify: 2.3.0 dev: true - /git-semver-tags@5.0.1: - resolution: {integrity: sha512-hIvOeZwRbQ+7YEUmCkHqo8FOLQZCEn18yevLHADlFPZY02KJGsu5FZt9YW/lybfK2uhWFI7Qg/07LekJiTv7iA==} - engines: {node: '>=14'} + /git-semver-tags@4.1.1: + resolution: {integrity: sha512-OWyMt5zBe7xFs8vglMmhM9lRQzCWL3WjHtxNNfJTMngGym7pC1kh8sP6jevfydJ6LP3ZvGxfb6ABYgPUM0mtsA==} + engines: {node: '>=10'} hasBin: true dependencies: meow: 8.1.2 - semver: 7.5.4 + semver: 6.3.1 dev: true /git-up@7.0.0: @@ -9378,8 +8707,8 @@ packages: parse-url: 8.1.0 dev: true - /git-url-parse@13.1.0: - resolution: {integrity: sha512-5FvPJP/70WkIprlUZ33bm4UAaFdjcLkJLpWft1BeZKqwR0uhhNGoKwlUaPtVb4LxCSQ++erHapRak9kWGj+FCA==} + /git-url-parse@13.1.1: + resolution: {integrity: sha512-PCFJyeSSdtnbfhSNRw9Wk96dDCNx+sogTe4YNXeXSJxt7xz5hvXekuRn9JX7m+Mf4OscCu8h+mtAl3+h5Fo8lQ==} dependencies: git-up: 7.0.0 dev: true @@ -9426,7 +8755,7 @@ packages: fs.realpath: 1.0.0 inflight: 1.0.6 inherits: 2.0.4 - minimatch: 3.1.2 + minimatch: 3.0.5 once: 1.4.0 path-is-absolute: 1.0.1 dev: true @@ -9453,16 +8782,6 @@ packages: once: 1.4.0 dev: true - /glob@9.3.5: - resolution: {integrity: sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==} - engines: {node: '>=16 || 14 >=14.17'} - dependencies: - fs.realpath: 1.0.0 - minimatch: 8.0.4 - minipass: 4.2.8 - path-scurry: 1.10.1 - dev: true - /global-dirs@0.1.1: resolution: {integrity: sha512-NknMLn7F2J7aflwFOlGdNIuCDpN3VGoSoB+aap3KABFWbHVn1TCgFC+np23J8W2BiZbjfEw3BFBycSMv1AFblg==} engines: {node: '>=4'} @@ -9489,20 +8808,6 @@ packages: define-properties: 1.2.1 dev: true - /globby@10.0.1: - resolution: {integrity: sha512-sSs4inE1FB2YQiymcmTv6NWENryABjUNPeWhOvmn4SjtKybglsyPZxFB3U1/+L1bYi0rNZDqCLlHyLYDl1Pq5A==} - engines: {node: '>=8'} - dependencies: - '@types/glob': 7.2.0 - array-union: 2.1.0 - dir-glob: 3.0.1 - fast-glob: 3.3.2 - glob: 7.2.3 - ignore: 5.2.4 - merge2: 1.4.1 - slash: 3.0.0 - dev: true - /globby@11.1.0: resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} engines: {node: '>=10'} @@ -9515,41 +8820,12 @@ packages: slash: 3.0.0 dev: true - /globby@14.0.1: - resolution: {integrity: sha512-jOMLD2Z7MAhyG8aJpNOpmziMOP4rPLcc95oQPKXBazW82z+CEgPFBQvEpRUa1KeIMUJo4Wsm+q6uzO/Q/4BksQ==} - engines: {node: '>=18'} - dependencies: - '@sindresorhus/merge-streams': 2.3.0 - fast-glob: 3.3.2 - ignore: 5.2.4 - path-type: 5.0.0 - slash: 5.1.0 - unicorn-magic: 0.1.0 - dev: true - /gopd@1.0.1: resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} dependencies: get-intrinsic: 1.2.2 dev: true - /got@11.8.6: - resolution: {integrity: sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==} - engines: {node: '>=10.19.0'} - dependencies: - '@sindresorhus/is': 4.6.0 - '@szmarczak/http-timer': 4.0.6 - '@types/cacheable-request': 6.0.3 - '@types/responselike': 1.0.3 - cacheable-lookup: 5.0.4 - cacheable-request: 7.0.4 - decompress-response: 6.0.0 - http2-wrapper: 1.0.3 - lowercase-keys: 2.0.0 - p-cancelable: 2.1.1 - responselike: 2.0.1 - dev: true - /graceful-fs@4.2.11: resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} dev: true @@ -9558,10 +8834,6 @@ packages: resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==} dev: true - /graphemer@1.4.0: - resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} - dev: true - /gzip-size@5.1.1: resolution: {integrity: sha512-FNHi6mmoHvs1mxZAds4PpdCS6QG8B4C1krxJsMutgxl5t3+GlRTzzI3NEkifXx2pVsOvJdOGSmIgDhQ55FwdPA==} engines: {node: '>=6'} @@ -9599,10 +8871,6 @@ packages: engines: {node: '>=6'} dev: true - /harmony-reflect@1.6.2: - resolution: {integrity: sha512-HIp/n38R9kQjDEziXyDTuW3vvoxxyxjxFzXLrBr18uB47GnSt+G9D29fqrpM5ZkspMcPICud3XsBJQ4Y2URg8g==} - dev: true - /has-bigints@1.0.2: resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} dev: true @@ -9691,20 +8959,13 @@ packages: lru-cache: 6.0.0 dev: true - /hosted-git-info@6.1.1: - resolution: {integrity: sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /hosted-git-info@5.2.1: + resolution: {integrity: sha512-xIcQYMnhcx2Nr4JTjsFmwwnr9vldugPy9uVm0o87bjqqWMv9GaqsTeT+i99wTl0mk1uLxJtHxLb8kymqTENQsw==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} dependencies: lru-cache: 7.18.3 dev: true - /hosted-git-info@7.0.1: - resolution: {integrity: sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==} - engines: {node: ^16.14.0 || >=18.0.0} - dependencies: - lru-cache: 10.0.1 - dev: true - /hpack.js@2.1.6: resolution: {integrity: sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==} dependencies: @@ -9770,7 +9031,7 @@ packages: lodash: 4.17.21 pretty-error: 4.0.0 tapable: 2.2.1 - webpack: 5.89.0(@swc/core@1.3.107) + webpack: 5.89.0(@swc/core@1.3.16) dev: true /htmlparser2@6.1.0: @@ -9856,14 +9117,6 @@ packages: - debug dev: true - /http2-wrapper@1.0.3: - resolution: {integrity: sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==} - engines: {node: '>=10.19.0'} - dependencies: - quick-lru: 5.1.1 - resolve-alpn: 1.2.1 - dev: true - /https-proxy-agent@5.0.1: resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} engines: {node: '>= 6'} @@ -9909,10 +9162,6 @@ packages: safer-buffer: 2.1.2 dev: true - /icss-replace-symbols@1.1.0: - resolution: {integrity: sha512-chIaY3Vh2mh2Q3RGXttaDIzeiPvaVXJ+C4DAh/w3c37SKZ/U6PGMmuicR2EQQp9bKG8zLMCl7I+PtIoOOPp8Gg==} - dev: true - /icss-utils@5.1.0(postcss@8.4.38): resolution: {integrity: sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==} engines: {node: ^10 || ^12 || >= 14} @@ -9922,13 +9171,6 @@ packages: postcss: 8.4.38 dev: true - /identity-obj-proxy@3.0.0: - resolution: {integrity: sha512-00n6YnVHKrinT9t0d9+5yZC6UBNJANpYEQvL2LlX6Ab9lnmxzIRcEmTPuyGScvl1+jKuCICX1Z0Ab1pPKKdikA==} - engines: {node: '>=4'} - dependencies: - harmony-reflect: 1.6.2 - dev: true - /ieee754@1.2.1: resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} dev: true @@ -9940,13 +9182,6 @@ packages: minimatch: 5.1.6 dev: true - /ignore-walk@6.0.4: - resolution: {integrity: sha512-t7sv42WkwFkyKbivUCglsQW5YWMskWtbEf4MNKX5u/CCWHKSPzN4FtBQGsQZgCLbxOzpVlcbWVK5KB3auIOjSw==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - dependencies: - minimatch: 9.0.3 - dev: true - /ignore@4.0.6: resolution: {integrity: sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==} engines: {node: '>= 4'} @@ -9957,13 +9192,6 @@ packages: engines: {node: '>= 4'} dev: true - /import-cwd@3.0.0: - resolution: {integrity: sha512-4pnzH16plW+hgvRECbDWpQl3cqtvSofHWh44met7ESfZ8UZOWWddm8hEyDTqREJ9RbYHY8gi8DqmaelApoOGMg==} - engines: {node: '>=8'} - dependencies: - import-from: 3.0.0 - dev: true - /import-fresh@2.0.0: resolution: {integrity: sha512-eZ5H8rcgYazHbKC3PG4ClHNykCSxtAhxSSEM+2mb+7evD2CKF5V7c0dNum7AdpDh0ZdICwZY9sRSn8f+KH96sg==} engines: {node: '>=4'} @@ -9980,13 +9208,6 @@ packages: resolve-from: 4.0.0 dev: true - /import-from@3.0.0: - resolution: {integrity: sha512-CiuXOFFSzkU5x/CR0+z7T91Iht4CXgfCxVOFRhh2Zyhg5wOpWvvDLQUsWl+gcN+QscYBjez8hDCt85O7RLDttQ==} - engines: {node: '>=8'} - dependencies: - resolve-from: 5.0.0 - dev: true - /import-local@3.1.0: resolution: {integrity: sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==} engines: {node: '>=8'} @@ -10006,6 +9227,10 @@ packages: engines: {node: '>=8'} dev: true + /infer-owner@1.0.4: + resolution: {integrity: sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==} + dev: true + /inflight@1.0.6: resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} dependencies: @@ -10025,17 +9250,17 @@ packages: resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} dev: true - /init-package-json@5.0.0: - resolution: {integrity: sha512-kBhlSheBfYmq3e0L1ii+VKe3zBTLL5lDCDWR+f9dLmEGSB3MqLlMlsolubSsyI88Bg6EA+BIMlomAnQ1SwgQBw==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /init-package-json@3.0.2: + resolution: {integrity: sha512-YhlQPEjNFqlGdzrBfDNRLhvoSgX7iQRgSxgsNknRQ9ITXFT7UMfVMWhBTOh2Y+25lRnGrv5Xz8yZwQ3ACR6T3A==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} dependencies: - npm-package-arg: 10.1.0 - promzard: 1.0.0 - read: 2.1.0 - read-package-json: 6.0.4 + npm-package-arg: 9.1.2 + promzard: 0.3.0 + read: 1.0.7 + read-package-json: 5.0.2 semver: 7.5.4 validate-npm-package-license: 3.0.4 - validate-npm-package-name: 5.0.0 + validate-npm-package-name: 4.0.0 dev: true /inquirer@8.2.6: @@ -10144,6 +9369,13 @@ packages: engines: {node: '>= 0.4'} dev: true + /is-ci@2.0.0: + resolution: {integrity: sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==} + hasBin: true + dependencies: + ci-info: 2.0.0 + dev: true + /is-ci@3.0.1: resolution: {integrity: sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==} hasBin: true @@ -10261,16 +9493,16 @@ packages: engines: {node: '>=8'} dev: true - /is-path-inside@3.0.3: - resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} - engines: {node: '>=8'} - dev: true - /is-plain-obj@1.1.0: resolution: {integrity: sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==} engines: {node: '>=0.10.0'} dev: true + /is-plain-obj@2.1.0: + resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==} + engines: {node: '>=8'} + dev: true + /is-plain-obj@3.0.0: resolution: {integrity: sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==} engines: {node: '>=10'} @@ -10283,11 +9515,6 @@ packages: isobject: 3.0.1 dev: true - /is-plain-object@3.0.1: - resolution: {integrity: sha512-Xnpx182SBMrr/aBik8y+GuR4U1L9FqMSojwDQwPMmxyC6bvEqly9UBCxhauBF5vNh2gwWJNX6oDV7O+OM4z34g==} - engines: {node: '>=0.10.0'} - dev: true - /is-plain-object@5.0.0: resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==} engines: {node: '>=0.10.0'} @@ -10337,11 +9564,6 @@ packages: engines: {node: '>=0.10.0'} dev: true - /is-stream@2.0.0: - resolution: {integrity: sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==} - engines: {node: '>=8'} - dev: true - /is-stream@2.0.1: resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} engines: {node: '>=8'} @@ -10382,6 +9604,10 @@ packages: which-typed-array: 1.1.13 dev: true + /is-typedarray@1.0.0: + resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==} + dev: true + /is-unicode-supported@0.1.0: resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} engines: {node: '>=10'} @@ -10538,7 +9764,7 @@ packages: '@jest/expect': 29.7.0 '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 20.11.30 + '@types/node': 20.8.7 chalk: 4.1.2 co: 4.6.0 dedent: 1.5.1 @@ -10559,7 +9785,7 @@ packages: - supports-color dev: true - /jest-cli@29.7.0(@types/node@20.4.5): + /jest-cli@29.7.0: resolution: {integrity: sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} hasBin: true @@ -10573,10 +9799,10 @@ packages: '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 chalk: 4.1.2 - create-jest: 29.7.0(@types/node@20.4.5) + create-jest: 29.7.0 exit: 0.1.2 import-local: 3.1.0 - jest-config: 29.7.0(@types/node@20.4.5) + jest-config: 29.7.0(@types/node@20.8.7) jest-util: 29.7.0 jest-validate: 29.7.0 yargs: 17.7.2 @@ -10587,47 +9813,7 @@ packages: - ts-node dev: true - /jest-config@29.7.0(@types/node@20.11.30): - resolution: {integrity: sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - peerDependencies: - '@types/node': '*' - ts-node: '>=9.0.0' - peerDependenciesMeta: - '@types/node': - optional: true - ts-node: - optional: true - dependencies: - '@babel/core': 7.23.2 - '@jest/test-sequencer': 29.7.0 - '@jest/types': 29.6.3 - '@types/node': 20.11.30 - babel-jest: 29.7.0(@babel/core@7.23.2) - chalk: 4.1.2 - ci-info: 3.9.0 - deepmerge: 4.3.1 - glob: 7.2.3 - graceful-fs: 4.2.11 - jest-circus: 29.7.0 - jest-environment-node: 29.7.0 - jest-get-type: 29.6.3 - jest-regex-util: 29.6.3 - jest-resolve: 29.7.0 - jest-runner: 29.7.0 - jest-util: 29.7.0 - jest-validate: 29.7.0 - micromatch: 4.0.5 - parse-json: 5.2.0 - pretty-format: 29.7.0 - slash: 3.0.0 - strip-json-comments: 3.1.1 - transitivePeerDependencies: - - babel-plugin-macros - - supports-color - dev: true - - /jest-config@29.7.0(@types/node@20.4.5): + /jest-config@29.7.0(@types/node@20.8.7): resolution: {integrity: sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} peerDependencies: @@ -10642,7 +9828,7 @@ packages: '@babel/core': 7.23.2 '@jest/test-sequencer': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 20.4.5 + '@types/node': 20.8.7 babel-jest: 29.7.0(@babel/core@7.23.2) chalk: 4.1.2 ci-info: 3.9.0 @@ -10695,8 +9881,8 @@ packages: pretty-format: 29.7.0 dev: true - /jest-environment-jsdom@29.7.0: - resolution: {integrity: sha512-k9iQbsf9OyOfdzWH8HDmrRT0gSIcX+FLNW7IQq94tFX0gynPwqDTW0Ho6iMVNjGz/nb+l/vW3dWM2bbLLpkbXA==} + /jest-environment-jsdom@29.6.4: + resolution: {integrity: sha512-K6wfgUJ16DoMs02JYFid9lOsqfpoVtyJxpRlnTxUHzvZWBnnh2VNGRB9EC1Cro96TQdq5TtSjb3qUjNaJP9IyA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} peerDependencies: canvas: ^2.5.0 @@ -10708,7 +9894,7 @@ packages: '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 '@types/jsdom': 20.0.1 - '@types/node': 20.11.30 + '@types/node': 20.8.7 jest-mock: 29.7.0 jest-util: 29.7.0 jsdom: 20.0.3 @@ -10725,7 +9911,7 @@ packages: '@jest/environment': 29.7.0 '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 20.11.30 + '@types/node': 20.8.7 jest-mock: 29.7.0 jest-util: 29.7.0 dev: true @@ -10741,7 +9927,7 @@ packages: dependencies: '@jest/types': 29.6.3 '@types/graceful-fs': 4.1.8 - '@types/node': 20.11.30 + '@types/node': 20.8.7 anymatch: 3.1.3 fb-watchman: 2.0.2 graceful-fs: 4.2.11 @@ -10776,7 +9962,7 @@ packages: resolution: {integrity: sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@babel/code-frame': 7.24.2 + '@babel/code-frame': 7.22.13 '@jest/types': 29.6.3 '@types/stack-utils': 2.0.2 chalk: 4.1.2 @@ -10792,7 +9978,7 @@ packages: engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: '@jest/types': 29.6.3 - '@types/node': 20.11.30 + '@types/node': 20.8.7 jest-util: 29.7.0 dev: true @@ -10847,7 +10033,7 @@ packages: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 20.11.30 + '@types/node': 20.8.7 chalk: 4.1.2 emittery: 0.13.1 graceful-fs: 4.2.11 @@ -10878,7 +10064,7 @@ packages: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 20.11.30 + '@types/node': 20.8.7 chalk: 4.1.2 cjs-module-lexer: 1.2.3 collect-v8-coverage: 1.0.2 @@ -10902,8 +10088,8 @@ packages: engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: '@babel/core': 7.23.2 - '@babel/generator': 7.24.1 - '@babel/plugin-syntax-jsx': 7.24.1(@babel/core@7.23.2) + '@babel/generator': 7.23.0 + '@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.23.2) '@babel/plugin-syntax-typescript': 7.22.5(@babel/core@7.23.2) '@babel/types': 7.24.0 '@jest/expect-utils': 29.7.0 @@ -10930,7 +10116,7 @@ packages: engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: '@jest/types': 29.6.3 - '@types/node': 20.11.30 + '@types/node': 20.8.7 chalk: 4.1.2 ci-info: 3.9.0 graceful-fs: 4.2.11 @@ -10955,7 +10141,7 @@ packages: dependencies: '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 20.11.30 + '@types/node': 20.8.7 ansi-escapes: 4.3.2 chalk: 4.1.2 emittery: 0.13.1 @@ -10967,7 +10153,7 @@ packages: resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==} engines: {node: '>= 10.13.0'} dependencies: - '@types/node': 20.11.30 + '@types/node': 20.8.7 merge-stream: 2.0.0 supports-color: 8.1.1 dev: true @@ -10976,14 +10162,14 @@ packages: resolution: {integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@types/node': 20.11.30 + '@types/node': 20.8.7 jest-util: 29.7.0 merge-stream: 2.0.0 supports-color: 8.1.1 dev: true - /jest@29.7.0(@types/node@20.4.5): - resolution: {integrity: sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==} + /jest@29.5.0: + resolution: {integrity: sha512-juMg3he2uru1QoXX078zTa7pO85QyB9xajZc6bU+d9yEGwrKX6+vGmJQ3UdVZsvTEUARIdObzH68QItim6OSSQ==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} hasBin: true peerDependencies: @@ -10995,7 +10181,7 @@ packages: '@jest/core': 29.7.0 '@jest/types': 29.6.3 import-local: 3.1.0 - jest-cli: 29.7.0(@types/node@20.4.5) + jest-cli: 29.7.0 transitivePeerDependencies: - '@types/node' - babel-plugin-macros @@ -11013,6 +10199,13 @@ packages: '@sideway/pinpoint': 2.0.0 dev: true + /jora@1.0.0-beta.8: + resolution: {integrity: sha512-f3WpYwfDTlhfSdyCkAlAXSKRpwZYBgCDnyWmA9D0yyItCTFnFefKtvFpaczrj/FItkgDkHiewgFuHsgh4TmokA==} + engines: {node: ^10.12.0 || ^12.20.0 || ^14.13.0 || >=15.0.0} + dependencies: + '@discoveryjs/natural-compare': 1.1.0 + dev: true + /js-beautify@1.15.1: resolution: {integrity: sha512-ESjNzSlt/sWE8sciZH8kBF8BPlwXPwhR6pWKAw8bw4Bwj+iZcnKW6ONWUutJ7eObuBZQpiIb8S7OYspWrKt7rA==} engines: {node: '>=14'} @@ -11037,7 +10230,6 @@ packages: /js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - dev: true /js-yaml@3.14.1: resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} @@ -11118,11 +10310,6 @@ packages: resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} dev: true - /json-parse-even-better-errors@3.0.1: - resolution: {integrity: sha512-aatBvbL26wVUCLmbWdCpeu9iF5wOyWpagiKkInA+kfws3sWdBrTnsvN2CKcyCYyUrc7rebNBlK6+kteg7ksecg==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - dev: true - /json-schema-traverse@0.4.1: resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} dev: true @@ -11135,6 +10322,10 @@ packages: resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} dev: true + /json-stringify-nice@1.1.4: + resolution: {integrity: sha512-5Z5RFW63yxReJ7vANgW6eZFGWaQvnPE3WNmZoOJrSkGju2etKA2L5rrOa1sm877TVTFt57A80BH1bArcmlLfPw==} + dev: true + /json-stringify-safe@5.0.1: resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==} dev: true @@ -11185,6 +10376,14 @@ packages: object.values: 1.1.7 dev: true + /just-diff-apply@5.5.0: + resolution: {integrity: sha512-OYTthRfSh55WOItVqwpefPtNt2VdKsq5AnAK6apdtR6yCH8pr0CmSr710J0Mf+WdQy7K/OzMy7K2MgAfdQURDw==} + dev: true + + /just-diff@5.2.0: + resolution: {integrity: sha512-6ufhP9SHjb7jibNFrNxyFZ6od3g+An6Ai9mhGRvcYe8UJlH0prseN64M+6ZBBUoKYHZsitDP42gAJ8+eVWr3lw==} + dev: true + /keyv@4.5.4: resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} dependencies: @@ -11242,86 +10441,34 @@ packages: shell-quote: 1.8.1 dev: true - /lerna@7.4.1(@swc/core@1.3.107): - resolution: {integrity: sha512-c6sOO0dlJU689vStIsko+zjRdn2fJOWH8aNjePLNv2AubAdABKqfrDCpE2H/Q7+O80Duo68ZQtWYkUUk7hRWDw==} - engines: {node: '>=16.0.0'} + /lerna@6.0.3(@swc/core@1.3.16): + resolution: {integrity: sha512-DzRCTZGoDI502daViNK1Ha+HPAVvTp72xshDOQ6o6SWCDTvnxFI3hGF6CBqGWnOoPwEOlQowHEIcPw5PjoMz8A==} + engines: {node: ^14.15.0 || >=16.0.0} hasBin: true dependencies: - '@lerna/child-process': 7.4.1 - '@lerna/create': 7.4.1(@swc/core@1.3.107)(typescript@5.1.6) - '@npmcli/run-script': 6.0.2 - '@nx/devkit': 16.10.0(nx@16.10.0) - '@octokit/plugin-enterprise-rest': 6.0.1 - '@octokit/rest': 19.0.11 - byte-size: 8.1.1 - chalk: 4.1.0 - clone-deep: 4.0.1 - cmd-shim: 6.0.1 - columnify: 1.6.0 - conventional-changelog-angular: 6.0.0 - conventional-changelog-core: 5.0.1 - conventional-recommended-bump: 7.0.1 - cosmiconfig: 8.3.6(typescript@5.1.6) - dedent: 0.7.0 - envinfo: 7.8.1 - execa: 5.0.0 - fs-extra: 11.2.0 - get-port: 5.1.1 - get-stream: 6.0.0 - git-url-parse: 13.1.0 - glob-parent: 5.1.2 - globby: 11.1.0 - graceful-fs: 4.2.11 - has-unicode: 2.0.1 + '@lerna/add': 6.0.3 + '@lerna/bootstrap': 6.0.3 + '@lerna/changed': 6.0.3 + '@lerna/clean': 6.0.3 + '@lerna/cli': 6.0.3 + '@lerna/command': 6.0.3 + '@lerna/create': 6.0.3 + '@lerna/diff': 6.0.3 + '@lerna/exec': 6.0.3 + '@lerna/import': 6.0.3 + '@lerna/info': 6.0.3 + '@lerna/init': 6.0.3 + '@lerna/link': 6.0.3 + '@lerna/list': 6.0.3 + '@lerna/publish': 6.0.3(nx@15.3.3) + '@lerna/run': 6.0.3 + '@lerna/version': 6.0.3(nx@15.3.3) + '@nrwl/devkit': 15.9.7(nx@15.3.3) import-local: 3.1.0 - ini: 1.3.8 - init-package-json: 5.0.0 inquirer: 8.2.6 - is-ci: 3.0.1 - is-stream: 2.0.0 - jest-diff: 29.7.0 - js-yaml: 4.1.0 - libnpmaccess: 7.0.2 - libnpmpublish: 7.3.0 - load-json-file: 6.2.0 - lodash: 4.17.21 - make-dir: 4.0.0 - minimatch: 3.0.5 - multimatch: 5.0.0 - node-fetch: 2.6.7 - npm-package-arg: 8.1.1 - npm-packlist: 5.1.1 - npm-registry-fetch: 14.0.5 npmlog: 6.0.2 - nx: 16.10.0(@swc/core@1.3.107) - p-map: 4.0.0 - p-map-series: 2.1.0 - p-pipe: 3.1.0 - p-queue: 6.6.2 - p-reduce: 2.1.0 - p-waterfall: 2.1.1 - pacote: 15.2.0 - pify: 5.0.0 - read-cmd-shim: 4.0.0 - read-package-json: 6.0.4 - resolve-from: 5.0.0 - rimraf: 4.4.1 - semver: 7.5.4 - signal-exit: 3.0.7 - slash: 3.0.0 - ssri: 9.0.1 - strong-log-transformer: 2.1.0 - tar: 6.1.11 - temp-dir: 1.0.0 - typescript: 5.1.6 - upath: 2.0.1 - uuid: 9.0.1 - validate-npm-package-license: 3.0.4 - validate-npm-package-name: 5.0.0 - write-file-atomic: 5.0.1 - write-pkg: 4.0.0 - yargs: 16.2.0 - yargs-parser: 20.2.4 + nx: 15.3.3(@swc/core@1.3.16) + typescript: 4.9.5 transitivePeerDependencies: - '@swc-node/register' - '@swc/core' @@ -11344,29 +10491,30 @@ packages: type-check: 0.4.0 dev: true - /libnpmaccess@7.0.2: - resolution: {integrity: sha512-vHBVMw1JFMTgEk15zRsJuSAg7QtGGHpUSEfnbcRL1/gTBag9iEfJbyjpDmdJmwMhvpoLoNBtdAUCdGnaP32hhw==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /libnpmaccess@6.0.4: + resolution: {integrity: sha512-qZ3wcfIyUoW0+qSFkMBovcTrSGJ3ZeyvpR7d5N9pEYv/kXs8sHP2wiqEIXBKLFrZlmM0kR0RJD7mtfLngtlLag==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} dependencies: - npm-package-arg: 10.1.0 - npm-registry-fetch: 14.0.5 + aproba: 2.0.0 + minipass: 3.3.6 + npm-package-arg: 9.1.2 + npm-registry-fetch: 13.3.1 transitivePeerDependencies: + - bluebird - supports-color dev: true - /libnpmpublish@7.3.0: - resolution: {integrity: sha512-fHUxw5VJhZCNSls0KLNEG0mCD2PN1i14gH5elGOgiVnU3VgTcRahagYP2LKI1m0tFCJ+XrAm0zVYyF5RCbXzcg==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /libnpmpublish@6.0.5: + resolution: {integrity: sha512-LUR08JKSviZiqrYTDfywvtnsnxr+tOvBU0BF8H+9frt7HMvc6Qn6F8Ubm72g5hDTHbq8qupKfDvDAln2TVPvFg==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} dependencies: - ci-info: 3.9.0 - normalize-package-data: 5.0.0 - npm-package-arg: 10.1.0 - npm-registry-fetch: 14.0.5 - proc-log: 3.0.0 + normalize-package-data: 4.0.1 + npm-package-arg: 9.1.2 + npm-registry-fetch: 13.3.1 semver: 7.5.4 - sigstore: 1.9.0 - ssri: 10.0.5 + ssri: 9.0.1 transitivePeerDependencies: + - bluebird - supports-color dev: true @@ -11375,20 +10523,10 @@ packages: engines: {node: '>=10'} dev: true - /lilconfig@3.1.1: - resolution: {integrity: sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ==} - engines: {node: '>=14'} - dev: true - /lines-and-columns@1.2.4: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} dev: true - /lines-and-columns@2.0.4: - resolution: {integrity: sha512-wM1+Z03eypVAVUCE7QdSqpVIvelbOakn1M0bPDoA4SGWPx3sNDVUiMo3L6To6WWGClB7VyXnhQ4Sn7gxiJbE6A==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - dev: true - /lint-staged@11.2.3: resolution: {integrity: sha512-Tfmhk8O2XFMD25EswHPv+OYhUjsijy5D7liTdxeXvhG2rsadmOLFtyj8lmlfoFFXY8oXWAIOKpoI+lJe1DB1mw==} hasBin: true @@ -11482,11 +10620,6 @@ packages: json5: 2.2.3 dev: true - /loader-utils@3.2.1: - resolution: {integrity: sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==} - engines: {node: '>= 12.13.0'} - dev: true - /locate-path@2.0.0: resolution: {integrity: sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==} engines: {node: '>=4'} @@ -11509,10 +10642,6 @@ packages: p-locate: 5.0.0 dev: true - /lodash.camelcase@4.3.0: - resolution: {integrity: sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==} - dev: true - /lodash.debounce@4.0.8: resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} dev: true @@ -11592,7 +10721,6 @@ packages: hasBin: true dependencies: js-tokens: 4.0.0 - dev: true /lower-case@2.0.2: resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==} @@ -11600,11 +10728,6 @@ packages: tslib: 2.6.2 dev: true - /lowercase-keys@2.0.0: - resolution: {integrity: sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==} - engines: {node: '>=8'} - dev: true - /lru-cache@10.0.1: resolution: {integrity: sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==} engines: {node: 14 || >=16.14} @@ -11640,8 +10763,9 @@ packages: hasBin: true dev: true - /magic-string@0.25.9: - resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==} + /magic-string@0.26.7: + resolution: {integrity: sha512-hX9XH3ziStPoPhJxLq1syWuZMxbDvGNbVchfrdCtanC7D13888bMFow61x8axrx+GfHLtVeAx2kxL7tTGRl+Ow==} + engines: {node: '>=12'} dependencies: sourcemap-codec: 1.4.8 dev: true @@ -11679,6 +10803,31 @@ packages: resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} dev: true + /make-fetch-happen@10.2.1: + resolution: {integrity: sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + agentkeepalive: 4.5.0 + cacache: 16.1.3 + http-cache-semantics: 4.1.1 + http-proxy-agent: 5.0.0 + https-proxy-agent: 5.0.1 + is-lambda: 1.0.1 + lru-cache: 7.18.3 + minipass: 3.3.6 + minipass-collect: 1.0.2 + minipass-fetch: 2.1.2 + minipass-flush: 1.0.5 + minipass-pipeline: 1.2.4 + negotiator: 0.6.3 + promise-retry: 2.0.1 + socks-proxy-agent: 7.0.0 + ssri: 9.0.1 + transitivePeerDependencies: + - bluebird + - supports-color + dev: true + /make-fetch-happen@11.1.1: resolution: {integrity: sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -11718,6 +10867,14 @@ packages: engines: {node: '>=8'} dev: true + /md5@2.3.0: + resolution: {integrity: sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==} + dependencies: + charenc: 0.0.2 + crypt: 0.0.2 + is-buffer: 1.1.6 + dev: true + /mdn-data@2.0.14: resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==} dev: true @@ -11837,16 +10994,6 @@ packages: engines: {node: '>=6'} dev: true - /mimic-response@1.0.1: - resolution: {integrity: sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==} - engines: {node: '>=4'} - dev: true - - /mimic-response@3.1.0: - resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} - engines: {node: '>=10'} - dev: true - /min-indent@1.0.1: resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} engines: {node: '>=4'} @@ -11860,12 +11007,7 @@ packages: dependencies: schema-utils: 4.2.0 tapable: 2.2.1 - webpack: 5.89.0(@swc/core@1.3.107) - dev: true - - /mini-svg-data-uri@1.4.4: - resolution: {integrity: sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg==} - hasBin: true + webpack: 5.89.0(@swc/core@1.3.16) dev: true /minimalistic-assert@1.0.1: @@ -11891,13 +11033,6 @@ packages: brace-expansion: 2.0.1 dev: true - /minimatch@8.0.4: - resolution: {integrity: sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==} - engines: {node: '>=16 || 14 >=14.17'} - dependencies: - brace-expansion: 2.0.1 - dev: true - /minimatch@9.0.1: resolution: {integrity: sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==} engines: {node: '>=16 || 14 >=14.17'} @@ -11932,6 +11067,17 @@ packages: minipass: 3.3.6 dev: true + /minipass-fetch@2.1.2: + resolution: {integrity: sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + minipass: 3.3.6 + minipass-sized: 1.0.3 + minizlib: 2.1.2 + optionalDependencies: + encoding: 0.1.13 + dev: true + /minipass-fetch@3.0.4: resolution: {integrity: sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -11978,11 +11124,6 @@ packages: yallist: 4.0.0 dev: true - /minipass@4.2.8: - resolution: {integrity: sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==} - engines: {node: '>=8'} - dev: true - /minipass@5.0.0: resolution: {integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==} engines: {node: '>=8'} @@ -12006,6 +11147,15 @@ packages: engines: {node: '>= 8.0.0'} dev: true + /mkdirp-infer-owner@2.0.0: + resolution: {integrity: sha512-sdqtiFt3lkOaYvTXSRIUjkIdPTcxgv5+fgqYE/5qgwdw12cOrAuzzgzvVExIkH/ul1oeHN3bCLOWSG3XOqbKKw==} + engines: {node: '>=10'} + dependencies: + chownr: 2.0.0 + infer-owner: 1.0.4 + mkdirp: 1.0.4 + dev: true + /mkdirp@0.5.6: resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} hasBin: true @@ -12068,11 +11218,6 @@ packages: resolution: {integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==} dev: true - /mute-stream@1.0.0: - resolution: {integrity: sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - dev: true - /mz@2.7.0: resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} dependencies: @@ -12092,16 +11237,10 @@ packages: engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true - /nanoid@5.0.6: - resolution: {integrity: sha512-rRq0eMHoGZxlvaFOUdK1Ev83Bd1IgzzR+WJ3IbDJ7QOSdAxYjlurSPqFs9s4lJg29RT6nPwizFtJhQS6V5xgiA==} - engines: {node: ^18 || >=20} - hasBin: true - dev: true - - /nanospinner@1.1.0: - resolution: {integrity: sha512-yFvNYMig4AthKYfHFl1sLj7B2nkHL4lzdig4osvl9/LdGbXwrdFRoqBS98gsEsOakr0yH+r5NZ/1Y9gdVB8trA==} + /nanospinner@0.2.2: + resolution: {integrity: sha512-sy9s0FNv/N2XY78uUwrgSm4e93Oy/w43GqDTxVh7cH7LDcG4dtNJJkWRIFUmC3EDp/lYIbPWpVysofYca0Yv2Q==} dependencies: - picocolors: 1.0.0 + picocolors: 0.2.1 dev: true /natural-compare@1.4.0: @@ -12117,16 +11256,6 @@ packages: resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} dev: true - /nice-napi@1.0.2: - resolution: {integrity: sha512-px/KnJAJZf5RuBGcfD+Sp2pAKq0ytz8j+1NehvgIGFkvtvFrDM3T8E4x/JJODXK9WZow8RRGrbA9QQ3hs+pDhA==} - os: ['!win32'] - requiresBuild: true - dependencies: - node-addon-api: 3.2.1 - node-gyp-build: 4.6.1 - dev: true - optional: true - /nice-try@1.0.5: resolution: {integrity: sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==} dev: true @@ -12146,18 +11275,6 @@ packages: resolution: {integrity: sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==} dev: true - /node-fetch@2.6.7: - resolution: {integrity: sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==} - engines: {node: 4.x || >=6.0.0} - peerDependencies: - encoding: ^0.1.0 - peerDependenciesMeta: - encoding: - optional: true - dependencies: - whatwg-url: 5.0.0 - dev: true - /node-fetch@2.7.0: resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} engines: {node: 4.x || >=6.0.0} @@ -12209,10 +11326,6 @@ packages: resolution: {integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==} dev: true - /node-machine-id@1.1.12: - resolution: {integrity: sha512-QNABxbrPa3qEIfrE6GOJ7BYIuignnJw7iQ2YPbc3Nla1HzRJjXzZOiikfF8m7eAMfichLt3M4VgLOetqgDmgGQ==} - dev: true - /node-releases@2.0.13: resolution: {integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==} dev: true @@ -12221,6 +11334,14 @@ packages: resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} dev: true + /nopt@5.0.0: + resolution: {integrity: sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==} + engines: {node: '>=6'} + hasBin: true + dependencies: + abbrev: 1.1.1 + dev: true + /nopt@6.0.0: resolution: {integrity: sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==} engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} @@ -12256,11 +11377,11 @@ packages: validate-npm-package-license: 3.0.4 dev: true - /normalize-package-data@5.0.0: - resolution: {integrity: sha512-h9iPVIfrVZ9wVYQnxFgtw1ugSvGEMOlyPWWtm8BMJhnwyEL/FLbYbTY3V3PpjI/BUK67n9PEWDu6eHzu1fB15Q==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /normalize-package-data@4.0.1: + resolution: {integrity: sha512-EBk5QKKuocMJhB3BILuKhmaPjI8vNRSpIfO9woLC6NyHVkKKdVEdAO1mrT0ZfxNR1lKwCcTkuZfmGIFdizZ8Pg==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} dependencies: - hosted-git-info: 6.1.1 + hosted-git-info: 5.2.1 is-core-module: 2.13.1 semver: 7.5.4 validate-npm-package-license: 3.0.4 @@ -12287,16 +11408,16 @@ packages: npm-normalize-package-bin: 1.0.1 dev: true - /npm-bundled@3.0.0: - resolution: {integrity: sha512-Vq0eyEQy+elFpzsKjMss9kxqb9tG3YHg4dsyWuUENuzvSUWe1TCnW/vV9FkhvBk/brEDoDiVd+M1Btosa6ImdQ==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /npm-bundled@2.0.1: + resolution: {integrity: sha512-gZLxXdjEzE/+mOstGDqR6b0EkhJ+kM6fxM6vUuckuctuVPh80Q6pw/rSZj9s4Gex9GxWtIicO1pc8DB9KZWudw==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} dependencies: - npm-normalize-package-bin: 3.0.1 + npm-normalize-package-bin: 2.0.0 dev: true - /npm-install-checks@6.3.0: - resolution: {integrity: sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /npm-install-checks@5.0.0: + resolution: {integrity: sha512-65lUsMI8ztHCxFz5ckCEC44DRvEGdZX5usQFriauxHEwt7upv1FKaQEmAtU0YnOAdwuNWCmk64xYiQABNrEyLA==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} dependencies: semver: 7.5.4 dev: true @@ -12305,29 +11426,9 @@ packages: resolution: {integrity: sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==} dev: true - /npm-normalize-package-bin@3.0.1: - resolution: {integrity: sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - dev: true - - /npm-package-arg@10.1.0: - resolution: {integrity: sha512-uFyyCEmgBfZTtrKk/5xDfHp6+MdrqGotX/VoOyEEl3mBwiEE5FlBaePanazJSVMPT7vKepcjYBY2ztg9A3yPIA==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - dependencies: - hosted-git-info: 6.1.1 - proc-log: 3.0.0 - semver: 7.5.4 - validate-npm-package-name: 5.0.0 - dev: true - - /npm-package-arg@11.0.1: - resolution: {integrity: sha512-M7s1BD4NxdAvBKUPqqRW957Xwcl/4Zvo8Aj+ANrzvIPzGJZElrH7Z//rSaec2ORcND6FHHLnZeY8qgTpXDMFQQ==} - engines: {node: ^16.14.0 || >=18.0.0} - dependencies: - hosted-git-info: 7.0.1 - proc-log: 3.0.0 - semver: 7.5.4 - validate-npm-package-name: 5.0.0 + /npm-normalize-package-bin@2.0.0: + resolution: {integrity: sha512-awzfKUO7v0FscrSpRoogyNm0sajikhBWpU0QMrW09AMi9n1PoKU6WaIqUzuJSQnpciZZmJ/jMZ2Egfmb/9LiWQ==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} dev: true /npm-package-arg@8.1.1: @@ -12339,46 +11440,50 @@ packages: validate-npm-package-name: 3.0.0 dev: true - /npm-packlist@5.1.1: - resolution: {integrity: sha512-UfpSvQ5YKwctmodvPPkK6Fwk603aoVsf8AEbmVKAEECrfvL8SSe1A2YIwrJ6xmTHAITKPwwZsWo7WwEbNk0kxw==} + /npm-package-arg@9.1.2: + resolution: {integrity: sha512-pzd9rLEx4TfNJkovvlBSLGhq31gGu2QDexFPWT19yCDh0JgnRhlBLNo5759N0AJmBk+kQ9Y/hXoLnlgFD+ukmg==} engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} - hasBin: true dependencies: - glob: 8.1.0 - ignore-walk: 5.0.1 - npm-bundled: 1.1.2 - npm-normalize-package-bin: 1.0.1 + hosted-git-info: 5.2.1 + proc-log: 2.0.1 + semver: 7.5.4 + validate-npm-package-name: 4.0.0 dev: true - /npm-packlist@7.0.4: - resolution: {integrity: sha512-d6RGEuRrNS5/N84iglPivjaJPxhDbZmlbTwTDX2IbcRHG5bZCdtysYMhwiPvcF4GisXHGn7xsxv+GQ7T/02M5Q==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /npm-packlist@5.1.3: + resolution: {integrity: sha512-263/0NGrn32YFYi4J533qzrQ/krmmrWwhKkzwTuM4f/07ug51odoaNjUexxO4vxlzURHcmYMH1QjvHjsNDKLVg==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + hasBin: true dependencies: - ignore-walk: 6.0.4 + glob: 8.1.0 + ignore-walk: 5.0.1 + npm-bundled: 2.0.1 + npm-normalize-package-bin: 2.0.0 dev: true - /npm-pick-manifest@8.0.2: - resolution: {integrity: sha512-1dKY+86/AIiq1tkKVD3l0WI+Gd3vkknVGAggsFeBkTvbhMQ1OND/LKkYv4JtXPKUJ8bOTCyLiqEg2P6QNdK+Gg==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /npm-pick-manifest@7.0.2: + resolution: {integrity: sha512-gk37SyRmlIjvTfcYl6RzDbSmS9Y4TOBXfsPnoYqTHARNgWbyDiCSMLUpmALDj4jjcTZpURiEfsSHJj9k7EV4Rw==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} dependencies: - npm-install-checks: 6.3.0 - npm-normalize-package-bin: 3.0.1 - npm-package-arg: 10.1.0 + npm-install-checks: 5.0.0 + npm-normalize-package-bin: 2.0.0 + npm-package-arg: 9.1.2 semver: 7.5.4 dev: true - /npm-registry-fetch@14.0.5: - resolution: {integrity: sha512-kIDMIo4aBm6xg7jOttupWZamsZRkAqMqwqqbVXnUqstY5+tapvv6bkH/qMR76jdgV+YljEUCyWx3hRYMrJiAgA==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /npm-registry-fetch@13.3.1: + resolution: {integrity: sha512-eukJPi++DKRTjSBRcDZSDDsGqRK3ehbxfFUcgaRd0Yp6kRwOwh2WVn0r+8rMB4nnuzvAk6rQVzl6K5CkYOmnvw==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} dependencies: - make-fetch-happen: 11.1.1 - minipass: 5.0.0 - minipass-fetch: 3.0.4 + make-fetch-happen: 10.2.1 + minipass: 3.3.6 + minipass-fetch: 2.1.2 minipass-json-stream: 1.0.1 minizlib: 2.1.2 - npm-package-arg: 10.1.0 - proc-log: 3.0.0 + npm-package-arg: 9.1.2 + proc-log: 2.0.1 transitivePeerDependencies: + - bluebird - supports-color dev: true @@ -12416,130 +11521,55 @@ packages: resolution: {integrity: sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ==} dev: true - /nx@16.10.0(@swc/core@1.3.107): - resolution: {integrity: sha512-gZl4iCC0Hx0Qe1VWmO4Bkeul2nttuXdPpfnlcDKSACGu3ZIo+uySqwOF8yBAxSTIf8xe2JRhgzJN1aFkuezEBg==} + /nx@15.3.3(@swc/core@1.3.16): + resolution: {integrity: sha512-yR102AlVW5Sb7X1e9cyR+0h44RD6c3eLJbAZ0yVFKPCKw+zQTdGvAqITtB6ZeFnPkg6Qq6f1oWu6G0n6f2cTpw==} hasBin: true requiresBuild: true peerDependencies: - '@swc-node/register': ^1.6.7 - '@swc/core': ^1.3.85 + '@swc-node/register': ^1.4.2 + '@swc/core': ^1.2.173 peerDependenciesMeta: '@swc-node/register': optional: true '@swc/core': optional: true dependencies: - '@nrwl/tao': 16.10.0(@swc/core@1.3.107) + '@nrwl/cli': 15.3.3(@swc/core@1.3.16) + '@nrwl/tao': 15.3.3(@swc/core@1.3.16) '@parcel/watcher': 2.0.4 - '@swc/core': 1.3.107 + '@swc/core': 1.3.16 '@yarnpkg/lockfile': 1.1.0 - '@yarnpkg/parsers': 3.0.0-rc.46 + '@yarnpkg/parsers': 3.0.0 '@zkochan/js-yaml': 0.0.6 axios: 1.6.8 - chalk: 4.1.2 + chalk: 4.1.0 + chokidar: 3.5.3 cli-cursor: 3.1.0 cli-spinners: 2.6.1 - cliui: 8.0.1 - dotenv: 16.3.2 - dotenv-expand: 10.0.0 + cliui: 7.0.4 + dotenv: 10.0.0 enquirer: 2.3.6 + fast-glob: 3.2.7 figures: 3.2.0 flat: 5.0.2 - fs-extra: 11.2.0 + fs-extra: 10.1.0 glob: 7.1.4 ignore: 5.2.4 - jest-diff: 29.7.0 js-yaml: 4.1.0 jsonc-parser: 3.2.0 - lines-and-columns: 2.0.4 minimatch: 3.0.5 - node-machine-id: 1.1.12 - npm-run-path: 4.0.1 - open: 8.4.2 - semver: 7.5.3 - string-width: 4.2.3 - strong-log-transformer: 2.1.0 - tar-stream: 2.2.0 - tmp: 0.2.1 - tsconfig-paths: 4.2.0 - tslib: 2.6.2 - v8-compile-cache: 2.3.0 - yargs: 17.7.2 - yargs-parser: 21.1.1 - optionalDependencies: - '@nx/nx-darwin-arm64': 16.10.0 - '@nx/nx-darwin-x64': 16.10.0 - '@nx/nx-freebsd-x64': 16.10.0 - '@nx/nx-linux-arm-gnueabihf': 16.10.0 - '@nx/nx-linux-arm64-gnu': 16.10.0 - '@nx/nx-linux-arm64-musl': 16.10.0 - '@nx/nx-linux-x64-gnu': 16.10.0 - '@nx/nx-linux-x64-musl': 16.10.0 - '@nx/nx-win32-arm64-msvc': 16.10.0 - '@nx/nx-win32-x64-msvc': 16.10.0 - transitivePeerDependencies: - - debug - dev: true - - /nx@18.3.3(@swc/core@1.3.107): - resolution: {integrity: sha512-GqC5ANfTWV6SFbgquZwuRMI2Z2nO0c0Yx4JzM3x32aJOgXsmRml3WcV0a5648bIXSen34gylHYl2EHaxVWkzNQ==} - hasBin: true - requiresBuild: true - peerDependencies: - '@swc-node/register': ^1.8.0 - '@swc/core': ^1.3.85 - peerDependenciesMeta: - '@swc-node/register': - optional: true - '@swc/core': - optional: true - dependencies: - '@nrwl/tao': 18.3.3(@swc/core@1.3.107) - '@swc/core': 1.3.107 - '@yarnpkg/lockfile': 1.1.0 - '@yarnpkg/parsers': 3.0.0-rc.46 - '@zkochan/js-yaml': 0.0.6 - axios: 1.6.8 - chalk: 4.1.2 - cli-cursor: 3.1.0 - cli-spinners: 2.6.1 - cliui: 8.0.1 - dotenv: 16.3.2 - dotenv-expand: 10.0.0 - enquirer: 2.3.6 - figures: 3.2.0 - flat: 5.0.2 - fs-extra: 11.2.0 - ignore: 5.2.4 - jest-diff: 29.7.0 - js-yaml: 4.1.0 - jsonc-parser: 3.2.0 - lines-and-columns: 2.0.4 - minimatch: 9.0.3 - node-machine-id: 1.1.12 npm-run-path: 4.0.1 open: 8.4.2 - ora: 5.3.0 semver: 7.5.4 string-width: 4.2.3 strong-log-transformer: 2.1.0 tar-stream: 2.2.0 tmp: 0.2.1 - tsconfig-paths: 4.2.0 + tsconfig-paths: 3.14.2 tslib: 2.6.2 + v8-compile-cache: 2.3.0 yargs: 17.7.2 yargs-parser: 21.1.1 - optionalDependencies: - '@nx/nx-darwin-arm64': 18.3.3 - '@nx/nx-darwin-x64': 18.3.3 - '@nx/nx-freebsd-x64': 18.3.3 - '@nx/nx-linux-arm-gnueabihf': 18.3.3 - '@nx/nx-linux-arm64-gnu': 18.3.3 - '@nx/nx-linux-arm64-musl': 18.3.3 - '@nx/nx-linux-x64-gnu': 18.3.3 - '@nx/nx-linux-x64-musl': 18.3.3 - '@nx/nx-win32-arm64-msvc': 18.3.3 - '@nx/nx-win32-x64-msvc': 18.3.3 transitivePeerDependencies: - debug dev: true @@ -12547,7 +11577,6 @@ packages: /object-assign@4.1.1: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} engines: {node: '>=0.10.0'} - dev: true /object-inspect@1.13.1: resolution: {integrity: sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==} @@ -12672,20 +11701,6 @@ packages: type-check: 0.4.0 dev: true - /ora@5.3.0: - resolution: {integrity: sha512-zAKMgGXUim0Jyd6CXK9lraBnD3H5yPGBPPOkC23a2BG6hsm4Zu6OQSjQuEtV0BHDf4aKHcUFvJiGRrFuW3MG8g==} - engines: {node: '>=10'} - dependencies: - bl: 4.1.0 - chalk: 4.1.2 - cli-cursor: 3.1.0 - cli-spinners: 2.9.1 - is-interactive: 1.0.0 - log-symbols: 4.1.0 - strip-ansi: 6.0.1 - wcwidth: 1.0.1 - dev: true - /ora@5.4.1: resolution: {integrity: sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==} engines: {node: '>=10'} @@ -12701,13 +11716,6 @@ packages: wcwidth: 1.0.1 dev: true - /os-filter-obj@2.0.0: - resolution: {integrity: sha512-uksVLsqG3pVdzzPvmAHpBK0wKxYItuzZr7SziusRPoz67tGV8rL1szZ6IdeUrbqLjGDwApBtN29eEE3IqGHOjg==} - engines: {node: '>=4'} - dependencies: - arch: 2.2.0 - dev: true - /os-tmpdir@1.0.2: resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} engines: {node: '>=0.10.0'} @@ -12717,11 +11725,6 @@ packages: resolution: {integrity: sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q==} dev: true - /p-cancelable@2.1.1: - resolution: {integrity: sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==} - engines: {node: '>=8'} - dev: true - /p-filter@2.1.0: resolution: {integrity: sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw==} engines: {node: '>=8'} @@ -12843,34 +11846,41 @@ packages: p-reduce: 2.1.0 dev: true - /pacote@15.2.0: - resolution: {integrity: sha512-rJVZeIwHTUta23sIZgEIM62WYwbmGbThdbnkt81ravBplQv+HjyroqnLRNH2+sLJHcGZmLRmhPwACqhfTcOmnA==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /pacote@13.6.2: + resolution: {integrity: sha512-Gu8fU3GsvOPkak2CkbojR7vjs3k3P9cA6uazKTHdsdV0gpCEQq2opelnEv30KRQWgVzP5Vd/5umjcedma3MKtg==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} hasBin: true dependencies: - '@npmcli/git': 4.1.0 - '@npmcli/installed-package-contents': 2.0.2 - '@npmcli/promise-spawn': 6.0.2 - '@npmcli/run-script': 6.0.2 - cacache: 17.1.4 - fs-minipass: 3.0.3 - minipass: 5.0.0 - npm-package-arg: 10.1.0 - npm-packlist: 7.0.4 - npm-pick-manifest: 8.0.2 - npm-registry-fetch: 14.0.5 - proc-log: 3.0.0 + '@npmcli/git': 3.0.2 + '@npmcli/installed-package-contents': 1.0.7 + '@npmcli/promise-spawn': 3.0.0 + '@npmcli/run-script': 4.2.1 + cacache: 16.1.3 + chownr: 2.0.0 + fs-minipass: 2.1.0 + infer-owner: 1.0.4 + minipass: 3.3.6 + mkdirp: 1.0.4 + npm-package-arg: 9.1.2 + npm-packlist: 5.1.3 + npm-pick-manifest: 7.0.2 + npm-registry-fetch: 13.3.1 + proc-log: 2.0.1 promise-retry: 2.0.1 - read-package-json: 6.0.4 - read-package-json-fast: 3.0.2 - sigstore: 1.9.0 - ssri: 10.0.5 + read-package-json: 5.0.2 + read-package-json-fast: 2.0.3 + rimraf: 3.0.2 + ssri: 9.0.1 tar: 6.2.0 transitivePeerDependencies: - bluebird - supports-color dev: true + /pako@2.1.0: + resolution: {integrity: sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==} + dev: true + /param-case@3.0.4: resolution: {integrity: sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==} dependencies: @@ -12885,6 +11895,15 @@ packages: callsites: 3.1.0 dev: true + /parse-conflict-json@2.0.2: + resolution: {integrity: sha512-jDbRGb00TAPFsKWCpZZOT93SxVP9nONOSgES3AevqRq/CHvavEBvKAjxX9p5Y5F0RZLxH9Ufd9+RwtCsa+lFDA==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + json-parse-even-better-errors: 2.3.1 + just-diff: 5.2.0 + just-diff-apply: 5.5.0 + dev: true + /parse-json@4.0.0: resolution: {integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==} engines: {node: '>=4'} @@ -13000,14 +12019,8 @@ packages: engines: {node: '>=8'} dev: true - /path-type@5.0.0: - resolution: {integrity: sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg==} - engines: {node: '>=12'} - dev: true - - /peek-readable@5.0.0: - resolution: {integrity: sha512-YtCKvLUOvwtMGmrniQPdO7MwPjgkFBtFIrmfSbYmYuq3tKDV/mcfAhBth1+C3ru7uXIZasc/pHnb+YDYNkkj4A==} - engines: {node: '>=14.16'} + /picocolors@0.2.1: + resolution: {integrity: sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==} dev: true /picocolors@1.0.0: @@ -13043,12 +12056,6 @@ packages: engines: {node: '>= 6'} dev: true - /piscina@4.4.0: - resolution: {integrity: sha512-+AQduEJefrOApE4bV7KRmp3N2JnnyErlVqq4P/jmko4FPz9Z877BCccl/iB3FdrWSUkvbGV9Kan/KllJgat3Vg==} - optionalDependencies: - nice-napi: 1.0.2 - dev: true - /pkg-dir@4.2.0: resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} engines: {node: '>=8'} @@ -13231,23 +12238,6 @@ packages: postcss: 8.4.38 dev: true - /postcss-load-config@3.1.4(postcss@8.4.38): - resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==} - engines: {node: '>= 10'} - peerDependencies: - postcss: '>=8.4.31' - ts-node: '>=9.0.0' - peerDependenciesMeta: - postcss: - optional: true - ts-node: - optional: true - dependencies: - lilconfig: 2.1.0 - postcss: 8.4.38 - yaml: 1.10.2 - dev: true - /postcss-loader@6.2.1(postcss@8.4.31)(webpack@5.89.0): resolution: {integrity: sha512-WbbYpmAaKcux/P66bZ40bpWsBucjx/TTgVVzRZ9yUO8yQfVBlameJ0ZGVaPfH64hNSBh63a+ICP5nqOpBA0w+Q==} engines: {node: '>= 12.13.0'} @@ -13259,7 +12249,7 @@ packages: klona: 2.0.6 postcss: 8.4.31 semver: 7.5.4 - webpack: 5.89.0(@swc/core@1.3.107) + webpack: 5.89.0(@swc/core@1.3.16) dev: true /postcss-merge-longhand@5.1.7(postcss@8.4.31): @@ -13439,22 +12429,6 @@ packages: postcss: 8.4.38 dev: true - /postcss-modules@4.3.1(postcss@8.4.38): - resolution: {integrity: sha512-ItUhSUxBBdNamkT3KzIZwYNNRFKmkJrofvC2nWab3CPKhYBQ1f27XXh1PAPE27Psx58jeelPsxWB/+og+KEH0Q==} - peerDependencies: - postcss: '>=8.4.31' - dependencies: - generic-names: 4.0.0 - icss-replace-symbols: 1.1.0 - lodash.camelcase: 4.3.0 - postcss: 8.4.38 - postcss-modules-extract-imports: 3.0.0(postcss@8.4.38) - postcss-modules-local-by-default: 4.0.3(postcss@8.4.38) - postcss-modules-scope: 3.0.0(postcss@8.4.38) - postcss-modules-values: 4.0.0(postcss@8.4.38) - string-hash: 1.1.3 - dev: true - /postcss-normalize-charset@5.1.0(postcss@8.4.31): resolution: {integrity: sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==} engines: {node: ^10 || ^12 || >=14.0} @@ -13833,9 +12807,9 @@ packages: js-beautify: 1.15.1 dev: true - /proc-log@3.0.0: - resolution: {integrity: sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /proc-log@2.0.1: + resolution: {integrity: sha512-Kcmo2FhfDTXdcbfDH76N7uBYHINxc/8GW7UAVuVP9I+Va3uHSerrnKV6dLooga/gh7GlgzuCCr/eoldnL1muGw==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} dev: true /process-nextick-args@2.0.1: @@ -13851,7 +12825,7 @@ packages: chalk: 2.4.2 figures: 2.0.0 log-update: 2.3.0 - webpack: 5.89.0(@swc/core@1.3.107) + webpack: 5.89.0(@swc/core@1.3.16) dev: true /progress@2.0.3: @@ -13859,6 +12833,14 @@ packages: engines: {node: '>=0.4.0'} dev: true + /promise-all-reject-late@1.0.1: + resolution: {integrity: sha512-vuf0Lf0lOxyQREH7GDIOUMLS7kz+gs8i6B+Yi8dC68a2sychGrHTJYghMBD6k7eUcH0H5P73EckCA48xijWqXw==} + dev: true + + /promise-call-limit@1.0.2: + resolution: {integrity: sha512-1vTUnfI2hzui8AEIixbdAJlFY4LFDXqQswy/2eOlThAscXCY4It8FdVuI0fMJGAB2aWGbdQf/gv0skKYXmdrHA==} + dev: true + /promise-inflight@1.0.1: resolution: {integrity: sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==} peerDependencies: @@ -13876,11 +12858,6 @@ packages: retry: 0.12.0 dev: true - /promise.series@0.2.0: - resolution: {integrity: sha512-VWQJyU2bcDTgZw8kpfBpB/ejZASlCrzwz5f2hjb/zlujOEB4oeiAhHygAWq8ubsX2GVkD4kCU5V2dwOTaCY5EQ==} - engines: {node: '>=0.12'} - dev: true - /prompts@2.4.2: resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} engines: {node: '>= 6'} @@ -13889,11 +12866,10 @@ packages: sisteransi: 1.0.5 dev: true - /promzard@1.0.0: - resolution: {integrity: sha512-KQVDEubSUHGSt5xLakaToDFrSoZhStB8dXLzk2xvwR67gJktrHFvpR63oZgHyK19WKbHFLXJqCPXdVR3aBP8Ig==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /promzard@0.3.0: + resolution: {integrity: sha512-JZeYqd7UAcHCwI+sTOeUDYkvEU+1bQ7iE0UT1MgB/tERkAPkesW46MrpIySzODi+owTjZtiF8Ay5j9m60KmMBw==} dependencies: - read: 2.1.0 + read: 1.0.7 dev: true /prop-types@15.8.1: @@ -13902,7 +12878,6 @@ packages: loose-envify: 1.4.0 object-assign: 4.1.1 react-is: 16.13.1 - dev: true /proto-list@1.2.4: resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==} @@ -13973,11 +12948,6 @@ packages: engines: {node: '>=8'} dev: true - /quick-lru@5.1.1: - resolution: {integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==} - engines: {node: '>=10'} - dev: true - /randombytes@2.1.0: resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} dependencies: @@ -14011,7 +12981,6 @@ packages: /react-is@16.13.1: resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} - dev: true /react-is@17.0.2: resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} @@ -14028,27 +12997,27 @@ packages: loose-envify: 1.4.0 dev: true - /read-cmd-shim@4.0.0: - resolution: {integrity: sha512-yILWifhaSEEytfXI76kB9xEEiG1AiozaCJZ83A87ytjRiN+jVibXjedjCRNjoZviinhG+4UkalO3mWTd8u5O0Q==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /read-cmd-shim@3.0.1: + resolution: {integrity: sha512-kEmDUoYf/CDy8yZbLTmhB1X9kkjf9Q80PCNsDMb7ufrGd6zZSQA1+UyjrO+pZm5K/S4OXCWJeiIt1JA8kAsa6g==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} dev: true - /read-package-json-fast@3.0.2: - resolution: {integrity: sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /read-package-json-fast@2.0.3: + resolution: {integrity: sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ==} + engines: {node: '>=10'} dependencies: - json-parse-even-better-errors: 3.0.1 - npm-normalize-package-bin: 3.0.1 + json-parse-even-better-errors: 2.3.1 + npm-normalize-package-bin: 1.0.1 dev: true - /read-package-json@6.0.4: - resolution: {integrity: sha512-AEtWXYfopBj2z5N5PbkAOeNHRPUg5q+Nen7QLxV8M2zJq1ym6/lCz3fYNTCXe19puu2d06jfHhrP7v/S2PtMMw==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /read-package-json@5.0.2: + resolution: {integrity: sha512-BSzugrt4kQ/Z0krro8zhTwV1Kd79ue25IhNN/VtHFy1mG/6Tluyi+msc0UpwaoQzxSHa28mntAjIZY6kEgfR9Q==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} dependencies: - glob: 10.3.10 - json-parse-even-better-errors: 3.0.1 - normalize-package-data: 5.0.0 - npm-normalize-package-bin: 3.0.1 + glob: 8.1.0 + json-parse-even-better-errors: 2.3.1 + normalize-package-data: 4.0.1 + npm-normalize-package-bin: 2.0.0 dev: true /read-pkg-up@3.0.0: @@ -14097,11 +13066,11 @@ packages: strip-bom: 3.0.0 dev: true - /read@2.1.0: - resolution: {integrity: sha512-bvxi1QLJHcaywCAEsAk4DG3nVoqiY2Csps3qzWalhj5hFqRn1d/OixkFXtLO1PrgHUcAP0FNaSY/5GYNfENFFQ==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /read@1.0.7: + resolution: {integrity: sha512-rSOKNYUmaxy0om1BNjMN4ezNT6VKK+2xF4GBhc81mkH7L60i6dp8qPYrkndNLT3QPphoII3maL9PVC9XmhHwVQ==} + engines: {node: '>=0.8'} dependencies: - mute-stream: 1.0.0 + mute-stream: 0.0.8 dev: true /readable-stream@2.3.8: @@ -14125,11 +13094,14 @@ packages: util-deprecate: 1.0.2 dev: true - /readable-web-to-node-stream@3.0.2: - resolution: {integrity: sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw==} - engines: {node: '>=8'} + /readdir-scoped-modules@1.1.0: + resolution: {integrity: sha512-asaikDeqAQg7JifRsZn1NJZXo9E+VwlyCfbkZhwyISinqk5zNS6266HS5kah6P0SaQKGF6SkNnZVHUzHFYxYDw==} + deprecated: This functionality has been moved to @npmcli/fs dependencies: - readable-stream: 3.6.2 + debuglog: 1.0.1 + dezalgo: 1.0.4 + graceful-fs: 4.2.11 + once: 1.4.0 dev: true /readdirp@3.6.0: @@ -14234,10 +13206,6 @@ packages: resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==} dev: true - /resolve-alpn@1.2.1: - resolution: {integrity: sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==} - dev: true - /resolve-cwd@3.0.0: resolution: {integrity: sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==} engines: {node: '>=8'} @@ -14271,11 +13239,6 @@ packages: resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} dev: true - /resolve.exports@1.1.0: - resolution: {integrity: sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ==} - engines: {node: '>=10'} - dev: true - /resolve.exports@2.0.2: resolution: {integrity: sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==} engines: {node: '>=10'} @@ -14299,12 +13262,6 @@ packages: supports-preserve-symlinks-flag: 1.0.0 dev: true - /responselike@2.0.1: - resolution: {integrity: sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==} - dependencies: - lowercase-keys: 2.0.0 - dev: true - /restore-cursor@2.0.0: resolution: {integrity: sha512-6IzJLuGi4+R14vwagDHX+JrXmPVtPpn4mffDJ1UdR7/Edm87fl6yi8mMBIVvFtJaNTUvjughmW4hwLhRG7gC1Q==} engines: {node: '>=4'} @@ -14352,144 +13309,34 @@ packages: glob: 7.2.3 dev: true - /rimraf@4.4.1: - resolution: {integrity: sha512-Gk8NlF062+T9CqNGn6h4tls3k6T1+/nXdOcSZVikNVtlRdYpA7wRJJMoXmuvOnLW844rPjdQ7JgXCYM6PPC/og==} - engines: {node: '>=14'} - hasBin: true - dependencies: - glob: 9.3.5 - dev: true - - /rimraf@5.0.5: - resolution: {integrity: sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==} - engines: {node: '>=14'} - hasBin: true - dependencies: - glob: 10.3.10 - dev: true - - /rollup-plugin-copy@3.5.0: - resolution: {integrity: sha512-wI8D5dvYovRMx/YYKtUNt3Yxaw4ORC9xo6Gt9t22kveWz1enG9QrhVlagzwrxSC455xD1dHMKhIJkbsQ7d48BA==} - engines: {node: '>=8.3'} - dependencies: - '@types/fs-extra': 8.1.5 - colorette: 1.4.0 - fs-extra: 8.1.0 - globby: 10.0.1 - is-plain-object: 3.0.1 - dev: true - - /rollup-plugin-gzip@3.1.0(rollup@4.1.5): + /rollup-plugin-gzip@3.1.0(rollup@3.3.0): resolution: {integrity: sha512-PFS9s6/w6dCra6/Z8PGD+ug3aaaqKLDCbr5y1Ek71Wd4rQSmMnOqCIIMgwbYxZ9A/gjP3pCN6rA4pAG47jxF0w==} engines: {node: '>=10.0.0'} peerDependencies: rollup: '>=2.0.0' dependencies: - rollup: 4.1.5 - dev: true - - /rollup-plugin-peer-deps-external@2.2.4(rollup@2.79.1): - resolution: {integrity: sha512-AWdukIM1+k5JDdAqV/Cxd+nejvno2FVLVeZ74NKggm3Q5s9cbbcOgUPGdbxPi4BXu7xGaZ8HG12F+thImYu/0g==} - peerDependencies: - rollup: '*' - dependencies: - rollup: 2.79.1 - dev: true - - /rollup-plugin-postcss@4.0.2(postcss@8.4.38): - resolution: {integrity: sha512-05EaY6zvZdmvPUDi3uCcAQoESDcYnv8ogJJQRp6V5kZ6J6P7uAVJlrTZcaaA20wTH527YTnKfkAoPxWI/jPp4w==} - engines: {node: '>=10'} - peerDependencies: - postcss: '>=8.4.31' - dependencies: - chalk: 4.1.2 - concat-with-sourcemaps: 1.1.0 - cssnano: 5.1.15(postcss@8.4.38) - import-cwd: 3.0.0 - p-queue: 6.6.2 - pify: 5.0.0 - postcss: 8.4.38 - postcss-load-config: 3.1.4(postcss@8.4.38) - postcss-modules: 4.3.1(postcss@8.4.38) - promise.series: 0.2.0 - resolve: 1.22.8 - rollup-pluginutils: 2.8.2 - safe-identifier: 0.4.2 - style-inject: 0.3.0 - transitivePeerDependencies: - - ts-node + rollup: 3.3.0 dev: true - /rollup-plugin-swc3@0.11.0(@swc/core@1.3.107)(rollup@4.1.5): - resolution: {integrity: sha512-luB9Ngb1YieWPpJttKvkmjN3lG5l28SmASLbf2CoScUB2+EImU0bE8wX4EYKEqv5clVulhWRQHQvE+H33X/03g==} + /rollup-plugin-swc3@0.7.0(@swc/core@1.3.16)(rollup@3.3.0): + resolution: {integrity: sha512-aWkbRGjmzSLs8BPQEuGo3PQsBAsYyL9Nk5xZ6ruEnBp+5RN9KavSQV1nM13gSmXZNBhz7Wh5mscyo5lCWQ1Bpg==} engines: {node: '>=12'} peerDependencies: '@swc/core': '>=1.2.165' - rollup: ^2.0.0 || ^3.0.0 || ^4.0.0 + rollup: ^2.0.0 || ^3.0.0 dependencies: '@fastify/deepmerge': 1.3.0 - '@rollup/pluginutils': 5.1.0(rollup@4.1.5) - '@swc/core': 1.3.107 - get-tsconfig: 4.7.2 - rollup: 4.1.5 - rollup-preserve-directives: 1.1.1(rollup@4.1.5) - dev: true - - /rollup-plugin-typescript2@0.36.0(rollup@2.79.1)(typescript@5.1.6): - resolution: {integrity: sha512-NB2CSQDxSe9+Oe2ahZbf+B4bh7pHwjV5L+RSYpCu7Q5ROuN94F9b6ioWwKfz3ueL3KTtmX4o2MUH2cgHDIEUsw==} - peerDependencies: - rollup: '>=1.26.3' - typescript: '>=2.4.0' - dependencies: '@rollup/pluginutils': 4.2.1 - find-cache-dir: 3.3.2 - fs-extra: 10.1.0 - rollup: 2.79.1 - semver: 7.5.4 - tslib: 2.6.2 - typescript: 5.1.6 - dev: true - - /rollup-pluginutils@2.8.2: - resolution: {integrity: sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ==} - dependencies: - estree-walker: 0.6.1 - dev: true - - /rollup-preserve-directives@1.1.1(rollup@4.1.5): - resolution: {integrity: sha512-+eQafbuEfDPfxQ9hQPlwaROfin4yiVRxap8hnrvvvcSGoukv1tTiYpAW9mvm3uR8J+fe4xd8FdVd5rz9q7jZ+Q==} - peerDependencies: - rollup: ^2.0.0 || ^3.0.0 || ^4.0.0 - dependencies: - magic-string: 0.30.8 - rollup: 4.1.5 - dev: true - - /rollup@2.79.1: - resolution: {integrity: sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==} - engines: {node: '>=10.0.0'} - hasBin: true - optionalDependencies: - fsevents: 2.3.2 + '@swc/core': 1.3.16 + get-tsconfig: 4.7.2 + rollup: 3.3.0 dev: true - /rollup@4.1.5: - resolution: {integrity: sha512-AEw14/q4NHYQkQlngoSae2yi7hDBeT9w84aEzdgCr39+2RL+iTG84lGTkgC1Wp5igtquN64cNzuzZKVz+U6jOg==} - engines: {node: '>=18.0.0', npm: '>=8.0.0'} + /rollup@3.3.0: + resolution: {integrity: sha512-wqOV/vUJCYEbWsXvwCkgGWvgaEnsbn4jxBQWKpN816CqsmCimDmCNJI83c6if7QVD4v/zlyRzxN7U2yDT5rfoA==} + engines: {node: '>=14.18.0', npm: '>=8.0.0'} hasBin: true optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.1.5 - '@rollup/rollup-android-arm64': 4.1.5 - '@rollup/rollup-darwin-arm64': 4.1.5 - '@rollup/rollup-darwin-x64': 4.1.5 - '@rollup/rollup-linux-arm-gnueabihf': 4.1.5 - '@rollup/rollup-linux-arm64-gnu': 4.1.5 - '@rollup/rollup-linux-arm64-musl': 4.1.5 - '@rollup/rollup-linux-x64-gnu': 4.1.5 - '@rollup/rollup-linux-x64-musl': 4.1.5 - '@rollup/rollup-win32-arm64-msvc': 4.1.5 - '@rollup/rollup-win32-ia32-msvc': 4.1.5 - '@rollup/rollup-win32-x64-msvc': 4.1.5 fsevents: 2.3.2 dev: true @@ -14528,10 +13375,6 @@ packages: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} dev: true - /safe-identifier@0.4.2: - resolution: {integrity: sha512-6pNbSMW6OhAi9j+N8V+U715yBQsaWJ7eyEUaOrawX+isg5ZxhUlV1NipNtgaKHmFGiABwt+ZF04Ii+3Xjkg+8w==} - dev: true - /safe-regex-test@1.0.0: resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==} dependencies: @@ -14601,18 +13444,6 @@ packages: resolution: {integrity: sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==} dev: true - /semver-regex@4.0.5: - resolution: {integrity: sha512-hunMQrEy1T6Jr2uEVjrAIqjwWcQTgOAcIM52C8MY1EZSD3DDNft04XzvYKPqjED65bNVVko0YI38nYeEHCX3yw==} - engines: {node: '>=12'} - dev: true - - /semver-truncate@3.0.0: - resolution: {integrity: sha512-LJWA9kSvMolR51oDE6PN3kALBNaUdkxzAGcexw8gjMA8xr5zUqK0JiR3CgARSqanYF3Z1YHvsErb1KDgh+v7Rg==} - engines: {node: '>=12'} - dependencies: - semver: 7.5.4 - dev: true - /semver@5.7.2: resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} hasBin: true @@ -14623,14 +13454,6 @@ packages: hasBin: true dev: true - /semver@7.5.3: - resolution: {integrity: sha512-QBlUtyVk/5EeHbi7X0fw6liDZc7BBmEaSYn01fMU1OUYbf6GPsbTtd8WmnqbI20SeycoHSeiybkE/q1Q+qlThQ==} - engines: {node: '>=10'} - hasBin: true - dependencies: - lru-cache: 6.0.0 - dev: true - /semver@7.5.4: resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} engines: {node: '>=10'} @@ -14776,20 +13599,6 @@ packages: engines: {node: '>=14'} dev: true - /sigstore@1.9.0: - resolution: {integrity: sha512-0Zjz0oe37d08VeOtBIuB6cRriqXse2e8w+7yIy2XSXjshRKxbc2KkhXjL229jXSxEm7UbcjS76wcJDGQddVI9A==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - hasBin: true - dependencies: - '@sigstore/bundle': 1.1.0 - '@sigstore/protobuf-specs': 0.2.1 - '@sigstore/sign': 1.0.0 - '@sigstore/tuf': 1.0.3 - make-fetch-happen: 11.1.1 - transitivePeerDependencies: - - supports-color - dev: true - /sirv@2.0.4: resolution: {integrity: sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==} engines: {node: '>= 10'} @@ -14803,17 +13612,18 @@ packages: resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} dev: true - /size-limit@11.0.1: - resolution: {integrity: sha512-6L80ocVspWPrhIRg8kPl41VypqTGH8/lu9e6TJiSJpkNLtOR2h/EEqdAO/wNJOv/sUVtjX+lVEWrzBpItGP+gQ==} - engines: {node: ^18.0.0 || >=20.0.0} + /size-limit@6.0.1: + resolution: {integrity: sha512-AFMWULVTAH/VkI15+d4Hn3EXbhh3ZvPPdRs/x4Pu3ZlWs3IP5k9/F3nAl4wPIDEXmHJiA6pbrmWUumOpaidrow==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} hasBin: true dependencies: bytes-iec: 3.1.1 chokidar: 3.5.3 - globby: 14.0.1 - lilconfig: 3.1.1 - nanospinner: 1.1.0 - picocolors: 1.0.0 + ci-job-number: 1.2.2 + globby: 11.1.0 + lilconfig: 2.1.0 + nanospinner: 0.2.2 + picocolors: 0.2.1 dev: true /slash@3.0.0: @@ -14821,11 +13631,6 @@ packages: engines: {node: '>=8'} dev: true - /slash@5.1.0: - resolution: {integrity: sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==} - engines: {node: '>=14.16'} - dev: true - /slice-ansi@3.0.0: resolution: {integrity: sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==} engines: {node: '>=8'} @@ -14889,20 +13694,6 @@ packages: smart-buffer: 4.2.0 dev: true - /sort-keys-length@1.0.1: - resolution: {integrity: sha512-GRbEOUqCxemTAk/b32F2xa8wDTs+Z1QHOkbhJDQTvv/6G3ZkbJ+frYWsTcc7cBB3Fu4wy4XlLCuNtJuMn7Gsvw==} - engines: {node: '>=0.10.0'} - dependencies: - sort-keys: 1.1.2 - dev: true - - /sort-keys@1.1.2: - resolution: {integrity: sha512-vzn8aSqKgytVik0iwdBEi+zevbTYZogewTUM6dtpmGwEcdzbub/TX4bCzRhebDCRC3QzXgJsLRKB2V/Oof7HXg==} - engines: {node: '>=0.10.0'} - dependencies: - is-plain-obj: 1.1.0 - dev: true - /sort-keys@2.0.0: resolution: {integrity: sha512-/dPCrG1s3ePpWm6yBbxZq5Be1dXGLyLn9Z791chDC3NFrpkVbWGzkBwPN1knaciexFXgRJ7hzdnwZ4stHSDmjg==} engines: {node: '>=4'} @@ -14910,6 +13701,13 @@ packages: is-plain-obj: 1.1.0 dev: true + /sort-keys@4.2.0: + resolution: {integrity: sha512-aUYIEU/UviqPgc8mHR6IW1EGxkAXpeRETYcrzg8cLAvUPZcpAlleSXHV2mY7G12GphSH6Gzv+4MMVSSkbdteHg==} + engines: {node: '>=8'} + dependencies: + is-plain-obj: 2.1.0 + dev: true + /source-map-js@1.2.0: resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==} engines: {node: '>=0.10.0'} @@ -14921,13 +13719,6 @@ packages: source-map: 0.6.1 dev: true - /source-map-support@0.5.19: - resolution: {integrity: sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==} - dependencies: - buffer-from: 1.1.2 - source-map: 0.6.1 - dev: true - /source-map-support@0.5.21: resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} dependencies: @@ -15085,10 +13876,6 @@ packages: engines: {node: '>=0.6.19'} dev: true - /string-hash@1.1.3: - resolution: {integrity: sha512-kJUvRUFK49aub+a7T1nNE66EJbZBMnBgoC1UbCZ5n6bsZKBRga4KgBRTMn/pFkeCZSYtNeSyMxPDM0AXWELk2A==} - dev: true - /string-length@4.0.2: resolution: {integrity: sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==} engines: {node: '>=10'} @@ -15236,11 +14023,6 @@ packages: engines: {node: '>=8'} dev: true - /strip-outer@2.0.0: - resolution: {integrity: sha512-A21Xsm1XzUkK0qK1ZrytDUvqsQWict2Cykhvi0fBQntGG5JSprESasEyV1EZ/4CiR5WB5KjzLTrP/bO37B0wPg==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - dev: true - /strong-log-transformer@2.1.0: resolution: {integrity: sha512-B3Hgul+z0L9a236FAUC9iZsL+nVHgoCJnqCbN588DjYxvGXaXaaFbfmQ/JhvKjZwsOukuR72XbHv71Qkug0HxA==} engines: {node: '>=4'} @@ -15251,16 +14033,13 @@ packages: through: 2.3.8 dev: true - /strtok3@7.0.0: - resolution: {integrity: sha512-pQ+V+nYQdC5H3Q7qBZAz/MO6lwGhoC2gOAjuouGf/VO0m7vQRh8QNMl2Uf6SwAtzZ9bOw3UIeBukEGNJl5dtXQ==} - engines: {node: '>=14.16'} + /style-loader@3.3.3(webpack@5.89.0): + resolution: {integrity: sha512-53BiGLXAcll9maCYtZi2RCQZKa8NQQai5C4horqKyRmHj9H7QmcUyucrH+4KW/gBQbXM2AsB0axoEcFZPlfPcw==} + engines: {node: '>= 12.13.0'} + peerDependencies: + webpack: ^5.0.0 dependencies: - '@tokenizer/token': 0.3.0 - peek-readable: 5.0.0 - dev: true - - /style-inject@0.3.0: - resolution: {integrity: sha512-IezA2qp+vcdlhJaVm5SOdPPTUu0FCEqfNSli2vRuSIBbu5Nq5UvygTk/VzeCqfLz2Atj3dVII5QBKGZRZ0edzw==} + webpack: 5.89.0(@swc/core@1.3.16) dev: true /stylehacks@5.1.1(postcss@8.4.31): @@ -15360,18 +14139,6 @@ packages: readable-stream: 3.6.2 dev: true - /tar@6.1.11: - resolution: {integrity: sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==} - engines: {node: '>= 10'} - dependencies: - chownr: 2.0.0 - fs-minipass: 2.1.0 - minipass: 3.3.6 - minizlib: 2.1.2 - mkdirp: 1.0.4 - yallist: 4.0.0 - dev: true - /tar@6.2.0: resolution: {integrity: sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==} engines: {node: '>=10'} @@ -15394,7 +14161,7 @@ packages: engines: {node: '>=8'} dev: true - /terser-webpack-plugin@5.3.9(@swc/core@1.3.107)(webpack@5.89.0): + /terser-webpack-plugin@5.3.9(@swc/core@1.3.16)(webpack@5.89.0): resolution: {integrity: sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==} engines: {node: '>= 10.13.0'} peerDependencies: @@ -15411,12 +14178,12 @@ packages: optional: true dependencies: '@jridgewell/trace-mapping': 0.3.20 - '@swc/core': 1.3.107 + '@swc/core': 1.3.16 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.1 terser: 5.22.0 - webpack: 5.89.0(@swc/core@1.3.107) + webpack: 5.89.0(@swc/core@1.3.16) dev: true /terser@5.22.0: @@ -15472,7 +14239,7 @@ packages: loader-utils: 2.0.4 neo-async: 2.6.2 schema-utils: 3.3.0 - webpack: 5.89.0(@swc/core@1.3.107) + webpack: 5.89.0(@swc/core@1.3.16) dev: true /through2@2.0.5: @@ -15530,14 +14297,6 @@ packages: engines: {node: '>=0.6'} dev: true - /token-types@5.0.1: - resolution: {integrity: sha512-Y2fmSnZjQdDb9W4w4r1tswlMHylzWIeOKpx0aZH9BgGtACHhrk3OkT52AzwcuqTRBZtvvnTjDBh8eynMulu8Vg==} - engines: {node: '>=14.16'} - dependencies: - '@tokenizer/token': 0.3.0 - ieee754: 1.2.1 - dev: true - /totalist@3.0.1: resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==} engines: {node: '>=6'} @@ -15564,82 +14323,16 @@ packages: punycode: 2.3.0 dev: true + /treeverse@2.0.0: + resolution: {integrity: sha512-N5gJCkLu1aXccpOTtqV6ddSEi6ZmGkh3hjmbu1IjcavJK4qyOVQmi0myQKM7z5jVGmD68SJoliaVrMmVObhj6A==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dev: true + /trim-newlines@3.0.1: resolution: {integrity: sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==} engines: {node: '>=8'} dev: true - /trim-repeated@2.0.0: - resolution: {integrity: sha512-QUHBFTJGdOwmp0tbOG505xAgOp/YliZP/6UgafFXYZ26WT1bvQmSMJUvkeVSASuJJHbqsFbynTvkd5W8RBTipg==} - engines: {node: '>=12'} - dependencies: - escape-string-regexp: 5.0.0 - dev: true - - /ts-node@10.9.1(@swc/core@1.3.107)(@types/node@20.4.5)(typescript@5.1.6): - resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} - hasBin: true - peerDependencies: - '@swc/core': '>=1.2.50' - '@swc/wasm': '>=1.2.50' - '@types/node': '*' - typescript: '>=2.7' - peerDependenciesMeta: - '@swc/core': - optional: true - '@swc/wasm': - optional: true - dependencies: - '@cspotcode/source-map-support': 0.8.1 - '@swc/core': 1.3.107 - '@tsconfig/node10': 1.0.10 - '@tsconfig/node12': 1.0.11 - '@tsconfig/node14': 1.0.3 - '@tsconfig/node16': 1.0.4 - '@types/node': 20.4.5 - acorn: 8.10.0 - acorn-walk: 8.2.0 - arg: 4.1.3 - create-require: 1.1.1 - diff: 4.0.2 - make-error: 1.3.6 - typescript: 5.1.6 - v8-compile-cache-lib: 3.0.1 - yn: 3.1.1 - dev: true - - /ts-node@10.9.1(@swc/core@1.3.107)(@types/node@20.4.5)(typescript@5.4.5): - resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} - hasBin: true - peerDependencies: - '@swc/core': '>=1.2.50' - '@swc/wasm': '>=1.2.50' - '@types/node': '*' - typescript: '>=2.7' - peerDependenciesMeta: - '@swc/core': - optional: true - '@swc/wasm': - optional: true - dependencies: - '@cspotcode/source-map-support': 0.8.1 - '@swc/core': 1.3.107 - '@tsconfig/node10': 1.0.10 - '@tsconfig/node12': 1.0.11 - '@tsconfig/node14': 1.0.3 - '@tsconfig/node16': 1.0.4 - '@types/node': 20.4.5 - acorn: 8.10.0 - acorn-walk: 8.2.0 - arg: 4.1.3 - create-require: 1.1.1 - diff: 4.0.2 - make-error: 1.3.6 - typescript: 5.4.5 - v8-compile-cache-lib: 3.0.1 - yn: 3.1.1 - dev: true - /ts-node@9.1.1(typescript@4.9.5): resolution: {integrity: sha512-hPlt7ZACERQGf03M253ytLY3dHbGNGrAq9qIHWUY9XHYl1z7wYngSr3OQ5xmui8o2AaxsONxIzjafLUiWBo1Fg==} engines: {node: '>=10.0.0'} @@ -15665,15 +14358,6 @@ packages: strip-bom: 3.0.0 dev: true - /tsconfig-paths@4.2.0: - resolution: {integrity: sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==} - engines: {node: '>=6'} - dependencies: - json5: 2.2.3 - minimist: 1.2.8 - strip-bom: 3.0.0 - dev: true - /tslib@1.14.1: resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} dev: true @@ -15682,14 +14366,14 @@ packages: resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} dev: true - /tsutils@3.21.0(typescript@5.1.6): + /tsutils@3.21.0(typescript@4.9.5): resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} engines: {node: '>= 6'} peerDependencies: typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' dependencies: tslib: 1.14.1 - typescript: 5.1.6 + typescript: 4.9.5 dev: true /tty-table@4.2.2: @@ -15706,17 +14390,6 @@ packages: yargs: 17.7.2 dev: true - /tuf-js@1.1.7: - resolution: {integrity: sha512-i3P9Kgw3ytjELUfpuKVDNBJvk4u5bXL6gskv572mcevPbSKCV3zt3djhmlEQ65yERjIbOSncy7U4cQJaB1CBCg==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - dependencies: - '@tufjs/models': 1.0.4 - debug: 4.3.4(supports-color@8.1.1) - make-fetch-happen: 11.1.1 - transitivePeerDependencies: - - supports-color - dev: true - /type-check@0.4.0: resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} engines: {node: '>= 0.8.0'} @@ -15810,6 +14483,12 @@ packages: is-typed-array: 1.1.12 dev: true + /typedarray-to-buffer@3.1.5: + resolution: {integrity: sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==} + dependencies: + is-typedarray: 1.0.0 + dev: true + /typedarray@0.0.6: resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==} dev: true @@ -15820,18 +14499,6 @@ packages: hasBin: true dev: true - /typescript@5.1.6: - resolution: {integrity: sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==} - engines: {node: '>=14.17'} - hasBin: true - dev: true - - /typescript@5.4.5: - resolution: {integrity: sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==} - engines: {node: '>=14.17'} - hasBin: true - dev: true - /uglify-js@3.17.4: resolution: {integrity: sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==} engines: {node: '>=0.8.0'} @@ -15849,8 +14516,8 @@ packages: which-boxed-primitive: 1.0.2 dev: true - /undici-types@5.26.5: - resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} + /undici-types@5.25.3: + resolution: {integrity: sha512-Ga1jfYwRn7+cP9v8auvEXN1rX3sWqlayd4HP7OKk4mZWylEmu3KzXDUGrQUN6Ol7qo1gPvB2e5gX6udnyEPgdA==} dev: true /unicode-canonical-property-names-ecmascript@2.0.0: @@ -15876,9 +14543,11 @@ packages: engines: {node: '>=4'} dev: true - /unicorn-magic@0.1.0: - resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} - engines: {node: '>=18'} + /unique-filename@2.0.1: + resolution: {integrity: sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + unique-slug: 3.0.0 dev: true /unique-filename@3.0.0: @@ -15888,6 +14557,13 @@ packages: unique-slug: 4.0.0 dev: true + /unique-slug@3.0.0: + resolution: {integrity: sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + imurmurhash: 0.1.4 + dev: true + /unique-slug@4.0.0: resolution: {integrity: sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -15977,15 +14653,6 @@ packages: hasBin: true dev: true - /uuid@9.0.1: - resolution: {integrity: sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==} - hasBin: true - dev: true - - /v8-compile-cache-lib@3.0.1: - resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} - dev: true - /v8-compile-cache@2.3.0: resolution: {integrity: sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==} dev: true @@ -15998,7 +14665,7 @@ packages: resolution: {integrity: sha512-9lDD+EVI2fjFsMWXc6dy5JJzBsVTcQ2fVkfBvncZ6xJWG9wtBhOldG+mHkSL0+V1K/xgZz0JDO5UT5hFwHUghg==} engines: {node: '>=10.12.0'} dependencies: - '@jridgewell/trace-mapping': 0.3.25 + '@jridgewell/trace-mapping': 0.3.20 '@types/istanbul-lib-coverage': 2.0.5 convert-source-map: 2.0.0 dev: true @@ -16016,9 +14683,9 @@ packages: builtins: 1.0.3 dev: true - /validate-npm-package-name@5.0.0: - resolution: {integrity: sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /validate-npm-package-name@4.0.0: + resolution: {integrity: sha512-mzR0L8ZDktZjpX4OB46KT+56MAhl4EIazWP/+G/HPGuvfdaqg4YsCdtOm6U9+LOFyYDoh4dpnpxZRB9MQQns5Q==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} dependencies: builtins: 5.0.1 dev: true @@ -16062,7 +14729,7 @@ packages: vue-hot-reload-api: 2.3.4 vue-style-loader: 4.1.3 vue-template-compiler: 2.7.14 - webpack: 5.89.0(@swc/core@1.3.107) + webpack: 5.89.0(@swc/core@1.3.16) transitivePeerDependencies: - arc-templates - atpl @@ -16135,7 +14802,7 @@ packages: hash-sum: 2.0.0 vue: 2.7.16 watchpack: 2.4.0 - webpack: 5.89.0(@swc/core@1.3.107) + webpack: 5.89.0(@swc/core@1.3.16) dev: true /vue-style-loader@4.1.3: @@ -16170,7 +14837,7 @@ packages: '@vue/compiler-sfc': 2.7.16 csstype: 3.1.3 - /vue@3.4.21(typescript@5.1.6): + /vue@3.4.21(typescript@4.9.5): resolution: {integrity: sha512-5hjyV/jLEIKD/jYl4cavMcnzKwjMKohureP8ejn3hhEjwhWIhWeuzL2kJAjzl/WyVsgPY56Sy4Z40C3lVshxXA==} peerDependencies: typescript: '*' @@ -16183,7 +14850,7 @@ packages: '@vue/runtime-dom': 3.4.21 '@vue/server-renderer': 3.4.21(vue@3.4.21) '@vue/shared': 3.4.21 - typescript: 5.1.6 + typescript: 4.9.5 dev: true /w3c-xmlserializer@4.0.0: @@ -16193,6 +14860,10 @@ packages: xml-name-validator: 4.0.0 dev: true + /walk-up-path@1.0.0: + resolution: {integrity: sha512-hwj/qMDUEjCU5h0xr90KGCf0tg0/LgJbmOWgrWKYlcJZM7XvquvUJZ0G/HMGr7F7OQMOUuPHWP9JpriinkAlkg==} + dev: true + /walker@1.0.8: resolution: {integrity: sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==} dependencies: @@ -16271,7 +14942,7 @@ packages: mime-types: 2.1.35 range-parser: 1.2.1 schema-utils: 4.2.0 - webpack: 5.89.0(@swc/core@1.3.107) + webpack: 5.89.0(@swc/core@1.3.16) dev: true /webpack-dev-server@4.15.2(debug@4.3.4)(webpack@5.89.0): @@ -16315,7 +14986,7 @@ packages: serve-index: 1.9.1 sockjs: 0.3.24 spdy: 4.0.2 - webpack: 5.89.0(@swc/core@1.3.107) + webpack: 5.89.0(@swc/core@1.3.16) webpack-dev-middleware: 5.3.4(webpack@5.89.0) ws: 8.14.2 transitivePeerDependencies: @@ -16343,7 +15014,7 @@ packages: resolution: {integrity: sha512-5tyDlKLqPfMqjT3Q9TAqf2YqjwmnUleZwzJi1A5qXnlBCdj2AtOJ6wAWdglTIDOPgOiOrXeBeFcsQ8+aGQ6QbA==} dev: true - /webpack@5.89.0(@swc/core@1.3.107): + /webpack@5.89.0(@swc/core@1.3.16): resolution: {integrity: sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==} engines: {node: '>=10.13.0'} hasBin: true @@ -16374,7 +15045,7 @@ packages: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.9(@swc/core@1.3.107)(webpack@5.89.0) + terser-webpack-plugin: 5.3.9(@swc/core@1.3.16)(webpack@5.89.0) watchpack: 2.4.0 webpack-sources: 3.2.3 transitivePeerDependencies: @@ -16485,14 +15156,6 @@ packages: isexe: 2.0.0 dev: true - /which@3.0.1: - resolution: {integrity: sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - hasBin: true - dependencies: - isexe: 2.0.0 - dev: true - /wide-align@1.1.5: resolution: {integrity: sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==} dependencies: @@ -16554,20 +15217,21 @@ packages: signal-exit: 3.0.7 dev: true - /write-file-atomic@4.0.2: - resolution: {integrity: sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==} - engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + /write-file-atomic@3.0.3: + resolution: {integrity: sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==} dependencies: imurmurhash: 0.1.4 + is-typedarray: 1.0.0 signal-exit: 3.0.7 + typedarray-to-buffer: 3.1.5 dev: true - /write-file-atomic@5.0.1: - resolution: {integrity: sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + /write-file-atomic@4.0.2: + resolution: {integrity: sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} dependencies: imurmurhash: 0.1.4 - signal-exit: 4.1.0 + signal-exit: 3.0.7 dev: true /write-json-file@3.2.0: @@ -16582,6 +15246,18 @@ packages: write-file-atomic: 2.4.3 dev: true + /write-json-file@4.3.0: + resolution: {integrity: sha512-PxiShnxf0IlnQuMYOPPhPkhExoCQuTUNPOa/2JWCYTmBquU9njyyDuwRKN26IZBlp4yn1nt+Agh2HOOBl+55HQ==} + engines: {node: '>=8.3'} + dependencies: + detect-indent: 6.1.0 + graceful-fs: 4.2.11 + is-plain-obj: 2.1.0 + make-dir: 3.1.0 + sort-keys: 4.2.0 + write-file-atomic: 3.0.3 + dev: true + /write-pkg@4.0.0: resolution: {integrity: sha512-v2UQ+50TNf2rNHJ8NyWttfm/EJUBWMJcx6ZTYZr6Qp52uuegWw/lBkCtCbnYZEmPRNL61m+u67dAmGxo+HTULA==} engines: {node: '>=8'} diff --git a/scripts/cleanup b/scripts/cleanup deleted file mode 100755 index 9c2b15ac..00000000 --- a/scripts/cleanup +++ /dev/null @@ -1,40 +0,0 @@ -#!/usr/bin/env node -'use strict'; -const fs = require('fs'); -const path = require('path'); - -// Define the base directory where packages are located -const packagesDir = 'packages'; -const dirs = ['dist', 'es', 'lib', 'coverage', 'types', 'node_modules'] - -// Function to recursively delete directories -function deleteFolderRecursive(folderPath) { - if (fs.existsSync(folderPath)) { - fs.readdirSync(folderPath).forEach((file) => { - const curPath = path.join(folderPath, file); - if (fs.lstatSync(curPath).isDirectory()) { // Recursively delete subdirectories - deleteFolderRecursive(curPath); - } else { // Delete file - fs.unlinkSync(curPath); - } - }); - fs.rmdirSync(folderPath); // Delete empty directory - } -} - -// Loop through each subfolder inside the packages directory -fs.readdirSync(packagesDir).forEach((packageFolder) => { - const packageFolderPath = path.join(packagesDir, packageFolder); - - if (fs.lstatSync(packageFolderPath).isDirectory()) { - dirs.forEach(dirname => { - // Delete the dist folder if it exists - const distFolderPath = path.join(packageFolderPath, dirname); - - if (fs.existsSync(distFolderPath)) { - deleteFolderRecursive(distFolderPath); - console.log(`${dirname} (${packageFolderPath}) deleted`); - } - }) - } -}); diff --git a/scripts/package.json b/scripts/package.json index 3898c755..488157cf 100644 --- a/scripts/package.json +++ b/scripts/package.json @@ -1,11 +1,12 @@ { - "name": "@bbob/scripts", + "name": "scripts", + "main": "index.js", "private": true, - "bin": { - "pkg-task": "pkg-task" - }, "author": { "name": "Nikolay Kostyurin ", "url": "https://artkost.ru/" + }, + "dependencies": { + "commander": "8.2.0" } } diff --git a/scripts/pkg-task b/scripts/pkg-task index c3cf395b..d2f596fc 100755 --- a/scripts/pkg-task +++ b/scripts/pkg-task @@ -28,7 +28,6 @@ function runCommand(command, args = '') { } function runCommandByKey(key, command) { - const event_name = process.env.npm_lifecycle_event const args = process.argv.slice(2); if (args.length >= 1) { @@ -38,10 +37,6 @@ function runCommandByKey(key, command) { return runCommand(command, argarr.join(' ')) } } - - if (args.length === 0 && event_name && event_name === key) { - return runCommand(command) - } } for (const [key, command] of Object.entries(pkg.pkgTasks)) { diff --git a/tsconfig.json b/tsconfig.json deleted file mode 100644 index d98f215f..00000000 --- a/tsconfig.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "compilerOptions": { - "target": "esnext", - "lib": [ - "dom", - "dom.iterable", - "esnext" - ], - "checkJs": false, - "skipLibCheck": true, - "strict": true, - "strictNullChecks": true, - "strictFunctionTypes": false, - "forceConsistentCasingInFileNames": true, - "emitDeclarationOnly": true, - "esModuleInterop": true, - "module": "esnext", - "moduleResolution": "node", - "resolveJsonModule": true, - "downlevelIteration": true, - "jsx": "preserve", - "incremental": true, - "allowJs": true, - "declaration": true, - "declarationMap": true, - "preserveSymlinks": true, - "paths": {} - }, - "exclude": [ - "node_modules" - ], - "ts-node": { - "compilerOptions": { - "module": "commonjs", - "resolveJsonModule": true, - "noImplicitAny": false - } - } -}