From 34937dc5328f6532a2324a1bb3a971190d66d543 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 2 Oct 2024 08:33:46 +0200 Subject: [PATCH 01/18] chore(deps): update mcr.microsoft.com/devcontainers/typescript-node:22 docker digest to 79c4181 (#3148) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .devcontainer/devcontainer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index cb4474d4da6..0405a97ecb0 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -2,7 +2,7 @@ // README at: https://github.com/devcontainers/templates/tree/main/src/typescript-node { "name": "FakerJs", - "image": "mcr.microsoft.com/devcontainers/typescript-node:22@sha256:8fac147b83828b1ea661bffd850bd03a6a3f3229d8349b9880d86e55e0d25569", + "image": "mcr.microsoft.com/devcontainers/typescript-node:22@sha256:79c4181532784148abe5d0dd37505f420674990fd104f8294fd06155003fa442", // Features to add to the dev container. More info: https://containers.dev/features. // "features": {}, From d34fe025112c7658b25de0f3cce24e1570b9361b Mon Sep 17 00:00:00 2001 From: DivisionByZero Date: Mon, 7 Oct 2024 12:44:01 +0200 Subject: [PATCH 02/18] chore(deps): remove eslint-define-config (#3156) --- package.json | 1 - pnpm-lock.yaml | 9 --------- 2 files changed, 10 deletions(-) diff --git a/package.json b/package.json index 2c38e590614..c85c27e70b7 100644 --- a/package.json +++ b/package.json @@ -121,7 +121,6 @@ "cypress": "13.14.2", "eslint": "9.11.0", "eslint-config-prettier": "9.1.0", - "eslint-define-config": "2.1.0", "eslint-plugin-jsdoc": "50.2.4", "eslint-plugin-prettier": "5.2.1", "eslint-plugin-unicorn": "55.0.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 47942c0598b..6191e92d032 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -62,9 +62,6 @@ importers: eslint-config-prettier: specifier: 9.1.0 version: 9.1.0(eslint@9.11.0(jiti@1.21.6)) - eslint-define-config: - specifier: 2.1.0 - version: 2.1.0 eslint-plugin-jsdoc: specifier: 50.2.4 version: 50.2.4(eslint@9.11.0(jiti@1.21.6)) @@ -1749,10 +1746,6 @@ packages: peerDependencies: eslint: '>=7.0.0' - eslint-define-config@2.1.0: - resolution: {integrity: sha512-QUp6pM9pjKEVannNAbSJNeRuYwW3LshejfyBBpjeMGaJjaDUpVps4C6KVR8R7dWZnD3i0synmrE36znjTkJvdQ==} - engines: {node: '>=18.0.0', npm: '>=9.0.0', pnpm: '>=8.6.0'} - eslint-plugin-jsdoc@50.2.4: resolution: {integrity: sha512-020jA+dXaXdb+TML3ZJBvpPmzwbNROjnYuTYi/g6A5QEmEjhptz4oPJDKkOGMIByNxsPpdTLzSU1HYVqebOX1w==} engines: {node: '>=18'} @@ -5327,8 +5320,6 @@ snapshots: dependencies: eslint: 9.11.0(jiti@1.21.6) - eslint-define-config@2.1.0: {} - eslint-plugin-jsdoc@50.2.4(eslint@9.11.0(jiti@1.21.6)): dependencies: '@es-joy/jsdoccomment': 0.48.0 From b6933dddcaaf82d7b196709855a266e9450e9b74 Mon Sep 17 00:00:00 2001 From: DivisionByZero Date: Mon, 7 Oct 2024 12:48:18 +0200 Subject: [PATCH 03/18] chore(deps): remove @algolia/client-search (#3157) --- .github/renovate.json5 | 2 +- package.json | 1 - pnpm-lock.yaml | 3 --- 3 files changed, 1 insertion(+), 5 deletions(-) diff --git a/.github/renovate.json5 b/.github/renovate.json5 index 664a023e6b2..bca8d323a5e 100644 --- a/.github/renovate.json5 +++ b/.github/renovate.json5 @@ -57,7 +57,7 @@ }, { "groupName": "doc-dependencies", - "matchPackageNames": ["@algolia/client-search", "ts-morph", "vitepress"] + "matchPackageNames": ["ts-morph", "vitepress"] } ], "stopUpdatingLabel": "s: on hold", diff --git a/package.json b/package.json index c85c27e70b7..aa8cafaf26e 100644 --- a/package.json +++ b/package.json @@ -104,7 +104,6 @@ ], "devDependencies": { "@actions/github": "6.0.0", - "@algolia/client-search": "5.5.3", "@eslint/compat": "1.1.1", "@eslint/js": "9.11.0", "@stylistic/eslint-plugin": "2.8.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6191e92d032..966fe06f1ae 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -11,9 +11,6 @@ importers: '@actions/github': specifier: 6.0.0 version: 6.0.0 - '@algolia/client-search': - specifier: 5.5.3 - version: 5.5.3 '@eslint/compat': specifier: 1.1.1 version: 1.1.1 From 61f8cb5be83821cc5579310fc1f1b9c50156b656 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pascal=20K=C3=BCsgen?= Date: Wed, 9 Oct 2024 12:29:41 +0200 Subject: [PATCH 04/18] docs(guide): remove v9 not yet released notice (#3163) --- docs/guide/upgrading.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/docs/guide/upgrading.md b/docs/guide/upgrading.md index 155107b422f..05b6c4881e6 100644 --- a/docs/guide/upgrading.md +++ b/docs/guide/upgrading.md @@ -14,8 +14,6 @@ This is the migration guide for upgrading from v8 to v9. ::: -v9 has not yet been released. This page contains a work-in-progress list of breaking changes in v9. - ## General Breaking Changes ### Requires Node v18+ From bcc759dde0ac785f0c35ac9b8935d825778f118f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 9 Oct 2024 12:41:44 +0200 Subject: [PATCH 05/18] chore(deps): update all non-major dependencies (#3151) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/check-release-pr.yml | 4 ++-- .github/workflows/ci.yml | 14 +++++++------- .github/workflows/draft-release.yml | 2 +- .github/workflows/pr.yml | 2 +- .github/workflows/preflight-comment.yml | 2 +- .github/workflows/prepare-release-pr.yml | 2 +- .github/workflows/publish-release.yml | 2 +- package.json | 2 +- 8 files changed, 15 insertions(+), 15 deletions(-) diff --git a/.github/workflows/check-release-pr.yml b/.github/workflows/check-release-pr.yml index 1e39c36b70d..357b0b210ec 100644 --- a/.github/workflows/check-release-pr.yml +++ b/.github/workflows/check-release-pr.yml @@ -17,12 +17,12 @@ jobs: steps: - name: Checkout faker - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 with: path: faker - name: Checkout playground - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 with: repository: faker-js/playground path: playground diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 8e0d010aeeb..aa671667f02 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -22,7 +22,7 @@ jobs: name: 'Build & Unit Test: node-${{ matrix.node_version }}, ${{ matrix.os }}' steps: - name: Checkout - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 with: # Required for docs/versions tests fetch-depth: 0 @@ -70,7 +70,7 @@ jobs: run: date - name: Checkout - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 with: # Required for docs/versions tests fetch-depth: 0 @@ -104,7 +104,7 @@ jobs: name: 'E2E Doc Test: node-22, ubuntu-latest' steps: - name: Checkout - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 - name: Install pnpm uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0 @@ -125,7 +125,7 @@ jobs: name: 'Lint: node-22, ubuntu-latest' steps: - name: Checkout - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 with: fetch-depth: 0 @@ -155,7 +155,7 @@ jobs: name: 'TS-Check: node-22, ubuntu-latest' steps: - name: Checkout - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 with: fetch-depth: 0 @@ -185,7 +185,7 @@ jobs: name: 'Codecov: node-22, ubuntu-latest' steps: - name: Checkout - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 with: fetch-depth: 0 @@ -210,7 +210,7 @@ jobs: run: pnpm vitest run --coverage - name: Upload coverage to Codecov - uses: codecov/codecov-action@e28ff129e5465c2c0dcc6f003fc735cb6ae0c673 # v4.5.0 + uses: codecov/codecov-action@b9fd7d16f6d7d1b5d2bec1a2887e65ceed900238 # v4.6.0 with: token: ${{ secrets.CODECOV_TOKEN }} fail_ci_if_error: true diff --git a/.github/workflows/draft-release.yml b/.github/workflows/draft-release.yml index 73632e1b115..e63f1f6aeca 100644 --- a/.github/workflows/draft-release.yml +++ b/.github/workflows/draft-release.yml @@ -21,7 +21,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 with: fetch-depth: 0 # we need the tags and the commit history for the gh release create command ref: ${{ github.event.pull_request.base.ref }} diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml index 0bc278f3d69..21fcb1fee0d 100644 --- a/.github/workflows/pr.yml +++ b/.github/workflows/pr.yml @@ -14,7 +14,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 with: fetch-depth: 0 diff --git a/.github/workflows/preflight-comment.yml b/.github/workflows/preflight-comment.yml index 4d5bdda0897..bb4b103116f 100644 --- a/.github/workflows/preflight-comment.yml +++ b/.github/workflows/preflight-comment.yml @@ -16,7 +16,7 @@ jobs: name: 'Comment Code Generation' steps: - name: Checkout - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 with: ref: 'next' diff --git a/.github/workflows/prepare-release-pr.yml b/.github/workflows/prepare-release-pr.yml index 15204e37626..10b77c8ca28 100644 --- a/.github/workflows/prepare-release-pr.yml +++ b/.github/workflows/prepare-release-pr.yml @@ -24,7 +24,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 with: fetch-depth: 0 token: ${{ secrets.GH_TOKEN }} diff --git a/.github/workflows/publish-release.yml b/.github/workflows/publish-release.yml index c9a522e395b..c755b046778 100644 --- a/.github/workflows/publish-release.yml +++ b/.github/workflows/publish-release.yml @@ -15,7 +15,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 with: fetch-depth: 0 # we want to push the release branch later token: ${{ secrets.GH_TOKEN }} diff --git a/package.json b/package.json index aa8cafaf26e..06c7ce6e626 100644 --- a/package.json +++ b/package.json @@ -143,7 +143,7 @@ "vue": "3.5.8", "vue-tsc": "2.1.6" }, - "packageManager": "pnpm@9.11.0", + "packageManager": "pnpm@9.12.1", "engines": { "node": ">=18.0.0", "npm": ">=9.0.0" From 1603873ce663475fd605b335f97d6114f8b8dadf Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 9 Oct 2024 10:47:39 +0000 Subject: [PATCH 06/18] chore(deps): update dependency vitepress to v1.4.0 (#3152) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- pnpm-lock.yaml | 311 +++++++++++++++++++++++++++++++++++++------------ 2 files changed, 238 insertions(+), 75 deletions(-) diff --git a/package.json b/package.json index 06c7ce6e626..17321b1883c 100644 --- a/package.json +++ b/package.json @@ -138,7 +138,7 @@ "typescript-eslint": "8.7.0", "validator": "13.12.0", "vite": "5.4.7", - "vitepress": "1.3.4", + "vitepress": "1.4.0", "vitest": "2.1.1", "vue": "3.5.8", "vue-tsc": "2.1.6" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 966fe06f1ae..18ce7242ec2 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -37,10 +37,10 @@ importers: version: 13.12.2 '@vitest/coverage-v8': specifier: 2.1.1 - version: 2.1.1(vitest@2.1.1(@types/node@20.16.5)(@vitest/ui@2.1.1)(jsdom@25.0.1)) + version: 2.1.1(vitest@2.1.1) '@vitest/eslint-plugin': specifier: 1.1.4 - version: 1.1.4(@typescript-eslint/utils@8.7.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2))(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2)(vitest@2.1.1(@types/node@20.16.5)(@vitest/ui@2.1.1)(jsdom@25.0.1)) + version: 1.1.4(@typescript-eslint/utils@8.7.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2))(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2)(vitest@2.1.1) '@vitest/ui': specifier: 2.1.1 version: 2.1.1(vitest@2.1.1) @@ -114,8 +114,8 @@ importers: specifier: 5.4.7 version: 5.4.7(@types/node@20.16.5) vitepress: - specifier: 1.3.4 - version: 1.3.4(@algolia/client-search@5.5.3)(@types/node@20.16.5)(postcss@8.4.47)(search-insights@2.17.2)(typescript@5.6.2) + specifier: 1.4.0 + version: 1.4.0(@algolia/client-search@5.5.3)(@types/node@20.16.5)(postcss@8.4.47)(search-insights@2.17.2)(typescript@5.6.2) vitest: specifier: 2.1.1 version: 2.1.1(@types/node@20.16.5)(@vitest/ui@2.1.1)(jsdom@25.0.1) @@ -262,14 +262,14 @@ packages: '@cypress/xvfb@1.2.4': resolution: {integrity: sha512-skbBzPggOVYCbnGgV+0dmBdW/s77ZkAOXIC1knS8NagwDjBrNC1LuXtQJeiN6l+m7lzmHtaoUw/ctJKdqkG57Q==} - '@docsearch/css@3.6.1': - resolution: {integrity: sha512-VtVb5DS+0hRIprU2CO6ZQjK2Zg4QU5HrDM1+ix6rT0umsYvFvatMAnf97NHZlVWDaaLlx7GRfR/7FikANiM2Fg==} + '@docsearch/css@3.6.2': + resolution: {integrity: sha512-vKNZepO2j7MrYBTZIGXvlUOIR+v9KRf70FApRgovWrj3GTs1EITz/Xb0AOlm1xsQBp16clVZj1SY/qaOJbQtZw==} - '@docsearch/js@3.6.1': - resolution: {integrity: sha512-erI3RRZurDr1xES5hvYJ3Imp7jtrXj6f1xYIzDzxiS7nNBufYWPbJwrmMqWC5g9y165PmxEmN9pklGCdLi0Iqg==} + '@docsearch/js@3.6.2': + resolution: {integrity: sha512-pS4YZF+VzUogYrkblCucQ0Oy2m8Wggk8Kk7lECmZM60hTbaydSIhJTTiCrmoxtBqV8wxORnOqcqqOfbmkkQEcA==} - '@docsearch/react@3.6.1': - resolution: {integrity: sha512-qXZkEPvybVhSXj0K7U3bXc233tk5e8PfhoZ6MhPOiik/qUQxYC+Dn9DnoS7CxHQQhHfCvTiN0eY9M12oRghEXw==} + '@docsearch/react@3.6.2': + resolution: {integrity: sha512-rtZce46OOkVflCQH71IdbXSFK+S8iJZlUF56XBW5rIgx/eG5qoomC7Ag3anZson1bBac/JFQn7XOBfved/IMRA==} peerDependencies: '@types/react': '>= 16.8.0 < 19.0.0' react: '>= 16.8.0 < 19.0.0' @@ -798,23 +798,23 @@ packages: cpu: [x64] os: [win32] - '@shikijs/core@1.18.0': - resolution: {integrity: sha512-VK4BNVCd2leY62Nm2JjyxtRLkyrZT/tv104O81eyaCjHq4Adceq2uJVFJJAIof6lT1mBwZrEo2qT/T+grv3MQQ==} + '@shikijs/core@1.22.0': + resolution: {integrity: sha512-S8sMe4q71TJAW+qG93s5VaiihujRK6rqDFqBnxqvga/3LvqHEnxqBIOPkt//IdXVtHkQWKu4nOQNk0uBGicU7Q==} - '@shikijs/engine-javascript@1.18.0': - resolution: {integrity: sha512-qoP/aO/ATNwYAUw1YMdaip/YVEstMZEgrwhePm83Ll9OeQPuxDZd48szZR8oSQNQBT8m8UlWxZv8EA3lFuyI5A==} + '@shikijs/engine-javascript@1.22.0': + resolution: {integrity: sha512-AeEtF4Gcck2dwBqCFUKYfsCq0s+eEbCEbkUuFou53NZ0sTGnJnJ/05KHQFZxpii5HMXbocV9URYVowOP2wH5kw==} - '@shikijs/engine-oniguruma@1.18.0': - resolution: {integrity: sha512-B9u0ZKI/cud+TcmF8Chyh+R4V5qQVvyDOqXC2l2a4x73PBSBc6sZ0JRAX3eqyJswqir6ktwApUUGBYePdKnMJg==} + '@shikijs/engine-oniguruma@1.22.0': + resolution: {integrity: sha512-5iBVjhu/DYs1HB0BKsRRFipRrD7rqjxlWTj4F2Pf+nQSPqc3kcyqFFeZXnBMzDf0HdqaFVvhDRAGiYNvyLP+Mw==} - '@shikijs/transformers@1.18.0': - resolution: {integrity: sha512-EdX/UIVaaS8qp9NWRyHIXp2dmuLpdVvx+UVpbIn9eafFlLemAuljPb2+K40ie6jrlg0uUIqkg25CM/8I34yBNw==} + '@shikijs/transformers@1.22.0': + resolution: {integrity: sha512-k7iMOYuGQA62KwAuJOQBgH2IQb5vP8uiB3lMvAMGUgAMMurePOx3Z7oNqJdcpxqZP6I9cc7nc4DNqSKduCxmdg==} - '@shikijs/types@1.18.0': - resolution: {integrity: sha512-O9N36UEaGGrxv1yUrN2nye7gDLG5Uq0/c1LyfmxsvzNPqlHzWo9DI0A4+fhW2y3bGKuQu/fwS7EPdKJJCowcVA==} + '@shikijs/types@1.22.0': + resolution: {integrity: sha512-Fw/Nr7FGFhlQqHfxzZY8Cwtwk5E9nKDUgeLjZgt3UuhcM3yJR9xj3ZGNravZZok8XmEZMiYkSMTPlPkULB8nww==} - '@shikijs/vscode-textmate@9.2.2': - resolution: {integrity: sha512-TMp15K+GGYrWlZM8+Lnj9EaHEFmOen0WJBrfa17hF7taDOYthuPPV0GWzfd/9iMij0akS/8Yw2ikquH7uVi/fg==} + '@shikijs/vscode-textmate@9.3.0': + resolution: {integrity: sha512-jn7/7ky30idSkd/O5yDBfAnVt+JJpepofP/POZ1iMOxK59cOfqIgg/Dj0eFsjOTMw+4ycJN0uhZH/Eb0bs/EUA==} '@stylistic/eslint-plugin@2.8.0': resolution: {integrity: sha512-Ufvk7hP+bf+pD35R/QfunF793XlSRIC7USr3/EdgduK9j13i2JjmsM0LUz3/foS+jDYp2fzyWZA9N44CPur0Ow==} @@ -1023,15 +1023,27 @@ packages: '@volar/typescript@2.4.5': resolution: {integrity: sha512-mcT1mHvLljAEtHviVcBuOyAwwMKz1ibXTi5uYtP/pf4XxoAzpdkQ+Br2IC0NPCvLCbjPZmbf3I0udndkfB1CDg==} + '@vue/compiler-core@3.5.11': + resolution: {integrity: sha512-PwAdxs7/9Hc3ieBO12tXzmTD+Ln4qhT/56S+8DvrrZ4kLDn4Z/AMUr8tXJD0axiJBS0RKIoNaR0yMuQB9v9Udg==} + '@vue/compiler-core@3.5.8': resolution: {integrity: sha512-Uzlxp91EPjfbpeO5KtC0KnXPkuTfGsNDeaKQJxQN718uz+RqDYarEf7UhQJGK+ZYloD2taUbHTI2J4WrUaZQNA==} + '@vue/compiler-dom@3.5.11': + resolution: {integrity: sha512-pyGf8zdbDDRkBrEzf8p7BQlMKNNF5Fk/Cf/fQ6PiUz9at4OaUfyXW0dGJTo2Vl1f5U9jSLCNf0EZJEogLXoeew==} + '@vue/compiler-dom@3.5.8': resolution: {integrity: sha512-GUNHWvoDSbSa5ZSHT9SnV5WkStWfzJwwTd6NMGzilOE/HM5j+9EB9zGXdtu/fCNEmctBqMs6C9SvVPpVPuk1Eg==} + '@vue/compiler-sfc@3.5.11': + resolution: {integrity: sha512-gsbBtT4N9ANXXepprle+X9YLg2htQk1sqH/qGJ/EApl+dgpUBdTv3yP7YlR535uHZY3n6XaR0/bKo0BgwwDniw==} + '@vue/compiler-sfc@3.5.8': resolution: {integrity: sha512-taYpngQtSysrvO9GULaOSwcG5q821zCoIQBtQQSx7Uf7DxpR6CIHR90toPr9QfDD2mqHQPCSgoWBvJu0yV9zjg==} + '@vue/compiler-ssr@3.5.11': + resolution: {integrity: sha512-P4+GPjOuC2aFTk1Z4WANvEhyOykcvEd5bIj2KVNGKGfM745LaXGr++5njpdBTzVz5pZifdlR1kpYSJJpIlSePA==} + '@vue/compiler-ssr@3.5.8': resolution: {integrity: sha512-W96PtryNsNG9u0ZnN5Q5j27Z/feGrFV6zy9q5tzJVyJaLiwYxvC0ek4IXClZygyhjm+XKM7WD9pdKi/wIRVC/Q==} @@ -1055,20 +1067,37 @@ packages: typescript: optional: true + '@vue/reactivity@3.5.11': + resolution: {integrity: sha512-Nqo5VZEn8MJWlCce8XoyVqHZbd5P2NH+yuAaFzuNSR96I+y1cnuUiq7xfSG+kyvLSiWmaHTKP1r3OZY4mMD50w==} + '@vue/reactivity@3.5.8': resolution: {integrity: sha512-mlgUyFHLCUZcAYkqvzYnlBRCh0t5ZQfLYit7nukn1GR96gc48Bp4B7OIcSfVSvlG1k3BPfD+p22gi1t2n9tsXg==} + '@vue/runtime-core@3.5.11': + resolution: {integrity: sha512-7PsxFGqwfDhfhh0OcDWBG1DaIQIVOLgkwA5q6MtkPiDFjp5gohVnJEahSktwSFLq7R5PtxDKy6WKURVN1UDbzA==} + '@vue/runtime-core@3.5.8': resolution: {integrity: sha512-fJuPelh64agZ8vKkZgp5iCkPaEqFJsYzxLk9vSC0X3G8ppknclNDr61gDc45yBGTaN5Xqc1qZWU3/NoaBMHcjQ==} + '@vue/runtime-dom@3.5.11': + resolution: {integrity: sha512-GNghjecT6IrGf0UhuYmpgaOlN7kxzQBhxWEn08c/SQDxv1yy4IXI1bn81JgEpQ4IXjRxWtPyI8x0/7TF5rPfYQ==} + '@vue/runtime-dom@3.5.8': resolution: {integrity: sha512-DpAUz+PKjTZPUOB6zJgkxVI3GuYc2iWZiNeeHQUw53kdrparSTG6HeXUrYDjaam8dVsCdvQxDz6ZWxnyjccUjQ==} + '@vue/server-renderer@3.5.11': + resolution: {integrity: sha512-cVOwYBxR7Wb1B1FoxYvtjJD8X/9E5nlH4VSkJy2uMA1MzYNdzAAB//l8nrmN9py/4aP+3NjWukf9PZ3TeWULaA==} + peerDependencies: + vue: 3.5.11 + '@vue/server-renderer@3.5.8': resolution: {integrity: sha512-7AmC9/mEeV9mmXNVyUIm1a1AjUhyeeGNbkLh39J00E7iPeGks8OGRB5blJiMmvqSh8SkaS7jkLWSpXtxUCeagA==} peerDependencies: vue: 3.5.8 + '@vue/shared@3.5.11': + resolution: {integrity: sha512-W8GgysJVnFo81FthhzurdRAWP/byq3q2qIw70e0JWblzVhjgOMiC2GyovXrZTFQJnFVryYaKGP3Tc9vYzYm6PQ==} + '@vue/shared@3.5.8': resolution: {integrity: sha512-mJleSWbAGySd2RJdX1RBtcrUBX6snyOc0qHpgk3lGi4l9/P/3ny3ELqFWqYdkXIwwNN/kdm8nD9ky8o6l/Lx2A==} @@ -2992,8 +3021,8 @@ packages: shell-quote@1.8.1: resolution: {integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==} - shiki@1.18.0: - resolution: {integrity: sha512-8jo7tOXr96h9PBQmOHVrltnETn1honZZY76YA79MHheGQg55jBvbm9dtU+MI5pjC5NJCFuA6rvVTLVeSW5cE4A==} + shiki@1.22.0: + resolution: {integrity: sha512-/t5LlhNs+UOKQCYBtl5ZsH/Vclz73GIqT2yQsCBygr8L/ppTdmpL4w3kPLoZJbMKVWtoG77Ue1feOjZfDxvMkw==} side-channel@1.0.6: resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==} @@ -3460,8 +3489,39 @@ packages: terser: optional: true - vitepress@1.3.4: - resolution: {integrity: sha512-I1/F6OW1xl3kW4PaIMC6snxjWgf3qfziq2aqsDoFc/Gt41WbcRv++z8zjw8qGRIJ+I4bUW7ZcKFDHHN/jkH9DQ==} + vite@5.4.8: + resolution: {integrity: sha512-FqrItQ4DT1NC4zCUqMB4c4AZORMKIa0m8/URVCZ77OZ/QSNeJ54bU1vrFADbDsuwfIPcgknRkmqakQcgnL4GiQ==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + peerDependencies: + '@types/node': ^18.0.0 || >=20.0.0 + less: '*' + lightningcss: ^1.21.0 + sass: '*' + sass-embedded: '*' + stylus: '*' + sugarss: '*' + terser: ^5.4.0 + peerDependenciesMeta: + '@types/node': + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + sass-embedded: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + + vitepress@1.4.0: + resolution: {integrity: sha512-JXCv4EsKTDyAFb6C/UjZr7nsGAzZ6mafVk2rx7rG5o8N+B/4QstIk+iEOe/9dKoU6V624UIC6g1pZ+K63rxhlw==} hasBin: true peerDependencies: markdown-it-mathjax3: ^4 @@ -3517,6 +3577,14 @@ packages: peerDependencies: typescript: '>=5.0.0' + vue@3.5.11: + resolution: {integrity: sha512-/8Wurrd9J3lb72FTQS7gRMNQD4nztTtKPmuDuPuhqXmmpD6+skVjAeahNpVzsuky6Sy9gy7wn8UadqPtt9SQIg==} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + vue@3.5.8: resolution: {integrity: sha512-hvuvuCy51nP/1fSRvrrIqTLSvrSyz2Pq+KQ8S8SXCxTWVE0nMaOnSDnSOxV1eYmGfvK7mqiwvd1C59CEEz7dAQ==} peerDependencies: @@ -3847,11 +3915,11 @@ snapshots: transitivePeerDependencies: - supports-color - '@docsearch/css@3.6.1': {} + '@docsearch/css@3.6.2': {} - '@docsearch/js@3.6.1(@algolia/client-search@5.5.3)(search-insights@2.17.2)': + '@docsearch/js@3.6.2(@algolia/client-search@5.5.3)(search-insights@2.17.2)': dependencies: - '@docsearch/react': 3.6.1(@algolia/client-search@5.5.3)(search-insights@2.17.2) + '@docsearch/react': 3.6.2(@algolia/client-search@5.5.3)(search-insights@2.17.2) preact: 10.24.0 transitivePeerDependencies: - '@algolia/client-search' @@ -3860,11 +3928,11 @@ snapshots: - react-dom - search-insights - '@docsearch/react@3.6.1(@algolia/client-search@5.5.3)(search-insights@2.17.2)': + '@docsearch/react@3.6.2(@algolia/client-search@5.5.3)(search-insights@2.17.2)': dependencies: '@algolia/autocomplete-core': 1.9.3(@algolia/client-search@5.5.3)(algoliasearch@4.24.0)(search-insights@2.17.2) '@algolia/autocomplete-preset-algolia': 1.9.3(@algolia/client-search@5.5.3)(algoliasearch@4.24.0) - '@docsearch/css': 3.6.1 + '@docsearch/css': 3.6.2 algoliasearch: 4.24.0 optionalDependencies: search-insights: 2.17.2 @@ -4218,36 +4286,36 @@ snapshots: '@rollup/rollup-win32-x64-msvc@4.22.4': optional: true - '@shikijs/core@1.18.0': + '@shikijs/core@1.22.0': dependencies: - '@shikijs/engine-javascript': 1.18.0 - '@shikijs/engine-oniguruma': 1.18.0 - '@shikijs/types': 1.18.0 - '@shikijs/vscode-textmate': 9.2.2 + '@shikijs/engine-javascript': 1.22.0 + '@shikijs/engine-oniguruma': 1.22.0 + '@shikijs/types': 1.22.0 + '@shikijs/vscode-textmate': 9.3.0 '@types/hast': 3.0.4 hast-util-to-html: 9.0.3 - '@shikijs/engine-javascript@1.18.0': + '@shikijs/engine-javascript@1.22.0': dependencies: - '@shikijs/types': 1.18.0 - '@shikijs/vscode-textmate': 9.2.2 + '@shikijs/types': 1.22.0 + '@shikijs/vscode-textmate': 9.3.0 oniguruma-to-js: 0.4.3 - '@shikijs/engine-oniguruma@1.18.0': + '@shikijs/engine-oniguruma@1.22.0': dependencies: - '@shikijs/types': 1.18.0 - '@shikijs/vscode-textmate': 9.2.2 + '@shikijs/types': 1.22.0 + '@shikijs/vscode-textmate': 9.3.0 - '@shikijs/transformers@1.18.0': + '@shikijs/transformers@1.22.0': dependencies: - shiki: 1.18.0 + shiki: 1.22.0 - '@shikijs/types@1.18.0': + '@shikijs/types@1.22.0': dependencies: - '@shikijs/vscode-textmate': 9.2.2 + '@shikijs/vscode-textmate': 9.3.0 '@types/hast': 3.0.4 - '@shikijs/vscode-textmate@9.2.2': {} + '@shikijs/vscode-textmate@9.3.0': {} '@stylistic/eslint-plugin@2.8.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2)': dependencies: @@ -4412,12 +4480,12 @@ snapshots: '@ungap/structured-clone@1.2.0': {} - '@vitejs/plugin-vue@5.1.4(vite@5.4.7(@types/node@20.16.5))(vue@3.5.8(typescript@5.6.2))': + '@vitejs/plugin-vue@5.1.4(vite@5.4.8(@types/node@20.16.5))(vue@3.5.11(typescript@5.6.2))': dependencies: - vite: 5.4.7(@types/node@20.16.5) - vue: 3.5.8(typescript@5.6.2) + vite: 5.4.8(@types/node@20.16.5) + vue: 3.5.11(typescript@5.6.2) - '@vitest/coverage-v8@2.1.1(vitest@2.1.1(@types/node@20.16.5)(@vitest/ui@2.1.1)(jsdom@25.0.1))': + '@vitest/coverage-v8@2.1.1(vitest@2.1.1)': dependencies: '@ampproject/remapping': 2.3.0 '@bcoe/v8-coverage': 0.2.3 @@ -4435,7 +4503,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@vitest/eslint-plugin@1.1.4(@typescript-eslint/utils@8.7.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2))(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2)(vitest@2.1.1(@types/node@20.16.5)(@vitest/ui@2.1.1)(jsdom@25.0.1))': + '@vitest/eslint-plugin@1.1.4(@typescript-eslint/utils@8.7.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2))(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2)(vitest@2.1.1)': dependencies: eslint: 9.11.0(jiti@1.21.6) optionalDependencies: @@ -4506,6 +4574,14 @@ snapshots: path-browserify: 1.0.1 vscode-uri: 3.0.8 + '@vue/compiler-core@3.5.11': + dependencies: + '@babel/parser': 7.25.6 + '@vue/shared': 3.5.11 + entities: 4.5.0 + estree-walker: 2.0.2 + source-map-js: 1.2.1 + '@vue/compiler-core@3.5.8': dependencies: '@babel/parser': 7.25.6 @@ -4514,11 +4590,28 @@ snapshots: estree-walker: 2.0.2 source-map-js: 1.2.1 + '@vue/compiler-dom@3.5.11': + dependencies: + '@vue/compiler-core': 3.5.11 + '@vue/shared': 3.5.11 + '@vue/compiler-dom@3.5.8': dependencies: '@vue/compiler-core': 3.5.8 '@vue/shared': 3.5.8 + '@vue/compiler-sfc@3.5.11': + dependencies: + '@babel/parser': 7.25.6 + '@vue/compiler-core': 3.5.11 + '@vue/compiler-dom': 3.5.11 + '@vue/compiler-ssr': 3.5.11 + '@vue/shared': 3.5.11 + estree-walker: 2.0.2 + magic-string: 0.30.11 + postcss: 8.4.47 + source-map-js: 1.2.1 + '@vue/compiler-sfc@3.5.8': dependencies: '@babel/parser': 7.25.6 @@ -4531,6 +4624,11 @@ snapshots: postcss: 8.4.47 source-map-js: 1.2.1 + '@vue/compiler-ssr@3.5.11': + dependencies: + '@vue/compiler-dom': 3.5.11 + '@vue/shared': 3.5.11 + '@vue/compiler-ssr@3.5.8': dependencies: '@vue/compiler-dom': 3.5.8 @@ -4572,15 +4670,31 @@ snapshots: optionalDependencies: typescript: 5.6.2 + '@vue/reactivity@3.5.11': + dependencies: + '@vue/shared': 3.5.11 + '@vue/reactivity@3.5.8': dependencies: '@vue/shared': 3.5.8 + '@vue/runtime-core@3.5.11': + dependencies: + '@vue/reactivity': 3.5.11 + '@vue/shared': 3.5.11 + '@vue/runtime-core@3.5.8': dependencies: '@vue/reactivity': 3.5.8 '@vue/shared': 3.5.8 + '@vue/runtime-dom@3.5.11': + dependencies: + '@vue/reactivity': 3.5.11 + '@vue/runtime-core': 3.5.11 + '@vue/shared': 3.5.11 + csstype: 3.1.3 + '@vue/runtime-dom@3.5.8': dependencies: '@vue/reactivity': 3.5.8 @@ -4588,14 +4702,32 @@ snapshots: '@vue/shared': 3.5.8 csstype: 3.1.3 + '@vue/server-renderer@3.5.11(vue@3.5.11(typescript@5.6.2))': + dependencies: + '@vue/compiler-ssr': 3.5.11 + '@vue/shared': 3.5.11 + vue: 3.5.11(typescript@5.6.2) + '@vue/server-renderer@3.5.8(vue@3.5.8(typescript@5.6.2))': dependencies: '@vue/compiler-ssr': 3.5.8 '@vue/shared': 3.5.8 vue: 3.5.8(typescript@5.6.2) + '@vue/shared@3.5.11': {} + '@vue/shared@3.5.8': {} + '@vueuse/core@11.1.0(vue@3.5.11(typescript@5.6.2))': + dependencies: + '@types/web-bluetooth': 0.0.20 + '@vueuse/metadata': 11.1.0 + '@vueuse/shared': 11.1.0(vue@3.5.11(typescript@5.6.2)) + vue-demi: 0.14.10(vue@3.5.11(typescript@5.6.2)) + transitivePeerDependencies: + - '@vue/composition-api' + - vue + '@vueuse/core@11.1.0(vue@3.5.8(typescript@5.6.2))': dependencies: '@types/web-bluetooth': 0.0.20 @@ -4606,11 +4738,11 @@ snapshots: - '@vue/composition-api' - vue - '@vueuse/integrations@11.1.0(focus-trap@7.6.0)(vue@3.5.8(typescript@5.6.2))': + '@vueuse/integrations@11.1.0(focus-trap@7.6.0)(vue@3.5.11(typescript@5.6.2))': dependencies: - '@vueuse/core': 11.1.0(vue@3.5.8(typescript@5.6.2)) - '@vueuse/shared': 11.1.0(vue@3.5.8(typescript@5.6.2)) - vue-demi: 0.14.10(vue@3.5.8(typescript@5.6.2)) + '@vueuse/core': 11.1.0(vue@3.5.11(typescript@5.6.2)) + '@vueuse/shared': 11.1.0(vue@3.5.11(typescript@5.6.2)) + vue-demi: 0.14.10(vue@3.5.11(typescript@5.6.2)) optionalDependencies: focus-trap: 7.6.0 transitivePeerDependencies: @@ -4619,6 +4751,13 @@ snapshots: '@vueuse/metadata@11.1.0': {} + '@vueuse/shared@11.1.0(vue@3.5.11(typescript@5.6.2))': + dependencies: + vue-demi: 0.14.10(vue@3.5.11(typescript@5.6.2)) + transitivePeerDependencies: + - '@vue/composition-api' + - vue + '@vueuse/shared@11.1.0(vue@3.5.8(typescript@5.6.2))': dependencies: vue-demi: 0.14.10(vue@3.5.8(typescript@5.6.2)) @@ -6593,13 +6732,13 @@ snapshots: shell-quote@1.8.1: {} - shiki@1.18.0: + shiki@1.22.0: dependencies: - '@shikijs/core': 1.18.0 - '@shikijs/engine-javascript': 1.18.0 - '@shikijs/engine-oniguruma': 1.18.0 - '@shikijs/types': 1.18.0 - '@shikijs/vscode-textmate': 9.2.2 + '@shikijs/core': 1.22.0 + '@shikijs/engine-javascript': 1.22.0 + '@shikijs/engine-oniguruma': 1.22.0 + '@shikijs/types': 1.22.0 + '@shikijs/vscode-textmate': 9.3.0 '@types/hast': 3.0.4 side-channel@1.0.6: @@ -7058,24 +7197,34 @@ snapshots: '@types/node': 20.16.5 fsevents: 2.3.3 - vitepress@1.3.4(@algolia/client-search@5.5.3)(@types/node@20.16.5)(postcss@8.4.47)(search-insights@2.17.2)(typescript@5.6.2): + vite@5.4.8(@types/node@20.16.5): + dependencies: + esbuild: 0.21.5 + postcss: 8.4.47 + rollup: 4.22.4 + optionalDependencies: + '@types/node': 20.16.5 + fsevents: 2.3.3 + + vitepress@1.4.0(@algolia/client-search@5.5.3)(@types/node@20.16.5)(postcss@8.4.47)(search-insights@2.17.2)(typescript@5.6.2): dependencies: - '@docsearch/css': 3.6.1 - '@docsearch/js': 3.6.1(@algolia/client-search@5.5.3)(search-insights@2.17.2) - '@shikijs/core': 1.18.0 - '@shikijs/transformers': 1.18.0 + '@docsearch/css': 3.6.2 + '@docsearch/js': 3.6.2(@algolia/client-search@5.5.3)(search-insights@2.17.2) + '@shikijs/core': 1.22.0 + '@shikijs/transformers': 1.22.0 + '@shikijs/types': 1.22.0 '@types/markdown-it': 14.1.2 - '@vitejs/plugin-vue': 5.1.4(vite@5.4.7(@types/node@20.16.5))(vue@3.5.8(typescript@5.6.2)) + '@vitejs/plugin-vue': 5.1.4(vite@5.4.8(@types/node@20.16.5))(vue@3.5.11(typescript@5.6.2)) '@vue/devtools-api': 7.4.6 - '@vue/shared': 3.5.8 - '@vueuse/core': 11.1.0(vue@3.5.8(typescript@5.6.2)) - '@vueuse/integrations': 11.1.0(focus-trap@7.6.0)(vue@3.5.8(typescript@5.6.2)) + '@vue/shared': 3.5.11 + '@vueuse/core': 11.1.0(vue@3.5.11(typescript@5.6.2)) + '@vueuse/integrations': 11.1.0(focus-trap@7.6.0)(vue@3.5.11(typescript@5.6.2)) focus-trap: 7.6.0 mark.js: 8.11.1 minisearch: 7.1.0 - shiki: 1.18.0 - vite: 5.4.7(@types/node@20.16.5) - vue: 3.5.8(typescript@5.6.2) + shiki: 1.22.0 + vite: 5.4.8(@types/node@20.16.5) + vue: 3.5.11(typescript@5.6.2) optionalDependencies: postcss: 8.4.47 transitivePeerDependencies: @@ -7144,6 +7293,10 @@ snapshots: vscode-uri@3.0.8: {} + vue-demi@0.14.10(vue@3.5.11(typescript@5.6.2)): + dependencies: + vue: 3.5.11(typescript@5.6.2) + vue-demi@0.14.10(vue@3.5.8(typescript@5.6.2)): dependencies: vue: 3.5.8(typescript@5.6.2) @@ -7155,6 +7308,16 @@ snapshots: semver: 7.6.3 typescript: 5.6.2 + vue@3.5.11(typescript@5.6.2): + dependencies: + '@vue/compiler-dom': 3.5.11 + '@vue/compiler-sfc': 3.5.11 + '@vue/runtime-dom': 3.5.11 + '@vue/server-renderer': 3.5.11(vue@3.5.11(typescript@5.6.2)) + '@vue/shared': 3.5.11 + optionalDependencies: + typescript: 5.6.2 + vue@3.5.8(typescript@5.6.2): dependencies: '@vue/compiler-dom': 3.5.8 From 1403727aa81c6daaad3a1319eaea09ffb16b3927 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 10 Oct 2024 00:27:19 +0200 Subject: [PATCH 07/18] chore(deps): update devdependencies (#3149) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 14 +- pnpm-lock.yaml | 374 ++++++++++++++++++++----------------------------- 2 files changed, 158 insertions(+), 230 deletions(-) diff --git a/package.json b/package.json index 17321b1883c..ca9a6542612 100644 --- a/package.json +++ b/package.json @@ -106,9 +106,9 @@ "@actions/github": "6.0.0", "@eslint/compat": "1.1.1", "@eslint/js": "9.11.0", - "@stylistic/eslint-plugin": "2.8.0", + "@stylistic/eslint-plugin": "2.9.0", "@types/eslint__js": "8.42.3", - "@types/node": "20.16.5", + "@types/node": "20.16.11", "@types/sanitize-html": "2.13.0", "@types/semver": "7.5.8", "@types/validator": "13.12.2", @@ -117,7 +117,7 @@ "@vitest/ui": "2.1.1", "@vueuse/core": "11.1.0", "commit-and-tag-version": "12.4.4", - "cypress": "13.14.2", + "cypress": "13.15.0", "eslint": "9.11.0", "eslint-config-prettier": "9.1.0", "eslint-plugin-jsdoc": "50.2.4", @@ -127,9 +127,9 @@ "npm-run-all2": "6.2.3", "prettier": "3.3.3", "prettier-plugin-organize-imports": "4.1.0", - "prettier-plugin-packagejson": "2.5.2", + "prettier-plugin-packagejson": "2.5.3", "rimraf": "5.0.10", - "sanitize-html": "2.13.0", + "sanitize-html": "2.13.1", "semver": "7.6.3", "ts-morph": "23.0.0", "tsup": "8.3.0", @@ -137,10 +137,10 @@ "typescript": "5.6.2", "typescript-eslint": "8.7.0", "validator": "13.12.0", - "vite": "5.4.7", + "vite": "5.4.8", "vitepress": "1.4.0", "vitest": "2.1.1", - "vue": "3.5.8", + "vue": "3.5.11", "vue-tsc": "2.1.6" }, "packageManager": "pnpm@9.12.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 18ce7242ec2..3af8f09faec 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -18,14 +18,14 @@ importers: specifier: 9.11.0 version: 9.11.0 '@stylistic/eslint-plugin': - specifier: 2.8.0 - version: 2.8.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2) + specifier: 2.9.0 + version: 2.9.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2) '@types/eslint__js': specifier: 8.42.3 version: 8.42.3 '@types/node': - specifier: 20.16.5 - version: 20.16.5 + specifier: 20.16.11 + version: 20.16.11 '@types/sanitize-html': specifier: 2.13.0 version: 2.13.0 @@ -40,19 +40,19 @@ importers: version: 2.1.1(vitest@2.1.1) '@vitest/eslint-plugin': specifier: 1.1.4 - version: 1.1.4(@typescript-eslint/utils@8.7.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2))(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2)(vitest@2.1.1) + version: 1.1.4(@typescript-eslint/utils@8.8.1(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2))(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2)(vitest@2.1.1) '@vitest/ui': specifier: 2.1.1 version: 2.1.1(vitest@2.1.1) '@vueuse/core': specifier: 11.1.0 - version: 11.1.0(vue@3.5.8(typescript@5.6.2)) + version: 11.1.0(vue@3.5.11(typescript@5.6.2)) commit-and-tag-version: specifier: 12.4.4 version: 12.4.4 cypress: - specifier: 13.14.2 - version: 13.14.2 + specifier: 13.15.0 + version: 13.15.0 eslint: specifier: 9.11.0 version: 9.11.0(jiti@1.21.6) @@ -81,14 +81,14 @@ importers: specifier: 4.1.0 version: 4.1.0(prettier@3.3.3)(typescript@5.6.2)(vue-tsc@2.1.6(typescript@5.6.2)) prettier-plugin-packagejson: - specifier: 2.5.2 - version: 2.5.2(prettier@3.3.3) + specifier: 2.5.3 + version: 2.5.3(prettier@3.3.3) rimraf: specifier: 5.0.10 version: 5.0.10 sanitize-html: - specifier: 2.13.0 - version: 2.13.0 + specifier: 2.13.1 + version: 2.13.1 semver: specifier: 7.6.3 version: 7.6.3 @@ -111,17 +111,17 @@ importers: specifier: 13.12.0 version: 13.12.0 vite: - specifier: 5.4.7 - version: 5.4.7(@types/node@20.16.5) + specifier: 5.4.8 + version: 5.4.8(@types/node@20.16.11) vitepress: specifier: 1.4.0 - version: 1.4.0(@algolia/client-search@5.5.3)(@types/node@20.16.5)(postcss@8.4.47)(search-insights@2.17.2)(typescript@5.6.2) + version: 1.4.0(@algolia/client-search@5.5.3)(@types/node@20.16.11)(postcss@8.4.47)(search-insights@2.17.2)(typescript@5.6.2) vitest: specifier: 2.1.1 - version: 2.1.1(@types/node@20.16.5)(@vitest/ui@2.1.1)(jsdom@25.0.1) + version: 2.1.1(@types/node@20.16.11)(@vitest/ui@2.1.1)(jsdom@25.0.1) vue: - specifier: 3.5.8 - version: 3.5.8(typescript@5.6.2) + specifier: 3.5.11 + version: 3.5.11(typescript@5.6.2) vue-tsc: specifier: 2.1.6 version: 2.1.6(typescript@5.6.2) @@ -816,8 +816,8 @@ packages: '@shikijs/vscode-textmate@9.3.0': resolution: {integrity: sha512-jn7/7ky30idSkd/O5yDBfAnVt+JJpepofP/POZ1iMOxK59cOfqIgg/Dj0eFsjOTMw+4ycJN0uhZH/Eb0bs/EUA==} - '@stylistic/eslint-plugin@2.8.0': - resolution: {integrity: sha512-Ufvk7hP+bf+pD35R/QfunF793XlSRIC7USr3/EdgduK9j13i2JjmsM0LUz3/foS+jDYp2fzyWZA9N44CPur0Ow==} + '@stylistic/eslint-plugin@2.9.0': + resolution: {integrity: sha512-OrDyFAYjBT61122MIY1a3SfEgy3YCMgt2vL4eoPmvTwDBwyQhAXurxNQznlRD/jESNfYWfID8Ej+31LljvF7Xg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: '>=8.40.0' @@ -858,8 +858,8 @@ packages: '@types/minimist@1.2.5': resolution: {integrity: sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==} - '@types/node@20.16.5': - resolution: {integrity: sha512-VwYCweNo3ERajwy0IUlqqcyZ8/A7Zwa9ZP3MnENWcB11AejO+tLy3pu850goUW2FC/IJMdZUfKpX/yxL1gymCA==} + '@types/node@20.16.11': + resolution: {integrity: sha512-y+cTCACu92FyA5fgQSAI8A1H429g7aSK2HsO7K4XYUWc4dY5IUz55JSDIYT6/VsOLfGy8vmvQYC2hfb0iF16Uw==} '@types/normalize-package-data@2.4.4': resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} @@ -913,6 +913,10 @@ packages: resolution: {integrity: sha512-87rC0k3ZlDOuz82zzXRtQ7Akv3GKhHs0ti4YcbAJtaomllXoSO8hi7Ix3ccEvCd824dy9aIX+j3d2UMAfCtVpg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/scope-manager@8.8.1': + resolution: {integrity: sha512-X4JdU+66Mazev/J0gfXlcC/dV6JI37h+93W9BRYXrSn0hrE64IoWgVkO9MSJgEzoWkxONgaQpICWg8vAN74wlA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/type-utils@8.7.0': resolution: {integrity: sha512-tl0N0Mj3hMSkEYhLkjREp54OSb/FI6qyCzfiiclvJvOqre6hsZTGSnHtmFLDU8TIM62G7ygEa1bI08lcuRwEnQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -926,6 +930,10 @@ packages: resolution: {integrity: sha512-LLt4BLHFwSfASHSF2K29SZ+ZCsbQOM+LuarPjRUuHm+Qd09hSe3GCeaQbcCr+Mik+0QFRmep/FyZBO6fJ64U3w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/types@8.8.1': + resolution: {integrity: sha512-WCcTP4SDXzMd23N27u66zTKMuEevH4uzU8C9jf0RO4E04yVHgQgW+r+TeVTNnO1KIfrL8ebgVVYYMMO3+jC55Q==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/typescript-estree@8.7.0': resolution: {integrity: sha512-MC8nmcGHsmfAKxwnluTQpNqceniT8SteVwd2voYlmiSWGOtjvGXdPl17dYu2797GVscK30Z04WRM28CrKS9WOg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -935,16 +943,35 @@ packages: typescript: optional: true + '@typescript-eslint/typescript-estree@8.8.1': + resolution: {integrity: sha512-A5d1R9p+X+1js4JogdNilDuuq+EHZdsH9MjTVxXOdVFfTJXunKJR/v+fNNyO4TnoOn5HqobzfRlc70NC6HTcdg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + '@typescript-eslint/utils@8.7.0': resolution: {integrity: sha512-ZbdUdwsl2X/s3CiyAu3gOlfQzpbuG3nTWKPoIvAu1pu5r8viiJvv2NPN2AqArL35NCYtw/lrPPfM4gxrMLNLPw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 + '@typescript-eslint/utils@8.8.1': + resolution: {integrity: sha512-/QkNJDbV0bdL7H7d0/y0qBbV2HTtf0TIyjSDTvvmQEzeVx8jEImEbLuOA4EsvE8gIgqMitns0ifb5uQhMj8d9w==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + '@typescript-eslint/visitor-keys@8.7.0': resolution: {integrity: sha512-b1tx0orFCCh/THWPQa2ZwWzvOeyzzp36vkJYOpVg0u8UVOIsfVrnuC9FqAw9gRKn+rG2VmWQ/zDJZzkxUnj/XQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/visitor-keys@8.8.1': + resolution: {integrity: sha512-0/TdC3aeRAsW7MDvYRwEc1Uwm0TIBfzjPFgg60UU2Haj5qsCs9cc3zNgY71edqE3LbWfF/WoZQd3lJoDXFQpag==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@ungap/structured-clone@1.2.0': resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} @@ -1026,27 +1053,15 @@ packages: '@vue/compiler-core@3.5.11': resolution: {integrity: sha512-PwAdxs7/9Hc3ieBO12tXzmTD+Ln4qhT/56S+8DvrrZ4kLDn4Z/AMUr8tXJD0axiJBS0RKIoNaR0yMuQB9v9Udg==} - '@vue/compiler-core@3.5.8': - resolution: {integrity: sha512-Uzlxp91EPjfbpeO5KtC0KnXPkuTfGsNDeaKQJxQN718uz+RqDYarEf7UhQJGK+ZYloD2taUbHTI2J4WrUaZQNA==} - '@vue/compiler-dom@3.5.11': resolution: {integrity: sha512-pyGf8zdbDDRkBrEzf8p7BQlMKNNF5Fk/Cf/fQ6PiUz9at4OaUfyXW0dGJTo2Vl1f5U9jSLCNf0EZJEogLXoeew==} - '@vue/compiler-dom@3.5.8': - resolution: {integrity: sha512-GUNHWvoDSbSa5ZSHT9SnV5WkStWfzJwwTd6NMGzilOE/HM5j+9EB9zGXdtu/fCNEmctBqMs6C9SvVPpVPuk1Eg==} - '@vue/compiler-sfc@3.5.11': resolution: {integrity: sha512-gsbBtT4N9ANXXepprle+X9YLg2htQk1sqH/qGJ/EApl+dgpUBdTv3yP7YlR535uHZY3n6XaR0/bKo0BgwwDniw==} - '@vue/compiler-sfc@3.5.8': - resolution: {integrity: sha512-taYpngQtSysrvO9GULaOSwcG5q821zCoIQBtQQSx7Uf7DxpR6CIHR90toPr9QfDD2mqHQPCSgoWBvJu0yV9zjg==} - '@vue/compiler-ssr@3.5.11': resolution: {integrity: sha512-P4+GPjOuC2aFTk1Z4WANvEhyOykcvEd5bIj2KVNGKGfM745LaXGr++5njpdBTzVz5pZifdlR1kpYSJJpIlSePA==} - '@vue/compiler-ssr@3.5.8': - resolution: {integrity: sha512-W96PtryNsNG9u0ZnN5Q5j27Z/feGrFV6zy9q5tzJVyJaLiwYxvC0ek4IXClZygyhjm+XKM7WD9pdKi/wIRVC/Q==} - '@vue/compiler-vue2@2.7.16': resolution: {integrity: sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A==} @@ -1070,37 +1085,20 @@ packages: '@vue/reactivity@3.5.11': resolution: {integrity: sha512-Nqo5VZEn8MJWlCce8XoyVqHZbd5P2NH+yuAaFzuNSR96I+y1cnuUiq7xfSG+kyvLSiWmaHTKP1r3OZY4mMD50w==} - '@vue/reactivity@3.5.8': - resolution: {integrity: sha512-mlgUyFHLCUZcAYkqvzYnlBRCh0t5ZQfLYit7nukn1GR96gc48Bp4B7OIcSfVSvlG1k3BPfD+p22gi1t2n9tsXg==} - '@vue/runtime-core@3.5.11': resolution: {integrity: sha512-7PsxFGqwfDhfhh0OcDWBG1DaIQIVOLgkwA5q6MtkPiDFjp5gohVnJEahSktwSFLq7R5PtxDKy6WKURVN1UDbzA==} - '@vue/runtime-core@3.5.8': - resolution: {integrity: sha512-fJuPelh64agZ8vKkZgp5iCkPaEqFJsYzxLk9vSC0X3G8ppknclNDr61gDc45yBGTaN5Xqc1qZWU3/NoaBMHcjQ==} - '@vue/runtime-dom@3.5.11': resolution: {integrity: sha512-GNghjecT6IrGf0UhuYmpgaOlN7kxzQBhxWEn08c/SQDxv1yy4IXI1bn81JgEpQ4IXjRxWtPyI8x0/7TF5rPfYQ==} - '@vue/runtime-dom@3.5.8': - resolution: {integrity: sha512-DpAUz+PKjTZPUOB6zJgkxVI3GuYc2iWZiNeeHQUw53kdrparSTG6HeXUrYDjaam8dVsCdvQxDz6ZWxnyjccUjQ==} - '@vue/server-renderer@3.5.11': resolution: {integrity: sha512-cVOwYBxR7Wb1B1FoxYvtjJD8X/9E5nlH4VSkJy2uMA1MzYNdzAAB//l8nrmN9py/4aP+3NjWukf9PZ3TeWULaA==} peerDependencies: vue: 3.5.11 - '@vue/server-renderer@3.5.8': - resolution: {integrity: sha512-7AmC9/mEeV9mmXNVyUIm1a1AjUhyeeGNbkLh39J00E7iPeGks8OGRB5blJiMmvqSh8SkaS7jkLWSpXtxUCeagA==} - peerDependencies: - vue: 3.5.8 - '@vue/shared@3.5.11': resolution: {integrity: sha512-W8GgysJVnFo81FthhzurdRAWP/byq3q2qIw70e0JWblzVhjgOMiC2GyovXrZTFQJnFVryYaKGP3Tc9vYzYm6PQ==} - '@vue/shared@3.5.8': - resolution: {integrity: sha512-mJleSWbAGySd2RJdX1RBtcrUBX6snyOc0qHpgk3lGi4l9/P/3ny3ELqFWqYdkXIwwNN/kdm8nD9ky8o6l/Lx2A==} - '@vueuse/core@11.1.0': resolution: {integrity: sha512-P6dk79QYA6sKQnghrUz/1tHi0n9mrb/iO1WTMk/ElLmTyNqgDeSZ3wcDf6fRBGzRJbeG1dxzEOvLENMjr+E3fg==} @@ -1580,8 +1578,8 @@ packages: csstype@3.1.3: resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} - cypress@13.14.2: - resolution: {integrity: sha512-lsiQrN17vHMB2fnvxIrKLAjOr9bPwsNbPZNrWf99s4u+DVmCY6U+w7O3GGG9FvP4EUVYaDu+guWeNLiUzBrqvA==} + cypress@13.15.0: + resolution: {integrity: sha512-53aO7PwOfi604qzOkCSzNlWquCynLlKE/rmmpSPcziRH6LNfaDUAklQT6WJIsD8ywxlIy+uVZsnTMCCQVd2kTw==} engines: {node: ^16.0.0 || ^18.0.0 || >=20.0.0} hasBin: true @@ -1810,6 +1808,10 @@ packages: resolution: {integrity: sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + eslint-visitor-keys@4.1.0: + resolution: {integrity: sha512-Q7lok0mqMUSf5a/AdAZkA5a/gHcO6snwQClVNNvFKCAVlxXucdU8pKydU5ZVZjBx5xr37vGbFFWtLQYreLzrZg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + eslint@9.11.0: resolution: {integrity: sha512-yVS6XODx+tMFMDFcG4+Hlh+qG7RM6cCJXtQhCKLSsr3XkLvWggHjCqjfh0XsPPnt1c56oaT6PMgW9XWQQjdHXA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -1824,6 +1826,10 @@ packages: resolution: {integrity: sha512-M1M6CpiE6ffoigIOWYO9UDP8TMUw9kqb21tf+08IgDYjCsOvCuDt4jQcZmoYxx+w7zlKw9/N0KXfto+I8/FrXA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + espree@10.2.0: + resolution: {integrity: sha512-upbkBJbckcCNBDBDXEbuhjbP68n+scUd3k/U2EkyM9nw+I/jPiL4cLF/Al06CF96wRltFda16sxDFrxsI1v0/g==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + esquery@1.6.0: resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} engines: {node: '>=0.10'} @@ -2824,8 +2830,8 @@ packages: vue-tsc: optional: true - prettier-plugin-packagejson@2.5.2: - resolution: {integrity: sha512-w+TmoLv2pIa+siplW1cCj2ujEXQQS6z7wmWLOiLQK/2QVl7Wy6xh/ZUpqQw8tbKMXDodmSW4GONxlA33xpdNOg==} + prettier-plugin-packagejson@2.5.3: + resolution: {integrity: sha512-ATMEEXr+ywls1kgrZEWl4SBPEm0uDdyDAjyNzUC0/Z8WZTD3RqbJcQDR+Dau+wYkW9KHK6zqQIsFyfn+9aduWg==} peerDependencies: prettier: '>= 1.16.0' peerDependenciesMeta: @@ -2987,8 +2993,8 @@ packages: safer-buffer@2.1.2: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} - sanitize-html@2.13.0: - resolution: {integrity: sha512-Xff91Z+4Mz5QiNSLdLWwjgBDm5b1RU6xBT0+12rapjiaR7SwfRdjw8f+6Rir2MXKLrDicRFHdb51hGOAxmsUIA==} + sanitize-html@2.13.1: + resolution: {integrity: sha512-ZXtKq89oue4RP7abL9wp/9URJcqQNABB5GGJ2acW1sdO8JTVl92f4ygD7Yc9Ze09VAZhnt2zegeU0tbNsdcLYg==} saxes@6.0.0: resolution: {integrity: sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==} @@ -3188,6 +3194,10 @@ packages: resolution: {integrity: sha512-7gr8p9TQP6RAHusBOSLs46F4564ZrjV8xFmw5zCmgmhGUcw2hxsShhJ6CEiHQMgPDwAQ1fWHPM0ypc4RMAig4A==} engines: {node: ^14.18.0 || >=16.0.0} + synckit@0.9.2: + resolution: {integrity: sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==} + engines: {node: ^14.18.0 || >=16.0.0} + tabbable@6.2.0: resolution: {integrity: sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==} @@ -3458,37 +3468,6 @@ packages: engines: {node: ^18.0.0 || >=20.0.0} hasBin: true - vite@5.4.7: - resolution: {integrity: sha512-5l2zxqMEPVENgvzTuBpHer2awaetimj2BGkhBPdnwKbPNOlHsODU+oiazEZzLK7KhAnOrO+XGYJYn4ZlUhDtDQ==} - engines: {node: ^18.0.0 || >=20.0.0} - hasBin: true - peerDependencies: - '@types/node': ^18.0.0 || >=20.0.0 - less: '*' - lightningcss: ^1.21.0 - sass: '*' - sass-embedded: '*' - stylus: '*' - sugarss: '*' - terser: ^5.4.0 - peerDependenciesMeta: - '@types/node': - optional: true - less: - optional: true - lightningcss: - optional: true - sass: - optional: true - sass-embedded: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - vite@5.4.8: resolution: {integrity: sha512-FqrItQ4DT1NC4zCUqMB4c4AZORMKIa0m8/URVCZ77OZ/QSNeJ54bU1vrFADbDsuwfIPcgknRkmqakQcgnL4GiQ==} engines: {node: ^18.0.0 || >=20.0.0} @@ -3585,14 +3564,6 @@ packages: typescript: optional: true - vue@3.5.8: - resolution: {integrity: sha512-hvuvuCy51nP/1fSRvrrIqTLSvrSyz2Pq+KQ8S8SXCxTWVE0nMaOnSDnSOxV1eYmGfvK7mqiwvd1C59CEEz7dAQ==} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - w3c-xmlserializer@5.0.0: resolution: {integrity: sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==} engines: {node: '>=18'} @@ -4317,12 +4288,12 @@ snapshots: '@shikijs/vscode-textmate@9.3.0': {} - '@stylistic/eslint-plugin@2.8.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2)': + '@stylistic/eslint-plugin@2.9.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2)': dependencies: - '@typescript-eslint/utils': 8.7.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2) + '@typescript-eslint/utils': 8.8.1(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2) eslint: 9.11.0(jiti@1.21.6) - eslint-visitor-keys: 4.0.0 - espree: 10.1.0 + eslint-visitor-keys: 4.1.0 + espree: 10.2.0 estraverse: 5.3.0 picomatch: 4.0.2 transitivePeerDependencies: @@ -4370,7 +4341,7 @@ snapshots: '@types/minimist@1.2.5': {} - '@types/node@20.16.5': + '@types/node@20.16.11': dependencies: undici-types: 6.19.8 @@ -4394,7 +4365,7 @@ snapshots: '@types/yauzl@2.10.3': dependencies: - '@types/node': 20.16.5 + '@types/node': 20.16.11 optional: true '@typescript-eslint/eslint-plugin@8.7.0(@typescript-eslint/parser@8.7.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2))(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2)': @@ -4433,6 +4404,11 @@ snapshots: '@typescript-eslint/types': 8.7.0 '@typescript-eslint/visitor-keys': 8.7.0 + '@typescript-eslint/scope-manager@8.8.1': + dependencies: + '@typescript-eslint/types': 8.8.1 + '@typescript-eslint/visitor-keys': 8.8.1 + '@typescript-eslint/type-utils@8.7.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2)': dependencies: '@typescript-eslint/typescript-estree': 8.7.0(typescript@5.6.2) @@ -4447,6 +4423,8 @@ snapshots: '@typescript-eslint/types@8.7.0': {} + '@typescript-eslint/types@8.8.1': {} + '@typescript-eslint/typescript-estree@8.7.0(typescript@5.6.2)': dependencies: '@typescript-eslint/types': 8.7.0 @@ -4462,6 +4440,21 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/typescript-estree@8.8.1(typescript@5.6.2)': + dependencies: + '@typescript-eslint/types': 8.8.1 + '@typescript-eslint/visitor-keys': 8.8.1 + debug: 4.3.7(supports-color@8.1.1) + fast-glob: 3.3.2 + is-glob: 4.0.3 + minimatch: 9.0.5 + semver: 7.6.3 + ts-api-utils: 1.3.0(typescript@5.6.2) + optionalDependencies: + typescript: 5.6.2 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/utils@8.7.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2)': dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@9.11.0(jiti@1.21.6)) @@ -4473,16 +4466,32 @@ snapshots: - supports-color - typescript + '@typescript-eslint/utils@8.8.1(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2)': + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@9.11.0(jiti@1.21.6)) + '@typescript-eslint/scope-manager': 8.8.1 + '@typescript-eslint/types': 8.8.1 + '@typescript-eslint/typescript-estree': 8.8.1(typescript@5.6.2) + eslint: 9.11.0(jiti@1.21.6) + transitivePeerDependencies: + - supports-color + - typescript + '@typescript-eslint/visitor-keys@8.7.0': dependencies: '@typescript-eslint/types': 8.7.0 eslint-visitor-keys: 3.4.3 + '@typescript-eslint/visitor-keys@8.8.1': + dependencies: + '@typescript-eslint/types': 8.8.1 + eslint-visitor-keys: 3.4.3 + '@ungap/structured-clone@1.2.0': {} - '@vitejs/plugin-vue@5.1.4(vite@5.4.8(@types/node@20.16.5))(vue@3.5.11(typescript@5.6.2))': + '@vitejs/plugin-vue@5.1.4(vite@5.4.8(@types/node@20.16.11))(vue@3.5.11(typescript@5.6.2))': dependencies: - vite: 5.4.8(@types/node@20.16.5) + vite: 5.4.8(@types/node@20.16.11) vue: 3.5.11(typescript@5.6.2) '@vitest/coverage-v8@2.1.1(vitest@2.1.1)': @@ -4499,17 +4508,17 @@ snapshots: std-env: 3.7.0 test-exclude: 7.0.1 tinyrainbow: 1.2.0 - vitest: 2.1.1(@types/node@20.16.5)(@vitest/ui@2.1.1)(jsdom@25.0.1) + vitest: 2.1.1(@types/node@20.16.11)(@vitest/ui@2.1.1)(jsdom@25.0.1) transitivePeerDependencies: - supports-color - '@vitest/eslint-plugin@1.1.4(@typescript-eslint/utils@8.7.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2))(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2)(vitest@2.1.1)': + '@vitest/eslint-plugin@1.1.4(@typescript-eslint/utils@8.8.1(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2))(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2)(vitest@2.1.1)': dependencies: eslint: 9.11.0(jiti@1.21.6) optionalDependencies: - '@typescript-eslint/utils': 8.7.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2) + '@typescript-eslint/utils': 8.8.1(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2) typescript: 5.6.2 - vitest: 2.1.1(@types/node@20.16.5)(@vitest/ui@2.1.1)(jsdom@25.0.1) + vitest: 2.1.1(@types/node@20.16.11)(@vitest/ui@2.1.1)(jsdom@25.0.1) '@vitest/expect@2.1.1': dependencies: @@ -4518,13 +4527,13 @@ snapshots: chai: 5.1.1 tinyrainbow: 1.2.0 - '@vitest/mocker@2.1.1(@vitest/spy@2.1.1)(vite@5.4.7(@types/node@20.16.5))': + '@vitest/mocker@2.1.1(@vitest/spy@2.1.1)(vite@5.4.8(@types/node@20.16.11))': dependencies: '@vitest/spy': 2.1.1 estree-walker: 3.0.3 magic-string: 0.30.11 optionalDependencies: - vite: 5.4.7(@types/node@20.16.5) + vite: 5.4.8(@types/node@20.16.11) '@vitest/pretty-format@2.1.1': dependencies: @@ -4554,7 +4563,7 @@ snapshots: sirv: 2.0.4 tinyglobby: 0.2.6 tinyrainbow: 1.2.0 - vitest: 2.1.1(@types/node@20.16.5)(@vitest/ui@2.1.1)(jsdom@25.0.1) + vitest: 2.1.1(@types/node@20.16.11)(@vitest/ui@2.1.1)(jsdom@25.0.1) '@vitest/utils@2.1.1': dependencies: @@ -4582,24 +4591,11 @@ snapshots: estree-walker: 2.0.2 source-map-js: 1.2.1 - '@vue/compiler-core@3.5.8': - dependencies: - '@babel/parser': 7.25.6 - '@vue/shared': 3.5.8 - entities: 4.5.0 - estree-walker: 2.0.2 - source-map-js: 1.2.1 - '@vue/compiler-dom@3.5.11': dependencies: '@vue/compiler-core': 3.5.11 '@vue/shared': 3.5.11 - '@vue/compiler-dom@3.5.8': - dependencies: - '@vue/compiler-core': 3.5.8 - '@vue/shared': 3.5.8 - '@vue/compiler-sfc@3.5.11': dependencies: '@babel/parser': 7.25.6 @@ -4612,28 +4608,11 @@ snapshots: postcss: 8.4.47 source-map-js: 1.2.1 - '@vue/compiler-sfc@3.5.8': - dependencies: - '@babel/parser': 7.25.6 - '@vue/compiler-core': 3.5.8 - '@vue/compiler-dom': 3.5.8 - '@vue/compiler-ssr': 3.5.8 - '@vue/shared': 3.5.8 - estree-walker: 2.0.2 - magic-string: 0.30.11 - postcss: 8.4.47 - source-map-js: 1.2.1 - '@vue/compiler-ssr@3.5.11': dependencies: '@vue/compiler-dom': 3.5.11 '@vue/shared': 3.5.11 - '@vue/compiler-ssr@3.5.8': - dependencies: - '@vue/compiler-dom': 3.5.8 - '@vue/shared': 3.5.8 - '@vue/compiler-vue2@2.7.16': dependencies: de-indent: 1.0.2 @@ -4660,9 +4639,9 @@ snapshots: '@vue/language-core@2.1.6(typescript@5.6.2)': dependencies: '@volar/language-core': 2.4.5 - '@vue/compiler-dom': 3.5.8 + '@vue/compiler-dom': 3.5.11 '@vue/compiler-vue2': 2.7.16 - '@vue/shared': 3.5.8 + '@vue/shared': 3.5.11 computeds: 0.0.1 minimatch: 9.0.5 muggle-string: 0.4.1 @@ -4674,20 +4653,11 @@ snapshots: dependencies: '@vue/shared': 3.5.11 - '@vue/reactivity@3.5.8': - dependencies: - '@vue/shared': 3.5.8 - '@vue/runtime-core@3.5.11': dependencies: '@vue/reactivity': 3.5.11 '@vue/shared': 3.5.11 - '@vue/runtime-core@3.5.8': - dependencies: - '@vue/reactivity': 3.5.8 - '@vue/shared': 3.5.8 - '@vue/runtime-dom@3.5.11': dependencies: '@vue/reactivity': 3.5.11 @@ -4695,29 +4665,14 @@ snapshots: '@vue/shared': 3.5.11 csstype: 3.1.3 - '@vue/runtime-dom@3.5.8': - dependencies: - '@vue/reactivity': 3.5.8 - '@vue/runtime-core': 3.5.8 - '@vue/shared': 3.5.8 - csstype: 3.1.3 - '@vue/server-renderer@3.5.11(vue@3.5.11(typescript@5.6.2))': dependencies: '@vue/compiler-ssr': 3.5.11 '@vue/shared': 3.5.11 vue: 3.5.11(typescript@5.6.2) - '@vue/server-renderer@3.5.8(vue@3.5.8(typescript@5.6.2))': - dependencies: - '@vue/compiler-ssr': 3.5.8 - '@vue/shared': 3.5.8 - vue: 3.5.8(typescript@5.6.2) - '@vue/shared@3.5.11': {} - '@vue/shared@3.5.8': {} - '@vueuse/core@11.1.0(vue@3.5.11(typescript@5.6.2))': dependencies: '@types/web-bluetooth': 0.0.20 @@ -4728,16 +4683,6 @@ snapshots: - '@vue/composition-api' - vue - '@vueuse/core@11.1.0(vue@3.5.8(typescript@5.6.2))': - dependencies: - '@types/web-bluetooth': 0.0.20 - '@vueuse/metadata': 11.1.0 - '@vueuse/shared': 11.1.0(vue@3.5.8(typescript@5.6.2)) - vue-demi: 0.14.10(vue@3.5.8(typescript@5.6.2)) - transitivePeerDependencies: - - '@vue/composition-api' - - vue - '@vueuse/integrations@11.1.0(focus-trap@7.6.0)(vue@3.5.11(typescript@5.6.2))': dependencies: '@vueuse/core': 11.1.0(vue@3.5.11(typescript@5.6.2)) @@ -4758,13 +4703,6 @@ snapshots: - '@vue/composition-api' - vue - '@vueuse/shared@11.1.0(vue@3.5.8(typescript@5.6.2))': - dependencies: - vue-demi: 0.14.10(vue@3.5.8(typescript@5.6.2)) - transitivePeerDependencies: - - '@vue/composition-api' - - vue - JSONStream@1.3.5: dependencies: jsonparse: 1.3.1 @@ -5213,7 +5151,7 @@ snapshots: csstype@3.1.3: {} - cypress@13.14.2: + cypress@13.15.0: dependencies: '@cypress/request': 3.0.5 '@cypress/xvfb': 1.2.4(supports-color@8.1.1) @@ -5512,6 +5450,8 @@ snapshots: eslint-visitor-keys@4.0.0: {} + eslint-visitor-keys@4.1.0: {} + eslint@9.11.0(jiti@1.21.6): dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@9.11.0(jiti@1.21.6)) @@ -5559,6 +5499,12 @@ snapshots: acorn-jsx: 5.3.2(acorn@8.12.1) eslint-visitor-keys: 4.0.0 + espree@10.2.0: + dependencies: + acorn: 8.12.1 + acorn-jsx: 5.3.2(acorn@8.12.1) + eslint-visitor-keys: 4.1.0 + esquery@1.6.0: dependencies: estraverse: 5.3.0 @@ -6525,10 +6471,10 @@ snapshots: optionalDependencies: vue-tsc: 2.1.6(typescript@5.6.2) - prettier-plugin-packagejson@2.5.2(prettier@3.3.3): + prettier-plugin-packagejson@2.5.3(prettier@3.3.3): dependencies: sort-package-json: 2.10.1 - synckit: 0.9.1 + synckit: 0.9.2 optionalDependencies: prettier: 3.3.3 @@ -6696,7 +6642,7 @@ snapshots: safer-buffer@2.1.2: {} - sanitize-html@2.13.0: + sanitize-html@2.13.1: dependencies: deepmerge: 4.3.1 escape-string-regexp: 4.0.0 @@ -6922,6 +6868,11 @@ snapshots: '@pkgr/core': 0.1.1 tslib: 2.7.0 + synckit@0.9.2: + dependencies: + '@pkgr/core': 0.1.1 + tslib: 2.7.0 + tabbable@6.2.0: {} test-exclude@7.0.1: @@ -7171,12 +7122,12 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.2 - vite-node@2.1.1(@types/node@20.16.5): + vite-node@2.1.1(@types/node@20.16.11): dependencies: cac: 6.7.14 debug: 4.3.7(supports-color@8.1.1) pathe: 1.1.2 - vite: 5.4.7(@types/node@20.16.5) + vite: 5.4.8(@types/node@20.16.11) transitivePeerDependencies: - '@types/node' - less @@ -7188,25 +7139,16 @@ snapshots: - supports-color - terser - vite@5.4.7(@types/node@20.16.5): - dependencies: - esbuild: 0.21.5 - postcss: 8.4.47 - rollup: 4.22.4 - optionalDependencies: - '@types/node': 20.16.5 - fsevents: 2.3.3 - - vite@5.4.8(@types/node@20.16.5): + vite@5.4.8(@types/node@20.16.11): dependencies: esbuild: 0.21.5 postcss: 8.4.47 rollup: 4.22.4 optionalDependencies: - '@types/node': 20.16.5 + '@types/node': 20.16.11 fsevents: 2.3.3 - vitepress@1.4.0(@algolia/client-search@5.5.3)(@types/node@20.16.5)(postcss@8.4.47)(search-insights@2.17.2)(typescript@5.6.2): + vitepress@1.4.0(@algolia/client-search@5.5.3)(@types/node@20.16.11)(postcss@8.4.47)(search-insights@2.17.2)(typescript@5.6.2): dependencies: '@docsearch/css': 3.6.2 '@docsearch/js': 3.6.2(@algolia/client-search@5.5.3)(search-insights@2.17.2) @@ -7214,7 +7156,7 @@ snapshots: '@shikijs/transformers': 1.22.0 '@shikijs/types': 1.22.0 '@types/markdown-it': 14.1.2 - '@vitejs/plugin-vue': 5.1.4(vite@5.4.8(@types/node@20.16.5))(vue@3.5.11(typescript@5.6.2)) + '@vitejs/plugin-vue': 5.1.4(vite@5.4.8(@types/node@20.16.11))(vue@3.5.11(typescript@5.6.2)) '@vue/devtools-api': 7.4.6 '@vue/shared': 3.5.11 '@vueuse/core': 11.1.0(vue@3.5.11(typescript@5.6.2)) @@ -7223,7 +7165,7 @@ snapshots: mark.js: 8.11.1 minisearch: 7.1.0 shiki: 1.22.0 - vite: 5.4.8(@types/node@20.16.5) + vite: 5.4.8(@types/node@20.16.11) vue: 3.5.11(typescript@5.6.2) optionalDependencies: postcss: 8.4.47 @@ -7255,10 +7197,10 @@ snapshots: - typescript - universal-cookie - vitest@2.1.1(@types/node@20.16.5)(@vitest/ui@2.1.1)(jsdom@25.0.1): + vitest@2.1.1(@types/node@20.16.11)(@vitest/ui@2.1.1)(jsdom@25.0.1): dependencies: '@vitest/expect': 2.1.1 - '@vitest/mocker': 2.1.1(@vitest/spy@2.1.1)(vite@5.4.7(@types/node@20.16.5)) + '@vitest/mocker': 2.1.1(@vitest/spy@2.1.1)(vite@5.4.8(@types/node@20.16.11)) '@vitest/pretty-format': 2.1.1 '@vitest/runner': 2.1.1 '@vitest/snapshot': 2.1.1 @@ -7273,11 +7215,11 @@ snapshots: tinyexec: 0.3.0 tinypool: 1.0.1 tinyrainbow: 1.2.0 - vite: 5.4.7(@types/node@20.16.5) - vite-node: 2.1.1(@types/node@20.16.5) + vite: 5.4.8(@types/node@20.16.11) + vite-node: 2.1.1(@types/node@20.16.11) why-is-node-running: 2.3.0 optionalDependencies: - '@types/node': 20.16.5 + '@types/node': 20.16.11 '@vitest/ui': 2.1.1(vitest@2.1.1) jsdom: 25.0.1 transitivePeerDependencies: @@ -7297,10 +7239,6 @@ snapshots: dependencies: vue: 3.5.11(typescript@5.6.2) - vue-demi@0.14.10(vue@3.5.8(typescript@5.6.2)): - dependencies: - vue: 3.5.8(typescript@5.6.2) - vue-tsc@2.1.6(typescript@5.6.2): dependencies: '@volar/typescript': 2.4.5 @@ -7318,16 +7256,6 @@ snapshots: optionalDependencies: typescript: 5.6.2 - vue@3.5.8(typescript@5.6.2): - dependencies: - '@vue/compiler-dom': 3.5.8 - '@vue/compiler-sfc': 3.5.8 - '@vue/runtime-dom': 3.5.8 - '@vue/server-renderer': 3.5.8(vue@3.5.8(typescript@5.6.2)) - '@vue/shared': 3.5.8 - optionalDependencies: - typescript: 5.6.2 - w3c-xmlserializer@5.0.0: dependencies: xml-name-validator: 5.0.0 From 17606589dd58151e43c037a3acfa82046b33e37c Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 10 Oct 2024 14:28:02 +0200 Subject: [PATCH 08/18] chore(deps): update eslint (#3150) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 10 +- pnpm-lock.yaml | 296 ++++++++++++++++++++----------------------------- 2 files changed, 127 insertions(+), 179 deletions(-) diff --git a/package.json b/package.json index ca9a6542612..c14f3114f73 100644 --- a/package.json +++ b/package.json @@ -104,8 +104,8 @@ ], "devDependencies": { "@actions/github": "6.0.0", - "@eslint/compat": "1.1.1", - "@eslint/js": "9.11.0", + "@eslint/compat": "1.2.0", + "@eslint/js": "9.12.0", "@stylistic/eslint-plugin": "2.9.0", "@types/eslint__js": "8.42.3", "@types/node": "20.16.11", @@ -118,9 +118,9 @@ "@vueuse/core": "11.1.0", "commit-and-tag-version": "12.4.4", "cypress": "13.15.0", - "eslint": "9.11.0", + "eslint": "9.12.0", "eslint-config-prettier": "9.1.0", - "eslint-plugin-jsdoc": "50.2.4", + "eslint-plugin-jsdoc": "50.3.1", "eslint-plugin-prettier": "5.2.1", "eslint-plugin-unicorn": "55.0.0", "jiti": "1.21.6", @@ -135,7 +135,7 @@ "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.2", - "typescript-eslint": "8.7.0", + "typescript-eslint": "8.8.1", "validator": "13.12.0", "vite": "5.4.8", "vitepress": "1.4.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3af8f09faec..ab1ce50f283 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -12,14 +12,14 @@ importers: specifier: 6.0.0 version: 6.0.0 '@eslint/compat': - specifier: 1.1.1 - version: 1.1.1 + specifier: 1.2.0 + version: 1.2.0(eslint@9.12.0(jiti@1.21.6)) '@eslint/js': - specifier: 9.11.0 - version: 9.11.0 + specifier: 9.12.0 + version: 9.12.0 '@stylistic/eslint-plugin': specifier: 2.9.0 - version: 2.9.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2) + version: 2.9.0(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2) '@types/eslint__js': specifier: 8.42.3 version: 8.42.3 @@ -40,7 +40,7 @@ importers: version: 2.1.1(vitest@2.1.1) '@vitest/eslint-plugin': specifier: 1.1.4 - version: 1.1.4(@typescript-eslint/utils@8.8.1(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2))(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2)(vitest@2.1.1) + version: 1.1.4(@typescript-eslint/utils@8.8.1(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2))(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2)(vitest@2.1.1) '@vitest/ui': specifier: 2.1.1 version: 2.1.1(vitest@2.1.1) @@ -54,20 +54,20 @@ importers: specifier: 13.15.0 version: 13.15.0 eslint: - specifier: 9.11.0 - version: 9.11.0(jiti@1.21.6) + specifier: 9.12.0 + version: 9.12.0(jiti@1.21.6) eslint-config-prettier: specifier: 9.1.0 - version: 9.1.0(eslint@9.11.0(jiti@1.21.6)) + version: 9.1.0(eslint@9.12.0(jiti@1.21.6)) eslint-plugin-jsdoc: - specifier: 50.2.4 - version: 50.2.4(eslint@9.11.0(jiti@1.21.6)) + specifier: 50.3.1 + version: 50.3.1(eslint@9.12.0(jiti@1.21.6)) eslint-plugin-prettier: specifier: 5.2.1 - version: 5.2.1(@types/eslint@9.6.1)(eslint-config-prettier@9.1.0(eslint@9.11.0(jiti@1.21.6)))(eslint@9.11.0(jiti@1.21.6))(prettier@3.3.3) + version: 5.2.1(@types/eslint@9.6.1)(eslint-config-prettier@9.1.0(eslint@9.12.0(jiti@1.21.6)))(eslint@9.12.0(jiti@1.21.6))(prettier@3.3.3) eslint-plugin-unicorn: specifier: 55.0.0 - version: 55.0.0(eslint@9.11.0(jiti@1.21.6)) + version: 55.0.0(eslint@9.12.0(jiti@1.21.6)) jiti: specifier: 1.21.6 version: 1.21.6 @@ -105,8 +105,8 @@ importers: specifier: 5.6.2 version: 5.6.2 typescript-eslint: - specifier: 8.7.0 - version: 8.7.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2) + specifier: 8.8.1 + version: 8.8.1(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2) validator: specifier: 13.12.0 version: 13.12.0 @@ -581,20 +581,29 @@ packages: resolution: {integrity: sha512-m4DVN9ZqskZoLU5GlWZadwDnYo3vAEydiUayB9widCl9ffWx2IvPnp6n3on5rJmziJSw9Bv+Z3ChDVdMwXCY8Q==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - '@eslint/compat@1.1.1': - resolution: {integrity: sha512-lpHyRyplhGPL5mGEh6M9O5nnKk0Gz4bFI+Zu6tKlPpDUN7XshWvH9C/px4UVm87IAANE0W81CEsNGbS1KlzXpA==} + '@eslint/compat@1.2.0': + resolution: {integrity: sha512-CkPWddN7J9JPrQedEr2X7AjK9y1jaMJtxZ4A/+jTMFA2+n5BWhcKHW/EbJyARqg2zzQfgtWUtVmG3hrG6+nGpg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^9.10.0 + peerDependenciesMeta: + eslint: + optional: true '@eslint/config-array@0.18.0': resolution: {integrity: sha512-fTxvnS1sRMu3+JjXwJG0j/i4RT9u4qJ+lqS/yCGap4lH4zZGzQ7tu+xZqQmcMZq5OBZDL4QRxQzRjkWcGt8IVw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/core@0.6.0': + resolution: {integrity: sha512-8I2Q8ykA4J0x0o7cg67FPVnehcqWTBehu/lmY+bolPFHGjh49YzGBMXTvpqVgEbBdvNCSxj6iFgiIyHzf03lzg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/eslintrc@3.1.0': resolution: {integrity: sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/js@9.11.0': - resolution: {integrity: sha512-LPkkenkDqyzTFauZLLAPhIb48fj6drrfMvRGSL9tS3AcZBSVTllemLSNyCvHNNL2t797S/6DJNSIwRwXgMO/eQ==} + '@eslint/js@9.12.0': + resolution: {integrity: sha512-eohesHH8WFRUprDNyEREgqP6beG6htMeUYeCpkEgBCieCMme5r9zFWjzAJp//9S+Kub4rqE+jXe9Cp1a7IYIIA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/object-schema@2.1.4': @@ -609,12 +618,20 @@ packages: resolution: {integrity: sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==} engines: {node: '>=14'} + '@humanfs/core@0.19.0': + resolution: {integrity: sha512-2cbWIHbZVEweE853g8jymffCA+NCMiuqeECeBBLm8dg2oFdjuGJhgN4UAbI+6v0CKbbhvtXA4qV8YR5Ji86nmw==} + engines: {node: '>=18.18.0'} + + '@humanfs/node@0.16.5': + resolution: {integrity: sha512-KSPA4umqSG4LHYRodq31VDwKAvaTF4xmVlzM8Aeh4PlU1JQ3IG0wiA8C25d3RQ9nJyM3mBHyI53K06VVL/oFFg==} + engines: {node: '>=18.18.0'} + '@humanwhocodes/module-importer@1.0.1': resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} engines: {node: '>=12.22'} - '@humanwhocodes/retry@0.3.0': - resolution: {integrity: sha512-d2CGZR2o7fS6sWB7DG/3a95bGKQyHMACZ5aW8qGkkqQpUoZV6C0X7Pc7l4ZNMZkfNBf4VWNe9E1jRsf0G146Ew==} + '@humanwhocodes/retry@0.3.1': + resolution: {integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==} engines: {node: '>=18.18'} '@hutson/parse-repository-url@3.0.2': @@ -888,8 +905,8 @@ packages: '@types/yauzl@2.10.3': resolution: {integrity: sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==} - '@typescript-eslint/eslint-plugin@8.7.0': - resolution: {integrity: sha512-RIHOoznhA3CCfSTFiB6kBGLQtB/sox+pJ6jeFu6FxJvqL8qRxq/FfGO/UhsGgQM9oGdXkV4xUgli+dt26biB6A==} + '@typescript-eslint/eslint-plugin@8.8.1': + resolution: {integrity: sha512-xfvdgA8AP/vxHgtgU310+WBnLB4uJQ9XdyP17RebG26rLtDrQJV3ZYrcopX91GrHmMoH8bdSwMRh2a//TiJ1jQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 @@ -899,8 +916,8 @@ packages: typescript: optional: true - '@typescript-eslint/parser@8.7.0': - resolution: {integrity: sha512-lN0btVpj2unxHlNYLI//BQ7nzbMJYBVQX5+pbNXvGYazdlgYonMn4AhhHifQ+J4fGRYA/m1DjaQjx+fDetqBOQ==} + '@typescript-eslint/parser@8.8.1': + resolution: {integrity: sha512-hQUVn2Lij2NAxVFEdvIGxT9gP1tq2yM83m+by3whWFsWC+1y8pxxxHUFE1UqDu2VsGi2i6RLcv4QvouM84U+ow==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 @@ -909,16 +926,12 @@ packages: typescript: optional: true - '@typescript-eslint/scope-manager@8.7.0': - resolution: {integrity: sha512-87rC0k3ZlDOuz82zzXRtQ7Akv3GKhHs0ti4YcbAJtaomllXoSO8hi7Ix3ccEvCd824dy9aIX+j3d2UMAfCtVpg==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/scope-manager@8.8.1': resolution: {integrity: sha512-X4JdU+66Mazev/J0gfXlcC/dV6JI37h+93W9BRYXrSn0hrE64IoWgVkO9MSJgEzoWkxONgaQpICWg8vAN74wlA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/type-utils@8.7.0': - resolution: {integrity: sha512-tl0N0Mj3hMSkEYhLkjREp54OSb/FI6qyCzfiiclvJvOqre6hsZTGSnHtmFLDU8TIM62G7ygEa1bI08lcuRwEnQ==} + '@typescript-eslint/type-utils@8.8.1': + resolution: {integrity: sha512-qSVnpcbLP8CALORf0za+vjLYj1Wp8HSoiI8zYU5tHxRVj30702Z1Yw4cLwfNKhTPWp5+P+k1pjmD5Zd1nhxiZA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '*' @@ -926,23 +939,10 @@ packages: typescript: optional: true - '@typescript-eslint/types@8.7.0': - resolution: {integrity: sha512-LLt4BLHFwSfASHSF2K29SZ+ZCsbQOM+LuarPjRUuHm+Qd09hSe3GCeaQbcCr+Mik+0QFRmep/FyZBO6fJ64U3w==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/types@8.8.1': resolution: {integrity: sha512-WCcTP4SDXzMd23N27u66zTKMuEevH4uzU8C9jf0RO4E04yVHgQgW+r+TeVTNnO1KIfrL8ebgVVYYMMO3+jC55Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/typescript-estree@8.7.0': - resolution: {integrity: sha512-MC8nmcGHsmfAKxwnluTQpNqceniT8SteVwd2voYlmiSWGOtjvGXdPl17dYu2797GVscK30Z04WRM28CrKS9WOg==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - '@typescript-eslint/typescript-estree@8.8.1': resolution: {integrity: sha512-A5d1R9p+X+1js4JogdNilDuuq+EHZdsH9MjTVxXOdVFfTJXunKJR/v+fNNyO4TnoOn5HqobzfRlc70NC6HTcdg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -952,22 +952,12 @@ packages: typescript: optional: true - '@typescript-eslint/utils@8.7.0': - resolution: {integrity: sha512-ZbdUdwsl2X/s3CiyAu3gOlfQzpbuG3nTWKPoIvAu1pu5r8viiJvv2NPN2AqArL35NCYtw/lrPPfM4gxrMLNLPw==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - peerDependencies: - eslint: ^8.57.0 || ^9.0.0 - '@typescript-eslint/utils@8.8.1': resolution: {integrity: sha512-/QkNJDbV0bdL7H7d0/y0qBbV2HTtf0TIyjSDTvvmQEzeVx8jEImEbLuOA4EsvE8gIgqMitns0ifb5uQhMj8d9w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 - '@typescript-eslint/visitor-keys@8.7.0': - resolution: {integrity: sha512-b1tx0orFCCh/THWPQa2ZwWzvOeyzzp36vkJYOpVg0u8UVOIsfVrnuC9FqAw9gRKn+rG2VmWQ/zDJZzkxUnj/XQ==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/visitor-keys@8.8.1': resolution: {integrity: sha512-0/TdC3aeRAsW7MDvYRwEc1Uwm0TIBfzjPFgg60UU2Haj5qsCs9cc3zNgY71edqE3LbWfF/WoZQd3lJoDXFQpag==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -1770,8 +1760,8 @@ packages: peerDependencies: eslint: '>=7.0.0' - eslint-plugin-jsdoc@50.2.4: - resolution: {integrity: sha512-020jA+dXaXdb+TML3ZJBvpPmzwbNROjnYuTYi/g6A5QEmEjhptz4oPJDKkOGMIByNxsPpdTLzSU1HYVqebOX1w==} + eslint-plugin-jsdoc@50.3.1: + resolution: {integrity: sha512-SY9oUuTMr6aWoJggUS40LtMjsRzJPB5ZT7F432xZIHK3EfHF+8i48GbUBpwanrtlL9l1gILNTHK9o8gEhYLcKA==} engines: {node: '>=18'} peerDependencies: eslint: ^7.0.0 || ^8.0.0 || ^9.0.0 @@ -1796,24 +1786,20 @@ packages: peerDependencies: eslint: '>=8.56.0' - eslint-scope@8.0.2: - resolution: {integrity: sha512-6E4xmrTw5wtxnLA5wYL3WDfhZ/1bUBGOXV0zQvVRDOtrR8D0p6W7fs3JweNYhwRYeGvd/1CKX2se0/2s7Q/nJA==} + eslint-scope@8.1.0: + resolution: {integrity: sha512-14dSvlhaVhKKsa9Fx1l8A17s7ah7Ef7wCakJ10LYk6+GYmP9yDti2oq2SEwcyndt6knfcZyhyxwY3i9yL78EQw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 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} - eslint-visitor-keys@4.0.0: - resolution: {integrity: sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - eslint-visitor-keys@4.1.0: resolution: {integrity: sha512-Q7lok0mqMUSf5a/AdAZkA5a/gHcO6snwQClVNNvFKCAVlxXucdU8pKydU5ZVZjBx5xr37vGbFFWtLQYreLzrZg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - eslint@9.11.0: - resolution: {integrity: sha512-yVS6XODx+tMFMDFcG4+Hlh+qG7RM6cCJXtQhCKLSsr3XkLvWggHjCqjfh0XsPPnt1c56oaT6PMgW9XWQQjdHXA==} + eslint@9.12.0: + resolution: {integrity: sha512-UVIOlTEWxwIopRL1wgSQYdnVDcEvs2wyaO6DGo5mXqe3r16IoCNWkR29iHhyaP4cICWjbgbmFUGAhh0GJRuGZw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} hasBin: true peerDependencies: @@ -1822,10 +1808,6 @@ packages: jiti: optional: true - espree@10.1.0: - resolution: {integrity: sha512-M1M6CpiE6ffoigIOWYO9UDP8TMUw9kqb21tf+08IgDYjCsOvCuDt4jQcZmoYxx+w7zlKw9/N0KXfto+I8/FrXA==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - espree@10.2.0: resolution: {integrity: sha512-upbkBJbckcCNBDBDXEbuhjbP68n+scUd3k/U2EkyM9nw+I/jPiL4cLF/Al06CF96wRltFda16sxDFrxsI1v0/g==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -3371,8 +3353,8 @@ packages: typedarray@0.0.6: resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==} - typescript-eslint@8.7.0: - resolution: {integrity: sha512-nEHbEYJyHwsuf7c3V3RS7Saq+1+la3i0ieR3qP0yjqWSzVmh8Drp47uOl9LjbPANac4S7EFSqvcYIKXUUwIfIQ==} + typescript-eslint@8.8.1: + resolution: {integrity: sha512-R0dsXFt6t4SAFjUSKFjMh4pXDtq04SsFKCVGDP3ZOzNP7itF0jBcZYU4fMsZr4y7O7V7Nc751dDeESbe4PbQMQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '*' @@ -4057,14 +4039,16 @@ snapshots: '@esbuild/win32-x64@0.23.1': optional: true - '@eslint-community/eslint-utils@4.4.0(eslint@9.11.0(jiti@1.21.6))': + '@eslint-community/eslint-utils@4.4.0(eslint@9.12.0(jiti@1.21.6))': dependencies: - eslint: 9.11.0(jiti@1.21.6) + eslint: 9.12.0(jiti@1.21.6) eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.11.1': {} - '@eslint/compat@1.1.1': {} + '@eslint/compat@1.2.0(eslint@9.12.0(jiti@1.21.6))': + optionalDependencies: + eslint: 9.12.0(jiti@1.21.6) '@eslint/config-array@0.18.0': dependencies: @@ -4074,11 +4058,13 @@ snapshots: transitivePeerDependencies: - supports-color + '@eslint/core@0.6.0': {} + '@eslint/eslintrc@3.1.0': dependencies: ajv: 6.12.6 debug: 4.3.7(supports-color@8.1.1) - espree: 10.1.0 + espree: 10.2.0 globals: 14.0.0 ignore: 5.3.2 import-fresh: 3.3.0 @@ -4088,7 +4074,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@eslint/js@9.11.0': {} + '@eslint/js@9.12.0': {} '@eslint/object-schema@2.1.4': {} @@ -4098,9 +4084,16 @@ snapshots: '@fastify/busboy@2.1.1': {} + '@humanfs/core@0.19.0': {} + + '@humanfs/node@0.16.5': + dependencies: + '@humanfs/core': 0.19.0 + '@humanwhocodes/retry': 0.3.1 + '@humanwhocodes/module-importer@1.0.1': {} - '@humanwhocodes/retry@0.3.0': {} + '@humanwhocodes/retry@0.3.1': {} '@hutson/parse-repository-url@3.0.2': {} @@ -4288,10 +4281,10 @@ snapshots: '@shikijs/vscode-textmate@9.3.0': {} - '@stylistic/eslint-plugin@2.9.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2)': + '@stylistic/eslint-plugin@2.9.0(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2)': dependencies: - '@typescript-eslint/utils': 8.8.1(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2) - eslint: 9.11.0(jiti@1.21.6) + '@typescript-eslint/utils': 8.8.1(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2) + eslint: 9.12.0(jiti@1.21.6) eslint-visitor-keys: 4.1.0 espree: 10.2.0 estraverse: 5.3.0 @@ -4368,15 +4361,15 @@ snapshots: '@types/node': 20.16.11 optional: true - '@typescript-eslint/eslint-plugin@8.7.0(@typescript-eslint/parser@8.7.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2))(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2)': + '@typescript-eslint/eslint-plugin@8.8.1(@typescript-eslint/parser@8.8.1(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2))(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2)': dependencies: '@eslint-community/regexpp': 4.11.1 - '@typescript-eslint/parser': 8.7.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2) - '@typescript-eslint/scope-manager': 8.7.0 - '@typescript-eslint/type-utils': 8.7.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2) - '@typescript-eslint/utils': 8.7.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2) - '@typescript-eslint/visitor-keys': 8.7.0 - eslint: 9.11.0(jiti@1.21.6) + '@typescript-eslint/parser': 8.8.1(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2) + '@typescript-eslint/scope-manager': 8.8.1 + '@typescript-eslint/type-utils': 8.8.1(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2) + '@typescript-eslint/utils': 8.8.1(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2) + '@typescript-eslint/visitor-keys': 8.8.1 + eslint: 9.12.0(jiti@1.21.6) graphemer: 1.4.0 ignore: 5.3.2 natural-compare: 1.4.0 @@ -4386,33 +4379,28 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.7.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2)': + '@typescript-eslint/parser@8.8.1(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2)': dependencies: - '@typescript-eslint/scope-manager': 8.7.0 - '@typescript-eslint/types': 8.7.0 - '@typescript-eslint/typescript-estree': 8.7.0(typescript@5.6.2) - '@typescript-eslint/visitor-keys': 8.7.0 + '@typescript-eslint/scope-manager': 8.8.1 + '@typescript-eslint/types': 8.8.1 + '@typescript-eslint/typescript-estree': 8.8.1(typescript@5.6.2) + '@typescript-eslint/visitor-keys': 8.8.1 debug: 4.3.7(supports-color@8.1.1) - eslint: 9.11.0(jiti@1.21.6) + eslint: 9.12.0(jiti@1.21.6) optionalDependencies: typescript: 5.6.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/scope-manager@8.7.0': - dependencies: - '@typescript-eslint/types': 8.7.0 - '@typescript-eslint/visitor-keys': 8.7.0 - '@typescript-eslint/scope-manager@8.8.1': dependencies: '@typescript-eslint/types': 8.8.1 '@typescript-eslint/visitor-keys': 8.8.1 - '@typescript-eslint/type-utils@8.7.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2)': + '@typescript-eslint/type-utils@8.8.1(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2)': dependencies: - '@typescript-eslint/typescript-estree': 8.7.0(typescript@5.6.2) - '@typescript-eslint/utils': 8.7.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2) + '@typescript-eslint/typescript-estree': 8.8.1(typescript@5.6.2) + '@typescript-eslint/utils': 8.8.1(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2) debug: 4.3.7(supports-color@8.1.1) ts-api-utils: 1.3.0(typescript@5.6.2) optionalDependencies: @@ -4421,25 +4409,8 @@ snapshots: - eslint - supports-color - '@typescript-eslint/types@8.7.0': {} - '@typescript-eslint/types@8.8.1': {} - '@typescript-eslint/typescript-estree@8.7.0(typescript@5.6.2)': - dependencies: - '@typescript-eslint/types': 8.7.0 - '@typescript-eslint/visitor-keys': 8.7.0 - debug: 4.3.7(supports-color@8.1.1) - fast-glob: 3.3.2 - is-glob: 4.0.3 - minimatch: 9.0.5 - semver: 7.6.3 - ts-api-utils: 1.3.0(typescript@5.6.2) - optionalDependencies: - typescript: 5.6.2 - transitivePeerDependencies: - - supports-color - '@typescript-eslint/typescript-estree@8.8.1(typescript@5.6.2)': dependencies: '@typescript-eslint/types': 8.8.1 @@ -4455,33 +4426,17 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.7.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2)': - dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@9.11.0(jiti@1.21.6)) - '@typescript-eslint/scope-manager': 8.7.0 - '@typescript-eslint/types': 8.7.0 - '@typescript-eslint/typescript-estree': 8.7.0(typescript@5.6.2) - eslint: 9.11.0(jiti@1.21.6) - transitivePeerDependencies: - - supports-color - - typescript - - '@typescript-eslint/utils@8.8.1(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2)': + '@typescript-eslint/utils@8.8.1(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2)': dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@9.11.0(jiti@1.21.6)) + '@eslint-community/eslint-utils': 4.4.0(eslint@9.12.0(jiti@1.21.6)) '@typescript-eslint/scope-manager': 8.8.1 '@typescript-eslint/types': 8.8.1 '@typescript-eslint/typescript-estree': 8.8.1(typescript@5.6.2) - eslint: 9.11.0(jiti@1.21.6) + eslint: 9.12.0(jiti@1.21.6) transitivePeerDependencies: - supports-color - typescript - '@typescript-eslint/visitor-keys@8.7.0': - dependencies: - '@typescript-eslint/types': 8.7.0 - eslint-visitor-keys: 3.4.3 - '@typescript-eslint/visitor-keys@8.8.1': dependencies: '@typescript-eslint/types': 8.8.1 @@ -4512,11 +4467,11 @@ snapshots: transitivePeerDependencies: - supports-color - '@vitest/eslint-plugin@1.1.4(@typescript-eslint/utils@8.8.1(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2))(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2)(vitest@2.1.1)': + '@vitest/eslint-plugin@1.1.4(@typescript-eslint/utils@8.8.1(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2))(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2)(vitest@2.1.1)': dependencies: - eslint: 9.11.0(jiti@1.21.6) + eslint: 9.12.0(jiti@1.21.6) optionalDependencies: - '@typescript-eslint/utils': 8.8.1(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2) + '@typescript-eslint/utils': 8.8.1(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2) typescript: 5.6.2 vitest: 2.1.1(@types/node@20.16.11)(@vitest/ui@2.1.1)(jsdom@25.0.1) @@ -5390,45 +5345,45 @@ snapshots: escape-string-regexp@4.0.0: {} - eslint-config-prettier@9.1.0(eslint@9.11.0(jiti@1.21.6)): + eslint-config-prettier@9.1.0(eslint@9.12.0(jiti@1.21.6)): dependencies: - eslint: 9.11.0(jiti@1.21.6) + eslint: 9.12.0(jiti@1.21.6) - eslint-plugin-jsdoc@50.2.4(eslint@9.11.0(jiti@1.21.6)): + eslint-plugin-jsdoc@50.3.1(eslint@9.12.0(jiti@1.21.6)): dependencies: '@es-joy/jsdoccomment': 0.48.0 are-docs-informative: 0.0.2 comment-parser: 1.4.1 debug: 4.3.7(supports-color@8.1.1) escape-string-regexp: 4.0.0 - eslint: 9.11.0(jiti@1.21.6) - espree: 10.1.0 + eslint: 9.12.0(jiti@1.21.6) + espree: 10.2.0 esquery: 1.6.0 parse-imports: 2.2.1 semver: 7.6.3 spdx-expression-parse: 4.0.0 - synckit: 0.9.1 + synckit: 0.9.2 transitivePeerDependencies: - supports-color - eslint-plugin-prettier@5.2.1(@types/eslint@9.6.1)(eslint-config-prettier@9.1.0(eslint@9.11.0(jiti@1.21.6)))(eslint@9.11.0(jiti@1.21.6))(prettier@3.3.3): + eslint-plugin-prettier@5.2.1(@types/eslint@9.6.1)(eslint-config-prettier@9.1.0(eslint@9.12.0(jiti@1.21.6)))(eslint@9.12.0(jiti@1.21.6))(prettier@3.3.3): dependencies: - eslint: 9.11.0(jiti@1.21.6) + eslint: 9.12.0(jiti@1.21.6) prettier: 3.3.3 prettier-linter-helpers: 1.0.0 synckit: 0.9.1 optionalDependencies: '@types/eslint': 9.6.1 - eslint-config-prettier: 9.1.0(eslint@9.11.0(jiti@1.21.6)) + eslint-config-prettier: 9.1.0(eslint@9.12.0(jiti@1.21.6)) - eslint-plugin-unicorn@55.0.0(eslint@9.11.0(jiti@1.21.6)): + eslint-plugin-unicorn@55.0.0(eslint@9.12.0(jiti@1.21.6)): dependencies: '@babel/helper-validator-identifier': 7.24.7 - '@eslint-community/eslint-utils': 4.4.0(eslint@9.11.0(jiti@1.21.6)) + '@eslint-community/eslint-utils': 4.4.0(eslint@9.12.0(jiti@1.21.6)) ci-info: 4.0.0 clean-regexp: 1.0.0 core-js-compat: 3.38.1 - eslint: 9.11.0(jiti@1.21.6) + eslint: 9.12.0(jiti@1.21.6) esquery: 1.6.0 globals: 15.9.0 indent-string: 4.0.0 @@ -5441,36 +5396,37 @@ snapshots: semver: 7.6.3 strip-indent: 3.0.0 - eslint-scope@8.0.2: + eslint-scope@8.1.0: dependencies: esrecurse: 4.3.0 estraverse: 5.3.0 eslint-visitor-keys@3.4.3: {} - eslint-visitor-keys@4.0.0: {} - eslint-visitor-keys@4.1.0: {} - eslint@9.11.0(jiti@1.21.6): + eslint@9.12.0(jiti@1.21.6): dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@9.11.0(jiti@1.21.6)) + '@eslint-community/eslint-utils': 4.4.0(eslint@9.12.0(jiti@1.21.6)) '@eslint-community/regexpp': 4.11.1 '@eslint/config-array': 0.18.0 + '@eslint/core': 0.6.0 '@eslint/eslintrc': 3.1.0 - '@eslint/js': 9.11.0 + '@eslint/js': 9.12.0 '@eslint/plugin-kit': 0.2.0 + '@humanfs/node': 0.16.5 '@humanwhocodes/module-importer': 1.0.1 - '@humanwhocodes/retry': 0.3.0 - '@nodelib/fs.walk': 1.2.8 + '@humanwhocodes/retry': 0.3.1 + '@types/estree': 1.0.6 + '@types/json-schema': 7.0.15 ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.3 debug: 4.3.7(supports-color@8.1.1) escape-string-regexp: 4.0.0 - eslint-scope: 8.0.2 - eslint-visitor-keys: 4.0.0 - espree: 10.1.0 + eslint-scope: 8.1.0 + eslint-visitor-keys: 4.1.0 + espree: 10.2.0 esquery: 1.6.0 esutils: 2.0.3 fast-deep-equal: 3.1.3 @@ -5480,25 +5436,17 @@ snapshots: ignore: 5.3.2 imurmurhash: 0.1.4 is-glob: 4.0.3 - is-path-inside: 3.0.3 json-stable-stringify-without-jsonify: 1.0.1 lodash.merge: 4.6.2 minimatch: 3.1.2 natural-compare: 1.4.0 optionator: 0.9.4 - strip-ansi: 6.0.1 text-table: 0.2.0 optionalDependencies: jiti: 1.21.6 transitivePeerDependencies: - supports-color - espree@10.1.0: - dependencies: - acorn: 8.12.1 - acorn-jsx: 5.3.2(acorn@8.12.1) - eslint-visitor-keys: 4.0.0 - espree@10.2.0: dependencies: acorn: 8.12.1 @@ -7027,11 +6975,11 @@ snapshots: typedarray@0.0.6: {} - typescript-eslint@8.7.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2): + typescript-eslint@8.8.1(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2): dependencies: - '@typescript-eslint/eslint-plugin': 8.7.0(@typescript-eslint/parser@8.7.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2))(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2) - '@typescript-eslint/parser': 8.7.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2) - '@typescript-eslint/utils': 8.7.0(eslint@9.11.0(jiti@1.21.6))(typescript@5.6.2) + '@typescript-eslint/eslint-plugin': 8.8.1(@typescript-eslint/parser@8.8.1(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2))(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2) + '@typescript-eslint/parser': 8.8.1(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2) + '@typescript-eslint/utils': 8.8.1(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2) optionalDependencies: typescript: 5.6.2 transitivePeerDependencies: From 2f93d9da383638b6d232ff8b3cae827ea4c80150 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Cie=C5=9Blar?= Date: Thu, 10 Oct 2024 17:57:27 +0200 Subject: [PATCH 09/18] feat: add book module (#2949) --- docs/.vitepress/api-pages.ts | 1 + scripts/generate-locales.ts | 1 + src/definitions/book.ts | 36 +++ src/definitions/definitions.ts | 2 + src/definitions/index.ts | 1 + src/faker.ts | 2 + src/index.ts | 2 + src/locales/en/book/author.ts | 229 ++++++++++++++++ src/locales/en/book/format.ts | 1 + src/locales/en/book/genre.ts | 27 ++ src/locales/en/book/index.ts | 22 ++ src/locales/en/book/publisher.ts | 262 +++++++++++++++++++ src/locales/en/book/series.ts | 36 +++ src/locales/en/book/title.ts | 243 +++++++++++++++++ src/locales/en/index.ts | 2 + src/locales/pl/book/author.ts | 34 +++ src/locales/pl/book/format.ts | 1 + src/locales/pl/book/genre.ts | 20 ++ src/locales/pl/book/index.ts | 22 ++ src/locales/pl/book/publisher.ts | 12 + src/locales/pl/book/series.ts | 23 ++ src/locales/pl/book/title.ts | 101 +++++++ src/locales/pl/index.ts | 2 + src/modules/book/index.ts | 93 +++++++ test/modules/__snapshots__/book.spec.ts.snap | 37 +++ test/modules/book.spec.ts | 77 ++++++ 26 files changed, 1289 insertions(+) create mode 100644 src/definitions/book.ts create mode 100644 src/locales/en/book/author.ts create mode 100644 src/locales/en/book/format.ts create mode 100644 src/locales/en/book/genre.ts create mode 100644 src/locales/en/book/index.ts create mode 100644 src/locales/en/book/publisher.ts create mode 100644 src/locales/en/book/series.ts create mode 100644 src/locales/en/book/title.ts create mode 100644 src/locales/pl/book/author.ts create mode 100644 src/locales/pl/book/format.ts create mode 100644 src/locales/pl/book/genre.ts create mode 100644 src/locales/pl/book/index.ts create mode 100644 src/locales/pl/book/publisher.ts create mode 100644 src/locales/pl/book/series.ts create mode 100644 src/locales/pl/book/title.ts create mode 100644 src/modules/book/index.ts create mode 100644 test/modules/__snapshots__/book.spec.ts.snap create mode 100644 test/modules/book.spec.ts diff --git a/docs/.vitepress/api-pages.ts b/docs/.vitepress/api-pages.ts index 7df42281564..3a4144123d5 100644 --- a/docs/.vitepress/api-pages.ts +++ b/docs/.vitepress/api-pages.ts @@ -11,6 +11,7 @@ export const apiPages = [ items: [ { text: 'Airline', link: '/api/airline.html' }, { text: 'Animal', link: '/api/animal.html' }, + { text: 'Book', link: '/api/book.html' }, { text: 'Color', link: '/api/color.html' }, { text: 'Commerce', link: '/api/commerce.html' }, { text: 'Company', link: '/api/company.html' }, diff --git a/scripts/generate-locales.ts b/scripts/generate-locales.ts index 7172ea892f5..e18bdb716fd 100644 --- a/scripts/generate-locales.ts +++ b/scripts/generate-locales.ts @@ -52,6 +52,7 @@ type DefinitionType = { const definitionsTypes: DefinitionType = { airline: 'AirlineDefinition', animal: 'AnimalDefinition', + book: 'BookDefinition', color: 'ColorDefinition', commerce: 'CommerceDefinition', company: 'CompanyDefinition', diff --git a/src/definitions/book.ts b/src/definitions/book.ts new file mode 100644 index 00000000000..c10e530cc71 --- /dev/null +++ b/src/definitions/book.ts @@ -0,0 +1,36 @@ +import type { LocaleEntry } from './definitions'; + +/** + * The possible definitions related to books. + */ +export type BookDefinition = LocaleEntry<{ + /** + * The names of actual book authors. + */ + author: string[]; + + /** + * The formats of a book. + */ + format: string[]; + + /** + * The names of some book genres. + */ + genre: string[]; + + /** + * The names of actual book series. + */ + series: string[]; + + /** + * The names of actual book titles. + */ + title: string[]; + + /** + * The names of actual book publishers. + */ + publisher: string[]; +}>; diff --git a/src/definitions/definitions.ts b/src/definitions/definitions.ts index cf760f0bcf0..d207ec123f3 100644 --- a/src/definitions/definitions.ts +++ b/src/definitions/definitions.ts @@ -1,5 +1,6 @@ import type { AirlineDefinition } from './airline'; import type { AnimalDefinition } from './animal'; +import type { BookDefinition } from './book'; import type { ColorDefinition } from './color'; import type { CommerceDefinition } from './commerce'; import type { CompanyDefinition } from './company'; @@ -34,6 +35,7 @@ export type LocaleDefinition = { metadata?: MetadataDefinition; airline?: AirlineDefinition; animal?: AnimalDefinition; + book?: BookDefinition; color?: ColorDefinition; commerce?: CommerceDefinition; company?: CompanyDefinition; diff --git a/src/definitions/index.ts b/src/definitions/index.ts index 367892b7b47..68ac04011f1 100644 --- a/src/definitions/index.ts +++ b/src/definitions/index.ts @@ -1,5 +1,6 @@ export type { AirlineDefinition } from './airline'; export type { AnimalDefinition } from './animal'; +export type { BookDefinition } from './book'; export type { ColorDefinition } from './color'; export type { CommerceDefinition, diff --git a/src/faker.ts b/src/faker.ts index 7b7f5e162a3..77630d29ee7 100644 --- a/src/faker.ts +++ b/src/faker.ts @@ -5,6 +5,7 @@ import type { LocaleProxy } from './internal/locale-proxy'; import { createLocaleProxy } from './internal/locale-proxy'; import { AirlineModule } from './modules/airline'; import { AnimalModule } from './modules/animal'; +import { BookModule } from './modules/book'; import { ColorModule } from './modules/color'; import { CommerceModule } from './modules/commerce'; import { CompanyModule } from './modules/company'; @@ -63,6 +64,7 @@ export class Faker extends SimpleFaker { readonly airline: AirlineModule = new AirlineModule(this); readonly animal: AnimalModule = new AnimalModule(this); + readonly book: BookModule = new BookModule(this); readonly color: ColorModule = new ColorModule(this); readonly commerce: CommerceModule = new CommerceModule(this); readonly company: CompanyModule = new CompanyModule(this); diff --git a/src/index.ts b/src/index.ts index f94b3aa0133..bef353cea8a 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,6 +1,7 @@ export type { AirlineDefinition, AnimalDefinition, + BookDefinition, ColorDefinition, CommerceDefinition, CommerceProductNameDefinition, @@ -36,6 +37,7 @@ export * from './locales'; export { Aircraft } from './modules/airline'; export type { AircraftType, AirlineModule } from './modules/airline'; export type { AnimalModule } from './modules/animal'; +export type { BookModule } from './modules/book'; export { CssFunction, CssSpace } from './modules/color'; export type { Casing, diff --git a/src/locales/en/book/author.ts b/src/locales/en/book/author.ts new file mode 100644 index 00000000000..c2483428260 --- /dev/null +++ b/src/locales/en/book/author.ts @@ -0,0 +1,229 @@ +export default [ + 'A.A. Milne', + 'Agatha Christie', + 'Alan Moore and Dave Gibbons', + 'Albert Camus', + 'Aldous Huxley', + 'Alexander Pope', + 'Alexandre Dumas', + 'Alice Walker', + 'Andrew Lang', + 'Anne Frank', + 'Anthony Burgess', + 'Anthony Trollope', + 'Antoine de Saint-Exupéry', + 'Anton Chekhov', + 'Anton Pavlovich Chekhov', + 'Arthur Conan Doyle', + 'Arthur Schopenhauer', + 'Aylmer Maude', + 'Ayn Rand', + 'Beatrix Potter', + 'Benjamin Disraeli', + 'Benjamin Jowett', + 'Bernard Shaw', + 'Bertrand Russell', + 'Bhagavanlal Indrajit', + 'Boris Pasternak', + 'Bram Stoker', + 'Brian Evenson', + 'C.E. Brock', + 'C.S. Lewis', + 'Carson McCallers', + 'Charles Dickens', + 'Charles E. Derbyshire', + 'Charlotte Brontë', + 'Charlotte Perkins Gilman', + 'Chinua Achebe', + 'Clifford R. Adams', + 'Constance Garnett', + 'Cormac McCarthy', + 'D.H. Lawrence', + 'Dan Brown', + 'Daniel Defoe', + 'Dante Alighieri', + 'Dashiell Hammett', + 'David Widger', + 'David Wyllie', + 'Dean Koontz', + 'Don DeLillo', + 'E.M. Forster', + 'Edgar Allan Poe', + 'Edgar Rice Burroughs', + 'Elizabeth Cleghorn Gaskell', + 'Elizabeth Von Arnim', + 'Emily Brontë', + 'Erich Remarque', + 'Ernest Hemingway', + 'Evelyn Waugh', + 'F. Scott Fitzgerald', + 'Ford Madox Ford', + 'Frances Hodgson Burnett', + 'Frank Herbert', + 'Frank T. Merrill', + 'Franz Kafka', + 'Friedrich Wilhelm Nietzsche', + 'Fyodor Dostoyevsky', + 'G.K. Chesterton', + 'Gabriel Garcia Marquez', + 'Geoffrey Chaucer', + 'George Eliot', + 'George Grossmith', + 'George Orwell', + 'George R. R. Martin', + 'George Saunders', + 'Grady Ward', + 'Graham Greene', + 'Gustave Doré', + 'Gustave Flaubert', + 'Guy de Maupassant', + 'Günter Grass', + 'H.G. Wells', + 'H.P. Lovecraft', + 'Harper Lee', + 'Harriet Beecher Stowe', + 'Haruki Murakami', + 'Henrik Ibsen', + 'Henry David Thoreau', + 'Henry Fielding', + 'Henry James', + 'Henry Miller', + 'Henry Morley', + 'Herman Melville', + 'Hermann Broch', + 'Homer', + 'Honoré de Balzac', + 'Ian McEwan', + 'Isabel Florence Hapgood', + 'Italo Calvino', + 'J.D. Salinger', + 'J.K. Rowling', + 'J.M. Barrie', + 'J.R.R. Tolkien', + 'Jack Kerouac', + 'Jack London', + 'Jacob Grimm', + 'Jacqueline Crooks', + 'James Baldwin', + 'James Dickey', + 'James Ellroy', + 'James Joyce', + 'James Patterson', + 'Jane Austen', + 'Johann Wolfgang von Goethe', + 'John Bunyan', + 'John Camden Hotten', + 'John Dos Passos', + 'John Green', + 'John Grisham', + 'John Kennedy Toole', + 'John Milton', + 'John Ormsby', + 'John Steinbeck', + 'John Updike', + 'Jonathan Franzen', + 'Jonathan Swift', + 'Joseph Conrad', + 'Joseph Heller', + 'José Rizal', + 'Judy Blume', + 'Jules Verne', + 'Junot Diaz', + 'Karl Marx', + 'Kazuo Ishiguro', + 'Ken Follett', + 'Ken Kesey', + 'Kenneth Grahame', + 'Khaled Hosseini', + 'Kingsley Amis', + 'Kurt Vonnegut', + 'L. Frank Baum', + 'L.M. Montgomery', + 'Laurence Sterne', + 'Leo Tolstoy', + 'Lewis Carroll', + 'Louisa May Alcott', + 'Louise Maude', + 'Malcolm Lowry', + 'Marcel Proust', + 'Margaret Atwood', + 'Margaret Mitchell', + 'Marilynne Robinson', + 'Mark Twain', + 'Martin Amis', + 'Mary Shelley', + 'Michael Chabon', + 'Miguel de Cervantes', + 'Mikhail Bulgakov', + 'Muriel Spark', + 'Nancy Mitford', + 'Nathanael West', + 'Nathaniel Hawthorne', + 'Neil Gaiman', + 'Niccolo Machiavelli', + 'Norman Mailer', + 'Oscar Levy', + 'Oscar Wilde', + 'P.G. Wodehouse', + 'Paulo Coelho', + 'Peter Carey', + 'Philip Pullman', + 'Philip Roth', + 'Plato', + 'R.L. Stine', + 'Rachel Kushner', + 'Ralph Ellison', + 'Ray Bradbury', + 'Raymond Chandler', + 'Richard Wagner', + 'Richard Wright', + 'Richard Yates', + 'Roald Dahl', + 'Robert Graves', + 'Robert Louis Stevenson', + 'Robert Penn Warren', + 'Rudyard Kipling', + 'Salman Rushdie', + 'Samuel Beckett', + 'Samuel Butler', + 'Samuel Richardson', + 'Saul Bellow', + 'Shivaram Parashuram Bhide', + 'Sir Arthur Conan Doyle', + 'Sir Richard Francis Burton', + 'Stendhal', + 'Stephen Hawking', + 'Stephen King', + 'Sun Tzu', + 'Suzanne Collins', + 'T. Smollett', + 'T.S. Eliot', + 'Theodore Alois Buckley', + 'Theodore Dreiser', + 'Thomas Hardy', + 'Thomas Love Peacock', + 'Thomas Mann', + 'Toni Morrison', + 'Truman Capote', + 'V.S. Naipaul', + 'Vance Packard', + 'Vatsyayana', + 'Victor Hugo', + 'Virgil', + 'Virginia Woolf', + 'Vladimir Nabokov', + 'Voltaire', + 'W.G. Sebald', + 'W.K. Marriott', + 'Walker Percy', + 'Walt Whitman', + 'Walter Scott', + 'Wilhelm Grimm', + 'Wilkie Collins', + 'William Faulkner', + 'William Gibson', + 'William Golding', + 'William Makepeace Thackeray', + 'William Shakespeare', + 'Zadie Smith', +]; diff --git a/src/locales/en/book/format.ts b/src/locales/en/book/format.ts new file mode 100644 index 00000000000..44dcc1fbc4a --- /dev/null +++ b/src/locales/en/book/format.ts @@ -0,0 +1 @@ +export default ['Audiobook', 'Ebook', 'Hardcover', 'Paperback']; diff --git a/src/locales/en/book/genre.ts b/src/locales/en/book/genre.ts new file mode 100644 index 00000000000..d0f26aee2fb --- /dev/null +++ b/src/locales/en/book/genre.ts @@ -0,0 +1,27 @@ +export default [ + 'Adventure', + 'Biography', + 'Business', + "Children's Literature", + 'Classic', + 'Comedy', + 'Comic', + 'Detective', + 'Drama', + 'Fantasy', + 'Graphic Novel', + 'Historical Fiction', + 'Horror', + 'Memoir', + 'Mystery', + 'Mythology', + 'Philosophy', + 'Poetry', + 'Psychology', + 'Religion', + 'Romance', + 'Science Fiction', + 'Thriller', + 'Western', + 'Young Adult', +]; diff --git a/src/locales/en/book/index.ts b/src/locales/en/book/index.ts new file mode 100644 index 00000000000..43ead3988d5 --- /dev/null +++ b/src/locales/en/book/index.ts @@ -0,0 +1,22 @@ +/* + * This file is automatically generated. + * Run 'pnpm run generate:locales' to update. + */ +import type { BookDefinition } from '../../..'; +import author from './author'; +import format from './format'; +import genre from './genre'; +import publisher from './publisher'; +import series from './series'; +import title from './title'; + +const book: BookDefinition = { + author, + format, + genre, + publisher, + series, + title, +}; + +export default book; diff --git a/src/locales/en/book/publisher.ts b/src/locales/en/book/publisher.ts new file mode 100644 index 00000000000..e80102bb744 --- /dev/null +++ b/src/locales/en/book/publisher.ts @@ -0,0 +1,262 @@ +export default [ + 'Academic Press', + 'Ace Books', + 'Addison-Wesley', + 'Adis International', + 'Airiti Press', + 'Allen Ltd', + 'Andrews McMeel Publishing', + 'Anova Books', + 'Anvil Press Poetry', + 'Applewood Books', + 'Apress', + 'Athabasca University Press', + 'Atheneum Books', + 'Atheneum Publishers', + 'Atlantic Books', + 'Atlas Press', + 'BBC Books', + 'Ballantine Books', + 'Banner of Truth Trust', + 'Bantam Books', + 'Bantam Spectra', + 'Barrie & Jenkins', + 'Basic Books', + 'Belknap Press', + 'Bella Books', + 'Bellevue Literary Press', + 'Berg Publishers', + 'Berkley Books', + 'Bison Books', + 'Black Dog Publishing', + 'Black Library', + 'Black Sparrow Books', + 'Blackie and Son Limited', + 'Blackstaff Press', + 'Blackwell Publishing', + 'Bloodaxe Books', + 'Bloomsbury Publishing Plc', + 'Blue Ribbon Books', + 'Book League of America', + 'Book Works', + 'Booktrope', + 'Borgo Press', + 'Bowes & Bowes', + 'Boydell & Brewer', + 'Breslov Research Institute', + 'Brill', + 'Brimstone Press', + 'Broadview Press', + 'Burns & Oates', + 'Butterworth-Heinemann', + 'Caister Academic Press', + 'Cambridge University Press', + 'Candlewick Press', + 'Canongate Books', + 'Carcanet Press', + 'Carlton Books', + 'Carlton Publishing Group', + 'Carnegie Mellon University Press', + 'Casemate Publishers', + 'Cengage Learning', + 'Central European University Press', + 'Chambers Harrap', + "Charles Scribner's Sons", + 'Chatto and Windus', + 'Chick Publications', + 'Chronicle Books', + 'Churchill Livingstone', + 'Cisco Press', + 'City Lights Publishers', + 'Cloverdale Corporation', + 'D. Appleton & Company', + 'D. Reidel', + 'DAW Books', + 'Da Capo Press', + 'Daedalus Publishing', + 'Dalkey Archive Press', + 'Darakwon Press', + 'David & Charles', + 'Dedalus Books', + 'Del Rey Books', + 'E. P. Dutton', + 'ECW Press', + 'Earthscan', + 'Edupedia Publications', + 'Eel Pie Publishing', + 'Eerdmans Publishing', + "Ellora's Cave", + 'Elsevier', + 'Emerald Group Publishing', + 'Etruscan Press', + 'FabJob', + 'Faber and Faber', + 'Fairview Press', + 'Farrar, Straus & Giroux', + 'Fearless Books', + 'Felony & Mayhem Press', + 'Firebrand Books', + 'Flame Tree Publishing', + 'Focal Press', + 'G-Unit Books', + "G. P. Putnam's Sons", + 'Gaspereau Press', + "Gay Men's Press", + 'Gefen Publishing House', + 'George H. Doran Company', + 'George Newnes', + 'George Routledge & Sons', + 'Godwit Press', + 'Golden Cockerel Press', + 'HMSO', + 'Hachette Book Group USA', + 'Hackett Publishing Company', + 'Hamish Hamilton', + 'Happy House', + 'Harcourt Assessment', + 'Harcourt Trade Publishers', + 'Harlequin Enterprises Ltd', + 'Harper & Brothers', + 'Harper & Row', + 'HarperCollins', + 'HarperPrism', + 'HarperTrophy', + 'Harry N. Abrams, Inc.', + 'Harvard University Press', + 'Harvest House', + 'Harvill Press at Random House', + 'Hawthorne Books', + 'Hay House', + 'Haynes Manuals', + 'Heyday Books', + 'Hodder & Stoughton', + 'Hodder Headline', + 'Hogarth Press', + 'Holland Park Press', + 'Holt McDougal', + 'Horizon Scientific Press', + 'Ian Allan Publishing', + 'Ignatius Press', + 'Imperial War Museum', + 'Indiana University Press', + 'J. M. Dent', + 'Jaico Publishing House', + 'Jarrolds Publishing', + 'John Blake Publishing', + 'Karadi Tales', + 'Kensington Books', + 'Kessinger Publishing', + 'Kodansha', + 'Kogan Page', + 'Koren Publishers Jerusalem', + 'Ladybird Books', + 'Leaf Books', + 'Leafwood Publishers', + 'Left Book Club', + 'Legend Books', + 'Lethe Press', + 'Libertas Academica', + 'Liberty Fund', + 'Library of America', + 'Lion Hudson', + 'Macmillan Publishers', + 'Mainstream Publishing', + 'Manchester University Press', + 'Mandrake Press', + 'Mandrake of Oxford', + 'Manning Publications', + 'Manor House Publishing', + 'Mapin Publishing', + 'Marion Boyars Publishers', + 'Mark Batty Publisher', + 'Marshall Cavendish', + 'Marshall Pickering', + 'Martinus Nijhoff Publishers', + 'Mascot Books', + 'Matthias Media', + 'McClelland and Stewart', + 'McFarland & Company', + 'McGraw Hill Financial', + 'McGraw-Hill Education', + 'Medknow Publications', + 'Naiad Press', + 'Nauka', + 'NavPress', + 'New Directions Publishing', + 'New English Library', + 'New Holland Publishers', + 'New Village Press', + 'Newnes', + 'No Starch Press', + 'Nonesuch Press', + "O'Reilly Media", + 'Oberon Books', + 'Open Court Publishing Company', + 'Open University Press', + 'Orchard Books', + 'Orion Books', + 'Packt Publishing', + 'Palgrave Macmillan', + 'Pan Books', + 'Pantheon Books at Random House', + 'Papadakis Publisher', + 'Parachute Publishing', + 'Parragon', + 'Pathfinder Press', + 'Paulist Press', + 'Pavilion Books', + 'Peace Hill Press', + 'Pecan Grove Press', + 'Pen and Sword Books', + 'Penguin Books', + 'Random House', + 'Reed Elsevier', + 'Reed Publishing', + 'SAGE Publications', + 'Salt Publishing', + 'Sams Publishing', + 'Schocken Books', + 'Scholastic Press', + 'Seagull Books', + 'Secker & Warburg', + 'Shambhala Publications', + 'Shire Books', + 'Shoemaker & Hoard Publishers', + 'Shuter & Shooter Publishers', + 'Sidgwick & Jackson', + 'Signet Books', + 'Simon & Schuster', + "St. Martin's Press", + 'T & T Clark', + 'Tachyon Publications', + 'Tammi', + 'Target Books', + 'Tarpaulin Sky Press', + 'Tartarus Press', + 'Tate Publishing & Enterprises', + 'Taunton Press', + 'Taylor & Francis', + 'Ten Speed Press', + 'UCL Press', + 'Unfinished Monument Press', + 'United States Government Publishing Office', + 'University of Akron Press', + 'University of Alaska Press', + 'University of California Press', + 'University of Chicago Press', + 'University of Michigan Press', + 'University of Minnesota Press', + 'University of Nebraska Press', + 'Velazquez Press', + 'Verso Books', + 'Victor Gollancz Ltd', + 'Viking Press', + 'Vintage Books', + 'Vintage Books at Random House', + 'Virago Press', + 'Virgin Publishing', + 'Voyager Books', + 'Zed Books', + 'Ziff Davis Media', + 'Zondervan', +]; diff --git a/src/locales/en/book/series.ts b/src/locales/en/book/series.ts new file mode 100644 index 00000000000..2326397b1db --- /dev/null +++ b/src/locales/en/book/series.ts @@ -0,0 +1,36 @@ +export default [ + 'A Song of Ice and Fire', + 'Anna Karenina', + 'Colonel Race', + 'Discworld', + 'Dune', + 'Harry Potter', + 'Hercule Poirot', + 'His Dark Materials', + 'Jane Austen Murder Mysteries', + 'Little Women', + 'Outlander', + 'Percy Jackson', + 'Sherlock Holmes', + 'The Arc of a Scythe', + 'The Bartimaeus Trilogy', + 'The Border Trilogy', + 'The Chronicles of Narnia', + 'The Dark Tower', + 'The Dresden Files', + 'The Eighth Life', + 'The Foundation Series', + "The Hitchhiker's Guide to the Galaxy", + 'The Hunger Games', + 'The Infinity Cycle', + 'The Inheritance Cycle', + 'The Lord of the Rings', + 'The Maze Runner', + 'The Prison Healer', + 'The Red Rising Saga', + 'The Southern Reach', + 'The Wheel of Time', + 'Thursday Next Series', + 'Twilight', + 'War and Peace', +]; diff --git a/src/locales/en/book/title.ts b/src/locales/en/book/title.ts new file mode 100644 index 00000000000..e94437d57f6 --- /dev/null +++ b/src/locales/en/book/title.ts @@ -0,0 +1,243 @@ +export default [ + '1984', + '20,000 Leagues Under the Sea', + 'A Bend in the River', + 'A Brief History of Time', + 'A Clockwork Orange', + 'A Confederacy of Dunces', + "A Doll's House", + 'A Handful of Dust', + 'A Modest Proposal', + 'A Passage to India', + 'A Portrait of the Artist as a Young Man', + 'A Room with a View', + 'A Study in Scarlet', + 'A Tale of Two Cities', + 'A Wrinkle in Time', + 'Absalom, Absalom!', + 'Adventures of Huckleberry Finn', + "Alice's Adventures in Wonderland", + 'All Quiet on the Western Front', + "All the King's Men", + 'American Pastoral', + 'An American Tragedy', + 'And Then There Were None', + 'Animal Farm', + 'Anna Karenina', + 'Anne of Green Gables', + "Are You There God? It's Me, Margaret", + 'As I Lay Dying', + 'Atlas Shrugged', + 'Atonement', + 'Austerlitz', + 'Beloved', + 'Beyond Good and Evil', + 'Bible', + 'Bleak House', + 'Blood Meridian', + 'Brave New World', + 'Brideshead Revisited', + 'Candide', + 'Carmilla', + 'Catch-22', + 'Charlie and the Chocolate Factory', + "Charlotte's Web", + 'Clarissa', + 'Cranford', + 'Crime and Punishment', + 'Dao De Jing: A Minimalist Translation', + 'David Copperfield', + 'Deliverance', + 'Don Quixote', + 'Dora', + 'Dr. Zhivago', + 'Dracula', + 'Dubliners', + 'Dune', + 'East of Eden', + 'Emma', + 'Fahrenheit 451', + 'Faust', + 'For Whom the Bell Tolls', + 'Frankenstein', + 'Freakonomics', + 'Go Tell It on the Mountain', + 'Gone with the Wind', + 'Great Expectations', + "Grimms' Fairy Tales", + "Gulliver's Travels", + 'Hamlet', + "Harry Potter and the Sorcerer's Stone", + 'Heart of Darkness', + 'Herzog', + 'His Dark Materials', + 'Hitting the line', + 'Housekeeping', + 'I, Claudius', + "If on a Winter's Night a Traveler", + 'In Cold Blood', + 'In Search of Lost Time', + 'Invisible Man', + 'It', + 'Jane Eyre', + 'Josefine Mutzenbacher', + 'Jude the Obscure', + 'L.A. Confidential', + 'Leaves of Grass', + 'Les Miserables', + 'Life of Pi', + 'Little Women', + 'Lolita', + 'Long Walk to Freedom', + 'Lord Jim', + 'Lord of the Flies', + 'Lucky Jim', + 'Madame Bovary', + 'Malone Dies', + 'Meditations', + 'Men Without Women', + 'Metamorphosis', + 'Middlemarch', + "Midnight's Children", + 'Moby Dick', + 'Money', + 'Mrs. Dalloway', + 'My Bondage and My Freedom', + 'My Life', + 'Native Son', + 'Neuromancer', + 'Never Let Me Go', + 'Nightmare Abbey', + 'Nineteen Eighty Four', + 'Nostromo', + 'Notes from the Underground ', + 'Of Mice and Men', + 'Oliver Twist', + 'On the Duty of Civil Disobedience', + 'On the Road', + "One Flew Over the Cuckoo's Nest", + 'One Hundred Years of Solitude', + 'One Thousand and One Nights', + 'Oscar and Lucinda', + 'Pale Fire', + 'Paradise Lost', + 'Peter Pan', + "Portnoy's Complaint", + 'Pride and Prejudice', + 'Rabbit, Run', + 'Republic', + 'Revolutionary Road', + 'Robinson Crusoe', + 'Romeo and Juliet', + 'Ruth Fielding in Alaska', + 'Scoop', + 'Second Treatise of Government', + 'Slaughterhouse Five', + 'Stories of Anton Chekhov', + 'Sybil', + "Tess of the d'Urbervilles", + 'The Adventures of Augie March', + 'The Adventures of Huckleberry Finn', + 'The Adventures of Sherlock Holmes', + 'The Adventures of Tom Sawyer', + 'The Aeneid', + 'The Alchemist', + 'The Ambassadors', + 'The Art of War', + 'The Big Sleep', + 'The Black Sheep', + 'The Blue Castle', + 'The Brief Wondrous Life of Oscar Wao', + 'The Brothers Karamazov', + 'The Call of the Wild', + 'The Canterbury Tales', + 'The Catcher in the Rye', + 'The Color Purple', + 'The Complete Works of Edgar Allen Poe', + 'The Corrections', + 'The Count of Monte Cristo', + 'The Day of the Locust', + 'The Diary of a Nobody', + 'The Diary of a Young Girl', + 'The Divine Comedy', + 'The Enchanted April', + 'The Fountainhead', + 'The Golden Bowl', + 'The Golden Notebook', + 'The Good Soldier', + 'The Grapes of Wrath', + 'The Great Gatsby', + "The Handmaid's Tale", + 'The Heart is a Lonely Hunter', + 'The Heart of the Matter', + 'The Hobbit', + 'The Hound of the Baskervilles', + 'The Idiot', + 'The Iliad', + 'The King in Yellow', + 'The Kite Runner', + 'The Lion, the Witch, and the Wardrobe', + 'The Little Prince', + 'The Lord of the Rings', + 'The Magic Mountain', + 'The Maltese Falcon', + 'The Master and Margarita', + 'The Moviegoer', + 'The Naked and the Dead', + 'The Odyssey', + 'The Old Man and the Sea', + 'The Pickwick Papers', + 'The Picture of Dorian Gray', + "The Pilgrim's Progress", + 'The Pillars of the Earth', + 'The Plague', + 'The Portrait of a Lady', + 'The Prime of Miss Jean Brodie', + 'The Prince', + 'The Problems of Philosophy', + 'The Prophet', + 'The Pursuit of Love', + 'The Rainbow', + 'The Red and the Black', + 'The Remains of the Day', + 'The Republic', + 'The Scarlet Letter', + 'The Sleepwalkers', + 'The Sound and the Fury', + 'The Stand', + 'The Strange Case of Dr. Jekyll and Mr. Hyde', + 'The Stranger', + 'The Sun Also Rises', + 'The Thirty-Nine Steps', + 'The Three Musketeers', + 'The Time Machine', + 'The Tin Drum', + 'The Trial', + 'The War of the Worlds', + 'The Waste Land', + 'The Way We Live Now', + 'The Wind in the Willows', + 'The Woman in White', + 'The Wonderful Wizard of Oz', + 'The Works of Edgar Allan Poe', + 'The Yellow Wallpaper', + 'Things Fall Apart', + 'Tinker, Tailor, Soldier, Spy', + 'To Kill a Mockingbird', + 'To the Lighthouse', + 'Tom Jones', + 'Treasure Island', + 'Tristram Shandy', + 'Tropic of Cancer', + 'U.S.A. Trilogy', + 'Ulysses', + "Uncle Tom's Cabin", + 'Under the Volcano', + 'Underworld', + 'Vanity Fair', + 'Walden', + 'War and Peace', + 'Watchmen', + 'Winnie-the-Pooh', + 'Wuthering Heights', +]; diff --git a/src/locales/en/index.ts b/src/locales/en/index.ts index e325d91a6d9..7c932075665 100644 --- a/src/locales/en/index.ts +++ b/src/locales/en/index.ts @@ -6,6 +6,7 @@ import type { LocaleDefinition } from '../..'; import airline from './airline'; import animal from './animal'; import app from './app'; +import book from './book'; import cell_phone from './cell_phone'; import color from './color'; import commerce from './commerce'; @@ -31,6 +32,7 @@ const en: LocaleDefinition = { airline, animal, app, + book, cell_phone, color, commerce, diff --git a/src/locales/pl/book/author.ts b/src/locales/pl/book/author.ts new file mode 100644 index 00000000000..78c3a2a66c6 --- /dev/null +++ b/src/locales/pl/book/author.ts @@ -0,0 +1,34 @@ +export default [ + 'Andrzej Maleszka', + 'Andrzej Pilipiuk', + 'Andrzej Sapkowski', + 'Anita Głowińska', + 'Ałbena Grabowska', + 'Czesław Miłosz', + 'Grzegorz Kasdepke', + 'Henryk Sienkiewicz', + 'Jacek Dukaj', + 'Jacek Piekara', + 'Jakub Żulczyk', + 'Jarosław Grzędowicz', + 'Jerzy Pilch', + 'Joanna Bator', + 'Katarzyna Bonda', + 'Katarzyna Michalak', + 'Krzysztof Kamil Baczyński', + 'Leopold Tyrmand', + 'Mariusz Szczygieł', + 'Marta Galewska-Kustra', + 'Olga Tokarczuk', + 'Paulina Świst', + 'Remigiusz Mróz', + 'Stanisław Lem', + 'Sylwia Chutnik', + 'Szczepan Twardoch', + 'Tadeusz Konwicki', + 'Wiesław Myśliwski', + 'Wisława Szymborska', + 'Wojciech Chmielarz', + 'Zbigniew Herbert', + 'Zygmunt Miłoszewski', +]; diff --git a/src/locales/pl/book/format.ts b/src/locales/pl/book/format.ts new file mode 100644 index 00000000000..b1ff4aeb303 --- /dev/null +++ b/src/locales/pl/book/format.ts @@ -0,0 +1 @@ +export default ['Audiobook', 'Ebook', 'Miękka okładka', 'Twarda okładka']; diff --git a/src/locales/pl/book/genre.ts b/src/locales/pl/book/genre.ts new file mode 100644 index 00000000000..39397fca864 --- /dev/null +++ b/src/locales/pl/book/genre.ts @@ -0,0 +1,20 @@ +export default [ + 'Beletrystyka', + 'Biografia', + 'Fantastyka', + 'Fantastyka naukowa', + 'Kryminał', + 'Książka kucharska', + 'Literatura dziecięca', + 'Literatura faktu', + 'Literatura młodzieżowa', + 'Literatura naukowa', + 'Literatura piękna', + 'Literatura podróżnicza', + 'Literatura popularnonaukowa', + 'Poezja', + 'Powieść historyczna', + 'Powieść przygodowa', + 'Reportaż', + 'Rozwój osobisty', +]; diff --git a/src/locales/pl/book/index.ts b/src/locales/pl/book/index.ts new file mode 100644 index 00000000000..43ead3988d5 --- /dev/null +++ b/src/locales/pl/book/index.ts @@ -0,0 +1,22 @@ +/* + * This file is automatically generated. + * Run 'pnpm run generate:locales' to update. + */ +import type { BookDefinition } from '../../..'; +import author from './author'; +import format from './format'; +import genre from './genre'; +import publisher from './publisher'; +import series from './series'; +import title from './title'; + +const book: BookDefinition = { + author, + format, + genre, + publisher, + series, + title, +}; + +export default book; diff --git a/src/locales/pl/book/publisher.ts b/src/locales/pl/book/publisher.ts new file mode 100644 index 00000000000..2b319f31758 --- /dev/null +++ b/src/locales/pl/book/publisher.ts @@ -0,0 +1,12 @@ +export default [ + 'Czarne', + 'Dom Wydawniczy Rebis', + 'Muza', + 'PWN', + 'W.A.B.', + 'Wydawnictwo Agora', + 'Wydawnictwo Literackie', + 'Wydawnictwo Świat Książki', + 'Znak', + 'Zysk i S-ka Wydawnictwo', +]; diff --git a/src/locales/pl/book/series.ts b/src/locales/pl/book/series.ts new file mode 100644 index 00000000000..98082cfb685 --- /dev/null +++ b/src/locales/pl/book/series.ts @@ -0,0 +1,23 @@ +export default [ + 'Archiwum Burzowego Światła', + 'Cykl Inkwizytorski', + 'Diuna', + 'Dziedzictwo', + 'Harry Potter', + 'Igrzyska Śmierci', + 'Jakub Wędrowycz', + 'Koło Czasu', + 'Malazańska Księga Poległych', + 'Mroczna Wieża', + 'Mroczne Materie', + 'Opowieści z Narnii', + 'Pan Lodowego Ogrodu', + 'Percy Jackson', + 'Pieśń lodu i ognia', + 'Saga o Ludziach Lodu', + 'Sherlock Holmes', + 'Wiedźmin', + 'Władca Pierścieni', + 'Zwiadowcy', + 'Świat Dysku', +]; diff --git a/src/locales/pl/book/title.ts b/src/locales/pl/book/title.ts new file mode 100644 index 00000000000..72131fba205 --- /dev/null +++ b/src/locales/pl/book/title.ts @@ -0,0 +1,101 @@ +export default [ + 'Aria z kurantem', + 'Arytmia', + 'Austeria', + 'Bal w operze', + 'Barbarzyńca w ogrodzie', + 'Bitwa o Monte Cassino', + 'Bramy raju', + 'Cantus', + 'Cesarz', + 'Cudzoziemka', + 'Czarny polonez', + 'Czarny potok', + 'Do piachu', + 'Droga donikąd', + 'Dziennik', + 'Dziennik 1954', + 'Dziennik bez samogłosek', + 'Dziennik pisany nocą', + 'Eseje dla Kasandry', + 'Ferdydurke', + 'Generał Barcz', + 'Granica', + 'Imperium', + 'Inny świat', + 'Jezioro Bodeńskie', + 'Kamień na kamieniu', + 'Kariera Nikodema Dyzmy', + 'Karmazynowy poemat', + 'Kartoteka', + 'Konopielka', + 'Lato 1932', + 'Lekcja martwego języka', + 'Ludzie na moście', + 'Madame', + 'Mała apokalipsa', + 'Medaliony', + 'Miazga', + 'Myśli nieuczesane', + 'Mój wiek. Pamiętnik mówiony', + 'Na nieludzkiej ziemi', + 'Na wysokiej połoninie', + 'Nadberezyńcy', + 'Napój cienisty', + 'Nie trzeba głośno mówić', + 'Nienasycenie', + 'Niepokój', + 'Noce i dnie', + 'Nuta człowiecza', + 'Obroty rzeczy', + 'Ocalenie', + 'Oktostychy', + 'Pamiętnik z Powstania Warszawskiego', + 'Pan Cogito', + 'Panny z Wilka', + 'Pierwszy krok w chmurach', + 'Pierścień z papieru', + 'Podróże do piekieł', + 'Pożegnanie jesieni', + 'Pożegnanie z Marią', + 'Pożoga', + 'Przed Nieznanym Trybunałem', + 'Przedwiośnie', + 'Przemija postać świata', + 'Raport o stanie wojennym', + 'Raport z oblężonego miasta', + 'Rodzinna Europa', + 'Rozmowy polskie latem roku 1983', + 'Rzeczpospolita Obojga Narodów', + 'Równanie serca', + 'Sanatorium pod klepsydrą', + 'Sennik współczesny', + 'Sklepy cynamonowe', + 'Sokrates tańczący', + 'Solaris', + 'Srebrne orły', + 'Szewcy', + 'Szkice piórkiem', + 'Sól ziemi', + 'Tango', + 'Trans-Atlantyk', + 'Trzy zimy', + 'Utwory poetyckie', + 'W polu', + 'Wariacje pocztowe', + 'Widnokrąg', + 'Widokówka z tego świata', + 'Wiersze', + 'Wieszanie', + 'Wiosna i wino', + 'Wołanie do Yeti', + 'Zachód słońca w Milanówku', + 'Zasypie wszystko, zawieje…', + 'Zdążyć przed Panem Bogiem', + 'Ziemia Urlo', + 'Zimne kraje', + 'Zniewolony umysł', + 'Zostało z uczty bogów', + 'Łąka', + 'Ślub', +]; diff --git a/src/locales/pl/index.ts b/src/locales/pl/index.ts index bdb734e2576..b05c5f4eb31 100644 --- a/src/locales/pl/index.ts +++ b/src/locales/pl/index.ts @@ -4,6 +4,7 @@ */ import type { LocaleDefinition } from '../..'; import animal from './animal'; +import book from './book'; import cell_phone from './cell_phone'; import color from './color'; import company from './company'; @@ -19,6 +20,7 @@ import team from './team'; const pl: LocaleDefinition = { animal, + book, cell_phone, color, company, diff --git a/src/modules/book/index.ts b/src/modules/book/index.ts new file mode 100644 index 00000000000..86e168d2ad4 --- /dev/null +++ b/src/modules/book/index.ts @@ -0,0 +1,93 @@ +import { ModuleBase } from '../../internal/module-base'; + +/** + * Module to generate book related entries. + * + * ### Overview + * + * - For a random title, use [`title()`](https://fakerjs.dev/api/book.html#title). + * - For a random existing author name, use [`author()`](https://fakerjs.dev/api/book.html#author). + * - For a random non-existing author name, use [`faker.person.fullName()`](https://fakerjs.dev/api/person.html#fullname). + * - For a random genre, use [`genre()`](https://fakerjs.dev/api/book.html#genre). + * - For a random series, use [`series()`](https://fakerjs.dev/api/book.html#series). + * - For a random publisher, use [`publisher()`](https://fakerjs.dev/api/book.html#publisher). + * - For a random book format, use [`format()`](https://fakerjs.dev/api/book.html#format). + * - For a random isbn, use [`faker.commerce.isbn()`](https://fakerjs.dev/api/commerce.html#isbn) + * + * All values may be localized. + */ +export class BookModule extends ModuleBase { + /** + * Returns a random author name. + * + * @example + * faker.book.author() // 'William Shakespeare' + * + * @since 9.1.0 + */ + author(): string { + return this.faker.helpers.arrayElement(this.faker.definitions.book.author); + } + + /** + * Returns a random book format. + * + * @example + * faker.book.format() // 'Hardcover' + * + * @since 9.1.0 + */ + format(): string { + return this.faker.helpers.arrayElement(this.faker.definitions.book.format); + } + + /** + * Returns a random genre. + * + * @example + * faker.book.genre() // 'Fantasy' + * + * @since 9.1.0 + */ + genre(): string { + return this.faker.helpers.arrayElement(this.faker.definitions.book.genre); + } + + /** + * Returns a random publisher. + * + * @example + * faker.book.publisher() // 'Addison-Wesley' + * + * @since 9.1.0 + */ + publisher(): string { + return this.faker.helpers.arrayElement( + this.faker.definitions.book.publisher + ); + } + + /** + * Returns a random series. + * + * @example + * faker.book.series() // 'Harry Potter' + * + * @since 9.1.0 + */ + series(): string { + return this.faker.helpers.arrayElement(this.faker.definitions.book.series); + } + + /** + * Returns a random title. + * + * @example + * faker.book.title() // 'Romeo and Juliet' + * + * @since 9.1.0 + */ + title(): string { + return this.faker.helpers.arrayElement(this.faker.definitions.book.title); + } +} diff --git a/test/modules/__snapshots__/book.spec.ts.snap b/test/modules/__snapshots__/book.spec.ts.snap new file mode 100644 index 00000000000..9a31406dcd8 --- /dev/null +++ b/test/modules/__snapshots__/book.spec.ts.snap @@ -0,0 +1,37 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`book > 42 > author 1`] = `"Henry David Thoreau"`; + +exports[`book > 42 > format 1`] = `"Ebook"`; + +exports[`book > 42 > genre 1`] = `"Fantasy"`; + +exports[`book > 42 > publisher 1`] = `"Flame Tree Publishing"`; + +exports[`book > 42 > series 1`] = `"Sherlock Holmes"`; + +exports[`book > 42 > title 1`] = `"Lord Jim"`; + +exports[`book > 1211 > author 1`] = `"Virgil"`; + +exports[`book > 1211 > format 1`] = `"Paperback"`; + +exports[`book > 1211 > genre 1`] = `"Western"`; + +exports[`book > 1211 > publisher 1`] = `"University of Akron Press"`; + +exports[`book > 1211 > series 1`] = `"Thursday Next Series"`; + +exports[`book > 1211 > title 1`] = `"Tinker, Tailor, Soldier, Spy"`; + +exports[`book > 1337 > author 1`] = `"Frances Hodgson Burnett"`; + +exports[`book > 1337 > format 1`] = `"Ebook"`; + +exports[`book > 1337 > genre 1`] = `"Comic"`; + +exports[`book > 1337 > publisher 1`] = `"City Lights Publishers"`; + +exports[`book > 1337 > series 1`] = `"Jane Austen Murder Mysteries"`; + +exports[`book > 1337 > title 1`] = `"Gone with the Wind"`; diff --git a/test/modules/book.spec.ts b/test/modules/book.spec.ts new file mode 100644 index 00000000000..4da4a410b51 --- /dev/null +++ b/test/modules/book.spec.ts @@ -0,0 +1,77 @@ +import { describe, expect, it } from 'vitest'; +import { faker } from '../../src'; +import { seededTests } from '../support/seeded-runs'; +import { times } from '../support/times'; + +const NON_SEEDED_BASED_RUN = 5; + +describe('book', () => { + seededTests(faker, 'book', (t) => { + t.itEach('author', 'format', 'genre', 'publisher', 'series', 'title'); + }); + + describe.each(times(NON_SEEDED_BASED_RUN).map(() => faker.seed()))( + 'random seeded tests for seed %i', + () => { + describe('author()', () => { + it('should return an author name', () => { + const author = faker.book.author(); + + expect(author).toBeTruthy(); + expect(author).toBeTypeOf('string'); + expect(faker.definitions.book.author).toContain(author); + }); + }); + + describe('format()', () => { + it('should return a book format', () => { + const format = faker.book.format(); + + expect(format).toBeTruthy(); + expect(format).toBeTypeOf('string'); + expect(faker.definitions.book.format).toContain(format); + }); + }); + + describe('genre()', () => { + it('should return a genre', () => { + const genre = faker.book.genre(); + + expect(genre).toBeTruthy(); + expect(genre).toBeTypeOf('string'); + expect(faker.definitions.book.genre).toContain(genre); + }); + }); + + describe('publisher()', () => { + it('should return a publisher', () => { + const publisher = faker.book.publisher(); + + expect(publisher).toBeTruthy(); + expect(publisher).toBeTypeOf('string'); + expect(faker.definitions.book.publisher).toContain(publisher); + }); + }); + + describe('series()', () => { + it('should return a series', () => { + const series = faker.book.series(); + + expect(series).toBeTruthy(); + expect(series).toBeTypeOf('string'); + expect(faker.definitions.book.series).toContain(series); + }); + }); + + describe('title()', () => { + it('should return a title', () => { + const title = faker.book.title(); + + expect(title).toBeTruthy(); + expect(title).toBeTypeOf('string'); + expect(faker.definitions.book.title).toContain(title); + }); + }); + } + ); +}); From 5b1c8588f8a57be712e64434f7b17a8407a4f465 Mon Sep 17 00:00:00 2001 From: Bruno Leite Date: Thu, 10 Oct 2024 13:08:57 -0300 Subject: [PATCH 10/18] feat(string): adds support for generating ULID (#2524) --- src/internal/base32.ts | 21 +++++++++++ src/internal/date.ts | 22 ++++++++++++ src/modules/date/index.ts | 19 +--------- src/modules/string/index.ts | 33 +++++++++++++++++ .../__snapshots__/base32.spec.ts.snap | 3 ++ test/internal/base32.spec.ts | 35 +++++++++++++++++++ test/internal/date.spec.ts | 22 ++++++++++++ .../modules/__snapshots__/string.spec.ts.snap | 18 ++++++++++ test/modules/string.spec.ts | 27 ++++++++++++++ 9 files changed, 182 insertions(+), 18 deletions(-) create mode 100644 src/internal/base32.ts create mode 100644 src/internal/date.ts create mode 100644 test/internal/__snapshots__/base32.spec.ts.snap create mode 100644 test/internal/base32.spec.ts create mode 100644 test/internal/date.spec.ts diff --git a/src/internal/base32.ts b/src/internal/base32.ts new file mode 100644 index 00000000000..f3e15bb43de --- /dev/null +++ b/src/internal/base32.ts @@ -0,0 +1,21 @@ +/** + * Crockford's Base32 - Excludes I, L, O, and U which may be confused with numbers + */ +export const CROCKFORDS_BASE32 = '0123456789ABCDEFGHJKMNPQRSTVWXYZ'; + +/** + * Encodes a Date into 10 characters base32 string. + * + * @param date The Date to encode. + */ +export function dateToBase32(date: Date): string { + let value = date.valueOf(); + let result = ''; + for (let len = 10; len > 0; len--) { + const mod = value % 32; + result = CROCKFORDS_BASE32[mod] + result; + value = (value - mod) / 32; + } + + return result; +} diff --git a/src/internal/date.ts b/src/internal/date.ts new file mode 100644 index 00000000000..40751c2d997 --- /dev/null +++ b/src/internal/date.ts @@ -0,0 +1,22 @@ +import { FakerError } from '../errors/faker-error'; + +/** + * Converts a date passed as a `string`, `number` or `Date` to a valid `Date` object. + * + * @param date The date to convert. + * @param name The reference name used for error messages. Defaults to `'refDate'`. + * + * @throws If the given date is invalid. + */ +export function toDate( + date: string | Date | number, + name: string = 'refDate' +): Date { + const converted = new Date(date); + + if (Number.isNaN(converted.valueOf())) { + throw new FakerError(`Invalid ${name} date: ${date.toString()}`); + } + + return converted; +} diff --git a/src/modules/date/index.ts b/src/modules/date/index.ts index 53204a03817..06890a5d462 100644 --- a/src/modules/date/index.ts +++ b/src/modules/date/index.ts @@ -1,27 +1,10 @@ import type { Faker } from '../..'; import type { DateEntryDefinition } from '../../definitions'; import { FakerError } from '../../errors/faker-error'; +import { toDate } from '../../internal/date'; import { assertLocaleData } from '../../internal/locale-proxy'; import { SimpleModuleBase } from '../../internal/module-base'; -/** - * Converts a date passed as a `string`, `number` or `Date` to a valid `Date` object. - * - * @param date The date to convert. - * @param name The reference name used for error messages. Defaults to `'refDate'`. - * - * @throws If the given date is invalid. - */ -function toDate(date: string | Date | number, name: string = 'refDate'): Date { - const converted = new Date(date); - - if (Number.isNaN(converted.valueOf())) { - throw new FakerError(`Invalid ${name} date: ${date.toString()}`); - } - - return converted; -} - /** * Module to generate dates (without methods requiring localized data). */ diff --git a/src/modules/string/index.ts b/src/modules/string/index.ts index 7df31fc7f7d..67073242134 100644 --- a/src/modules/string/index.ts +++ b/src/modules/string/index.ts @@ -1,4 +1,6 @@ import { FakerError } from '../../errors/faker-error'; +import { CROCKFORDS_BASE32, dateToBase32 } from '../../internal/base32'; +import { toDate } from '../../internal/date'; import { SimpleModuleBase } from '../../internal/module-base'; import type { LiteralUnion } from '../../internal/types'; @@ -704,6 +706,37 @@ export class StringModule extends SimpleModuleBase { .replaceAll('y', () => this.faker.number.hex({ min: 0x8, max: 0xb })); } + /** + * Returns a ULID ([Universally Unique Lexicographically Sortable Identifier](https://github.com/ulid/spec)). + * + * @param options The optional options object. + * @param options.refDate The timestamp to encode into the ULID. + * The encoded timestamp is represented by the first 10 characters of the result. + * Defaults to `faker.defaultRefDate()`. + * + * @example + * faker.string.ulid() // '01ARZ3NDEKTSV4RRFFQ69G5FAV' + * faker.string.ulid({ refDate: '2020-01-01T00:00:00.000Z' }) // '01DXF6DT00CX9QNNW7PNXQ3YR8' + * + * @since 9.1.0 + */ + ulid( + options: { + /** + * The date to use as reference point for the newly generated ULID encoded timestamp. + * The encoded timestamp is represented by the first 10 characters of the result. + * + * @default faker.defaultRefDate() + */ + refDate?: string | Date | number; + } = {} + ): string { + const { refDate = this.faker.defaultRefDate() } = options; + const date = toDate(refDate); + + return dateToBase32(date) + this.fromCharacters(CROCKFORDS_BASE32, 16); + } + /** * Generates a [Nano ID](https://github.com/ai/nanoid). * diff --git a/test/internal/__snapshots__/base32.spec.ts.snap b/test/internal/__snapshots__/base32.spec.ts.snap new file mode 100644 index 00000000000..d05f1586bfd --- /dev/null +++ b/test/internal/__snapshots__/base32.spec.ts.snap @@ -0,0 +1,3 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`dateToBase32() > encodes current date correctly 1`] = `"01GWX1T800"`; diff --git a/test/internal/base32.spec.ts b/test/internal/base32.spec.ts new file mode 100644 index 00000000000..c87ffd61698 --- /dev/null +++ b/test/internal/base32.spec.ts @@ -0,0 +1,35 @@ +import { describe, expect, it } from 'vitest'; +import { CROCKFORDS_BASE32, dateToBase32 } from '../../src/internal/base32'; + +describe('dateToBase32()', () => { + it('encodes current date correctly', () => { + const date = new Date('2023-04-01T00:00:00Z'); + const encoded = dateToBase32(date); + expect(encoded).toHaveLength(10); + expect(encoded).toMatchSnapshot(); + for (const char of encoded) { + expect(CROCKFORDS_BASE32).toContain(char); + } + }); + + it('encodes epoch start date correctly', () => { + const date = new Date('1970-01-01T00:00:00Z'); + const encoded = dateToBase32(date); + expect(encoded).toBe('0000000000'); + }); + + it('returns different encodings for dates one millisecond apart', () => { + const date1 = new Date('2023-04-01T00:00:00.000Z'); + const date2 = new Date('2023-04-01T00:00:00.001Z'); + const encoded1 = dateToBase32(date1); + const encoded2 = dateToBase32(date2); + expect(encoded1).not.toBe(encoded2); + }); + + it('encodes same date consistently', () => { + const date = new Date('2023-04-01T00:00:00Z'); + const encoded1 = dateToBase32(date); + const encoded2 = dateToBase32(date); + expect(encoded1).toBe(encoded2); + }); +}); diff --git a/test/internal/date.spec.ts b/test/internal/date.spec.ts new file mode 100644 index 00000000000..453dae792e8 --- /dev/null +++ b/test/internal/date.spec.ts @@ -0,0 +1,22 @@ +import { describe, expect, it } from 'vitest'; +import { FakerError } from '../../src'; +import { toDate } from '../../src/internal/date'; + +describe('toDate()', () => { + it('should convert a string date to a valid Date object', () => { + const dateString = '2024-07-05'; + expect(toDate(dateString)).toEqual(new Date(dateString)); + }); + + it('should convert a string datetime to a valid Date object', () => { + const timestamp = '2024-07-05T15:49:19+0000'; + expect(toDate(timestamp)).toEqual(new Date(timestamp)); + }); + + it('should throw a FakerError for an invalid date string', () => { + const timestamp = 'aaaa-07-05T15:49:19+0000'; + expect(() => toDate(timestamp)).toThrow( + new FakerError(`Invalid refDate date: ${timestamp}`) + ); + }); +}); diff --git a/test/modules/__snapshots__/string.spec.ts.snap b/test/modules/__snapshots__/string.spec.ts.snap index 31e4c28dd41..099c21963ce 100644 --- a/test/modules/__snapshots__/string.spec.ts.snap +++ b/test/modules/__snapshots__/string.spec.ts.snap @@ -164,6 +164,12 @@ exports[`string > 42 > symbol > with length parameter 5`] = `">%*,/"`; exports[`string > 42 > symbol > with length range 1`] = `"}\\>%%"\`>[!~_'&"`; +exports[`string > 42 > ulid > with Date refDate 1`] = `"01EZ2S259ZBYQK441VKP0ZT655"`; + +exports[`string > 42 > ulid > with number refDate 1`] = `"01EZ2S259ZBYQK441VKP0ZT655"`; + +exports[`string > 42 > ulid > with string refDate 1`] = `"01EZ2S259ZBYQK441VKP0ZT655"`; + exports[`string > 42 > uuid 1`] = `"5fb9220d-9b0f-4d32-a248-6492457c3890"`; exports[`string > 42 > uuid 2`] = `"21ffc41a-7170-4e4a-9488-2fcfe9e13056"`; @@ -338,6 +344,12 @@ exports[`string > 1211 > symbol > with length parameter 5`] = `"~]-|<"`; exports[`string > 1211 > symbol > with length range 1`] = `"{(~@@],[_]?_.\`\`'=',~"`; +exports[`string > 1211 > ulid > with Date refDate 1`] = `"01EZ2S259ZXW7ZNNRBPTRMTDVV"`; + +exports[`string > 1211 > ulid > with number refDate 1`] = `"01EZ2S259ZXW7ZNNRBPTRMTDVV"`; + +exports[`string > 1211 > ulid > with string refDate 1`] = `"01EZ2S259ZXW7ZNNRBPTRMTDVV"`; + exports[`string > 1211 > uuid 1`] = `"ee3faac5-bdca-4d6d-9d39-35fc6e8f34b8"`; exports[`string > 1211 > uuid 2`] = `"d64428b2-b736-43d9-970b-2b4c8739d1d7"`; @@ -512,6 +524,12 @@ exports[`string > 1337 > symbol > with length parameter 5`] = `"]'*@:"`; exports[`string > 1337 > symbol > with length range 1`] = `"&)/+;)~\\$-?%"`; +exports[`string > 1337 > ulid > with Date refDate 1`] = `"01EZ2S259Z858EAG8ZQ3CM4ZES"`; + +exports[`string > 1337 > ulid > with number refDate 1`] = `"01EZ2S259Z858EAG8ZQ3CM4ZES"`; + +exports[`string > 1337 > ulid > with string refDate 1`] = `"01EZ2S259Z858EAG8ZQ3CM4ZES"`; + exports[`string > 1337 > uuid 1`] = `"4247584f-b16a-42f7-8cc5-69c34a72638d"`; exports[`string > 1337 > uuid 2`] = `"f6880bf2-25b0-450c-a5b7-fd99f401ff75"`; diff --git a/test/modules/string.spec.ts b/test/modules/string.spec.ts index 22fa8aeba88..7b3be347749 100644 --- a/test/modules/string.spec.ts +++ b/test/modules/string.spec.ts @@ -113,6 +113,16 @@ describe('string', () => { t.itRepeated('uuid', 5); + t.describe('ulid', (t) => { + const ulidRefDate = '2021-02-21T17:09:15.711Z'; + + t.it('with string refDate', { refDate: ulidRefDate }) + .it('with Date refDate', { refDate: new Date(ulidRefDate) }) + .it('with number refDate', { + refDate: new Date(ulidRefDate).getTime(), + }); + }); + t.describe('nanoid', (t) => { t.itRepeated('noArgs', 5) .it('with length parameter', 30) @@ -750,6 +760,23 @@ describe('string', () => { }); }); + describe(`ulid`, () => { + it.each(['invalid', Number.NaN, new Date(Number.NaN)] as const)( + 'should reject invalid refDates %s', + (refDate) => { + expect(() => faker.string.ulid({ refDate })).toThrow( + new FakerError(`Invalid refDate date: ${refDate.toString()}`) + ); + } + ); + + it('generates a valid ULID', () => { + const ulid = faker.string.ulid(); + const regex = /^[0-7][0-9A-HJKMNP-TV-Z]{25}$/; + expect(ulid).toMatch(regex); + }); + }); + describe(`nanoid`, () => { it('generates a valid Nano ID', () => { const id = faker.string.nanoid(); From a5a6c5b4e1145b1e21e5d8e540bc6f55f97d3a84 Mon Sep 17 00:00:00 2001 From: ST-DDT Date: Thu, 10 Oct 2024 18:14:30 +0200 Subject: [PATCH 11/18] feat(internet): improve ipv4 method (#2992) --- src/index.ts | 3 +- src/modules/internet/index.ts | 170 +++++++++++++++++- .../__snapshots__/internet.spec.ts.snap | 22 ++- test/modules/internet.spec.ts | 98 +++++++++- 4 files changed, 282 insertions(+), 11 deletions(-) diff --git a/src/index.ts b/src/index.ts index bef353cea8a..a8c4ecea739 100644 --- a/src/index.ts +++ b/src/index.ts @@ -67,7 +67,8 @@ export type { GitModule } from './modules/git'; export type { HackerModule } from './modules/hacker'; export type { HelpersModule, SimpleHelpersModule } from './modules/helpers'; export type { ImageModule } from './modules/image'; -export type { InternetModule } from './modules/internet'; +export { IPv4Network } from './modules/internet'; +export type { IPv4NetworkType, InternetModule } from './modules/internet'; export type { LocationModule } from './modules/location'; export type { LoremModule } from './modules/lorem'; export type { MusicModule } from './modules/music'; diff --git a/src/modules/internet/index.ts b/src/modules/internet/index.ts index f6884d880aa..a455135b00d 100644 --- a/src/modules/internet/index.ts +++ b/src/modules/internet/index.ts @@ -1,3 +1,4 @@ +import { FakerError } from '../../errors/faker-error'; import { ModuleBase } from '../../internal/module-base'; import { charMapping } from './char-mappings'; import * as random_ua from './user-agent'; @@ -23,6 +24,82 @@ export type HTTPStatusCodeType = export type HTTPProtocolType = 'http' | 'https'; +export enum IPv4Network { + /** + * Equivalent to: `0.0.0.0/0` + */ + Any = 'any', + /** + * Equivalent to: `127.0.0.0/8` + * + * @see [RFC1122](https://www.rfc-editor.org/rfc/rfc1122) + */ + Loopback = 'loopback', + /** + * Equivalent to: `10.0.0.0/8` + * + * @see [RFC1918](https://www.rfc-editor.org/rfc/rfc1918) + */ + PrivateA = 'private-a', + /** + * Equivalent to: `172.16.0.0/12` + * + * @see [RFC1918](https://www.rfc-editor.org/rfc/rfc1918) + */ + PrivateB = 'private-b', + /** + * Equivalent to: `192.168.0.0/16` + * + * @see [RFC1918](https://www.rfc-editor.org/rfc/rfc1918) + */ + PrivateC = 'private-c', + /** + * Equivalent to: `192.0.2.0/24` + * + * @see [RFC5737](https://www.rfc-editor.org/rfc/rfc5737) + */ + TestNet1 = 'test-net-1', + /** + * Equivalent to: `198.51.100.0/24` + * + * @see [RFC5737](https://www.rfc-editor.org/rfc/rfc5737) + */ + TestNet2 = 'test-net-2', + /** + * Equivalent to: `203.0.113.0/24` + * + * @see [RFC5737](https://www.rfc-editor.org/rfc/rfc5737) + */ + TestNet3 = 'test-net-3', + /** + * Equivalent to: `169.254.0.0/16` + * + * @see [RFC3927](https://www.rfc-editor.org/rfc/rfc3927) + */ + LinkLocal = 'link-local', + /** + * Equivalent to: `224.0.0.0/4` + * + * @see [RFC5771](https://www.rfc-editor.org/rfc/rfc5771) + */ + Multicast = 'multicast', +} + +export type IPv4NetworkType = `${IPv4Network}`; + +const ipv4Networks: Record = { + [IPv4Network.Any]: '0.0.0.0/0', + [IPv4Network.Loopback]: '127.0.0.0/8', + [IPv4Network.PrivateA]: '10.0.0.0/8', + [IPv4Network.PrivateB]: '172.16.0.0/12', + [IPv4Network.PrivateC]: '192.168.0.0/16', + [IPv4Network.TestNet1]: '192.0.2.0/24', + [IPv4Network.TestNet2]: '198.51.100.0/24', + [IPv4Network.TestNet3]: '203.0.113.0/24', + [IPv4Network.LinkLocal]: '169.254.0.0/16', + [IPv4Network.Multicast]: '224.0.0.0/4', +}; + /** * Module to generate internet related entries. * @@ -485,15 +562,100 @@ export class InternetModule extends ModuleBase { /** * Generates a random IPv4 address. * + * @param options The optional options object. + * @param options.cidrBlock The optional CIDR block to use. Must be in the format `x.x.x.x/y`. Defaults to `'0.0.0.0/0'`. + * * @example * faker.internet.ipv4() // '245.108.222.0' + * faker.internet.ipv4({ cidrBlock: '192.168.0.0/16' }) // '192.168.215.224' * * @since 6.1.1 */ - ipv4(): string { - return Array.from({ length: 4 }, () => this.faker.number.int(255)).join( - '.' - ); + ipv4(options?: { + /** + * The optional CIDR block to use. Must be in the format `x.x.x.x/y`. + * + * @default '0.0.0.0/0' + */ + cidrBlock?: string; + }): string; + /** + * Generates a random IPv4 address. + * + * @param options The optional options object. + * @param options.network The optional network to use. This is intended as an alias for well-known `cidrBlock`s. Defaults to `'any'`. + * + * @example + * faker.internet.ipv4() // '245.108.222.0' + * faker.internet.ipv4({ network: 'private-a' }) // '10.199.154.205' + * + * @since 6.1.1 + */ + ipv4(options?: { + /** + * The optional network to use. This is intended as an alias for well-known `cidrBlock`s. + * + * @default 'any' + */ + network?: IPv4NetworkType; + }): string; + /** + * Generates a random IPv4 address. + * + * @param options The optional options object. + * @param options.cidrBlock The optional CIDR block to use. Must be in the format `x.x.x.x/y`. Defaults to `'0.0.0.0/0'`. + * @param options.network The optional network to use. This is intended as an alias for well-known `cidrBlock`s. Defaults to `'any'`. + * + * @example + * faker.internet.ipv4() // '245.108.222.0' + * faker.internet.ipv4({ cidrBlock: '192.168.0.0/16' }) // '192.168.215.224' + * faker.internet.ipv4({ network: 'private-a' }) // '10.199.154.205' + * + * @since 6.1.1 + */ + ipv4( + options?: + | { + /** + * The optional CIDR block to use. Must be in the format `x.x.x.x/y`. + * + * @default '0.0.0.0/0' + */ + cidrBlock?: string; + } + | { + /** + * The optional network to use. This is intended as an alias for well-known `cidrBlock`s. + * + * @default 'any' + */ + network?: IPv4NetworkType; + } + ): string; + ipv4( + options: { cidrBlock?: string; network?: IPv4NetworkType } = {} + ): string { + const { network = 'any', cidrBlock = ipv4Networks[network] } = options; + + if (!/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\/\d{1,2}$/.test(cidrBlock)) { + throw new FakerError( + `Invalid CIDR block provided: ${cidrBlock}. Must be in the format x.x.x.x/y.` + ); + } + + const [ipText, subnet] = cidrBlock.split('/'); + const subnetMask = 0xffffffff >>> Number.parseInt(subnet); + const [rawIp1, rawIp2, rawIp3, rawIp4] = ipText.split('.').map(Number); + const rawIp = (rawIp1 << 24) | (rawIp2 << 16) | (rawIp3 << 8) | rawIp4; + const networkIp = rawIp & ~subnetMask; + const hostOffset = this.faker.number.int(subnetMask); + const ip = networkIp | hostOffset; + return [ + (ip >>> 24) & 0xff, + (ip >>> 16) & 0xff, + (ip >>> 8) & 0xff, + ip & 0xff, + ].join('.'); } /** diff --git a/test/modules/__snapshots__/internet.spec.ts.snap b/test/modules/__snapshots__/internet.spec.ts.snap index bb330fbdbb1..9ec2d26525f 100644 --- a/test/modules/__snapshots__/internet.spec.ts.snap +++ b/test/modules/__snapshots__/internet.spec.ts.snap @@ -64,9 +64,13 @@ exports[`internet > 42 > httpStatusCode > noArgs 1`] = `226`; exports[`internet > 42 > httpStatusCode > with options 1`] = `410`; -exports[`internet > 42 > ip 1`] = `"243.187.153.39"`; +exports[`internet > 42 > ip 1`] = `"243.98.3.69"`; -exports[`internet > 42 > ipv4 1`] = `"95.243.187.153"`; +exports[`internet > 42 > ipv4 > noArgs 1`] = `"95.225.220.121"`; + +exports[`internet > 42 > ipv4 > with cidrBlock 1`] = `"192.168.13.95"`; + +exports[`internet > 42 > ipv4 > with network 1`] = `"229.254.29.199"`; exports[`internet > 42 > ipv6 1`] = `"8ead:331d:df0f:c444:6b96:d368:ab4b:d1d3"`; @@ -182,7 +186,11 @@ exports[`internet > 1211 > httpStatusCode > with options 1`] = `429`; exports[`internet > 1211 > ip 1`] = `"d4fe:fa7f:baec:9dc4:c48f:a8eb:f46f:b7c8"`; -exports[`internet > 1211 > ipv4 1`] = `"237.228.57.255"`; +exports[`internet > 1211 > ipv4 > noArgs 1`] = `"237.179.127.46"`; + +exports[`internet > 1211 > ipv4 > with cidrBlock 1`] = `"192.168.13.237"`; + +exports[`internet > 1211 > ipv4 > with network 1`] = `"238.219.55.242"`; exports[`internet > 1211 > ipv6 1`] = `"ed4f:efa7:fbae:c9dc:4c48:fa8e:bf46:fb7c"`; @@ -296,9 +304,13 @@ exports[`internet > 1337 > httpStatusCode > noArgs 1`] = `201`; exports[`internet > 1337 > httpStatusCode > with options 1`] = `407`; -exports[`internet > 1337 > ip 1`] = `"40.71.117.82"`; +exports[`internet > 1337 > ip 1`] = `"40.159.131.70"`; + +exports[`internet > 1337 > ipv4 > noArgs 1`] = `"67.20.12.145"`; + +exports[`internet > 1337 > ipv4 > with cidrBlock 1`] = `"192.168.13.67"`; -exports[`internet > 1337 > ipv4 1`] = `"67.40.71.117"`; +exports[`internet > 1337 > ipv4 > with network 1`] = `"228.49.64.201"`; exports[`internet > 1337 > ipv6 1`] = `"536a:7b5f:a28d:2f9b:b79c:a46e:a394:bc4f"`; diff --git a/test/modules/internet.spec.ts b/test/modules/internet.spec.ts index 25c5150fe3f..04b255fd48f 100644 --- a/test/modules/internet.spec.ts +++ b/test/modules/internet.spec.ts @@ -1,6 +1,8 @@ import validator from 'validator'; import { describe, expect, it } from 'vitest'; import { allFakers, faker } from '../../src'; +import { FakerError } from '../../src/errors/faker-error'; +import { IPv4Network } from '../../src/modules/internet'; import { seededTests } from '../support/seeded-runs'; import { times } from './../support/times'; @@ -15,7 +17,6 @@ describe('internet', () => { 'domainSuffix', 'domainWord', 'ip', - 'ipv4', 'ipv6', 'port', 'userAgent' @@ -133,6 +134,12 @@ describe('internet', () => { protocol: 'http', }); }); + + t.describe('ipv4', (t) => { + t.it('noArgs') + .it('with cidrBlock', { cidrBlock: '192.168.13.37/24' }) + .it('with network', { network: IPv4Network.Multicast }); + }); }); describe.each(times(NON_SEEDED_BASED_RUN).map(() => faker.seed()))( @@ -595,6 +602,95 @@ describe('internet', () => { expect(+part).toBeLessThanOrEqual(255); } }); + + it('should return a random IPv4 for a given CIDR block', () => { + const actual = faker.internet.ipv4({ + cidrBlock: '192.168.42.255/24', + }); + + expect(actual).toBeTruthy(); + expect(actual).toBeTypeOf('string'); + expect(actual).toSatisfy((value: string) => validator.isIP(value, 4)); + expect(actual).toMatch(/^192\.168\.42\.\d{1,3}$/); + }); + + it('should return a random IPv4 for a given CIDR block non-8ish network mask', () => { + const actual = faker.internet.ipv4({ + cidrBlock: '192.168.0.255/20', + }); + + expect(actual).toBeTruthy(); + expect(actual).toBeTypeOf('string'); + expect(actual).toSatisfy((value: string) => validator.isIP(value, 4)); + + const [first, second, third, fourth] = actual.split('.').map(Number); + expect(first).toBe(192); + expect(second).toBe(168); + expect(third).toBeGreaterThanOrEqual(0); + expect(third).toBeLessThanOrEqual(15); + expect(fourth).toBeGreaterThanOrEqual(0); + expect(fourth).toBeLessThanOrEqual(255); + }); + + it.each([ + '', + '...', + '.../', + '.0.0.0/0', + '0..0.0/0', + '0.0..0/0', + '0.0.0./0', + '0.0.0.0/', + 'a.0.0.0/0', + '0.b.0.0/0', + '0.0.c.0/0', + '0.0.0.d/0', + '0.0.0.0/e', + ])( + 'should throw an error if not following the x.x.x.x/y format', + (cidrBlock) => { + expect(() => + faker.internet.ipv4({ + cidrBlock, + }) + ).toThrow( + new FakerError( + `Invalid CIDR block provided: ${cidrBlock}. Must be in the format x.x.x.x/y.` + ) + ); + } + ); + + it.each([ + [IPv4Network.Any, /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/], + [IPv4Network.Loopback, /^127\.\d{1,3}\.\d{1,3}\.\d{1,3}$/], + [IPv4Network.PrivateA, /^10\.\d{1,3}\.\d{1,3}\.\d{1,3}$/], + [ + IPv4Network.PrivateB, + /^172\.(1[6-9]|2[0-9]|3[0-1])\.\d{1,3}\.\d{1,3}$/, + ], + [IPv4Network.PrivateC, /^192\.168\.\d{1,3}\.\d{1,3}$/], + [IPv4Network.TestNet1, /^192\.0\.2\.\d{1,3}$/], + [IPv4Network.TestNet2, /^198\.51\.100\.\d{1,3}$/], + [IPv4Network.TestNet3, /^203\.0\.113\.\d{1,3}$/], + [IPv4Network.LinkLocal, /^169\.254\.\d{1,3}\.\d{1,3}$/], + [ + IPv4Network.Multicast, + /^2(2[4-9]|3[0-9])\.\d{1,3}\.\d{1,3}\.\d{1,3}$/, + ], + ] as const)( + 'should return a random IPv4 for %s network', + (network, regex) => { + const actual = faker.internet.ipv4({ network }); + + expect(actual).toBeTruthy(); + expect(actual).toBeTypeOf('string'); + expect(actual).toSatisfy((value: string) => + validator.isIP(value, 4) + ); + expect(actual).toMatch(regex); + } + ); }); describe('ipv6()', () => { From 67569d93992e6388647118e9e9e319cfdd6721ed Mon Sep 17 00:00:00 2001 From: Johan Holmerin Date: Thu, 10 Oct 2024 18:51:26 +0200 Subject: [PATCH 12/18] feat(locale): add Swedish(sv) counties (#3154) --- src/locales/sv/location/county.ts | 292 ++++++++++++++++++++++++++++++ src/locales/sv/location/index.ts | 2 + 2 files changed, 294 insertions(+) create mode 100644 src/locales/sv/location/county.ts diff --git a/src/locales/sv/location/county.ts b/src/locales/sv/location/county.ts new file mode 100644 index 00000000000..065509c37fc --- /dev/null +++ b/src/locales/sv/location/county.ts @@ -0,0 +1,292 @@ +export default [ + 'Ale', + 'Alingsås', + 'Alvesta', + 'Aneby', + 'Arboga', + 'Arjeplog', + 'Arvidsjaur', + 'Arvika', + 'Askersund', + 'Avesta', + 'Bengtsfors', + 'Berg', + 'Bjurholm', + 'Bjuv', + 'Boden', + 'Bollebygd', + 'Bollnäs', + 'Borgholm', + 'Borlänge', + 'Borås', + 'Botkyrka', + 'Boxholm', + 'Bromölla', + 'Bräcke', + 'Burlöv', + 'Båstad', + 'Dals-Ed', + 'Danderyd', + 'Degerfors', + 'Dorotea', + 'Eda', + 'Ekerö', + 'Eksjö', + 'Emmaboda', + 'Enköping', + 'Eskilstuna', + 'Eslöv', + 'Essunga', + 'Fagersta', + 'Falkenberg', + 'Falköping', + 'Falun', + 'Filipstad', + 'Finspång', + 'Flen', + 'Forshaga', + 'Färgelanda', + 'Gagnef', + 'Gislaved', + 'Gnesta', + 'Gnosjö', + 'Gotland', + 'Grums', + 'Grästorp', + 'Gullspång', + 'Gällivare', + 'Gävle', + 'Göteborg', + 'Götene', + 'Habo', + 'Hagfors', + 'Hallsberg', + 'Hallstahammar', + 'Halmstad', + 'Hammarö', + 'Haninge', + 'Haparanda', + 'Heby', + 'Hedemora', + 'Helsingborg', + 'Herrljunga', + 'Hjo', + 'Hofors', + 'Huddinge', + 'Hudiksvall', + 'Hultsfred', + 'Hylte', + 'Håbo', + 'Hällefors', + 'Härjedalen', + 'Härnösand', + 'Härryda', + 'Hässleholm', + 'Höganäs', + 'Högsby', + 'Hörby', + 'Höör', + 'Jokkmokk', + 'Järfälla', + 'Jönköping', + 'Kalix', + 'Kalmar', + 'Karlsborg', + 'Karlshamn', + 'Karlskoga', + 'Karlskrona', + 'Karlstad', + 'Katrineholm', + 'Kil', + 'Kinda', + 'Kiruna', + 'Klippan', + 'Knivsta', + 'Kramfors', + 'Kristianstad', + 'Kristinehamn', + 'Krokom', + 'Kumla', + 'Kungsbacka', + 'Kungsör', + 'Kungälv', + 'Kävlinge', + 'Köping', + 'Laholm', + 'Landskrona', + 'Laxå', + 'Lekeberg', + 'Leksand', + 'Lerum', + 'Lessebo', + 'Lidingö', + 'Lidköping', + 'Lilla Edet', + 'Lindesberg', + 'Linköping', + 'Ljungby', + 'Ljusdal', + 'Ljusnarsberg', + 'Lomma', + 'Ludvika', + 'Luleå', + 'Lund', + 'Lycksele', + 'Lysekil', + 'Malmö', + 'Malung-Sälen', + 'Malå', + 'Mariestad', + 'Mark', + 'Markaryd', + 'Mellerud', + 'Mjölby', + 'Mora', + 'Motala', + 'Mullsjö', + 'Munkedal', + 'Munkfors', + 'Mölndal', + 'Mönsterås', + 'Mörbylånga', + 'Nacka', + 'Nora', + 'Norberg', + 'Nordanstig', + 'Nordmaling', + 'Norrköping', + 'Norrtälje', + 'Norsjö', + 'Nybro', + 'Nykvarn', + 'Nyköping', + 'Nynäshamn', + 'Nässjö', + 'Ockelbo', + 'Olofström', + 'Orsa', + 'Orust', + 'Osby', + 'Oskarshamn', + 'Ovanåker', + 'Oxelösund', + 'Pajala', + 'Partille', + 'Perstorp', + 'Piteå', + 'Ragunda', + 'Robertsfors', + 'Ronneby', + 'Rättvik', + 'Sala', + 'Salem', + 'Sandviken', + 'Sigtuna', + 'Simrishamn', + 'Sjöbo', + 'Skara', + 'Skellefteå', + 'Skinnskatteberg', + 'Skurup', + 'Skövde', + 'Smedjebacken', + 'Sollefteå', + 'Sollentuna', + 'Solna', + 'Sorsele', + 'Sotenäs', + 'Staffanstorp', + 'Stenungsund', + 'Stockholm', + 'Storfors', + 'Storuman', + 'Strängnäs', + 'Strömstad', + 'Strömsund', + 'Sundbyberg', + 'Sundsvall', + 'Sunne', + 'Surahammar', + 'Svalöv', + 'Svedala', + 'Svenljunga', + 'Säffle', + 'Säter', + 'Sävsjö', + 'Söderhamn', + 'Söderköping', + 'Södertälje', + 'Sölvesborg', + 'Tanum', + 'Tibro', + 'Tidaholm', + 'Tierp', + 'Timrå', + 'Tingsryd', + 'Tjörn', + 'Tomelilla', + 'Torsby', + 'Torsås', + 'Tranemo', + 'Tranås', + 'Trelleborg', + 'Trollhättan', + 'Trosa', + 'Tyresö', + 'Täby', + 'Töreboda', + 'Uddevalla', + 'Ulricehamn', + 'Umeå', + 'Upplands-Bro', + 'Upplands Väsby', + 'Uppsala', + 'Uppvidinge', + 'Vadstena', + 'Vaggeryd', + 'Valdemarsvik', + 'Vallentuna', + 'Vansbro', + 'Vara', + 'Varberg', + 'Vaxholm', + 'Vellinge', + 'Vetlanda', + 'Vilhelmina', + 'Vimmerby', + 'Vindeln', + 'Vingåker', + 'Vårgårda', + 'Vänersborg', + 'Vännäs', + 'Värmdö', + 'Värnamo', + 'Västervik', + 'Västerås', + 'Växjö', + 'Ydre', + 'Ystad', + 'Åmål', + 'Ånge', + 'Åre', + 'Årjäng', + 'Åsele', + 'Åstorp', + 'Åtvidaberg', + 'Älmhult', + 'Älvdalen', + 'Älvkarleby', + 'Älvsbyn', + 'Ängelholm', + 'Öckerö', + 'Ödeshög', + 'Örebro', + 'Örkelljunga', + 'Örnsköldsvik', + 'Östersund', + 'Österåker', + 'Östhammar', + 'Östra Göinge', + 'Överkalix', + 'Övertorneå', +]; diff --git a/src/locales/sv/location/index.ts b/src/locales/sv/location/index.ts index f2aa52c2b47..612dd30230c 100644 --- a/src/locales/sv/location/index.ts +++ b/src/locales/sv/location/index.ts @@ -9,6 +9,7 @@ import city_prefix from './city_prefix'; import city_suffix from './city_suffix'; import common_street_suffix from './common_street_suffix'; import country from './country'; +import county from './county'; import postcode from './postcode'; import secondary_address from './secondary_address'; import state from './state'; @@ -25,6 +26,7 @@ const location: LocationDefinition = { city_suffix, common_street_suffix, country, + county, postcode, secondary_address, state, From d5163924ea457616cb7779e511f166386c182fdb Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 10 Oct 2024 23:36:07 +0200 Subject: [PATCH 13/18] chore(deps): update dependency ts-morph to v24 (#3160) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- pnpm-lock.yaml | 57 +++++++++++++++++++++++++++++++------------------- 2 files changed, 36 insertions(+), 23 deletions(-) diff --git a/package.json b/package.json index c14f3114f73..d64f9b5d91d 100644 --- a/package.json +++ b/package.json @@ -131,7 +131,7 @@ "rimraf": "5.0.10", "sanitize-html": "2.13.1", "semver": "7.6.3", - "ts-morph": "23.0.0", + "ts-morph": "24.0.0", "tsup": "8.3.0", "tsx": "4.19.1", "typescript": "5.6.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ab1ce50f283..101bcd3bc0a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -93,8 +93,8 @@ importers: specifier: 7.6.3 version: 7.6.3 ts-morph: - specifier: 23.0.0 - version: 23.0.0 + specifier: 24.0.0 + version: 24.0.0 tsup: specifier: 8.3.0 version: 8.3.0(jiti@1.21.6)(postcss@8.4.47)(tsx@4.19.1)(typescript@5.6.2)(yaml@2.5.1) @@ -839,8 +839,8 @@ packages: peerDependencies: eslint: '>=8.40.0' - '@ts-morph/common@0.24.0': - resolution: {integrity: sha512-c1xMmNHWpNselmpIqursHeOHHBTIsJLbB+NuovbTTRCNiTLEr/U9dbJ8qy0jd/O2x5pc3seWuOUN5R2IoOTp8A==} + '@ts-morph/common@0.25.0': + resolution: {integrity: sha512-kMnZz+vGGHi4GoHnLmMhGNjm44kGtKUXGnOvrKmMwAuvNjM/PgKVGfUnL7IDvK7Jb2QQ82jq3Zmp04Gy+r3Dkg==} '@types/eslint@9.6.1': resolution: {integrity: sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==} @@ -1410,8 +1410,8 @@ packages: resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} engines: {node: '>=12'} - code-block-writer@13.0.2: - resolution: {integrity: sha512-XfXzAGiStXSmCIwrkdfvc7FS5Dtj8yelCtyOf2p2skCAfvLd6zu0rGzuS9NSCO3bq1JKpFZ7tbKdKlcd5occQA==} + code-block-writer@13.0.3: + resolution: {integrity: sha512-Oofo0pq3IKnsFtuHqSF7TqBfr71aeyZDVJ0HpmqB7FBM2qEigL0iPONSCZSO9pE9dZTAxANe5XHG9Uy0YMv8cg==} color-convert@1.9.3: resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} @@ -1891,6 +1891,14 @@ packages: picomatch: optional: true + fdir@6.4.0: + resolution: {integrity: sha512-3oB133prH1o4j/L5lLW7uOCF1PlD+/It2L0eL/iAqWMB91RBbqTewABqxhj0ibBd90EEmWZq7ntIWzVaWcXTGQ==} + peerDependencies: + picomatch: ^3 || ^4 + peerDependenciesMeta: + picomatch: + optional: true + fflate@0.8.2: resolution: {integrity: sha512-cPJU47OaAoCbg0pBvzsgpTPhmhqI5eJjh/JIu8tPj5q+T7iLvW/JAYUqmE7KOB4R1ZyEhzBaIQpQpardBF5z8A==} @@ -2538,11 +2546,6 @@ packages: mitt@3.0.1: resolution: {integrity: sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==} - mkdirp@3.0.1: - resolution: {integrity: sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==} - engines: {node: '>=10'} - hasBin: true - modify-values@1.0.1: resolution: {integrity: sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==} engines: {node: '>=0.10.0'} @@ -3220,6 +3223,10 @@ packages: resolution: {integrity: sha512-NbBoFBpqfcgd1tCiO8Lkfdk+xrA7mlLR9zgvZcZWQQwU63XAfUePyd6wZBaU93Hqw347lHnwFzttAkemHzzz4g==} engines: {node: '>=12.0.0'} + tinyglobby@0.2.9: + resolution: {integrity: sha512-8or1+BGEdk1Zkkw2ii16qSS7uVrQJPre5A9o/XkWPATkk23FZh/15BKFxPnlTy6vkljZxLqYCzzBMj30ZrSvjw==} + engines: {node: '>=12.0.0'} + tinypool@1.0.1: resolution: {integrity: sha512-URZYihUbRPcGv95En+sz6MfghfIc2OJ1sv/RmhWZLouPY0/8Vo80viwPvg3dlaS9fuq7fQMEfgRRK7BBZThBEA==} engines: {node: ^18.0.0 || >=20.0.0} @@ -3290,8 +3297,8 @@ packages: ts-interface-checker@0.1.13: resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} - ts-morph@23.0.0: - resolution: {integrity: sha512-FcvFx7a9E8TUe6T3ShihXJLiJOiqyafzFKUO4aqIHDUCIvADdGNShcbc2W5PMr3LerXRv7mafvFZ9lRENxJmug==} + ts-morph@24.0.0: + resolution: {integrity: sha512-2OAOg/Ob5yx9Et7ZX4CvTCc0UFoZHwLEJ+dpDPSUi5TgwwlTlX47w+iFRrEwzUZwYACjq83cgjS/Da50Ga37uw==} tslib@2.7.0: resolution: {integrity: sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==} @@ -4293,12 +4300,11 @@ snapshots: - supports-color - typescript - '@ts-morph/common@0.24.0': + '@ts-morph/common@0.25.0': dependencies: - fast-glob: 3.3.2 minimatch: 9.0.5 - mkdirp: 3.0.1 path-browserify: 1.0.1 + tinyglobby: 0.2.9 '@types/eslint@9.6.1': dependencies: @@ -4922,7 +4928,7 @@ snapshots: strip-ansi: 6.0.1 wrap-ansi: 7.0.0 - code-block-writer@13.0.2: {} + code-block-writer@13.0.3: {} color-convert@1.9.3: dependencies: @@ -5543,6 +5549,10 @@ snapshots: optionalDependencies: picomatch: 4.0.2 + fdir@6.4.0(picomatch@4.0.2): + optionalDependencies: + picomatch: 4.0.2 + fflate@0.8.2: {} figures@3.2.0: @@ -6192,8 +6202,6 @@ snapshots: mitt@3.0.1: {} - mkdirp@3.0.1: {} - modify-values@1.0.1: {} mrmime@2.0.0: {} @@ -6859,6 +6867,11 @@ snapshots: fdir: 6.3.0(picomatch@4.0.2) picomatch: 4.0.2 + tinyglobby@0.2.9: + dependencies: + fdir: 6.4.0(picomatch@4.0.2) + picomatch: 4.0.2 + tinypool@1.0.1: {} tinyrainbow@1.2.0: {} @@ -6912,10 +6925,10 @@ snapshots: ts-interface-checker@0.1.13: {} - ts-morph@23.0.0: + ts-morph@24.0.0: dependencies: - '@ts-morph/common': 0.24.0 - code-block-writer: 13.0.2 + '@ts-morph/common': 0.25.0 + code-block-writer: 13.0.3 tslib@2.7.0: {} From d43d68dd11c81d641042cf38b3260592b9a96419 Mon Sep 17 00:00:00 2001 From: Dmitrii Paskhin Date: Fri, 11 Oct 2024 08:50:41 +0200 Subject: [PATCH 14/18] docs: update unique values guide with new library (#3166) --- docs/guide/unique.md | 32 +------------------------------- 1 file changed, 1 insertion(+), 31 deletions(-) diff --git a/docs/guide/unique.md b/docs/guide/unique.md index 235e33ac52b..ac9a3038f5f 100644 --- a/docs/guide/unique.md +++ b/docs/guide/unique.md @@ -25,34 +25,4 @@ faker.helpers.uniqueArray(faker.internet.email, 1000); // will generate 1000 uni 3. Build your own logic to keep track of a set of previously generated values and regenerate values as necessary if a duplicate is generated -4. Use a third party package to enforce uniqueness such as [enforce-unique](https://github.com/MansurAliKoroglu/enforce-unique) - -Note you can supply a maximum time (in milliseconds) or maximum number of retries. - -```js -import { EnforceUniqueError, UniqueEnforcer } from 'enforce-unique'; - -const uniqueEnforcerEmail = new UniqueEnforcer(); - -function createRandomUser() { - const firstName = faker.person.firstName(); - const lastName = faker.person.lastName(); - const email = uniqueEnforcerEmail.enforce( - () => - faker.internet.email({ - firstName, - lastName, - }), - { - maxTime: 50, - maxRetries: 50, - } - ); - - return { - firstName, - lastName, - email, - }; -} -``` +4. Use a third-party package to enforce uniqueness, such as [enforce-unique](https://github.com/MansurAliKoroglu/enforce-unique) or [@dpaskhin/unique](https://github.com/dPaskhin/unique). From 25506d2d61acf79d889e70ff7a43fde9eee1302a Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 12 Oct 2024 01:06:48 +0200 Subject: [PATCH 15/18] chore(deps): update vitest (#3158) --- package.json | 8 +-- pnpm-lock.yaml | 158 ++++++++++++++++++++++--------------------------- 2 files changed, 76 insertions(+), 90 deletions(-) diff --git a/package.json b/package.json index d64f9b5d91d..7c52cf1a49e 100644 --- a/package.json +++ b/package.json @@ -112,9 +112,9 @@ "@types/sanitize-html": "2.13.0", "@types/semver": "7.5.8", "@types/validator": "13.12.2", - "@vitest/coverage-v8": "2.1.1", - "@vitest/eslint-plugin": "1.1.4", - "@vitest/ui": "2.1.1", + "@vitest/coverage-v8": "2.1.2", + "@vitest/eslint-plugin": "1.1.7", + "@vitest/ui": "2.1.2", "@vueuse/core": "11.1.0", "commit-and-tag-version": "12.4.4", "cypress": "13.15.0", @@ -139,7 +139,7 @@ "validator": "13.12.0", "vite": "5.4.8", "vitepress": "1.4.0", - "vitest": "2.1.1", + "vitest": "2.1.2", "vue": "3.5.11", "vue-tsc": "2.1.6" }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 101bcd3bc0a..1acea91e4a2 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -36,14 +36,14 @@ importers: specifier: 13.12.2 version: 13.12.2 '@vitest/coverage-v8': - specifier: 2.1.1 - version: 2.1.1(vitest@2.1.1) + specifier: 2.1.2 + version: 2.1.2(vitest@2.1.2) '@vitest/eslint-plugin': - specifier: 1.1.4 - version: 1.1.4(@typescript-eslint/utils@8.8.1(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2))(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2)(vitest@2.1.1) + specifier: 1.1.7 + version: 1.1.7(@typescript-eslint/utils@8.8.1(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2))(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2)(vitest@2.1.2) '@vitest/ui': - specifier: 2.1.1 - version: 2.1.1(vitest@2.1.1) + specifier: 2.1.2 + version: 2.1.2(vitest@2.1.2) '@vueuse/core': specifier: 11.1.0 version: 11.1.0(vue@3.5.11(typescript@5.6.2)) @@ -117,8 +117,8 @@ importers: specifier: 1.4.0 version: 1.4.0(@algolia/client-search@5.5.3)(@types/node@20.16.11)(postcss@8.4.47)(search-insights@2.17.2)(typescript@5.6.2) vitest: - specifier: 2.1.1 - version: 2.1.1(@types/node@20.16.11)(@vitest/ui@2.1.1)(jsdom@25.0.1) + specifier: 2.1.2 + version: 2.1.2(@types/node@20.16.11)(@vitest/ui@2.1.2)(jsdom@25.0.1) vue: specifier: 3.5.11 version: 3.5.11(typescript@5.6.2) @@ -972,37 +972,35 @@ packages: vite: ^5.0.0 vue: ^3.2.25 - '@vitest/coverage-v8@2.1.1': - resolution: {integrity: sha512-md/A7A3c42oTT8JUHSqjP5uKTWJejzUW4jalpvs+rZ27gsURsMU8DEb+8Jf8C6Kj2gwfSHJqobDNBuoqlm0cFw==} + '@vitest/coverage-v8@2.1.2': + resolution: {integrity: sha512-b7kHrFrs2urS0cOk5N10lttI8UdJ/yP3nB4JYTREvR5o18cR99yPpK4gK8oQgI42BVv0ILWYUSYB7AXkAUDc0g==} peerDependencies: - '@vitest/browser': 2.1.1 - vitest: 2.1.1 + '@vitest/browser': 2.1.2 + vitest: 2.1.2 peerDependenciesMeta: '@vitest/browser': optional: true - '@vitest/eslint-plugin@1.1.4': - resolution: {integrity: sha512-kudjgefmJJ7xQ2WfbUU6pZbm7Ou4gLYRaao/8Ynide3G0QhVKHd978sDyWX4KOH0CCMH9cyrGAkFd55eGzJ48Q==} + '@vitest/eslint-plugin@1.1.7': + resolution: {integrity: sha512-pTWGW3y6lH2ukCuuffpan6kFxG6nIuoesbhMiQxskyQMRcCN5t9SXsKrNHvEw3p8wcCsgJoRqFZVkOTn6TjclA==} peerDependencies: '@typescript-eslint/utils': '>= 8.0' eslint: '>= 8.57.0' typescript: '>= 5.0.0' vitest: '*' peerDependenciesMeta: - '@typescript-eslint/utils': - optional: true typescript: optional: true vitest: optional: true - '@vitest/expect@2.1.1': - resolution: {integrity: sha512-YeueunS0HiHiQxk+KEOnq/QMzlUuOzbU1Go+PgAsHvvv3tUkJPm9xWt+6ITNTlzsMXUjmgm5T+U7KBPK2qQV6w==} + '@vitest/expect@2.1.2': + resolution: {integrity: sha512-FEgtlN8mIUSEAAnlvn7mP8vzaWhEaAEvhSXCqrsijM7K6QqjB11qoRZYEd4AKSCDz8p0/+yH5LzhZ47qt+EyPg==} - '@vitest/mocker@2.1.1': - resolution: {integrity: sha512-LNN5VwOEdJqCmJ/2XJBywB11DLlkbY0ooDJW3uRX5cZyYCrc4PI/ePX0iQhE3BiEGiQmK4GE7Q/PqCkkaiPnrA==} + '@vitest/mocker@2.1.2': + resolution: {integrity: sha512-ExElkCGMS13JAJy+812fw1aCv2QO/LBK6CyO4WOPAzLTmve50gydOlWhgdBJPx2ztbADUq3JVI0C5U+bShaeEA==} peerDependencies: - '@vitest/spy': 2.1.1 + '@vitest/spy': 2.1.2 msw: ^2.3.5 vite: ^5.0.0 peerDependenciesMeta: @@ -1011,25 +1009,25 @@ packages: vite: optional: true - '@vitest/pretty-format@2.1.1': - resolution: {integrity: sha512-SjxPFOtuINDUW8/UkElJYQSFtnWX7tMksSGW0vfjxMneFqxVr8YJ979QpMbDW7g+BIiq88RAGDjf7en6rvLPPQ==} + '@vitest/pretty-format@2.1.2': + resolution: {integrity: sha512-FIoglbHrSUlOJPDGIrh2bjX1sNars5HbxlcsFKCtKzu4+5lpsRhOCVcuzp0fEhAGHkPZRIXVNzPcpSlkoZ3LuA==} - '@vitest/runner@2.1.1': - resolution: {integrity: sha512-uTPuY6PWOYitIkLPidaY5L3t0JJITdGTSwBtwMjKzo5O6RCOEncz9PUN+0pDidX8kTHYjO0EwUIvhlGpnGpxmA==} + '@vitest/runner@2.1.2': + resolution: {integrity: sha512-UCsPtvluHO3u7jdoONGjOSil+uON5SSvU9buQh3lP7GgUXHp78guN1wRmZDX4wGK6J10f9NUtP6pO+SFquoMlw==} - '@vitest/snapshot@2.1.1': - resolution: {integrity: sha512-BnSku1WFy7r4mm96ha2FzN99AZJgpZOWrAhtQfoxjUU5YMRpq1zmHRq7a5K9/NjqonebO7iVDla+VvZS8BOWMw==} + '@vitest/snapshot@2.1.2': + resolution: {integrity: sha512-xtAeNsZ++aRIYIUsek7VHzry/9AcxeULlegBvsdLncLmNCR6tR8SRjn8BbDP4naxtccvzTqZ+L1ltZlRCfBZFA==} - '@vitest/spy@2.1.1': - resolution: {integrity: sha512-ZM39BnZ9t/xZ/nF4UwRH5il0Sw93QnZXd9NAZGRpIgj0yvVwPpLd702s/Cx955rGaMlyBQkZJ2Ir7qyY48VZ+g==} + '@vitest/spy@2.1.2': + resolution: {integrity: sha512-GSUi5zoy+abNRJwmFhBDC0yRuVUn8WMlQscvnbbXdKLXX9dE59YbfwXxuJ/mth6eeqIzofU8BB5XDo/Ns/qK2A==} - '@vitest/ui@2.1.1': - resolution: {integrity: sha512-IIxo2LkQDA+1TZdPLYPclzsXukBWd5dX2CKpGqH8CCt8Wh0ZuDn4+vuQ9qlppEju6/igDGzjWF/zyorfsf+nHg==} + '@vitest/ui@2.1.2': + resolution: {integrity: sha512-92gcNzkDnmxOxyHzQrQYRsoV9Q0Aay0r4QMLnV+B+lbqlUWa8nDg9ivyLV5mMVTtGirHsYUGGh/zbIA55gBZqA==} peerDependencies: - vitest: 2.1.1 + vitest: 2.1.2 - '@vitest/utils@2.1.1': - resolution: {integrity: sha512-Y6Q9TsI+qJ2CC0ZKj6VBb+T8UPz593N113nnUykqwANqhgf3QkZeHFlusgKLTqrnVHbj/XDKZcDHol+dxVT+rQ==} + '@vitest/utils@2.1.2': + resolution: {integrity: sha512-zMO2KdYy6mx56btx9JvAqAZ6EyS3g49krMPPrgOp1yxGZiA93HumGk+bZ5jIZtOg5/VBYl5eBmGRQHqq4FG6uQ==} '@volar/language-core@2.4.5': resolution: {integrity: sha512-F4tA0DCO5Q1F5mScHmca0umsi2ufKULAnMOVBfMsZdT4myhVl4WdKRwCaKcfOkIEuyrAVvtq1ESBdZ+rSyLVww==} @@ -1883,14 +1881,6 @@ packages: fd-slicer@1.1.0: resolution: {integrity: sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==} - fdir@6.3.0: - resolution: {integrity: sha512-QOnuT+BOtivR77wYvCWHfGt9s4Pz1VIMbD463vegT5MLqNXy8rYFT/lPVEqf/bhYeT6qmqrNHhsX+rWwe3rOCQ==} - peerDependencies: - picomatch: ^3 || ^4 - peerDependenciesMeta: - picomatch: - optional: true - fdir@6.4.0: resolution: {integrity: sha512-3oB133prH1o4j/L5lLW7uOCF1PlD+/It2L0eL/iAqWMB91RBbqTewABqxhj0ibBd90EEmWZq7ntIWzVaWcXTGQ==} peerDependencies: @@ -3452,8 +3442,8 @@ packages: vfile@6.0.3: resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} - vite-node@2.1.1: - resolution: {integrity: sha512-N/mGckI1suG/5wQI35XeR9rsMsPqKXzq1CdUndzVstBj/HvyxxGctwnK6WX43NGt5L3Z5tcRf83g4TITKJhPrA==} + vite-node@2.1.2: + resolution: {integrity: sha512-HPcGNN5g/7I2OtPjLqgOtCRu/qhVvBxTUD3qzitmL0SrG1cWFzxzhMDWussxSbrRYWqnKf8P2jiNhPMSN+ymsQ==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true @@ -3500,15 +3490,15 @@ packages: postcss: optional: true - vitest@2.1.1: - resolution: {integrity: sha512-97We7/VC0e9X5zBVkvt7SGQMGrRtn3KtySFQG5fpaMlS+l62eeXRQO633AYhSTC3z7IMebnPPNjGXVGNRFlxBA==} + vitest@2.1.2: + resolution: {integrity: sha512-veNjLizOMkRrJ6xxb+pvxN6/QAWg95mzcRjtmkepXdN87FNfxAss9RKe2far/G9cQpipfgP2taqg0KiWsquj8A==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: '@edge-runtime/vm': '*' '@types/node': ^18.0.0 || >=20.0.0 - '@vitest/browser': 2.1.1 - '@vitest/ui': 2.1.1 + '@vitest/browser': 2.1.2 + '@vitest/ui': 2.1.2 happy-dom: '*' jsdom: '*' peerDependenciesMeta: @@ -4455,7 +4445,7 @@ snapshots: vite: 5.4.8(@types/node@20.16.11) vue: 3.5.11(typescript@5.6.2) - '@vitest/coverage-v8@2.1.1(vitest@2.1.1)': + '@vitest/coverage-v8@2.1.2(vitest@2.1.2)': dependencies: '@ampproject/remapping': 2.3.0 '@bcoe/v8-coverage': 0.2.3 @@ -4469,66 +4459,66 @@ snapshots: std-env: 3.7.0 test-exclude: 7.0.1 tinyrainbow: 1.2.0 - vitest: 2.1.1(@types/node@20.16.11)(@vitest/ui@2.1.1)(jsdom@25.0.1) + vitest: 2.1.2(@types/node@20.16.11)(@vitest/ui@2.1.2)(jsdom@25.0.1) transitivePeerDependencies: - supports-color - '@vitest/eslint-plugin@1.1.4(@typescript-eslint/utils@8.8.1(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2))(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2)(vitest@2.1.1)': + '@vitest/eslint-plugin@1.1.7(@typescript-eslint/utils@8.8.1(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2))(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2)(vitest@2.1.2)': dependencies: + '@typescript-eslint/utils': 8.8.1(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2) eslint: 9.12.0(jiti@1.21.6) optionalDependencies: - '@typescript-eslint/utils': 8.8.1(eslint@9.12.0(jiti@1.21.6))(typescript@5.6.2) typescript: 5.6.2 - vitest: 2.1.1(@types/node@20.16.11)(@vitest/ui@2.1.1)(jsdom@25.0.1) + vitest: 2.1.2(@types/node@20.16.11)(@vitest/ui@2.1.2)(jsdom@25.0.1) - '@vitest/expect@2.1.1': + '@vitest/expect@2.1.2': dependencies: - '@vitest/spy': 2.1.1 - '@vitest/utils': 2.1.1 + '@vitest/spy': 2.1.2 + '@vitest/utils': 2.1.2 chai: 5.1.1 tinyrainbow: 1.2.0 - '@vitest/mocker@2.1.1(@vitest/spy@2.1.1)(vite@5.4.8(@types/node@20.16.11))': + '@vitest/mocker@2.1.2(@vitest/spy@2.1.2)(vite@5.4.8(@types/node@20.16.11))': dependencies: - '@vitest/spy': 2.1.1 + '@vitest/spy': 2.1.2 estree-walker: 3.0.3 magic-string: 0.30.11 optionalDependencies: vite: 5.4.8(@types/node@20.16.11) - '@vitest/pretty-format@2.1.1': + '@vitest/pretty-format@2.1.2': dependencies: tinyrainbow: 1.2.0 - '@vitest/runner@2.1.1': + '@vitest/runner@2.1.2': dependencies: - '@vitest/utils': 2.1.1 + '@vitest/utils': 2.1.2 pathe: 1.1.2 - '@vitest/snapshot@2.1.1': + '@vitest/snapshot@2.1.2': dependencies: - '@vitest/pretty-format': 2.1.1 + '@vitest/pretty-format': 2.1.2 magic-string: 0.30.11 pathe: 1.1.2 - '@vitest/spy@2.1.1': + '@vitest/spy@2.1.2': dependencies: tinyspy: 3.0.2 - '@vitest/ui@2.1.1(vitest@2.1.1)': + '@vitest/ui@2.1.2(vitest@2.1.2)': dependencies: - '@vitest/utils': 2.1.1 + '@vitest/utils': 2.1.2 fflate: 0.8.2 flatted: 3.3.1 pathe: 1.1.2 sirv: 2.0.4 - tinyglobby: 0.2.6 + tinyglobby: 0.2.9 tinyrainbow: 1.2.0 - vitest: 2.1.1(@types/node@20.16.11)(@vitest/ui@2.1.1)(jsdom@25.0.1) + vitest: 2.1.2(@types/node@20.16.11)(@vitest/ui@2.1.2)(jsdom@25.0.1) - '@vitest/utils@2.1.1': + '@vitest/utils@2.1.2': dependencies: - '@vitest/pretty-format': 2.1.1 + '@vitest/pretty-format': 2.1.2 loupe: 3.1.1 tinyrainbow: 1.2.0 @@ -5545,10 +5535,6 @@ snapshots: dependencies: pend: 1.2.0 - fdir@6.3.0(picomatch@4.0.2): - optionalDependencies: - picomatch: 4.0.2 - fdir@6.4.0(picomatch@4.0.2): optionalDependencies: picomatch: 4.0.2 @@ -6864,7 +6850,7 @@ snapshots: tinyglobby@0.2.6: dependencies: - fdir: 6.3.0(picomatch@4.0.2) + fdir: 6.4.0(picomatch@4.0.2) picomatch: 4.0.2 tinyglobby@0.2.9: @@ -7083,7 +7069,7 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.2 - vite-node@2.1.1(@types/node@20.16.11): + vite-node@2.1.2(@types/node@20.16.11): dependencies: cac: 6.7.14 debug: 4.3.7(supports-color@8.1.1) @@ -7158,15 +7144,15 @@ snapshots: - typescript - universal-cookie - vitest@2.1.1(@types/node@20.16.11)(@vitest/ui@2.1.1)(jsdom@25.0.1): + vitest@2.1.2(@types/node@20.16.11)(@vitest/ui@2.1.2)(jsdom@25.0.1): dependencies: - '@vitest/expect': 2.1.1 - '@vitest/mocker': 2.1.1(@vitest/spy@2.1.1)(vite@5.4.8(@types/node@20.16.11)) - '@vitest/pretty-format': 2.1.1 - '@vitest/runner': 2.1.1 - '@vitest/snapshot': 2.1.1 - '@vitest/spy': 2.1.1 - '@vitest/utils': 2.1.1 + '@vitest/expect': 2.1.2 + '@vitest/mocker': 2.1.2(@vitest/spy@2.1.2)(vite@5.4.8(@types/node@20.16.11)) + '@vitest/pretty-format': 2.1.2 + '@vitest/runner': 2.1.2 + '@vitest/snapshot': 2.1.2 + '@vitest/spy': 2.1.2 + '@vitest/utils': 2.1.2 chai: 5.1.1 debug: 4.3.7(supports-color@8.1.1) magic-string: 0.30.11 @@ -7177,11 +7163,11 @@ snapshots: tinypool: 1.0.1 tinyrainbow: 1.2.0 vite: 5.4.8(@types/node@20.16.11) - vite-node: 2.1.1(@types/node@20.16.11) + vite-node: 2.1.2(@types/node@20.16.11) why-is-node-running: 2.3.0 optionalDependencies: '@types/node': 20.16.11 - '@vitest/ui': 2.1.1(vitest@2.1.1) + '@vitest/ui': 2.1.2(vitest@2.1.2) jsdom: 25.0.1 transitivePeerDependencies: - less From 033c23b109de18dcfaf8abeab4e134a47c57b460 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 12 Oct 2024 12:21:40 +0200 Subject: [PATCH 16/18] chore(deps): update dependency eslint-plugin-unicorn to v56 (#3159) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: ST-DDT --- eslint.config.ts | 1 - package.json | 2 +- pnpm-lock.yaml | 10 +++++----- src/internal/mersenne.ts | 2 +- 4 files changed, 7 insertions(+), 8 deletions(-) diff --git a/eslint.config.ts b/eslint.config.ts index 05fe235fcf4..4b522eece5d 100644 --- a/eslint.config.ts +++ b/eslint.config.ts @@ -153,7 +153,6 @@ const config: ReturnType = tseslint.config( // TODO @Shinigami92 2023-09-23: The following rules currently conflict with our code. // Each rule should be checked whether it should be enabled/configured and the problems fixed, or stay disabled permanently. - 'unicorn/better-regex': 'off', 'unicorn/consistent-function-scoping': 'off', 'unicorn/no-object-as-default-parameter': 'off', 'unicorn/prefer-export-from': 'off', diff --git a/package.json b/package.json index 7c52cf1a49e..718ab7e6d5f 100644 --- a/package.json +++ b/package.json @@ -122,7 +122,7 @@ "eslint-config-prettier": "9.1.0", "eslint-plugin-jsdoc": "50.3.1", "eslint-plugin-prettier": "5.2.1", - "eslint-plugin-unicorn": "55.0.0", + "eslint-plugin-unicorn": "56.0.0", "jiti": "1.21.6", "npm-run-all2": "6.2.3", "prettier": "3.3.3", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 1acea91e4a2..abcddbd87b0 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -66,8 +66,8 @@ importers: specifier: 5.2.1 version: 5.2.1(@types/eslint@9.6.1)(eslint-config-prettier@9.1.0(eslint@9.12.0(jiti@1.21.6)))(eslint@9.12.0(jiti@1.21.6))(prettier@3.3.3) eslint-plugin-unicorn: - specifier: 55.0.0 - version: 55.0.0(eslint@9.12.0(jiti@1.21.6)) + specifier: 56.0.0 + version: 56.0.0(eslint@9.12.0(jiti@1.21.6)) jiti: specifier: 1.21.6 version: 1.21.6 @@ -1778,8 +1778,8 @@ packages: eslint-config-prettier: optional: true - eslint-plugin-unicorn@55.0.0: - resolution: {integrity: sha512-n3AKiVpY2/uDcGrS3+QsYDkjPfaOrNrsfQxU9nt5nitd9KuvVXrfAvgCO9DYPSfap+Gqjw9EOrXIsBp5tlHZjA==} + eslint-plugin-unicorn@56.0.0: + resolution: {integrity: sha512-aXpddVz/PQMmd69uxO98PA4iidiVNvA0xOtbpUoz1WhBd4RxOQQYqN618v68drY0hmy5uU2jy1bheKEVWBjlPw==} engines: {node: '>=18.18'} peerDependencies: eslint: '>=8.56.0' @@ -5372,7 +5372,7 @@ snapshots: '@types/eslint': 9.6.1 eslint-config-prettier: 9.1.0(eslint@9.12.0(jiti@1.21.6)) - eslint-plugin-unicorn@55.0.0(eslint@9.12.0(jiti@1.21.6)): + eslint-plugin-unicorn@56.0.0(eslint@9.12.0(jiti@1.21.6)): dependencies: '@babel/helper-validator-identifier': 7.24.7 '@eslint-community/eslint-utils': 4.4.0(eslint@9.12.0(jiti@1.21.6)) diff --git a/src/internal/mersenne.ts b/src/internal/mersenne.ts index 351faa4e4b9..82a0915baf9 100644 --- a/src/internal/mersenne.ts +++ b/src/internal/mersenne.ts @@ -171,7 +171,7 @@ export class MersenneTwister19937 { this.initGenrand(19650218); let i = 1; let j = 0; - let k = this.N > keyLength ? this.N : keyLength; + let k = Math.max(this.N, keyLength); for (; k; k--) { // mt[i] = (mt[i] ^ ((mt[i-1] ^ (mt[i-1] >> 30)) * 1664525)) + init_key[j] + j; this.mt[i] = this.addition32( From 4056ab09c64be40d41562284ec64e7531fbaff41 Mon Sep 17 00:00:00 2001 From: Joscha Feth Date: Sat, 12 Oct 2024 14:39:42 +0100 Subject: [PATCH 17/18] feat(location): add `continent` method (#3162) --- src/definitions/location.ts | 5 +++++ src/locales/en/location/continent.ts | 9 +++++++++ src/locales/en/location/index.ts | 2 ++ src/modules/location/index.ts | 14 ++++++++++++++ test/modules/__snapshots__/location.spec.ts.snap | 6 ++++++ test/modules/location.spec.ts | 12 ++++++++++++ 6 files changed, 48 insertions(+) create mode 100644 src/locales/en/location/continent.ts diff --git a/src/definitions/location.ts b/src/definitions/location.ts index 5aee4e79e3f..9fbda95f59b 100644 --- a/src/definitions/location.ts +++ b/src/definitions/location.ts @@ -36,6 +36,11 @@ export type LocationDefinition = LocaleEntry<{ */ city_suffix: string[]; + /** + * The names of all continents. + */ + continent: string[]; + /** * The names of all countries. */ diff --git a/src/locales/en/location/continent.ts b/src/locales/en/location/continent.ts new file mode 100644 index 00000000000..379b460155e --- /dev/null +++ b/src/locales/en/location/continent.ts @@ -0,0 +1,9 @@ +export default [ + 'Africa', + 'Antarctica', + 'Asia', + 'Australia', + 'Europe', + 'North America', + 'South America', +]; diff --git a/src/locales/en/location/index.ts b/src/locales/en/location/index.ts index 7938321dcb7..64ca3268f7d 100644 --- a/src/locales/en/location/index.ts +++ b/src/locales/en/location/index.ts @@ -8,6 +8,7 @@ import city_name from './city_name'; import city_pattern from './city_pattern'; import city_prefix from './city_prefix'; import city_suffix from './city_suffix'; +import continent from './continent'; import country from './country'; import county from './county'; import direction from './direction'; @@ -26,6 +27,7 @@ const location: LocationDefinition = { city_pattern, city_prefix, city_suffix, + continent, country, county, direction, diff --git a/src/modules/location/index.ts b/src/modules/location/index.ts index 4aabdd8db4a..4a49e029501 100644 --- a/src/modules/location/index.ts +++ b/src/modules/location/index.ts @@ -216,6 +216,20 @@ export class LocationModule extends ModuleBase { ); } + /** + * Returns a random continent name. + * + * @example + * faker.location.continent() // 'Asia' + * + * @since 9.1.0 + */ + continent(): string { + return this.faker.helpers.arrayElement( + this.faker.definitions.location.continent + ); + } + /** * Returns a random [ISO_3166-1](https://en.wikipedia.org/wiki/ISO_3166-1) country code. * diff --git a/test/modules/__snapshots__/location.spec.ts.snap b/test/modules/__snapshots__/location.spec.ts.snap index b53acbda355..a8d24e9a6ef 100644 --- a/test/modules/__snapshots__/location.spec.ts.snap +++ b/test/modules/__snapshots__/location.spec.ts.snap @@ -8,6 +8,8 @@ exports[`location > 42 > cardinalDirection > with abbreviated option 1`] = `"E"` exports[`location > 42 > city 1`] = `"Fort Moses"`; +exports[`location > 42 > continent 1`] = `"Asia"`; + exports[`location > 42 > country 1`] = `"Guinea"`; exports[`location > 42 > countryCode > noArgs 1`] = `"GY"`; @@ -144,6 +146,8 @@ exports[`location > 1211 > cardinalDirection > with abbreviated option 1`] = `"W exports[`location > 1211 > city 1`] = `"The Villages"`; +exports[`location > 1211 > continent 1`] = `"South America"`; + exports[`location > 1211 > country 1`] = `"Uganda"`; exports[`location > 1211 > countryCode > noArgs 1`] = `"UM"`; @@ -280,6 +284,8 @@ exports[`location > 1337 > cardinalDirection > with abbreviated option 1`] = `"E exports[`location > 1337 > city 1`] = `"East Duane"`; +exports[`location > 1337 > continent 1`] = `"Antarctica"`; + exports[`location > 1337 > country 1`] = `"Egypt"`; exports[`location > 1337 > countryCode > noArgs 1`] = `"EH"`; diff --git a/test/modules/location.spec.ts b/test/modules/location.spec.ts index 1291efd31fd..2be7c4896a3 100644 --- a/test/modules/location.spec.ts +++ b/test/modules/location.spec.ts @@ -77,6 +77,8 @@ describe('location', () => { t.it('country'); + t.it('continent'); + t.describe('countryCode', (t) => { t.it('noArgs') .it('with string alpha-2', 'alpha-2') @@ -145,6 +147,16 @@ describe('location', () => { describe.each(times(NON_SEEDED_BASED_RUN).map(() => faker.seed()))( 'random seeded tests for seed %i', () => { + describe('continent()', () => { + it('returns random continent', () => { + const actual = faker.location.continent(); + + expect(actual).toBeTruthy(); + expect(actual).toBeTypeOf('string'); + expect(faker.definitions.location.continent).toContain(actual); + }); + }); + describe('countryCode()', () => { it('returns random alpha-2 countryCode', () => { const countryCode = faker.location.countryCode('alpha-2'); From e271d4a545dd48e57285019e4f412358c49cad0d Mon Sep 17 00:00:00 2001 From: Matt Mayer <152770+matthewmayer@users.noreply.github.com> Date: Sun, 13 Oct 2024 05:44:40 +0700 Subject: [PATCH 18/18] fix(location): update valid ZIP ranges for FL and VA (#3167) --- src/locales/en_US/location/postcode_by_state.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/locales/en_US/location/postcode_by_state.ts b/src/locales/en_US/location/postcode_by_state.ts index 70b61700453..4f8ab247d15 100644 --- a/src/locales/en_US/location/postcode_by_state.ts +++ b/src/locales/en_US/location/postcode_by_state.ts @@ -8,7 +8,7 @@ export default { CT: '0{{number.int({"min": 6001,"max": 6389})}}', DC: '{{number.int({"min": 20001,"max": 20039})}}', DE: '{{number.int({"min": 19701,"max": 19980})}}', - FL: '{{number.int({"min": 32004,"max": 34997})}}', + FL: '{{helpers.arrayElement(["320","321","322","323","324","325","326","327","328","329","330","331","332","333","334","335","336","337","338","339","341","342","344","346","347","349"])}}{{string.numeric({"length": 2})}}', GA: '{{number.int({"min": 30001,"max": 31999})}}', HI: '{{number.int({"min": 96701,"max": 96898})}}', IA: '{{number.int({"min": 50001,"max": 52809})}}', @@ -45,7 +45,7 @@ export default { TN: '{{number.int({"min": 37010,"max": 38589})}}', TX: '{{number.int({"min": 75503,"max": 79999})}}', UT: '{{number.int({"min": 84001,"max": 84784})}}', - VA: '{{number.int({"min": 20040,"max": 20041})}}', + VA: '{{number.int({"min": 22201,"max": 24599})}}', VT: '0{{number.int({"min": 5001,"max": 5495})}}', WA: '{{number.int({"min": 98001,"max": 99403})}}', WI: '{{number.int({"min": 53001,"max": 54990})}}',