diff --git a/.commitlintrc.cjs b/.commitlintrc.cjs
index 450a0353..3000575b 100644
--- a/.commitlintrc.cjs
+++ b/.commitlintrc.cjs
@@ -2,7 +2,7 @@ module.exports = {
extends: ["@commitlint/config-conventional"],
parserPreset: {
parserOpts: {
- headerPattern: /^(\w*)(?:\((.*)\))?!?: (.*)$/,
+ headerPattern: /^(\w*)(?:\((.*)\))?!?: (.*)$/u,
},
},
};
diff --git a/.cspell.json b/.cspell.json
deleted file mode 100644
index 5d88e1d8..00000000
--- a/.cspell.json
+++ /dev/null
@@ -1,70 +0,0 @@
-{
- "version": "0.2",
- "language": "en",
- "ignorePaths": [
- ".github/workflows/**",
- "**/*.json",
- "**/*.jsonc",
- "**/CHANGELOG.md",
- "**/dist/**",
- "**/node_modules/**",
- "pnpm-lock.yaml"
- ],
- "dictionaries": [
- "en_US",
- "filetypes",
- "misc",
- "node",
- "npm",
- "softwareTerms",
- "typescript"
- ],
- "import": ["./node_modules/@cspell/dict-cryptocurrencies/cspell-ext.json"],
- "ignoreRegExpList": [
- "/[^\\s@]+@([^\\s@]+\\.)+[^\\s@]{2,4}/",
- "/\\b[A-Fa-f0-9]{6}\\b/",
- "/\\b[A-Za-z0-9]{32,}\\b/",
- "// @ts-.*",
- "/\\STS\\S+/",
- "/`[^`]*`/",
- "/``[\\w\\W]*?``/",
- "/```[\\w\\W]*?```/",
- "/~~~[\\w\\W]*?~~~/",
- "\\(#.+?\\)"
- ],
- "words": [
- "bar",
- "baz",
- "cjsx",
- "corge",
- "ctsx",
- "foo",
- "fred",
- "garply",
- "grault",
- "litecoin",
- "mjsx",
- "monero",
- "mtsx",
- "noreply",
- "plugh",
- "quux",
- "qux",
- "Rebecca",
- "rebeccastevens",
- "sonarjs",
- "thud",
- "waldo",
- "xyzzy"
- ],
- "overrides": [
- {
- "filename": "**/*.{ts,js}",
- "ignoreRegExpList": ["/@[a-z]+/", "/#(end)?region/"],
- "includeRegExpList": [
- "/\\/\\*[\\s\\S]*?\\*\\/|([^\\\\:]|^)\\/\\/.*$/",
- "/(\\/\\/[^\\n\\r]*[\\n\\r]+)/"
- ]
- }
- ]
-}
diff --git a/.eslintrc.json b/.eslintrc.json
deleted file mode 100644
index a218275d..00000000
--- a/.eslintrc.json
+++ /dev/null
@@ -1,29 +0,0 @@
-{
- "root": true,
- "env": {
- "node": true
- },
- "plugins": ["prettier"],
- "extends": [
- "@rebeccastevens/eslint-config/modern",
- "@rebeccastevens/eslint-config/typescript",
- "@rebeccastevens/eslint-config/common-overrides",
- "plugin:prettier/recommended",
- "prettier"
- ],
- "parserOptions": {
- "project": ["./tsconfig.json"]
- },
- "ignorePatterns": ["/dist/"],
- "rules": {
- "functional/no-throw-statements": "off"
- },
- "overrides": [
- {
- "files": ["src/**/*.{ts,js}"],
- "rules": {
- "sonarjs/no-duplicate-string": "off"
- }
- }
- ]
-}
diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml
index 969e4451..fdf3aba6 100644
--- a/.github/FUNDING.yml
+++ b/.github/FUNDING.yml
@@ -1,2 +1,3 @@
+issuehunt: RebeccaStevens/eslint-config-rebeccastevens
ko_fi: rebeccastevens
custom: https://github.com/RebeccaStevens/eslint-config-rebeccastevens/blob/main/DONATIONS.md
diff --git a/.github/actions/prepare/action.yml b/.github/actions/prepare/action.yml
index 527ad4bc..cb46b1ac 100644
--- a/.github/actions/prepare/action.yml
+++ b/.github/actions/prepare/action.yml
@@ -5,10 +5,10 @@ inputs:
node-version:
required: false
description: "`node-version` passed to `actions/setup-node`."
- default: v20
+ default: "20"
runs:
- using: "composite"
+ using: composite
steps:
- name: Configure Git
run: |
@@ -16,9 +16,9 @@ runs:
git config --global user.name ${GITHUB_ACTOR}
shell: bash
- uses: pnpm/action-setup@v2
- - uses: actions/setup-node@v3
+ - uses: actions/setup-node@v4
with:
node-version: ${{ inputs.node-version }}
- cache: "pnpm"
+ cache: pnpm
- run: pnpm install --frozen-lockfile --ignore-scripts
shell: bash
diff --git a/.github/codecov.yml b/.github/codecov.yml
new file mode 100644
index 00000000..bfdc9877
--- /dev/null
+++ b/.github/codecov.yml
@@ -0,0 +1,8 @@
+coverage:
+ status:
+ project:
+ default:
+ informational: true
+ patch:
+ default:
+ informational: true
diff --git a/.github/labels.yml b/.github/labels.yml
index f2090a35..f4789c5d 100644
--- a/.github/labels.yml
+++ b/.github/labels.yml
@@ -1,7 +1,7 @@
# Priority labels
- name: "Priority: Critical"
color: ee0701
- description: "This should be dealt with ASAP. Not fixing this issue would be a serious error."
+ description: This should be dealt with ASAP. Not fixing this issue would be a serious error.
- name: "Priority: High"
color: b60205
description: "After critical issues are fixed, these should be dealt with before any further issues."
@@ -15,10 +15,10 @@
# Type labels
- name: "Type: Bug"
color: ee0701
- description: "Inconsistencies or issues which will cause a problem for users or implementors."
+ description: Inconsistencies or issues which will cause a problem for users or implementors.
- name: "Type: Documentation"
color: 0052cc
- description: "Solely about the documentation of the project."
+ description: Solely about the documentation of the project.
- name: "Type: Enhancement"
color: 1d76db
description: "Enhancement of the code, not introducing new features."
@@ -27,61 +27,61 @@
description: "Marks an idea, which might be accepted and implemented."
- name: "Type: Feature"
color: 0e8a16
- description: "New features or options."
+ description: New features or options.
- name: "Type: Maintenance"
color: 2af79e
description: "Generic maintenance tasks, e.g., package updates."
# Additional markers
-- name: "Security"
+- name: Security
color: ee0701
- description: "Marks an security issues that needs to be resolved asap."
-- name: "Accepted"
+ description: Marks an security issues that needs to be resolved asap.
+- name: Accepted
color: c2e0c6
- description: "This issue or PR has been accepted."
-- name: "Declined"
+ description: This issue or PR has been accepted.
+- name: Declined
color: f9d0c4
- description: "This issue or PR has been declined."
-- name: "Breaking Change"
+ description: This issue or PR has been declined.
+- name: Breaking Change
color: a80016
- description: "This change will require a new major release."
-- name: "Feature Removal"
+ description: This change will require a new major release.
+- name: Feature Removal
color: a80016
- description: "A feature is no longer wanted/needed (remove/deprecate it)"
+ description: A feature is no longer wanted/needed (remove/deprecate it)
# Ongoing Status labels
- name: "Status: Triage"
color: fbca04
- description: "This issue needs to be triaged."
+ description: This issue needs to be triaged.
- name: "Status: Investigation Needed"
color: fef2c0
- description: "Issue need to be investigated further."
+ description: Issue need to be investigated further.
- name: "Status: On Hold"
color: cccccc
- description: "Issue or PR that has been placed on hold for now."
+ description: Issue or PR that has been placed on hold for now.
- name: "Status: In Progress"
color: fbca04
- description: "Issue is currently being resolved by a developer."
+ description: Issue is currently being resolved by a developer.
- name: "Status: Stale"
color: fef2c0
- description: "There has not been activity on this issue or PR for quite some time."
+ description: There has not been activity on this issue or PR for quite some time.
- name: "Status: Awaiting Response"
color: fef2c0
- description: "Issue or PR awaits response from the creator."
+ description: Issue or PR awaits response from the creator.
- name: "Status: Awaiting Feedback"
color: fef2c0
- description: "Issue or PR awaits feedback from the community."
+ description: Issue or PR awaits feedback from the community.
- name: "Status: Blocked"
color: fef2c0
- description: "Progress on this issue is currently not possible."
+ description: Progress on this issue is currently not possible.
# Resolution Status labels
- name: "Resolution: By Design"
color: e6e6e6
- description: "The behavior reported in the issue is actually correct."
+ description: The behavior reported in the issue is actually correct.
- name: "Resolution: Duplicate"
color: e6e6e6
- description: "This issue or pull request already exists"
+ description: This issue or pull request already exists
- name: "Resolution: External"
color: e6e6e6
description: "It was a real bug, but not in the code in this repo."
@@ -90,24 +90,27 @@
description: ""
- name: "Resolution: Not Applicable"
color: e6e6e6
- description: "The issue is not relevant to code in this repo and is not an external issue. (Out of scope)"
+ description: The issue is not relevant to code in this repo and is not an external issue. (Out of scope)
- name: "Resolution: Not Reproducible"
color: e6e6e6
- description: "The bug could not be reproduced."
+ description: The bug could not be reproduced.
- name: "Resolution: Won't Fix"
color: e6e6e6
description: "A real bug or issue, but the issue is not impactful enough to spend time on."
- name: "Resolution: Fixed"
color: c2e0c6
- description: "The issue has been fixed."
+ description: The issue has been fixed.
- name: "Resolution: Added"
color: c2e0c6
- description: "This has been added to the project."
+ description: This has been added to the project.
# Bots
- name: ":blue_heart:"
color: ffffff
- description: "Renovate"
+ description: Renovate
- name: "Status: Released"
color: c2e0c6
description: "It's now live."
+- name: "Status: Beta Released"
+ color: fef2c0
+ description: "It's now live."
diff --git a/.github/renovate.json b/.github/renovate.json
index 49425584..0b8e452b 100644
--- a/.github/renovate.json
+++ b/.github/renovate.json
@@ -1,54 +1,60 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
+ "automergeStrategy": "rebase",
"extends": [
- ":ignoreModulesAndTests",
- "group:monorepos",
- "group:recommended",
":automergeAll",
":automergePr",
- ":semanticCommits",
- ":prHourlyLimitNone",
+ ":ignoreModulesAndTests",
":prConcurrentLimitNone",
+ ":prHourlyLimitNone",
+ ":semanticCommits",
+ "group:allNonMajor",
+ "group:monorepos",
+ "group:recommended",
"helpers:disableTypesNodeMajor",
- "workarounds:typesNodeVersioning",
- "schedule:weekly"
+ "replacements:all",
+ "schedule:monthly",
+ "workarounds:all"
],
"labels": ["Type: Maintenance", ":blue_heart:"],
- "automergeStrategy": "rebase",
- "postUpdateOptions": ["pnpmDedupe"],
"packageRules": [
{
- "matchManagers": ["npm"],
+ "major": {
+ "semanticCommitType": "build"
+ },
"matchDepTypes": ["dependencies"],
+ "matchManagers": ["npm"],
"rangeStrategy": "update-lockfile",
- "semanticCommitType": "chore",
"semanticCommitScope": "deps",
- "major": {
- "semanticCommitType": "build"
- }
+ "semanticCommitType": "chore"
},
{
- "matchManagers": ["npm"],
"matchDepTypes": ["devDependencies"],
+ "matchManagers": ["npm"],
"rangeStrategy": "pin",
- "semanticCommitType": "chore",
- "semanticCommitScope": "dev-deps"
+ "semanticCommitScope": "dev-deps",
+ "semanticCommitType": "chore"
},
{
- "matchManagers": ["npm"],
+ "major": {
+ "semanticCommitType": "build"
+ },
"matchDepTypes": ["peerDependencies"],
+ "matchManagers": ["npm"],
"rangeStrategy": "widen",
- "semanticCommitType": "chore",
"semanticCommitScope": "peer-deps",
- "major": {
- "semanticCommitType": "build"
- }
+ "semanticCommitType": "chore"
},
{
"matchManagers": ["github-actions"],
"rangeStrategy": "replace",
- "semanticCommitType": "ci",
- "semanticCommitScope": "dev-deps"
+ "semanticCommitScope": "dev-deps",
+ "semanticCommitType": "ci"
+ },
+ {
+ "allowedVersions": "<5.5",
+ "matchPackageNames": ["typescript"]
}
- ]
+ ],
+ "postUpdateOptions": ["pnpmDedupe"]
}
diff --git a/.github/workflows/accessibility-alt-text-bot.yml b/.github/workflows/accessibility-alt-text-bot.yml
new file mode 100644
index 00000000..7db3761d
--- /dev/null
+++ b/.github/workflows/accessibility-alt-text-bot.yml
@@ -0,0 +1,26 @@
+name: Accessibility Alt Text Bot
+
+on:
+ issue_comment:
+ types:
+ - created
+ - edited
+ issues:
+ types:
+ - edited
+ - opened
+ pull_request:
+ types:
+ - edited
+ - opened
+
+permissions:
+ issues: write
+ pull-requests: write
+
+jobs:
+ accessibility_alt_text_bot:
+ if: ${{ !endsWith(github.actor, '[bot]') }}
+ runs-on: ubuntu-latest
+ steps:
+ - uses: github/accessibility-alt-text-bot@v1.4.0
diff --git a/.github/workflows/build-node.yml b/.github/workflows/build-node.yml
index d699ad38..d670bbf5 100644
--- a/.github/workflows/build-node.yml
+++ b/.github/workflows/build-node.yml
@@ -9,6 +9,6 @@ jobs:
build_node:
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@v3
+ - uses: actions/checkout@v4
- uses: ./.github/actions/prepare
- run: pnpm run build:node
diff --git a/.github/workflows/done-label.yml b/.github/workflows/done-label.yml
index be14dc73..4471bc63 100644
--- a/.github/workflows/done-label.yml
+++ b/.github/workflows/done-label.yml
@@ -7,7 +7,7 @@ on:
jobs:
run:
- name: "Update Labels"
+ name: Update Labels
runs-on: ubuntu-latest
steps:
- uses: RebeccaStevens/issue-closed-labeler-action@v1
diff --git a/.github/workflows/build.yml b/.github/workflows/lint-eslint.yml
similarity index 51%
rename from .github/workflows/build.yml
rename to .github/workflows/lint-eslint.yml
index 088a302a..4720a82e 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/lint-eslint.yml
@@ -1,4 +1,4 @@
-name: Build
+name: Lint with ESLint
on:
pull_request:
@@ -6,9 +6,10 @@ on:
workflow_call:
jobs:
- build:
+ lint_eslint:
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@v3
+ - uses: actions/checkout@v4
- uses: ./.github/actions/prepare
- - run: pnpm run build
+ - run: pnpm run typegen
+ - run: pnpm run lint:eslint
diff --git a/.github/workflows/lint-js.yml b/.github/workflows/lint-js.yml
deleted file mode 100644
index 430f9cfb..00000000
--- a/.github/workflows/lint-js.yml
+++ /dev/null
@@ -1,14 +0,0 @@
-name: Lint Code
-
-on:
- pull_request:
- workflow_dispatch:
- workflow_call:
-
-jobs:
- lint_js:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v3
- - uses: ./.github/actions/prepare
- - run: pnpm run lint:js
diff --git a/.github/workflows/lint-knip-dev.yml b/.github/workflows/lint-knip-dev.yml
index de4bc1c3..db28ccb6 100644
--- a/.github/workflows/lint-knip-dev.yml
+++ b/.github/workflows/lint-knip-dev.yml
@@ -9,6 +9,7 @@ jobs:
lint_knip_dev:
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@v3
+ - uses: actions/checkout@v4
- uses: ./.github/actions/prepare
+ - run: pnpm run typegen
- run: pnpm run lint:knip:development
diff --git a/.github/workflows/lint-knip-prod.yml b/.github/workflows/lint-knip-prod.yml
index 70c86902..5b4c1e1d 100644
--- a/.github/workflows/lint-knip-prod.yml
+++ b/.github/workflows/lint-knip-prod.yml
@@ -9,6 +9,7 @@ jobs:
lint_knip_prod:
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@v3
+ - uses: actions/checkout@v4
- uses: ./.github/actions/prepare
+ - run: pnpm run typegen
- run: pnpm run lint:knip:production
diff --git a/.github/workflows/lint-markdown.yml b/.github/workflows/lint-markdown.yml
index 278f375b..cfbd02ab 100644
--- a/.github/workflows/lint-markdown.yml
+++ b/.github/workflows/lint-markdown.yml
@@ -9,6 +9,6 @@ jobs:
lint_markdown:
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@v3
+ - uses: actions/checkout@v4
- uses: ./.github/actions/prepare
- run: pnpm run lint:md
diff --git a/.github/workflows/lint-prettier.yml b/.github/workflows/lint-packages.yml
similarity index 57%
rename from .github/workflows/lint-prettier.yml
rename to .github/workflows/lint-packages.yml
index c666f1e1..9a21e8f1 100644
--- a/.github/workflows/lint-prettier.yml
+++ b/.github/workflows/lint-packages.yml
@@ -1,4 +1,4 @@
-name: Prettier
+name: Lint Packages
on:
pull_request:
@@ -6,9 +6,9 @@ on:
workflow_call:
jobs:
- lint_prettier:
+ lint_packages:
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@v3
+ - uses: actions/checkout@v4
- uses: ./.github/actions/prepare
- - run: pnpm run lint:prettier
+ - run: pnpm run lint:packages
diff --git a/.github/workflows/lint-spelling.yml b/.github/workflows/lint-spelling.yml
index e877d46d..d54881b9 100644
--- a/.github/workflows/lint-spelling.yml
+++ b/.github/workflows/lint-spelling.yml
@@ -9,6 +9,6 @@ jobs:
lint_spelling:
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@v3
+ - uses: actions/checkout@v4
- uses: ./.github/actions/prepare
- run: pnpm run lint:spelling
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 59f7147c..c3302518 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -4,6 +4,7 @@ on:
push:
branches:
- main
+ - next
permissions:
contents: write
@@ -15,30 +16,33 @@ concurrency:
cancel-in-progress: false
jobs:
- lint_js:
- uses: ./.github/workflows/lint-js.yml
+ lint_eslint:
+ uses: ./.github/workflows/lint-eslint.yml
+ lint_knip_dev:
+ uses: ./.github/workflows/lint-knip-dev.yml
lint_knip_prod:
uses: ./.github/workflows/lint-knip-prod.yml
lint_markdown:
uses: ./.github/workflows/lint-markdown.yml
+ lint_packages:
+ uses: ./.github/workflows/lint-packages.yml
lint_spelling:
uses: ./.github/workflows/lint-spelling.yml
- lint_prettier:
- uses: ./.github/workflows/lint-prettier.yml
type_check:
- uses: ./.github/workflows/type-check.yml
+ uses: ./.github/workflows/typecheck.yml
release:
needs:
- - lint_js
+ - lint_eslint
+ - lint_knip_dev
- lint_knip_prod
- lint_markdown
+ - lint_packages
- lint_spelling
- - lint_prettier
- type_check
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@v3
+ - uses: actions/checkout@v4
with:
fetch-depth: 0
persist-credentials: false
diff --git a/.github/workflows/semantic-pr.yml b/.github/workflows/semantic-pr.yml
index ba4e89a8..a4229ee8 100644
--- a/.github/workflows/semantic-pr.yml
+++ b/.github/workflows/semantic-pr.yml
@@ -1,4 +1,4 @@
-name: "Semantic PR"
+name: Semantic PR
on:
pull_request_target:
@@ -12,6 +12,6 @@ jobs:
name: Validate PR title
runs-on: ubuntu-latest
steps:
- - uses: amannn/action-semantic-pull-request@v5.2.0
+ - uses: amannn/action-semantic-pull-request@v5.4.0
env:
GITHUB_TOKEN: ${{ github.token }}
diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml
index de1b6569..cdb1fd08 100644
--- a/.github/workflows/stale.yml
+++ b/.github/workflows/stale.yml
@@ -1,4 +1,4 @@
-name: "Close stale issues and PRs"
+name: Close stale issues and PRs
on:
schedule:
@@ -9,7 +9,7 @@ jobs:
stale:
runs-on: ubuntu-latest
steps:
- - uses: actions/stale@v8
+ - uses: actions/stale@v9
with:
days-before-issue-stale: 60
days-before-issue-close: 7
@@ -22,6 +22,6 @@ jobs:
stale-issue-label: "Status: Stale"
stale-pr-label: "Status: Stale"
- stale-issue-message: "This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 7 days."
- close-issue-message: "This issue was closed because it has been stalled for 7 days with no activity."
- stale-pr-message: "This PR is stale because it has been open 60 days with no activity."
+ stale-issue-message: This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 7 days.
+ close-issue-message: This issue was closed because it has been stalled for 7 days with no activity.
+ stale-pr-message: This PR is stale because it has been open 60 days with no activity.
diff --git a/.github/workflows/sync-labels.yml b/.github/workflows/sync-labels.yml
index 2d312b98..4ac0ddab 100644
--- a/.github/workflows/sync-labels.yml
+++ b/.github/workflows/sync-labels.yml
@@ -8,17 +8,12 @@ on:
- .github/labels.yml
workflow_dispatch:
-permissions:
- pull-requests: write
-
jobs:
build:
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@v3
+ - uses: actions/checkout@v4
- uses: micnncim/action-label-syncer@v1
- with:
- manifest: .github/labels.yml
env:
GITHUB_TOKEN: ${{ github.token }}
diff --git a/.github/workflows/type-check.yml b/.github/workflows/typecheck.yml
similarity index 66%
rename from .github/workflows/type-check.yml
rename to .github/workflows/typecheck.yml
index d6cba21c..30d59ee3 100644
--- a/.github/workflows/type-check.yml
+++ b/.github/workflows/typecheck.yml
@@ -6,9 +6,9 @@ on:
workflow_call:
jobs:
- type-check:
+ typecheck:
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@v3
+ - uses: actions/checkout@v4
- uses: ./.github/actions/prepare
- - run: pnpm run type-check
+ - run: pnpm run typecheck
diff --git a/.gitignore b/.gitignore
index 01f09d67..42d4ef6d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,6 +1,7 @@
node_modules/
+/coverage/
/dist/
-/.eslintrc.preview.json
+/src/typegen.ts
*.log
diff --git a/.husky/commit-msg b/.husky/commit-msg
index 61681a81..6a2e4c84 100755
--- a/.husky/commit-msg
+++ b/.husky/commit-msg
@@ -1,4 +1 @@
-#!/bin/sh
-. "$(dirname "$0")/_/husky.sh"
-
pnpm exec commitlint --edit $1
diff --git a/.husky/pre-commit b/.husky/pre-commit
index 5e592735..5ee7abd8 100755
--- a/.husky/pre-commit
+++ b/.husky/pre-commit
@@ -1,4 +1 @@
-#!/bin/sh
-. "$(dirname "$0")/_/husky.sh"
-
pnpm exec lint-staged
diff --git a/.lintstagedrc.yml b/.lintstagedrc.yml
index a024f998..f9179f6f 100644
--- a/.lintstagedrc.yml
+++ b/.lintstagedrc.yml
@@ -1,12 +1,16 @@
"*.{json,yml}":
- - prettier --ignore-unknown --write
+ - eslint --fix
+ - cspell lint --no-progress --show-suggestions --show-context --no-must-find-files --dot
"*.ts":
- - prettier --ignore-unknown --write
- eslint --fix
- - cspell
+ - cspell lint --no-progress --show-suggestions --show-context --no-must-find-files --dot
+ - tsc-files -p tsconfig.build.json --noEmit
"*.md":
- - prettier --ignore-unknown --write
+ - eslint --fix
- markdownlint --config=.markdownlint.json --ignore-path=.markdownlintignore
- - cspell
+ - cspell lint --no-progress --show-suggestions --show-context --no-must-find-files --dot
+
+pnpm-lock.yaml:
+ - "pnpm dedupe && :"
diff --git a/.markdownlint.json b/.markdownlint.json
index bfaa9566..8a5e4656 100644
--- a/.markdownlint.json
+++ b/.markdownlint.json
@@ -1,102 +1,297 @@
{
"default": false,
+ "extends": "markdownlint/style/prettier",
- // MD001/heading-increment/header-increment - Heading levels should only increment by one level at a time
+ // MD001/heading-increment : Heading levels should only increment by one level at a time : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md001.md
"MD001": true,
- // MD003/heading-style/header-style - Heading style
- "MD003": { "style": "atx" },
- // MD004/ul-style - Unordered list style
- "MD004": { "style": "dash" },
- // MD005/list-indent - Inconsistent indentation for list items at the same level
+
+ // MD003/heading-style : Heading style : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md003.md
+ "MD003": {
+ // Heading style
+ "style": "atx"
+ },
+
+ // MD004/ul-style : Unordered list style : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md004.md
+ "MD004": {
+ // List style
+ "style": "dash"
+ },
+
+ // MD005/list-indent : Inconsistent indentation for list items at the same level : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md005.md
"MD005": true,
- // MD007/ul-indent - Unordered list indentation
- "MD007": true,
- // MD009/no-trailing-spaces - Trailing spaces
- "MD009": true,
- // MD010/no-hard-tabs - Hard tabs
- "MD010": true,
- // MD011/no-reversed-links - Reversed link syntax
+
+ // MD007/ul-indent : Unordered list indentation : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md007.md
+ "MD007": {
+ // Spaces for indent
+ "indent": 2,
+ // Whether to indent the first level of the list
+ "start_indented": false,
+ // Spaces for first level indent (when start_indented is set)
+ "start_indent": 2
+ },
+
+ // MD009/no-trailing-spaces : Trailing spaces : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md009.md
+ "MD009": {
+ // Spaces for line break - 0 to disable
+ "br_spaces": 0,
+ // Allow spaces for empty lines in list items
+ "list_item_empty_lines": false,
+ // Include unnecessary breaks
+ "strict": false
+ },
+
+ // MD010/no-hard-tabs : Hard tabs : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md010.md
+ "MD010": {
+ // Include code blocks
+ "code_blocks": true,
+ // Fenced code languages to ignore
+ "ignore_code_languages": [],
+ // Number of spaces for each hard tab
+ "spaces_per_tab": 2
+ },
+
+ // MD011/no-reversed-links : Reversed link syntax : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md011.md
"MD011": true,
- // MD012/no-multiple-blanks - Multiple consecutive blank lines
- "MD012": true,
- // MD013/line-length - Line length
- "MD013": { "line_length": 99999 }, // no line length
- // MD014/commands-show-output - Dollar signs used before commands without showing output
- "MD014": false,
- // MD018/no-missing-space-atx - No space after hash on atx style heading
+
+ // MD012/no-multiple-blanks : Multiple consecutive blank lines : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md012.md
+ "MD012": {
+ // Consecutive blank lines
+ "maximum": 1
+ },
+
+ // MD013/line-length : Line length : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md013.md
+ "MD013": {
+ // Number of characters
+ "line_length": 160,
+ // Number of characters for headings
+ "heading_line_length": 160,
+ // Number of characters for code blocks
+ "code_block_line_length": 120,
+ // Include code blocks
+ "code_blocks": true,
+ // Include tables
+ "tables": false,
+ // Include headings
+ "headings": true,
+ // Strict length checking
+ "strict": false,
+ // Stern length checking
+ "stern": false
+ },
+
+ // MD014/commands-show-output : Dollar signs used before commands without showing output : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md014.md
+ // "MD014": true,
+
+ // MD018/no-missing-space-atx : No space after hash on atx style heading : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md018.md
"MD018": true,
- // MD019/no-multiple-space-atx - Multiple spaces after hash on atx style heading
+
+ // MD019/no-multiple-space-atx : Multiple spaces after hash on atx style heading : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md019.md
"MD019": true,
- // MD020/no-missing-space-closed-atx - No space inside hashes on closed atx style heading
- // "MD020": false,
- // MD021/no-multiple-space-closed-atx - Multiple spaces inside hashes on closed atx style heading
- // "MD021": true,
- // MD022/blanks-around-headings/blanks-around-headers - Headings should be surrounded by blank lines
- "MD022": true,
- // MD023/heading-start-left/header-start-left - Headings must start at the beginning of the line
+
+ // MD020/no-missing-space-closed-atx : No space inside hashes on closed atx style heading : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md020.md
+ "MD020": true,
+
+ // MD021/no-multiple-space-closed-atx : Multiple spaces inside hashes on closed atx style heading : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md021.md
+ "MD021": true,
+
+ // MD022/blanks-around-headings : Headings should be surrounded by blank lines : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md022.md
+ "MD022": {
+ // Blank lines above heading
+ "lines_above": 1,
+ // Blank lines below heading
+ "lines_below": 1
+ },
+
+ // MD023/heading-start-left : Headings must start at the beginning of the line : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md023.md
"MD023": true,
- // MD024/no-duplicate-heading/no-duplicate-header - Multiple headings with the same content
- "MD024": { "siblings_only": true },
- // MD025/single-title/single-h1 - Multiple top level headings in the same document
- "MD025": false,
- // MD026/no-trailing-punctuation - Trailing punctuation in heading
- "MD026": true,
- // MD027/no-multiple-space-blockquote - Multiple spaces after blockquote symbol
+
+ // MD024/no-duplicate-heading : Multiple headings with the same content : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md024.md
+ "MD024": {
+ // Only check sibling headings
+ "siblings_only": true
+ },
+
+ // MD025/single-title/single-h1 : Multiple top-level headings in the same document : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md025.md
+ "MD025": {
+ // Heading level
+ "level": 1,
+ // RegExp for matching title in front matter
+ "front_matter_title": "^\\s*title\\s*[:=]"
+ },
+
+ // MD026/no-trailing-punctuation : Trailing punctuation in heading : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md026.md
+ "MD026": {
+ // Punctuation characters
+ "punctuation": ".,;:!。,;:!"
+ },
+
+ // MD027/no-multiple-space-blockquote : Multiple spaces after blockquote symbol : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md027.md
"MD027": true,
- // MD028/no-blanks-blockquote - Blank line inside blockquote
+
+ // MD028/no-blanks-blockquote : Blank line inside blockquote : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md028.md
"MD028": true,
- // MD029/ol-prefix - Ordered list item prefix
- "MD029": true,
- // MD030/list-marker-space - Spaces after list markers
- "MD030": true,
- // MD031/blanks-around-fences - Fenced code blocks should be surrounded by blank lines
- "MD031": true,
- // MD032/blanks-around-lists - Lists should be surrounded by blank lines
+
+ // MD029/ol-prefix : Ordered list item prefix : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md029.md
+ "MD029": {
+ // List style
+ "style": "one_or_ordered"
+ },
+
+ // MD030/list-marker-space : Spaces after list markers : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md030.md
+ "MD030": {
+ // Spaces for single-line unordered list items
+ "ul_single": 1,
+ // Spaces for single-line ordered list items
+ "ol_single": 1,
+ // Spaces for multi-line unordered list items
+ "ul_multi": 1,
+ // Spaces for multi-line ordered list items
+ "ol_multi": 1
+ },
+
+ // MD031/blanks-around-fences : Fenced code blocks should be surrounded by blank lines : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md031.md
+ "MD031": {
+ // Include list items
+ "list_items": true
+ },
+
+ // MD032/blanks-around-lists : Lists should be surrounded by blank lines : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md032.md
"MD032": true,
- // MD033/no-inline-html - Inline HTML
- "MD033": {
- "allowed_elements": [
- "br",
- "div",
- "img",
- "sub",
- "sup",
- "span",
- "details",
- "summary"
- ]
- },
- // MD034/no-bare-urls - Bare URL used
+
+ // MD033/no-inline-html : Inline HTML : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md033.md
+ // "MD033": {
+ // // Allowed elements
+ // "allowed_elements": ["details", "summary", "sub", "sup", "img"]
+ // },
+
+ // MD034/no-bare-urls : Bare URL used : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md034.md
"MD034": true,
- // MD035/hr-style - Horizontal rule style
- "MD035": { "style": "---" },
- // MD036/no-emphasis-as-heading/no-emphasis-as-header - Emphasis used instead of a heading
- "MD036": true,
- // MD037/no-space-in-emphasis - Spaces inside emphasis markers
+
+ // MD035/hr-style : Horizontal rule style : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md035.md
+ "MD035": {
+ // Horizontal rule style
+ "style": "---"
+ },
+
+ // MD036/no-emphasis-as-heading : Emphasis used instead of a heading : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md036.md
+ "MD036": {
+ // Punctuation characters
+ "punctuation": ".,;:!?。,;:!?"
+ },
+
+ // MD037/no-space-in-emphasis : Spaces inside emphasis markers : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md037.md
"MD037": true,
- // MD038/no-space-in-code - Spaces inside code span elements
+
+ // MD038/no-space-in-code : Spaces inside code span elements : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md038.md
"MD038": true,
- // MD039/no-space-in-links - Spaces inside link text
+
+ // MD039/no-space-in-links : Spaces inside link text : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md039.md
"MD039": true,
- // MD040/fenced-code-language - Fenced code blocks should have a language specified
- "MD040": true,
- // MD041/first-line-heading/first-line-h1 - First line in file should be a top level heading
- "MD041": false,
- // MD042/no-empty-links - No empty links
+
+ // MD040/fenced-code-language : Fenced code blocks should have a language specified : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md040.md
+ "MD040": {
+ // List of languages
+ "allowed_languages": [],
+ // Require language only
+ "language_only": false
+ },
+
+ // MD041/first-line-heading/first-line-h1 : First line in a file should be a top-level heading : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md041.md
+ // "MD041": {
+ // // Heading level
+ // "level": 1,
+ // // RegExp for matching title in front matter
+ // "front_matter_title": "^\\s*title\\s*[:=]"
+ // },
+
+ // MD042/no-empty-links : No empty links : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md042.md
"MD042": true,
- // MD043/required-headings/required-headers - Required heading structure
- "MD043": false,
- // MD044/proper-names - Proper names should have the correct capitalization
+
+ // MD043/required-headings : Required heading structure : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md043.md
+ // "MD043": {
+ // // List of headings
+ // "headings": [],
+ // // Match case of headings
+ // "match_case": false
+ // },
+
+ // MD044/proper-names : Proper names should have the correct capitalization : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md044.md
// "MD044": {
- // "names": ["JavaScript", "TypeScript"],
- // "code_blocks": false
+ // // List of proper names
+ // "names": [],
+ // // Include code blocks
+ // "code_blocks": true,
+ // // Include HTML elements
+ // "html_elements": true
// },
- // MD045/no-alt-text - Images should have alternate text (alt text)
+
+ // MD045/no-alt-text : Images should have alternate text (alt text) : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md045.md
"MD045": true,
- // MD046/code-block-style - Code block style
- "MD046": { "style": "fenced" },
- // MD047/single-trailing-newline - Files should end with a single newline character
+
+ // MD046/code-block-style : Code block style : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md046.md
+ "MD046": {
+ // Block style
+ "style": "fenced"
+ },
+
+ // MD047/single-trailing-newline : Files should end with a single newline character : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md047.md
"MD047": true,
- // MD048/code-fence-style - Code fence style
- "MD048": { "style": "backtick" }
+
+ // MD048/code-fence-style : Code fence style : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md048.md
+ "MD048": {
+ // Code fence style
+ "style": "backtick"
+ },
+
+ // MD049/emphasis-style : Emphasis style : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md049.md
+ "MD049": {
+ // Emphasis style
+ "style": "underscore"
+ },
+
+ // MD050/strong-style : Strong style : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md050.md
+ "MD050": {
+ // Strong style
+ "style": "asterisk"
+ },
+
+ // MD051/link-fragments : Link fragments should be valid : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md051.md
+ "MD051": true,
+
+ // MD052/reference-links-images : Reference links and images should use a label that is defined : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md052.md
+ "MD052": {
+ // Include shortcut syntax
+ "shortcut_syntax": false
+ },
+
+ // MD053/link-image-reference-definitions : Link and image reference definitions should be needed : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md053.md
+ "MD053": {
+ // Ignored definitions
+ "ignored_definitions": ["//"]
+ },
+
+ // MD054/link-image-style : Link and image style : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md054.md
+ "MD054": {
+ // Allow autolinks
+ "autolink": true,
+ // Allow inline links and images
+ "inline": true,
+ // Allow full reference links and images
+ "full": true,
+ // Allow collapsed reference links and images
+ "collapsed": true,
+ // Allow shortcut reference links and images
+ "shortcut": true,
+ // Allow URLs as inline links
+ "url_inline": true
+ },
+
+ // MD055/table-pipe-style : Table pipe style : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md055.md
+ "MD055": {
+ // Table pipe style
+ "style": "leading_and_trailing"
+ },
+
+ // MD056/table-column-count : Table column count : https://github.com/DavidAnson/markdownlint/blob/v0.33.0/doc/md056.md
+ "MD056": true
}
diff --git a/.markdownlintignore b/.markdownlintignore
index e7becf85..06a1096d 100644
--- a/.markdownlintignore
+++ b/.markdownlintignore
@@ -1,2 +1,3 @@
-node_modules
+dist/
+node_modules/
CHANGELOG.md
diff --git a/.npmrc b/.npmrc
new file mode 100644
index 00000000..7c245e15
--- /dev/null
+++ b/.npmrc
@@ -0,0 +1,3 @@
+save-prefix=""
+shamefully-hoist=true
+strict-peer-dependencies=false
diff --git a/.nvmrc b/.nvmrc
index 6d80269a..2dbbe00e 100644
--- a/.nvmrc
+++ b/.nvmrc
@@ -1 +1 @@
-18.16.0
+20.11.1
diff --git a/.prettierignore b/.prettierignore
index d5e15442..51733ec2 100644
--- a/.prettierignore
+++ b/.prettierignore
@@ -1,4 +1,4 @@
-/CHANGELOG.md
+/coverage*/
/dist/
-/.eslintrc.preview.json
+/CHANGELOG.md
/pnpm-lock.yaml
diff --git a/.prettierrc.yml b/.prettierrc.yml
index 01d3a913..6ff2e4e3 100644
--- a/.prettierrc.yml
+++ b/.prettierrc.yml
@@ -1,7 +1,14 @@
-"$schema": http://json.schemastore.org/prettierrc
+$schema: http://json.schemastore.org/prettierrc
plugins:
- prettier-plugin-packagejson
-embeddedLanguageFormatting: "off"
-quoteProps: "consistent"
+trailingComma: all
+
+overrides:
+ - files: "*.md"
+ options:
+ embeddedLanguageFormatting: off
+ - files: .nvmrc
+ options:
+ parser: yaml
diff --git a/.vscode/extensions.json b/.vscode/extensions.json
index 17fab0c0..876c534b 100644
--- a/.vscode/extensions.json
+++ b/.vscode/extensions.json
@@ -1,7 +1,9 @@
{
"recommendations": [
+ "DavidAnson.vscode-markdownlint",
"dbaeumer.vscode-eslint",
"editorconfig.editorconfig",
- "esbenp.prettier-vscode"
+ "esbenp.prettier-vscode",
+ "streetsidesoftware.code-spell-checker"
]
}
diff --git a/.vscode/settings.json b/.vscode/settings.json
index e222e074..b362ce4b 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -1,26 +1,40 @@
{
+ "editor.codeActionsOnSave": {
+ "source.fixAll.eslint": "explicit"
+ },
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
+ "editor.formatOnSave": false,
+ "editor.rulers": [80],
+ "eslint.probe": [
+ "html",
+ "javascript",
+ "javascriptreact",
+ "json",
+ "jsonc",
+ "markdown",
+ "toml",
+ "typescript",
+ "typescriptreact",
+ "vue",
+ "yaml"
+ ],
+ "files.associations": {
+ ".markdownlint.json": "jsonc",
+ ".markdownlintignore": "ignore"
+ },
+ "files.exclude": {
+ "coverage/": true
+ },
"files.trimTrailingWhitespace": true,
"search.exclude": {
"**/.git/": true,
+ ".nyc_output/": true,
".vscode/": true,
"dist/": true,
"pnpm-lock.yaml": true
},
"typescript.tsdk": "./node_modules/typescript/lib",
- "files.associations": {
- ".markdownlint.json": "jsonc",
- ".markdownlintignore": "ignore"
- },
- "[json]": {
- "editor.defaultFormatter": "esbenp.prettier-vscode",
- "editor.formatOnSave": true
- },
- "[jsonc]": {
- "editor.defaultFormatter": "esbenp.prettier-vscode",
- "editor.formatOnSave": true
- },
- "[typescript]": {
- "editor.defaultFormatter": "esbenp.prettier-vscode",
- "editor.formatOnSave": true
+ "[markdown]": {
+ "editor.rulers": [120]
}
}
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 7f27e67f..be329ae3 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,805 +1,1042 @@
# Changelog
All notable changes to this project will be documented in this file. Dates are displayed in UTC.
-## [2.0.11](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v2.0.10...v2.0.11) (2024-03-25)
+# [3.0.0-next.49](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.48...v3.0.0-next.49) (2024-08-05)
-### Bug Fixes
+### Features
-* update some rules ([5c9a858](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/5c9a858f8ec6fc839a685ddd96632ba7b61ec7e7))
+* more tweaks ([3259394](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/32593945021696a0085a877402f17610179c0afc))
-## [2.0.10](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v2.0.9...v2.0.10) (2024-01-27)
+# [3.0.0-next.48](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.47...v3.0.0-next.48) (2024-08-03)
+
+
+### Features
+
+* more tweaks ([c31a4be](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/c31a4be94d443562a6913ca6226e03fe4549a661))
+* more tweaks ([b6e0b14](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/b6e0b14bb1a43dd87e7ea0c685bd59b2cb33610b))
+
+# [3.0.0-next.47](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.46...v3.0.0-next.47) (2024-08-01)
+
+
+### Features
+
+* more tweaks ([b3df5f8](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/b3df5f8cfc61b621721a07c694c785ba85eec755))
+
+# [3.0.0-next.46](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.45...v3.0.0-next.46) (2024-07-29)
+
+
+### Features
+
+* more tweaks ([77897e2](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/77897e281eb2165d5469d87bff782a82937c5e57))
+
+# [3.0.0-next.45](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.44...v3.0.0-next.45) (2024-07-29)
+
+
+### Features
+
+* more tweaks ([2b2e26d](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/2b2e26dc1f10652e310030cce9ba85182416e4f5))
+
+# [3.0.0-next.44](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.43...v3.0.0-next.44) (2024-07-29)
+
+
+### Features
+
+* more tweaks ([5ba4886](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/5ba4886bb488f8f097ac764773a4e819ce6c1e33))
+
+# [3.0.0-next.43](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.42...v3.0.0-next.43) (2024-07-11)
+
+
+### Features
+
+* more tweaks ([0acd33c](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/0acd33c2f69ea1b53f440f5263ba8c604ac124e1))
+
+# [3.0.0-next.42](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.41...v3.0.0-next.42) (2024-07-06)
+
+
+### Features
+
+* more tweaks ([1425346](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/14253464d72e466c7a023e2b60bd2f346b325869))
+
+# [3.0.0-next.41](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.40...v3.0.0-next.41) (2024-07-01)
+
+
+### Features
+
+* more tweaks ([3c950b5](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/3c950b590e75472b8b4fbcee5f81c9e6dd12375f))
+
+# [3.0.0-next.40](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.39...v3.0.0-next.40) (2024-06-30)
+
+
+### Features
+
+* more tweaks ([4496639](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/449663982b641dc3f924fbf94f102f672f2432e9))
+
+# [3.0.0-next.39](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.38...v3.0.0-next.39) (2024-06-24)
+
+
+### Features
+
+* more tweaks ([ad39829](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/ad3982979294d5051921d64dfe144eeca8aeac43))
+* more tweaks ([6830465](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/6830465b5c876b7f6c514937151f83a1fbfb869a))
+* more tweaks ([0f06ca4](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/0f06ca45ee25f2dbac6ab9342e85628b2bb09255))
+
+# [3.0.0-next.38](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.37...v3.0.0-next.38) (2024-06-19)
+
+
+### Features
+
+* more tweaks ([6e03da4](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/6e03da4b5f72ca4cb12eea32595b7efd1f32ca0e))
+
+# [3.0.0-next.37](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.36...v3.0.0-next.37) (2024-06-10)
+
+
+### Features
+
+* more tweaks ([81678c8](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/81678c8179561ee902698fd33c79eef244367941))
+
+# [3.0.0-next.36](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.35...v3.0.0-next.36) (2024-06-10)
+
+
+### Features
+
+* more tweaks ([ea4e0b1](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/ea4e0b13da7694cd52c6e0225579ce4efd767c08))
+
+# [3.0.0-next.35](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.34...v3.0.0-next.35) (2024-06-10)
+
+
+### Features
+
+* more tweaks ([e0db461](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/e0db4615c861842dfd62750d4d0ebc730024132a))
+
+# [3.0.0-next.34](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.33...v3.0.0-next.34) (2024-06-09)
+
+
+### Features
+
+* more tweaks ([40b3b6d](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/40b3b6df83cabce0e46bd6a3020b184801b07e66))
+
+# [3.0.0-next.33](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.32...v3.0.0-next.33) (2024-06-09)
+
+
+### Features
+
+* more tweaks ([7625895](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/762589547b13ab92346a0097373726502d429346))
+
+# [3.0.0-next.32](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.31...v3.0.0-next.32) (2024-05-25)
+
+
+### Features
+
+* more tweaks ([4c8b3fb](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/4c8b3fbb9da1695a6e2a83b2a8dc839f10e166b5))
+
+# [3.0.0-next.31](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.30...v3.0.0-next.31) (2024-05-25)
+
+
+### Features
+
+* more tweaks ([97e4b3e](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/97e4b3e153e55cd3aa46bc35515cdb4cf85edf9e))
+
+# [3.0.0-next.30](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.29...v3.0.0-next.30) (2024-05-25)
+
+
+### Features
+
+* more tweaks ([1e20498](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/1e20498f7e66c70cdc2957a07dde813c6a144e92))
+
+# [3.0.0-next.29](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.28...v3.0.0-next.29) (2024-05-22)
+
+
+### Features
+
+* more tweaks ([6533c65](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/6533c6544a2fbcbaaf40203aafa45cd1a22f65a6))
+
+# [3.0.0-next.28](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.27...v3.0.0-next.28) (2024-05-22)
+
+
+### Features
+
+* more tweaks ([40ec3a1](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/40ec3a15ccb3dd333fec060915ced54b9f2ab56e))
+
+# [3.0.0-next.27](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.26...v3.0.0-next.27) (2024-05-19)
+
+
+### Features
+
+* more tweaks ([8c018ca](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/8c018ca0abb2ecb7e0e70a60e5004a0f4f29a3fe))
+
+# [3.0.0-next.26](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.25...v3.0.0-next.26) (2024-05-19)
+
+
+### Features
+
+* more tweaks ([ddec399](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/ddec399e59a2f91b84833c6ad33521092b93729b))
+
+# [3.0.0-next.25](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.24...v3.0.0-next.25) (2024-05-19)
+
+
+### Features
+
+* more tweaks ([ba947b2](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/ba947b2cdca219252c6d9cf11f3a84f995fff02f))
+
+# [3.0.0-next.24](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.23...v3.0.0-next.24) (2024-05-10)
+
+
+### Features
+
+* more tweaks ([a747edc](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/a747edc348cec763639343276e11b492b3512959))
+
+# [3.0.0-next.23](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.22...v3.0.0-next.23) (2024-05-10)
+
+
+### Features
+
+* more tweaks ([aef8978](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/aef89782b7cfe395a816c5a6b6b9caab46accffa))
+
+# [3.0.0-next.22](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.21...v3.0.0-next.22) (2024-05-06)
+
+
+### Features
+
+* more tweaks ([c07191c](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/c07191cc9e626bbf9ede75b5f8f8839e99bf73c9))
+
+# [3.0.0-next.21](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.20...v3.0.0-next.21) (2024-05-06)
+
+
+### Features
+
+* more tweaks ([c4a2286](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/c4a22865d175ee74ae52477f8d91255c85910322))
+
+# [3.0.0-next.20](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.19...v3.0.0-next.20) (2024-05-06)
+
+
+### Features
+
+* more tweaks ([0413e9d](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/0413e9dddbe1def99e4aa7ccf9f7b876937c89e9))
+
+# Changelog
+
+All notable changes to this project will be documented in this file. Dates are displayed in UTC.
+
+# [3.0.0-next.19](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.18...v3.0.0-next.19) (2024-05-06)
+
+
+### Features
+
+* more tweaks ([65287e6](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/65287e6449a3fabfb0765530ea053747a36b3fc4))
+
+# [3.0.0-next.18](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.17...v3.0.0-next.18) (2024-05-06)
+
+### Features
+
+- more tweaks ([4edbf3b](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/4edbf3b5b80c3bf1dd766ea74652965ec980e331))
+
+# [3.0.0-next.17](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.16...v3.0.0-next.17) (2024-05-03)
+
+### Features
+
+- more tweaks ([95c76dd](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/95c76dd741ff7db1bddf4519205b4e2f6ef1055f))
+
+# [3.0.0-next.16](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.15...v3.0.0-next.16) (2024-04-22)
+
+### Features
+
+- more tweaks ([2567a85](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/2567a856c07e1d7c24b97b82eb45579a7597bacb))
+
+# [3.0.0-next.15](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.14...v3.0.0-next.15) (2024-04-22)
+
+### Features
+
+- more tweaks ([4c1ef54](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/4c1ef54a73ff73790fdff9b9d783b64482d77656))
+
+# [3.0.0-next.14](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.13...v3.0.0-next.14) (2024-04-22)
+
+### Features
+
+- more tweaks ([a0a27fe](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/a0a27fee014d5edd3f1fd60aa6938139ab7f6766))
+
+# [3.0.0-next.13](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.12...v3.0.0-next.13) (2024-04-22)
+
+### Features
+
+- more tweaks ([c3906bb](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/c3906bbd35b73ba131ab6c3aac661bee7c2407bd))
+
+# [3.0.0-next.12](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.11...v3.0.0-next.12) (2024-04-22)
+
+### Features
+
+- more tweaks ([74a8879](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/74a88793abacf7e1ca6e2502a062cf127ac53a3e))
+
+# [3.0.0-next.11](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.10...v3.0.0-next.11) (2024-04-22)
+
+### Features
+
+- more tweaks ([d765f8a](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/d765f8a4d695978bdd52c7751bd728fce8d53b69))
+
+# [3.0.0-next.10](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.9...v3.0.0-next.10) (2024-04-21)
+
+### Features
+
+- more tweaks ([2d5402c](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/2d5402c6620f4a6a241af3180f28bf262fac8d21))
+
+# [3.0.0-next.9](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.8...v3.0.0-next.9) (2024-04-21)
+
+### Features
+
+- more tweaks ([00a11c7](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/00a11c73d37bcbfefaa4a6a1e11820233e13399c))
+# [3.0.0-next.8](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.7...v3.0.0-next.8) (2024-04-21)
+
+### Features
+
+- more tweaks ([6dc7c91](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/6dc7c91a36807619fec3d1e5e5b1c8a910be5fb9))
+
+# [3.0.0-next.7](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.6...v3.0.0-next.7) (2024-04-21)
+
+### Features
+
+- more tweaks ([b94dd92](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/b94dd922ec4670fa4a7a7a4dac9952e969fac17f))
+
+# [3.0.0-next.6](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.5...v3.0.0-next.6) (2024-04-18)
### Bug Fixes
-* allow using labels for loops and switches ([f2cd334](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/f2cd33408ddb55d5734ec4da2a38c28da91c5452))
+- more tweaks ([14d0426](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/14d04262fa0facdfedd9e6b2a21cceb672a1c88a))
-## [2.0.9](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v2.0.8...v2.0.9) (2024-01-05)
+### Features
+
+- more tweaks ([db9e05c](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/db9e05c2620891158811a6595112287d68966006))
+# [3.0.0-next.5](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.4...v3.0.0-next.5) (2024-04-17)
### Bug Fixes
-* use string regex ([22e2aa7](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/22e2aa7c819ed23fc416ff1d2447e7936c3671d3))
+- deps update ([b51004a](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/b51004a980b8ba9f2b1f511a23bddfcbddba5e6c))
-## [2.0.8](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v2.0.7...v2.0.8) (2024-01-05)
+# [3.0.0-next.4](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.3...v3.0.0-next.4) (2024-04-16)
+
+### Bug Fixes
+- more tweaks ([e1071eb](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/e1071eba5faa1fd99169eb72aec585c7e64d2f4e))
+
+# [3.0.0-next.3](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.2...v3.0.0-next.3) (2024-04-16)
### Bug Fixes
-* ignore md files for filename-case ([54d651c](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/54d651c7ccd5c99dfa03f69693d59d6d8e23424b))
+- more tweaks ([8eea9af](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/8eea9afc137d89f057a5e28086d2d2c7f5ae6808))
-## [2.0.7](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v2.0.6...v2.0.7) (2024-01-04)
+# [3.0.0-next.2](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.0.0-next.1...v3.0.0-next.2) (2024-04-15)
+### Bug Fixes
+
+- npm releases ([91b8348](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/91b8348e727d92cf85445fbe1d9ebc4d2b1c3a3f))
+
+# [3.0.0-next.1](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v2.0.11...v3.0.0-next.1) (2024-04-15)
### Bug Fixes
-* update import/no-extraneous-dependencies ([2e2ef01](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/2e2ef01550957a6fb914d434ed1dc5d6fe7d8fd9))
+- build cjs and adjust rules some more ([72b9a18](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/72b9a186305e5c00b30c011558ccb51669736e13))
+- cleanup ([0fae3db](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/0fae3dbcc62785001b59800071e29f8b00b5ac3b))
-## [2.0.6](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v2.0.5...v2.0.6) (2023-10-05)
+### Features
+
+- migrate to eslint 9 and add more plugins ([6f02ef8](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/6f02ef83f11380bf84bc51e8d2f07e37833ed8c0))
+- more adjustments ([ba379dd](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/ba379dd16a5201de4f5e76810371eebaa21b692b))
+- more rules and fixups ([011f596](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/011f59674b7f5fa6bfe4292cb969b92b5d99f233))
+### BREAKING CHANGES
+
+- ESLint 9 is now required
+
+## [2.0.11](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v2.0.10...v2.0.11) (2024-03-25)
### Bug Fixes
-* turn off prefer-destructuring when using typescript ([2f54a2f](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/2f54a2f3c8be594027c17a5ded2546014b2dba97))
+- update some rules ([5c9a858](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/5c9a858f8ec6fc839a685ddd96632ba7b61ec7e7))
-## [2.0.5](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v2.0.4...v2.0.5) (2023-09-27)
+## [2.0.10](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v2.0.9...v2.0.10) (2024-01-27)
+### Bug Fixes
+
+- allow using labels for loops and switches ([f2cd334](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/f2cd33408ddb55d5734ec4da2a38c28da91c5452))
+
+## [2.0.9](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v2.0.8...v2.0.9) (2024-01-05)
### Bug Fixes
-* update unified-signatures rule config ([25cc9c1](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/25cc9c177f1ad64e255ce5fedfd33a28efc32fdd))
+- use string regex ([22e2aa7](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/22e2aa7c819ed23fc416ff1d2447e7936c3671d3))
-## [2.0.4](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v2.0.3...v2.0.4) (2023-08-27)
+## [2.0.8](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v2.0.7...v2.0.8) (2024-01-05)
+
+### Bug Fixes
+- ignore md files for filename-case ([54d651c](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/54d651c7ccd5c99dfa03f69693d59d6d8e23424b))
+
+## [2.0.7](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v2.0.6...v2.0.7) (2024-01-04)
### Bug Fixes
-* turn off prefer-top-level-await for commonjs ([ab9a037](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/ab9a037e54182a9d35d6afc3e0226692d42a83c5))
+- update import/no-extraneous-dependencies ([2e2ef01](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/2e2ef01550957a6fb914d434ed1dc5d6fe7d8fd9))
-## [2.0.3](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v2.0.2...v2.0.3) (2023-08-07)
+## [2.0.6](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v2.0.5...v2.0.6) (2023-10-05)
+
+### Bug Fixes
+
+- turn off prefer-destructuring when using typescript ([2f54a2f](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/2f54a2f3c8be594027c17a5ded2546014b2dba97))
+
+## [2.0.5](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v2.0.4...v2.0.5) (2023-09-27)
+
+### Bug Fixes
+- update unified-signatures rule config ([25cc9c1](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/25cc9c177f1ad64e255ce5fedfd33a28efc32fdd))
+
+## [2.0.4](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v2.0.3...v2.0.4) (2023-08-27)
### Bug Fixes
-* update sonarjs/no-duplicate-string config ([d1d3f70](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/d1d3f7056e10ea022a805341b1b9202dec3196ed))
+- turn off prefer-top-level-await for commonjs ([ab9a037](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/ab9a037e54182a9d35d6afc3e0226692d42a83c5))
+## [2.0.3](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v2.0.2...v2.0.3) (2023-08-07)
+
+### Bug Fixes
+
+- update sonarjs/no-duplicate-string config ([d1d3f70](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/d1d3f7056e10ea022a805341b1b9202dec3196ed))
### Reverts
-* Revert "ci: release without linting" ([a5a783c](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/a5a783c153bb6fdf0beb5f89342aacc5d22524ef))
+- Revert "ci: release without linting" ([a5a783c](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/a5a783c153bb6fdf0beb5f89342aacc5d22524ef))
## [2.0.2](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v2.0.1...v2.0.2) (2023-07-21)
-
### Bug Fixes
-* update for latest eslint-plugin-functional v6 beta ([83536e4](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/83536e403d57386f2bcdcfb01f0d68ad0733edd4))
+- update for latest eslint-plugin-functional v6 beta ([83536e4](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/83536e403d57386f2bcdcfb01f0d68ad0733edd4))
## [2.0.1](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v2.0.0...v2.0.1) (2023-07-17)
-
### Bug Fixes
-* immutability overrides setting ([8edd44d](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/8edd44dd28e0b809ca2c668287fd6e5780e6d3fe))
+- immutability overrides setting ([8edd44d](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/8edd44dd28e0b809ca2c668287fd6e5780e6d3fe))
# [2.0.0](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.7.8...v2.0.0) (2023-07-15)
-
### Features
-* update for typescript-eslint v6 ([5f0509a](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/5f0509a15b29370e5d5621fd37cac84a343711c1))
-
+- update for typescript-eslint v6 ([5f0509a](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/5f0509a15b29370e5d5621fd37cac84a343711c1))
### BREAKING CHANGES
-* typescript-eslint v6 now required
+- typescript-eslint v6 now required
## [1.7.8](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.7.7...v1.7.8) (2023-06-22)
-
### Bug Fixes
-* **naming-convention:** getters shouldn't be marked mutable ([2b3b11a](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/2b3b11a6b8c646f668043a4a08c6719b83f6e3ee))
+- **naming-convention:** getters shouldn't be marked mutable ([2b3b11a](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/2b3b11a6b8c646f668043a4a08c6719b83f6e3ee))
## [1.7.7](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.7.6...v1.7.7) (2023-06-17)
-
### Bug Fixes
-* enforce strict version of assert package ([d642905](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/d642905d8b753563076967a2789a7a3c166a1549))
+- enforce strict version of assert package ([d642905](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/d642905d8b753563076967a2789a7a3c166a1549))
## [1.7.6](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.7.5...v1.7.6) (2023-06-17)
-
### Bug Fixes
-* allowConstantLoopConditions ([4b8199d](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/4b8199d7fb450649163a3a98a7b061c85e2ff2e5))
+- allowConstantLoopConditions ([4b8199d](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/4b8199d7fb450649163a3a98a7b061c85e2ff2e5))
## [1.7.5](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.7.4...v1.7.5) (2023-06-16)
-
### Bug Fixes
-* update jsdoc/tag-lines for new version ([02fbbf2](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/02fbbf2a69b69b08bcf9be1a7c6c27fd12c3db92))
+- update jsdoc/tag-lines for new version ([02fbbf2](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/02fbbf2a69b69b08bcf9be1a7c6c27fd12c3db92))
## [1.7.4](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.7.3...v1.7.4) (2023-04-04)
-
### Bug Fixes
-* small fixers ([f001893](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/f0018937c32643d3f077b8e96769c5e98f90e69e))
+- small fixers ([f001893](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/f0018937c32643d3f077b8e96769c5e98f90e69e))
## [1.7.3](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.7.2...v1.7.3) (2023-04-04)
-
### Bug Fixes
-* updating naming-convention ([84be48e](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/84be48ece1671c81b285a7467c7cf2368dfc57e6))
+- updating naming-convention ([84be48e](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/84be48ece1671c81b285a7467c7cf2368dfc57e6))
## [1.7.2](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.7.1...v1.7.2) (2023-04-04)
-
### Bug Fixes
-* update import rules ([f613385](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/f613385828e61440ad7fdaf3146f4267ea41a4a2))
+- update import rules ([f613385](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/f613385828e61440ad7fdaf3146f4267ea41a4a2))
## [1.7.1](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.7.0...v1.7.1) (2023-04-01)
-
### Bug Fixes
-* update markdown rules ([5c4077a](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/5c4077ae068ed84f10998acfe5dc86cd439e2fc5))
+- update markdown rules ([5c4077a](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/5c4077ae068ed84f10998acfe5dc86cd439e2fc5))
# [1.7.0](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.6.9...v1.7.0) (2023-04-01)
-
### Features
-* switch to eslint-plugin-n ([a32be24](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/a32be24fb761b3c176610813089562d3fa8bedb4))
+- switch to eslint-plugin-n ([a32be24](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/a32be24fb761b3c176610813089562d3fa8bedb4))
## [1.6.9](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.6.8...v1.6.9) (2023-04-01)
-
### Bug Fixes
-* allow pascal case file names ([2f2cebd](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/2f2cebd3ef20a098c9c230e35193a5d95f8f0c8c))
+- allow pascal case file names ([2f2cebd](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/2f2cebd3ef20a098c9c230e35193a5d95f8f0c8c))
## [1.6.8](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.6.7...v1.6.8) (2023-04-01)
-
### Bug Fixes
-* allow assertions statements ([081e628](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/081e6280600741bbdc211f79726e1a6ae4e17681))
-* treat paths starting with # as internal ([376dcaf](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/376dcaf12fe54543aaca51950e3e7e716b91700b))
+- allow assertions statements ([081e628](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/081e6280600741bbdc211f79726e1a6ae4e17681))
+- treat paths starting with # as internal ([376dcaf](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/376dcaf12fe54543aaca51950e3e7e716b91700b))
## [1.6.7](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.6.6...v1.6.7) (2023-03-23)
-
### Bug Fixes
-* use @typescript-eslint/no-var-requires in cts files ([76481d9](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/76481d9217fec8e4e9b01259d982dabc3ad40047))
+- use @typescript-eslint/no-var-requires in cts files ([76481d9](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/76481d9217fec8e4e9b01259d982dabc3ad40047))
## [1.6.6](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.6.5...v1.6.6) (2023-03-21)
-
### Bug Fixes
-* don't require usless jsdoc in js files ([041b24d](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/041b24d4b1491652d0d4cb0b7b4d5b6127e1efad))
+- don't require usless jsdoc in js files ([041b24d](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/041b24d4b1491652d0d4cb0b7b4d5b6127e1efad))
## [1.6.5](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.6.4...v1.6.5) (2023-03-21)
-
### Bug Fixes
-* improve scripts config ([7e9eb0c](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/7e9eb0c604fb5808c19ab459b6873d3e9deeba09))
+- improve scripts config ([7e9eb0c](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/7e9eb0c604fb5808c19ab459b6873d3e9deeba09))
## [1.6.4](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.6.3...v1.6.4) (2023-03-21)
-
### Bug Fixes
-* allow classes in test files ([091b609](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/091b609332103ce85e25414e2d3cfe52fb0d7e7c))
-* allow named imports from typescript ([376b90e](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/376b90e6ffaf247bcc2932fa101aaef233ee9fab))
+- allow classes in test files ([091b609](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/091b609332103ce85e25414e2d3cfe52fb0d7e7c))
+- allow named imports from typescript ([376b90e](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/376b90e6ffaf247bcc2932fa101aaef233ee9fab))
## [1.6.3](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.6.2...v1.6.3) (2023-03-19)
-
### Bug Fixes
-* top-level overrides applying to non-top-level files ([2069bdc](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/2069bdc627f85d1cb182de47aa6257049de3be21))
-* update test config ([9203df4](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/9203df49d6fbd0a8459cfe8e0e4a5c2a455b6a66))
+- top-level overrides applying to non-top-level files ([2069bdc](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/2069bdc627f85d1cb182de47aa6257049de3be21))
+- update test config ([9203df4](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/9203df49d6fbd0a8459cfe8e0e4a5c2a455b6a66))
## [1.6.2](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.6.1...v1.6.2) (2023-03-18)
-
### Bug Fixes
-* turn off import/no-cycle ([85fb424](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/85fb424062ffc05a7345ba346a2eca0839767b35))
+- turn off import/no-cycle ([85fb424](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/85fb424062ffc05a7345ba346a2eca0839767b35))
## [1.6.1](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.6.0...v1.6.1) (2023-03-18)
-
### Bug Fixes
-* use unicorn/import-style instead of import/no-named-as-default-member ([0062d9a](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/0062d9a8d0836766c4d73f8812eb1c101ed21341))
+- use unicorn/import-style instead of import/no-named-as-default-member ([0062d9a](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/0062d9a8d0836766c4d73f8812eb1c101ed21341))
# [1.6.0](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.5.7...v1.6.0) (2023-03-18)
-
### Features
-* improve config merging and typescript import settings ([#1061](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/issues/1061)) ([e9c7da3](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/e9c7da391609055b99836cd98faf2c8255e63db2))
+- improve config merging and typescript import settings ([#1061](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/issues/1061)) ([e9c7da3](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/e9c7da391609055b99836cd98faf2c8255e63db2))
## [1.5.7](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.5.6...v1.5.7) (2023-03-14)
-
### Bug Fixes
-* update jsdoc severities ([b14dc44](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/b14dc44562df3aa8ad8b8833b7cad7dac03668ab))
+- update jsdoc severities ([b14dc44](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/b14dc44562df3aa8ad8b8833b7cad7dac03668ab))
## [1.5.6](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.5.5...v1.5.6) (2023-03-12)
-
### Bug Fixes
-* jsdoc rules for js and ts ([04f2d9d](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/04f2d9d3a287872aaafb35c80213ffefd1734e43))
-* update override patterns and minor changes to base config ([cf980df](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/cf980df0941177ab1b6e070df0651dc0544f24da))
+- jsdoc rules for js and ts ([04f2d9d](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/04f2d9d3a287872aaafb35c80213ffefd1734e43))
+- update override patterns and minor changes to base config ([cf980df](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/cf980df0941177ab1b6e070df0651dc0544f24da))
## [1.5.5](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.5.4...v1.5.5) (2023-03-11)
-
### Bug Fixes
-* severity of jsdoc require-throws ([12cf4cd](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/12cf4cdf90a9544c35441da7bed6faa7788bd551))
-* small update to jsdoc rules ([0cab31e](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/0cab31e6348b9ea1fc4bc3831e51d45621a65b2d))
+- severity of jsdoc require-throws ([12cf4cd](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/12cf4cdf90a9544c35441da7bed6faa7788bd551))
+- small update to jsdoc rules ([0cab31e](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/0cab31e6348b9ea1fc4bc3831e51d45621a65b2d))
## [1.5.4](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.5.3...v1.5.4) (2023-03-11)
-
### Bug Fixes
-* update jsdoc rules ([2fce7d0](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/2fce7d05d3aceee5a7eeba5fe198aede1e836df7))
+- update jsdoc rules ([2fce7d0](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/2fce7d05d3aceee5a7eeba5fe198aede1e836df7))
## [1.5.3](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.5.2...v1.5.3) (2023-03-10)
-
### Bug Fixes
-* allowIndexSignaturePropertyAccess for dot-notation ([a70dcfb](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/a70dcfb142f8ee5ac0d04921ef6e4cbb496117f3))
+- allowIndexSignaturePropertyAccess for dot-notation ([a70dcfb](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/a70dcfb142f8ee5ac0d04921ef6e4cbb496117f3))
## [1.5.2](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.5.1...v1.5.2) (2023-02-06)
-
### Bug Fixes
-* allow parameter names only made of "_"s ([6d3f3d3](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/6d3f3d3acb129d8390e1980f5097508ecc65dd20))
+- allow parameter names only made of "\_"s ([6d3f3d3](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/6d3f3d3acb129d8390e1980f5097508ecc65dd20))
## [1.5.1](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.5.0...v1.5.1) (2023-02-06)
-
### Bug Fixes
-* allow prefixes on parameter names ([d133805](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/d13380548fb932a8efc560c1428926d7e2fc0487))
+- allow prefixes on parameter names ([d133805](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/d13380548fb932a8efc560c1428926d7e2fc0487))
# [1.5.0](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.4.6...v1.5.0) (2023-01-29)
-
### Bug Fixes
-* **functional/prefer-immutable-types:** decrease severity, enforcement and add exception ([2855e16](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/2855e167c3114c7a59e47bb2189b485ba49646bc))
-
+- **functional/prefer-immutable-types:** decrease severity, enforcement and add exception ([2855e16](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/2855e167c3114c7a59e47bb2189b485ba49646bc))
### Features
-* update deps ([1d13853](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/1d1385391599e290ab86d5c17288faf89d6152da))
+- update deps ([1d13853](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/1d1385391599e290ab86d5c17288faf89d6152da))
## [1.4.6](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.4.5...v1.4.6) (2022-12-16)
-
### Bug Fixes
-* **sonarjs/max-switch-cases:** turn rule off ([ae23f89](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/ae23f89319d9068a8502110cfa93a43b11a1b238))
+- **sonarjs/max-switch-cases:** turn rule off ([ae23f89](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/ae23f89319d9068a8502110cfa93a43b11a1b238))
## [1.4.5](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.4.4...v1.4.5) (2022-11-17)
-
### Bug Fixes
-* update for latest eslint-plugin-functional beta ([e45fa06](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/e45fa06b5110262d41b10d981572ae81efd808c1))
+- update for latest eslint-plugin-functional beta ([e45fa06](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/e45fa06b5110262d41b10d981572ae81efd808c1))
## [1.4.4](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.4.3...v1.4.4) (2022-10-04)
-
### Bug Fixes
-* update for eslint-plugin-functional 5 ([cf67943](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/cf6794302dfa7af8be576c3716e52de65a01ed0a))
+- update for eslint-plugin-functional 5 ([cf67943](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/cf6794302dfa7af8be576c3716e52de65a01ed0a))
## [1.4.3](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.4.2...v1.4.3) (2022-09-29)
-
### Bug Fixes
-* update functional rules ([d8d8420](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/d8d8420774fbb25ce1fa4d42f4d79e2b4865e126))
+- update functional rules ([d8d8420](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/d8d8420774fbb25ce1fa4d42f4d79e2b4865e126))
## [1.4.2](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.4.1...v1.4.2) (2022-09-29)
-
### Bug Fixes
-* turn off default-param-last ([e47adfc](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/e47adfc81d0b168e42cebc2063b61e4084898dd8))
+- turn off default-param-last ([e47adfc](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/e47adfc81d0b168e42cebc2063b61e4084898dd8))
## [1.4.1](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.4.0...v1.4.1) (2022-09-24)
-
### Bug Fixes
-* adjust markdown overrides ([30f45b8](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/30f45b8fe6a4764947ba4de4a18ab64a7f0aeb25))
+- adjust markdown overrides ([30f45b8](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/30f45b8fe6a4764947ba4de4a18ab64a7f0aeb25))
# [1.4.0](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.3.23...v1.4.0) (2022-09-24)
-
### Features
-* add new eslint rules and configure for use with eslint-functional 5 ([15458bf](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/15458bf5d931aa1442f48568c85e5b65347b2c97))
+- add new eslint rules and configure for use with eslint-functional 5 ([15458bf](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/15458bf5d931aa1442f48568c85e5b65347b2c97))
## [1.3.23](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.3.22...v1.3.23) (2022-09-08)
-
### Bug Fixes
-* allow "index" in paths ([42d142f](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/42d142f4bea4393b3ec52362ba782e2504c8bcf9))
+- allow "index" in paths ([42d142f](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/42d142f4bea4393b3ec52362ba782e2504c8bcf9))
## [1.3.22](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.3.21...v1.3.22) (2022-07-11)
-
### Bug Fixes
-* allow bundledDependency, optionalDependency and peerDependency imports ([7c20742](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/7c20742b6b4ccd51df7c64eb2f749a05fd57681f))
+- allow bundledDependency, optionalDependency and peerDependency imports ([7c20742](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/7c20742b6b4ccd51df7c64eb2f749a05fd57681f))
## [1.3.21](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.3.20...v1.3.21) (2022-05-29)
-
### Bug Fixes
-* **import/no-extraneous-dependencies:** support cts and mts extension ([50daeb3](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/50daeb381d64b9a40cb8a5ae6f80b690f10fca68))
+- **import/no-extraneous-dependencies:** support cts and mts extension ([50daeb3](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/50daeb381d64b9a40cb8a5ae6f80b690f10fca68))
## [1.3.20](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.3.19...v1.3.20) (2022-04-17)
-
### Bug Fixes
-* allow plusplus ([4fd2635](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/4fd2635cdaabb866ecd8d6b1abe85aeb3207b7be))
-* loosen promise rules ([517b196](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/517b19684057561d21dc846d896f6260056e1915))
+- allow plusplus ([4fd2635](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/4fd2635cdaabb866ecd8d6b1abe85aeb3207b7be))
+- loosen promise rules ([517b196](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/517b19684057561d21dc846d896f6260056e1915))
## [1.3.19](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.3.18...v1.3.19) (2022-04-13)
-
### Bug Fixes
-* tweak naming-convention" ([39f4456](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/39f4456cd39e78f09b188d3960c0baa893792b67))
+- tweak naming-convention" ([39f4456](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/39f4456cd39e78f09b188d3960c0baa893792b67))
## [1.3.18](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.3.17...v1.3.18) (2022-04-09)
-
### Bug Fixes
-* tweak naming-convention" ([9f12b8a](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/9f12b8a3641217c8eb037993fbf41daeb381fa82))
+- tweak naming-convention" ([9f12b8a](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/9f12b8a3641217c8eb037993fbf41daeb381fa82))
## [1.3.17](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.3.16...v1.3.17) (2022-04-05)
-
### Bug Fixes
-* tweak naming-convention" ([ab792d2](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/ab792d2b3a40b22723bb2384cae4692e100bf754))
+- tweak naming-convention" ([ab792d2](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/ab792d2b3a40b22723bb2384cae4692e100bf754))
## [1.3.16](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.3.15...v1.3.16) (2022-04-04)
-
### Bug Fixes
-* tweak naming-convention" ([092ae10](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/092ae102744c68657832367634daa679fa2f36b9))
+- tweak naming-convention" ([092ae10](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/092ae102744c68657832367634daa679fa2f36b9))
## [1.3.15](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.3.14...v1.3.15) (2022-04-04)
-
### Bug Fixes
-* tweak naming-convention ([3fa91b2](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/3fa91b2f8aa49f2bbf24b916dad0fafe63f20551))
+- tweak naming-convention ([3fa91b2](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/3fa91b2f8aa49f2bbf24b916dad0fafe63f20551))
## [1.3.14](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.3.13...v1.3.14) (2022-04-04)
-
### Bug Fixes
-* fix dash character ([5b8a1c7](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/5b8a1c7f8954863825ead368ba5d5045d585f923))
-* tweak naming-convention ([1df2ea5](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/1df2ea5f5fd68b84a9de4976e5a3b87e5e606227))
+- fix dash character ([5b8a1c7](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/5b8a1c7f8954863825ead368ba5d5045d585f923))
+- tweak naming-convention ([1df2ea5](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/1df2ea5f5fd68b84a9de4976e5a3b87e5e606227))
## [1.3.13](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.3.12...v1.3.13) (2022-04-04)
-
### Bug Fixes
-* tweak naming-convention ([136b90a](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/136b90a05ff64bb3462a03bc4085a627fa874caa))
+- tweak naming-convention ([136b90a](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/136b90a05ff64bb3462a03bc4085a627fa874caa))
## [1.3.12](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.3.11...v1.3.12) (2022-04-02)
-
### Bug Fixes
-* allow underscore dangle ([c92396b](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/c92396bdeda2732c34d60311a4ae74da1dac6c27))
+- allow underscore dangle ([c92396b](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/c92396bdeda2732c34d60311a4ae74da1dac6c27))
## [1.3.11](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.3.10...v1.3.11) (2022-04-02)
-
### Bug Fixes
-* turn off init-declarations ([49068ef](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/49068ef73c410ee86f1335f3c78ef11bc10c53a2))
+- turn off init-declarations ([49068ef](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/49068ef73c410ee86f1335f3c78ef11bc10c53a2))
## [1.3.10](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.3.9...v1.3.10) (2022-04-02)
-
### Bug Fixes
-* allow "m_" prefix to mark something as mutable ([0c5c0d4](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/0c5c0d44c09c359ff6f7660c0820fff614ad15d6))
-* remove tsdoc ([a811527](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/a8115278d708793ff76681b033d9c0b18a2a6fff))
+- allow "m\_" prefix to mark something as mutable ([0c5c0d4](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/0c5c0d44c09c359ff6f7660c0820fff614ad15d6))
+- remove tsdoc ([a811527](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/a8115278d708793ff76681b033d9c0b18a2a6fff))
## [1.3.9](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.3.8...v1.3.9) (2022-03-23)
-
### Bug Fixes
-* update commonjs overrides ([3a7485f](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/3a7485f1afd6389c818b1dc87d632272ed306005))
+- update commonjs overrides ([3a7485f](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/3a7485f1afd6389c818b1dc87d632272ed306005))
## [1.3.8](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.3.7...v1.3.8) (2022-03-23)
-
### Bug Fixes
-* update commonjs overrides ([ee917f0](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/ee917f0ee45841e85032301f0855c7c179c6463f))
+- update commonjs overrides ([ee917f0](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/ee917f0ee45841e85032301f0855c7c179c6463f))
## [1.3.7](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.3.6...v1.3.7) (2022-03-23)
-
### Bug Fixes
-* add common js overrides ([7da04f6](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/7da04f6e24d0a8b6acd7b0ffccfb1aacc77e4a9a))
+- add common js overrides ([7da04f6](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/7da04f6e24d0a8b6acd7b0ffccfb1aacc77e4a9a))
## [1.3.6](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.3.5...v1.3.6) (2022-03-22)
-
### Bug Fixes
-* update typescript overrides ([5d8a645](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/5d8a6459ac4667dd5500dbff4ad4abf10c799aab))
+- update typescript overrides ([5d8a645](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/5d8a6459ac4667dd5500dbff4ad4abf10c799aab))
## [1.3.5](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.3.4...v1.3.5) (2022-03-22)
-
### Bug Fixes
-* turn off no-return-void for scripts ([7888b8d](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/7888b8d12c3b10f55d84c47009c9432ace68837b))
+- turn off no-return-void for scripts ([7888b8d](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/7888b8d12c3b10f55d84c47009c9432ace68837b))
## [1.3.4](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.3.3...v1.3.4) (2022-03-22)
-
### Bug Fixes
-* import/internal-regex ([3bc0fa5](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/3bc0fa5b8e85ac3f4fc16407d27bca6035f19ded))
+- import/internal-regex ([3bc0fa5](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/3bc0fa5b8e85ac3f4fc16407d27bca6035f19ded))
## [1.3.3](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.3.2...v1.3.3) (2022-03-22)
-
### Bug Fixes
-* upadte functional rules ([19ed80d](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/19ed80dfcd99fedf3de686dbc6e06b5ab3b63f5e))
-* update import rules ([2382357](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/238235709d74a76c0ee1b53fc3c691f72074ea91))
+- upadte functional rules ([19ed80d](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/19ed80dfcd99fedf3de686dbc6e06b5ab3b63f5e))
+- update import rules ([2382357](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/238235709d74a76c0ee1b53fc3c691f72074ea91))
## [1.3.2](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.3.1...v1.3.2) (2022-03-22)
-
### Bug Fixes
-* update node rules ([81a5c93](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/81a5c931f79bee9314fea099d3fa532216c2104b))
+- update node rules ([81a5c93](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/81a5c931f79bee9314fea099d3fa532216c2104b))
## [1.3.1](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.3.0...v1.3.1) (2022-02-09)
-
### Bug Fixes
-* update unicorn rules ([d0bca6e](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/d0bca6ee46f296ece9da5b0cb2758a59400996ad))
+- update unicorn rules ([d0bca6e](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/d0bca6ee46f296ece9da5b0cb2758a59400996ad))
# [1.3.0](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.2.2...v1.3.0) (2022-02-07)
-
### Bug Fixes
-* allow throw statements inside async functions ([4bc76bf](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/4bc76bf167517fd3ab1643a896834238d982ebb5))
-
+- allow throw statements inside async functions ([4bc76bf](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/4bc76bf167517fd3ab1643a896834238d982ebb5))
### Features
-* check tsdocs when using typescript ([3b3d586](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/3b3d586ee6d01754c6db6faf2f302e866b1fd7f8))
-* update script config and add test config ([88196bc](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/88196bc1fd5983fa1ff5d610f42c5e7f1a041daf))
+- check tsdocs when using typescript ([3b3d586](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/3b3d586ee6d01754c6db6faf2f302e866b1fd7f8))
+- update script config and add test config ([88196bc](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/88196bc1fd5983fa1ff5d610f42c5e7f1a041daf))
## [1.2.2](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.2.1...v1.2.2) (2022-01-29)
-
### Bug Fixes
-* **@typescript-eslint/prefer-readonly-parameter-types:** treat methods as readonly ([a0a1af7](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/a0a1af7995dae9cc5bd9697d8c585a275c0118bc))
-* **jsdoc/require-jsdoc:** ensure exported function declaration also require jsdoc ([8d647d1](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/8d647d1096079586041e2a50fce83503effd81ea))
+- **@typescript-eslint/prefer-readonly-parameter-types:** treat methods as readonly ([a0a1af7](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/a0a1af7995dae9cc5bd9697d8c585a275c0118bc))
+- **jsdoc/require-jsdoc:** ensure exported function declaration also require jsdoc ([8d647d1](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/8d647d1096079586041e2a50fce83503effd81ea))
## [1.2.1](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.2.0...v1.2.1) (2022-01-14)
-
### Bug Fixes
-* **jsdoc/require-jsdoc:** only require jsdocs on types when they are exported ([0ebcdf8](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/0ebcdf8cdc37e1bc6441bbdf96001e7f35dfac1c))
-* **jsdoc/require-jsdoc:** require jsdocs for exported interfaces ([cec3e26](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/cec3e26ed6d6b0588b4f4680b2e24eb0b05c4b9e))
+- **jsdoc/require-jsdoc:** only require jsdocs on types when they are exported ([0ebcdf8](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/0ebcdf8cdc37e1bc6441bbdf96001e7f35dfac1c))
+- **jsdoc/require-jsdoc:** require jsdocs for exported interfaces ([cec3e26](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/cec3e26ed6d6b0588b4f4680b2e24eb0b05c4b9e))
# [1.2.0](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.1.5...v1.2.0) (2021-12-07)
-
### Bug Fixes
-* add ts version of rule no-redeclare ([eaa92ac](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/eaa92aca6592ccfd2bc80f03fc966c8499c9deaa))
-* increase severity of prefer-readonly-parameter-types rule ([807acf4](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/807acf494b0064af40a1aca11f362a024174a6f7))
-* turn off consistent-return in ts environment ([5cc95bf](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/5cc95bf2fe2784ed37a553413e94e19f3ecca2fc))
-* turn off no-try-statement ([01168ad](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/01168adfe7dac707974bc45a8e6a3d6089832d3c))
-* turn off no-warning-comments ([78150eb](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/78150eb466467371e08724297b6ed353c69ead85))
-* turn off prefer-await-to-then ([abeab1a](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/abeab1ab0d02c57470eef48eb63aec05420f6873))
-* turn off prefer-tacit ([c26c1d6](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/c26c1d6a2a168fbf999cbc7930ba66bfaeb40a37))
-* turn off promise-function-async ([01e413d](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/01e413daf5a5c04badbb9fe87166584a1e1eb1f2))
-* turn off sort-type-union-intersection-members" ([88c3567](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/88c356746053d623c1f1220fad450ac43dc4f3ae))
-
+- add ts version of rule no-redeclare ([eaa92ac](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/eaa92aca6592ccfd2bc80f03fc966c8499c9deaa))
+- increase severity of prefer-readonly-parameter-types rule ([807acf4](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/807acf494b0064af40a1aca11f362a024174a6f7))
+- turn off consistent-return in ts environment ([5cc95bf](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/5cc95bf2fe2784ed37a553413e94e19f3ecca2fc))
+- turn off no-try-statement ([01168ad](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/01168adfe7dac707974bc45a8e6a3d6089832d3c))
+- turn off no-warning-comments ([78150eb](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/78150eb466467371e08724297b6ed353c69ead85))
+- turn off prefer-await-to-then ([abeab1a](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/abeab1ab0d02c57470eef48eb63aec05420f6873))
+- turn off prefer-tacit ([c26c1d6](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/c26c1d6a2a168fbf999cbc7930ba66bfaeb40a37))
+- turn off promise-function-async ([01e413d](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/01e413daf5a5c04badbb9fe87166584a1e1eb1f2))
+- turn off sort-type-union-intersection-members" ([88c3567](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/88c356746053d623c1f1220fad450ac43dc4f3ae))
### Features
-* add config for srcipting ([458fcf6](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/458fcf68baf2ee4af20a4d4ed3fba7f34bb84271))
+- add config for srcipting ([458fcf6](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/458fcf68baf2ee4af20a4d4ed3fba7f34bb84271))
## [1.1.5](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.1.4...v1.1.5) (2021-10-18)
-
### Bug Fixes
-* **no-extra-parens:** use typescript version of rule when in typescript ([#867](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/issues/867)) ([ba4547e](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/ba4547eb5f5343befd60883480ee21862af3ee1b))
-* **space-infix-ops:** use typescript version of space-infix-ops for t… ([#868](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/issues/868)) ([e526697](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/e52669724305c042d9ef910121546ed5bd197b12))
-* **type-annotation-spacing:** add rule ([#866](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/issues/866)) ([2604984](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/260498492a37e0d27d7420a3aa5e781e0aa7c8e1))
+- **no-extra-parens:** use typescript version of rule when in typescript ([#867](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/issues/867)) ([ba4547e](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/ba4547eb5f5343befd60883480ee21862af3ee1b))
+- **space-infix-ops:** use typescript version of space-infix-ops for t… ([#868](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/issues/868)) ([e526697](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/e52669724305c042d9ef910121546ed5bd197b12))
+- **type-annotation-spacing:** add rule ([#866](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/issues/866)) ([2604984](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/260498492a37e0d27d7420a3aa5e781e0aa7c8e1))
## [1.1.4](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.1.3...v1.1.4) (2021-09-21)
-
### Bug Fixes
-* update markdown overrides ([#855](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/issues/855)) ([4544336](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/45443362262c5cbbc31c855539ab51012e88d5c2))
+- update markdown overrides ([#855](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/issues/855)) ([4544336](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/45443362262c5cbbc31c855539ab51012e88d5c2))
## [1.1.3](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.1.2...v1.1.3) (2021-09-21)
-
### Bug Fixes
-* turn off all type-checking eslint rules for markdown ([#854](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/issues/854)) ([2605f92](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/2605f925467654e1cf0a61c4c8f35924cb6fe2ee))
+- turn off all type-checking eslint rules for markdown ([#854](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/issues/854)) ([2605f92](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/2605f925467654e1cf0a61c4c8f35924cb6fe2ee))
## [1.1.2](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.1.1...v1.1.2) (2021-09-19)
-
### Bug Fixes
-* allow mutations of things prefixed with mutable ([6ed77e4](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/6ed77e4f5681d204611b3461732f8ed9ec5fea83))
+- allow mutations of things prefixed with mutable ([6ed77e4](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/6ed77e4f5681d204611b3461732f8ed9ec5fea83))
## [1.1.1](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.1.0...v1.1.1) (2021-09-11)
-
### Bug Fixes
-* remove rules that aren't ready for ts ([77dcde1](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/77dcde179189d7201b14d6d974929b37609363ff))
+- remove rules that aren't ready for ts ([77dcde1](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/77dcde179189d7201b14d6d974929b37609363ff))
# [1.1.0](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.0.16...v1.1.0) (2021-09-10)
-
### Bug Fixes
-* **sonarjs/no-duplicate-string:** increase the number of duplicate strings needed to trigger rule ([581fd1e](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/581fd1e1c1da16f98f0ed41a52e9fe6453cff6c9))
-* split builtins from externals ([7151110](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/7151110303b032aacbffde7f37b2347a5ab1c30f))
-
+- **sonarjs/no-duplicate-string:** increase the number of duplicate strings needed to trigger rule ([581fd1e](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/581fd1e1c1da16f98f0ed41a52e9fe6453cff6c9))
+- split builtins from externals ([7151110](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/7151110303b032aacbffde7f37b2347a5ab1c30f))
### Features
-* update ecma version ([f95e9e1](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/f95e9e1ca7c225858d03d246778a6d099909f217))
-* update markdown config ([c9300ed](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/c9300ed1bbd2ce97aae7ace955df0a2664bbe0b7))
-* update unicorn rules ([684fa41](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/684fa410bef1b7a13a060041dfaf385aa027777e))
+- update ecma version ([f95e9e1](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/f95e9e1ca7c225858d03d246778a6d099909f217))
+- update markdown config ([c9300ed](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/c9300ed1bbd2ce97aae7ace955df0a2664bbe0b7))
+- update unicorn rules ([684fa41](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/684fa410bef1b7a13a060041dfaf385aa027777e))
## [1.0.16](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.0.15...v1.0.16) (2021-09-10)
-
### Bug Fixes
-* update typescript rules ([1230247](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/12302479dc68a2d3c218f783b8bf5673dd7108a5))
+- update typescript rules ([1230247](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/12302479dc68a2d3c218f783b8bf5673dd7108a5))
## [1.0.15](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.0.14...v1.0.15) (2021-08-26)
-
### Bug Fixes
-* use consistent-type-definitions over prefer-type-literal ([adcd4fe](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/adcd4fed4f29cd8d732517e32e113d9828d25777))
+- use consistent-type-definitions over prefer-type-literal ([adcd4fe](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/adcd4fed4f29cd8d732517e32e113d9828d25777))
## [1.0.14](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.0.13...v1.0.14) (2021-08-24)
-
### Bug Fixes
-* update what nodes require jsdoc ([27748d3](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/27748d3b470a22957c7abb32168c576dfb19bac4))
+- update what nodes require jsdoc ([27748d3](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/27748d3b470a22957c7abb32168c576dfb19bac4))
## [1.0.13](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.0.12...v1.0.13) (2021-08-24)
-
### Bug Fixes
-* for simple non-readonly arrays, don't use generic style ([3d480b9](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/3d480b9648c7f172e4719c59bc589ad97fffabcc))
-* turn off default-case now that we are checking if exhaustive ([45dea9c](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/45dea9cb74835446e6c7fb8f5788e6f1dd6341ee))
+- for simple non-readonly arrays, don't use generic style ([3d480b9](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/3d480b9648c7f172e4719c59bc589ad97fffabcc))
+- turn off default-case now that we are checking if exhaustive ([45dea9c](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/45dea9cb74835446e6c7fb8f5788e6f1dd6341ee))
## [1.0.12](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.0.11...v1.0.12) (2021-07-30)
-
### Bug Fixes
-* remove eslint-plugin-simple-import-sort as a peer dep as no longer used ([78d4200](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/78d420025673e42e5528e0d11f25991fccc48252))
+- remove eslint-plugin-simple-import-sort as a peer dep as no longer used ([78d4200](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/78d420025673e42e5528e0d11f25991fccc48252))
## [1.0.11](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.0.10...v1.0.11) (2021-07-30)
-
### Bug Fixes
-* allow void before call expressions ([932351e](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/932351ef856c0062f5e134afda08a80a150588f0))
+- allow void before call expressions ([932351e](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/932351ef856c0062f5e134afda08a80a150588f0))
## [1.0.10](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.0.9...v1.0.10) (2021-07-22)
-
### Bug Fixes
-* use stylistic over stylitic functional ruleset ([68d9560](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/68d956087ce25825bef8760285433eaafe80bbbc))
+- use stylistic over stylitic functional ruleset ([68d9560](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/68d956087ce25825bef8760285433eaafe80bbbc))
## [1.0.9](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.0.8...v1.0.9) (2021-07-21)
-
### Bug Fixes
-* ignore mutable types in classes ([31e4982](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/31e4982508d5d2590f9026c1000ac69a68195a26))
+- ignore mutable types in classes ([31e4982](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/31e4982508d5d2590f9026c1000ac69a68195a26))
## [1.0.8](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.0.7...v1.0.8) (2021-07-21)
-
### Bug Fixes
-* make rule prefer-readonly-parameter-types more lenient ([c0be938](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/c0be9380d597ac09b139f02f017de2cc815a83c3))
+- make rule prefer-readonly-parameter-types more lenient ([c0be938](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/c0be9380d597ac09b139f02f017de2cc815a83c3))
## [1.0.7](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.0.6...v1.0.7) (2021-07-21)
-
### Bug Fixes
-* **comma-dangle:** use typescript version of rule ([2065d6e](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/2065d6efce4b0d1bf7c7bc7a06ddfca7b98b7563))
-* **consistent-indexed-object-style:** add rule ([c57ef18](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/c57ef182eeb6d3c727a16d01651e2b8b51d6e88b))
-* **dot-notation:** use typescript version of rule ([4407aef](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/4407aefe9ac256d50ca6f98a41742aa4ee19f7a7))
-* **no-confusing-void-expression:** add rule ([ced5612](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/ced56129c2258bc85d0a2a1e2c57b84c629ee89c))
-* **no-invalid-void-type:** add rule ([875bb0c](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/875bb0ce830a1667717354148874325ba4252450))
-* **no-loop-func:** use typescript version of rule ([db7c588](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/db7c588def28d155db445a47d617bed5424edf98))
-* **no-shadow:** use typescript version of rule ([59945b1](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/59945b1b1bc0da23b1a56812498f53bd0e836cb4))
-* **no-unnecessary-type-constraint:** add rule ([7e31455](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/7e31455efe953f66cdbca9f2b0c15e5520cf539e))
-* **non-nullable-type-assertion-style:** add rule ([273e0db](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/273e0db30a4185279df7a07f8422408a786436e0))
-* **object-curly-spacing:** use typescript version of rule for typescript ([3d0d7eb](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/3d0d7eb859540105a87cc54da003a61a3f19b85a))
-* **prefer-readonly-parameter-types:** add rule ([5d85ce2](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/5d85ce29e392c1d34c50bc3d339e74ffd64399a0))
-* **promise-function-async:** add rule ([26927f0](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/26927f0f3730ff78358e44c5119ccdd017053cb4))
-* **restrict-plus-operands:** add rule ([f68d08e](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/f68d08e6e9ddae423d52a18e1ce62bc4c016428d))
-* **sort-type-union-intersection-members:** add rule ([4bfdb58](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/4bfdb58e9d207c478dc14f149d801e329113887b))
-* **strict-boolean-expressions:** add rule ([c973802](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/c973802db4b9afbe4afe6d609caccfb178ef84fa))
-* **unbound-method:** add rule ([9000402](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/9000402bd71da82476dc3be136dceb1643d05ad4))
+- **comma-dangle:** use typescript version of rule ([2065d6e](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/2065d6efce4b0d1bf7c7bc7a06ddfca7b98b7563))
+- **consistent-indexed-object-style:** add rule ([c57ef18](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/c57ef182eeb6d3c727a16d01651e2b8b51d6e88b))
+- **dot-notation:** use typescript version of rule ([4407aef](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/4407aefe9ac256d50ca6f98a41742aa4ee19f7a7))
+- **no-confusing-void-expression:** add rule ([ced5612](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/ced56129c2258bc85d0a2a1e2c57b84c629ee89c))
+- **no-invalid-void-type:** add rule ([875bb0c](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/875bb0ce830a1667717354148874325ba4252450))
+- **no-loop-func:** use typescript version of rule ([db7c588](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/db7c588def28d155db445a47d617bed5424edf98))
+- **no-shadow:** use typescript version of rule ([59945b1](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/59945b1b1bc0da23b1a56812498f53bd0e836cb4))
+- **no-unnecessary-type-constraint:** add rule ([7e31455](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/7e31455efe953f66cdbca9f2b0c15e5520cf539e))
+- **non-nullable-type-assertion-style:** add rule ([273e0db](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/273e0db30a4185279df7a07f8422408a786436e0))
+- **object-curly-spacing:** use typescript version of rule for typescript ([3d0d7eb](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/3d0d7eb859540105a87cc54da003a61a3f19b85a))
+- **prefer-readonly-parameter-types:** add rule ([5d85ce2](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/5d85ce29e392c1d34c50bc3d339e74ffd64399a0))
+- **promise-function-async:** add rule ([26927f0](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/26927f0f3730ff78358e44c5119ccdd017053cb4))
+- **restrict-plus-operands:** add rule ([f68d08e](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/f68d08e6e9ddae423d52a18e1ce62bc4c016428d))
+- **sort-type-union-intersection-members:** add rule ([4bfdb58](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/4bfdb58e9d207c478dc14f149d801e329113887b))
+- **strict-boolean-expressions:** add rule ([c973802](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/c973802db4b9afbe4afe6d609caccfb178ef84fa))
+- **unbound-method:** add rule ([9000402](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/9000402bd71da82476dc3be136dceb1643d05ad4))
## [1.0.6](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.0.5...v1.0.6) (2021-01-06)
-
### Bug Fixes
-* **common-overrides:** fix typo ([f0d6a59](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/f0d6a5956e17dc7d04351271c8ff89b70db0482b))
+- **common-overrides:** fix typo ([f0d6a59](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/f0d6a5956e17dc7d04351271c8ff89b70db0482b))
## [1.0.5](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.0.4...v1.0.5) (2021-01-05)
-
### Bug Fixes
-* **typescript:** update typescript ruels ([ab3f180](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/ab3f180ab4daeb3993f373bdbf1fca117a121b59))
+- **typescript:** update typescript ruels ([ab3f180](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/ab3f180ab4daeb3993f373bdbf1fca117a121b59))
## [1.0.4](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.0.3...v1.0.4) (2021-01-05)
-
### Bug Fixes
-* **import/no-extraneous-dependencies:** update rule options ([25f8ba8](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/25f8ba8f40aaa947c535e0b81c24853b10cc4675))
+- **import/no-extraneous-dependencies:** update rule options ([25f8ba8](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/25f8ba8f40aaa947c535e0b81c24853b10cc4675))
## [1.0.3](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.0.2...v1.0.3) (2021-01-02)
-
### Bug Fixes
-* turn off rule import/no-commonjs ([e0607bf](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/e0607bf6928ace68850b5dd081c2e102cf69e560))
+- turn off rule import/no-commonjs ([e0607bf](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/e0607bf6928ace68850b5dd081c2e102cf69e560))
## [1.0.2](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.0.1...v1.0.2) (2021-01-02)
-
### Bug Fixes
-* disable rule "new-cap" ([9aeceec](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/9aeceecfdb726dd88d01a290a033208145d3c31a))
-* disable rule @typescript-eslint/no-var-requires in non-ts files ([0f1e17a](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/0f1e17ad23406d3f5b647d33d8c4d6140b31f42c))
-* disable rule jsdoc/require-description-complete-sentence ([9e1217b](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/9e1217b7240a0f1ba4320089a854d19e6cc5d302))
-* disable rule node/global-require ([9d598cf](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/9d598cfa3c2087c25ea590a2ac293c8cf4b8fad5))
-* disable rules @typescript-eslint/no-require-imports ([7ce18d8](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/7ce18d876d9ea82fd5ec2a528c179382137ab7bd))
-* opt-in to functional/stylitic rules ([c5d6ae7](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/c5d6ae761035e5d036d97b38b19e30593481ee7c))
-* update unicorn rules ([4ffd355](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/4ffd355da4dc046c970912e63f649b72d8f19b67))
+- disable rule "new-cap" ([9aeceec](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/9aeceecfdb726dd88d01a290a033208145d3c31a))
+- disable rule @typescript-eslint/no-var-requires in non-ts files ([0f1e17a](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/0f1e17ad23406d3f5b647d33d8c4d6140b31f42c))
+- disable rule jsdoc/require-description-complete-sentence ([9e1217b](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/9e1217b7240a0f1ba4320089a854d19e6cc5d302))
+- disable rule node/global-require ([9d598cf](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/9d598cfa3c2087c25ea590a2ac293c8cf4b8fad5))
+- disable rules @typescript-eslint/no-require-imports ([7ce18d8](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/7ce18d876d9ea82fd5ec2a528c179382137ab7bd))
+- opt-in to functional/stylitic rules ([c5d6ae7](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/c5d6ae761035e5d036d97b38b19e30593481ee7c))
+- update unicorn rules ([4ffd355](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/4ffd355da4dc046c970912e63f649b72d8f19b67))
## [1.0.1](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v1.0.0...v1.0.1) (2020-12-24)
-
### Bug Fixes
-* security updates ([fdb7c90](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/fdb7c90fe351ad50d5a639ba9b3a7e68fdf06131))
+- security updates ([fdb7c90](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/fdb7c90fe351ad50d5a639ba9b3a7e68fdf06131))
# [1.0.0](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v0.2.3...v1.0.0) (2020-12-22)
-
### Code Refactoring
-* update build process, refactor codebase, update eslint rules ([7b5947e](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/7b5947ee6891f64c06b7f6b7b0db8e73d2d45f57))
-
+- update build process, refactor codebase, update eslint rules ([7b5947e](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/7b5947ee6891f64c06b7f6b7b0db8e73d2d45f57))
### Features
-* split into multiple configs ([1b37e76](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/1b37e769214936824c0146bd3211514aeb452d77))
-
+- split into multiple configs ([1b37e76](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/1b37e769214936824c0146bd3211514aeb452d77))
### BREAKING CHANGES
-* import updates
-* Rules have been updated
+- import updates
+- Rules have been updated
## [0.2.3](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v0.2.2...v0.2.3) (2019-12-29)
-
### Bug Fixes
-* **functional:** load eslint-plugin-functional's external-recommended ([5fded3f](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/5fded3f9872e5a7ae021c9c593111673ff791bde))
+- **functional:** load eslint-plugin-functional's external-recommended ([5fded3f](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/5fded3f9872e5a7ae021c9c593111673ff791bde))
## [0.2.2](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v0.2.1...v0.2.2) (2019-11-20)
-
### Bug Fixes
-* test release ([ac5b17e](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/ac5b17e5fe54f6c2262adb2e3c3cdea3606529df))
+- test release ([ac5b17e](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/ac5b17e5fe54f6c2262adb2e3c3cdea3606529df))
## [0.2.2](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v0.2.1...v0.2.2) (2019-11-20)
-
### Bug Fixes
-* test release ([652927e](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/652927eba93ee6d5a2c316e316c627d030e88786))
+- test release ([652927e](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/652927eba93ee6d5a2c316e316c627d030e88786))
## [0.2.1](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v0.2.0...v0.2.1) (2019-11-20)
-
### Bug Fixes
-* force publish ([58075c1](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/58075c1b1ad4cb8fe08b9ccf798122e18853106d))
+- force publish ([58075c1](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/58075c1b1ad4cb8fe08b9ccf798122e18853106d))
# [0.2.0](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v0.1.5...v0.2.0) (2019-09-17)
-
### Bug Fixes
-* **package:** update rimraf to version 3.0.0 ([23dd874](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/23dd874))
-
+- **package:** update rimraf to version 3.0.0 ([23dd874](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/23dd874))
### Features
-* use more of [@typescript-eslint](https://github.com/typescript-eslint) rulesets ([5f6bb0d](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/5f6bb0d))
+- use more of [@typescript-eslint](https://github.com/typescript-eslint) rulesets ([5f6bb0d](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/5f6bb0d))
## [v0.1.5](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v0.1.4...v0.1.5) - 2019-08-10
diff --git a/LICENSE b/LICENSE
index 292b4513..924bbecd 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,6 +1,6 @@
BSD 3-Clause License
-Copyright (c) 2019, Rebecca Stevens
+Copyright (c) 2024, Rebecca Stevens
All rights reserved.
Redistribution and use in source and binary forms, with or without
diff --git a/README.md b/README.md
index eae64b7b..219acd38 100644
--- a/README.md
+++ b/README.md
@@ -5,16 +5,19 @@
An [ESLint Shareable Config](https://eslint.org/docs/developer-guide/shareable-configs.html).
[![npm version](https://img.shields.io/npm/v/@rebeccastevens/eslint-config.svg)](https://www.npmjs.com/package/@rebeccastevens/eslint-config)
-[![CI](https://github.com/RebeccaStevens/template-typescript-node-package/actions/workflows/release.yml/badge.svg)](https://github.com/RebeccaStevens/template-typescript-node-package/actions/workflows/release.yml)
+[![CI](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/actions/workflows/release.yml/badge.svg)](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/actions/workflows/release.yml)
+[![Coverage Status](https://codecov.io/gh/RebeccaStevens/eslint-config-rebeccastevens/branch/main/graph/badge.svg?token=MVpR1oAbIT)](https://codecov.io/gh/RebeccaStevens/eslint-config-rebeccastevens)\
[![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettier)
-[![GitHub Discussions](https://img.shields.io/github/discussions/RebeccaStevens/template-typescript-node-package?style=flat-square)](https://github.com/RebeccaStevens/template-typescript-node-package/discussions)
-[![BSD 3 Clause license](https://img.shields.io/github/license/RebeccaStevens/template-typescript-node-package.svg?style=flat-square)](https://opensource.org/licenses/BSD-3-Clause)
+[![GitHub Discussions](https://img.shields.io/github/discussions/RebeccaStevens/eslint-config-rebeccastevens?style=flat-square)](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/discussions)
+[![BSD 3 Clause license](https://img.shields.io/github/license/RebeccaStevens/eslint-config-rebeccastevens.svg?style=flat-square)](https://opensource.org/licenses/BSD-3-Clause)
[![Commitizen friendly](https://img.shields.io/badge/commitizen-friendly-brightgreen.svg?style=flat-square)](https://commitizen.github.io/cz-cli/)
[![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg?style=flat-square)](https://github.com/semantic-release/semantic-release)
-
+## Donate
+
+[Any donations would be much appreciated](./DONATIONS.md). 😄
## Installation
@@ -32,95 +35,21 @@ Note: This project doesn't strictly follow semantic versioning so be sure to pin
## Usage
-### Language
-
-
- JavaScript (Modern)
-
-Install Peer Dependencies:
+```js
+// eslint.config.js
+import rsEslint from "@rebeccastevens/eslint-config";
-```sh
-pnpm add -D \
- babel-eslint \
- eslint-plugin-eslint-comments \
- eslint-plugin-functional \
- eslint-plugin-import \
- eslint-import-resolver-typescript \
- eslint-plugin-jsdoc \
- eslint-plugin-markdown \
- eslint-plugin-n \
- eslint-plugin-optimize-regex \
- eslint-plugin-promise \
- eslint-plugin-sonarjs \
- eslint-plugin-unicorn
-```
-
-Configure your project's `.eslintrc.json` file.
-
-```jsonc
-{
- "root": true,
- "extends": ["@rebeccastevens/eslint-config/modern"],
- "rules": {
- // Additional, per-project rules...
+export default rsEslint(
+ {
+ // general config.
},
- "overrides": [
- {
- "files": ["**/*.test.ts"],
- "rules": {}
- }
- ]
-}
-```
-
-
-
-
- TypeScript
-
-Install Peer Dependencies:
-
-```sh
-pnpm add -D \
- @typescript-eslint/parser \
- @typescript-eslint/eslint-plugin \
- eslint-plugin-eslint-comments \
- eslint-plugin-functional \
- eslint-plugin-import \
- eslint-import-resolver-typescript \
- eslint-plugin-jsdoc \
- eslint-plugin-markdown \
- eslint-plugin-n \
- eslint-plugin-optimize-regex \
- eslint-plugin-promise \
- eslint-plugin-sonarjs \
- eslint-plugin-unicorn
-```
-
-Configure your project's `.eslintrc.json` file.
-
-```jsonc
-{
- "root": true,
- "parserOptions": {
- "project": "tsconfig.json"
+ {
+ // project specific config.
},
- "extends": [
- "@rebeccastevens/eslint-config/modern",
- "@rebeccastevens/eslint-config/typescript"
- ],
- "rules": {
- // Additional, per-project rules...
+ {
+ // another project specific config.
},
- "overrides": [
- {
- "files": ["**/*.test.ts"],
- "rules": {}
- }
- ]
-}
+);
```
-
-
See [ESLint configuration](http://eslint.org/docs/user-guide/configuring) for more information.
diff --git a/cspell.config.yml b/cspell.config.yml
new file mode 100644
index 00000000..3671e520
--- /dev/null
+++ b/cspell.config.yml
@@ -0,0 +1,67 @@
+$schema: https://raw.githubusercontent.com/streetsidesoftware/cspell/main/cspell.schema.json
+version: "0.2"
+
+language: en-US
+
+dictionaryDefinitions:
+ - name: project-dictionary
+ path: ./project-dictionary.txt
+ addWords: true
+
+allowCompoundWords: true
+caseSensitive: false
+useGitignore: true
+
+dictionaries:
+ - en_US
+ - bash
+ - filetypes
+ - fonts
+ - html
+ - misc
+ - node
+ - npm
+ - softwareTerms
+ - typescript
+ - project-dictionary
+
+import:
+ - "@cspell/dict-cryptocurrencies/cspell-ext.json"
+
+ignorePaths:
+ - .eslintrc.json
+ - .git
+ - .gitattributes
+ - .gitignore
+ - .husky
+ - .lintstagedrc.yml
+ - .markdownlint.json
+ - .npmrc
+ - .prettierignore
+ - .prettierrc.yml
+ - .vscode
+ - CHANGELOG.md
+ - coverage
+ - cspell.config.yml
+ - dist
+ - node_modules
+ - package.json
+ - patches
+ - pnpm-lock.yaml
+ - project-dictionary.txt
+ - src/typegen.ts
+
+ignoreRegExpList:
+ - /\b[a-f0-9]{6}\b/ui # ignore hex color codes
+ - /\b[a-z0-9]{32,}\b/ui # ignore long string of hex characters
+ - /`[^`]*`/u # ignore things in `...`
+ - /```[\w\W]*?```/u # ignore things in ```...```
+
+overrides:
+ - filename: "**/*.yml"
+ ignoreRegExpList:
+ - /^\s*(?:[a-z0-9]|-|_|\"|')+:/ui # ignore keys
+
+ - filename: ".github/(actions|workflows)/*.yml"
+ ignoreRegExpList:
+ - /\b(?:[A-Za-z0-9\-_])+\/(?:[A-Za-z0-9\-_])+@v\d+(?:\.\d+){0,2}\b/ui # ignore action
diff --git a/eslint.config.js b/eslint.config.js
new file mode 100644
index 00000000..a4461515
--- /dev/null
+++ b/eslint.config.js
@@ -0,0 +1,41 @@
+// @ts-check
+// @ts-expect-error - Untyped.
+import styleMigrate from "@stylistic/eslint-plugin-migrate";
+import JITI from "jiti";
+
+const jiti = JITI(import.meta.url);
+
+/**
+ * @type {import('./src').default}
+ */
+const rsEslint = jiti("./src").default;
+
+export default rsEslint(
+ {
+ projectRoot: import.meta.dirname,
+ mode: "none",
+ typescript: {
+ useDefaultDefaultProject: false,
+ },
+ formatters: true,
+ functional: "lite",
+ jsonc: true,
+ markdown: true,
+ stylistic: true,
+ yaml: true,
+ },
+ {
+ rules: {
+ "jsdoc/require-jsdoc": "off",
+ },
+ },
+ {
+ files: ["src/configs/*.ts"],
+ plugins: {
+ "style-migrate": styleMigrate,
+ },
+ rules: {
+ "style-migrate/migrate": ["error", { namespaceTo: "style" }],
+ },
+ },
+);
diff --git a/knip.jsonc b/knip.jsonc
index 7d97057a..9cb8fd97 100644
--- a/knip.jsonc
+++ b/knip.jsonc
@@ -1,21 +1,44 @@
{
"$schema": "node_modules/knip/schema-jsonc.json",
- "entry": ["src/configs/*.ts!"],
- "project": ["src/**/*.ts!"],
+ "entry": ["src/index.ts!", "tests/**/*.test.ts"],
+ "project": ["src/**/*.ts!", "tests/**/*.ts"],
"ignoreDependencies": [
+ "@intlify/eslint-plugin-vue-i18n",
+ "@stylistic/eslint-plugin",
"@typescript-eslint/eslint-plugin",
"@typescript-eslint/parser",
- "eslint",
+ "@typescript-eslint/utils",
+ "@unocss/eslint-plugin",
+ "eslint-config-prettier",
+ "eslint-flat-config-utils",
"eslint-import-resolver-typescript",
+ "eslint-merge-processors",
"eslint-plugin-eslint-comments",
+ "eslint-plugin-format",
"eslint-plugin-functional",
- "eslint-plugin-import",
+ "eslint-plugin-import-x",
"eslint-plugin-jsdoc",
+ "eslint-plugin-jsonc",
"eslint-plugin-markdown",
"eslint-plugin-n",
+ "eslint-plugin-no-only-tests",
"eslint-plugin-optimize-regex",
+ "eslint-plugin-prettier",
"eslint-plugin-promise",
+ "eslint-plugin-regexp",
"eslint-plugin-sonarjs",
+ "eslint-plugin-toml",
"eslint-plugin-unicorn",
+ "eslint-plugin-vitest",
+ "eslint-plugin-vue",
+ "eslint-plugin-yml",
+ "eslint-processor-vue-blocks",
+ "jsonc-eslint-parser",
+ "prettier-plugin-packagejson",
+ "prettier",
+ "toml-eslint-parser",
+ "tsc-files",
+ "vue-eslint-parser",
+ "yaml-eslint-parser",
],
}
diff --git a/package.json b/package.json
index d9a7f6c9..0741efc4 100644
--- a/package.json
+++ b/package.json
@@ -2,140 +2,273 @@
"name": "@rebeccastevens/eslint-config",
"version": "0.0.0-development",
"description": "My ESLint shareable config.",
- "keywords": [
- "eslint config"
- ],
+ "keywords": ["eslint config"],
"homepage": "https://github.com/RebeccaStevens/eslint-config-rebeccastevens#readme",
"bugs": {
"url": "https://github.com/RebeccaStevens/eslint-config-rebeccastevens/issues"
},
- "repository": "git@github.com:RebeccaStevens/eslint-config-rebeccastevens.git",
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/RebeccaStevens/eslint-config-rebeccastevens"
+ },
"license": "BSD-3-Clause",
"author": {
"name": "Rebecca Stevens",
"email": "rebecca.stevens@outlook.co.nz"
},
+ "type": "module",
"exports": {
- "./common-overrides": {
- "import": "./dist/common-overrides.mjs",
- "require": "./dist/common-overrides.cjs"
- },
- "./modern": {
- "import": "./dist/modern.mjs",
- "require": "./dist/modern.cjs"
- },
- "./script": {
- "import": "./dist/script.mjs",
- "require": "./dist/script.cjs"
+ "types": {
+ "require": "./dist/index.d.cts",
+ "import": "./dist/index.d.mts"
},
- "./test": {
- "import": "./dist/test.mjs",
- "require": "./dist/test.cjs"
- },
- "./typescript": {
- "import": "./dist/typescript.mjs",
- "require": "./dist/typescript.cjs"
- }
+ "require": "./dist/index.cjs",
+ "import": "./dist/index.mjs"
},
- "files": [
- "dist/",
- "package.json",
- "LICENSE",
- "README.md"
- ],
+ "files": ["dist/", "package.json", "LICENSE"],
"scripts": {
"build": "pnpm run build:node",
- "build:node": "rimraf dist && rollup -c rollup.config.ts --configPlugin @rollup/plugin-typescript",
+ "build:node": "rimraf dist && pnpm run typegen && rollup -c rollup.config.ts --configPlugin rollup-plugin-ts",
"cz": "git-cz",
- "generate-preview": "ts-node -P scripts/tsconfig.json -r tsconfig-paths/register scripts/generate-preview.ts",
- "lint": "pnpm run lint:js && pnpm run lint:md && pnpm run lint:prettier && pnpm run lint:knip && pnpm run lint:spelling",
- "lint:js": "pnpm run build && eslint .",
- "lint:js-fix": "pnpm run build && eslint . --fix",
+ "lint": "pnpm run typegen && pnpm run lint:eslint && pnpm run lint:md && pnpm run lint:knip && pnpm run lint:spelling && pnpm run lint:packages",
+ "lint-fix": "pnpm run typegen && pnpm run lint:eslint-fix && pnpm run lint:packages-fix",
+ "lint:eslint": "eslint .",
+ "lint:eslint-fix": "eslint . --fix",
"lint:knip": "pnpm run lint:knip:development && pnpm run lint:knip:production",
- "lint:knip:development": "knip --exclude exports",
- "lint:knip:production": "knip --production --strict --exclude exports",
+ "lint:knip:development": "knip --exclude exports,nsExports,types,nsTypes",
+ "lint:knip:production": "knip --production --strict --exclude exports,nsExports,types,nsTypes",
"lint:md": "markdownlint \"**/*.md\" --config=.markdownlint.json --ignore-path=.markdownlintignore",
- "lint:prettier": "prettier \"**/*\" --ignore-unknown --list-different",
- "lint:prettier-fix": "prettier \"**/*\" --ignore-unknown --write",
+ "lint:packages": "pnpm dedupe --check",
+ "lint:packages-fix": "pnpm dedupe",
"lint:spelling": "cspell \"**\" \".github/**/*\"",
- "prepare": "husky install",
+ "prepare": "husky && pnpm run typegen",
"release": "semantic-release",
- "test": "echo no tests",
- "type-check": "tsc --noEmit --skipLibCheck"
+ "typecheck": "pnpm run typegen && tsc --noEmit -p tsconfig.build.json",
+ "typegen": "tsx scripts/typegen.ts"
},
"dependencies": {
- "deepmerge-ts": "^5.1.0"
+ "@antfu/install-pkg": "^0.3.3",
+ "@clack/prompts": "^0.7.0",
+ "eslint-flat-config-utils": "^0.3.0",
+ "eslint-merge-processors": "^0.1.0",
+ "globals": "^15.9.0",
+ "local-pkg": "^0.5.0"
},
"devDependencies": {
- "@commitlint/cli": "19.2.1",
- "@commitlint/config-conventional": "19.1.0",
+ "@commitlint/cli": "19.3.0",
+ "@commitlint/config-conventional": "19.2.2",
"@cspell/dict-cryptocurrencies": "5.0.0",
- "@rollup/plugin-commonjs": "25.0.7",
- "@rollup/plugin-node-resolve": "15.2.3",
- "@rollup/plugin-typescript": "11.1.6",
+ "@eslint/compat": "1.1.1",
+ "@intlify/eslint-plugin-vue-i18n": "3.0.0",
"@semantic-release/changelog": "6.0.3",
- "@semantic-release/commit-analyzer": "12.0.0",
+ "@semantic-release/commit-analyzer": "13.0.0",
"@semantic-release/git": "10.0.1",
- "@semantic-release/github": "10.0.2",
- "@semantic-release/npm": "12.0.0",
- "@semantic-release/release-notes-generator": "13.0.0",
- "@types/eslint": "8.56.6",
- "@types/eslint-config-prettier": "6.11.3",
- "@types/eslint-plugin-prettier": "3.1.3",
- "@types/node": "18.11.9",
- "@types/rollup-plugin-auto-external": "2.0.5",
- "@typescript-eslint/eslint-plugin": "7.3.1",
- "@typescript-eslint/parser": "7.3.1",
+ "@semantic-release/github": "10.1.3",
+ "@semantic-release/npm": "12.0.1",
+ "@semantic-release/release-notes-generator": "14.0.1",
+ "@stylistic/eslint-plugin": "2.6.1",
+ "@stylistic/eslint-plugin-migrate": "2.6.1",
+ "@types/eslint": "9.6.0",
+ "@types/node": "22.1.0",
+ "@typescript-eslint/eslint-plugin": "8.0.0",
+ "@typescript-eslint/parser": "8.0.0",
+ "@typescript-eslint/utils": "8.0.0",
+ "@unocss/eslint-plugin": "0.61.9",
"commitizen": "4.3.0",
- "cspell": "8.6.1",
+ "cspell": "8.13.1",
"cz-conventional-changelog": "3.3.0",
- "eslint": "9.6.0",
+ "deassert": "1.0.2",
+ "eslint": "9.8.0",
"eslint-config-prettier": "9.1.0",
"eslint-import-resolver-typescript": "3.6.1",
"eslint-plugin-eslint-comments": "3.2.0",
- "eslint-plugin-functional": "6.3.0",
- "eslint-plugin-import": "2.29.1",
- "eslint-plugin-jsdoc": "48.2.1",
- "eslint-plugin-markdown": "3.0.1",
- "eslint-plugin-n": "16.6.2",
+ "eslint-plugin-format": "0.1.2",
+ "eslint-plugin-functional": "7.0.0-rc.1",
+ "eslint-plugin-import-x": "3.1.0",
+ "eslint-plugin-jsdoc": "48.11.0",
+ "eslint-plugin-jsonc": "2.16.0",
+ "eslint-plugin-markdown": "5.1.0",
+ "eslint-plugin-n": "17.10.2",
+ "eslint-plugin-no-only-tests": "3.1.0",
"eslint-plugin-optimize-regex": "1.2.1",
- "eslint-plugin-prettier": "5.1.3",
- "eslint-plugin-promise": "6.1.1",
- "eslint-plugin-sonarjs": "0.24.0",
- "eslint-plugin-unicorn": "51.0.1",
- "husky": "9.0.11",
- "knip": "5.5.0",
- "lint-staged": "15.2.2",
- "markdownlint-cli": "0.39.0",
- "prettier": "3.2.5",
- "prettier-plugin-packagejson": "2.4.12",
- "rimraf": "5.0.5",
- "rollup": "4.13.0",
- "rollup-plugin-auto-external": "2.0.0",
- "semantic-release": "23.0.6",
- "ts-node": "10.9.2",
- "tsconfig-paths": "4.2.0",
- "tslib": "2.6.2",
- "typescript": "5.4.3"
+ "eslint-plugin-prettier": "5.2.1",
+ "eslint-plugin-promise": "7.0.0",
+ "eslint-plugin-regexp": "2.6.0",
+ "eslint-plugin-sonarjs": "1.0.4",
+ "eslint-plugin-toml": "0.11.1",
+ "eslint-plugin-unicorn": "55.0.0",
+ "eslint-plugin-vitest": "0.5.4",
+ "eslint-plugin-vue": "9.27.0",
+ "eslint-plugin-yml": "1.14.0",
+ "eslint-processor-vue-blocks": "0.1.2",
+ "eslint-typegen": "0.3.0",
+ "husky": "9.1.4",
+ "jiti": "1.21.6",
+ "jsonc-eslint-parser": "2.4.0",
+ "knip": "5.27.0",
+ "lint-staged": "15.2.8",
+ "markdownlint": "0.34.0",
+ "markdownlint-cli": "0.41.0",
+ "prettier": "3.3.3",
+ "prettier-plugin-packagejson": "2.5.1",
+ "rimraf": "6.0.1",
+ "rollup": "4.20.0",
+ "rollup-plugin-ts": "3.4.5",
+ "semantic-release": "24.0.0",
+ "toml-eslint-parser": "0.10.0",
+ "tsc-files": "1.1.4",
+ "tsx": "4.16.5",
+ "typescript": "5.4.5",
+ "vue-eslint-parser": "9.4.3",
+ "yaml-eslint-parser": "1.2.3"
},
"peerDependencies": {
- "@typescript-eslint/eslint-plugin": ">=6.0.0",
- "@typescript-eslint/parser": ">=6.0.0",
- "eslint": ">=8.24.0",
+ "@stylistic/eslint-plugin": "*",
+ "@typescript-eslint/eslint-plugin": "*",
+ "@typescript-eslint/parser": "*",
+ "@typescript-eslint/utils": "*",
+ "@unocss/eslint-plugin": "*",
+ "eslint": "*",
+ "eslint-config-prettier": "*",
+ "eslint-flat-config-utils": "*",
"eslint-import-resolver-typescript": "*",
+ "eslint-merge-processors": "*",
"eslint-plugin-eslint-comments": "*",
- "eslint-plugin-functional": ">=5.0.0",
- "eslint-plugin-import": "*",
+ "eslint-plugin-format": "*",
+ "eslint-plugin-functional": "*",
+ "eslint-plugin-import-x": "*",
"eslint-plugin-jsdoc": "*",
+ "eslint-plugin-jsonc": "*",
"eslint-plugin-markdown": "*",
"eslint-plugin-n": "*",
+ "eslint-plugin-no-only-tests": "*",
"eslint-plugin-optimize-regex": "*",
+ "eslint-plugin-prettier": "*",
"eslint-plugin-promise": "*",
+ "eslint-plugin-regexp": "*",
"eslint-plugin-sonarjs": "*",
- "eslint-plugin-unicorn": "*"
+ "eslint-plugin-toml": "*",
+ "eslint-plugin-unicorn": "*",
+ "eslint-plugin-vitest": "*",
+ "eslint-plugin-vue": "*",
+ "eslint-plugin-yml": "*",
+ "eslint-processor-vue-blocks": "*",
+ "jsonc-eslint-parser": "*",
+ "prettier": "*",
+ "prettier-plugin-packagejson": "*",
+ "toml-eslint-parser": "*",
+ "vue-eslint-parser": "*",
+ "yaml-eslint-parser": "*"
+ },
+ "peerDependenciesMeta": {
+ "@stylistic/eslint-plugin": {
+ "optional": true
+ },
+ "@typescript-eslint/eslint-plugin": {
+ "optional": true
+ },
+ "@typescript-eslint/parser": {
+ "optional": true
+ },
+ "@typescript-eslint/utils": {
+ "optional": true
+ },
+ "@unocss/eslint-plugin": {
+ "optional": true
+ },
+ "eslint-config-prettier": {
+ "optional": true
+ },
+ "eslint-flat-config-utils": {
+ "optional": true
+ },
+ "eslint-import-resolver-typescript": {
+ "optional": true
+ },
+ "eslint-merge-processors": {
+ "optional": true
+ },
+ "eslint-plugin-eslint-comments": {
+ "optional": true
+ },
+ "eslint-plugin-format": {
+ "optional": true
+ },
+ "eslint-plugin-functional": {
+ "optional": true
+ },
+ "eslint-plugin-import-x": {
+ "optional": true
+ },
+ "eslint-plugin-jsdoc": {
+ "optional": true
+ },
+ "eslint-plugin-jsonc": {
+ "optional": true
+ },
+ "eslint-plugin-markdown": {
+ "optional": true
+ },
+ "eslint-plugin-n": {
+ "optional": true
+ },
+ "eslint-plugin-no-only-tests": {
+ "optional": true
+ },
+ "eslint-plugin-optimize-regex": {
+ "optional": true
+ },
+ "eslint-plugin-prettier": {
+ "optional": true
+ },
+ "eslint-plugin-promise": {
+ "optional": true
+ },
+ "eslint-plugin-regexp": {
+ "optional": true
+ },
+ "eslint-plugin-sonarjs": {
+ "optional": true
+ },
+ "eslint-plugin-toml": {
+ "optional": true
+ },
+ "eslint-plugin-unicorn": {
+ "optional": true
+ },
+ "eslint-plugin-vitest": {
+ "optional": true
+ },
+ "eslint-plugin-vue": {
+ "optional": true
+ },
+ "eslint-plugin-yml": {
+ "optional": true
+ },
+ "eslint-processor-vue-blocks": {
+ "optional": true
+ },
+ "jsonc-eslint-parser": {
+ "optional": true
+ },
+ "prettier": {
+ "optional": true
+ },
+ "prettier-plugin-packagejson": {
+ "optional": true
+ },
+ "toml-eslint-parser": {
+ "optional": true
+ },
+ "vue-eslint-parser": {
+ "optional": true
+ },
+ "yaml-eslint-parser": {
+ "optional": true
+ }
},
- "packageManager": "pnpm@8.6.2",
+ "packageManager": "pnpm@9.6.0",
"engines": {
- "node": ">=18.12.1"
+ "node": ">=20.0.0"
}
}
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 74e932c3..ffdc834b 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -1,239 +1,4344 @@
-lockfileVersion: '6.0'
+lockfileVersion: '9.0'
settings:
autoInstallPeers: true
excludeLinksFromLockfile: false
-dependencies:
- deepmerge-ts:
- specifier: ^5.1.0
- version: 5.1.0
-
-devDependencies:
- '@commitlint/cli':
- specifier: 19.2.1
- version: 19.2.1(@types/node@18.11.9)(typescript@5.4.3)
- '@commitlint/config-conventional':
- specifier: 19.1.0
- version: 19.1.0
- '@cspell/dict-cryptocurrencies':
- specifier: 5.0.0
- version: 5.0.0
- '@rollup/plugin-commonjs':
- specifier: 25.0.7
- version: 25.0.7(rollup@4.13.0)
- '@rollup/plugin-node-resolve':
- specifier: 15.2.3
- version: 15.2.3(rollup@4.13.0)
- '@rollup/plugin-typescript':
- specifier: 11.1.6
- version: 11.1.6(rollup@4.13.0)(tslib@2.6.2)(typescript@5.4.3)
- '@semantic-release/changelog':
- specifier: 6.0.3
- version: 6.0.3(semantic-release@23.0.6)
- '@semantic-release/commit-analyzer':
- specifier: 12.0.0
- version: 12.0.0(semantic-release@23.0.6)
- '@semantic-release/git':
- specifier: 10.0.1
- version: 10.0.1(semantic-release@23.0.6)
- '@semantic-release/github':
- specifier: 10.0.2
- version: 10.0.2(semantic-release@23.0.6)
- '@semantic-release/npm':
- specifier: 12.0.0
- version: 12.0.0(semantic-release@23.0.6)
- '@semantic-release/release-notes-generator':
- specifier: 13.0.0
- version: 13.0.0(semantic-release@23.0.6)
- '@types/eslint':
- specifier: 8.56.6
- version: 8.56.6
- '@types/eslint-config-prettier':
- specifier: 6.11.3
- version: 6.11.3
- '@types/eslint-plugin-prettier':
- specifier: 3.1.3
- version: 3.1.3
- '@types/node':
- specifier: 18.11.9
- version: 18.11.9
- '@types/rollup-plugin-auto-external':
- specifier: 2.0.5
- version: 2.0.5
- '@typescript-eslint/eslint-plugin':
- specifier: 7.3.1
- version: 7.3.1(@typescript-eslint/parser@7.3.1)(eslint@9.6.0)(typescript@5.4.3)
- '@typescript-eslint/parser':
- specifier: 7.3.1
- version: 7.3.1(eslint@9.6.0)(typescript@5.4.3)
- commitizen:
- specifier: 4.3.0
- version: 4.3.0(@types/node@18.11.9)(typescript@5.4.3)
- cspell:
- specifier: 8.6.1
- version: 8.6.1
- cz-conventional-changelog:
- specifier: 3.3.0
- version: 3.3.0(@types/node@18.11.9)(typescript@5.4.3)
- eslint:
- specifier: 9.6.0
- version: 9.6.0
- eslint-config-prettier:
- specifier: 9.1.0
- version: 9.1.0(eslint@9.6.0)
- eslint-import-resolver-typescript:
- specifier: 3.6.1
- version: 3.6.1(@typescript-eslint/parser@7.3.1)(eslint-plugin-import@2.29.1)(eslint@9.6.0)
- eslint-plugin-eslint-comments:
- specifier: 3.2.0
- version: 3.2.0(eslint@9.6.0)
- eslint-plugin-functional:
- specifier: 6.3.0
- version: 6.3.0(eslint@9.6.0)(typescript@5.4.3)
- eslint-plugin-import:
- specifier: 2.29.1
- version: 2.29.1(@typescript-eslint/parser@7.3.1)(eslint-import-resolver-typescript@3.6.1)(eslint@9.6.0)
- eslint-plugin-jsdoc:
- specifier: 48.2.1
- version: 48.2.1(eslint@9.6.0)
- eslint-plugin-markdown:
- specifier: 3.0.1
- version: 3.0.1(eslint@9.6.0)
- eslint-plugin-n:
- specifier: 16.6.2
- version: 16.6.2(eslint@9.6.0)
- eslint-plugin-optimize-regex:
- specifier: 1.2.1
- version: 1.2.1
- eslint-plugin-prettier:
- specifier: 5.1.3
- version: 5.1.3(@types/eslint@8.56.6)(eslint-config-prettier@9.1.0)(eslint@9.6.0)(prettier@3.2.5)
- eslint-plugin-promise:
- specifier: 6.1.1
- version: 6.1.1(eslint@9.6.0)
- eslint-plugin-sonarjs:
- specifier: 0.24.0
- version: 0.24.0(eslint@9.6.0)
- eslint-plugin-unicorn:
- specifier: 51.0.1
- version: 51.0.1(eslint@9.6.0)
- husky:
- specifier: 9.0.11
- version: 9.0.11
- knip:
- specifier: 5.5.0
- version: 5.5.0(@types/node@18.11.9)(typescript@5.4.3)
- lint-staged:
- specifier: 15.2.2
- version: 15.2.2
- markdownlint-cli:
- specifier: 0.39.0
- version: 0.39.0
- prettier:
- specifier: 3.2.5
- version: 3.2.5
- prettier-plugin-packagejson:
- specifier: 2.4.12
- version: 2.4.12(prettier@3.2.5)
- rimraf:
- specifier: 5.0.5
- version: 5.0.5
- rollup:
- specifier: 4.13.0
- version: 4.13.0
- rollup-plugin-auto-external:
- specifier: 2.0.0
- version: 2.0.0(rollup@4.13.0)
- semantic-release:
- specifier: 23.0.6
- version: 23.0.6(typescript@5.4.3)
- ts-node:
- specifier: 10.9.2
- version: 10.9.2(@types/node@18.11.9)(typescript@5.4.3)
- tsconfig-paths:
- specifier: 4.2.0
- version: 4.2.0
- tslib:
- specifier: 2.6.2
- version: 2.6.2
- typescript:
- specifier: 5.4.3
- version: 5.4.3
+importers:
+
+ .:
+ dependencies:
+ '@antfu/install-pkg':
+ specifier: ^0.3.3
+ version: 0.3.3
+ '@clack/prompts':
+ specifier: ^0.7.0
+ version: 0.7.0
+ eslint-flat-config-utils:
+ specifier: ^0.3.0
+ version: 0.3.0
+ eslint-merge-processors:
+ specifier: ^0.1.0
+ version: 0.1.0(eslint@9.8.0)
+ globals:
+ specifier: ^15.9.0
+ version: 15.9.0
+ local-pkg:
+ specifier: ^0.5.0
+ version: 0.5.0
+ devDependencies:
+ '@commitlint/cli':
+ specifier: 19.3.0
+ version: 19.3.0(@types/node@22.1.0)(typescript@5.4.5)
+ '@commitlint/config-conventional':
+ specifier: 19.2.2
+ version: 19.2.2
+ '@cspell/dict-cryptocurrencies':
+ specifier: 5.0.0
+ version: 5.0.0
+ '@eslint/compat':
+ specifier: 1.1.1
+ version: 1.1.1
+ '@intlify/eslint-plugin-vue-i18n':
+ specifier: 3.0.0
+ version: 3.0.0(eslint@9.8.0)
+ '@semantic-release/changelog':
+ specifier: 6.0.3
+ version: 6.0.3(semantic-release@24.0.0(typescript@5.4.5))
+ '@semantic-release/commit-analyzer':
+ specifier: 13.0.0
+ version: 13.0.0(semantic-release@24.0.0(typescript@5.4.5))
+ '@semantic-release/git':
+ specifier: 10.0.1
+ version: 10.0.1(semantic-release@24.0.0(typescript@5.4.5))
+ '@semantic-release/github':
+ specifier: 10.1.3
+ version: 10.1.3(semantic-release@24.0.0(typescript@5.4.5))
+ '@semantic-release/npm':
+ specifier: 12.0.1
+ version: 12.0.1(semantic-release@24.0.0(typescript@5.4.5))
+ '@semantic-release/release-notes-generator':
+ specifier: 14.0.1
+ version: 14.0.1(semantic-release@24.0.0(typescript@5.4.5))
+ '@stylistic/eslint-plugin':
+ specifier: 2.6.1
+ version: 2.6.1(eslint@9.8.0)(typescript@5.4.5)
+ '@stylistic/eslint-plugin-migrate':
+ specifier: 2.6.1
+ version: 2.6.1(eslint@9.8.0)(typescript@5.4.5)
+ '@types/eslint':
+ specifier: 9.6.0
+ version: 9.6.0
+ '@types/node':
+ specifier: 22.1.0
+ version: 22.1.0
+ '@typescript-eslint/eslint-plugin':
+ specifier: 8.0.0
+ version: 8.0.0(@typescript-eslint/parser@8.0.0(eslint@9.8.0)(typescript@5.4.5))(eslint@9.8.0)(typescript@5.4.5)
+ '@typescript-eslint/parser':
+ specifier: 8.0.0
+ version: 8.0.0(eslint@9.8.0)(typescript@5.4.5)
+ '@typescript-eslint/utils':
+ specifier: 8.0.0
+ version: 8.0.0(eslint@9.8.0)(typescript@5.4.5)
+ '@unocss/eslint-plugin':
+ specifier: 0.61.9
+ version: 0.61.9(eslint@9.8.0)(typescript@5.4.5)
+ commitizen:
+ specifier: 4.3.0
+ version: 4.3.0(@types/node@22.1.0)(typescript@5.4.5)
+ cspell:
+ specifier: 8.13.1
+ version: 8.13.1
+ cz-conventional-changelog:
+ specifier: 3.3.0
+ version: 3.3.0(@types/node@22.1.0)(typescript@5.4.5)
+ deassert:
+ specifier: 1.0.2
+ version: 1.0.2(rollup@4.20.0)
+ eslint:
+ specifier: 9.8.0
+ version: 9.8.0
+ eslint-config-prettier:
+ specifier: 9.1.0
+ version: 9.1.0(eslint@9.8.0)
+ eslint-import-resolver-typescript:
+ specifier: 3.6.1
+ version: 3.6.1(@typescript-eslint/parser@8.0.0(eslint@9.8.0)(typescript@5.4.5))(eslint-plugin-import@2.29.1)(eslint@9.8.0)
+ eslint-plugin-eslint-comments:
+ specifier: 3.2.0
+ version: 3.2.0(eslint@9.8.0)
+ eslint-plugin-format:
+ specifier: 0.1.2
+ version: 0.1.2(eslint@9.8.0)
+ eslint-plugin-functional:
+ specifier: 7.0.0-rc.1
+ version: 7.0.0-rc.1(eslint@9.8.0)(typescript@5.4.5)
+ eslint-plugin-import-x:
+ specifier: 3.1.0
+ version: 3.1.0(eslint@9.8.0)(typescript@5.4.5)
+ eslint-plugin-jsdoc:
+ specifier: 48.11.0
+ version: 48.11.0(eslint@9.8.0)
+ eslint-plugin-jsonc:
+ specifier: 2.16.0
+ version: 2.16.0(eslint@9.8.0)
+ eslint-plugin-markdown:
+ specifier: 5.1.0
+ version: 5.1.0(eslint@9.8.0)
+ eslint-plugin-n:
+ specifier: 17.10.2
+ version: 17.10.2(eslint@9.8.0)
+ eslint-plugin-no-only-tests:
+ specifier: 3.1.0
+ version: 3.1.0
+ eslint-plugin-optimize-regex:
+ specifier: 1.2.1
+ version: 1.2.1
+ eslint-plugin-prettier:
+ specifier: 5.2.1
+ version: 5.2.1(@types/eslint@9.6.0)(eslint-config-prettier@9.1.0(eslint@9.8.0))(eslint@9.8.0)(prettier@3.3.3)
+ eslint-plugin-promise:
+ specifier: 7.0.0
+ version: 7.0.0(eslint@9.8.0)
+ eslint-plugin-regexp:
+ specifier: 2.6.0
+ version: 2.6.0(eslint@9.8.0)
+ eslint-plugin-sonarjs:
+ specifier: 1.0.4
+ version: 1.0.4(eslint@9.8.0)
+ eslint-plugin-toml:
+ specifier: 0.11.1
+ version: 0.11.1(eslint@9.8.0)
+ eslint-plugin-unicorn:
+ specifier: 55.0.0
+ version: 55.0.0(eslint@9.8.0)
+ eslint-plugin-vitest:
+ specifier: 0.5.4
+ version: 0.5.4(@typescript-eslint/eslint-plugin@8.0.0(@typescript-eslint/parser@8.0.0(eslint@9.8.0)(typescript@5.4.5))(eslint@9.8.0)(typescript@5.4.5))(eslint@9.8.0)(typescript@5.4.5)
+ eslint-plugin-vue:
+ specifier: 9.27.0
+ version: 9.27.0(eslint@9.8.0)
+ eslint-plugin-yml:
+ specifier: 1.14.0
+ version: 1.14.0(eslint@9.8.0)
+ eslint-processor-vue-blocks:
+ specifier: 0.1.2
+ version: 0.1.2(@vue/compiler-sfc@3.4.27)(eslint@9.8.0)
+ eslint-typegen:
+ specifier: 0.3.0
+ version: 0.3.0(eslint@9.8.0)
+ husky:
+ specifier: 9.1.4
+ version: 9.1.4
+ jiti:
+ specifier: 1.21.6
+ version: 1.21.6
+ jsonc-eslint-parser:
+ specifier: 2.4.0
+ version: 2.4.0
+ knip:
+ specifier: 5.27.0
+ version: 5.27.0(@types/node@22.1.0)(typescript@5.4.5)
+ lint-staged:
+ specifier: 15.2.8
+ version: 15.2.8
+ markdownlint:
+ specifier: 0.34.0
+ version: 0.34.0
+ markdownlint-cli:
+ specifier: 0.41.0
+ version: 0.41.0
+ prettier:
+ specifier: 3.3.3
+ version: 3.3.3
+ prettier-plugin-packagejson:
+ specifier: 2.5.1
+ version: 2.5.1(prettier@3.3.3)
+ rimraf:
+ specifier: 6.0.1
+ version: 6.0.1
+ rollup:
+ specifier: 4.20.0
+ version: 4.20.0
+ rollup-plugin-ts:
+ specifier: 3.4.5
+ version: 3.4.5(@babel/runtime@7.24.7)(rollup@4.20.0)(typescript@5.4.5)
+ semantic-release:
+ specifier: 24.0.0
+ version: 24.0.0(typescript@5.4.5)
+ toml-eslint-parser:
+ specifier: 0.10.0
+ version: 0.10.0
+ tsc-files:
+ specifier: 1.1.4
+ version: 1.1.4(typescript@5.4.5)
+ tsx:
+ specifier: 4.16.5
+ version: 4.16.5
+ typescript:
+ specifier: 5.4.5
+ version: 5.4.5
+ vue-eslint-parser:
+ specifier: 9.4.3
+ version: 9.4.3(eslint@9.8.0)
+ yaml-eslint-parser:
+ specifier: 1.2.3
+ version: 1.2.3
+
+packages:
+
+ '@antfu/install-pkg@0.3.3':
+ resolution: {integrity: sha512-nHHsk3NXQ6xkCfiRRC8Nfrg8pU5kkr3P3Y9s9dKqiuRmBD0Yap7fymNDjGFKeWhZQHqqbCS5CfeMy9wtExM24w==}
+
+ '@antfu/utils@0.7.10':
+ resolution: {integrity: sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==}
+
+ '@apidevtools/json-schema-ref-parser@11.6.4':
+ resolution: {integrity: sha512-9K6xOqeevacvweLGik6LnZCb1fBtCOSIWQs8d096XGeqoLKC33UVMGz9+77Gw44KvbH4pKcQPWo4ZpxkXYj05w==}
+ engines: {node: '>= 16'}
+
+ '@babel/code-frame@7.24.7':
+ resolution: {integrity: sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-string-parser@7.24.7':
+ resolution: {integrity: sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-validator-identifier@7.24.7':
+ resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/highlight@7.24.7':
+ resolution: {integrity: sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/parser@7.24.7':
+ resolution: {integrity: sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==}
+ engines: {node: '>=6.0.0'}
+ hasBin: true
+
+ '@babel/runtime@7.24.7':
+ resolution: {integrity: sha512-UwgBRMjJP+xv857DCngvqXI3Iq6J4v0wXmwc6sapg+zyhbwmQX67LUEFrkK5tbyJ30jGuG3ZvWpBiB9LCy1kWw==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/types@7.24.7':
+ resolution: {integrity: sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==}
+ engines: {node: '>=6.9.0'}
+
+ '@clack/core@0.3.4':
+ resolution: {integrity: sha512-H4hxZDXgHtWTwV3RAVenqcC4VbJZNegbBjlPvzOzCouXtS2y3sDvlO3IsbrPNWuLWPPlYVYPghQdSF64683Ldw==}
+
+ '@clack/prompts@0.7.0':
+ resolution: {integrity: sha512-0MhX9/B4iL6Re04jPrttDm+BsP8y6mS7byuv0BvXgdXhbV5PdlsHt55dvNsuBCPZ7xq1oTAOOuotR9NFbQyMSA==}
+ bundledDependencies:
+ - is-unicode-supported
+
+ '@colors/colors@1.5.0':
+ resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==}
+ engines: {node: '>=0.1.90'}
+
+ '@commitlint/cli@19.3.0':
+ resolution: {integrity: sha512-LgYWOwuDR7BSTQ9OLZ12m7F/qhNY+NpAyPBgo4YNMkACE7lGuUnuQq1yi9hz1KA4+3VqpOYl8H1rY/LYK43v7g==}
+ engines: {node: '>=v18'}
+ hasBin: true
+
+ '@commitlint/config-conventional@19.2.2':
+ resolution: {integrity: sha512-mLXjsxUVLYEGgzbxbxicGPggDuyWNkf25Ht23owXIH+zV2pv1eJuzLK3t1gDY5Gp6pxdE60jZnWUY5cvgL3ufw==}
+ engines: {node: '>=v18'}
+
+ '@commitlint/config-validator@19.0.3':
+ resolution: {integrity: sha512-2D3r4PKjoo59zBc2auodrSCaUnCSALCx54yveOFwwP/i2kfEAQrygwOleFWswLqK0UL/F9r07MFi5ev2ohyM4Q==}
+ engines: {node: '>=v18'}
+
+ '@commitlint/ensure@19.0.3':
+ resolution: {integrity: sha512-SZEpa/VvBLoT+EFZVb91YWbmaZ/9rPH3ESrINOl0HD2kMYsjvl0tF7nMHh0EpTcv4+gTtZBAe1y/SS6/OhfZzQ==}
+ engines: {node: '>=v18'}
+
+ '@commitlint/execute-rule@19.0.0':
+ resolution: {integrity: sha512-mtsdpY1qyWgAO/iOK0L6gSGeR7GFcdW7tIjcNFxcWkfLDF5qVbPHKuGATFqRMsxcO8OUKNj0+3WOHB7EHm4Jdw==}
+ engines: {node: '>=v18'}
+
+ '@commitlint/format@19.3.0':
+ resolution: {integrity: sha512-luguk5/aF68HiF4H23ACAfk8qS8AHxl4LLN5oxPc24H+2+JRPsNr1OS3Gaea0CrH7PKhArBMKBz5RX9sA5NtTg==}
+ engines: {node: '>=v18'}
+
+ '@commitlint/is-ignored@19.2.2':
+ resolution: {integrity: sha512-eNX54oXMVxncORywF4ZPFtJoBm3Tvp111tg1xf4zWXGfhBPKpfKG6R+G3G4v5CPlRROXpAOpQ3HMhA9n1Tck1g==}
+ engines: {node: '>=v18'}
+
+ '@commitlint/lint@19.2.2':
+ resolution: {integrity: sha512-xrzMmz4JqwGyKQKTpFzlN0dx0TAiT7Ran1fqEBgEmEj+PU98crOFtysJgY+QdeSagx6EDRigQIXJVnfrI0ratA==}
+ engines: {node: '>=v18'}
+
+ '@commitlint/load@19.2.0':
+ resolution: {integrity: sha512-XvxxLJTKqZojCxaBQ7u92qQLFMMZc4+p9qrIq/9kJDy8DOrEa7P1yx7Tjdc2u2JxIalqT4KOGraVgCE7eCYJyQ==}
+ engines: {node: '>=v18'}
+
+ '@commitlint/message@19.0.0':
+ resolution: {integrity: sha512-c9czf6lU+9oF9gVVa2lmKaOARJvt4soRsVmbR7Njwp9FpbBgste5i7l/2l5o8MmbwGh4yE1snfnsy2qyA2r/Fw==}
+ engines: {node: '>=v18'}
+
+ '@commitlint/parse@19.0.3':
+ resolution: {integrity: sha512-Il+tNyOb8VDxN3P6XoBBwWJtKKGzHlitEuXA5BP6ir/3loWlsSqDr5aecl6hZcC/spjq4pHqNh0qPlfeWu38QA==}
+ engines: {node: '>=v18'}
+
+ '@commitlint/read@19.2.1':
+ resolution: {integrity: sha512-qETc4+PL0EUv7Q36lJbPG+NJiBOGg7SSC7B5BsPWOmei+Dyif80ErfWQ0qXoW9oCh7GTpTNRoaVhiI8RbhuaNw==}
+ engines: {node: '>=v18'}
+
+ '@commitlint/resolve-extends@19.1.0':
+ resolution: {integrity: sha512-z2riI+8G3CET5CPgXJPlzftH+RiWYLMYv4C9tSLdLXdr6pBNimSKukYP9MS27ejmscqCTVA4almdLh0ODD2KYg==}
+ engines: {node: '>=v18'}
+
+ '@commitlint/rules@19.0.3':
+ resolution: {integrity: sha512-TspKb9VB6svklxNCKKwxhELn7qhtY1rFF8ls58DcFd0F97XoG07xugPjjbVnLqmMkRjZDbDIwBKt9bddOfLaPw==}
+ engines: {node: '>=v18'}
+
+ '@commitlint/to-lines@19.0.0':
+ resolution: {integrity: sha512-vkxWo+VQU5wFhiP9Ub9Sre0FYe019JxFikrALVoD5UGa8/t3yOJEpEhxC5xKiENKKhUkTpEItMTRAjHw2SCpZw==}
+ engines: {node: '>=v18'}
+
+ '@commitlint/top-level@19.0.0':
+ resolution: {integrity: sha512-KKjShd6u1aMGNkCkaX4aG1jOGdn7f8ZI8TR1VEuNqUOjWTOdcDSsmglinglJ18JTjuBX5I1PtjrhQCRcixRVFQ==}
+ engines: {node: '>=v18'}
+
+ '@commitlint/types@19.0.3':
+ resolution: {integrity: sha512-tpyc+7i6bPG9mvaBbtKUeghfyZSDgWquIDfMgqYtTbmZ9Y9VzEm2je9EYcQ0aoz5o7NvGS+rcDec93yO08MHYA==}
+ engines: {node: '>=v18'}
+
+ '@cspell/cspell-bundled-dicts@8.13.1':
+ resolution: {integrity: sha512-ylAwnIdxBMJ9v6BHpFAQFZM+5zbybLtqVQJG7zQePts4e0/Qr2xjYFbC3F+fovZqyXPIx24BR+S6gFJNO1OdAw==}
+ engines: {node: '>=18'}
+
+ '@cspell/cspell-json-reporter@8.13.1':
+ resolution: {integrity: sha512-vYZTBRkYjpNBifGNbYQsgIXesDEdUa9QAwllDcLZGKbhh5mY/C1ygPnAVpYDYiJNt1WCeIqW286DUyjRjkmHeA==}
+ engines: {node: '>=18'}
+
+ '@cspell/cspell-pipe@8.13.1':
+ resolution: {integrity: sha512-acLWTQv3yWfeWXMds/cfQKZapslOrLHVL4VDp4rFyL/EnfgaCr7Ew9hQ7zAIARY3r/n0dByqWbOt2HKthdhx/g==}
+ engines: {node: '>=18'}
+
+ '@cspell/cspell-resolver@8.13.1':
+ resolution: {integrity: sha512-EGdb7KLYCklV3sLxf/895b7s6sExh8DCHZFpDos2hjKwMt+F4ynsu1+ceybQtqoUF/MsyLoJXrrmPvV2uGVmUQ==}
+ engines: {node: '>=18'}
+
+ '@cspell/cspell-service-bus@8.13.1':
+ resolution: {integrity: sha512-oLFJfxuB1rwGXn3eD5qSF9nf0lHu6YjO0JcrjWhAZQ0r3AsO97gsX50wwCFCw6szVU3rd1cTUktW0KYEZUY6dA==}
+ engines: {node: '>=18'}
+
+ '@cspell/cspell-types@8.13.1':
+ resolution: {integrity: sha512-9dJdmyXLXJVesCJa/DWgwKsEC9p2RRFc6KORcLhNvtm1tE9TvCXiu5jV47sOmYXd6Hwan8IurBXXTz82CLVjPQ==}
+ engines: {node: '>=18'}
+
+ '@cspell/dict-ada@4.0.2':
+ resolution: {integrity: sha512-0kENOWQeHjUlfyId/aCM/mKXtkEgV0Zu2RhUXCBr4hHo9F9vph+Uu8Ww2b0i5a4ZixoIkudGA+eJvyxrG1jUpA==}
+
+ '@cspell/dict-aws@4.0.3':
+ resolution: {integrity: sha512-0C0RQ4EM29fH0tIYv+EgDQEum0QI6OrmjENC9u98pB8UcnYxGG/SqinuPxo+TgcEuInj0Q73MsBpJ1l5xUnrsw==}
+
+ '@cspell/dict-bash@4.1.3':
+ resolution: {integrity: sha512-tOdI3QVJDbQSwPjUkOiQFhYcu2eedmX/PtEpVWg0aFps/r6AyjUQINtTgpqMYnYuq8O1QUIQqnpx21aovcgZCw==}
+
+ '@cspell/dict-companies@3.1.3':
+ resolution: {integrity: sha512-qaAmfKtQLA7Sbe9zfFVpcwyG92cx6+EiWIpPURv11Ng2QMv2PKhYcterUJBooAvgqD0/qq+AsLN8MREloY5Mdw==}
+
+ '@cspell/dict-cpp@5.1.12':
+ resolution: {integrity: sha512-6lXLOFIa+k/qBcu0bjaE/Kc6v3sh9VhsDOXD1Dalm3zgd0QIMjp5XBmkpSdCAK3pWCPV0Se7ysVLDfCea1BuXg==}
+
+ '@cspell/dict-cryptocurrencies@5.0.0':
+ resolution: {integrity: sha512-Z4ARIw5+bvmShL+4ZrhDzGhnc9znaAGHOEMaB/GURdS/jdoreEDY34wdN0NtdLHDO5KO7GduZnZyqGdRoiSmYA==}
+
+ '@cspell/dict-csharp@4.0.2':
+ resolution: {integrity: sha512-1JMofhLK+4p4KairF75D3A924m5ERMgd1GvzhwK2geuYgd2ZKuGW72gvXpIV7aGf52E3Uu1kDXxxGAiZ5uVG7g==}
+
+ '@cspell/dict-css@4.0.12':
+ resolution: {integrity: sha512-vGBgPM92MkHQF5/2jsWcnaahOZ+C6OE/fPvd5ScBP72oFY9tn5GLuomcyO0z8vWCr2e0nUSX1OGimPtcQAlvSw==}
+
+ '@cspell/dict-dart@2.0.3':
+ resolution: {integrity: sha512-cLkwo1KT5CJY5N5RJVHks2genFkNCl/WLfj+0fFjqNR+tk3tBI1LY7ldr9piCtSFSm4x9pO1x6IV3kRUY1lLiw==}
+
+ '@cspell/dict-data-science@2.0.1':
+ resolution: {integrity: sha512-xeutkzK0eBe+LFXOFU2kJeAYO6IuFUc1g7iRLr7HeCmlC4rsdGclwGHh61KmttL3+YHQytYStxaRBdGAXWC8Lw==}
+
+ '@cspell/dict-django@4.1.0':
+ resolution: {integrity: sha512-bKJ4gPyrf+1c78Z0Oc4trEB9MuhcB+Yg+uTTWsvhY6O2ncFYbB/LbEZfqhfmmuK/XJJixXfI1laF2zicyf+l0w==}
+
+ '@cspell/dict-docker@1.1.7':
+ resolution: {integrity: sha512-XlXHAr822euV36GGsl2J1CkBIVg3fZ6879ZOg5dxTIssuhUOCiV2BuzKZmt6aIFmcdPmR14+9i9Xq+3zuxeX0A==}
+
+ '@cspell/dict-dotnet@5.0.2':
+ resolution: {integrity: sha512-UD/pO2A2zia/YZJ8Kck/F6YyDSpCMq0YvItpd4YbtDVzPREfTZ48FjZsbYi4Jhzwfvc6o8R56JusAE58P+4sNQ==}
+
+ '@cspell/dict-elixir@4.0.3':
+ resolution: {integrity: sha512-g+uKLWvOp9IEZvrIvBPTr/oaO6619uH/wyqypqvwpmnmpjcfi8+/hqZH8YNKt15oviK8k4CkINIqNhyndG9d9Q==}
+
+ '@cspell/dict-en-common-misspellings@2.0.3':
+ resolution: {integrity: sha512-8nF1z9nUiSgMyikL66HTbDO7jCGtB24TxKBasXIBwkBKMDZgA2M883iXdeByy6m1JJUcCGFkSftVYp2W0bUgjw==}
+
+ '@cspell/dict-en-gb@1.1.33':
+ resolution: {integrity: sha512-tKSSUf9BJEV+GJQAYGw5e+ouhEe2ZXE620S7BLKe3ZmpnjlNG9JqlnaBhkIMxKnNFkLY2BP/EARzw31AZnOv4g==}
+
+ '@cspell/dict-en_us@4.3.23':
+ resolution: {integrity: sha512-l0SoEQBsi3zDSl3OuL4/apBkxjuj4hLIg/oy6+gZ7LWh03rKdF6VNtSZNXWAmMY+pmb1cGA3ouleTiJIglbsIg==}
+
+ '@cspell/dict-filetypes@3.0.4':
+ resolution: {integrity: sha512-IBi8eIVdykoGgIv5wQhOURi5lmCNJq0we6DvqKoPQJHthXbgsuO1qrHSiUVydMiQl/XvcnUWTMeAlVUlUClnVg==}
+
+ '@cspell/dict-fonts@4.0.0':
+ resolution: {integrity: sha512-t9V4GeN/m517UZn63kZPUYP3OQg5f0OBLSd3Md5CU3eH1IFogSvTzHHnz4Wqqbv8NNRiBZ3HfdY/pqREZ6br3Q==}
+
+ '@cspell/dict-fsharp@1.0.1':
+ resolution: {integrity: sha512-23xyPcD+j+NnqOjRHgW3IU7Li912SX9wmeefcY0QxukbAxJ/vAN4rBpjSwwYZeQPAn3fxdfdNZs03fg+UM+4yQ==}
+
+ '@cspell/dict-fullstack@3.2.0':
+ resolution: {integrity: sha512-sIGQwU6G3rLTo+nx0GKyirR5dQSFeTIzFTOrURw51ISf+jKG9a3OmvsVtc2OANfvEAOLOC9Wfd8WYhmsO8KRDQ==}
+
+ '@cspell/dict-gaming-terms@1.0.5':
+ resolution: {integrity: sha512-C3riccZDD3d9caJQQs1+MPfrUrQ+0KHdlj9iUR1QD92FgTOF6UxoBpvHUUZ9YSezslcmpFQK4xQQ5FUGS7uWfw==}
+
+ '@cspell/dict-git@3.0.0':
+ resolution: {integrity: sha512-simGS/lIiXbEaqJu9E2VPoYW1OTC2xrwPPXNXFMa2uo/50av56qOuaxDrZ5eH1LidFXwoc8HROCHYeKoNrDLSw==}
+
+ '@cspell/dict-golang@6.0.9':
+ resolution: {integrity: sha512-etDt2WQauyEQDA+qPS5QtkYTb2I9l5IfQftAllVoB1aOrT6bxxpHvMEpJ0Hsn/vezxrCqa/BmtUbRxllIxIuSg==}
+
+ '@cspell/dict-google@1.0.1':
+ resolution: {integrity: sha512-dQr4M3n95uOhtloNSgB9tYYGXGGEGEykkFyRtfcp5pFuEecYUa0BSgtlGKx9RXVtJtKgR+yFT/a5uQSlt8WjqQ==}
+
+ '@cspell/dict-haskell@4.0.1':
+ resolution: {integrity: sha512-uRrl65mGrOmwT7NxspB4xKXFUenNC7IikmpRZW8Uzqbqcu7ZRCUfstuVH7T1rmjRgRkjcIjE4PC11luDou4wEQ==}
+
+ '@cspell/dict-html-symbol-entities@4.0.0':
+ resolution: {integrity: sha512-HGRu+48ErJjoweR5IbcixxETRewrBb0uxQBd6xFGcxbEYCX8CnQFTAmKI5xNaIt2PKaZiJH3ijodGSqbKdsxhw==}
+
+ '@cspell/dict-html@4.0.5':
+ resolution: {integrity: sha512-p0brEnRybzSSWi8sGbuVEf7jSTDmXPx7XhQUb5bgG6b54uj+Z0Qf0V2n8b/LWwIPJNd1GygaO9l8k3HTCy1h4w==}
+
+ '@cspell/dict-java@5.0.7':
+ resolution: {integrity: sha512-ejQ9iJXYIq7R09BScU2y5OUGrSqwcD+J5mHFOKbduuQ5s/Eh/duz45KOzykeMLI6KHPVxhBKpUPBWIsfewECpQ==}
+
+ '@cspell/dict-julia@1.0.1':
+ resolution: {integrity: sha512-4JsCLCRhhLMLiaHpmR7zHFjj1qOauzDI5ZzCNQS31TUMfsOo26jAKDfo0jljFAKgw5M2fEG7sKr8IlPpQAYrmQ==}
+
+ '@cspell/dict-k8s@1.0.6':
+ resolution: {integrity: sha512-srhVDtwrd799uxMpsPOQqeDJY+gEocgZpoK06EFrb4GRYGhv7lXo9Fb+xQMyQytzOW9dw4DNOEck++nacDuymg==}
+
+ '@cspell/dict-latex@4.0.0':
+ resolution: {integrity: sha512-LPY4y6D5oI7D3d+5JMJHK/wxYTQa2lJMSNxps2JtuF8hbAnBQb3igoWEjEbIbRRH1XBM0X8dQqemnjQNCiAtxQ==}
+
+ '@cspell/dict-lorem-ipsum@4.0.0':
+ resolution: {integrity: sha512-1l3yjfNvMzZPibW8A7mQU4kTozwVZVw0AvFEdy+NcqtbxH+TvbSkNMqROOFWrkD2PjnKG0+Ea0tHI2Pi6Gchnw==}
+
+ '@cspell/dict-lua@4.0.3':
+ resolution: {integrity: sha512-lDHKjsrrbqPaea13+G9s0rtXjMO06gPXPYRjRYawbNmo4E/e3XFfVzeci3OQDQNDmf2cPOwt9Ef5lu2lDmwfJg==}
+
+ '@cspell/dict-makefile@1.0.0':
+ resolution: {integrity: sha512-3W9tHPcSbJa6s0bcqWo6VisEDTSN5zOtDbnPabF7rbyjRpNo0uHXHRJQF8gAbFzoTzBBhgkTmrfSiuyQm7vBUQ==}
+
+ '@cspell/dict-monkeyc@1.0.6':
+ resolution: {integrity: sha512-oO8ZDu/FtZ55aq9Mb67HtaCnsLn59xvhO/t2mLLTHAp667hJFxpp7bCtr2zOrR1NELzFXmKln/2lw/PvxMSvrA==}
+
+ '@cspell/dict-node@5.0.1':
+ resolution: {integrity: sha512-lax/jGz9h3Dv83v8LHa5G0bf6wm8YVRMzbjJPG/9rp7cAGPtdrga+XANFq+B7bY5+jiSA3zvj10LUFCFjnnCCg==}
+
+ '@cspell/dict-npm@5.0.18':
+ resolution: {integrity: sha512-weMTyxWpzz19q4wv9n183BtFvdD5fCjtze+bFKpl+4rO/YlPhHL2cXLAeexJz/VDSBecwX4ybTZYoknd1h2J4w==}
+
+ '@cspell/dict-php@4.0.8':
+ resolution: {integrity: sha512-TBw3won4MCBQ2wdu7kvgOCR3dY2Tb+LJHgDUpuquy3WnzGiSDJ4AVelrZdE1xu7mjFJUr4q48aB21YT5uQqPZA==}
+
+ '@cspell/dict-powershell@5.0.5':
+ resolution: {integrity: sha512-3JVyvMoDJesAATYGOxcUWPbQPUvpZmkinV3m8HL1w1RrjeMVXXuK7U1jhopSneBtLhkU+9HKFwgh9l9xL9mY2Q==}
+
+ '@cspell/dict-public-licenses@2.0.7':
+ resolution: {integrity: sha512-KlBXuGcN3LE7tQi/GEqKiDewWGGuopiAD0zRK1QilOx5Co8XAvs044gk4MNIQftc8r0nHeUI+irJKLGcR36DIQ==}
+
+ '@cspell/dict-python@4.2.3':
+ resolution: {integrity: sha512-C1CPX9wwEGgcHv/p7KfjuIOp1G6KNyx5gWYweAd6/KPv+ZpeM1v572zFUTmpO8WDuAfKFf00nqYL8/GmCENWBw==}
+
+ '@cspell/dict-r@2.0.1':
+ resolution: {integrity: sha512-KCmKaeYMLm2Ip79mlYPc8p+B2uzwBp4KMkzeLd5E6jUlCL93Y5Nvq68wV5fRLDRTf7N1LvofkVFWfDcednFOgA==}
+
+ '@cspell/dict-ruby@5.0.2':
+ resolution: {integrity: sha512-cIh8KTjpldzFzKGgrqUX4bFyav5lC52hXDKo4LbRuMVncs3zg4hcSf4HtURY+f2AfEZzN6ZKzXafQpThq3dl2g==}
+
+ '@cspell/dict-rust@4.0.5':
+ resolution: {integrity: sha512-DIvlPRDemjKQy8rCqftAgGNZxY5Bg+Ps7qAIJjxkSjmMETyDgl0KTVuaJPt7EK4jJt6uCZ4ILy96npsHDPwoXA==}
+
+ '@cspell/dict-scala@5.0.3':
+ resolution: {integrity: sha512-4yGb4AInT99rqprxVNT9TYb1YSpq58Owzq7zi3ZS5T0u899Y4VsxsBiOgHnQ/4W+ygi+sp+oqef8w8nABR2lkg==}
+
+ '@cspell/dict-software-terms@4.0.3':
+ resolution: {integrity: sha512-65QAVMc3YlcI7PcqWRY5ox53tTWC8aktUZdJYCVs4VDBPUCTSDnTSmSreeg4F5Z468clv9KF/S0PkxbLjgW72A==}
+
+ '@cspell/dict-sql@2.1.3':
+ resolution: {integrity: sha512-SEyTNKJrjqD6PAzZ9WpdSu6P7wgdNtGV2RV8Kpuw1x6bV+YsSptuClYG+JSdRExBTE6LwIe1bTklejUp3ZP8TQ==}
+
+ '@cspell/dict-svelte@1.0.2':
+ resolution: {integrity: sha512-rPJmnn/GsDs0btNvrRBciOhngKV98yZ9SHmg8qI6HLS8hZKvcXc0LMsf9LLuMK1TmS2+WQFAan6qeqg6bBxL2Q==}
+
+ '@cspell/dict-swift@2.0.1':
+ resolution: {integrity: sha512-gxrCMUOndOk7xZFmXNtkCEeroZRnS2VbeaIPiymGRHj5H+qfTAzAKxtv7jJbVA3YYvEzWcVE2oKDP4wcbhIERw==}
+
+ '@cspell/dict-terraform@1.0.0':
+ resolution: {integrity: sha512-Ak+vy4HP/bOgzf06BAMC30+ZvL9mzv21xLM2XtfnBLTDJGdxlk/nK0U6QT8VfFLqJ0ZZSpyOxGsUebWDCTr/zQ==}
+
+ '@cspell/dict-typescript@3.1.6':
+ resolution: {integrity: sha512-1beC6O4P/j23VuxX+i0+F7XqPVc3hhiAzGJHEKqnWf5cWAXQtg0xz3xQJ5MvYx2a7iLaSa+lu7+05vG9UHyu9Q==}
+
+ '@cspell/dict-vue@3.0.0':
+ resolution: {integrity: sha512-niiEMPWPV9IeRBRzZ0TBZmNnkK3olkOPYxC1Ny2AX4TGlYRajcW0WUtoSHmvvjZNfWLSg2L6ruiBeuPSbjnG6A==}
+
+ '@cspell/dynamic-import@8.13.1':
+ resolution: {integrity: sha512-jMqJHWmQy+in99JMSFlaGV9P033gCx7DCZvGO/ZSeZ2EatrUTanJk3oTG1TZknZydb0nnxr1mgTWXN7PCAAXDg==}
+ engines: {node: '>=18.0'}
+
+ '@cspell/strong-weak-map@8.13.1':
+ resolution: {integrity: sha512-ga1ibI9ZLJWNszfP7e6qQ8gnoQOP9rE/clALMAim9ssO6cmMhEEm+i1ROH4nsDfThd6sVlUJ0IOtx5dEqPmWxw==}
+ engines: {node: '>=18'}
+
+ '@cspell/url@8.13.1':
+ resolution: {integrity: sha512-cCyojz5ovgGCexhez2urle4Q1UOEsp96lvl4pDmWNDHa/6n8dqiIn60SVzQIsAHzJ4yEV077RSaIrTlq/T+oSQ==}
+ engines: {node: '>=18.0'}
+
+ '@dprint/formatter@0.3.0':
+ resolution: {integrity: sha512-N9fxCxbaBOrDkteSOzaCqwWjso5iAe+WJPsHC021JfHNj2ThInPNEF13ORDKta3llq5D1TlclODCvOvipH7bWQ==}
+
+ '@dprint/markdown@0.17.1':
+ resolution: {integrity: sha512-Mk9C9tHHSScB3JOUd2PEP3keWnJZ8Kqcd99qaVhknzhxgZF/gGTx0CMyd+lpsIV+Moe+OtbRnqAjp+hKVtT1zQ==}
+
+ '@dprint/toml@0.6.2':
+ resolution: {integrity: sha512-Mk5unEANsL/L+WHYU3NpDXt1ARU5bNU5k5OZELxaJodDycKG6RoRnSlZXpW6+7UN2PSnETAFVUdKrh937ZwtHA==}
+
+ '@es-joy/jsdoccomment@0.46.0':
+ resolution: {integrity: sha512-C3Axuq1xd/9VqFZpW4YAzOx5O9q/LP46uIQy/iNDpHG3fmPa6TBtvfglMCs3RBiBxAIi0Go97r8+jvTt55XMyQ==}
+ engines: {node: '>=16'}
+
+ '@esbuild/aix-ppc64@0.21.5':
+ resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==}
+ engines: {node: '>=12'}
+ cpu: [ppc64]
+ os: [aix]
+
+ '@esbuild/android-arm64@0.21.5':
+ resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [android]
+
+ '@esbuild/android-arm@0.21.5':
+ resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==}
+ engines: {node: '>=12'}
+ cpu: [arm]
+ os: [android]
+
+ '@esbuild/android-x64@0.21.5':
+ resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [android]
+
+ '@esbuild/darwin-arm64@0.21.5':
+ resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [darwin]
+
+ '@esbuild/darwin-x64@0.21.5':
+ resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [darwin]
+
+ '@esbuild/freebsd-arm64@0.21.5':
+ resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [freebsd]
+
+ '@esbuild/freebsd-x64@0.21.5':
+ resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [freebsd]
+
+ '@esbuild/linux-arm64@0.21.5':
+ resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [linux]
+
+ '@esbuild/linux-arm@0.21.5':
+ resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==}
+ engines: {node: '>=12'}
+ cpu: [arm]
+ os: [linux]
+
+ '@esbuild/linux-ia32@0.21.5':
+ resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==}
+ engines: {node: '>=12'}
+ cpu: [ia32]
+ os: [linux]
+
+ '@esbuild/linux-loong64@0.21.5':
+ resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==}
+ engines: {node: '>=12'}
+ cpu: [loong64]
+ os: [linux]
+
+ '@esbuild/linux-mips64el@0.21.5':
+ resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==}
+ engines: {node: '>=12'}
+ cpu: [mips64el]
+ os: [linux]
+
+ '@esbuild/linux-ppc64@0.21.5':
+ resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==}
+ engines: {node: '>=12'}
+ cpu: [ppc64]
+ os: [linux]
+
+ '@esbuild/linux-riscv64@0.21.5':
+ resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==}
+ engines: {node: '>=12'}
+ cpu: [riscv64]
+ os: [linux]
+
+ '@esbuild/linux-s390x@0.21.5':
+ resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==}
+ engines: {node: '>=12'}
+ cpu: [s390x]
+ os: [linux]
+
+ '@esbuild/linux-x64@0.21.5':
+ resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [linux]
+
+ '@esbuild/netbsd-x64@0.21.5':
+ resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [netbsd]
+
+ '@esbuild/openbsd-x64@0.21.5':
+ resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [openbsd]
+
+ '@esbuild/sunos-x64@0.21.5':
+ resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [sunos]
+
+ '@esbuild/win32-arm64@0.21.5':
+ resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [win32]
+
+ '@esbuild/win32-ia32@0.21.5':
+ resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==}
+ engines: {node: '>=12'}
+ cpu: [ia32]
+ os: [win32]
+
+ '@esbuild/win32-x64@0.21.5':
+ resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [win32]
+
+ '@eslint-community/eslint-utils@4.4.0':
+ resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
+
+ '@eslint-community/regexpp@4.11.0':
+ resolution: {integrity: sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==}
+ engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
+
+ '@eslint-stylistic/metadata@2.6.1':
+ resolution: {integrity: sha512-cjM6wojoJbLCyZWyil8IwLnj+eAke7CIzenxJrKnHDe+NGUAbP9q3xQ5F5idgkFJfNhCwJ1WjwUpxJH7mptLWg==}
+
+ '@eslint/compat@1.1.1':
+ resolution: {integrity: sha512-lpHyRyplhGPL5mGEh6M9O5nnKk0Gz4bFI+Zu6tKlPpDUN7XshWvH9C/px4UVm87IAANE0W81CEsNGbS1KlzXpA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@eslint/config-array@0.17.1':
+ resolution: {integrity: sha512-BlYOpej8AQ8Ev9xVqroV7a02JK3SkBAaN9GfMMH9W6Ch8FlQlkjGw4Ir7+FgYwfirivAf4t+GtzuAxqfukmISA==}
+ 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.8.0':
+ resolution: {integrity: sha512-MfluB7EUfxXtv3i/++oh89uzAr4PDI4nn201hsp+qaXqsjAWzinlZEHEfPgAX4doIlKvPG/i0A9dpKxOLII8yA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@eslint/object-schema@2.1.4':
+ resolution: {integrity: sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.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==}
+ engines: {node: '>=18.18'}
+
+ '@intlify/core-base@9.13.1':
+ resolution: {integrity: sha512-+bcQRkJO9pcX8d0gel9ZNfrzU22sZFSA0WVhfXrf5jdJOS24a+Bp8pozuS9sBI9Hk/tGz83pgKfmqcn/Ci7/8w==}
+ engines: {node: '>= 16'}
+
+ '@intlify/eslint-plugin-vue-i18n@3.0.0':
+ resolution: {integrity: sha512-s4fe+VOiqMZGhDrXWnL1xLyHbcFWBcEBeD/KpVrkOtL+utH2LPTi7uZ8RvWSthMS0mUL/7L74hFJ//OUU7AYww==}
+ engines: {node: '>=18.0.0'}
+ peerDependencies:
+ eslint: ^8.0.0 || ^9.0.0-0
+
+ '@intlify/message-compiler@9.13.1':
+ resolution: {integrity: sha512-SKsVa4ajYGBVm7sHMXd5qX70O2XXjm55zdZB3VeMFCvQyvLew/dLvq3MqnaIsTMF1VkkOb9Ttr6tHcMlyPDL9w==}
+ engines: {node: '>= 16'}
+
+ '@intlify/shared@9.13.1':
+ resolution: {integrity: sha512-u3b6BKGhE6j/JeRU6C/RL2FgyJfy6LakbtfeVF8fJXURpZZTzfh3e05J0bu0XPw447Q6/WUp3C4ajv4TMS4YsQ==}
+ engines: {node: '>= 16'}
+
+ '@isaacs/cliui@8.0.2':
+ resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
+ engines: {node: '>=12'}
+
+ '@jridgewell/sourcemap-codec@1.5.0':
+ resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==}
+
+ '@jsdevtools/ez-spawn@3.0.4':
+ resolution: {integrity: sha512-f5DRIOZf7wxogefH03RjMPMdBF7ADTWUMoOs9kaJo06EfwF+aFhMZMDZxHg/Xe12hptN9xoZjGso2fdjapBRIA==}
+ engines: {node: '>=10'}
+
+ '@jsdevtools/ono@7.1.3':
+ resolution: {integrity: sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg==}
+
+ '@mdn/browser-compat-data@5.5.32':
+ resolution: {integrity: sha512-viN2VaUd1Hj2VpTDtKVT6LYfBnxzUgXJ+LSQfzuzaHa5mZBlvR3wSxMyUqbfywBbnIWHyKNwz6Yrcdpa4zEOZw==}
+
+ '@nodelib/fs.scandir@2.1.5':
+ resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
+ engines: {node: '>= 8'}
+
+ '@nodelib/fs.stat@2.0.5':
+ resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
+ engines: {node: '>= 8'}
+
+ '@nodelib/fs.walk@1.2.8':
+ resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
+ engines: {node: '>= 8'}
+
+ '@octokit/auth-token@5.1.1':
+ resolution: {integrity: sha512-rh3G3wDO8J9wSjfI436JUKzHIxq8NaiL0tVeB2aXmG6p/9859aUOAjA9pmSPNGGZxfwmaJ9ozOJImuNVJdpvbA==}
+ engines: {node: '>= 18'}
+
+ '@octokit/core@6.1.2':
+ resolution: {integrity: sha512-hEb7Ma4cGJGEUNOAVmyfdB/3WirWMg5hDuNFVejGEDFqupeOysLc2sG6HJxY2etBp5YQu5Wtxwi020jS9xlUwg==}
+ engines: {node: '>= 18'}
+
+ '@octokit/endpoint@10.1.1':
+ resolution: {integrity: sha512-JYjh5rMOwXMJyUpj028cu0Gbp7qe/ihxfJMLc8VZBMMqSwLgOxDI1911gV4Enl1QSavAQNJcwmwBF9M0VvLh6Q==}
+ engines: {node: '>= 18'}
+
+ '@octokit/graphql@8.1.1':
+ resolution: {integrity: sha512-ukiRmuHTi6ebQx/HFRCXKbDlOh/7xEV6QUXaE7MJEKGNAncGI/STSbOkl12qVXZrfZdpXctx5O9X1AIaebiDBg==}
+ engines: {node: '>= 18'}
+
+ '@octokit/openapi-types@22.2.0':
+ resolution: {integrity: sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg==}
+
+ '@octokit/plugin-paginate-rest@11.3.0':
+ resolution: {integrity: sha512-n4znWfRinnUQF6TPyxs7EctSAA3yVSP4qlJP2YgI3g9d4Ae2n5F3XDOjbUluKRxPU3rfsgpOboI4O4VtPc6Ilg==}
+ engines: {node: '>= 18'}
+ peerDependencies:
+ '@octokit/core': '>=6'
+
+ '@octokit/plugin-retry@7.1.1':
+ resolution: {integrity: sha512-G9Ue+x2odcb8E1XIPhaFBnTTIrrUDfXN05iFXiqhR+SeeeDMMILcAnysOsxUpEWcQp2e5Ft397FCXTcPkiPkLw==}
+ engines: {node: '>= 18'}
+ peerDependencies:
+ '@octokit/core': '>=6'
+
+ '@octokit/plugin-throttling@9.3.0':
+ resolution: {integrity: sha512-B5YTToSRTzNSeEyssnrT7WwGhpIdbpV9NKIs3KyTWHX6PhpYn7gqF/+lL3BvsASBM3Sg5BAUYk7KZx5p/Ec77w==}
+ engines: {node: '>= 18'}
+ peerDependencies:
+ '@octokit/core': ^6.0.0
+
+ '@octokit/request-error@6.1.1':
+ resolution: {integrity: sha512-1mw1gqT3fR/WFvnoVpY/zUM2o/XkMs/2AszUUG9I69xn0JFLv6PGkPhNk5lbfvROs79wiS0bqiJNxfCZcRJJdg==}
+ engines: {node: '>= 18'}
+
+ '@octokit/request@9.1.1':
+ resolution: {integrity: sha512-pyAguc0p+f+GbQho0uNetNQMmLG1e80WjkIaqqgUkihqUp0boRU6nKItXO4VWnr+nbZiLGEyy4TeKRwqaLvYgw==}
+ engines: {node: '>= 18'}
+
+ '@octokit/types@13.5.0':
+ resolution: {integrity: sha512-HdqWTf5Z3qwDVlzCrP8UJquMwunpDiMPt5er+QjGzL4hqr/vBVY/MauQgS1xWxCDT1oMx1EULyqxncdCY/NVSQ==}
+
+ '@pkgjs/parseargs@0.11.0':
+ resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
+ engines: {node: '>=14'}
+
+ '@pkgr/core@0.1.1':
+ resolution: {integrity: sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==}
+ engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
+
+ '@pnpm/config.env-replace@1.1.0':
+ resolution: {integrity: sha512-htyl8TWnKL7K/ESFa1oW2UB5lVDxuF5DpM7tBi6Hu2LNL3mWkIzNLG6N4zoCUP1lCKNxWy/3iu8mS8MvToGd6w==}
+ engines: {node: '>=12.22.0'}
+
+ '@pnpm/network.ca-file@1.0.2':
+ resolution: {integrity: sha512-YcPQ8a0jwYU9bTdJDpXjMi7Brhkr1mXsXrUJvjqM2mQDgkRiz8jFaQGOdaLxgjtUfQgZhKy/O3cG/YwmgKaxLA==}
+ engines: {node: '>=12.22.0'}
+
+ '@pnpm/npm-conf@2.2.2':
+ resolution: {integrity: sha512-UA91GwWPhFExt3IizW6bOeY/pQ0BkuNwKjk9iQW9KqxluGCrg4VenZ0/L+2Y0+ZOtme72EVvg6v0zo3AMQRCeA==}
+ engines: {node: '>=12'}
+
+ '@rollup/pluginutils@5.1.0':
+ resolution: {integrity: sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==}
+ engines: {node: '>=14.0.0'}
+ peerDependencies:
+ rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0
+ peerDependenciesMeta:
+ rollup:
+ optional: true
+
+ '@rollup/rollup-android-arm-eabi@4.20.0':
+ resolution: {integrity: sha512-TSpWzflCc4VGAUJZlPpgAJE1+V60MePDQnBd7PPkpuEmOy8i87aL6tinFGKBFKuEDikYpig72QzdT3QPYIi+oA==}
+ cpu: [arm]
+ os: [android]
+
+ '@rollup/rollup-android-arm64@4.20.0':
+ resolution: {integrity: sha512-u00Ro/nok7oGzVuh/FMYfNoGqxU5CPWz1mxV85S2w9LxHR8OoMQBuSk+3BKVIDYgkpeOET5yXkx90OYFc+ytpQ==}
+ cpu: [arm64]
+ os: [android]
+
+ '@rollup/rollup-darwin-arm64@4.20.0':
+ resolution: {integrity: sha512-uFVfvzvsdGtlSLuL0ZlvPJvl6ZmrH4CBwLGEFPe7hUmf7htGAN+aXo43R/V6LATyxlKVC/m6UsLb7jbG+LG39Q==}
+ cpu: [arm64]
+ os: [darwin]
+
+ '@rollup/rollup-darwin-x64@4.20.0':
+ resolution: {integrity: sha512-xbrMDdlev53vNXexEa6l0LffojxhqDTBeL+VUxuuIXys4x6xyvbKq5XqTXBCEUA8ty8iEJblHvFaWRJTk/icAQ==}
+ cpu: [x64]
+ os: [darwin]
+
+ '@rollup/rollup-linux-arm-gnueabihf@4.20.0':
+ resolution: {integrity: sha512-jMYvxZwGmoHFBTbr12Xc6wOdc2xA5tF5F2q6t7Rcfab68TT0n+r7dgawD4qhPEvasDsVpQi+MgDzj2faOLsZjA==}
+ cpu: [arm]
+ os: [linux]
+
+ '@rollup/rollup-linux-arm-musleabihf@4.20.0':
+ resolution: {integrity: sha512-1asSTl4HKuIHIB1GcdFHNNZhxAYEdqML/MW4QmPS4G0ivbEcBr1JKlFLKsIRqjSwOBkdItn3/ZDlyvZ/N6KPlw==}
+ cpu: [arm]
+ os: [linux]
+
+ '@rollup/rollup-linux-arm64-gnu@4.20.0':
+ resolution: {integrity: sha512-COBb8Bkx56KldOYJfMf6wKeYJrtJ9vEgBRAOkfw6Ens0tnmzPqvlpjZiLgkhg6cA3DGzCmLmmd319pmHvKWWlQ==}
+ cpu: [arm64]
+ os: [linux]
+
+ '@rollup/rollup-linux-arm64-musl@4.20.0':
+ resolution: {integrity: sha512-+it+mBSyMslVQa8wSPvBx53fYuZK/oLTu5RJoXogjk6x7Q7sz1GNRsXWjn6SwyJm8E/oMjNVwPhmNdIjwP135Q==}
+ cpu: [arm64]
+ os: [linux]
+
+ '@rollup/rollup-linux-powerpc64le-gnu@4.20.0':
+ resolution: {integrity: sha512-yAMvqhPfGKsAxHN8I4+jE0CpLWD8cv4z7CK7BMmhjDuz606Q2tFKkWRY8bHR9JQXYcoLfopo5TTqzxgPUjUMfw==}
+ cpu: [ppc64]
+ os: [linux]
+
+ '@rollup/rollup-linux-riscv64-gnu@4.20.0':
+ resolution: {integrity: sha512-qmuxFpfmi/2SUkAw95TtNq/w/I7Gpjurx609OOOV7U4vhvUhBcftcmXwl3rqAek+ADBwSjIC4IVNLiszoj3dPA==}
+ cpu: [riscv64]
+ os: [linux]
+
+ '@rollup/rollup-linux-s390x-gnu@4.20.0':
+ resolution: {integrity: sha512-I0BtGXddHSHjV1mqTNkgUZLnS3WtsqebAXv11D5BZE/gfw5KoyXSAXVqyJximQXNvNzUo4GKlCK/dIwXlz+jlg==}
+ cpu: [s390x]
+ os: [linux]
+
+ '@rollup/rollup-linux-x64-gnu@4.20.0':
+ resolution: {integrity: sha512-y+eoL2I3iphUg9tN9GB6ku1FA8kOfmF4oUEWhztDJ4KXJy1agk/9+pejOuZkNFhRwHAOxMsBPLbXPd6mJiCwew==}
+ cpu: [x64]
+ os: [linux]
+
+ '@rollup/rollup-linux-x64-musl@4.20.0':
+ resolution: {integrity: sha512-hM3nhW40kBNYUkZb/r9k2FKK+/MnKglX7UYd4ZUy5DJs8/sMsIbqWK2piZtVGE3kcXVNj3B2IrUYROJMMCikNg==}
+ cpu: [x64]
+ os: [linux]
+
+ '@rollup/rollup-win32-arm64-msvc@4.20.0':
+ resolution: {integrity: sha512-psegMvP+Ik/Bg7QRJbv8w8PAytPA7Uo8fpFjXyCRHWm6Nt42L+JtoqH8eDQ5hRP7/XW2UiIriy1Z46jf0Oa1kA==}
+ cpu: [arm64]
+ os: [win32]
+
+ '@rollup/rollup-win32-ia32-msvc@4.20.0':
+ resolution: {integrity: sha512-GabekH3w4lgAJpVxkk7hUzUf2hICSQO0a/BLFA11/RMxQT92MabKAqyubzDZmMOC/hcJNlc+rrypzNzYl4Dx7A==}
+ cpu: [ia32]
+ os: [win32]
+
+ '@rollup/rollup-win32-x64-msvc@4.20.0':
+ resolution: {integrity: sha512-aJ1EJSuTdGnM6qbVC4B5DSmozPTqIag9fSzXRNNo+humQLG89XpPgdt16Ia56ORD7s+H8Pmyx44uczDQ0yDzpg==}
+ cpu: [x64]
+ os: [win32]
+
+ '@sec-ant/readable-stream@0.4.1':
+ resolution: {integrity: sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg==}
+
+ '@semantic-release/changelog@6.0.3':
+ resolution: {integrity: sha512-dZuR5qByyfe3Y03TpmCvAxCyTnp7r5XwtHRf/8vD9EAn4ZWbavUX8adMtXYzE86EVh0gyLA7lm5yW4IV30XUag==}
+ engines: {node: '>=14.17'}
+ peerDependencies:
+ semantic-release: '>=18.0.0'
+
+ '@semantic-release/commit-analyzer@13.0.0':
+ resolution: {integrity: sha512-KtXWczvTAB1ZFZ6B4O+w8HkfYm/OgQb1dUGNFZtDgQ0csggrmkq8sTxhd+lwGF8kMb59/RnG9o4Tn7M/I8dQ9Q==}
+ engines: {node: '>=20.8.1'}
+ peerDependencies:
+ semantic-release: '>=20.1.0'
+
+ '@semantic-release/error@3.0.0':
+ resolution: {integrity: sha512-5hiM4Un+tpl4cKw3lV4UgzJj+SmfNIDCLLw0TepzQxz9ZGV5ixnqkzIVF+3tp0ZHgcMKE+VNGHJjEeyFG2dcSw==}
+ engines: {node: '>=14.17'}
+
+ '@semantic-release/error@4.0.0':
+ resolution: {integrity: sha512-mgdxrHTLOjOddRVYIYDo0fR3/v61GNN1YGkfbrjuIKg/uMgCd+Qzo3UAXJ+woLQQpos4pl5Esuw5A7AoNlzjUQ==}
+ engines: {node: '>=18'}
+
+ '@semantic-release/git@10.0.1':
+ resolution: {integrity: sha512-eWrx5KguUcU2wUPaO6sfvZI0wPafUKAMNC18aXY4EnNcrZL86dEmpNVnC9uMpGZkmZJ9EfCVJBQx4pV4EMGT1w==}
+ engines: {node: '>=14.17'}
+ peerDependencies:
+ semantic-release: '>=18.0.0'
+
+ '@semantic-release/github@10.1.3':
+ resolution: {integrity: sha512-QVw7YT3J4VqyVjOnlRsFA3OCERAJHER4QbSPupbav3ER0fawrs2BAWbQFjsr24OAD4KTTKMZsVzF+GYFWCDtaQ==}
+ engines: {node: '>=20.8.1'}
+ peerDependencies:
+ semantic-release: '>=20.1.0'
+
+ '@semantic-release/npm@12.0.1':
+ resolution: {integrity: sha512-/6nntGSUGK2aTOI0rHPwY3ZjgY9FkXmEHbW9Kr+62NVOsyqpKKeP0lrCH+tphv+EsNdJNmqqwijTEnVWUMQ2Nw==}
+ engines: {node: '>=20.8.1'}
+ peerDependencies:
+ semantic-release: '>=20.1.0'
+
+ '@semantic-release/release-notes-generator@14.0.1':
+ resolution: {integrity: sha512-K0w+5220TM4HZTthE5dDpIuFrnkN1NfTGPidJFm04ULT1DEZ9WG89VNXN7F0c+6nMEpWgqmPvb7vY7JkB2jyyA==}
+ engines: {node: '>=20.8.1'}
+ peerDependencies:
+ semantic-release: '>=20.1.0'
+
+ '@sindresorhus/is@4.6.0':
+ resolution: {integrity: sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==}
+ engines: {node: '>=10'}
+
+ '@sindresorhus/merge-streams@2.3.0':
+ resolution: {integrity: sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==}
+ engines: {node: '>=18'}
+
+ '@sindresorhus/merge-streams@4.0.0':
+ resolution: {integrity: sha512-tlqY9xq5ukxTUZBmoOp+m61cqwQD5pHJtFY3Mn8CA8ps6yghLH/Hw8UPdqg4OLmFW3IFlcXnQNmo/dh8HzXYIQ==}
+ engines: {node: '>=18'}
+
+ '@snyk/github-codeowners@1.1.0':
+ resolution: {integrity: sha512-lGFf08pbkEac0NYgVf4hdANpAgApRjNByLXB+WBip3qj1iendOIyAwP2GKkKbQMNVy2r1xxDf0ssfWscoiC+Vw==}
+ engines: {node: '>=8.10'}
+ hasBin: true
+
+ '@stylistic/eslint-plugin-js@2.6.1':
+ resolution: {integrity: sha512-iLOiVzcvqzDGD9U0EuVOX680v+XOPiPAjkxWj+Q6iV2GLOM5NB27tKVOpJY7AzBhidwpRbaLTgg3T4UzYx09jw==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: '>=8.40.0'
+
+ '@stylistic/eslint-plugin-jsx@2.6.1':
+ resolution: {integrity: sha512-5qHLXqxfY6jubAQfDqrifv41fx7gaqA9svDaChxMI6JiHpEBfh+PXxmm3g+B8gJCYVBTC62Rjl0Ny5QabK58bw==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: '>=8.40.0'
+
+ '@stylistic/eslint-plugin-migrate@2.6.1':
+ resolution: {integrity: sha512-v4RID0iIaGTcPC304IYkV/J/BWQVupneH8oHs0vudKGLenicnGHFdURsruyoEKqBUwcIO+v7QNoizzVrrzqEUw==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@stylistic/eslint-plugin-plus@2.6.1':
+ resolution: {integrity: sha512-z/IYu/q8ipApzNam5utSU+BrXg4pK/Gv9xNbr4eWv/bZppvTWJU62xCO4nw/6r2dHNPnqc7uCHEC7GMlBnPY0A==}
+ peerDependencies:
+ eslint: '*'
+
+ '@stylistic/eslint-plugin-ts@2.6.1':
+ resolution: {integrity: sha512-Mxl1VMorEG1Hc6oBYPD0+KIJOWkjEF1R0liL7wWgKfwpqOkgmnh5lVdZBrYyfRKOE4RlGcwEFTNai1IW6orgVg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: '>=8.40.0'
+
+ '@stylistic/eslint-plugin@2.6.1':
+ resolution: {integrity: sha512-UT0f4t+3sQ/GKW7875NiIIjZJ1Bh4gd7JNfoIkwIQyWqO7wGd0Pqzu0Ho30Ka8MNF5lm++SkVeqAk26vGxoUpg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: '>=8.40.0'
+
+ '@types/conventional-commits-parser@5.0.0':
+ resolution: {integrity: sha512-loB369iXNmAZglwWATL+WRe+CRMmmBPtpolYzIebFaX4YA3x+BEfLqhUAV9WanycKI3TG1IMr5bMJDajDKLlUQ==}
+
+ '@types/eslint@9.6.0':
+ resolution: {integrity: sha512-gi6WQJ7cHRgZxtkQEoyHMppPjq9Kxo5Tjn2prSKDSmZrCz8TZ3jSRCeTJm+WoM+oB0WG37bRqLzaaU3q7JypGg==}
+
+ '@types/estree@1.0.5':
+ resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==}
+
+ '@types/json-schema@7.0.15':
+ resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==}
+
+ '@types/json5@0.0.29':
+ resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==}
+
+ '@types/mdast@3.0.15':
+ resolution: {integrity: sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==}
+
+ '@types/node@17.0.45':
+ resolution: {integrity: sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==}
+
+ '@types/node@22.1.0':
+ resolution: {integrity: sha512-AOmuRF0R2/5j1knA3c6G3HOk523Ga+l+ZXltX8SF1+5oqcXijjfTd8fY3XRZqSihEu9XhtQnKYLmkFaoxgsJHw==}
+
+ '@types/normalize-package-data@2.4.4':
+ resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==}
+
+ '@types/object-path@0.11.4':
+ resolution: {integrity: sha512-4tgJ1Z3elF/tOMpA8JLVuR9spt9Ynsf7+JjqsQ2IqtiPJtcLoHoXcT6qU4E10cPFqyXX5HDm9QwIzZhBSkLxsw==}
+
+ '@types/semver@7.5.8':
+ resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==}
+
+ '@types/ua-parser-js@0.7.39':
+ resolution: {integrity: sha512-P/oDfpofrdtF5xw433SPALpdSchtJmY7nsJItf8h3KXqOslkbySh8zq4dSWXH2oTjRvJ5PczVEoCZPow6GicLg==}
+
+ '@types/unist@2.0.10':
+ resolution: {integrity: sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==}
+
+ '@typescript-eslint/eslint-plugin@8.0.0':
+ resolution: {integrity: sha512-STIZdwEQRXAHvNUS6ILDf5z3u95Gc8jzywunxSNqX00OooIemaaNIA0vEgynJlycL5AjabYLLrIyHd4iazyvtg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0
+ eslint: ^8.57.0 || ^9.0.0
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@typescript-eslint/parser@8.0.0':
+ resolution: {integrity: sha512-pS1hdZ+vnrpDIxuFXYQpLTILglTjSYJ9MbetZctrUawogUsPdz31DIIRZ9+rab0LhYNTsk88w4fIzVheiTbWOQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^8.57.0 || ^9.0.0
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@typescript-eslint/scope-manager@7.18.0':
+ resolution: {integrity: sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==}
+ engines: {node: ^18.18.0 || >=20.0.0}
+
+ '@typescript-eslint/scope-manager@8.0.0':
+ resolution: {integrity: sha512-V0aa9Csx/ZWWv2IPgTfY7T4agYwJyILESu/PVqFtTFz9RIS823mAze+NbnBI8xiwdX3iqeQbcTYlvB04G9wyQw==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@typescript-eslint/type-utils@7.18.0':
+ resolution: {integrity: sha512-XL0FJXuCLaDuX2sYqZUUSOJ2sG5/i1AAze+axqmLnSkNEVMVYLF+cbwlB2w8D1tinFuSikHmFta+P+HOofrLeA==}
+ engines: {node: ^18.18.0 || >=20.0.0}
+ peerDependencies:
+ eslint: ^8.56.0
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@typescript-eslint/type-utils@8.0.0':
+ resolution: {integrity: sha512-mJAFP2mZLTBwAn5WI4PMakpywfWFH5nQZezUQdSKV23Pqo6o9iShQg1hP2+0hJJXP2LnZkWPphdIq4juYYwCeg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@typescript-eslint/types@7.18.0':
+ resolution: {integrity: sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==}
+ engines: {node: ^18.18.0 || >=20.0.0}
+
+ '@typescript-eslint/types@8.0.0':
+ resolution: {integrity: sha512-wgdSGs9BTMWQ7ooeHtu5quddKKs5Z5dS+fHLbrQI+ID0XWJLODGMHRfhwImiHoeO2S5Wir2yXuadJN6/l4JRxw==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@typescript-eslint/typescript-estree@7.18.0':
+ resolution: {integrity: sha512-aP1v/BSPnnyhMHts8cf1qQ6Q1IFwwRvAQGRvBFkWlo3/lH29OXA3Pts+c10nxRxIBrDnoMqzhgdwVe5f2D6OzA==}
+ engines: {node: ^18.18.0 || >=20.0.0}
+ peerDependencies:
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@typescript-eslint/typescript-estree@8.0.0':
+ resolution: {integrity: sha512-5b97WpKMX+Y43YKi4zVcCVLtK5F98dFls3Oxui8LbnmRsseKenbbDinmvxrWegKDMmlkIq/XHuyy0UGLtpCDKg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@typescript-eslint/utils@7.18.0':
+ resolution: {integrity: sha512-kK0/rNa2j74XuHVcoCZxdFBMF+aq/vH83CXAOHieC+2Gis4mF8jJXT5eAfyD3K0sAxtPuwxaIOIOvhwzVDt/kw==}
+ engines: {node: ^18.18.0 || >=20.0.0}
+ peerDependencies:
+ eslint: ^8.56.0
+
+ '@typescript-eslint/utils@8.0.0':
+ resolution: {integrity: sha512-k/oS/A/3QeGLRvOWCg6/9rATJL5rec7/5s1YmdS0ZU6LHveJyGFwBvLhSRBv6i9xaj7etmosp+l+ViN1I9Aj/Q==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^8.57.0 || ^9.0.0
+
+ '@typescript-eslint/visitor-keys@7.18.0':
+ resolution: {integrity: sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==}
+ engines: {node: ^18.18.0 || >=20.0.0}
+
+ '@typescript-eslint/visitor-keys@8.0.0':
+ resolution: {integrity: sha512-oN0K4nkHuOyF3PVMyETbpP5zp6wfyOvm7tWhTMfoqxSSsPmJIh6JNASuZDlODE8eE+0EB9uar+6+vxr9DBTYOA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@unocss/config@0.61.9':
+ resolution: {integrity: sha512-ATvZEFMQiW3/oUaaplVMBYuagEELtnLbHSYH4pUGbJ5MALAfV98mZRyk4FkKkYoMYqWLGdCylzpgMPFDOuFQlQ==}
+ engines: {node: '>=14'}
+
+ '@unocss/core@0.61.9':
+ resolution: {integrity: sha512-2W1YZQIWXcueGdbXU/ZCqn/8yQhWk8e8kAHFkVlbc9rictkd2UmPB9nIZ8Ii1tMwt6F0TT6vfHbLJEGCV08o2g==}
+
+ '@unocss/eslint-plugin@0.61.9':
+ resolution: {integrity: sha512-jgOym3WyWXAWyjkrtIZurkl87XuWAwhN8mul8V4mokpFMB5y6VMlatCYql/dD0tIyZuFJujxfWvUkizqyE84aQ==}
+ engines: {node: '>=14'}
+
+ '@vue/compiler-core@3.4.27':
+ resolution: {integrity: sha512-E+RyqY24KnyDXsCuQrI+mlcdW3ALND6U7Gqa/+bVwbcpcR3BRRIckFoz7Qyd4TTlnugtwuI7YgjbvsLmxb+yvg==}
+
+ '@vue/compiler-dom@3.4.27':
+ resolution: {integrity: sha512-kUTvochG/oVgE1w5ViSr3KUBh9X7CWirebA3bezTbB5ZKBQZwR2Mwj9uoSKRMFcz4gSMzzLXBPD6KpCLb9nvWw==}
+
+ '@vue/compiler-sfc@3.4.27':
+ resolution: {integrity: sha512-nDwntUEADssW8e0rrmE0+OrONwmRlegDA1pD6QhVeXxjIytV03yDqTey9SBDiALsvAd5U4ZrEKbMyVXhX6mCGA==}
+
+ '@vue/compiler-ssr@3.4.27':
+ resolution: {integrity: sha512-CVRzSJIltzMG5FcidsW0jKNQnNRYC8bT21VegyMMtHmhW3UOI7knmUehzswXLrExDLE6lQCZdrhD4ogI7c+vuw==}
+
+ '@vue/shared@3.4.27':
+ resolution: {integrity: sha512-DL3NmY2OFlqmYYrzp39yi3LDkKxa5vZVwxWdQ3rG0ekuWscHraeIbnI8t+aZK7qhYqEqWKTUdijadunb9pnrgA==}
+
+ '@wessberg/stringutil@1.0.19':
+ resolution: {integrity: sha512-9AZHVXWlpN8Cn9k5BC/O0Dzb9E9xfEMXzYrNunwvkUTvuK7xgQPVRZpLo+jWCOZ5r8oBa8NIrHuPEu1hzbb6bg==}
+ engines: {node: '>=8.0.0'}
+
+ JSONStream@1.3.5:
+ resolution: {integrity: sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==}
+ hasBin: true
+
+ acorn-jsx@5.3.2:
+ resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
+ peerDependencies:
+ acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
+
+ acorn-walk@8.3.2:
+ resolution: {integrity: sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==}
+ engines: {node: '>=0.4.0'}
+
+ acorn@8.12.1:
+ resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==}
+ engines: {node: '>=0.4.0'}
+ hasBin: true
+
+ agent-base@7.1.1:
+ resolution: {integrity: sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==}
+ engines: {node: '>= 14'}
+
+ aggregate-error@3.1.0:
+ resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==}
+ engines: {node: '>=8'}
+
+ aggregate-error@5.0.0:
+ resolution: {integrity: sha512-gOsf2YwSlleG6IjRYG2A7k0HmBMEo6qVNk9Bp/EaLgAJT5ngH6PXbqa4ItvnEwCm/velL5jAnQgsHsWnjhGmvw==}
+ engines: {node: '>=18'}
+
+ ajv@6.12.6:
+ resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==}
+
+ ajv@8.16.0:
+ resolution: {integrity: sha512-F0twR8U1ZU67JIEtekUcLkXkoO5mMMmgGD8sK/xUFzJ805jxHQl92hImFAqqXMyMYjSPOyUPAwHYhB72g5sTXw==}
+
+ ansi-colors@4.1.3:
+ resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==}
+ engines: {node: '>=6'}
+
+ ansi-escapes@4.3.2:
+ resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==}
+ engines: {node: '>=8'}
+
+ ansi-escapes@6.2.1:
+ resolution: {integrity: sha512-4nJ3yixlEthEJ9Rk4vPcdBRkZvQZlYyu8j4/Mqz5sgIkddmEnH2Yj2ZrnP9S3tQOvSNRUIgVNF/1yPpRAGNRig==}
+ engines: {node: '>=14.16'}
+
+ ansi-escapes@7.0.0:
+ resolution: {integrity: sha512-GdYO7a61mR0fOlAsvC9/rIHf7L96sBc6dEWzeOu+KAea5bZyQRPIpojrVoI4AXGJS/ycu/fBTdLrUkA4ODrvjw==}
+ engines: {node: '>=18'}
+
+ ansi-regex@5.0.1:
+ resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
+ engines: {node: '>=8'}
+
+ ansi-regex@6.0.1:
+ resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==}
+ engines: {node: '>=12'}
+
+ ansi-styles@3.2.1:
+ resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==}
+ engines: {node: '>=4'}
+
+ ansi-styles@4.3.0:
+ resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
+ engines: {node: '>=8'}
+
+ ansi-styles@6.2.1:
+ resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==}
+ engines: {node: '>=12'}
+
+ any-promise@1.3.0:
+ resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==}
+
+ are-docs-informative@0.0.2:
+ resolution: {integrity: sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig==}
+ engines: {node: '>=14'}
+
+ argparse@2.0.1:
+ resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
+
+ argv-formatter@1.0.0:
+ resolution: {integrity: sha512-F2+Hkm9xFaRg+GkaNnbwXNDV5O6pnCFEmqyhvfC/Ic5LbgOWjJh3L+mN/s91rxVL3znE7DYVpW0GJFT+4YBgWw==}
+
+ array-buffer-byte-length@1.0.1:
+ resolution: {integrity: sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==}
+ engines: {node: '>= 0.4'}
+
+ array-ify@1.0.0:
+ resolution: {integrity: sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==}
+
+ array-includes@3.1.8:
+ resolution: {integrity: sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==}
+ engines: {node: '>= 0.4'}
+
+ array-timsort@1.0.3:
+ resolution: {integrity: sha512-/+3GRL7dDAGEfM6TseQk/U+mi18TU2Ms9I3UlLdUMhz2hbvGNTKdj9xniwXfUqgYhHxRx0+8UnKkvlNwVU+cWQ==}
+
+ array-union@2.1.0:
+ resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==}
+ engines: {node: '>=8'}
+
+ array.prototype.findlastindex@1.2.5:
+ resolution: {integrity: sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==}
+ engines: {node: '>= 0.4'}
+
+ array.prototype.flat@1.3.2:
+ resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==}
+ engines: {node: '>= 0.4'}
+
+ array.prototype.flatmap@1.3.2:
+ resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==}
+ engines: {node: '>= 0.4'}
+
+ arraybuffer.prototype.slice@1.0.3:
+ resolution: {integrity: sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==}
+ engines: {node: '>= 0.4'}
+
+ at-least-node@1.0.0:
+ resolution: {integrity: sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==}
+ engines: {node: '>= 4.0.0'}
+
+ available-typed-arrays@1.0.7:
+ resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==}
+ engines: {node: '>= 0.4'}
+
+ balanced-match@1.0.2:
+ resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
+
+ base64-js@1.5.1:
+ resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==}
+
+ before-after-hook@3.0.2:
+ resolution: {integrity: sha512-Nik3Sc0ncrMK4UUdXQmAnRtzmNQTAAXmXIopizwZ1W1t8QmfJj+zL4OA2I7XPTPW5z5TDqv4hRo/JzouDJnX3A==}
+
+ bl@4.1.0:
+ resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==}
+
+ boolbase@1.0.0:
+ resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==}
+
+ bottleneck@2.19.5:
+ resolution: {integrity: sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==}
+
+ brace-expansion@1.1.11:
+ resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
+
+ brace-expansion@2.0.1:
+ resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==}
+
+ braces@3.0.3:
+ resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
+ engines: {node: '>=8'}
+
+ browserslist-generator@2.1.0:
+ resolution: {integrity: sha512-ZFz4mAOgqm0cbwKaZsfJbYDbTXGoPANlte7qRsRJOfjB9KmmISQrXJxAVrnXG8C8v/QHNzXyeJt0Cfcks6zZvQ==}
+ engines: {node: '>=16.15.1', npm: '>=7.0.0', pnpm: '>=3.2.0', yarn: '>=1.13'}
+
+ browserslist@4.23.1:
+ resolution: {integrity: sha512-TUfofFo/KsK/bWZ9TWQ5O26tsWW4Uhmt8IYklbnUa70udB6P2wA7w7o4PY4muaEPBQaAX+CEnmmIA41NVHtPVw==}
+ engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
+ hasBin: true
+
+ buffer@5.7.1:
+ resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==}
+
+ builtin-modules@3.3.0:
+ resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==}
+ engines: {node: '>=6'}
+
+ bundle-require@5.0.0:
+ resolution: {integrity: sha512-GuziW3fSSmopcx4KRymQEJVbZUfqlCqcq7dvs6TYwKRZiegK/2buMxQTPs6MGlNv50wms1699qYO54R8XfRX4w==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ peerDependencies:
+ esbuild: '>=0.18'
+
+ cachedir@2.3.0:
+ resolution: {integrity: sha512-A+Fezp4zxnit6FanDmv9EqXNAi3vt9DWp51/71UEhXukb7QUuvtv9344h91dyAxuTLoSYJFU299qzR3tzwPAhw==}
+ engines: {node: '>=6'}
+
+ call-bind@1.0.7:
+ resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==}
+ engines: {node: '>= 0.4'}
+
+ call-me-maybe@1.0.2:
+ resolution: {integrity: sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==}
+
+ callsites@3.1.0:
+ resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
+ engines: {node: '>=6'}
+
+ caniuse-lite@1.0.30001629:
+ resolution: {integrity: sha512-c3dl911slnQhmxUIT4HhYzT7wnBK/XYpGnYLOj4nJBaRiw52Ibe7YxlDaAeRECvA786zCuExhxIUJ2K7nHMrBw==}
+
+ chalk-template@1.1.0:
+ resolution: {integrity: sha512-T2VJbcDuZQ0Tb2EWwSotMPJjgpy1/tGee1BTpUNsGZ/qgNjV2t7Mvu+d4600U564nbLesN1x2dPL+xii174Ekg==}
+ engines: {node: '>=14.16'}
+
+ chalk@2.4.2:
+ resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
+ engines: {node: '>=4'}
+
+ chalk@4.1.2:
+ resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
+ engines: {node: '>=10'}
+
+ chalk@5.3.0:
+ resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==}
+ engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
+
+ char-regex@1.0.2:
+ resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==}
+ engines: {node: '>=10'}
+
+ character-entities-legacy@1.1.4:
+ resolution: {integrity: sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==}
+
+ character-entities@1.2.4:
+ resolution: {integrity: sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==}
+
+ character-reference-invalid@1.1.4:
+ resolution: {integrity: sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==}
+
+ chardet@0.7.0:
+ resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==}
+
+ ci-info@4.0.0:
+ resolution: {integrity: sha512-TdHqgGf9odd8SXNuxtUBVx8Nv+qZOejE6qyqiy5NtbYYQOeFa6zmHkxlPzmaLxWWHsU6nJmB7AETdVPi+2NBUg==}
+ engines: {node: '>=8'}
+
+ clean-regexp@1.0.0:
+ resolution: {integrity: sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==}
+ engines: {node: '>=4'}
+
+ clean-stack@2.2.0:
+ resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==}
+ engines: {node: '>=6'}
+
+ clean-stack@5.2.0:
+ resolution: {integrity: sha512-TyUIUJgdFnCISzG5zu3291TAsE77ddchd0bepon1VVQrKLGKFED4iXFEDQ24mIPdPBbyE16PK3F8MYE1CmcBEQ==}
+ engines: {node: '>=14.16'}
+
+ clear-module@4.1.2:
+ resolution: {integrity: sha512-LWAxzHqdHsAZlPlEyJ2Poz6AIs384mPeqLVCru2p0BrP9G/kVGuhNyZYClLO6cXlnuJjzC8xtsJIuMjKqLXoAw==}
+ engines: {node: '>=8'}
+
+ cli-cursor@3.1.0:
+ resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==}
+ engines: {node: '>=8'}
+
+ cli-cursor@5.0.0:
+ resolution: {integrity: sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==}
+ engines: {node: '>=18'}
+
+ cli-highlight@2.1.11:
+ resolution: {integrity: sha512-9KDcoEVwyUXrjcJNvHD0NFc/hiwe/WPVYIleQh2O1N2Zro5gWJZ/K+3DGn8w8P/F6FxOgzyC5bxDyHIgCSPhGg==}
+ engines: {node: '>=8.0.0', npm: '>=5.0.0'}
+ hasBin: true
+
+ cli-spinners@2.9.2:
+ resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==}
+ engines: {node: '>=6'}
+
+ cli-table3@0.6.5:
+ resolution: {integrity: sha512-+W/5efTR7y5HRD7gACw9yQjqMVvEMLBHmboM/kPWam+H+Hmyrgjh6YncVKK122YZkXrLudzTuAukUw9FnMf7IQ==}
+ engines: {node: 10.* || >= 12.*}
+
+ cli-truncate@4.0.0:
+ resolution: {integrity: sha512-nPdaFdQ0h/GEigbPClz11D0v/ZJEwxmeVZGeMo3Z5StPtUTkA9o1lD6QwoirYiSDzbcwn2XcjwmCp68W1IS4TA==}
+ engines: {node: '>=18'}
+
+ cli-width@3.0.0:
+ resolution: {integrity: sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==}
+ engines: {node: '>= 10'}
+
+ cliui@7.0.4:
+ resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==}
+
+ cliui@8.0.1:
+ resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
+ engines: {node: '>=12'}
+
+ clone@1.0.4:
+ resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==}
+ engines: {node: '>=0.8'}
+
+ color-convert@1.9.3:
+ resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==}
+
+ color-convert@2.0.1:
+ resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
+ engines: {node: '>=7.0.0'}
+
+ color-name@1.1.3:
+ resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==}
+
+ color-name@1.1.4:
+ resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
+
+ colorette@2.0.20:
+ resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==}
+
+ commander@12.1.0:
+ resolution: {integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==}
+ engines: {node: '>=18'}
+
+ commander@4.1.1:
+ resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==}
+ engines: {node: '>= 6'}
+
+ comment-json@4.2.4:
+ resolution: {integrity: sha512-E5AjpSW+O+N5T2GsOQMHLLsJvrYw6G/AFt9GvU6NguEAfzKShh7hRiLtVo6S9KbRpFMGqE5ojo0/hE+sdteWvQ==}
+ engines: {node: '>= 6'}
+
+ comment-parser@1.4.1:
+ resolution: {integrity: sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==}
+ engines: {node: '>= 12.0.0'}
+
+ commitizen@4.3.0:
+ resolution: {integrity: sha512-H0iNtClNEhT0fotHvGV3E9tDejDeS04sN1veIebsKYGMuGscFaswRoYJKmT3eW85eIJAs0F28bG2+a/9wCOfPw==}
+ engines: {node: '>= 12'}
+ hasBin: true
+
+ compare-func@2.0.0:
+ resolution: {integrity: sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==}
+
+ compatfactory@3.0.0:
+ resolution: {integrity: sha512-WD5kF7koPwVoyKL8p0LlrmIZtilrD46sQStyzzxzTFinMKN2Dxk1hN+sddLSQU1mGIZvQfU8c+ONSghvvM40jg==}
+ engines: {node: '>=14.9.0'}
+ peerDependencies:
+ typescript: '>=3.x || >= 4.x || >= 5.x'
+
+ concat-map@0.0.1:
+ resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
+
+ confbox@0.1.7:
+ resolution: {integrity: sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==}
+
+ config-chain@1.1.13:
+ resolution: {integrity: sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==}
+
+ conventional-changelog-angular@7.0.0:
+ resolution: {integrity: sha512-ROjNchA9LgfNMTTFSIWPzebCwOGFdgkEq45EnvvrmSLvCtAw0HSmrCs7/ty+wAeYUZyNay0YMUNYFTRL72PkBQ==}
+ engines: {node: '>=16'}
+
+ conventional-changelog-angular@8.0.0:
+ resolution: {integrity: sha512-CLf+zr6St0wIxos4bmaKHRXWAcsCXrJU6F4VdNDrGRK3B8LDLKoX3zuMV5GhtbGkVR/LohZ6MT6im43vZLSjmA==}
+ engines: {node: '>=18'}
+
+ conventional-changelog-conventionalcommits@7.0.2:
+ resolution: {integrity: sha512-NKXYmMR/Hr1DevQegFB4MwfM5Vv0m4UIxKZTTYuD98lpTknaZlSRrDOG4X7wIXpGkfsYxZTghUN+Qq+T0YQI7w==}
+ engines: {node: '>=16'}
+
+ conventional-changelog-writer@8.0.0:
+ resolution: {integrity: sha512-TQcoYGRatlAnT2qEWDON/XSfnVG38JzA7E0wcGScu7RElQBkg9WWgZd1peCWFcWDh1xfb2CfsrcvOn1bbSzztA==}
+ engines: {node: '>=18'}
+ hasBin: true
+
+ conventional-commit-types@3.0.0:
+ resolution: {integrity: sha512-SmmCYnOniSsAa9GqWOeLqc179lfr5TRu5b4QFDkbsrJ5TZjPJx85wtOr3zn+1dbeNiXDKGPbZ72IKbPhLXh/Lg==}
+
+ conventional-commits-filter@5.0.0:
+ resolution: {integrity: sha512-tQMagCOC59EVgNZcC5zl7XqO30Wki9i9J3acbUvkaosCT6JX3EeFwJD7Qqp4MCikRnzS18WXV3BLIQ66ytu6+Q==}
+ engines: {node: '>=18'}
+
+ conventional-commits-parser@5.0.0:
+ resolution: {integrity: sha512-ZPMl0ZJbw74iS9LuX9YIAiW8pfM5p3yh2o/NbXHbkFuZzY5jvdi5jFycEOkmBW5H5I7nA+D6f3UcsCLP2vvSEA==}
+ engines: {node: '>=16'}
+ hasBin: true
+
+ conventional-commits-parser@6.0.0:
+ resolution: {integrity: sha512-TbsINLp48XeMXR8EvGjTnKGsZqBemisPoyWESlpRyR8lif0lcwzqz+NMtYSj1ooF/WYjSuu7wX0CtdeeMEQAmA==}
+ engines: {node: '>=18'}
+ hasBin: true
+
+ convert-hrtime@5.0.0:
+ resolution: {integrity: sha512-lOETlkIeYSJWcbbcvjRKGxVMXJR+8+OQb/mTPbA4ObPMytYIsUbuOE0Jzy60hjARYszq1id0j8KgVhC+WGZVTg==}
+ engines: {node: '>=12'}
+
+ core-js-compat@3.37.1:
+ resolution: {integrity: sha512-9TNiImhKvQqSUkOvk/mMRZzOANTiEVC7WaBNhHcKM7x+/5E1l5NvsysR19zuDQScE8k+kfQXWRN3AtS/eOSHpg==}
+
+ core-util-is@1.0.3:
+ resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==}
+
+ cosmiconfig-typescript-loader@5.0.0:
+ resolution: {integrity: sha512-+8cK7jRAReYkMwMiG+bxhcNKiHJDM6bR9FD/nGBXOWdMLuYawjF5cGrtLilJ+LGd3ZjCXnJjR5DkfWPoIVlqJA==}
+ engines: {node: '>=v16'}
+ peerDependencies:
+ '@types/node': '*'
+ cosmiconfig: '>=8.2'
+ typescript: '>=4'
+
+ cosmiconfig@9.0.0:
+ resolution: {integrity: sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ typescript: '>=4.9.5'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ cross-spawn@7.0.3:
+ resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==}
+ engines: {node: '>= 8'}
+
+ crosspath@2.0.0:
+ resolution: {integrity: sha512-ju88BYCQ2uvjO2bR+SsgLSTwTSctU+6Vp2ePbKPgSCZyy4MWZxYsT738DlKVRE5utUjobjPRm1MkTYKJxCmpTA==}
+ engines: {node: '>=14.9.0'}
+
+ crypto-random-string@4.0.0:
+ resolution: {integrity: sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==}
+ engines: {node: '>=12'}
+
+ cspell-config-lib@8.13.1:
+ resolution: {integrity: sha512-sXUFOyxvk+qDkoQdFkVEqj1hfQWzMi+tbi6ksiotQaqpm7r+YitZLSgwJjN4xgDO/rTLyP70k9fagdZ67MVZbw==}
+ engines: {node: '>=18'}
+
+ cspell-dictionary@8.13.1:
+ resolution: {integrity: sha512-Z0T4J4ahOJaHmWq83w24KXGik1zeauO5WvDRyzDyaSgpbA5MN2hN98LvxaIx72g3I+trtRK77XFcKginuME9EA==}
+ engines: {node: '>=18'}
+
+ cspell-gitignore@8.13.1:
+ resolution: {integrity: sha512-XyZ3X5d6x0gkWtNXSAQRcPMG41bEdLx9cTgZCYCJhEZCesU1VpNm60F3oc11dMLkO+BqPH3An+AO/YEIiaje3A==}
+ engines: {node: '>=18'}
+ hasBin: true
+
+ cspell-glob@8.13.1:
+ resolution: {integrity: sha512-rW1A3t7YvPXxcC4z1pp1m9coeWzUVUmRjUw3vMNGlEDC2zecB39KKbEqesziBqnBceNAY7O5itllIGFKr03vqA==}
+ engines: {node: '>=18'}
+
+ cspell-grammar@8.13.1:
+ resolution: {integrity: sha512-HUkd24bulvBwee1UNBurxGlPUOiywb9pB34iXXoxFWuloHohZ/DuFlE8B/31ZtjW48ffEYIu3QZfWhcnD8e81w==}
+ engines: {node: '>=18'}
+ hasBin: true
+
+ cspell-io@8.13.1:
+ resolution: {integrity: sha512-t2sgZuWGBzPSOAStfvz/U3KoFEfDxEt1cXZj0Kd0Vs36v2uoLktm6ihMe7XNFu7zIdOFSajsYQ8Bi4RSLPGPxQ==}
+ engines: {node: '>=18'}
+
+ cspell-lib@8.13.1:
+ resolution: {integrity: sha512-H1HHG1pmATSeAaY0KmQ0xnkbSqJLvh9QpXWARDLWKUBvtE+/l44H4yVhIp/No3rM7PKMmb82GuSJzMaoIhHFLQ==}
+ engines: {node: '>=18'}
+
+ cspell-trie-lib@8.13.1:
+ resolution: {integrity: sha512-2moCsIYDmMT7hp5Non3CvWatfXptFWCuxjbXQGDNvWJ2Cj3oso/oBe4802GJv5GEenv9QBWmEtum/E7rFcx4JA==}
+ engines: {node: '>=18'}
+
+ cspell@8.13.1:
+ resolution: {integrity: sha512-Bqppilpwx9xt3jZPaYcqe1JPteNmfKhx9pw9YglZEePDUzdiJQNVIfs31589GAnXjgdqqctR8N87ffLcaBNPXw==}
+ engines: {node: '>=18'}
+ hasBin: true
+
+ cssesc@3.0.0:
+ resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==}
+ engines: {node: '>=4'}
+ hasBin: true
+
+ cz-conventional-changelog@3.3.0:
+ resolution: {integrity: sha512-U466fIzU5U22eES5lTNiNbZ+d8dfcHcssH4o7QsdWaCcRs/feIPCxKYSWkYBNs5mny7MvEfwpTLWjvbm94hecw==}
+ engines: {node: '>= 10'}
+
+ dargs@8.1.0:
+ resolution: {integrity: sha512-wAV9QHOsNbwnWdNW2FYvE1P56wtgSbM+3SZcdGiWQILwVjACCXDCI3Ai8QlCjMDB8YK5zySiXZYBiwGmNY3lnw==}
+ engines: {node: '>=12'}
+
+ data-view-buffer@1.0.1:
+ resolution: {integrity: sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==}
+ engines: {node: '>= 0.4'}
+
+ data-view-byte-length@1.0.1:
+ resolution: {integrity: sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==}
+ engines: {node: '>= 0.4'}
+
+ data-view-byte-offset@1.0.0:
+ resolution: {integrity: sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==}
+ engines: {node: '>= 0.4'}
+
+ deassert@1.0.2:
+ resolution: {integrity: sha512-cF1/OfxthRQkkC4vOGVT9fs0wuPWIBAPzEk/YI1XSq3JZdgSXmLW1aEegpNLq9VgypeAtmvI8vHiQ31YBK5vvQ==}
+ hasBin: true
+
+ debug@3.2.7:
+ resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==}
+ peerDependencies:
+ supports-color: '*'
+ peerDependenciesMeta:
+ supports-color:
+ optional: true
+
+ debug@4.3.6:
+ resolution: {integrity: sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==}
+ engines: {node: '>=6.0'}
+ peerDependencies:
+ supports-color: '*'
+ peerDependenciesMeta:
+ supports-color:
+ optional: true
+
+ dedent@0.7.0:
+ resolution: {integrity: sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==}
+
+ deep-extend@0.6.0:
+ resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==}
+ engines: {node: '>=4.0.0'}
+
+ deep-is@0.1.4:
+ resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
+
+ deepmerge-ts@7.1.0:
+ resolution: {integrity: sha512-q6bNsfNBtgr8ZOQqmZbl94MmYWm+QcDNIkqCxVWiw1vKvf+y/N2dZQKdnDXn4c5Ygt/y63tDof6OCN+2YwWVEg==}
+ engines: {node: '>=16.0.0'}
+
+ defaults@1.0.4:
+ resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==}
+
+ define-data-property@1.1.4:
+ resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==}
+ engines: {node: '>= 0.4'}
+
+ define-properties@1.2.1:
+ resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==}
+ engines: {node: '>= 0.4'}
+
+ defu@6.1.4:
+ resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==}
+
+ detect-file@1.0.0:
+ resolution: {integrity: sha512-DtCOLG98P007x7wiiOmfI0fi3eIKyWiLTGJ2MDnVi/E04lWGbf+JzrRHMm0rgIIZJGtHpKpbVgLWHrv8xXpc3Q==}
+ engines: {node: '>=0.10.0'}
+
+ detect-indent@6.1.0:
+ resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==}
+ engines: {node: '>=8'}
+
+ detect-indent@7.0.1:
+ resolution: {integrity: sha512-Mc7QhQ8s+cLrnUfU/Ji94vG/r8M26m8f++vyres4ZoojaRDpZ1eSIh/EpzLNwlWuvzSZ3UbDFspjFvTDXe6e/g==}
+ engines: {node: '>=12.20'}
+
+ detect-newline@4.0.1:
+ resolution: {integrity: sha512-qE3Veg1YXzGHQhlA6jzebZN2qVf6NX+A7m7qlhCGG30dJixrAQhYOsJjsnBjJkCSmuOPpCk30145fr8FV0bzog==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+ dir-glob@3.0.1:
+ resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
+ engines: {node: '>=8'}
+
+ doctrine@2.1.0:
+ resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==}
+ engines: {node: '>=0.10.0'}
+
+ doctrine@3.0.0:
+ resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==}
+ engines: {node: '>=6.0.0'}
+
+ dot-prop@5.3.0:
+ resolution: {integrity: sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==}
+ engines: {node: '>=8'}
+
+ duplexer2@0.1.4:
+ resolution: {integrity: sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==}
+
+ eastasianwidth@0.2.0:
+ resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
+
+ easy-table@1.2.0:
+ resolution: {integrity: sha512-OFzVOv03YpvtcWGe5AayU5G2hgybsg3iqA6drU8UaoZyB9jLGMTrz9+asnLp/E+6qPh88yEI1gvyZFZ41dmgww==}
+
+ electron-to-chromium@1.4.796:
+ resolution: {integrity: sha512-NglN/xprcM+SHD2XCli4oC6bWe6kHoytcyLKCWXmRL854F0qhPhaYgUswUsglnPxYaNQIg2uMY4BvaomIf3kLA==}
+
+ emoji-regex@10.3.0:
+ resolution: {integrity: sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw==}
+
+ emoji-regex@8.0.0:
+ resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
+
+ emoji-regex@9.2.2:
+ resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==}
+
+ emojilib@2.4.0:
+ resolution: {integrity: sha512-5U0rVMU5Y2n2+ykNLQqMoqklN9ICBT/KsvC1Gz6vqHbz2AXXGkG+Pm5rMWk/8Vjrr/mY9985Hi8DYzn1F09Nyw==}
+
+ enhanced-resolve@5.17.0:
+ resolution: {integrity: sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==}
+ engines: {node: '>=10.13.0'}
+
+ entities@4.5.0:
+ resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==}
+ engines: {node: '>=0.12'}
+
+ env-ci@11.0.0:
+ resolution: {integrity: sha512-apikxMgkipkgTvMdRT9MNqWx5VLOci79F4VBd7Op/7OPjjoanjdAvn6fglMCCEf/1bAh8eOiuEVCUs4V3qP3nQ==}
+ engines: {node: ^18.17 || >=20.6.1}
+
+ env-paths@2.2.1:
+ resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==}
+ engines: {node: '>=6'}
+
+ env-paths@3.0.0:
+ resolution: {integrity: sha512-dtJUTepzMW3Lm/NPxRf3wP4642UWhjL2sQxc+ym2YMj1m/H2zDNQOlezafzkHwn6sMstjHTwG6iQQsctDW/b1A==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+ environment@1.1.0:
+ resolution: {integrity: sha512-xUtoPkMggbz0MPyPiIWr1Kp4aeWJjDZ6SMvURhimjdZgsRuDplF5/s9hcgGhyXMhs+6vpnuoiZ2kFiu3FMnS8Q==}
+ engines: {node: '>=18'}
+
+ error-ex@1.3.2:
+ resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==}
+
+ es-abstract@1.23.3:
+ resolution: {integrity: sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==}
+ engines: {node: '>= 0.4'}
+
+ es-define-property@1.0.0:
+ resolution: {integrity: sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==}
+ engines: {node: '>= 0.4'}
+
+ es-errors@1.3.0:
+ resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==}
+ engines: {node: '>= 0.4'}
+
+ es-module-lexer@1.5.4:
+ resolution: {integrity: sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==}
+
+ es-object-atoms@1.0.0:
+ resolution: {integrity: sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==}
+ engines: {node: '>= 0.4'}
+
+ es-set-tostringtag@2.0.3:
+ resolution: {integrity: sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==}
+ engines: {node: '>= 0.4'}
+
+ es-shim-unscopables@1.0.2:
+ resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==}
+
+ es-to-primitive@1.2.1:
+ resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==}
+ engines: {node: '>= 0.4'}
+
+ esbuild@0.21.5:
+ resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==}
+ engines: {node: '>=12'}
+ hasBin: true
+
+ escalade@3.1.2:
+ resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==}
+ engines: {node: '>=6'}
+
+ escape-string-regexp@1.0.5:
+ resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
+ engines: {node: '>=0.8.0'}
+
+ escape-string-regexp@4.0.0:
+ resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
+ engines: {node: '>=10'}
+
+ escape-string-regexp@5.0.0:
+ resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==}
+ engines: {node: '>=12'}
+
+ eslint-compat-utils@0.5.1:
+ resolution: {integrity: sha512-3z3vFexKIEnjHE3zCMRo6fn/e44U7T1khUjg+Hp0ZQMCigh28rALD0nPFBcGZuiLC5rLZa2ubQHDRln09JfU2Q==}
+ engines: {node: '>=12'}
+ peerDependencies:
+ eslint: '>=6.0.0'
+
+ eslint-config-prettier@9.1.0:
+ resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==}
+ hasBin: true
+ peerDependencies:
+ eslint: '>=7.0.0'
+
+ eslint-flat-config-utils@0.3.0:
+ resolution: {integrity: sha512-FaFQLUunAl6YK7aU/pT23DXYVWg/cEHbSfxwAxpCGT6Su8H9RfkmzKLh1G2bba46p6dTlQeA4VTiV5//0SeToQ==}
+
+ eslint-formatting-reporter@0.0.0:
+ resolution: {integrity: sha512-k9RdyTqxqN/wNYVaTk/ds5B5rA8lgoAmvceYN7bcZMBwU7TuXx5ntewJv81eF3pIL/CiJE+pJZm36llG8yhyyw==}
+ peerDependencies:
+ eslint: '>=8.40.0'
+
+ eslint-import-resolver-node@0.3.9:
+ resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==}
+
+ eslint-import-resolver-typescript@3.6.1:
+ resolution: {integrity: sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==}
+ engines: {node: ^14.18.0 || >=16.0.0}
+ peerDependencies:
+ eslint: '*'
+ eslint-plugin-import: '*'
+
+ eslint-merge-processors@0.1.0:
+ resolution: {integrity: sha512-IvRXXtEajLeyssvW4wJcZ2etxkR9mUf4zpNwgI+m/Uac9RfXHskuJefkHUcawVzePnd6xp24enp5jfgdHzjRdQ==}
+ peerDependencies:
+ eslint: '*'
+
+ eslint-module-utils@2.8.1:
+ resolution: {integrity: sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==}
+ engines: {node: '>=4'}
+ peerDependencies:
+ '@typescript-eslint/parser': '*'
+ eslint: '*'
+ eslint-import-resolver-node: '*'
+ eslint-import-resolver-typescript: '*'
+ eslint-import-resolver-webpack: '*'
+ peerDependenciesMeta:
+ '@typescript-eslint/parser':
+ optional: true
+ eslint:
+ optional: true
+ eslint-import-resolver-node:
+ optional: true
+ eslint-import-resolver-typescript:
+ optional: true
+ eslint-import-resolver-webpack:
+ optional: true
+
+ eslint-parser-plain@0.1.0:
+ resolution: {integrity: sha512-oOeA6FWU0UJT/Rxc3XF5Cq0nbIZbylm7j8+plqq0CZoE6m4u32OXJrR+9iy4srGMmF6v6pmgvP1zPxSRIGh3sg==}
+
+ eslint-plugin-es-x@7.7.0:
+ resolution: {integrity: sha512-aP3qj8BwiEDPttxQkZdI221DLKq9sI/qHolE2YSQL1/9+xk7dTV+tB1Fz8/IaCA+lnLA1bDEnvaS2LKs0k2Uig==}
+ engines: {node: ^14.18.0 || >=16.0.0}
+ peerDependencies:
+ eslint: '>=8'
+
+ eslint-plugin-eslint-comments@3.2.0:
+ resolution: {integrity: sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==}
+ engines: {node: '>=6.5.0'}
+ peerDependencies:
+ eslint: '>=4.19.1'
+
+ eslint-plugin-format@0.1.2:
+ resolution: {integrity: sha512-ZrcO3aiumgJ6ENAv65IWkPjtW77ML/5mp0YrRK0jdvvaZJb+4kKWbaQTMr/XbJo6CtELRmCApAziEKh7L2NbdQ==}
+ peerDependencies:
+ eslint: ^8.40.0 || ^9.0.0
+
+ eslint-plugin-functional@7.0.0-rc.1:
+ resolution: {integrity: sha512-CNFH2sDr+NQ4RLYPJkZWKxK6tYL3t1Pr0TvzzykkOT1dk3SS8qMpDSSICm+nPTwXCTv1Y/FhGeWpzUqObJaRGw==}
+ engines: {node: '>=v18.18.0'}
+ peerDependencies:
+ eslint: ^9.0.0
+ typescript: '>=4.7.4'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ eslint-plugin-import-x@3.1.0:
+ resolution: {integrity: sha512-/UbPA+bYY7nIxcjL3kpcDY3UNdoLHFhyBFzHox2M0ypcUoueTn6woZUUmzzi5et/dXChksasYYFeKE2wshOrhg==}
+ engines: {node: '>=16'}
+ peerDependencies:
+ eslint: ^8.56.0 || ^9.0.0-0
+
+ eslint-plugin-import@2.29.1:
+ resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==}
+ engines: {node: '>=4'}
+ peerDependencies:
+ '@typescript-eslint/parser': '*'
+ eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8
+ peerDependenciesMeta:
+ '@typescript-eslint/parser':
+ optional: true
+
+ eslint-plugin-jsdoc@48.11.0:
+ resolution: {integrity: sha512-d12JHJDPNo7IFwTOAItCeJY1hcqoIxE0lHA8infQByLilQ9xkqrRa6laWCnsuCrf+8rUnvxXY1XuTbibRBNylA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ eslint: ^7.0.0 || ^8.0.0 || ^9.0.0
+
+ eslint-plugin-jsonc@2.16.0:
+ resolution: {integrity: sha512-Af/ZL5mgfb8FFNleH6KlO4/VdmDuTqmM+SPnWcdoWywTetv7kq+vQe99UyQb9XO3b0OWLVuTH7H0d/PXYCMdSg==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: '>=6.0.0'
+
+ eslint-plugin-markdown@5.1.0:
+ resolution: {integrity: sha512-SJeyKko1K6GwI0AN6xeCDToXDkfKZfXcexA6B+O2Wr2btUS9GrC+YgwSyVli5DJnctUHjFXcQ2cqTaAmVoLi2A==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: '>=8'
+
+ eslint-plugin-n@17.10.2:
+ resolution: {integrity: sha512-e+s4eAf5NtJaxPhTNu3qMO0Iz40WANS93w9LQgYcvuljgvDmWi/a3rh+OrNyMHeng6aOWGJO0rCg5lH4zi8yTw==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: '>=8.23.0'
+
+ eslint-plugin-no-only-tests@3.1.0:
+ resolution: {integrity: sha512-Lf4YW/bL6Un1R6A76pRZyE1dl1vr31G/ev8UzIc/geCgFWyrKil8hVjYqWVKGB/UIGmb6Slzs9T0wNezdSVegw==}
+ engines: {node: '>=5.0.0'}
+
+ eslint-plugin-optimize-regex@1.2.1:
+ resolution: {integrity: sha512-fUaU7Tj1G/KSTDTABJw4Wp427Rl7RPl9ViYTu1Jrv36fJw4DFhd4elPdXiuYtdPsNsvzn9GcVlKEssGIVjw0UQ==}
+ engines: {node: '>=10'}
+
+ eslint-plugin-prettier@5.2.1:
+ resolution: {integrity: sha512-gH3iR3g4JfF+yYPaJYkN7jEl9QbweL/YfkoRlNnuIEHEz1vHVlCmWOS+eGGiRuzHQXdJFCOTxRgvju9b8VUmrw==}
+ engines: {node: ^14.18.0 || >=16.0.0}
+ peerDependencies:
+ '@types/eslint': '>=8.0.0'
+ eslint: '>=8.0.0'
+ eslint-config-prettier: '*'
+ prettier: '>=3.0.0'
+ peerDependenciesMeta:
+ '@types/eslint':
+ optional: true
+ eslint-config-prettier:
+ optional: true
+
+ eslint-plugin-promise@7.0.0:
+ resolution: {integrity: sha512-wb1ECT+b90ndBdAujhIdAU8oQ3Vt5gKqP/t78KOmg0ifynrvc2jGR9f6ndbOVNFpKf6jLUBlBBDF3H3Wk0JICg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^7.0.0 || ^8.0.0 || ^9.0.0
+
+ eslint-plugin-regexp@2.6.0:
+ resolution: {integrity: sha512-FCL851+kislsTEQEMioAlpDuK5+E5vs0hi1bF8cFlPlHcEjeRhuAzEsGikXRreE+0j4WhW2uO54MqTjXtYOi3A==}
+ engines: {node: ^18 || >=20}
+ peerDependencies:
+ eslint: '>=8.44.0'
+
+ eslint-plugin-sonarjs@1.0.4:
+ resolution: {integrity: sha512-jF0eGCUsq/HzMub4ExAyD8x1oEgjOyB9XVytYGyWgSFvdiJQJp6IuP7RmtauCf06o6N/kZErh+zW4b10y1WZ+Q==}
+ engines: {node: '>=16'}
+ peerDependencies:
+ eslint: ^8.0.0 || ^9.0.0
+
+ eslint-plugin-toml@0.11.1:
+ resolution: {integrity: sha512-Y1WuMSzfZpeMIrmlP1nUh3kT8p96mThIq4NnHrYUhg10IKQgGfBZjAWnrg9fBqguiX4iFps/x/3Hb5TxBisfdw==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: '>=6.0.0'
+
+ eslint-plugin-unicorn@55.0.0:
+ resolution: {integrity: sha512-n3AKiVpY2/uDcGrS3+QsYDkjPfaOrNrsfQxU9nt5nitd9KuvVXrfAvgCO9DYPSfap+Gqjw9EOrXIsBp5tlHZjA==}
+ engines: {node: '>=18.18'}
+ peerDependencies:
+ eslint: '>=8.56.0'
+
+ eslint-plugin-vitest@0.5.4:
+ resolution: {integrity: sha512-um+odCkccAHU53WdKAw39MY61+1x990uXjSPguUCq3VcEHdqJrOb8OTMrbYlY6f9jAKx7x98kLVlIe3RJeJqoQ==}
+ engines: {node: ^18.0.0 || >= 20.0.0}
+ peerDependencies:
+ '@typescript-eslint/eslint-plugin': '*'
+ eslint: ^8.57.0 || ^9.0.0
+ vitest: '*'
+ peerDependenciesMeta:
+ '@typescript-eslint/eslint-plugin':
+ optional: true
+ vitest:
+ optional: true
+
+ eslint-plugin-vue@9.27.0:
+ resolution: {integrity: sha512-5Dw3yxEyuBSXTzT5/Ge1X5kIkRTQ3nvBn/VwPwInNiZBSJOO/timWMUaflONnFBzU6NhB68lxnCda7ULV5N7LA==}
+ engines: {node: ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: ^6.2.0 || ^7.0.0 || ^8.0.0 || ^9.0.0
+
+ eslint-plugin-yml@1.14.0:
+ resolution: {integrity: sha512-ESUpgYPOcAYQO9czugcX5OqRvn/ydDVwGCPXY4YjPqc09rHaUVUA6IE6HLQys4rXk/S+qx3EwTd1wHCwam/OWQ==}
+ engines: {node: ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: '>=6.0.0'
+
+ eslint-processor-vue-blocks@0.1.2:
+ resolution: {integrity: sha512-PfpJ4uKHnqeL/fXUnzYkOax3aIenlwewXRX8jFinA1a2yCFnLgMuiH3xvCgvHHUlV2xJWQHbCTdiJWGwb3NqpQ==}
+ peerDependencies:
+ '@vue/compiler-sfc': ^3.3.0
+ eslint: ^8.50.0 || ^9.0.0
+
+ eslint-scope@7.2.2:
+ resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+
+ eslint-scope@8.0.2:
+ resolution: {integrity: sha512-6E4xmrTw5wtxnLA5wYL3WDfhZ/1bUBGOXV0zQvVRDOtrR8D0p6W7fs3JweNYhwRYeGvd/1CKX2se0/2s7Q/nJA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ eslint-typegen@0.3.0:
+ resolution: {integrity: sha512-NXuFC16JBS8H11cD8DJcmSzpv2+MljyDvksSbx4ak5zXebk7SEFMIdk/idYGXgevs0Lz4BClYG7b4MtD0+tFVg==}
+ peerDependencies:
+ eslint: ^8.45.0 || ^9.0.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@9.8.0:
+ resolution: {integrity: sha512-K8qnZ/QJzT2dLKdZJVX6W4XOwBzutMYmt0lqUS+JdXgd+HTYFlonFgkJ8s44d/zMPPCnOOk0kMWCApCPhiOy9A==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ hasBin: 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@9.6.1:
+ resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+
+ esprima@4.0.1:
+ resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==}
+ engines: {node: '>=4'}
+ hasBin: true
+
+ esquery@1.6.0:
+ resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==}
+ engines: {node: '>=0.10'}
+
+ esrecurse@4.3.0:
+ resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==}
+ engines: {node: '>=4.0'}
+
+ estraverse@5.3.0:
+ resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
+ engines: {node: '>=4.0'}
+
+ estree-walker@2.0.2:
+ resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
+
+ esutils@2.0.3:
+ resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
+ engines: {node: '>=0.10.0'}
+
+ eventemitter3@5.0.1:
+ resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==}
+
+ execa@5.1.1:
+ resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==}
+ engines: {node: '>=10'}
+
+ execa@8.0.1:
+ resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==}
+ engines: {node: '>=16.17'}
+
+ execa@9.2.0:
+ resolution: {integrity: sha512-vpOyYg7UAVKLAWWtRS2gAdgkT7oJbCn0me3gmUmxZih4kd3MF/oo8kNTBTIbkO3yuuF5uB4ZCZfn8BOolITYhg==}
+ engines: {node: ^18.19.0 || >=20.5.0}
+
+ expand-tilde@2.0.2:
+ resolution: {integrity: sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw==}
+ engines: {node: '>=0.10.0'}
+
+ external-editor@3.1.0:
+ resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==}
+ engines: {node: '>=4'}
+
+ fast-deep-equal@3.1.3:
+ resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
+
+ fast-diff@1.3.0:
+ resolution: {integrity: sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==}
+
+ fast-equals@5.0.1:
+ resolution: {integrity: sha512-WF1Wi8PwwSY7/6Kx0vKXtw8RwuSGoM1bvDaJbu7MxDlR1vovZjIAKrnzyrThgAjm6JDTu0fVgWXDlMGspodfoQ==}
+ engines: {node: '>=6.0.0'}
+
+ fast-glob@3.3.2:
+ resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==}
+ engines: {node: '>=8.6.0'}
+
+ fast-json-stable-stringify@2.1.0:
+ resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==}
+
+ fast-levenshtein@2.0.6:
+ resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==}
+
+ fastq@1.17.1:
+ resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==}
+
+ figures@2.0.0:
+ resolution: {integrity: sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA==}
+ engines: {node: '>=4'}
+
+ figures@3.2.0:
+ resolution: {integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==}
+ engines: {node: '>=8'}
+
+ figures@6.1.0:
+ resolution: {integrity: sha512-d+l3qxjSesT4V7v2fh+QnmFnUWv9lSpjarhShNTgBOfA0ttejbQUAlHLitbjkoRiDulW0OPoQPYIGhIC8ohejg==}
+ engines: {node: '>=18'}
+
+ file-entry-cache@8.0.0:
+ resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==}
+ engines: {node: '>=16.0.0'}
+
+ file-entry-cache@9.0.0:
+ resolution: {integrity: sha512-6MgEugi8p2tiUhqO7GnPsmbCCzj0YRCwwaTbpGRyKZesjRSzkqkAE9fPp7V2yMs5hwfgbQLgdvSSkGNg1s5Uvw==}
+ engines: {node: '>=18'}
+
+ fill-range@7.1.1:
+ resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==}
+ engines: {node: '>=8'}
+
+ find-node-modules@2.1.3:
+ resolution: {integrity: sha512-UC2I2+nx1ZuOBclWVNdcnbDR5dlrOdVb7xNjmT/lHE+LsgztWks3dG7boJ37yTS/venXw84B/mAW9uHVoC5QRg==}
+
+ find-root@1.1.0:
+ resolution: {integrity: sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==}
+
+ find-up-simple@1.0.0:
+ resolution: {integrity: sha512-q7Us7kcjj2VMePAa02hDAF6d+MzsdsAWEwYyOpwUtlerRBkOEPBCRZrAV4XfcSN8fHAgaD0hP7miwoay6DCprw==}
+ engines: {node: '>=18'}
+
+ find-up@2.1.0:
+ resolution: {integrity: sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==}
+ engines: {node: '>=4'}
+
+ find-up@4.1.0:
+ resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==}
+ engines: {node: '>=8'}
+
+ find-up@5.0.0:
+ resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
+ engines: {node: '>=10'}
+
+ find-up@7.0.0:
+ resolution: {integrity: sha512-YyZM99iHrqLKjmt4LJDj58KI+fYyufRLBSYcqycxf//KpBk9FoewoGX0450m9nB44qrZnovzC2oeP5hUibxc/g==}
+ engines: {node: '>=18'}
+
+ find-versions@6.0.0:
+ resolution: {integrity: sha512-2kCCtc+JvcZ86IGAz3Z2Y0A1baIz9fL31pH/0S1IqZr9Iwnjq8izfPtrCyQKO6TLMPELLsQMre7VDqeIKCsHkA==}
+ engines: {node: '>=18'}
+
+ findup-sync@4.0.0:
+ resolution: {integrity: sha512-6jvvn/12IC4quLBL1KNokxC7wWTvYncaVUYSoxWw7YykPLuRrnv4qdHcSOywOI5RpkOVGeQRtWM8/q+G6W6qfQ==}
+ engines: {node: '>= 8'}
+
+ flat-cache@4.0.1:
+ resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==}
+ engines: {node: '>=16'}
+
+ flat-cache@5.0.0:
+ resolution: {integrity: sha512-JrqFmyUl2PnPi1OvLyTVHnQvwQ0S+e6lGSwu8OkAZlSaNIZciTY2H/cOOROxsBA1m/LZNHDsqAgDZt6akWcjsQ==}
+ engines: {node: '>=18'}
+
+ flatted@3.3.1:
+ resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==}
+
+ for-each@0.3.3:
+ resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==}
+
+ foreground-child@3.1.1:
+ resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==}
+ engines: {node: '>=14'}
+
+ from2@2.3.0:
+ resolution: {integrity: sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==}
+
+ fs-extra@11.2.0:
+ resolution: {integrity: sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==}
+ engines: {node: '>=14.14'}
+
+ fs-extra@9.1.0:
+ resolution: {integrity: sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==}
+ engines: {node: '>=10'}
+
+ fs.realpath@1.0.0:
+ resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
+
+ fsevents@2.3.3:
+ resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
+ engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
+ os: [darwin]
+
+ function-bind@1.1.2:
+ resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==}
+
+ function-timeout@1.0.2:
+ resolution: {integrity: sha512-939eZS4gJ3htTHAldmyyuzlrD58P03fHG49v2JfFXbV6OhvZKRC9j2yAtdHw/zrp2zXHuv05zMIy40F0ge7spA==}
+ engines: {node: '>=18'}
+
+ function.prototype.name@1.1.6:
+ resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==}
+ engines: {node: '>= 0.4'}
+
+ functions-have-names@1.2.3:
+ resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==}
+
+ gensequence@7.0.0:
+ resolution: {integrity: sha512-47Frx13aZh01afHJTB3zTtKIlFI6vWY+MYCN9Qpew6i52rfKjnhCF/l1YlC8UmEMvvntZZ6z4PiCcmyuedR2aQ==}
+ engines: {node: '>=18'}
+
+ get-caller-file@2.0.5:
+ resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==}
+ engines: {node: 6.* || 8.* || >= 10.*}
+
+ get-east-asian-width@1.2.0:
+ resolution: {integrity: sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA==}
+ engines: {node: '>=18'}
+
+ get-intrinsic@1.2.4:
+ resolution: {integrity: sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==}
+ engines: {node: '>= 0.4'}
+
+ get-stdin@9.0.0:
+ resolution: {integrity: sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==}
+ engines: {node: '>=12'}
+
+ get-stream@6.0.1:
+ resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==}
+ engines: {node: '>=10'}
+
+ get-stream@7.0.1:
+ resolution: {integrity: sha512-3M8C1EOFN6r8AMUhwUAACIoXZJEOufDU5+0gFFN5uNs6XYOralD2Pqkl7m046va6x77FwposWXbAhPPIOus7mQ==}
+ engines: {node: '>=16'}
+
+ get-stream@8.0.1:
+ resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==}
+ engines: {node: '>=16'}
+
+ get-stream@9.0.1:
+ resolution: {integrity: sha512-kVCxPF3vQM/N0B1PmoqVUqgHP+EeVjmZSQn+1oCRPxd2P21P2F19lIgbR3HBosbB1PUhOAoctJnfEn2GbN2eZA==}
+ engines: {node: '>=18'}
+
+ get-symbol-description@1.0.2:
+ resolution: {integrity: sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==}
+ engines: {node: '>= 0.4'}
+
+ get-tsconfig@4.7.5:
+ resolution: {integrity: sha512-ZCuZCnlqNzjb4QprAzXKdpp/gh6KTxSJuw3IBsPnV/7fV4NxC9ckB+vPTt8w7fJA0TaSD7c55BR47JD6MEDyDw==}
+
+ git-hooks-list@3.1.0:
+ resolution: {integrity: sha512-LF8VeHeR7v+wAbXqfgRlTSX/1BJR9Q1vEMR8JAz1cEg6GX07+zyj3sAdDvYjj/xnlIfVuGgj4qBei1K3hKH+PA==}
+
+ git-log-parser@1.2.0:
+ resolution: {integrity: sha512-rnCVNfkTL8tdNryFuaY0fYiBWEBcgF748O6ZI61rslBvr2o7U65c2/6npCRqH40vuAhtgtDiqLTJjBVdrejCzA==}
+
+ git-raw-commits@4.0.0:
+ resolution: {integrity: sha512-ICsMM1Wk8xSGMowkOmPrzo2Fgmfo4bMHLNX6ytHjajRJUqvHOw/TFapQ+QG75c3X/tTDDhOSRPGC52dDbNM8FQ==}
+ engines: {node: '>=16'}
+ hasBin: true
+
+ glob-parent@5.1.2:
+ resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
+ engines: {node: '>= 6'}
+
+ glob-parent@6.0.2:
+ resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
+ engines: {node: '>=10.13.0'}
+
+ glob@10.4.1:
+ resolution: {integrity: sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw==}
+ engines: {node: '>=16 || 14 >=14.18'}
+ hasBin: true
+
+ glob@11.0.0:
+ resolution: {integrity: sha512-9UiX/Bl6J2yaBbxKoEBRm4Cipxgok8kQYcOPEhScPwebu2I0HoQOuYdIO6S3hLuWoZgpDpwQZMzTFxgpkyT76g==}
+ engines: {node: 20 || >=22}
+ hasBin: true
+
+ glob@7.2.3:
+ resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
+ deprecated: Glob versions prior to v9 are no longer supported
+
+ global-directory@4.0.1:
+ resolution: {integrity: sha512-wHTUcDUoZ1H5/0iVqEudYW4/kAlN5cZ3j/bXn0Dpbizl9iaUVeWSHqiOjsgk6OW2bkLclbBjzewBz6weQ1zA2Q==}
+ engines: {node: '>=18'}
+
+ global-modules@1.0.0:
+ resolution: {integrity: sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==}
+ engines: {node: '>=0.10.0'}
+
+ global-prefix@1.0.2:
+ resolution: {integrity: sha512-5lsx1NUDHtSjfg0eHlmYvZKv8/nVqX4ckFbM+FrGcQ+04KWcWFo9P5MxPZYSzUvyzmdTbI7Eix8Q4IbELDqzKg==}
+ engines: {node: '>=0.10.0'}
+
+ globals@13.24.0:
+ resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==}
+ engines: {node: '>=8'}
+
+ globals@14.0.0:
+ resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==}
+ engines: {node: '>=18'}
+
+ globals@15.9.0:
+ resolution: {integrity: sha512-SmSKyLLKFbSr6rptvP8izbyxJL4ILwqO9Jg23UA0sDlGlu58V59D1//I3vlc0KJphVdUR7vMjHIplYnzBxorQA==}
+ engines: {node: '>=18'}
+
+ globalthis@1.0.4:
+ resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==}
+ engines: {node: '>= 0.4'}
+
+ globby@11.1.0:
+ resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==}
+ engines: {node: '>=10'}
+
+ globby@13.2.2:
+ resolution: {integrity: sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+ globby@14.0.1:
+ resolution: {integrity: sha512-jOMLD2Z7MAhyG8aJpNOpmziMOP4rPLcc95oQPKXBazW82z+CEgPFBQvEpRUa1KeIMUJo4Wsm+q6uzO/Q/4BksQ==}
+ engines: {node: '>=18'}
+
+ gopd@1.0.1:
+ resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==}
+
+ graceful-fs@4.2.10:
+ resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==}
+
+ graceful-fs@4.2.11:
+ resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
+
+ graphemer@1.4.0:
+ resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
+
+ handlebars@4.7.8:
+ resolution: {integrity: sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==}
+ engines: {node: '>=0.4.7'}
+ hasBin: true
+
+ has-bigints@1.0.2:
+ resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==}
+
+ has-flag@3.0.0:
+ resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==}
+ engines: {node: '>=4'}
+
+ has-flag@4.0.0:
+ resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
+ engines: {node: '>=8'}
+
+ has-own-prop@2.0.0:
+ resolution: {integrity: sha512-Pq0h+hvsVm6dDEa8x82GnLSYHOzNDt7f0ddFa3FqcQlgzEiptPqL+XrOJNavjOzSYiYWIrgeVYYgGlLmnxwilQ==}
+ engines: {node: '>=8'}
+
+ has-property-descriptors@1.0.2:
+ resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==}
+
+ has-proto@1.0.3:
+ resolution: {integrity: sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==}
+ engines: {node: '>= 0.4'}
+
+ has-symbols@1.0.3:
+ resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==}
+ engines: {node: '>= 0.4'}
+
+ has-tostringtag@1.0.2:
+ resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==}
+ engines: {node: '>= 0.4'}
+
+ hasown@2.0.2:
+ resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==}
+ engines: {node: '>= 0.4'}
+
+ helpertypes@0.0.19:
+ resolution: {integrity: sha512-J00e55zffgi3yVnUp0UdbMztNkr2PnizEkOe9URNohnrNhW5X0QpegkuLpOmFQInpi93Nb8MCjQRHAiCDF42NQ==}
+ engines: {node: '>=10.0.0'}
+
+ highlight.js@10.7.3:
+ resolution: {integrity: sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==}
+
+ homedir-polyfill@1.0.3:
+ resolution: {integrity: sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==}
+ engines: {node: '>=0.10.0'}
+
+ hook-std@3.0.0:
+ resolution: {integrity: sha512-jHRQzjSDzMtFy34AGj1DN+vq54WVuhSvKgrHf0OMiFQTwDD4L/qqofVEWjLOBMTn5+lCD3fPg32W9yOfnEJTTw==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+ hosted-git-info@2.8.9:
+ resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==}
+
+ hosted-git-info@7.0.2:
+ resolution: {integrity: sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+
+ http-proxy-agent@7.0.2:
+ resolution: {integrity: sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==}
+ engines: {node: '>= 14'}
+
+ https-proxy-agent@7.0.4:
+ resolution: {integrity: sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==}
+ engines: {node: '>= 14'}
+
+ human-signals@2.1.0:
+ resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==}
+ engines: {node: '>=10.17.0'}
+
+ human-signals@5.0.0:
+ resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==}
+ engines: {node: '>=16.17.0'}
+
+ human-signals@7.0.0:
+ resolution: {integrity: sha512-74kytxOUSvNbjrT9KisAbaTZ/eJwD/LrbM/kh5j0IhPuJzwuA19dWvniFGwBzN9rVjg+O/e+F310PjObDXS+9Q==}
+ engines: {node: '>=18.18.0'}
+
+ husky@9.1.4:
+ resolution: {integrity: sha512-bho94YyReb4JV7LYWRWxZ/xr6TtOTt8cMfmQ39MQYJ7f/YE268s3GdghGwi+y4zAeqewE5zYLvuhV0M0ijsDEA==}
+ engines: {node: '>=18'}
+ hasBin: true
+
+ iconv-lite@0.4.24:
+ resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==}
+ engines: {node: '>=0.10.0'}
+
+ ieee754@1.2.1:
+ resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==}
+
+ ignore@5.3.1:
+ resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==}
+ engines: {node: '>= 4'}
+
+ import-fresh@3.3.0:
+ resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==}
+ engines: {node: '>=6'}
+
+ import-from-esm@1.3.4:
+ resolution: {integrity: sha512-7EyUlPFC0HOlBDpUFGfYstsU7XHxZJKAAMzCT8wZ0hMW7b+hG51LIKTDcsgtz8Pu6YC0HqRVbX+rVUtsGMUKvg==}
+ engines: {node: '>=16.20'}
+
+ import-meta-resolve@4.1.0:
+ resolution: {integrity: sha512-I6fiaX09Xivtk+THaMfAwnA3MVA5Big1WHF1Dfx9hFuvNIWpXnorlkzhcQf6ehrqQiiZECRt1poOAkPmer3ruw==}
+
+ importx@0.4.3:
+ resolution: {integrity: sha512-x6E6OxmWq/SUaj7wDeDeSjyHP+rMUbEaqJ5fw0uEtC/FTX9ocxNMFJ+ONnpJIsRpFz3ya6qJAK4orwSKqw0BSQ==}
+
+ imurmurhash@0.1.4:
+ resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
+ engines: {node: '>=0.8.19'}
+
+ indent-string@4.0.0:
+ resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==}
+ engines: {node: '>=8'}
+
+ indent-string@5.0.0:
+ resolution: {integrity: sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==}
+ engines: {node: '>=12'}
+
+ index-to-position@0.1.2:
+ resolution: {integrity: sha512-MWDKS3AS1bGCHLBA2VLImJz42f7bJh8wQsTGCzI3j519/CASStoDONUBVz2I/VID0MpiX3SGSnbOD2xUalbE5g==}
+ engines: {node: '>=18'}
+
+ inflight@1.0.6:
+ resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==}
+ deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
+
+ inherits@2.0.4:
+ resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
+
+ ini@1.3.8:
+ resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==}
+
+ ini@4.1.1:
+ resolution: {integrity: sha512-QQnnxNyfvmHFIsj7gkPcYymR8Jdw/o7mp5ZFihxn6h8Ci6fh3Dx4E1gPjpQEpIuPo9XVNY/ZUwh4BPMjGyL01g==}
+ engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
+
+ ini@4.1.3:
+ resolution: {integrity: sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg==}
+ engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
+
+ inquirer@8.2.5:
+ resolution: {integrity: sha512-QAgPDQMEgrDssk1XiwwHoOGYF9BAbUcc1+j+FhEvaOt8/cKRqyLn0U5qA6F74fGhTMGxf92pOvPBeh29jQJDTQ==}
+ engines: {node: '>=12.0.0'}
+
+ internal-slot@1.0.7:
+ resolution: {integrity: sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==}
+ engines: {node: '>= 0.4'}
+
+ into-stream@7.0.0:
+ resolution: {integrity: sha512-2dYz766i9HprMBasCMvHMuazJ7u4WzhJwo5kb3iPSiW/iRYV6uPari3zHoqZlnuaR7V1bEiNMxikhp37rdBXbw==}
+ engines: {node: '>=12'}
+
+ is-alphabetical@1.0.4:
+ resolution: {integrity: sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==}
+
+ is-alphanumerical@1.0.4:
+ resolution: {integrity: sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==}
+
+ is-array-buffer@3.0.4:
+ resolution: {integrity: sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==}
+ engines: {node: '>= 0.4'}
+
+ is-arrayish@0.2.1:
+ resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==}
+
+ is-bigint@1.0.4:
+ resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==}
+
+ is-boolean-object@1.1.2:
+ resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==}
+ engines: {node: '>= 0.4'}
+
+ is-builtin-module@3.2.1:
+ resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==}
+ engines: {node: '>=6'}
+
+ is-callable@1.2.7:
+ resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==}
+ engines: {node: '>= 0.4'}
+
+ is-core-module@2.13.1:
+ resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==}
+
+ is-data-view@1.0.1:
+ resolution: {integrity: sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==}
+ engines: {node: '>= 0.4'}
+
+ is-date-object@1.0.5:
+ resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==}
+ engines: {node: '>= 0.4'}
+
+ is-decimal@1.0.4:
+ resolution: {integrity: sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==}
+
+ is-extglob@2.1.1:
+ resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
+ engines: {node: '>=0.10.0'}
+
+ is-fullwidth-code-point@3.0.0:
+ resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
+ engines: {node: '>=8'}
+
+ is-fullwidth-code-point@4.0.0:
+ resolution: {integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==}
+ engines: {node: '>=12'}
+
+ is-fullwidth-code-point@5.0.0:
+ resolution: {integrity: sha512-OVa3u9kkBbw7b8Xw5F9P+D/T9X+Z4+JruYVNapTjPYZYUznQ5YfWeFkOj606XYYW8yugTfC8Pj0hYqvi4ryAhA==}
+ engines: {node: '>=18'}
+
+ is-glob@4.0.3:
+ resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
+ engines: {node: '>=0.10.0'}
+
+ is-hexadecimal@1.0.4:
+ resolution: {integrity: sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==}
+
+ is-immutable-type@4.0.0:
+ resolution: {integrity: sha512-gyFBCXv+NikTs8/PGZhgjbMmFZQ5jvHGZIsVu6+/9Bk4K7imlWBIDN7hTr9fNioGzFg71I4YM3z8f0aKXarTAw==}
+ peerDependencies:
+ eslint: '*'
+ typescript: '>=4.7.4'
+
+ is-interactive@1.0.0:
+ resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==}
+ engines: {node: '>=8'}
+
+ is-language-code@3.1.0:
+ resolution: {integrity: sha512-zJdQ3QTeLye+iphMeK3wks+vXSRFKh68/Pnlw7aOfApFSEIOhYa8P9vwwa6QrImNNBMJTiL1PpYF0f4BxDuEgA==}
+
+ is-negative-zero@2.0.3:
+ resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==}
+ engines: {node: '>= 0.4'}
+
+ is-number-object@1.0.7:
+ resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==}
+ engines: {node: '>= 0.4'}
+
+ is-number@7.0.0:
+ resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
+ engines: {node: '>=0.12.0'}
+
+ is-obj@2.0.0:
+ resolution: {integrity: sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==}
+ engines: {node: '>=8'}
+
+ is-path-inside@3.0.3:
+ resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==}
+ engines: {node: '>=8'}
+
+ is-plain-obj@4.1.0:
+ resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==}
+ engines: {node: '>=12'}
+
+ is-regex@1.1.4:
+ resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==}
+ engines: {node: '>= 0.4'}
+
+ is-shared-array-buffer@1.0.3:
+ resolution: {integrity: sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==}
+ engines: {node: '>= 0.4'}
+
+ is-stream@2.0.1:
+ resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==}
+ engines: {node: '>=8'}
+
+ is-stream@3.0.0:
+ resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+ is-stream@4.0.1:
+ resolution: {integrity: sha512-Dnz92NInDqYckGEUJv689RbRiTSEHCQ7wOVeALbkOz999YpqT46yMRIGtSNl2iCL1waAZSx40+h59NV/EwzV/A==}
+ engines: {node: '>=18'}
+
+ is-string@1.0.7:
+ resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==}
+ engines: {node: '>= 0.4'}
+
+ is-symbol@1.0.4:
+ resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==}
+ engines: {node: '>= 0.4'}
+
+ is-text-path@2.0.0:
+ resolution: {integrity: sha512-+oDTluR6WEjdXEJMnC2z6A4FRwFoYuvShVVEGsS7ewc0UTi2QtAKMDJuL4BDEVt+5T7MjFo12RP8ghOM75oKJw==}
+ engines: {node: '>=8'}
+
+ is-typed-array@1.1.13:
+ resolution: {integrity: sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==}
+ engines: {node: '>= 0.4'}
+
+ is-unicode-supported@0.1.0:
+ resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==}
+ engines: {node: '>=10'}
+
+ is-unicode-supported@2.0.0:
+ resolution: {integrity: sha512-FRdAyx5lusK1iHG0TWpVtk9+1i+GjrzRffhDg4ovQ7mcidMQ6mj+MhKPmvh7Xwyv5gIS06ns49CA7Sqg7lC22Q==}
+ engines: {node: '>=18'}
+
+ is-utf8@0.2.1:
+ resolution: {integrity: sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q==}
+
+ is-weakref@1.0.2:
+ resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==}
+
+ is-windows@1.0.2:
+ resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==}
+ engines: {node: '>=0.10.0'}
+
+ isarray@1.0.0:
+ resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==}
+
+ isarray@2.0.5:
+ resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==}
+
+ isbot@3.8.0:
+ resolution: {integrity: sha512-vne1mzQUTR+qsMLeCBL9+/tgnDXRyc2pygLGl/WsgA+EZKIiB5Ehu0CiVTHIIk30zhJ24uGz4M5Ppse37aR0Hg==}
+ engines: {node: '>=12'}
+
+ isexe@2.0.0:
+ resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
+
+ issue-parser@7.0.1:
+ resolution: {integrity: sha512-3YZcUUR2Wt1WsapF+S/WiA2WmlW0cWAoPccMqne7AxEBhCdFeTPjfv/Axb8V2gyCgY3nRw+ksZ3xSUX+R47iAg==}
+ engines: {node: ^18.17 || >=20.6.1}
+
+ jackspeak@3.4.0:
+ resolution: {integrity: sha512-JVYhQnN59LVPFCEcVa2C3CrEKYacvjRfqIQl+h8oi91aLYQVWRYbxjPcv1bUiUy/kLmQaANrYfNMCO3kuEDHfw==}
+ engines: {node: '>=14'}
+
+ jackspeak@4.0.1:
+ resolution: {integrity: sha512-cub8rahkh0Q/bw1+GxP7aeSe29hHHn2V4m29nnDlvCdlgU+3UGxkZp7Z53jLUdpX3jdTO0nJZUDl3xvbWc2Xog==}
+ engines: {node: 20 || >=22}
+
+ java-properties@1.0.2:
+ resolution: {integrity: sha512-qjdpeo2yKlYTH7nFdK0vbZWuTCesk4o63v5iVOlhMQPfuIZQfW/HI35SjfhA+4qpg36rnFSvUK5b1m+ckIblQQ==}
+ engines: {node: '>= 0.6.0'}
+
+ jiti@1.21.6:
+ resolution: {integrity: sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==}
+ hasBin: true
+
+ jiti@2.0.0-beta.2:
+ resolution: {integrity: sha512-c+PHQZakiQuMKbnhvrjZUvrK6E/AfmTOf4P+E3Y4FNVHcNMX9e/XrnbEvO+m4wS6ZjsvhHh/POQTlfy8uXFc0A==}
+ hasBin: true
+
+ js-tokens@4.0.0:
+ resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
+
+ js-yaml@4.1.0:
+ resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
+ hasBin: true
+
+ jsdoc-type-pratt-parser@4.0.0:
+ resolution: {integrity: sha512-YtOli5Cmzy3q4dP26GraSOeAhqecewG04hoO8DY56CH4KJ9Fvv5qKWUCCo3HZob7esJQHCv6/+bnTy72xZZaVQ==}
+ engines: {node: '>=12.0.0'}
+
+ jsesc@0.5.0:
+ resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==}
+ hasBin: true
+
+ jsesc@3.0.2:
+ resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==}
+ engines: {node: '>=6'}
+ hasBin: true
+
+ json-buffer@3.0.1:
+ resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==}
+
+ json-parse-better-errors@1.0.2:
+ resolution: {integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==}
+
+ json-parse-even-better-errors@2.3.1:
+ resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==}
+
+ json-schema-to-typescript-lite@14.0.1:
+ resolution: {integrity: sha512-MhjvNC3MfEyYmKiC1rEzwDTCc22+hWU/2HKVfnklar4tifbkT8oZvvamEG1n550JeCmJ0V+2ly+5fF5K+lIExg==}
+
+ json-schema-traverse@0.4.1:
+ resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==}
+
+ json-schema-traverse@1.0.0:
+ resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==}
+
+ json-stable-stringify-without-jsonify@1.0.1:
+ resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
+
+ json5@1.0.2:
+ resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==}
+ hasBin: true
+
+ json5@2.2.3:
+ resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==}
+ engines: {node: '>=6'}
+ hasBin: true
+
+ jsonc-eslint-parser@2.4.0:
+ resolution: {integrity: sha512-WYDyuc/uFcGp6YtM2H0uKmUwieOuzeE/5YocFJLnLfclZ4inf3mRn8ZVy1s7Hxji7Jxm6Ss8gqpexD/GlKoGgg==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+
+ jsonc-parser@3.2.1:
+ resolution: {integrity: sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==}
+
+ jsonfile@6.1.0:
+ resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==}
+
+ jsonparse@1.3.1:
+ resolution: {integrity: sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==}
+ engines: {'0': node >= 0.2.0}
+
+ jsonpointer@5.0.1:
+ resolution: {integrity: sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==}
+ engines: {node: '>=0.10.0'}
+
+ keyv@4.5.4:
+ resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==}
+
+ knip@5.27.0:
+ resolution: {integrity: sha512-W8+jhO7i5pXRUqOzhJGm2DT5/d9aQjyrYTCSojqJxFOvi7ku/nHKzpBO3WNf4eflJo0t3zitmUkM69g53qoZQw==}
+ engines: {node: '>=18.6.0'}
+ hasBin: true
+ peerDependencies:
+ '@types/node': '>=18'
+ typescript: '>=5.0.4'
+
+ levn@0.4.1:
+ resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==}
+ engines: {node: '>= 0.8.0'}
+
+ lilconfig@3.1.2:
+ resolution: {integrity: sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==}
+ engines: {node: '>=14'}
+
+ lines-and-columns@1.2.4:
+ resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
+
+ linkify-it@5.0.0:
+ resolution: {integrity: sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==}
+
+ lint-staged@15.2.8:
+ resolution: {integrity: sha512-PUWFf2zQzsd9EFU+kM1d7UP+AZDbKFKuj+9JNVTBkhUFhbg4MAt6WfyMMwBfM4lYqd4D2Jwac5iuTu9rVj4zCQ==}
+ engines: {node: '>=18.12.0'}
+ hasBin: true
+
+ listr2@8.2.4:
+ resolution: {integrity: sha512-opevsywziHd3zHCVQGAj8zu+Z3yHNkkoYhWIGnq54RrCVwLz0MozotJEDnKsIBLvkfLGN6BLOyAeRrYI0pKA4g==}
+ engines: {node: '>=18.0.0'}
+
+ load-json-file@4.0.0:
+ resolution: {integrity: sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==}
+ engines: {node: '>=4'}
+
+ load-tsconfig@0.2.5:
+ resolution: {integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+ local-pkg@0.5.0:
+ resolution: {integrity: sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==}
+ engines: {node: '>=14'}
+
+ locate-path@2.0.0:
+ resolution: {integrity: sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==}
+ engines: {node: '>=4'}
+
+ locate-path@5.0.0:
+ resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==}
+ engines: {node: '>=8'}
+
+ locate-path@6.0.0:
+ resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
+ engines: {node: '>=10'}
+
+ locate-path@7.2.0:
+ resolution: {integrity: sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+ lodash-es@4.17.21:
+ resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==}
+
+ lodash.camelcase@4.3.0:
+ resolution: {integrity: sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==}
+
+ lodash.capitalize@4.2.1:
+ resolution: {integrity: sha512-kZzYOKspf8XVX5AvmQF94gQW0lejFVgb80G85bU4ZWzoJ6C03PQg3coYAUpSTpQWelrZELd3XWgHzw4Ck5kaIw==}
+
+ lodash.escaperegexp@4.1.2:
+ resolution: {integrity: sha512-TM9YBvyC84ZxE3rgfefxUWiQKLilstD6k7PTGt6wfbtXF8ixIJLOL3VYyV/z+ZiPLsVxAsKAFVwWlWeb2Y8Yyw==}
+
+ lodash.isplainobject@4.0.6:
+ resolution: {integrity: sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==}
+
+ lodash.isstring@4.0.1:
+ resolution: {integrity: sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==}
+
+ lodash.kebabcase@4.1.1:
+ resolution: {integrity: sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g==}
+
+ lodash.map@4.6.0:
+ resolution: {integrity: sha512-worNHGKLDetmcEYDvh2stPCrrQRkP20E4l0iIS7F8EvzMqBBi7ltvFN5m1HvTf1P7Jk1txKhvFcmYsCr8O2F1Q==}
+
+ lodash.merge@4.6.2:
+ resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==}
+
+ lodash.mergewith@4.6.2:
+ resolution: {integrity: sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ==}
+
+ lodash.snakecase@4.1.1:
+ resolution: {integrity: sha512-QZ1d4xoBHYUeuouhEq3lk3Uq7ldgyFXGBhg04+oRLnIz8o9T65Eh+8YdroUwn846zchkA9yDsDl5CVVaV2nqYw==}
+
+ lodash.startcase@4.4.0:
+ resolution: {integrity: sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==}
+
+ lodash.uniq@4.5.0:
+ resolution: {integrity: sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==}
+
+ lodash.uniqby@4.7.0:
+ resolution: {integrity: sha512-e/zcLx6CSbmaEgFHCA7BnoQKyCtKMxnuWrJygbwPs/AIn+IMKl66L8/s+wBUn5LRw2pZx3bUHibiV1b6aTWIww==}
+
+ lodash.upperfirst@4.3.1:
+ resolution: {integrity: sha512-sReKOYJIJf74dhJONhU4e0/shzi1trVbSWDOhKYE5XV2O+H7Sb2Dihwuc7xWxVl+DgFPyTqIN3zMfT9cq5iWDg==}
+
+ lodash@4.17.21:
+ resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
+
+ log-symbols@4.1.0:
+ resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==}
+ engines: {node: '>=10'}
+
+ log-update@6.1.0:
+ resolution: {integrity: sha512-9ie8ItPR6tjY5uYJh8K/Zrv/RMZ5VOlOWvtZdEHYSTFKZfIBPQa9tOAEeAWhd+AnIneLJ22w5fjOYtoutpWq5w==}
+ engines: {node: '>=18'}
+
+ longest@2.0.1:
+ resolution: {integrity: sha512-Ajzxb8CM6WAnFjgiloPsI3bF+WCxcvhdIG3KNA2KN962+tdBsHcuQ4k4qX/EcS/2CRkcc0iAkR956Nib6aXU/Q==}
+ engines: {node: '>=0.10.0'}
+
+ lru-cache@10.2.2:
+ resolution: {integrity: sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==}
+ engines: {node: 14 || >=16.14}
+
+ lru-cache@11.0.0:
+ resolution: {integrity: sha512-Qv32eSV1RSCfhY3fpPE2GNZ8jgM9X7rdAfemLWqTUxwiyIC4jJ6Sy0fZ8H+oLWevO6i4/bizg7c8d8i6bxrzbA==}
+ engines: {node: 20 || >=22}
+
+ magic-string@0.30.11:
+ resolution: {integrity: sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==}
+
+ markdown-it@14.1.0:
+ resolution: {integrity: sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==}
+ hasBin: true
+
+ markdownlint-cli@0.41.0:
+ resolution: {integrity: sha512-kp29tKrMKdn+xonfefjp3a/MsNzAd9c5ke0ydMEI9PR98bOjzglYN4nfMSaIs69msUf1DNkgevAIAPtK2SeX0Q==}
+ engines: {node: '>=18'}
+ hasBin: true
+
+ markdownlint-micromark@0.1.9:
+ resolution: {integrity: sha512-5hVs/DzAFa8XqYosbEAEg6ok6MF2smDj89ztn9pKkCtdKHVdPQuGMH7frFfYL9mLkvfFe4pTyAMffLbjf3/EyA==}
+ engines: {node: '>=18'}
+
+ markdownlint@0.34.0:
+ resolution: {integrity: sha512-qwGyuyKwjkEMOJ10XN6OTKNOVYvOIi35RNvDLNxTof5s8UmyGHlCdpngRHoRGNvQVGuxO3BJ7uNSgdeX166WXw==}
+ engines: {node: '>=18'}
+
+ marked-terminal@7.0.0:
+ resolution: {integrity: sha512-sNEx8nn9Ktcm6pL0TnRz8tnXq/mSS0Q1FRSwJOAqw4lAB4l49UeDf85Gm1n9RPFm5qurCPjwi1StAQT2XExhZw==}
+ engines: {node: '>=16.0.0'}
+ peerDependencies:
+ marked: '>=1 <13'
+
+ marked@12.0.2:
+ resolution: {integrity: sha512-qXUm7e/YKFoqFPYPa3Ukg9xlI5cyAtGmyEIzMfW//m6kXwCy2Ps9DYf5ioijFKQ8qyuscrHoY04iJGctu2Kg0Q==}
+ engines: {node: '>= 18'}
+ hasBin: true
+
+ mdast-util-from-markdown@0.8.5:
+ resolution: {integrity: sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==}
+
+ mdast-util-to-string@2.0.0:
+ resolution: {integrity: sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==}
+
+ mdurl@2.0.0:
+ resolution: {integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==}
+
+ meow@12.1.1:
+ resolution: {integrity: sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==}
+ engines: {node: '>=16.10'}
+
+ meow@13.2.0:
+ resolution: {integrity: sha512-pxQJQzB6djGPXh08dacEloMFopsOqGVRKFPYvPOt9XDZ1HasbgDZA74CJGreSU4G3Ak7EFJGoiH2auq+yXISgA==}
+ engines: {node: '>=18'}
+
+ merge-stream@2.0.0:
+ resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
+
+ merge2@1.4.1:
+ resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
+ engines: {node: '>= 8'}
+
+ merge@2.1.1:
+ resolution: {integrity: sha512-jz+Cfrg9GWOZbQAnDQ4hlVnQky+341Yk5ru8bZSe6sIDTCIg8n9i/u7hSQGSVOF3C7lH6mGtqjkiT9G4wFLL0w==}
+
+ micromark@2.11.4:
+ resolution: {integrity: sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==}
+
+ micromatch@4.0.7:
+ resolution: {integrity: sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==}
+ engines: {node: '>=8.6'}
+
+ mime@4.0.3:
+ resolution: {integrity: sha512-KgUb15Oorc0NEKPbvfa0wRU+PItIEZmiv+pyAO2i0oTIVTJhlzMclU7w4RXWQrSOVH5ax/p/CkIO7KI4OyFJTQ==}
+ engines: {node: '>=16'}
+ hasBin: true
+
+ mimic-fn@2.1.0:
+ resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==}
+ engines: {node: '>=6'}
+
+ mimic-fn@4.0.0:
+ resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==}
+ engines: {node: '>=12'}
+
+ mimic-function@5.0.1:
+ resolution: {integrity: sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==}
+ engines: {node: '>=18'}
+
+ min-indent@1.0.1:
+ resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==}
+ engines: {node: '>=4'}
+
+ minimatch@10.0.1:
+ resolution: {integrity: sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==}
+ engines: {node: 20 || >=22}
+
+ minimatch@3.1.2:
+ resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
+
+ minimatch@9.0.5:
+ resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==}
+ engines: {node: '>=16 || 14 >=14.17'}
+
+ minimist@1.2.7:
+ resolution: {integrity: sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==}
+
+ minimist@1.2.8:
+ resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==}
+
+ minipass@7.1.2:
+ resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==}
+ engines: {node: '>=16 || 14 >=14.17'}
+
+ mlly@1.7.1:
+ resolution: {integrity: sha512-rrVRZRELyQzrIUAVMHxP97kv+G786pHmOKzuFII8zDYahFBS7qnHh2AlYSl1GAHhaMPCz6/oHjVMcfFYgFYHgA==}
+
+ ms@2.1.2:
+ resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
+
+ ms@2.1.3:
+ resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
+
+ mute-stream@0.0.8:
+ resolution: {integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==}
+
+ mz@2.7.0:
+ resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==}
+
+ nanoid@3.3.7:
+ resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==}
+ engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
+ hasBin: true
+
+ natural-compare@1.4.0:
+ resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
+
+ neo-async@2.6.2:
+ resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==}
+
+ nerf-dart@1.0.0:
+ resolution: {integrity: sha512-EZSPZB70jiVsivaBLYDCyntd5eH8NTSMOn3rB+HxwdmKThGELLdYv8qVIMWvZEFy9w8ZZpW9h9OB32l1rGtj7g==}
+
+ node-emoji@2.1.3:
+ resolution: {integrity: sha512-E2WEOVsgs7O16zsURJ/eH8BqhF029wGpEOnv7Urwdo2wmQanOACwJQh0devF9D9RhoZru0+9JXIS0dBXIAz+lA==}
+ engines: {node: '>=18'}
+
+ node-releases@2.0.14:
+ resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==}
+
+ normalize-package-data@2.5.0:
+ resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==}
+
+ normalize-package-data@6.0.1:
+ resolution: {integrity: sha512-6rvCfeRW+OEZagAB4lMLSNuTNYZWLVtKccK79VSTf//yTY5VOCgcpH80O+bZK8Neps7pUnd5G+QlMg1yV/2iZQ==}
+ engines: {node: ^16.14.0 || >=18.0.0}
+
+ normalize-url@8.0.1:
+ resolution: {integrity: sha512-IO9QvjUMWxPQQhs60oOu10CRkWCiZzSUkzbXGGV9pviYl1fXYcvkzQ5jV9z8Y6un8ARoVRl4EtC6v6jNqbaJ/w==}
+ engines: {node: '>=14.16'}
+
+ npm-run-path@4.0.1:
+ resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==}
+ engines: {node: '>=8'}
+
+ npm-run-path@5.3.0:
+ resolution: {integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+ npm@10.8.1:
+ resolution: {integrity: sha512-Dp1C6SvSMYQI7YHq/y2l94uvI+59Eqbu1EpuKQHQ8p16txXRuRit5gH3Lnaagk2aXDIjg/Iru9pd05bnneKgdw==}
+ engines: {node: ^18.17.0 || >=20.5.0}
+ hasBin: true
+ bundledDependencies:
+ - '@isaacs/string-locale-compare'
+ - '@npmcli/arborist'
+ - '@npmcli/config'
+ - '@npmcli/fs'
+ - '@npmcli/map-workspaces'
+ - '@npmcli/package-json'
+ - '@npmcli/promise-spawn'
+ - '@npmcli/redact'
+ - '@npmcli/run-script'
+ - '@sigstore/tuf'
+ - abbrev
+ - archy
+ - cacache
+ - chalk
+ - ci-info
+ - cli-columns
+ - fastest-levenshtein
+ - fs-minipass
+ - glob
+ - graceful-fs
+ - hosted-git-info
+ - ini
+ - init-package-json
+ - is-cidr
+ - json-parse-even-better-errors
+ - libnpmaccess
+ - libnpmdiff
+ - libnpmexec
+ - libnpmfund
+ - libnpmhook
+ - libnpmorg
+ - libnpmpack
+ - libnpmpublish
+ - libnpmsearch
+ - libnpmteam
+ - libnpmversion
+ - make-fetch-happen
+ - minimatch
+ - minipass
+ - minipass-pipeline
+ - ms
+ - node-gyp
+ - nopt
+ - normalize-package-data
+ - npm-audit-report
+ - npm-install-checks
+ - npm-package-arg
+ - npm-pick-manifest
+ - npm-profile
+ - npm-registry-fetch
+ - npm-user-validate
+ - p-map
+ - pacote
+ - parse-conflict-json
+ - proc-log
+ - qrcode-terminal
+ - read
+ - semver
+ - spdx-expression-parse
+ - ssri
+ - supports-color
+ - tar
+ - text-table
+ - tiny-relative-date
+ - treeverse
+ - validate-npm-package-name
+ - which
+ - write-file-atomic
+
+ nth-check@2.1.1:
+ resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==}
+
+ object-assign@4.1.1:
+ resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
+ engines: {node: '>=0.10.0'}
+
+ object-inspect@1.13.1:
+ resolution: {integrity: sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==}
+
+ object-keys@1.1.1:
+ resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==}
+ engines: {node: '>= 0.4'}
+
+ object-path@0.11.8:
+ resolution: {integrity: sha512-YJjNZrlXJFM42wTBn6zgOJVar9KFJvzx6sTWDte8sWZF//cnjl0BxHNpfZx+ZffXX63A9q0b1zsFiBX4g4X5KA==}
+ engines: {node: '>= 10.12.0'}
+
+ object.assign@4.1.5:
+ resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==}
+ engines: {node: '>= 0.4'}
+
+ object.fromentries@2.0.8:
+ resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==}
+ engines: {node: '>= 0.4'}
+
+ object.groupby@1.0.3:
+ resolution: {integrity: sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==}
+ engines: {node: '>= 0.4'}
+
+ object.values@1.2.0:
+ resolution: {integrity: sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==}
+ engines: {node: '>= 0.4'}
+
+ ohash@1.1.3:
+ resolution: {integrity: sha512-zuHHiGTYTA1sYJ/wZN+t5HKZaH23i4yI1HMwbuXm24Nid7Dv0KcuRlKoNKS9UNfAVSBlnGLcuQrnOKWOZoEGaw==}
+
+ once@1.4.0:
+ resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
+
+ onetime@5.1.2:
+ resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==}
+ engines: {node: '>=6'}
+
+ onetime@6.0.0:
+ resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==}
+ engines: {node: '>=12'}
+
+ onetime@7.0.0:
+ resolution: {integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==}
+ engines: {node: '>=18'}
+
+ optionator@0.9.4:
+ resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==}
+ engines: {node: '>= 0.8.0'}
+
+ ora@5.4.1:
+ resolution: {integrity: sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==}
+ engines: {node: '>=10'}
+
+ os-tmpdir@1.0.2:
+ resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==}
+ engines: {node: '>=0.10.0'}
+
+ p-each-series@3.0.0:
+ resolution: {integrity: sha512-lastgtAdoH9YaLyDa5i5z64q+kzOcQHsQ5SsZJD3q0VEyI8mq872S3geuNbRUQLVAE9siMfgKrpj7MloKFHruw==}
+ engines: {node: '>=12'}
+
+ p-filter@4.1.0:
+ resolution: {integrity: sha512-37/tPdZ3oJwHaS3gNJdenCDB3Tz26i9sjhnguBtvN0vYlRIiDNnvTWkuh+0hETV9rLPdJ3rlL3yVOYPIAnM8rw==}
+ engines: {node: '>=18'}
+
+ p-is-promise@3.0.0:
+ resolution: {integrity: sha512-Wo8VsW4IRQSKVXsJCn7TomUaVtyfjVDn3nUP7kE967BQk0CwFpdbZs0X0uk5sW9mkBa9eNM7hCMaG93WUAwxYQ==}
+ engines: {node: '>=8'}
+
+ p-limit@1.3.0:
+ resolution: {integrity: sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==}
+ engines: {node: '>=4'}
+
+ p-limit@2.3.0:
+ resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==}
+ engines: {node: '>=6'}
+
+ p-limit@3.1.0:
+ resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
+ engines: {node: '>=10'}
+
+ p-limit@4.0.0:
+ resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+ p-locate@2.0.0:
+ resolution: {integrity: sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==}
+ engines: {node: '>=4'}
+
+ p-locate@4.1.0:
+ resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==}
+ engines: {node: '>=8'}
+
+ p-locate@5.0.0:
+ resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
+ engines: {node: '>=10'}
+
+ p-locate@6.0.0:
+ resolution: {integrity: sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+ p-map@4.0.0:
+ resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==}
+ engines: {node: '>=10'}
+
+ p-map@7.0.2:
+ resolution: {integrity: sha512-z4cYYMMdKHzw4O5UkWJImbZynVIo0lSGTXc7bzB1e/rrDqkgGUNysK/o4bTr+0+xKvvLoTyGqYC4Fgljy9qe1Q==}
+ engines: {node: '>=18'}
+
+ p-reduce@2.1.0:
+ resolution: {integrity: sha512-2USApvnsutq8uoxZBGbbWM0JIYLiEMJ9RlaN7fAzVNb9OZN0SHjjTTfIcb667XynS5Y1VhwDJVDa72TnPzAYWw==}
+ engines: {node: '>=8'}
+
+ p-reduce@3.0.0:
+ resolution: {integrity: sha512-xsrIUgI0Kn6iyDYm9StOpOeK29XM1aboGji26+QEortiFST1hGZaUQOLhtEbqHErPpGW/aSz6allwK2qcptp0Q==}
+ engines: {node: '>=12'}
+
+ p-try@1.0.0:
+ resolution: {integrity: sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==}
+ engines: {node: '>=4'}
+
+ p-try@2.2.0:
+ resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==}
+ engines: {node: '>=6'}
+
+ package-json-from-dist@1.0.0:
+ resolution: {integrity: sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==}
+
+ parent-module@1.0.1:
+ resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
+ engines: {node: '>=6'}
+
+ parent-module@2.0.0:
+ resolution: {integrity: sha512-uo0Z9JJeWzv8BG+tRcapBKNJ0dro9cLyczGzulS6EfeyAdeC9sbojtW6XwvYxJkEne9En+J2XEl4zyglVeIwFg==}
+ engines: {node: '>=8'}
+
+ parse-entities@2.0.0:
+ resolution: {integrity: sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==}
+
+ parse-imports@2.1.1:
+ resolution: {integrity: sha512-TDT4HqzUiTMO1wJRwg/t/hYk8Wdp3iF/ToMIlAoVQfL1Xs/sTxq1dKWSMjMbQmIarfWKymOyly40+zmPHXMqCA==}
+ engines: {node: '>= 18'}
+
+ parse-json@4.0.0:
+ resolution: {integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==}
+ engines: {node: '>=4'}
+
+ parse-json@5.2.0:
+ resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}
+ engines: {node: '>=8'}
+
+ parse-json@8.1.0:
+ resolution: {integrity: sha512-rum1bPifK5SSar35Z6EKZuYPJx85pkNaFrxBK3mwdfSJ1/WKbYrjoW/zTPSjRRamfmVX1ACBIdFAO0VRErW/EA==}
+ engines: {node: '>=18'}
+
+ parse-ms@4.0.0:
+ resolution: {integrity: sha512-TXfryirbmq34y8QBwgqCVLi+8oA3oWx2eAnSn62ITyEhEYaWRlVZ2DvMM9eZbMs/RfxPu/PK/aBLyGj4IrqMHw==}
+ engines: {node: '>=18'}
+
+ parse-passwd@1.0.0:
+ resolution: {integrity: sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==}
+ engines: {node: '>=0.10.0'}
+
+ parse5-htmlparser2-tree-adapter@6.0.1:
+ resolution: {integrity: sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==}
+
+ parse5@5.1.1:
+ resolution: {integrity: sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==}
+
+ parse5@6.0.1:
+ resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==}
+
+ parse5@7.1.2:
+ resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==}
+
+ path-exists@3.0.0:
+ resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==}
+ engines: {node: '>=4'}
+
+ path-exists@4.0.0:
+ resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
+ engines: {node: '>=8'}
+
+ path-exists@5.0.0:
+ resolution: {integrity: sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+ path-is-absolute@1.0.1:
+ resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
+ engines: {node: '>=0.10.0'}
+
+ path-key@3.1.1:
+ resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
+ engines: {node: '>=8'}
+
+ path-key@4.0.0:
+ resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==}
+ engines: {node: '>=12'}
+
+ path-parse@1.0.7:
+ resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
+
+ path-scurry@1.11.1:
+ resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==}
+ engines: {node: '>=16 || 14 >=14.18'}
+
+ path-scurry@2.0.0:
+ resolution: {integrity: sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==}
+ engines: {node: 20 || >=22}
+
+ path-type@4.0.0:
+ resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
+ engines: {node: '>=8'}
+
+ path-type@5.0.0:
+ resolution: {integrity: sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg==}
+ engines: {node: '>=12'}
+
+ pathe@1.1.2:
+ resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==}
+
+ picocolors@1.0.1:
+ resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==}
+
+ picomatch@2.3.1:
+ resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
+ engines: {node: '>=8.6'}
+
+ picomatch@4.0.2:
+ resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==}
+ engines: {node: '>=12'}
+
+ pidtree@0.6.0:
+ resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==}
+ engines: {node: '>=0.10'}
+ hasBin: true
+
+ pify@3.0.0:
+ resolution: {integrity: sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==}
+ engines: {node: '>=4'}
+
+ pkg-conf@2.1.0:
+ resolution: {integrity: sha512-C+VUP+8jis7EsQZIhDYmS5qlNtjv2yP4SNtjXK9AP1ZcTRlnSfuumaTnRfYZnYgUUYVIKqL0fRvmUGDV2fmp6g==}
+ engines: {node: '>=4'}
+
+ pkg-types@1.1.3:
+ resolution: {integrity: sha512-+JrgthZG6m3ckicaOB74TwQ+tBWsFl3qVQg7mN8ulwSOElJ7gBhKzj2VkCPnZ4NlF6kEquYU+RIYNVAvzd54UA==}
+
+ pluralize@8.0.0:
+ resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==}
+ engines: {node: '>=4'}
+
+ possible-typed-array-names@1.0.0:
+ resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==}
+ engines: {node: '>= 0.4'}
+
+ postcss-selector-parser@6.1.0:
+ resolution: {integrity: sha512-UMz42UD0UY0EApS0ZL9o1XnLhSTtvvvLe5Dc2H2O56fvRZi+KulDyf5ctDhhtYJBGKStV2FL1fy6253cmLgqVQ==}
+ engines: {node: '>=4'}
+
+ postcss@8.4.38:
+ resolution: {integrity: sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==}
+ engines: {node: ^10 || ^12 || >=14}
+
+ prelude-ls@1.2.1:
+ resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==}
+ engines: {node: '>= 0.8.0'}
+
+ prettier-linter-helpers@1.0.0:
+ resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==}
+ engines: {node: '>=6.0.0'}
+
+ prettier-plugin-packagejson@2.5.1:
+ resolution: {integrity: sha512-6i4PW1KxEA+VrokYNGeI/q8qQX3u5DNBc7eLr9GX4OrvWr9DMls1lhbuNopkKG7Li9rTNxerWnYQyjxoUO4ROA==}
+ peerDependencies:
+ prettier: '>= 1.16.0'
+ peerDependenciesMeta:
+ prettier:
+ optional: true
+
+ prettier@3.3.3:
+ resolution: {integrity: sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==}
+ engines: {node: '>=14'}
+ hasBin: true
+
+ pretty-ms@9.0.0:
+ resolution: {integrity: sha512-E9e9HJ9R9NasGOgPaPE8VMeiPKAyWR5jcFpNnwIejslIhWqdqOrb2wShBsncMPUb+BcCd2OPYfh7p2W6oemTng==}
+ engines: {node: '>=18'}
+
+ process-nextick-args@2.0.1:
+ resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==}
+
+ proto-list@1.2.4:
+ resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==}
+
+ punycode.js@2.3.1:
+ resolution: {integrity: sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==}
+ engines: {node: '>=6'}
+
+ punycode@2.3.1:
+ resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==}
+ engines: {node: '>=6'}
+
+ queue-microtask@1.2.3:
+ resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
+
+ rc@1.2.8:
+ resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==}
+ hasBin: true
+
+ read-package-up@11.0.0:
+ resolution: {integrity: sha512-MbgfoNPANMdb4oRBNg5eqLbB2t2r+o5Ua1pNt8BqGp4I0FJZhuVSOj3PaBPni4azWuSzEdNn2evevzVmEk1ohQ==}
+ engines: {node: '>=18'}
+
+ read-pkg-up@7.0.1:
+ resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==}
+ engines: {node: '>=8'}
+
+ read-pkg@5.2.0:
+ resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==}
+ engines: {node: '>=8'}
+
+ read-pkg@9.0.1:
+ resolution: {integrity: sha512-9viLL4/n1BJUCT1NXVTdS1jtm80yDEgR5T4yCelII49Mbj0v1rZdKqj7zCiYdbB0CuCgdrvHcNogAKTFPBocFA==}
+ engines: {node: '>=18'}
+
+ readable-stream@2.3.8:
+ resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==}
+
+ readable-stream@3.6.2:
+ resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==}
+ engines: {node: '>= 6'}
+
+ refa@0.12.1:
+ resolution: {integrity: sha512-J8rn6v4DBb2nnFqkqwy6/NnTYMcgLA+sLr0iIO41qpv0n+ngb7ksag2tMRl0inb1bbO/esUwzW1vbJi7K0sI0g==}
+ engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
+
+ regenerator-runtime@0.14.1:
+ resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==}
+
+ regexp-ast-analysis@0.7.1:
+ resolution: {integrity: sha512-sZuz1dYW/ZsfG17WSAG7eS85r5a0dDsvg+7BiiYR5o6lKCAtUrEwdmRmaGF6rwVj3LcmAeYkOWKEPlbPzN3Y3A==}
+ engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
+
+ regexp-tree@0.1.27:
+ resolution: {integrity: sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==}
+ hasBin: true
+
+ regexp.prototype.flags@1.5.2:
+ resolution: {integrity: sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==}
+ engines: {node: '>= 0.4'}
+
+ registry-auth-token@5.0.2:
+ resolution: {integrity: sha512-o/3ikDxtXaA59BmZuZrJZDJv8NMDGSj+6j6XaeBmHw8eY1i1qd9+6H+LjVvQXx3HN6aRCGa1cUdJ9RaJZUugnQ==}
+ engines: {node: '>=14'}
+
+ regjsparser@0.10.0:
+ resolution: {integrity: sha512-qx+xQGZVsy55CH0a1hiVwHmqjLryfh7wQyF5HO07XJ9f7dQMY/gPQHhlyDkIzJKC+x2fUCpCcUODUUUFrm7SHA==}
+ hasBin: true
+
+ repeat-string@1.6.1:
+ resolution: {integrity: sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==}
+ engines: {node: '>=0.10'}
+
+ require-directory@2.1.1:
+ resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}
+ engines: {node: '>=0.10.0'}
+
+ require-from-string@2.0.2:
+ resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==}
+ engines: {node: '>=0.10.0'}
+
+ resolve-dir@1.0.1:
+ resolution: {integrity: sha512-R7uiTjECzvOsWSfdM0QKFNBVFcK27aHOUwdvK53BcW8zqnGdYp0Fbj82cy54+2A4P2tFM22J5kRfe1R+lM/1yg==}
+ engines: {node: '>=0.10.0'}
+
+ resolve-from@4.0.0:
+ resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
+ engines: {node: '>=4'}
+
+ resolve-from@5.0.0:
+ resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==}
+ engines: {node: '>=8'}
+
+ resolve-pkg-maps@1.0.0:
+ resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==}
+
+ resolve@1.22.8:
+ resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==}
+ hasBin: true
+
+ restore-cursor@3.1.0:
+ resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==}
+ engines: {node: '>=8'}
+
+ restore-cursor@5.1.0:
+ resolution: {integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==}
+ engines: {node: '>=18'}
+
+ reusify@1.0.4:
+ resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==}
+ engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
+
+ rfdc@1.4.1:
+ resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==}
+
+ rimraf@6.0.1:
+ resolution: {integrity: sha512-9dkvaxAsk/xNXSJzMgFqqMCuFgt2+KsOFek3TMLfo8NCPfWpBmqwyNn5Y+NX56QUYfCtsyhF3ayiboEoUmJk/A==}
+ engines: {node: 20 || >=22}
+ hasBin: true
+
+ rollup-plugin-ts@3.4.5:
+ resolution: {integrity: sha512-9iCstRJpEZXSRQuXitlSZAzcGlrqTbJg1pE4CMbEi6xYldxVncdPyzA2I+j6vnh73wBymZckerS+Q/iEE/M3Ow==}
+ engines: {node: '>=16.15.1', npm: '>=7.0.0', pnpm: '>=3.2.0', yarn: '>=1.13'}
+ peerDependencies:
+ '@babel/core': '>=7.x'
+ '@babel/plugin-transform-runtime': '>=7.x'
+ '@babel/preset-env': '>=7.x'
+ '@babel/preset-typescript': '>=7.x'
+ '@babel/runtime': '>=7.x'
+ '@swc/core': '>=1.x'
+ '@swc/helpers': '>=0.2'
+ rollup: '>=1.x || >=2.x || >=3.x'
+ typescript: '>=3.2.x || >= 4.x || >= 5.x'
+ peerDependenciesMeta:
+ '@babel/core':
+ optional: true
+ '@babel/plugin-transform-runtime':
+ optional: true
+ '@babel/preset-env':
+ optional: true
+ '@babel/preset-typescript':
+ optional: true
+ '@babel/runtime':
+ optional: true
+ '@swc/core':
+ optional: true
+ '@swc/helpers':
+ optional: true
+
+ rollup@4.20.0:
+ resolution: {integrity: sha512-6rbWBChcnSGzIlXeIdNIZTopKYad8ZG8ajhl78lGRLsI2rX8IkaotQhVas2Ma+GPxJav19wrSzvRvuiv0YKzWw==}
+ engines: {node: '>=18.0.0', npm: '>=8.0.0'}
+ hasBin: true
+
+ run-async@2.4.1:
+ resolution: {integrity: sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==}
+ engines: {node: '>=0.12.0'}
+
+ run-con@1.3.2:
+ resolution: {integrity: sha512-CcfE+mYiTcKEzg0IqS08+efdnH0oJ3zV0wSUFBNrMHMuxCtXvBCLzCJHatwuXDcu/RlhjTziTo/a1ruQik6/Yg==}
+ hasBin: true
+
+ run-parallel@1.2.0:
+ resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
+
+ rxjs@7.8.1:
+ resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==}
+
+ safe-array-concat@1.1.2:
+ resolution: {integrity: sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==}
+ engines: {node: '>=0.4'}
+
+ safe-buffer@5.1.2:
+ resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==}
+
+ safe-buffer@5.2.1:
+ resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
+
+ safe-regex-test@1.0.3:
+ resolution: {integrity: sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==}
+ engines: {node: '>= 0.4'}
+
+ safer-buffer@2.1.2:
+ resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
+
+ scslre@0.3.0:
+ resolution: {integrity: sha512-3A6sD0WYP7+QrjbfNA2FN3FsOaGGFoekCVgTyypy53gPxhbkCIjtO6YWgdrfM+n/8sI8JeXZOIxsHjMTNxQ4nQ==}
+ engines: {node: ^14.0.0 || >=16.0.0}
+
+ semantic-release@24.0.0:
+ resolution: {integrity: sha512-v46CRPw+9eI3ZuYGF2oAjqPqsfbnfFTwLBgQsv/lch4goD09ytwOTESMN4QIrx/wPLxUGey60/NMx+ANQtWRsA==}
+ engines: {node: '>=20.8.1'}
+ hasBin: true
+
+ semver-diff@4.0.0:
+ resolution: {integrity: sha512-0Ju4+6A8iOnpL/Thra7dZsSlOHYAHIeMxfhWQRI1/VLcT3WDBZKKtQt/QkBOsiIN9ZpuvHE6cGZ0x4glCMmfiA==}
+ engines: {node: '>=12'}
+
+ semver-regex@4.0.5:
+ resolution: {integrity: sha512-hunMQrEy1T6Jr2uEVjrAIqjwWcQTgOAcIM52C8MY1EZSD3DDNft04XzvYKPqjED65bNVVko0YI38nYeEHCX3yw==}
+ engines: {node: '>=12'}
+
+ semver@5.7.2:
+ resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==}
+ hasBin: true
+
+ semver@6.3.1:
+ resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==}
+ hasBin: true
+
+ semver@7.6.3:
+ resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==}
+ engines: {node: '>=10'}
+ hasBin: true
+
+ set-function-length@1.2.2:
+ resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==}
+ engines: {node: '>= 0.4'}
+
+ set-function-name@2.0.2:
+ resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==}
+ engines: {node: '>= 0.4'}
+
+ shebang-command@2.0.0:
+ resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
+ engines: {node: '>=8'}
+
+ shebang-regex@3.0.0:
+ resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
+ engines: {node: '>=8'}
+
+ side-channel@1.0.6:
+ resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==}
+ engines: {node: '>= 0.4'}
+
+ signal-exit@3.0.7:
+ resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}
+
+ signal-exit@4.1.0:
+ resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==}
+ engines: {node: '>=14'}
+
+ signale@1.4.0:
+ resolution: {integrity: sha512-iuh+gPf28RkltuJC7W5MRi6XAjTDCAPC/prJUpQoG4vIP3MJZ+GTydVnodXA7pwvTKb2cA0m9OFZW/cdWy/I/w==}
+ engines: {node: '>=6'}
+
+ sisteransi@1.0.5:
+ resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==}
+
+ skin-tone@2.0.0:
+ resolution: {integrity: sha512-kUMbT1oBJCpgrnKoSr0o6wPtvRWT9W9UKvGLwfJYO2WuahZRHOpEyL1ckyMGgMWh0UdpmaoFqKKD29WTomNEGA==}
+ engines: {node: '>=8'}
+
+ slash@3.0.0:
+ resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==}
+ engines: {node: '>=8'}
+
+ slash@4.0.0:
+ resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==}
+ engines: {node: '>=12'}
+
+ slash@5.1.0:
+ resolution: {integrity: sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==}
+ engines: {node: '>=14.16'}
+
+ slashes@3.0.12:
+ resolution: {integrity: sha512-Q9VME8WyGkc7pJf6QEkj3wE+2CnvZMI+XJhwdTPR8Z/kWQRXi7boAWLDibRPyHRTUTPx5FaU7MsyrjI3yLB4HA==}
+
+ slice-ansi@5.0.0:
+ resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==}
+ engines: {node: '>=12'}
+
+ slice-ansi@7.1.0:
+ resolution: {integrity: sha512-bSiSngZ/jWeX93BqeIAbImyTbEihizcwNjFoRUIY/T1wWQsfsm2Vw1agPKylXvQTU7iASGdHhyqRlqQzfz+Htg==}
+ engines: {node: '>=18'}
+
+ smol-toml@1.2.1:
+ resolution: {integrity: sha512-OtZKrVrGIT+m++lxyF0z5n68nkwdgZotPhy89bfA4T7nSWe0xeQtfbjM1z5VLTilJdWXH46g8i0oAcpQNkzZTg==}
+ engines: {node: '>= 18', pnpm: '>= 9'}
+
+ sort-object-keys@1.1.3:
+ resolution: {integrity: sha512-855pvK+VkU7PaKYPc+Jjnmt4EzejQHyhhF33q31qG8x7maDzkeFhAAThdCYay11CISO+qAMwjOBP+fPZe0IPyg==}
+
+ sort-package-json@2.10.0:
+ resolution: {integrity: sha512-MYecfvObMwJjjJskhxYfuOADkXp1ZMMnCFC8yhp+9HDsk7HhR336hd7eiBs96lTXfiqmUNI+WQCeCMRBhl251g==}
+ hasBin: true
+
+ source-map-js@1.2.0:
+ resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==}
+ engines: {node: '>=0.10.0'}
+
+ source-map@0.6.1:
+ resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
+ engines: {node: '>=0.10.0'}
+
+ spawn-error-forwarder@1.0.0:
+ resolution: {integrity: sha512-gRjMgK5uFjbCvdibeGJuy3I5OYz6VLoVdsOJdA6wV0WlfQVLFueoqMxwwYD9RODdgb6oUIvlRlsyFSiQkMKu0g==}
+
+ spdx-correct@3.2.0:
+ resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==}
+
+ spdx-exceptions@2.5.0:
+ resolution: {integrity: sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==}
+
+ spdx-expression-parse@3.0.1:
+ resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==}
+
+ spdx-expression-parse@4.0.0:
+ resolution: {integrity: sha512-Clya5JIij/7C6bRR22+tnGXbc4VKlibKSVj2iHvVeX5iMW7s1SIQlqu699JkODJJIhh/pUu8L0/VLh8xflD+LQ==}
+
+ spdx-license-ids@3.0.18:
+ resolution: {integrity: sha512-xxRs31BqRYHwiMzudOrpSiHtZ8i/GeionCBDSilhYRj+9gIcI8wCZTlXZKu9vZIVqViP3dcp9qE5G6AlIaD+TQ==}
+
+ split2@1.0.0:
+ resolution: {integrity: sha512-NKywug4u4pX/AZBB1FCPzZ6/7O+Xhz1qMVbzTvvKvikjO99oPN87SkK08mEY9P63/5lWjK+wgOOgApnTg5r6qg==}
+
+ split2@4.2.0:
+ resolution: {integrity: sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==}
+ engines: {node: '>= 10.x'}
+
+ stable-hash@0.0.4:
+ resolution: {integrity: sha512-LjdcbuBeLcdETCrPn9i8AYAZ1eCtu4ECAWtP7UleOiZ9LzVxRzzUZEoZ8zB24nhkQnDWyET0I+3sWokSDS3E7g==}
+
+ stream-combiner2@1.1.1:
+ resolution: {integrity: sha512-3PnJbYgS56AeWgtKF5jtJRT6uFJe56Z0Hc5Ngg/6sI6rIt8iiMBTa9cvdyFfpMQjaVHr8dusbNeFGIIonxOvKw==}
+
+ string-argv@0.3.2:
+ resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==}
+ engines: {node: '>=0.6.19'}
+
+ string-width@4.2.3:
+ resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
+ engines: {node: '>=8'}
+
+ string-width@5.1.2:
+ resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==}
+ engines: {node: '>=12'}
+
+ string-width@7.1.0:
+ resolution: {integrity: sha512-SEIJCWiX7Kg4c129n48aDRwLbFb2LJmXXFrWBG4NGaRtMQ3myKPKbwrD1BKqQn74oCoNMBVrfDEr5M9YxCsrkw==}
+ engines: {node: '>=18'}
+
+ string.prototype.trim@1.2.9:
+ resolution: {integrity: sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==}
+ engines: {node: '>= 0.4'}
+
+ string.prototype.trimend@1.0.8:
+ resolution: {integrity: sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==}
+
+ string.prototype.trimstart@1.0.8:
+ resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==}
+ engines: {node: '>= 0.4'}
+
+ string_decoder@1.1.1:
+ resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==}
+
+ string_decoder@1.3.0:
+ resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==}
+
+ strip-ansi@6.0.1:
+ resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
+ engines: {node: '>=8'}
+
+ strip-ansi@7.1.0:
+ resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==}
+ engines: {node: '>=12'}
+
+ strip-bom@3.0.0:
+ resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==}
+ engines: {node: '>=4'}
+
+ strip-bom@4.0.0:
+ resolution: {integrity: sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==}
+ engines: {node: '>=8'}
+
+ strip-final-newline@2.0.0:
+ resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==}
+ engines: {node: '>=6'}
+
+ strip-final-newline@3.0.0:
+ resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==}
+ engines: {node: '>=12'}
+
+ strip-final-newline@4.0.0:
+ resolution: {integrity: sha512-aulFJcD6YK8V1G7iRB5tigAP4TsHBZZrOV8pjV++zdUwmeV8uzbY7yn6h9MswN62adStNZFuCIx4haBnRuMDaw==}
+ engines: {node: '>=18'}
+
+ strip-indent@3.0.0:
+ resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==}
+ engines: {node: '>=8'}
+
+ strip-json-comments@2.0.1:
+ resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==}
+ engines: {node: '>=0.10.0'}
+
+ strip-json-comments@3.1.1:
+ resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
+ engines: {node: '>=8'}
-packages:
+ strip-json-comments@5.0.1:
+ resolution: {integrity: sha512-0fk9zBqO67Nq5M/m45qHCJxylV/DhBlIOVExqgOMiCCrzrhU6tCibRXNqE3jwJLftzE9SNuZtYbpzcO+i9FiKw==}
+ engines: {node: '>=14.16'}
+
+ summary@2.1.0:
+ resolution: {integrity: sha512-nMIjMrd5Z2nuB2RZCKJfFMjgS3fygbeyGk9PxPPaJR1RIcyN9yn4A63Isovzm3ZtQuEkLBVgMdPup8UeLH7aQw==}
+
+ super-regex@1.0.0:
+ resolution: {integrity: sha512-CY8u7DtbvucKuquCmOFEKhr9Besln7n9uN8eFbwcoGYWXOMW07u2o8njWaiXt11ylS3qoGF55pILjRmPlbodyg==}
+ engines: {node: '>=18'}
+
+ supports-color@5.5.0:
+ resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==}
+ engines: {node: '>=4'}
+
+ supports-color@7.2.0:
+ resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
+ engines: {node: '>=8'}
+
+ supports-hyperlinks@3.0.0:
+ resolution: {integrity: sha512-QBDPHyPQDRTy9ku4URNGY5Lah8PAaXs6tAAwp55sL5WCsSW7GIfdf6W5ixfziW+t7wh3GVvHyHHyQ1ESsoRvaA==}
+ engines: {node: '>=14.18'}
+
+ supports-preserve-symlinks-flag@1.0.0:
+ resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
+ engines: {node: '>= 0.4'}
+
+ synckit@0.6.2:
+ resolution: {integrity: sha512-Vhf+bUa//YSTYKseDiiEuQmhGCoIF3CVBhunm3r/DQnYiGT4JssmnKQc44BIyOZRK2pKjXXAgbhfmbeoC9CJpA==}
+ engines: {node: '>=12.20'}
+
+ synckit@0.9.1:
+ resolution: {integrity: sha512-7gr8p9TQP6RAHusBOSLs46F4564ZrjV8xFmw5zCmgmhGUcw2hxsShhJ6CEiHQMgPDwAQ1fWHPM0ypc4RMAig4A==}
+ engines: {node: ^14.18.0 || >=16.0.0}
+
+ tapable@2.2.1:
+ resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==}
+ engines: {node: '>=6'}
+
+ temp-dir@3.0.0:
+ resolution: {integrity: sha512-nHc6S/bwIilKHNRgK/3jlhDoIHcp45YgyiwcAk46Tr0LfEqGBVpmiAyuiuxeVE44m3mXnEeVhaipLOEWmH+Njw==}
+ engines: {node: '>=14.16'}
+
+ tempy@3.1.0:
+ resolution: {integrity: sha512-7jDLIdD2Zp0bDe5r3D2qtkd1QOCacylBuL7oa4udvN6v2pqr4+LcCr67C8DR1zkpaZ8XosF5m1yQSabKAW6f2g==}
+ engines: {node: '>=14.16'}
+
+ text-extensions@2.4.0:
+ resolution: {integrity: sha512-te/NtwBwfiNRLf9Ijqx3T0nlqZiQ2XrrtBvu+cLL8ZRrGkO0NHTug8MYFKyoSrv/sHTaSKfilUkizV6XhxMJ3g==}
+ engines: {node: '>=8'}
+
+ text-table@0.2.0:
+ resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==}
+
+ thenify-all@1.6.0:
+ resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==}
+ engines: {node: '>=0.8'}
+
+ thenify@3.3.1:
+ resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==}
+
+ through2@2.0.5:
+ resolution: {integrity: sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==}
+
+ through@2.3.8:
+ resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==}
+
+ time-span@5.1.0:
+ resolution: {integrity: sha512-75voc/9G4rDIJleOo4jPvN4/YC4GRZrY8yy1uU4lwrB3XEQbWve8zXoO5No4eFrGcTAMYyoY67p8jRQdtA1HbA==}
+ engines: {node: '>=12'}
+
+ tmp@0.0.33:
+ resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==}
+ engines: {node: '>=0.6.0'}
+
+ to-fast-properties@2.0.0:
+ resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==}
+ engines: {node: '>=4'}
+
+ to-regex-range@5.0.1:
+ resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
+ engines: {node: '>=8.0'}
+
+ toml-eslint-parser@0.10.0:
+ resolution: {integrity: sha512-khrZo4buq4qVmsGzS5yQjKe/WsFvV8fGfOjDQN0q4iy9FjRfPWRgTFrU8u1R2iu/SfWLhY9WnCi4Jhdrcbtg+g==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+
+ traverse@0.6.9:
+ resolution: {integrity: sha512-7bBrcF+/LQzSgFmT0X5YclVqQxtv7TDJ1f8Wj7ibBu/U6BMLeOpUxuZjV7rMc44UtKxlnMFigdhFAIszSX1DMg==}
+ engines: {node: '>= 0.4'}
+
+ ts-api-utils@1.3.0:
+ resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==}
+ engines: {node: '>=16'}
+ peerDependencies:
+ typescript: '>=4.2.0'
+
+ ts-clone-node@3.0.0:
+ resolution: {integrity: sha512-egavvyHbIoelkgh1IC2agNB1uMNjB8VJgh0g/cn0bg2XXTcrtjrGMzEk4OD3Fi2hocICjP3vMa56nkzIzq0FRg==}
+ engines: {node: '>=14.9.0'}
+ peerDependencies:
+ typescript: ^3.x || ^4.x || ^5.x
+
+ ts-declaration-location@1.0.4:
+ resolution: {integrity: sha512-r4JoxYhKULbZuH81Pjrp9OEG5St7XWk7zXwGkLKhmVcjiBVHTJXV5wK6dEa9JKW5QGSTW6b1lOjxAKp8R1SQhg==}
+ peerDependencies:
+ typescript: '>=4.0.0'
+
+ tsc-files@1.1.4:
+ resolution: {integrity: sha512-RePsRsOLru3BPpnf237y1Xe1oCGta8rmSYzM76kYo5tLGsv5R2r3s64yapYorGTPuuLyfS9NVbh9ydzmvNie2w==}
+ hasBin: true
+ peerDependencies:
+ typescript: '>=3'
+
+ tsconfig-paths@3.15.0:
+ resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==}
+
+ tslib@2.6.3:
+ resolution: {integrity: sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==}
+
+ tsx@4.16.5:
+ resolution: {integrity: sha512-ArsiAQHEW2iGaqZ8fTA1nX0a+lN5mNTyuGRRO6OW3H/Yno1y9/t1f9YOI1Cfoqz63VAthn++ZYcbDP7jPflc+A==}
+ engines: {node: '>=18.0.0'}
+ hasBin: true
+
+ type-check@0.4.0:
+ resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
+ engines: {node: '>= 0.8.0'}
+
+ type-detect@4.0.8:
+ resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==}
+ engines: {node: '>=4'}
+
+ type-fest@0.20.2:
+ resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==}
+ engines: {node: '>=10'}
+
+ type-fest@0.21.3:
+ resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==}
+ engines: {node: '>=10'}
+
+ type-fest@0.6.0:
+ resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==}
+ engines: {node: '>=8'}
+
+ type-fest@0.8.1:
+ resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==}
+ engines: {node: '>=8'}
+
+ type-fest@1.4.0:
+ resolution: {integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==}
+ engines: {node: '>=10'}
+
+ type-fest@2.19.0:
+ resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==}
+ engines: {node: '>=12.20'}
+
+ type-fest@4.20.0:
+ resolution: {integrity: sha512-MBh+PHUHHisjXf4tlx0CFWoMdjx8zCMLJHOjnV1prABYZFHqtFOyauCIK2/7w4oIfwkF8iNhLtnJEfVY2vn3iw==}
+ engines: {node: '>=16'}
+
+ typed-array-buffer@1.0.2:
+ resolution: {integrity: sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==}
+ engines: {node: '>= 0.4'}
+
+ typed-array-byte-length@1.0.1:
+ resolution: {integrity: sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==}
+ engines: {node: '>= 0.4'}
+
+ typed-array-byte-offset@1.0.2:
+ resolution: {integrity: sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==}
+ engines: {node: '>= 0.4'}
+
+ typed-array-length@1.0.6:
+ resolution: {integrity: sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==}
+ engines: {node: '>= 0.4'}
+
+ typedarray.prototype.slice@1.0.3:
+ resolution: {integrity: sha512-8WbVAQAUlENo1q3c3zZYuy5k9VzBQvp8AX9WOtbvyWlLM1v5JaSRmjubLjzHF4JFtptjH/5c/i95yaElvcjC0A==}
+ engines: {node: '>= 0.4'}
+
+ typescript@5.4.5:
+ resolution: {integrity: sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==}
+ engines: {node: '>=14.17'}
+ hasBin: true
+
+ ua-parser-js@1.0.38:
+ resolution: {integrity: sha512-Aq5ppTOfvrCMgAPneW1HfWj66Xi7XL+/mIy996R1/CLS/rcyJQm6QZdsKrUeivDFQ+Oc9Wyuwor8Ze8peEoUoQ==}
+
+ uc.micro@2.1.0:
+ resolution: {integrity: sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==}
+
+ ufo@1.5.3:
+ resolution: {integrity: sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw==}
+
+ uglify-js@3.17.4:
+ resolution: {integrity: sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==}
+ engines: {node: '>=0.8.0'}
+ hasBin: true
+
+ unbox-primitive@1.0.2:
+ resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==}
- /@aashutoshrathi/word-wrap@1.2.6:
- resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==}
+ unconfig@0.5.5:
+ resolution: {integrity: sha512-VQZ5PT9HDX+qag0XdgQi8tJepPhXiR/yVOkn707gJDKo31lGjRilPREiQJ9Z6zd/Ugpv6ZvO5VxVIcatldYcNQ==}
+
+ undici-types@6.13.0:
+ resolution: {integrity: sha512-xtFJHudx8S2DSoujjMd1WeWvn7KKWFRESZTMeL1RptAYERu29D6jphMjjY+vn96jvN3kVPDNxU/E13VTaXj6jg==}
+
+ unicode-emoji-modifier-base@1.0.0:
+ resolution: {integrity: sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g==}
+ engines: {node: '>=4'}
+
+ unicorn-magic@0.1.0:
+ resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==}
+ engines: {node: '>=18'}
+
+ unique-string@3.0.0:
+ resolution: {integrity: sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ==}
+ engines: {node: '>=12'}
+
+ unist-util-stringify-position@2.0.3:
+ resolution: {integrity: sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==}
+
+ universal-user-agent@7.0.2:
+ resolution: {integrity: sha512-0JCqzSKnStlRRQfCdowvqy3cy0Dvtlb8xecj/H8JFZuCze4rwjPZQOgvFvn0Ws/usCHQFGpyr+pB9adaGwXn4Q==}
+
+ universalify@2.0.1:
+ resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==}
+ engines: {node: '>= 10.0.0'}
+
+ update-browserslist-db@1.0.16:
+ resolution: {integrity: sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ==}
+ hasBin: true
+ peerDependencies:
+ browserslist: '>= 4.21.0'
+
+ uri-js@4.4.1:
+ resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
+
+ url-join@5.0.0:
+ resolution: {integrity: sha512-n2huDr9h9yzd6exQVnH/jU5mr+Pfx08LRXXZhkLLetAMESRj+anQsTAh940iMrIetKAmry9coFuZQ2jY8/p3WA==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+ util-deprecate@1.0.2:
+ resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
+
+ validate-npm-package-license@3.0.4:
+ resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==}
+
+ vscode-languageserver-textdocument@1.0.12:
+ resolution: {integrity: sha512-cxWNPesCnQCcMPeenjKKsOCKQZ/L6Tv19DTRIGuLWe32lyzWhihGVJ/rcckZXJxfdKCFvRLS3fpBIsV/ZGX4zA==}
+
+ vscode-uri@3.0.8:
+ resolution: {integrity: sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==}
+
+ vue-eslint-parser@9.4.3:
+ resolution: {integrity: sha512-2rYRLWlIpaiN8xbPiDyXZXRgLGOtWxERV7ND5fFAv5qo1D2N9Fu9MNajBNc6o13lZ+24DAWCkQCvj4klgmcITg==}
+ engines: {node: ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: '>=6.0.0'
+
+ wcwidth@1.0.1:
+ resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==}
+
+ which-boxed-primitive@1.0.2:
+ resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==}
+
+ which-typed-array@1.1.15:
+ resolution: {integrity: sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==}
+ engines: {node: '>= 0.4'}
+
+ which@1.3.1:
+ resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==}
+ hasBin: true
+
+ which@2.0.2:
+ resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
+ engines: {node: '>= 8'}
+ hasBin: true
+
+ word-wrap@1.2.5:
+ resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==}
engines: {node: '>=0.10.0'}
- dev: true
- /@babel/code-frame@7.24.2:
- resolution: {integrity: sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==}
- engines: {node: '>=6.9.0'}
+ wordwrap@1.0.0:
+ resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==}
+
+ wrap-ansi@7.0.0:
+ resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
+ engines: {node: '>=10'}
+
+ wrap-ansi@8.1.0:
+ resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==}
+ engines: {node: '>=12'}
+
+ wrap-ansi@9.0.0:
+ resolution: {integrity: sha512-G8ura3S+3Z2G+mkgNRq8dqaFZAuxfsxpBB8OCTGRTCtp+l/v9nbFNmCUP1BZMts3G1142MsZfn6eeUKrr4PD1Q==}
+ engines: {node: '>=18'}
+
+ wrappy@1.0.2:
+ resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
+
+ xdg-basedir@5.1.0:
+ resolution: {integrity: sha512-GCPAHLvrIH13+c0SuacwvRYj2SxJXQ4kaVTT5xgL3kPrz56XxkF21IGhjSE1+W0aw7gpBWRGXLCPnPby6lSpmQ==}
+ engines: {node: '>=12'}
+
+ xml-name-validator@4.0.0:
+ resolution: {integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==}
+ engines: {node: '>=12'}
+
+ xtend@4.0.2:
+ resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==}
+ engines: {node: '>=0.4'}
+
+ y18n@5.0.8:
+ resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
+ engines: {node: '>=10'}
+
+ yaml-eslint-parser@1.2.3:
+ resolution: {integrity: sha512-4wZWvE398hCP7O8n3nXKu/vdq1HcH01ixYlCREaJL5NUMwQ0g3MaGFUBNSlmBtKmhbtVG/Cm6lyYmSVTEVil8A==}
+ engines: {node: ^14.17.0 || >=16.0.0}
+
+ yaml@2.5.0:
+ resolution: {integrity: sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw==}
+ engines: {node: '>= 14'}
+ hasBin: true
+
+ yargs-parser@20.2.9:
+ resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==}
+ engines: {node: '>=10'}
+
+ yargs-parser@21.1.1:
+ resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==}
+ engines: {node: '>=12'}
+
+ yargs@16.2.0:
+ resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==}
+ engines: {node: '>=10'}
+
+ yargs@17.7.2:
+ resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==}
+ engines: {node: '>=12'}
+
+ yocto-queue@0.1.0:
+ resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
+ engines: {node: '>=10'}
+
+ yocto-queue@1.0.0:
+ resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==}
+ engines: {node: '>=12.20'}
+
+ yoctocolors@2.0.2:
+ resolution: {integrity: sha512-Ct97huExsu7cWeEjmrXlofevF8CvzUglJ4iGUet5B8xn1oumtAZBpHU4GzYuoE6PVqcZ5hghtBrSlhwHuR1Jmw==}
+ engines: {node: '>=18'}
+
+ zod-validation-error@3.3.0:
+ resolution: {integrity: sha512-Syib9oumw1NTqEv4LT0e6U83Td9aVRk9iTXPUQr1otyV1PuXQKOvOwhMNqZIq5hluzHP2pMgnOmHEo7kPdI2mw==}
+ engines: {node: '>=18.0.0'}
+ peerDependencies:
+ zod: ^3.18.0
+
+ zod@3.23.8:
+ resolution: {integrity: sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==}
+
+snapshots:
+
+ '@antfu/install-pkg@0.3.3':
dependencies:
- '@babel/highlight': 7.24.2
- picocolors: 1.0.0
- dev: true
+ '@jsdevtools/ez-spawn': 3.0.4
- /@babel/helper-validator-identifier@7.22.20:
- resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==}
- engines: {node: '>=6.9.0'}
- dev: true
+ '@antfu/utils@0.7.10': {}
- /@babel/highlight@7.24.2:
- resolution: {integrity: sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==}
- engines: {node: '>=6.9.0'}
+ '@apidevtools/json-schema-ref-parser@11.6.4':
+ dependencies:
+ '@jsdevtools/ono': 7.1.3
+ '@types/json-schema': 7.0.15
+ js-yaml: 4.1.0
+
+ '@babel/code-frame@7.24.7':
+ dependencies:
+ '@babel/highlight': 7.24.7
+ picocolors: 1.0.1
+
+ '@babel/helper-string-parser@7.24.7': {}
+
+ '@babel/helper-validator-identifier@7.24.7': {}
+
+ '@babel/highlight@7.24.7':
dependencies:
- '@babel/helper-validator-identifier': 7.22.20
+ '@babel/helper-validator-identifier': 7.24.7
chalk: 2.4.2
js-tokens: 4.0.0
- picocolors: 1.0.0
- dev: true
+ picocolors: 1.0.1
- /@colors/colors@1.5.0:
- resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==}
- engines: {node: '>=0.1.90'}
- requiresBuild: true
- dev: true
+ '@babel/parser@7.24.7':
+ dependencies:
+ '@babel/types': 7.24.7
+
+ '@babel/runtime@7.24.7':
+ dependencies:
+ regenerator-runtime: 0.14.1
+
+ '@babel/types@7.24.7':
+ dependencies:
+ '@babel/helper-string-parser': 7.24.7
+ '@babel/helper-validator-identifier': 7.24.7
+ to-fast-properties: 2.0.0
+
+ '@clack/core@0.3.4':
+ dependencies:
+ picocolors: 1.0.1
+ sisteransi: 1.0.5
+
+ '@clack/prompts@0.7.0':
+ dependencies:
+ '@clack/core': 0.3.4
+ picocolors: 1.0.1
+ sisteransi: 1.0.5
+
+ '@colors/colors@1.5.0':
optional: true
- /@commitlint/cli@19.2.1(@types/node@18.11.9)(typescript@5.4.3):
- resolution: {integrity: sha512-cbkYUJsLqRomccNxvoJTyv5yn0bSy05BBizVyIcLACkRbVUqYorC351Diw/XFSWC/GtpwiwT2eOvQgFZa374bg==}
- engines: {node: '>=v18'}
- hasBin: true
+ '@commitlint/cli@19.3.0(@types/node@22.1.0)(typescript@5.4.5)':
dependencies:
- '@commitlint/format': 19.0.3
- '@commitlint/lint': 19.1.0
- '@commitlint/load': 19.2.0(@types/node@18.11.9)(typescript@5.4.3)
+ '@commitlint/format': 19.3.0
+ '@commitlint/lint': 19.2.2
+ '@commitlint/load': 19.2.0(@types/node@22.1.0)(typescript@5.4.5)
'@commitlint/read': 19.2.1
'@commitlint/types': 19.0.3
execa: 8.0.1
- yargs: 17.7.1
+ yargs: 17.7.2
transitivePeerDependencies:
- '@types/node'
- typescript
- dev: true
- /@commitlint/config-conventional@19.1.0:
- resolution: {integrity: sha512-KIKD2xrp6Uuk+dcZVj3++MlzIr/Su6zLE8crEDQCZNvWHNQSeeGbzOlNtsR32TUy6H3JbP7nWgduAHCaiGQ6EA==}
- engines: {node: '>=v18'}
+ '@commitlint/config-conventional@19.2.2':
dependencies:
'@commitlint/types': 19.0.3
conventional-changelog-conventionalcommits: 7.0.2
- dev: true
- /@commitlint/config-validator@19.0.3:
- resolution: {integrity: sha512-2D3r4PKjoo59zBc2auodrSCaUnCSALCx54yveOFwwP/i2kfEAQrygwOleFWswLqK0UL/F9r07MFi5ev2ohyM4Q==}
- engines: {node: '>=v18'}
+ '@commitlint/config-validator@19.0.3':
dependencies:
'@commitlint/types': 19.0.3
- ajv: 8.12.0
- dev: true
+ ajv: 8.16.0
- /@commitlint/ensure@19.0.3:
- resolution: {integrity: sha512-SZEpa/VvBLoT+EFZVb91YWbmaZ/9rPH3ESrINOl0HD2kMYsjvl0tF7nMHh0EpTcv4+gTtZBAe1y/SS6/OhfZzQ==}
- engines: {node: '>=v18'}
+ '@commitlint/ensure@19.0.3':
dependencies:
'@commitlint/types': 19.0.3
lodash.camelcase: 4.3.0
@@ -241,504 +4346,377 @@ packages:
lodash.snakecase: 4.1.1
lodash.startcase: 4.4.0
lodash.upperfirst: 4.3.1
- dev: true
- /@commitlint/execute-rule@19.0.0:
- resolution: {integrity: sha512-mtsdpY1qyWgAO/iOK0L6gSGeR7GFcdW7tIjcNFxcWkfLDF5qVbPHKuGATFqRMsxcO8OUKNj0+3WOHB7EHm4Jdw==}
- engines: {node: '>=v18'}
- dev: true
+ '@commitlint/execute-rule@19.0.0': {}
- /@commitlint/format@19.0.3:
- resolution: {integrity: sha512-QjjyGyoiVWzx1f5xOteKHNLFyhyweVifMgopozSgx1fGNrGV8+wp7k6n1t6StHdJ6maQJ+UUtO2TcEiBFRyR6Q==}
- engines: {node: '>=v18'}
+ '@commitlint/format@19.3.0':
dependencies:
'@commitlint/types': 19.0.3
chalk: 5.3.0
- dev: true
- /@commitlint/is-ignored@19.0.3:
- resolution: {integrity: sha512-MqDrxJaRSVSzCbPsV6iOKG/Lt52Y+PVwFVexqImmYYFhe51iVJjK2hRhOG2jUAGiUHk4jpdFr0cZPzcBkSzXDQ==}
- engines: {node: '>=v18'}
+ '@commitlint/is-ignored@19.2.2':
dependencies:
'@commitlint/types': 19.0.3
- semver: 7.6.0
- dev: true
+ semver: 7.6.3
- /@commitlint/lint@19.1.0:
- resolution: {integrity: sha512-ESjaBmL/9cxm+eePyEr6SFlBUIYlYpI80n+Ltm7IA3MAcrmiP05UMhJdAD66sO8jvo8O4xdGn/1Mt2G5VzfZKw==}
- engines: {node: '>=v18'}
+ '@commitlint/lint@19.2.2':
dependencies:
- '@commitlint/is-ignored': 19.0.3
+ '@commitlint/is-ignored': 19.2.2
'@commitlint/parse': 19.0.3
'@commitlint/rules': 19.0.3
'@commitlint/types': 19.0.3
- dev: true
- /@commitlint/load@19.2.0(@types/node@18.11.9)(typescript@5.4.3):
- resolution: {integrity: sha512-XvxxLJTKqZojCxaBQ7u92qQLFMMZc4+p9qrIq/9kJDy8DOrEa7P1yx7Tjdc2u2JxIalqT4KOGraVgCE7eCYJyQ==}
- engines: {node: '>=v18'}
+ '@commitlint/load@19.2.0(@types/node@22.1.0)(typescript@5.4.5)':
dependencies:
'@commitlint/config-validator': 19.0.3
'@commitlint/execute-rule': 19.0.0
'@commitlint/resolve-extends': 19.1.0
'@commitlint/types': 19.0.3
chalk: 5.3.0
- cosmiconfig: 9.0.0(typescript@5.4.3)
- cosmiconfig-typescript-loader: 5.0.0(@types/node@18.11.9)(cosmiconfig@9.0.0)(typescript@5.4.3)
+ cosmiconfig: 9.0.0(typescript@5.4.5)
+ cosmiconfig-typescript-loader: 5.0.0(@types/node@22.1.0)(cosmiconfig@9.0.0(typescript@5.4.5))(typescript@5.4.5)
lodash.isplainobject: 4.0.6
lodash.merge: 4.6.2
lodash.uniq: 4.5.0
transitivePeerDependencies:
- '@types/node'
- typescript
- dev: true
- /@commitlint/message@19.0.0:
- resolution: {integrity: sha512-c9czf6lU+9oF9gVVa2lmKaOARJvt4soRsVmbR7Njwp9FpbBgste5i7l/2l5o8MmbwGh4yE1snfnsy2qyA2r/Fw==}
- engines: {node: '>=v18'}
- dev: true
+ '@commitlint/message@19.0.0': {}
- /@commitlint/parse@19.0.3:
- resolution: {integrity: sha512-Il+tNyOb8VDxN3P6XoBBwWJtKKGzHlitEuXA5BP6ir/3loWlsSqDr5aecl6hZcC/spjq4pHqNh0qPlfeWu38QA==}
- engines: {node: '>=v18'}
+ '@commitlint/parse@19.0.3':
dependencies:
'@commitlint/types': 19.0.3
conventional-changelog-angular: 7.0.0
conventional-commits-parser: 5.0.0
- dev: true
- /@commitlint/read@19.2.1:
- resolution: {integrity: sha512-qETc4+PL0EUv7Q36lJbPG+NJiBOGg7SSC7B5BsPWOmei+Dyif80ErfWQ0qXoW9oCh7GTpTNRoaVhiI8RbhuaNw==}
- engines: {node: '>=v18'}
+ '@commitlint/read@19.2.1':
dependencies:
'@commitlint/top-level': 19.0.0
'@commitlint/types': 19.0.3
execa: 8.0.1
git-raw-commits: 4.0.0
minimist: 1.2.8
- dev: true
- /@commitlint/resolve-extends@19.1.0:
- resolution: {integrity: sha512-z2riI+8G3CET5CPgXJPlzftH+RiWYLMYv4C9tSLdLXdr6pBNimSKukYP9MS27ejmscqCTVA4almdLh0ODD2KYg==}
- engines: {node: '>=v18'}
+ '@commitlint/resolve-extends@19.1.0':
dependencies:
'@commitlint/config-validator': 19.0.3
'@commitlint/types': 19.0.3
global-directory: 4.0.1
- import-meta-resolve: 4.0.0
+ import-meta-resolve: 4.1.0
lodash.mergewith: 4.6.2
resolve-from: 5.0.0
- dev: true
- /@commitlint/rules@19.0.3:
- resolution: {integrity: sha512-TspKb9VB6svklxNCKKwxhELn7qhtY1rFF8ls58DcFd0F97XoG07xugPjjbVnLqmMkRjZDbDIwBKt9bddOfLaPw==}
- engines: {node: '>=v18'}
+ '@commitlint/rules@19.0.3':
dependencies:
'@commitlint/ensure': 19.0.3
'@commitlint/message': 19.0.0
'@commitlint/to-lines': 19.0.0
'@commitlint/types': 19.0.3
execa: 8.0.1
- dev: true
- /@commitlint/to-lines@19.0.0:
- resolution: {integrity: sha512-vkxWo+VQU5wFhiP9Ub9Sre0FYe019JxFikrALVoD5UGa8/t3yOJEpEhxC5xKiENKKhUkTpEItMTRAjHw2SCpZw==}
- engines: {node: '>=v18'}
- dev: true
+ '@commitlint/to-lines@19.0.0': {}
- /@commitlint/top-level@19.0.0:
- resolution: {integrity: sha512-KKjShd6u1aMGNkCkaX4aG1jOGdn7f8ZI8TR1VEuNqUOjWTOdcDSsmglinglJ18JTjuBX5I1PtjrhQCRcixRVFQ==}
- engines: {node: '>=v18'}
+ '@commitlint/top-level@19.0.0':
dependencies:
find-up: 7.0.0
- dev: true
- /@commitlint/types@19.0.3:
- resolution: {integrity: sha512-tpyc+7i6bPG9mvaBbtKUeghfyZSDgWquIDfMgqYtTbmZ9Y9VzEm2je9EYcQ0aoz5o7NvGS+rcDec93yO08MHYA==}
- engines: {node: '>=v18'}
+ '@commitlint/types@19.0.3':
dependencies:
'@types/conventional-commits-parser': 5.0.0
chalk: 5.3.0
- dev: true
- /@cspell/cspell-bundled-dicts@8.6.1:
- resolution: {integrity: sha512-s6Av1xIgctYLuUiazKZjQ2WRUXc9dU38BOZXwM/lb7y8grQMEuTjST1c+8MOkZkppx48/sO7GHIF3k9rEzD3fg==}
- engines: {node: '>=18'}
+ '@cspell/cspell-bundled-dicts@8.13.1':
dependencies:
'@cspell/dict-ada': 4.0.2
- '@cspell/dict-aws': 4.0.1
+ '@cspell/dict-aws': 4.0.3
'@cspell/dict-bash': 4.1.3
- '@cspell/dict-companies': 3.0.31
- '@cspell/dict-cpp': 5.1.3
+ '@cspell/dict-companies': 3.1.3
+ '@cspell/dict-cpp': 5.1.12
'@cspell/dict-cryptocurrencies': 5.0.0
'@cspell/dict-csharp': 4.0.2
'@cspell/dict-css': 4.0.12
'@cspell/dict-dart': 2.0.3
'@cspell/dict-django': 4.1.0
'@cspell/dict-docker': 1.1.7
- '@cspell/dict-dotnet': 5.0.0
+ '@cspell/dict-dotnet': 5.0.2
'@cspell/dict-elixir': 4.0.3
- '@cspell/dict-en-common-misspellings': 2.0.0
+ '@cspell/dict-en-common-misspellings': 2.0.3
'@cspell/dict-en-gb': 1.1.33
- '@cspell/dict-en_us': 4.3.17
- '@cspell/dict-filetypes': 3.0.3
+ '@cspell/dict-en_us': 4.3.23
+ '@cspell/dict-filetypes': 3.0.4
'@cspell/dict-fonts': 4.0.0
'@cspell/dict-fsharp': 1.0.1
- '@cspell/dict-fullstack': 3.1.5
+ '@cspell/dict-fullstack': 3.2.0
'@cspell/dict-gaming-terms': 1.0.5
'@cspell/dict-git': 3.0.0
- '@cspell/dict-golang': 6.0.5
+ '@cspell/dict-golang': 6.0.9
+ '@cspell/dict-google': 1.0.1
'@cspell/dict-haskell': 4.0.1
'@cspell/dict-html': 4.0.5
'@cspell/dict-html-symbol-entities': 4.0.0
- '@cspell/dict-java': 5.0.6
+ '@cspell/dict-java': 5.0.7
'@cspell/dict-julia': 1.0.1
- '@cspell/dict-k8s': 1.0.2
+ '@cspell/dict-k8s': 1.0.6
'@cspell/dict-latex': 4.0.0
'@cspell/dict-lorem-ipsum': 4.0.0
'@cspell/dict-lua': 4.0.3
'@cspell/dict-makefile': 1.0.0
- '@cspell/dict-node': 4.0.3
- '@cspell/dict-npm': 5.0.15
- '@cspell/dict-php': 4.0.6
- '@cspell/dict-powershell': 5.0.3
- '@cspell/dict-public-licenses': 2.0.6
- '@cspell/dict-python': 4.1.11
+ '@cspell/dict-monkeyc': 1.0.6
+ '@cspell/dict-node': 5.0.1
+ '@cspell/dict-npm': 5.0.18
+ '@cspell/dict-php': 4.0.8
+ '@cspell/dict-powershell': 5.0.5
+ '@cspell/dict-public-licenses': 2.0.7
+ '@cspell/dict-python': 4.2.3
'@cspell/dict-r': 2.0.1
'@cspell/dict-ruby': 5.0.2
- '@cspell/dict-rust': 4.0.2
- '@cspell/dict-scala': 5.0.0
- '@cspell/dict-software-terms': 3.3.18
+ '@cspell/dict-rust': 4.0.5
+ '@cspell/dict-scala': 5.0.3
+ '@cspell/dict-software-terms': 4.0.3
'@cspell/dict-sql': 2.1.3
'@cspell/dict-svelte': 1.0.2
'@cspell/dict-swift': 2.0.1
'@cspell/dict-terraform': 1.0.0
- '@cspell/dict-typescript': 3.1.2
+ '@cspell/dict-typescript': 3.1.6
'@cspell/dict-vue': 3.0.0
- dev: true
- /@cspell/cspell-json-reporter@8.6.1:
- resolution: {integrity: sha512-75cmJgU9iQgrDnLFIUyvgybySJJi29BPw71z+8ZO9WhNofufxoSjaWepZeYV2nK0nHXM+MbdQG5Mmj/Lv6J1FA==}
- engines: {node: '>=18'}
+ '@cspell/cspell-json-reporter@8.13.1':
dependencies:
- '@cspell/cspell-types': 8.6.1
- dev: true
+ '@cspell/cspell-types': 8.13.1
- /@cspell/cspell-pipe@8.6.1:
- resolution: {integrity: sha512-guIlGhhOLQwfqevBSgp26b+SX4I1hCH+puAksWAk93bybKkcGtGpcavAQSN9qvamox4zcHnvGutEPF+UcXuceQ==}
- engines: {node: '>=18'}
- dev: true
+ '@cspell/cspell-pipe@8.13.1': {}
- /@cspell/cspell-resolver@8.6.1:
- resolution: {integrity: sha512-ZUbYcvEhfokHG9qfUlIylUqEobG84PiDozCkE8U4h/rTSmYkf/nAD+M6yg+jQ0F2aTFGNbvpKKGFlfXFXveX7A==}
- engines: {node: '>=18'}
+ '@cspell/cspell-resolver@8.13.1':
dependencies:
global-directory: 4.0.1
- dev: true
- /@cspell/cspell-service-bus@8.6.1:
- resolution: {integrity: sha512-WpI3fSW8t00UMetfd6tS8f9+xE3+ElIUO/bQ1YKK95TMIRdEUcH+QDxcHM66pJXEm4WiaN3H/MfWk1fIhGlJ8g==}
- engines: {node: '>=18'}
- dev: true
+ '@cspell/cspell-service-bus@8.13.1': {}
- /@cspell/cspell-types@8.6.1:
- resolution: {integrity: sha512-MXa9v6sXbbwyiNno7v7vczNph6AsMNWnpMRCcW3h/siXNQYRuMssdxqT5sQJ8Kurh3M/Wo7DlKX4n74elKL3iQ==}
- engines: {node: '>=18'}
- dev: true
+ '@cspell/cspell-types@8.13.1': {}
- /@cspell/dict-ada@4.0.2:
- resolution: {integrity: sha512-0kENOWQeHjUlfyId/aCM/mKXtkEgV0Zu2RhUXCBr4hHo9F9vph+Uu8Ww2b0i5a4ZixoIkudGA+eJvyxrG1jUpA==}
- dev: true
+ '@cspell/dict-ada@4.0.2': {}
- /@cspell/dict-aws@4.0.1:
- resolution: {integrity: sha512-NXO+kTPQGqaaJKa4kO92NAXoqS+i99dQzf3/L1BxxWVSBS3/k1f3uhmqIh7Crb/n22W793lOm0D9x952BFga3Q==}
- dev: true
+ '@cspell/dict-aws@4.0.3': {}
- /@cspell/dict-bash@4.1.3:
- resolution: {integrity: sha512-tOdI3QVJDbQSwPjUkOiQFhYcu2eedmX/PtEpVWg0aFps/r6AyjUQINtTgpqMYnYuq8O1QUIQqnpx21aovcgZCw==}
- dev: true
+ '@cspell/dict-bash@4.1.3': {}
- /@cspell/dict-companies@3.0.31:
- resolution: {integrity: sha512-hKVpV/lcGKP4/DpEPS8P4osPvFH/YVLJaDn9cBIOH6/HSmL5LbFgJNKpMGaYRbhm2FEX56MKE3yn/MNeNYuesQ==}
- dev: true
+ '@cspell/dict-companies@3.1.3': {}
- /@cspell/dict-cpp@5.1.3:
- resolution: {integrity: sha512-sqnriXRAInZH9W75C+APBh6dtben9filPqVbIsiRMUXGg+s02ekz0z6LbS7kXeJ5mD2qXoMLBrv13qH2eIwutQ==}
- dev: true
+ '@cspell/dict-cpp@5.1.12': {}
- /@cspell/dict-cryptocurrencies@5.0.0:
- resolution: {integrity: sha512-Z4ARIw5+bvmShL+4ZrhDzGhnc9znaAGHOEMaB/GURdS/jdoreEDY34wdN0NtdLHDO5KO7GduZnZyqGdRoiSmYA==}
- dev: true
+ '@cspell/dict-cryptocurrencies@5.0.0': {}
- /@cspell/dict-csharp@4.0.2:
- resolution: {integrity: sha512-1JMofhLK+4p4KairF75D3A924m5ERMgd1GvzhwK2geuYgd2ZKuGW72gvXpIV7aGf52E3Uu1kDXxxGAiZ5uVG7g==}
- dev: true
+ '@cspell/dict-csharp@4.0.2': {}
- /@cspell/dict-css@4.0.12:
- resolution: {integrity: sha512-vGBgPM92MkHQF5/2jsWcnaahOZ+C6OE/fPvd5ScBP72oFY9tn5GLuomcyO0z8vWCr2e0nUSX1OGimPtcQAlvSw==}
- dev: true
+ '@cspell/dict-css@4.0.12': {}
- /@cspell/dict-dart@2.0.3:
- resolution: {integrity: sha512-cLkwo1KT5CJY5N5RJVHks2genFkNCl/WLfj+0fFjqNR+tk3tBI1LY7ldr9piCtSFSm4x9pO1x6IV3kRUY1lLiw==}
- dev: true
+ '@cspell/dict-dart@2.0.3': {}
- /@cspell/dict-data-science@1.0.11:
- resolution: {integrity: sha512-TaHAZRVe0Zlcc3C23StZqqbzC0NrodRwoSAc8dis+5qLeLLnOCtagYQeROQvDlcDg3X/VVEO9Whh4W/z4PAmYQ==}
- dev: true
+ '@cspell/dict-data-science@2.0.1': {}
- /@cspell/dict-django@4.1.0:
- resolution: {integrity: sha512-bKJ4gPyrf+1c78Z0Oc4trEB9MuhcB+Yg+uTTWsvhY6O2ncFYbB/LbEZfqhfmmuK/XJJixXfI1laF2zicyf+l0w==}
- dev: true
+ '@cspell/dict-django@4.1.0': {}
- /@cspell/dict-docker@1.1.7:
- resolution: {integrity: sha512-XlXHAr822euV36GGsl2J1CkBIVg3fZ6879ZOg5dxTIssuhUOCiV2BuzKZmt6aIFmcdPmR14+9i9Xq+3zuxeX0A==}
- dev: true
+ '@cspell/dict-docker@1.1.7': {}
- /@cspell/dict-dotnet@5.0.0:
- resolution: {integrity: sha512-EOwGd533v47aP5QYV8GlSSKkmM9Eq8P3G/eBzSpH3Nl2+IneDOYOBLEUraHuiCtnOkNsz0xtZHArYhAB2bHWAw==}
- dev: true
+ '@cspell/dict-dotnet@5.0.2': {}
- /@cspell/dict-elixir@4.0.3:
- resolution: {integrity: sha512-g+uKLWvOp9IEZvrIvBPTr/oaO6619uH/wyqypqvwpmnmpjcfi8+/hqZH8YNKt15oviK8k4CkINIqNhyndG9d9Q==}
- dev: true
+ '@cspell/dict-elixir@4.0.3': {}
- /@cspell/dict-en-common-misspellings@2.0.0:
- resolution: {integrity: sha512-NOg8dlv37/YqLkCfBs5OXeJm/Wcfb/CzeOmOZJ2ZXRuxwsNuolb4TREUce0yAXRqMhawahY5TSDRJJBgKjBOdw==}
- dev: true
+ '@cspell/dict-en-common-misspellings@2.0.3': {}
- /@cspell/dict-en-gb@1.1.33:
- resolution: {integrity: sha512-tKSSUf9BJEV+GJQAYGw5e+ouhEe2ZXE620S7BLKe3ZmpnjlNG9JqlnaBhkIMxKnNFkLY2BP/EARzw31AZnOv4g==}
- dev: true
+ '@cspell/dict-en-gb@1.1.33': {}
- /@cspell/dict-en_us@4.3.17:
- resolution: {integrity: sha512-CS0Tb2f2YwQZ4VZ6+WLAO5uOzb0iO/iYSRl34kX4enq6quXxLYzwdfGAwv85wSYHPdga8tGiZFP+p8GPsi2JEg==}
- dev: true
+ '@cspell/dict-en_us@4.3.23': {}
- /@cspell/dict-filetypes@3.0.3:
- resolution: {integrity: sha512-J9UP+qwwBLfOQ8Qg9tAsKtSY/WWmjj21uj6zXTI9hRLD1eG1uUOLcfVovAmtmVqUWziPSKMr87F6SXI3xmJXgw==}
- dev: true
+ '@cspell/dict-filetypes@3.0.4': {}
- /@cspell/dict-fonts@4.0.0:
- resolution: {integrity: sha512-t9V4GeN/m517UZn63kZPUYP3OQg5f0OBLSd3Md5CU3eH1IFogSvTzHHnz4Wqqbv8NNRiBZ3HfdY/pqREZ6br3Q==}
- dev: true
+ '@cspell/dict-fonts@4.0.0': {}
- /@cspell/dict-fsharp@1.0.1:
- resolution: {integrity: sha512-23xyPcD+j+NnqOjRHgW3IU7Li912SX9wmeefcY0QxukbAxJ/vAN4rBpjSwwYZeQPAn3fxdfdNZs03fg+UM+4yQ==}
- dev: true
+ '@cspell/dict-fsharp@1.0.1': {}
- /@cspell/dict-fullstack@3.1.5:
- resolution: {integrity: sha512-6ppvo1dkXUZ3fbYn/wwzERxCa76RtDDl5Afzv2lijLoijGGUw5yYdLBKJnx8PJBGNLh829X352ftE7BElG4leA==}
- dev: true
+ '@cspell/dict-fullstack@3.2.0': {}
- /@cspell/dict-gaming-terms@1.0.5:
- resolution: {integrity: sha512-C3riccZDD3d9caJQQs1+MPfrUrQ+0KHdlj9iUR1QD92FgTOF6UxoBpvHUUZ9YSezslcmpFQK4xQQ5FUGS7uWfw==}
- dev: true
+ '@cspell/dict-gaming-terms@1.0.5': {}
- /@cspell/dict-git@3.0.0:
- resolution: {integrity: sha512-simGS/lIiXbEaqJu9E2VPoYW1OTC2xrwPPXNXFMa2uo/50av56qOuaxDrZ5eH1LidFXwoc8HROCHYeKoNrDLSw==}
- dev: true
+ '@cspell/dict-git@3.0.0': {}
- /@cspell/dict-golang@6.0.5:
- resolution: {integrity: sha512-w4mEqGz4/wV+BBljLxduFNkMrd3rstBNDXmoX5kD4UTzIb4Sy0QybWCtg2iVT+R0KWiRRA56QKOvBsgXiddksA==}
- dev: true
+ '@cspell/dict-golang@6.0.9': {}
- /@cspell/dict-haskell@4.0.1:
- resolution: {integrity: sha512-uRrl65mGrOmwT7NxspB4xKXFUenNC7IikmpRZW8Uzqbqcu7ZRCUfstuVH7T1rmjRgRkjcIjE4PC11luDou4wEQ==}
- dev: true
+ '@cspell/dict-google@1.0.1': {}
- /@cspell/dict-html-symbol-entities@4.0.0:
- resolution: {integrity: sha512-HGRu+48ErJjoweR5IbcixxETRewrBb0uxQBd6xFGcxbEYCX8CnQFTAmKI5xNaIt2PKaZiJH3ijodGSqbKdsxhw==}
- dev: true
+ '@cspell/dict-haskell@4.0.1': {}
- /@cspell/dict-html@4.0.5:
- resolution: {integrity: sha512-p0brEnRybzSSWi8sGbuVEf7jSTDmXPx7XhQUb5bgG6b54uj+Z0Qf0V2n8b/LWwIPJNd1GygaO9l8k3HTCy1h4w==}
- dev: true
+ '@cspell/dict-html-symbol-entities@4.0.0': {}
- /@cspell/dict-java@5.0.6:
- resolution: {integrity: sha512-kdE4AHHHrixyZ5p6zyms1SLoYpaJarPxrz8Tveo6gddszBVVwIUZ+JkQE1bWNLK740GWzIXdkznpUfw1hP9nXw==}
- dev: true
+ '@cspell/dict-html@4.0.5': {}
- /@cspell/dict-julia@1.0.1:
- resolution: {integrity: sha512-4JsCLCRhhLMLiaHpmR7zHFjj1qOauzDI5ZzCNQS31TUMfsOo26jAKDfo0jljFAKgw5M2fEG7sKr8IlPpQAYrmQ==}
- dev: true
+ '@cspell/dict-java@5.0.7': {}
- /@cspell/dict-k8s@1.0.2:
- resolution: {integrity: sha512-tLT7gZpNPnGa+IIFvK9SP1LrSpPpJ94a/DulzAPOb1Q2UBFwdpFd82UWhio0RNShduvKG/WiMZf/wGl98pn+VQ==}
- dev: true
+ '@cspell/dict-julia@1.0.1': {}
- /@cspell/dict-latex@4.0.0:
- resolution: {integrity: sha512-LPY4y6D5oI7D3d+5JMJHK/wxYTQa2lJMSNxps2JtuF8hbAnBQb3igoWEjEbIbRRH1XBM0X8dQqemnjQNCiAtxQ==}
- dev: true
+ '@cspell/dict-k8s@1.0.6': {}
- /@cspell/dict-lorem-ipsum@4.0.0:
- resolution: {integrity: sha512-1l3yjfNvMzZPibW8A7mQU4kTozwVZVw0AvFEdy+NcqtbxH+TvbSkNMqROOFWrkD2PjnKG0+Ea0tHI2Pi6Gchnw==}
- dev: true
+ '@cspell/dict-latex@4.0.0': {}
- /@cspell/dict-lua@4.0.3:
- resolution: {integrity: sha512-lDHKjsrrbqPaea13+G9s0rtXjMO06gPXPYRjRYawbNmo4E/e3XFfVzeci3OQDQNDmf2cPOwt9Ef5lu2lDmwfJg==}
- dev: true
+ '@cspell/dict-lorem-ipsum@4.0.0': {}
- /@cspell/dict-makefile@1.0.0:
- resolution: {integrity: sha512-3W9tHPcSbJa6s0bcqWo6VisEDTSN5zOtDbnPabF7rbyjRpNo0uHXHRJQF8gAbFzoTzBBhgkTmrfSiuyQm7vBUQ==}
- dev: true
+ '@cspell/dict-lua@4.0.3': {}
+
+ '@cspell/dict-makefile@1.0.0': {}
- /@cspell/dict-node@4.0.3:
- resolution: {integrity: sha512-sFlUNI5kOogy49KtPg8SMQYirDGIAoKBO3+cDLIwD4MLdsWy1q0upc7pzGht3mrjuyMiPRUV14Bb0rkVLrxOhg==}
- dev: true
+ '@cspell/dict-monkeyc@1.0.6': {}
- /@cspell/dict-npm@5.0.15:
- resolution: {integrity: sha512-sX0X5YWNW54F4baW7b5JJB6705OCBIZtUqjOghlJNORS5No7QY1IX1zc5FxNNu4gsaCZITAmfMi4ityXEsEThA==}
- dev: true
+ '@cspell/dict-node@5.0.1': {}
- /@cspell/dict-php@4.0.6:
- resolution: {integrity: sha512-ySAXisf7twoVFZqBV2o/DKiCLIDTHNqfnj0EfH9OoOUR7HL3rb6zJkm0viLUFDO2G/8SyIi6YrN/6KX+Scjjjg==}
- dev: true
+ '@cspell/dict-npm@5.0.18': {}
- /@cspell/dict-powershell@5.0.3:
- resolution: {integrity: sha512-lEdzrcyau6mgzu1ie98GjOEegwVHvoaWtzQnm1ie4DyZgMr+N6D0Iyj1lzvtmt0snvsDFa5F2bsYzf3IMKcpcA==}
- dev: true
+ '@cspell/dict-php@4.0.8': {}
- /@cspell/dict-public-licenses@2.0.6:
- resolution: {integrity: sha512-bHqpSpJvLCUcWxj1ov/Ki8WjmESpYwRpQlqfdchekOTc93Huhvjm/RXVN1R4fVf4Hspyem1QVkCGqAmjJMj6sw==}
- dev: true
+ '@cspell/dict-powershell@5.0.5': {}
- /@cspell/dict-python@4.1.11:
- resolution: {integrity: sha512-XG+v3PumfzUW38huSbfT15Vqt3ihNb462ulfXifpQllPok5OWynhszCLCRQjQReV+dgz784ST4ggRxW452/kVg==}
+ '@cspell/dict-public-licenses@2.0.7': {}
+
+ '@cspell/dict-python@4.2.3':
dependencies:
- '@cspell/dict-data-science': 1.0.11
- dev: true
+ '@cspell/dict-data-science': 2.0.1
- /@cspell/dict-r@2.0.1:
- resolution: {integrity: sha512-KCmKaeYMLm2Ip79mlYPc8p+B2uzwBp4KMkzeLd5E6jUlCL93Y5Nvq68wV5fRLDRTf7N1LvofkVFWfDcednFOgA==}
- dev: true
+ '@cspell/dict-r@2.0.1': {}
- /@cspell/dict-ruby@5.0.2:
- resolution: {integrity: sha512-cIh8KTjpldzFzKGgrqUX4bFyav5lC52hXDKo4LbRuMVncs3zg4hcSf4HtURY+f2AfEZzN6ZKzXafQpThq3dl2g==}
- dev: true
+ '@cspell/dict-ruby@5.0.2': {}
- /@cspell/dict-rust@4.0.2:
- resolution: {integrity: sha512-RhziKDrklzOntxAbY3AvNR58wnFGIo3YS8+dNeLY36GFuWOvXDHFStYw5Pod4f/VXbO/+1tXtywCC4zWfB2p1w==}
- dev: true
+ '@cspell/dict-rust@4.0.5': {}
- /@cspell/dict-scala@5.0.0:
- resolution: {integrity: sha512-ph0twaRoV+ylui022clEO1dZ35QbeEQaKTaV2sPOsdwIokABPIiK09oWwGK9qg7jRGQwVaRPEq0Vp+IG1GpqSQ==}
- dev: true
+ '@cspell/dict-scala@5.0.3': {}
- /@cspell/dict-software-terms@3.3.18:
- resolution: {integrity: sha512-LJZGGMGqS8KzgXJrSMs3T+6GoqHG9z8Bc+rqLzLzbtoR3FbsMasE9U8oP2PmS3q7jJLFjQkzmg508DrcuZuo2g==}
- dev: true
+ '@cspell/dict-software-terms@4.0.3': {}
- /@cspell/dict-sql@2.1.3:
- resolution: {integrity: sha512-SEyTNKJrjqD6PAzZ9WpdSu6P7wgdNtGV2RV8Kpuw1x6bV+YsSptuClYG+JSdRExBTE6LwIe1bTklejUp3ZP8TQ==}
- dev: true
+ '@cspell/dict-sql@2.1.3': {}
- /@cspell/dict-svelte@1.0.2:
- resolution: {integrity: sha512-rPJmnn/GsDs0btNvrRBciOhngKV98yZ9SHmg8qI6HLS8hZKvcXc0LMsf9LLuMK1TmS2+WQFAan6qeqg6bBxL2Q==}
- dev: true
+ '@cspell/dict-svelte@1.0.2': {}
- /@cspell/dict-swift@2.0.1:
- resolution: {integrity: sha512-gxrCMUOndOk7xZFmXNtkCEeroZRnS2VbeaIPiymGRHj5H+qfTAzAKxtv7jJbVA3YYvEzWcVE2oKDP4wcbhIERw==}
- dev: true
+ '@cspell/dict-swift@2.0.1': {}
- /@cspell/dict-terraform@1.0.0:
- resolution: {integrity: sha512-Ak+vy4HP/bOgzf06BAMC30+ZvL9mzv21xLM2XtfnBLTDJGdxlk/nK0U6QT8VfFLqJ0ZZSpyOxGsUebWDCTr/zQ==}
- dev: true
+ '@cspell/dict-terraform@1.0.0': {}
- /@cspell/dict-typescript@3.1.2:
- resolution: {integrity: sha512-lcNOYWjLUvDZdLa0UMNd/LwfVdxhE9rKA+agZBGjL3lTA3uNvH7IUqSJM/IXhJoBpLLMVEOk8v1N9xi+vDuCdA==}
- dev: true
+ '@cspell/dict-typescript@3.1.6': {}
- /@cspell/dict-vue@3.0.0:
- resolution: {integrity: sha512-niiEMPWPV9IeRBRzZ0TBZmNnkK3olkOPYxC1Ny2AX4TGlYRajcW0WUtoSHmvvjZNfWLSg2L6ruiBeuPSbjnG6A==}
- dev: true
+ '@cspell/dict-vue@3.0.0': {}
- /@cspell/dynamic-import@8.6.1:
- resolution: {integrity: sha512-Fjvkcb5umIAcHfw/iiciYWgO2mXVuRZzQAWPSub6UFCxxcJlRz39YPXa+3O/m3lnXCeo8ChoaEN8qnuV4ogk6g==}
- engines: {node: '>=18.0'}
+ '@cspell/dynamic-import@8.13.1':
dependencies:
- import-meta-resolve: 4.0.0
- dev: true
+ import-meta-resolve: 4.1.0
- /@cspell/strong-weak-map@8.6.1:
- resolution: {integrity: sha512-X6/7cy+GGVJFXsfrZapxVKn5mtehNTr7hTlg0bVj3iFoNYEPW9zq9l6WIcI4psmaU8G4DSrNsBK7pp87W3u16A==}
- engines: {node: '>=18'}
- dev: true
+ '@cspell/strong-weak-map@8.13.1': {}
- /@cspotcode/source-map-support@0.8.1:
- resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==}
- engines: {node: '>=12'}
- dependencies:
- '@jridgewell/trace-mapping': 0.3.9
- dev: true
+ '@cspell/url@8.13.1': {}
- /@ericcornelissen/bash-parser@0.5.2:
- resolution: {integrity: sha512-4pIMTa1nEFfMXitv7oaNEWOdM+zpOZavesa5GaiWTgda6Zk32CFGxjUp/iIaN0PwgUW1yTq/fztSjbpE8SLGZQ==}
- engines: {node: '>=4'}
- dependencies:
- array-last: 1.3.0
- babylon: 6.18.0
- compose-function: 3.0.3
- deep-freeze: 0.0.1
- filter-iterator: 0.0.1
- filter-obj: 1.1.0
- has-own-property: 0.1.0
- identity-function: 1.0.0
- is-iterable: 1.1.1
- iterable-lookahead: 1.0.0
- lodash.curry: 4.1.1
- magic-string: 0.16.0
- map-obj: 2.0.0
- object-pairs: 0.1.0
- object-values: 1.0.0
- reverse-arguments: 1.0.0
- shell-quote-word: 1.0.1
- to-pascal-case: 1.0.0
- unescape-js: 1.1.4
- dev: true
-
- /@es-joy/jsdoccomment@0.42.0:
- resolution: {integrity: sha512-R1w57YlVA6+YE01wch3GPYn6bCsrOV3YW/5oGGE2tmX6JcL9Nr+b5IikrjMPF+v9CV3ay+obImEdsDhovhJrzw==}
- engines: {node: '>=16'}
+ '@dprint/formatter@0.3.0': {}
+
+ '@dprint/markdown@0.17.1': {}
+
+ '@dprint/toml@0.6.2': {}
+
+ '@es-joy/jsdoccomment@0.46.0':
dependencies:
comment-parser: 1.4.1
- esquery: 1.5.0
+ esquery: 1.6.0
jsdoc-type-pratt-parser: 4.0.0
- dev: true
- /@eslint-community/eslint-utils@4.4.0(eslint@9.6.0):
- resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
- peerDependencies:
- eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
+ '@esbuild/aix-ppc64@0.21.5':
+ optional: true
+
+ '@esbuild/android-arm64@0.21.5':
+ optional: true
+
+ '@esbuild/android-arm@0.21.5':
+ optional: true
+
+ '@esbuild/android-x64@0.21.5':
+ optional: true
+
+ '@esbuild/darwin-arm64@0.21.5':
+ optional: true
+
+ '@esbuild/darwin-x64@0.21.5':
+ optional: true
+
+ '@esbuild/freebsd-arm64@0.21.5':
+ optional: true
+
+ '@esbuild/freebsd-x64@0.21.5':
+ optional: true
+
+ '@esbuild/linux-arm64@0.21.5':
+ optional: true
+
+ '@esbuild/linux-arm@0.21.5':
+ optional: true
+
+ '@esbuild/linux-ia32@0.21.5':
+ optional: true
+
+ '@esbuild/linux-loong64@0.21.5':
+ optional: true
+
+ '@esbuild/linux-mips64el@0.21.5':
+ optional: true
+
+ '@esbuild/linux-ppc64@0.21.5':
+ optional: true
+
+ '@esbuild/linux-riscv64@0.21.5':
+ optional: true
+
+ '@esbuild/linux-s390x@0.21.5':
+ optional: true
+
+ '@esbuild/linux-x64@0.21.5':
+ optional: true
+
+ '@esbuild/netbsd-x64@0.21.5':
+ optional: true
+
+ '@esbuild/openbsd-x64@0.21.5':
+ optional: true
+
+ '@esbuild/sunos-x64@0.21.5':
+ optional: true
+
+ '@esbuild/win32-arm64@0.21.5':
+ optional: true
+
+ '@esbuild/win32-ia32@0.21.5':
+ optional: true
+
+ '@esbuild/win32-x64@0.21.5':
+ optional: true
+
+ '@eslint-community/eslint-utils@4.4.0(eslint@9.8.0)':
dependencies:
- eslint: 9.6.0
+ eslint: 9.8.0
eslint-visitor-keys: 3.4.3
- dev: true
- /@eslint-community/regexpp@4.6.2:
- resolution: {integrity: sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==}
- engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
- dev: true
+ '@eslint-community/regexpp@4.11.0': {}
- /@eslint/config-array@0.17.0:
- resolution: {integrity: sha512-A68TBu6/1mHHuc5YJL0U0VVeGNiklLAL6rRmhTCP2B5XjWLMnrX+HkO+IAXyHvks5cyyY1jjK5ITPQ1HGS2EVA==}
- engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ '@eslint-stylistic/metadata@2.6.1': {}
+
+ '@eslint/compat@1.1.1': {}
+
+ '@eslint/config-array@0.17.1':
dependencies:
'@eslint/object-schema': 2.1.4
- debug: 4.3.4
+ debug: 4.3.6
minimatch: 3.1.2
transitivePeerDependencies:
- supports-color
- dev: true
- /@eslint/eslintrc@2.1.4:
- resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ '@eslint/eslintrc@3.1.0':
dependencies:
ajv: 6.12.6
- debug: 4.3.4
- espree: 9.6.1
- globals: 13.24.0
+ debug: 4.3.6
+ espree: 10.1.0
+ globals: 14.0.0
ignore: 5.3.1
import-fresh: 3.3.0
js-yaml: 4.1.0
@@ -746,1426 +4724,870 @@ packages:
strip-json-comments: 3.1.1
transitivePeerDependencies:
- supports-color
- dev: true
- /@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.8.0': {}
+
+ '@eslint/object-schema@2.1.4': {}
+
+ '@humanwhocodes/module-importer@1.0.1': {}
+
+ '@humanwhocodes/retry@0.3.0': {}
+
+ '@intlify/core-base@9.13.1':
dependencies:
- ajv: 6.12.6
- debug: 4.3.4
- espree: 10.1.0
- globals: 14.0.0
+ '@intlify/message-compiler': 9.13.1
+ '@intlify/shared': 9.13.1
+
+ '@intlify/eslint-plugin-vue-i18n@3.0.0(eslint@9.8.0)':
+ dependencies:
+ '@eslint/eslintrc': 3.1.0
+ '@intlify/core-base': 9.13.1
+ '@intlify/message-compiler': 9.13.1
+ debug: 4.3.6
+ eslint: 9.8.0
+ eslint-compat-utils: 0.5.1(eslint@9.8.0)
+ glob: 10.4.1
+ globals: 15.9.0
ignore: 5.3.1
import-fresh: 3.3.0
+ is-language-code: 3.1.0
js-yaml: 4.1.0
- minimatch: 3.1.2
- strip-json-comments: 3.1.1
+ json5: 2.2.3
+ jsonc-eslint-parser: 2.4.0
+ lodash: 4.17.21
+ parse5: 7.1.2
+ semver: 7.6.3
+ synckit: 0.9.1
+ vue-eslint-parser: 9.4.3(eslint@9.8.0)
+ yaml-eslint-parser: 1.2.3
transitivePeerDependencies:
- supports-color
- dev: true
-
- /@eslint/js@9.6.0:
- resolution: {integrity: sha512-D9B0/3vNg44ZeWbYMpBoXqNP4j6eQD5vNwIlGAuFRRzK/WtT/jvDQW3Bi9kkf3PMDMlM7Yi+73VLUsn5bJcl8A==}
- engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- dev: true
-
- /@eslint/object-schema@2.1.4:
- resolution: {integrity: sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==}
- engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- dev: true
- /@humanwhocodes/module-importer@1.0.1:
- resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==}
- engines: {node: '>=12.22'}
- dev: true
+ '@intlify/message-compiler@9.13.1':
+ dependencies:
+ '@intlify/shared': 9.13.1
+ source-map-js: 1.2.0
- /@humanwhocodes/retry@0.3.0:
- resolution: {integrity: sha512-d2CGZR2o7fS6sWB7DG/3a95bGKQyHMACZ5aW8qGkkqQpUoZV6C0X7Pc7l4ZNMZkfNBf4VWNe9E1jRsf0G146Ew==}
- engines: {node: '>=18.18'}
- dev: true
+ '@intlify/shared@9.13.1': {}
- /@isaacs/cliui@8.0.2:
- resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
- engines: {node: '>=12'}
+ '@isaacs/cliui@8.0.2':
dependencies:
string-width: 5.1.2
- string-width-cjs: /string-width@4.2.3
+ string-width-cjs: string-width@4.2.3
strip-ansi: 7.1.0
- strip-ansi-cjs: /strip-ansi@6.0.1
+ strip-ansi-cjs: strip-ansi@6.0.1
wrap-ansi: 8.1.0
- wrap-ansi-cjs: /wrap-ansi@7.0.0
- dev: true
-
- /@jridgewell/resolve-uri@3.1.0:
- resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==}
- engines: {node: '>=6.0.0'}
- dev: true
+ wrap-ansi-cjs: wrap-ansi@7.0.0
- /@jridgewell/sourcemap-codec@1.4.15:
- resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==}
- dev: true
+ '@jridgewell/sourcemap-codec@1.5.0': {}
- /@jridgewell/trace-mapping@0.3.9:
- resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==}
+ '@jsdevtools/ez-spawn@3.0.4':
dependencies:
- '@jridgewell/resolve-uri': 3.1.0
- '@jridgewell/sourcemap-codec': 1.4.15
- dev: true
+ call-me-maybe: 1.0.2
+ cross-spawn: 7.0.3
+ string-argv: 0.3.2
+ type-detect: 4.0.8
- /@nodelib/fs.scandir@2.1.5:
- resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
- engines: {node: '>= 8'}
- dependencies:
- '@nodelib/fs.stat': 2.0.5
- run-parallel: 1.2.0
- dev: true
+ '@jsdevtools/ono@7.1.3': {}
- /@nodelib/fs.scandir@3.0.0:
- resolution: {integrity: sha512-ktI9+PxfHYtKjF3cLTUAh2N+b8MijCRPNwKJNqTVdL0gB0QxLU2rIRaZ1t71oEa3YBDE6bukH1sR0+CDnpp/Mg==}
- engines: {node: '>=16.14.0'}
+ '@mdn/browser-compat-data@5.5.32': {}
+
+ '@nodelib/fs.scandir@2.1.5':
dependencies:
- '@nodelib/fs.stat': 3.0.0
+ '@nodelib/fs.stat': 2.0.5
run-parallel: 1.2.0
- dev: true
- /@nodelib/fs.stat@2.0.5:
- resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
- engines: {node: '>= 8'}
- dev: true
+ '@nodelib/fs.stat@2.0.5': {}
- /@nodelib/fs.stat@3.0.0:
- resolution: {integrity: sha512-2tQOI38s19P9i7X/Drt0v8iMA+KMsgdhB/dyPER+e+2Y8L1Z7QvnuRdW/uLuf5YRFUYmnj4bMA6qCuZHFI1GDQ==}
- engines: {node: '>=16.14.0'}
- dev: true
-
- /@nodelib/fs.walk@1.2.8:
- resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
- engines: {node: '>= 8'}
+ '@nodelib/fs.walk@1.2.8':
dependencies:
'@nodelib/fs.scandir': 2.1.5
- fastq: 1.15.0
- dev: true
-
- /@nodelib/fs.walk@2.0.0:
- resolution: {integrity: sha512-54voNDBobGdMl3BUXSu7UaDh1P85PGHWlJ5e0XhPugo1JulOyCtp2I+5ri4wplGDJ8QGwPEQW7/x3yTLU7yF1A==}
- engines: {node: '>=16.14.0'}
- dependencies:
- '@nodelib/fs.scandir': 3.0.0
- fastq: 1.15.0
- dev: true
-
- /@npmcli/git@5.0.4:
- resolution: {integrity: sha512-nr6/WezNzuYUppzXRaYu/W4aT5rLxdXqEFupbh6e/ovlYFQ8hpu1UUPV3Ir/YTl+74iXl2ZOMlGzudh9ZPUchQ==}
- engines: {node: ^16.14.0 || >=18.0.0}
- dependencies:
- '@npmcli/promise-spawn': 7.0.1
- lru-cache: 10.2.0
- npm-pick-manifest: 9.0.0
- proc-log: 3.0.0
- promise-inflight: 1.0.1
- promise-retry: 2.0.1
- semver: 7.6.0
- which: 4.0.0
- transitivePeerDependencies:
- - bluebird
- dev: true
-
- /@npmcli/map-workspaces@3.0.4:
- resolution: {integrity: sha512-Z0TbvXkRbacjFFLpVpV0e2mheCh+WzQpcqL+4xp49uNJOxOnIAPZyXtUxZ5Qn3QBTGKA11Exjd9a5411rBrhDg==}
- engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
- dependencies:
- '@npmcli/name-from-folder': 2.0.0
- glob: 10.3.10
- minimatch: 9.0.3
- read-package-json-fast: 3.0.2
- dev: true
-
- /@npmcli/name-from-folder@2.0.0:
- resolution: {integrity: sha512-pwK+BfEBZJbKdNYpHHRTNBwBoqrN/iIMO0AiGvYsp3Hoaq0WbgGSWQR6SCldZovoDpY3yje5lkFUe6gsDgJ2vg==}
- engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
- dev: true
-
- /@npmcli/package-json@5.0.0:
- resolution: {integrity: sha512-OI2zdYBLhQ7kpNPaJxiflofYIpkNLi+lnGdzqUOfRmCF3r2l1nadcjtCYMJKv/Utm/ZtlffaUuTiAktPHbc17g==}
- engines: {node: ^16.14.0 || >=18.0.0}
- dependencies:
- '@npmcli/git': 5.0.4
- glob: 10.3.10
- hosted-git-info: 7.0.1
- json-parse-even-better-errors: 3.0.0
- normalize-package-data: 6.0.0
- proc-log: 3.0.0
- semver: 7.6.0
- transitivePeerDependencies:
- - bluebird
- dev: true
+ fastq: 1.17.1
- /@npmcli/promise-spawn@7.0.1:
- resolution: {integrity: sha512-P4KkF9jX3y+7yFUxgcUdDtLy+t4OlDGuEBLNs57AZsfSfg+uV6MLndqGpnl4831ggaEdXwR50XFoZP4VFtHolg==}
- engines: {node: ^16.14.0 || >=18.0.0}
- dependencies:
- which: 4.0.0
- dev: true
-
- /@octokit/auth-token@5.0.1:
- resolution: {integrity: sha512-RTmWsLfig8SBoiSdgvCht4BXl1CHU89Co5xiQ5JF19my/sIRDFCQ1RPrmK0exgqUZuNm39C/bV8+/83+MJEjGg==}
- engines: {node: '>= 18'}
- dev: true
+ '@octokit/auth-token@5.1.1': {}
- /@octokit/core@6.0.1:
- resolution: {integrity: sha512-MIpPQXu8Y8GjHwXM81JLveiV+DHJZtLMcB5nKekBGOl3iAtk0HT3i12Xl8Biybu+bCS1+k4qbuKEq5d0RxNRnQ==}
- engines: {node: '>= 18'}
+ '@octokit/core@6.1.2':
dependencies:
- '@octokit/auth-token': 5.0.1
- '@octokit/graphql': 8.0.1
- '@octokit/request': 9.0.1
- '@octokit/request-error': 6.0.2
- '@octokit/types': 12.6.0
+ '@octokit/auth-token': 5.1.1
+ '@octokit/graphql': 8.1.1
+ '@octokit/request': 9.1.1
+ '@octokit/request-error': 6.1.1
+ '@octokit/types': 13.5.0
before-after-hook: 3.0.2
universal-user-agent: 7.0.2
- dev: true
- /@octokit/endpoint@10.0.0:
- resolution: {integrity: sha512-emBcNDxBdC1y3+knJonS5zhUB/CG6TihubxM2U1/pG/Z1y3a4oV0Gzz3lmkCvWWQI6h3tqBAX9MgCBFp+M68Jw==}
- engines: {node: '>= 18'}
+ '@octokit/endpoint@10.1.1':
dependencies:
- '@octokit/types': 12.6.0
+ '@octokit/types': 13.5.0
universal-user-agent: 7.0.2
- dev: true
- /@octokit/graphql@8.0.1:
- resolution: {integrity: sha512-lLDb6LhC1gBj2CxEDa5Xk10+H/boonhs+3Mi6jpRyetskDKNHe6crMeKmUE2efoLofMP8ruannLlCUgpTFmVzQ==}
- engines: {node: '>= 18'}
+ '@octokit/graphql@8.1.1':
dependencies:
- '@octokit/request': 9.0.1
- '@octokit/types': 12.6.0
+ '@octokit/request': 9.1.1
+ '@octokit/types': 13.5.0
universal-user-agent: 7.0.2
- dev: true
- /@octokit/openapi-types@20.0.0:
- resolution: {integrity: sha512-EtqRBEjp1dL/15V7WiX5LJMIxxkdiGJnabzYx5Apx4FkQIFgAfKumXeYAqqJCj1s+BMX4cPFIFC4OLCR6stlnA==}
- dev: true
+ '@octokit/openapi-types@22.2.0': {}
- /@octokit/plugin-paginate-rest@10.0.0(@octokit/core@6.0.1):
- resolution: {integrity: sha512-G1Z67qOiFneKDJyMafHQkWnKm1kU3FfbRZLzxgsFg4dOa3pRNdABbdk+xo/oev6P88lnbt7GKdBNB6dJZuPphA==}
- engines: {node: '>= 18'}
- peerDependencies:
- '@octokit/core': '>=6'
+ '@octokit/plugin-paginate-rest@11.3.0(@octokit/core@6.1.2)':
dependencies:
- '@octokit/core': 6.0.1
- '@octokit/types': 12.6.0
- dev: true
+ '@octokit/core': 6.1.2
+ '@octokit/types': 13.5.0
- /@octokit/plugin-retry@7.0.3(@octokit/core@6.0.1):
- resolution: {integrity: sha512-T9l5Z7XnDZ7dkyNmhJPSUq0YjbqUT/xn4yQbhcSuv4WGC/LqM73/mKwkl68VDPoLw20e8oz4L7qQopWt9v6sow==}
- engines: {node: '>= 18'}
- peerDependencies:
- '@octokit/core': '>=6'
+ '@octokit/plugin-retry@7.1.1(@octokit/core@6.1.2)':
dependencies:
- '@octokit/core': 6.0.1
- '@octokit/request-error': 6.0.2
- '@octokit/types': 12.6.0
+ '@octokit/core': 6.1.2
+ '@octokit/request-error': 6.1.1
+ '@octokit/types': 13.5.0
bottleneck: 2.19.5
- dev: true
- /@octokit/plugin-throttling@9.0.3(@octokit/core@6.0.1):
- resolution: {integrity: sha512-DReKamrLBJOzld73dmmxV2H137QKJfsxszAczEZXeAJQ/Po6bzQacKajPdodA6T1jfmP9+waImus+d/R2j+R7Q==}
- engines: {node: '>= 18'}
- peerDependencies:
- '@octokit/core': ^6.0.0
+ '@octokit/plugin-throttling@9.3.0(@octokit/core@6.1.2)':
dependencies:
- '@octokit/core': 6.0.1
- '@octokit/types': 12.6.0
+ '@octokit/core': 6.1.2
+ '@octokit/types': 13.5.0
bottleneck: 2.19.5
- dev: true
-
- /@octokit/request-error@6.0.2:
- resolution: {integrity: sha512-WtRVpoHcNXs84+s9s/wqfHaxM68NGMg8Av7h59B50OVO0PwwMx+2GgQ/OliUd0iQBSNWgR6N8afi/KjSHbXHWw==}
- engines: {node: '>= 18'}
- dependencies:
- '@octokit/types': 12.6.0
- dev: true
-
- /@octokit/request@9.0.1:
- resolution: {integrity: sha512-kL+cAcbSl3dctYLuJmLfx6Iku2MXXy0jszhaEIjQNaCp4zjHXrhVAHeuaRdNvJjW9qjl3u1MJ72+OuBP0YW/pg==}
- engines: {node: '>= 18'}
- dependencies:
- '@octokit/endpoint': 10.0.0
- '@octokit/request-error': 6.0.2
- '@octokit/types': 12.6.0
- universal-user-agent: 7.0.2
- dev: true
-
- /@octokit/types@12.6.0:
- resolution: {integrity: sha512-1rhSOfRa6H9w4YwK0yrf5faDaDTb+yLyBUKOCV4xtCDB5VmIPqd/v9yr9o6SAzOAlRxMiRiCic6JVM1/kunVkw==}
- dependencies:
- '@octokit/openapi-types': 20.0.0
- dev: true
-
- /@pkgjs/parseargs@0.11.0:
- resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
- engines: {node: '>=14'}
- requiresBuild: true
- dev: true
- optional: true
-
- /@pkgr/core@0.1.1:
- resolution: {integrity: sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==}
- engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
- dev: true
-
- /@pnpm/config.env-replace@1.0.0:
- resolution: {integrity: sha512-ZVPVDi1E8oeXlYqkGRtX0CkzLTwE2zt62bjWaWKaAvI8NZqHzlMvGeSNDpW+JB3+aKanYb4UETJOF1/CxGPemA==}
- engines: {node: '>=12.22.0'}
- dev: true
-
- /@pnpm/constants@7.1.1:
- resolution: {integrity: sha512-31pZqMtjwV+Vaq7MaPrT1EoDFSYwye3dp6BiHIGRJmVThCQwySRKM7hCvqqI94epNkqFAAYoWrNynWoRYosGdw==}
- engines: {node: '>=16.14'}
- dev: true
-
- /@pnpm/core-loggers@9.0.6(@pnpm/logger@5.0.0):
- resolution: {integrity: sha512-iK67SGbp+06bA/elpg51wygPFjNA7JKHtKkpLxqXXHw+AjFFBC3f2OznJsCIuDK6HdGi5UhHLYqo5QxJ2gMqJQ==}
- engines: {node: '>=16.14'}
- peerDependencies:
- '@pnpm/logger': ^5.0.0
- dependencies:
- '@pnpm/logger': 5.0.0
- '@pnpm/types': 9.4.2
- dev: true
-
- /@pnpm/error@5.0.3:
- resolution: {integrity: sha512-ONJU5cUeoeJSy50qOYsMZQHTA/9QKmGgh1ATfEpCLgtbdwqUiwD9MxHNeXUYYI/pocBCz6r1ZCFqiQvO+8SUKA==}
- engines: {node: '>=16.14'}
- dependencies:
- '@pnpm/constants': 7.1.1
- dev: true
-
- /@pnpm/fetching-types@5.0.0:
- resolution: {integrity: sha512-o9gdO1v8Uc5P2fBBuW6GSpfTqIivQmQlqjQJdFiQX0m+tgxlrMRneIg392jZuc6fk7kFqjLheInlslgJfwY+4Q==}
- engines: {node: '>=16.14'}
- dependencies:
- '@zkochan/retry': 0.2.0
- node-fetch: 3.0.0-beta.9
- transitivePeerDependencies:
- - domexception
- dev: true
-
- /@pnpm/graceful-fs@3.2.0:
- resolution: {integrity: sha512-vRoXJxscDpHak7YE9SqCkzfrayn+Lw+YueOeHIPEqkgokrHeYgYeONoc2kGh0ObHaRtNSsonozVfJ456kxLNvA==}
- engines: {node: '>=16.14'}
- dependencies:
- graceful-fs: 4.2.11
- dev: true
-
- /@pnpm/logger@5.0.0:
- resolution: {integrity: sha512-YfcB2QrX+Wx1o6LD1G2Y2fhDhOix/bAY/oAnMpHoNLsKkWIRbt1oKLkIFvxBMzLwAEPqnYWguJrYC+J6i4ywbw==}
- engines: {node: '>=12.17'}
- dependencies:
- bole: 5.0.11
- ndjson: 2.0.0
- dev: true
-
- /@pnpm/network.ca-file@1.0.2:
- resolution: {integrity: sha512-YcPQ8a0jwYU9bTdJDpXjMi7Brhkr1mXsXrUJvjqM2mQDgkRiz8jFaQGOdaLxgjtUfQgZhKy/O3cG/YwmgKaxLA==}
- engines: {node: '>=12.22.0'}
- dependencies:
- graceful-fs: 4.2.10
- dev: true
-
- /@pnpm/npm-conf@2.1.0:
- resolution: {integrity: sha512-Oe6ntvgsMTE3hDIqy6sajqHF+MnzJrOF06qC2QSiUEybLL7cp6tjoKUa32gpd9+KPVl4QyMs3E3nsXrx/Vdnlw==}
- engines: {node: '>=12'}
- dependencies:
- '@pnpm/config.env-replace': 1.0.0
- '@pnpm/network.ca-file': 1.0.2
- config-chain: 1.1.13
- dev: true
-
- /@pnpm/npm-package-arg@1.0.0:
- resolution: {integrity: sha512-oQYP08exi6mOPdAZZWcNIGS+KKPsnNwUBzSuAEGWuCcqwMAt3k/WVCqVIXzBxhO5sP2b43og69VHmPj6IroKqw==}
- engines: {node: '>=14.6'}
- dependencies:
- hosted-git-info: 4.1.0
- semver: 7.6.0
- validate-npm-package-name: 4.0.0
- dev: true
-
- /@pnpm/npm-resolver@18.1.1(@pnpm/logger@5.0.0):
- resolution: {integrity: sha512-NptzncmMD5ZMimbjWkGpMzuBRhlCY+sh7mzypPdBOTNlh5hmEQe/VaRKjNK4V9/b0C/llElkvIePL6acybu86w==}
- engines: {node: '>=16.14'}
- peerDependencies:
- '@pnpm/logger': ^5.0.0
- dependencies:
- '@pnpm/core-loggers': 9.0.6(@pnpm/logger@5.0.0)
- '@pnpm/error': 5.0.3
- '@pnpm/fetching-types': 5.0.0
- '@pnpm/graceful-fs': 3.2.0
- '@pnpm/logger': 5.0.0
- '@pnpm/resolve-workspace-range': 5.0.1
- '@pnpm/resolver-base': 11.1.0
- '@pnpm/types': 9.4.2
- '@zkochan/retry': 0.2.0
- encode-registry: 3.0.1
- load-json-file: 6.2.0
- lru-cache: 10.2.0
- normalize-path: 3.0.0
- p-limit: 3.1.0
- p-memoize: 4.0.1
- parse-npm-tarball-url: 3.0.0
- path-temp: 2.1.0
- ramda: /@pnpm/ramda@0.28.1
- rename-overwrite: 5.0.0
- semver: 7.6.0
- ssri: 10.0.5
- version-selector-type: 3.0.0
- transitivePeerDependencies:
- - domexception
- dev: true
- /@pnpm/ramda@0.28.1:
- resolution: {integrity: sha512-zcAG+lvU0fMziNeGXpPyCyCJYp5ZVrPElEE4t14jAmViaihohocZ+dDkcRIyAomox8pQsuZnv1EyHR+pOhmUWw==}
- dev: true
+ '@octokit/request-error@6.1.1':
+ dependencies:
+ '@octokit/types': 13.5.0
- /@pnpm/resolve-workspace-range@5.0.1:
- resolution: {integrity: sha512-yQ0pMthlw8rTgS/C9hrjne+NEnnSNevCjtdodd7i15I59jMBYciHifZ/vjg0NY+Jl+USTc3dBE+0h/4tdYjMKg==}
- engines: {node: '>=16.14'}
+ '@octokit/request@9.1.1':
dependencies:
- semver: 7.6.0
- dev: true
+ '@octokit/endpoint': 10.1.1
+ '@octokit/request-error': 6.1.1
+ '@octokit/types': 13.5.0
+ universal-user-agent: 7.0.2
- /@pnpm/resolver-base@11.1.0:
- resolution: {integrity: sha512-y2qKaj18pwe1VWc3YXEitdYFo+WqOOt60aqTUuOVkJAirUzz0DzuYh3Ifct4znYWPdgUXHaN5DMphNF5iL85rA==}
- engines: {node: '>=16.14'}
+ '@octokit/types@13.5.0':
dependencies:
- '@pnpm/types': 9.4.2
- dev: true
+ '@octokit/openapi-types': 22.2.0
- /@pnpm/types@9.4.2:
- resolution: {integrity: sha512-g1hcF8Nv4gd76POilz9gD4LITAPXOe5nX4ijgr8ixCbLQZfcpYiMfJ+C1RlMNRUDo8vhlNB4O3bUlxmT6EAQXA==}
- engines: {node: '>=16.14'}
- dev: true
+ '@pkgjs/parseargs@0.11.0':
+ optional: true
- /@pnpm/workspace.pkgs-graph@2.0.15(@pnpm/logger@5.0.0):
- resolution: {integrity: sha512-Txxd5FzzVfBfGCTngISaxFlJzZhzdS8BUrCEtAWJfZOFbQzpWy27rzkaS7TaWW2dHiFcCVYzPI/2vgxfeRansA==}
- engines: {node: '>=16.14'}
- dependencies:
- '@pnpm/npm-package-arg': 1.0.0
- '@pnpm/npm-resolver': 18.1.1(@pnpm/logger@5.0.0)
- '@pnpm/resolve-workspace-range': 5.0.1
- ramda: /@pnpm/ramda@0.28.1
- transitivePeerDependencies:
- - '@pnpm/logger'
- - domexception
- dev: true
+ '@pkgr/core@0.1.1': {}
- /@rollup/plugin-commonjs@25.0.7(rollup@4.13.0):
- resolution: {integrity: sha512-nEvcR+LRjEjsaSsc4x3XZfCCvZIaSMenZu/OiwOKGN2UhQpAYI7ru7czFvyWbErlpoGjnSX3D5Ch5FcMA3kRWQ==}
- engines: {node: '>=14.0.0'}
- peerDependencies:
- rollup: ^2.68.0||^3.0.0||^4.0.0
- peerDependenciesMeta:
- rollup:
- optional: true
- dependencies:
- '@rollup/pluginutils': 5.1.0(rollup@4.13.0)
- commondir: 1.0.1
- estree-walker: 2.0.2
- glob: 8.1.0
- is-reference: 1.2.1
- magic-string: 0.30.8
- rollup: 4.13.0
- dev: true
-
- /@rollup/plugin-node-resolve@15.2.3(rollup@4.13.0):
- resolution: {integrity: sha512-j/lym8nf5E21LwBT4Df1VD6hRO2L2iwUeUmP7litikRsVp1H6NWx20NEp0Y7su+7XGc476GnXXc4kFeZNGmaSQ==}
- engines: {node: '>=14.0.0'}
- peerDependencies:
- rollup: ^2.78.0||^3.0.0||^4.0.0
- peerDependenciesMeta:
- rollup:
- optional: true
+ '@pnpm/config.env-replace@1.1.0': {}
+
+ '@pnpm/network.ca-file@1.0.2':
dependencies:
- '@rollup/pluginutils': 5.1.0(rollup@4.13.0)
- '@types/resolve': 1.20.2
- deepmerge: 4.3.0
- is-builtin-module: 3.2.1
- is-module: 1.0.0
- resolve: 1.22.4
- rollup: 4.13.0
- dev: true
+ graceful-fs: 4.2.10
- /@rollup/plugin-typescript@11.1.6(rollup@4.13.0)(tslib@2.6.2)(typescript@5.4.3):
- resolution: {integrity: sha512-R92yOmIACgYdJ7dJ97p4K69I8gg6IEHt8M7dUBxN3W6nrO8uUxX5ixl0yU/N3aZTi8WhPuICvOHXQvF6FaykAA==}
- engines: {node: '>=14.0.0'}
- peerDependencies:
- rollup: ^2.14.0||^3.0.0||^4.0.0
- tslib: '*'
- typescript: '>=3.7.0'
- peerDependenciesMeta:
- rollup:
- optional: true
- tslib:
- optional: true
+ '@pnpm/npm-conf@2.2.2':
dependencies:
- '@rollup/pluginutils': 5.1.0(rollup@4.13.0)
- resolve: 1.22.4
- rollup: 4.13.0
- tslib: 2.6.2
- typescript: 5.4.3
- dev: true
+ '@pnpm/config.env-replace': 1.1.0
+ '@pnpm/network.ca-file': 1.0.2
+ config-chain: 1.1.13
- /@rollup/pluginutils@5.1.0(rollup@4.13.0):
- resolution: {integrity: sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==}
- engines: {node: '>=14.0.0'}
- peerDependencies:
- rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0
- peerDependenciesMeta:
- rollup:
- optional: true
+ '@rollup/pluginutils@5.1.0(rollup@4.20.0)':
dependencies:
'@types/estree': 1.0.5
estree-walker: 2.0.2
picomatch: 2.3.1
- rollup: 4.13.0
- dev: true
+ optionalDependencies:
+ rollup: 4.20.0
- /@rollup/rollup-android-arm-eabi@4.13.0:
- resolution: {integrity: sha512-5ZYPOuaAqEH/W3gYsRkxQATBW3Ii1MfaT4EQstTnLKViLi2gLSQmlmtTpGucNP3sXEpOiI5tdGhjdE111ekyEg==}
- cpu: [arm]
- os: [android]
- requiresBuild: true
- dev: true
+ '@rollup/rollup-android-arm-eabi@4.20.0':
optional: true
- /@rollup/rollup-android-arm64@4.13.0:
- resolution: {integrity: sha512-BSbaCmn8ZadK3UAQdlauSvtaJjhlDEjS5hEVVIN3A4bbl3X+otyf/kOJV08bYiRxfejP3DXFzO2jz3G20107+Q==}
- cpu: [arm64]
- os: [android]
- requiresBuild: true
- dev: true
+ '@rollup/rollup-android-arm64@4.20.0':
optional: true
- /@rollup/rollup-darwin-arm64@4.13.0:
- resolution: {integrity: sha512-Ovf2evVaP6sW5Ut0GHyUSOqA6tVKfrTHddtmxGQc1CTQa1Cw3/KMCDEEICZBbyppcwnhMwcDce9ZRxdWRpVd6g==}
- cpu: [arm64]
- os: [darwin]
- requiresBuild: true
- dev: true
+ '@rollup/rollup-darwin-arm64@4.20.0':
optional: true
- /@rollup/rollup-darwin-x64@4.13.0:
- resolution: {integrity: sha512-U+Jcxm89UTK592vZ2J9st9ajRv/hrwHdnvyuJpa5A2ngGSVHypigidkQJP+YiGL6JODiUeMzkqQzbCG3At81Gg==}
- cpu: [x64]
- os: [darwin]
- requiresBuild: true
- dev: true
+ '@rollup/rollup-darwin-x64@4.20.0':
optional: true
- /@rollup/rollup-linux-arm-gnueabihf@4.13.0:
- resolution: {integrity: sha512-8wZidaUJUTIR5T4vRS22VkSMOVooG0F4N+JSwQXWSRiC6yfEsFMLTYRFHvby5mFFuExHa/yAp9juSphQQJAijQ==}
- cpu: [arm]
- os: [linux]
- requiresBuild: true
- dev: true
+ '@rollup/rollup-linux-arm-gnueabihf@4.20.0':
optional: true
- /@rollup/rollup-linux-arm64-gnu@4.13.0:
- resolution: {integrity: sha512-Iu0Kno1vrD7zHQDxOmvweqLkAzjxEVqNhUIXBsZ8hu8Oak7/5VTPrxOEZXYC1nmrBVJp0ZcL2E7lSuuOVaE3+w==}
- cpu: [arm64]
- os: [linux]
- requiresBuild: true
- dev: true
+ '@rollup/rollup-linux-arm-musleabihf@4.20.0':
optional: true
- /@rollup/rollup-linux-arm64-musl@4.13.0:
- resolution: {integrity: sha512-C31QrW47llgVyrRjIwiOwsHFcaIwmkKi3PCroQY5aVq4H0A5v/vVVAtFsI1nfBngtoRpeREvZOkIhmRwUKkAdw==}
- cpu: [arm64]
- os: [linux]
- requiresBuild: true
- dev: true
+ '@rollup/rollup-linux-arm64-gnu@4.20.0':
optional: true
- /@rollup/rollup-linux-riscv64-gnu@4.13.0:
- resolution: {integrity: sha512-Oq90dtMHvthFOPMl7pt7KmxzX7E71AfyIhh+cPhLY9oko97Zf2C9tt/XJD4RgxhaGeAraAXDtqxvKE1y/j35lA==}
- cpu: [riscv64]
- os: [linux]
- requiresBuild: true
- dev: true
+ '@rollup/rollup-linux-arm64-musl@4.20.0':
optional: true
- /@rollup/rollup-linux-x64-gnu@4.13.0:
- resolution: {integrity: sha512-yUD/8wMffnTKuiIsl6xU+4IA8UNhQ/f1sAnQebmE/lyQ8abjsVyDkyRkWop0kdMhKMprpNIhPmYlCxgHrPoXoA==}
- cpu: [x64]
- os: [linux]
- requiresBuild: true
- dev: true
+ '@rollup/rollup-linux-powerpc64le-gnu@4.20.0':
optional: true
- /@rollup/rollup-linux-x64-musl@4.13.0:
- resolution: {integrity: sha512-9RyNqoFNdF0vu/qqX63fKotBh43fJQeYC98hCaf89DYQpv+xu0D8QFSOS0biA7cGuqJFOc1bJ+m2rhhsKcw1hw==}
- cpu: [x64]
- os: [linux]
- requiresBuild: true
- dev: true
+ '@rollup/rollup-linux-riscv64-gnu@4.20.0':
optional: true
- /@rollup/rollup-win32-arm64-msvc@4.13.0:
- resolution: {integrity: sha512-46ue8ymtm/5PUU6pCvjlic0z82qWkxv54GTJZgHrQUuZnVH+tvvSP0LsozIDsCBFO4VjJ13N68wqrKSeScUKdA==}
- cpu: [arm64]
- os: [win32]
- requiresBuild: true
- dev: true
+ '@rollup/rollup-linux-s390x-gnu@4.20.0':
optional: true
- /@rollup/rollup-win32-ia32-msvc@4.13.0:
- resolution: {integrity: sha512-P5/MqLdLSlqxbeuJ3YDeX37srC8mCflSyTrUsgbU1c/U9j6l2g2GiIdYaGD9QjdMQPMSgYm7hgg0551wHyIluw==}
- cpu: [ia32]
- os: [win32]
- requiresBuild: true
- dev: true
+ '@rollup/rollup-linux-x64-gnu@4.20.0':
optional: true
- /@rollup/rollup-win32-x64-msvc@4.13.0:
- resolution: {integrity: sha512-UKXUQNbO3DOhzLRwHSpa0HnhhCgNODvfoPWv2FCXme8N/ANFfhIPMGuOT+QuKd16+B5yxZ0HdpNlqPvTMS1qfw==}
- cpu: [x64]
- os: [win32]
- requiresBuild: true
- dev: true
+ '@rollup/rollup-linux-x64-musl@4.20.0':
optional: true
- /@semantic-release/changelog@6.0.3(semantic-release@23.0.6):
- resolution: {integrity: sha512-dZuR5qByyfe3Y03TpmCvAxCyTnp7r5XwtHRf/8vD9EAn4ZWbavUX8adMtXYzE86EVh0gyLA7lm5yW4IV30XUag==}
- engines: {node: '>=14.17'}
- peerDependencies:
- semantic-release: '>=18.0.0'
+ '@rollup/rollup-win32-arm64-msvc@4.20.0':
+ optional: true
+
+ '@rollup/rollup-win32-ia32-msvc@4.20.0':
+ optional: true
+
+ '@rollup/rollup-win32-x64-msvc@4.20.0':
+ optional: true
+
+ '@sec-ant/readable-stream@0.4.1': {}
+
+ '@semantic-release/changelog@6.0.3(semantic-release@24.0.0(typescript@5.4.5))':
dependencies:
'@semantic-release/error': 3.0.0
aggregate-error: 3.1.0
- fs-extra: 11.1.0
+ fs-extra: 11.2.0
lodash: 4.17.21
- semantic-release: 23.0.6(typescript@5.4.3)
- dev: true
+ semantic-release: 24.0.0(typescript@5.4.5)
- /@semantic-release/commit-analyzer@12.0.0(semantic-release@23.0.6):
- resolution: {integrity: sha512-qG+md5gdes+xa8zP7lIo1fWE17zRdO8yMCaxh9lyL65TQleoSv8WHHOqRURfghTytUh+NpkSyBprQ5hrkxOKVQ==}
- engines: {node: '>=20.8.1'}
- peerDependencies:
- semantic-release: '>=20.1.0'
+ '@semantic-release/commit-analyzer@13.0.0(semantic-release@24.0.0(typescript@5.4.5))':
dependencies:
- conventional-changelog-angular: 7.0.0
- conventional-commits-filter: 4.0.0
- conventional-commits-parser: 5.0.0
- debug: 4.3.4
- import-from-esm: 1.3.3
+ conventional-changelog-angular: 8.0.0
+ conventional-changelog-writer: 8.0.0
+ conventional-commits-filter: 5.0.0
+ conventional-commits-parser: 6.0.0
+ debug: 4.3.6
+ import-from-esm: 1.3.4
lodash-es: 4.17.21
- micromatch: 4.0.5
- semantic-release: 23.0.6(typescript@5.4.3)
+ micromatch: 4.0.7
+ semantic-release: 24.0.0(typescript@5.4.5)
transitivePeerDependencies:
- supports-color
- dev: true
- /@semantic-release/error@3.0.0:
- resolution: {integrity: sha512-5hiM4Un+tpl4cKw3lV4UgzJj+SmfNIDCLLw0TepzQxz9ZGV5ixnqkzIVF+3tp0ZHgcMKE+VNGHJjEeyFG2dcSw==}
- engines: {node: '>=14.17'}
- dev: true
+ '@semantic-release/error@3.0.0': {}
- /@semantic-release/error@4.0.0:
- resolution: {integrity: sha512-mgdxrHTLOjOddRVYIYDo0fR3/v61GNN1YGkfbrjuIKg/uMgCd+Qzo3UAXJ+woLQQpos4pl5Esuw5A7AoNlzjUQ==}
- engines: {node: '>=18'}
- dev: true
+ '@semantic-release/error@4.0.0': {}
- /@semantic-release/git@10.0.1(semantic-release@23.0.6):
- resolution: {integrity: sha512-eWrx5KguUcU2wUPaO6sfvZI0wPafUKAMNC18aXY4EnNcrZL86dEmpNVnC9uMpGZkmZJ9EfCVJBQx4pV4EMGT1w==}
- engines: {node: '>=14.17'}
- peerDependencies:
- semantic-release: '>=18.0.0'
+ '@semantic-release/git@10.0.1(semantic-release@24.0.0(typescript@5.4.5))':
dependencies:
'@semantic-release/error': 3.0.0
aggregate-error: 3.1.0
- debug: 4.3.4
+ debug: 4.3.6
dir-glob: 3.0.1
execa: 5.1.1
lodash: 4.17.21
- micromatch: 4.0.5
+ micromatch: 4.0.7
p-reduce: 2.1.0
- semantic-release: 23.0.6(typescript@5.4.3)
+ semantic-release: 24.0.0(typescript@5.4.5)
transitivePeerDependencies:
- supports-color
- dev: true
- /@semantic-release/github@10.0.2(semantic-release@23.0.6):
- resolution: {integrity: sha512-SP5ihhv/uQa8vPuWKmbJrrzfv8lRUkDFC6qwgaWoorrflN1DEW0IGCa9w/PxUp8Ad3dbvXZPmpXdGiP3eyTzhg==}
- engines: {node: '>=20.8.1'}
- peerDependencies:
- semantic-release: '>=20.1.0'
+ '@semantic-release/github@10.1.3(semantic-release@24.0.0(typescript@5.4.5))':
dependencies:
- '@octokit/core': 6.0.1
- '@octokit/plugin-paginate-rest': 10.0.0(@octokit/core@6.0.1)
- '@octokit/plugin-retry': 7.0.3(@octokit/core@6.0.1)
- '@octokit/plugin-throttling': 9.0.3(@octokit/core@6.0.1)
+ '@octokit/core': 6.1.2
+ '@octokit/plugin-paginate-rest': 11.3.0(@octokit/core@6.1.2)
+ '@octokit/plugin-retry': 7.1.1(@octokit/core@6.1.2)
+ '@octokit/plugin-throttling': 9.3.0(@octokit/core@6.1.2)
'@semantic-release/error': 4.0.0
aggregate-error: 5.0.0
- debug: 4.3.4
+ debug: 4.3.6
dir-glob: 3.0.1
globby: 14.0.1
- http-proxy-agent: 7.0.0
- https-proxy-agent: 7.0.0
- issue-parser: 7.0.0
+ http-proxy-agent: 7.0.2
+ https-proxy-agent: 7.0.4
+ issue-parser: 7.0.1
lodash-es: 4.17.21
- mime: 4.0.1
+ mime: 4.0.3
p-filter: 4.1.0
- semantic-release: 23.0.6(typescript@5.4.3)
+ semantic-release: 24.0.0(typescript@5.4.5)
url-join: 5.0.0
transitivePeerDependencies:
- supports-color
- dev: true
- /@semantic-release/npm@12.0.0(semantic-release@23.0.6):
- resolution: {integrity: sha512-72TVYQCH9NvVsO/y13eF8vE4bNnfls518+4KcFwJUKi7AtA/ZXoNgSg9gTTfw5eMZMkiH0izUrpGXgZE/cSQhA==}
- engines: {node: '>=20.8.1'}
- peerDependencies:
- semantic-release: '>=20.1.0'
+ '@semantic-release/npm@12.0.1(semantic-release@24.0.0(typescript@5.4.5))':
dependencies:
'@semantic-release/error': 4.0.0
aggregate-error: 5.0.0
- execa: 8.0.1
- fs-extra: 11.1.0
+ execa: 9.2.0
+ fs-extra: 11.2.0
lodash-es: 4.17.21
nerf-dart: 1.0.0
- normalize-url: 8.0.0
- npm: 10.5.0
+ normalize-url: 8.0.1
+ npm: 10.8.1
rc: 1.2.8
read-pkg: 9.0.1
registry-auth-token: 5.0.2
- semantic-release: 23.0.6(typescript@5.4.3)
- semver: 7.6.0
- tempy: 3.0.0
- dev: true
-
- /@semantic-release/release-notes-generator@13.0.0(semantic-release@23.0.6):
- resolution: {integrity: sha512-LEeZWb340keMYuREMyxrODPXJJ0JOL8D/mCl74B4LdzbxhtXV2LrPN2QBEcGJrlQhoqLO0RhxQb6masHytKw+A==}
- engines: {node: '>=20.8.1'}
- peerDependencies:
- semantic-release: '>=20.1.0'
- dependencies:
- conventional-changelog-angular: 7.0.0
- conventional-changelog-writer: 7.0.1
- conventional-commits-filter: 4.0.0
- conventional-commits-parser: 5.0.0
- debug: 4.3.4
- get-stream: 7.0.0
- import-from-esm: 1.3.3
+ semantic-release: 24.0.0(typescript@5.4.5)
+ semver: 7.6.3
+ tempy: 3.1.0
+
+ '@semantic-release/release-notes-generator@14.0.1(semantic-release@24.0.0(typescript@5.4.5))':
+ dependencies:
+ conventional-changelog-angular: 8.0.0
+ conventional-changelog-writer: 8.0.0
+ conventional-commits-filter: 5.0.0
+ conventional-commits-parser: 6.0.0
+ debug: 4.3.6
+ get-stream: 7.0.1
+ import-from-esm: 1.3.4
into-stream: 7.0.0
lodash-es: 4.17.21
- read-pkg-up: 11.0.0
- semantic-release: 23.0.6(typescript@5.4.3)
+ read-package-up: 11.0.0
+ semantic-release: 24.0.0(typescript@5.4.5)
transitivePeerDependencies:
- supports-color
- dev: true
- /@sindresorhus/is@4.6.0:
- resolution: {integrity: sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==}
- engines: {node: '>=10'}
- dev: true
+ '@sindresorhus/is@4.6.0': {}
- /@sindresorhus/merge-streams@2.3.0:
- resolution: {integrity: sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==}
- engines: {node: '>=18'}
- dev: true
+ '@sindresorhus/merge-streams@2.3.0': {}
- /@snyk/github-codeowners@1.1.0:
- resolution: {integrity: sha512-lGFf08pbkEac0NYgVf4hdANpAgApRjNByLXB+WBip3qj1iendOIyAwP2GKkKbQMNVy2r1xxDf0ssfWscoiC+Vw==}
- engines: {node: '>=8.10'}
- hasBin: true
+ '@sindresorhus/merge-streams@4.0.0': {}
+
+ '@snyk/github-codeowners@1.1.0':
dependencies:
commander: 4.1.1
ignore: 5.3.1
p-map: 4.0.0
- dev: true
- /@tsconfig/node10@1.0.9:
- resolution: {integrity: sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==}
- dev: true
+ '@stylistic/eslint-plugin-js@2.6.1(eslint@9.8.0)':
+ dependencies:
+ '@types/eslint': 9.6.0
+ acorn: 8.12.1
+ eslint: 9.8.0
+ eslint-visitor-keys: 4.0.0
+ espree: 10.1.0
- /@tsconfig/node12@1.0.11:
- resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==}
- dev: true
+ '@stylistic/eslint-plugin-jsx@2.6.1(eslint@9.8.0)':
+ dependencies:
+ '@stylistic/eslint-plugin-js': 2.6.1(eslint@9.8.0)
+ '@types/eslint': 9.6.0
+ eslint: 9.8.0
+ estraverse: 5.3.0
+ picomatch: 4.0.2
- /@tsconfig/node14@1.0.3:
- resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==}
- dev: true
+ '@stylistic/eslint-plugin-migrate@2.6.1(eslint@9.8.0)(typescript@5.4.5)':
+ dependencies:
+ '@eslint-stylistic/metadata': 2.6.1
+ '@typescript-eslint/utils': 8.0.0(eslint@9.8.0)(typescript@5.4.5)
+ transitivePeerDependencies:
+ - eslint
+ - supports-color
+ - typescript
- /@tsconfig/node16@1.0.3:
- resolution: {integrity: sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==}
- dev: true
+ '@stylistic/eslint-plugin-plus@2.6.1(eslint@9.8.0)(typescript@5.4.5)':
+ dependencies:
+ '@types/eslint': 9.6.0
+ '@typescript-eslint/utils': 8.0.0(eslint@9.8.0)(typescript@5.4.5)
+ eslint: 9.8.0
+ transitivePeerDependencies:
+ - supports-color
+ - typescript
- /@types/conventional-commits-parser@5.0.0:
- resolution: {integrity: sha512-loB369iXNmAZglwWATL+WRe+CRMmmBPtpolYzIebFaX4YA3x+BEfLqhUAV9WanycKI3TG1IMr5bMJDajDKLlUQ==}
+ '@stylistic/eslint-plugin-ts@2.6.1(eslint@9.8.0)(typescript@5.4.5)':
dependencies:
- '@types/node': 18.11.9
- dev: true
+ '@stylistic/eslint-plugin-js': 2.6.1(eslint@9.8.0)
+ '@types/eslint': 9.6.0
+ '@typescript-eslint/utils': 8.0.0(eslint@9.8.0)(typescript@5.4.5)
+ eslint: 9.8.0
+ transitivePeerDependencies:
+ - supports-color
+ - typescript
- /@types/eslint-config-prettier@6.11.3:
- resolution: {integrity: sha512-3wXCiM8croUnhg9LdtZUJQwNcQYGWxxdOWDjPe1ykCqJFPVpzAKfs/2dgSoCtAvdPeaponcWPI7mPcGGp9dkKQ==}
- dev: true
+ '@stylistic/eslint-plugin@2.6.1(eslint@9.8.0)(typescript@5.4.5)':
+ dependencies:
+ '@stylistic/eslint-plugin-js': 2.6.1(eslint@9.8.0)
+ '@stylistic/eslint-plugin-jsx': 2.6.1(eslint@9.8.0)
+ '@stylistic/eslint-plugin-plus': 2.6.1(eslint@9.8.0)(typescript@5.4.5)
+ '@stylistic/eslint-plugin-ts': 2.6.1(eslint@9.8.0)(typescript@5.4.5)
+ '@types/eslint': 9.6.0
+ eslint: 9.8.0
+ transitivePeerDependencies:
+ - supports-color
+ - typescript
- /@types/eslint-plugin-prettier@3.1.3:
- resolution: {integrity: sha512-Jk+lgBZM0u9ETUyqe2HvykL1j6uE7L1oEqbInWtsVHT6sP+AdwLb4ncmQBqASTS+YzYOPF6hKX0zgEhblRMjqA==}
+ '@types/conventional-commits-parser@5.0.0':
dependencies:
- '@types/eslint': 8.56.6
- dev: true
+ '@types/node': 22.1.0
- /@types/eslint@8.56.6:
- resolution: {integrity: sha512-ymwc+qb1XkjT/gfoQwxIeHZ6ixH23A+tCT2ADSA/DPVKzAjwYkTXBMCQ/f6fe4wEa85Lhp26VPeUxI7wMhAi7A==}
+ '@types/eslint@9.6.0':
dependencies:
'@types/estree': 1.0.5
- '@types/json-schema': 7.0.12
- dev: true
+ '@types/json-schema': 7.0.15
- /@types/estree@1.0.5:
- resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==}
- dev: true
+ '@types/estree@1.0.5': {}
- /@types/json-schema@7.0.12:
- resolution: {integrity: sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==}
- dev: true
+ '@types/json-schema@7.0.15': {}
- /@types/json5@0.0.29:
- resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==}
- dev: true
+ '@types/json5@0.0.29': {}
- /@types/mdast@3.0.10:
- resolution: {integrity: sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA==}
+ '@types/mdast@3.0.15':
dependencies:
- '@types/unist': 2.0.6
- dev: true
+ '@types/unist': 2.0.10
- /@types/node@18.11.9:
- resolution: {integrity: sha512-CRpX21/kGdzjOpFsZSkcrXMGIBWMGNIHXXBVFSH+ggkftxg+XYP20TESbh+zFvFj3EQOl5byk0HTRn1IL6hbqg==}
- dev: true
+ '@types/node@17.0.45': {}
- /@types/normalize-package-data@2.4.4:
- resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==}
- dev: true
+ '@types/node@22.1.0':
+ dependencies:
+ undici-types: 6.13.0
- /@types/picomatch@2.3.3:
- resolution: {integrity: sha512-Yll76ZHikRFCyz/pffKGjrCwe/le2CDwOP5F210KQo27kpRE46U2rDnzikNlVn6/ezH3Mhn46bJMTfeVTtcYMg==}
- dev: true
+ '@types/normalize-package-data@2.4.4': {}
- /@types/resolve@1.20.2:
- resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==}
- dev: true
+ '@types/object-path@0.11.4': {}
- /@types/rollup-plugin-auto-external@2.0.5:
- resolution: {integrity: sha512-jspE/1q/4MjrC0lilOpF7Ej5z2vvByPq6lb5ERHt9jCRnp0WJRq+SLK9oPfYroy0xhFhDqQoXLeSHcKqATDaoA==}
- dependencies:
- rollup: 4.13.0
- dev: true
+ '@types/semver@7.5.8': {}
- /@types/semver@7.5.0:
- resolution: {integrity: sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==}
- dev: true
+ '@types/ua-parser-js@0.7.39': {}
- /@types/unist@2.0.6:
- resolution: {integrity: sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==}
- dev: true
+ '@types/unist@2.0.10': {}
- /@typescript-eslint/eslint-plugin@7.3.1(@typescript-eslint/parser@7.3.1)(eslint@9.6.0)(typescript@5.4.3):
- resolution: {integrity: sha512-STEDMVQGww5lhCuNXVSQfbfuNII5E08QWkvAw5Qwf+bj2WT+JkG1uc+5/vXA3AOYMDHVOSpL+9rcbEUiHIm2dw==}
- engines: {node: ^18.18.0 || >=20.0.0}
- peerDependencies:
- '@typescript-eslint/parser': ^7.0.0
- eslint: ^8.56.0
- typescript: '*'
- peerDependenciesMeta:
- typescript:
- optional: true
+ '@typescript-eslint/eslint-plugin@8.0.0(@typescript-eslint/parser@8.0.0(eslint@9.8.0)(typescript@5.4.5))(eslint@9.8.0)(typescript@5.4.5)':
dependencies:
- '@eslint-community/regexpp': 4.6.2
- '@typescript-eslint/parser': 7.3.1(eslint@9.6.0)(typescript@5.4.3)
- '@typescript-eslint/scope-manager': 7.3.1
- '@typescript-eslint/type-utils': 7.3.1(eslint@9.6.0)(typescript@5.4.3)
- '@typescript-eslint/utils': 7.3.1(eslint@9.6.0)(typescript@5.4.3)
- '@typescript-eslint/visitor-keys': 7.3.1
- debug: 4.3.4
- eslint: 9.6.0
+ '@eslint-community/regexpp': 4.11.0
+ '@typescript-eslint/parser': 8.0.0(eslint@9.8.0)(typescript@5.4.5)
+ '@typescript-eslint/scope-manager': 8.0.0
+ '@typescript-eslint/type-utils': 8.0.0(eslint@9.8.0)(typescript@5.4.5)
+ '@typescript-eslint/utils': 8.0.0(eslint@9.8.0)(typescript@5.4.5)
+ '@typescript-eslint/visitor-keys': 8.0.0
+ eslint: 9.8.0
graphemer: 1.4.0
ignore: 5.3.1
natural-compare: 1.4.0
- semver: 7.6.0
- ts-api-utils: 1.3.0(typescript@5.4.3)
- typescript: 5.4.3
+ ts-api-utils: 1.3.0(typescript@5.4.5)
+ optionalDependencies:
+ typescript: 5.4.5
transitivePeerDependencies:
- supports-color
- dev: true
- /@typescript-eslint/parser@7.3.1(eslint@9.6.0)(typescript@5.4.3):
- resolution: {integrity: sha512-Rq49+pq7viTRCH48XAbTA+wdLRrB/3sRq4Lpk0oGDm0VmnjBrAOVXH/Laalmwsv2VpekiEfVFwJYVk6/e8uvQw==}
- engines: {node: ^18.18.0 || >=20.0.0}
- peerDependencies:
- eslint: ^8.56.0
- typescript: '*'
- peerDependenciesMeta:
- typescript:
- optional: true
+ '@typescript-eslint/parser@8.0.0(eslint@9.8.0)(typescript@5.4.5)':
dependencies:
- '@typescript-eslint/scope-manager': 7.3.1
- '@typescript-eslint/types': 7.3.1
- '@typescript-eslint/typescript-estree': 7.3.1(typescript@5.4.3)
- '@typescript-eslint/visitor-keys': 7.3.1
- debug: 4.3.4
- eslint: 9.6.0
- typescript: 5.4.3
+ '@typescript-eslint/scope-manager': 8.0.0
+ '@typescript-eslint/types': 8.0.0
+ '@typescript-eslint/typescript-estree': 8.0.0(typescript@5.4.5)
+ '@typescript-eslint/visitor-keys': 8.0.0
+ debug: 4.3.6
+ eslint: 9.8.0
+ optionalDependencies:
+ typescript: 5.4.5
transitivePeerDependencies:
- supports-color
- dev: true
- /@typescript-eslint/scope-manager@7.3.1:
- resolution: {integrity: sha512-fVS6fPxldsKY2nFvyT7IP78UO1/I2huG+AYu5AMjCT9wtl6JFiDnsv4uad4jQ0GTFzcUV5HShVeN96/17bTBag==}
- engines: {node: ^18.18.0 || >=20.0.0}
+ '@typescript-eslint/scope-manager@7.18.0':
dependencies:
- '@typescript-eslint/types': 7.3.1
- '@typescript-eslint/visitor-keys': 7.3.1
- dev: true
+ '@typescript-eslint/types': 7.18.0
+ '@typescript-eslint/visitor-keys': 7.18.0
- /@typescript-eslint/type-utils@7.3.1(eslint@9.6.0)(typescript@5.4.3):
- resolution: {integrity: sha512-iFhaysxFsMDQlzJn+vr3OrxN8NmdQkHks4WaqD4QBnt5hsq234wcYdyQ9uquzJJIDAj5W4wQne3yEsYA6OmXGw==}
- engines: {node: ^18.18.0 || >=20.0.0}
- peerDependencies:
- eslint: ^8.56.0
- typescript: '*'
- peerDependenciesMeta:
- typescript:
- optional: true
+ '@typescript-eslint/scope-manager@8.0.0':
+ dependencies:
+ '@typescript-eslint/types': 8.0.0
+ '@typescript-eslint/visitor-keys': 8.0.0
+
+ '@typescript-eslint/type-utils@7.18.0(eslint@9.8.0)(typescript@5.4.5)':
dependencies:
- '@typescript-eslint/typescript-estree': 7.3.1(typescript@5.4.3)
- '@typescript-eslint/utils': 7.3.1(eslint@9.6.0)(typescript@5.4.3)
- debug: 4.3.4
- eslint: 9.6.0
- ts-api-utils: 1.3.0(typescript@5.4.3)
- typescript: 5.4.3
+ '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.4.5)
+ '@typescript-eslint/utils': 7.18.0(eslint@9.8.0)(typescript@5.4.5)
+ debug: 4.3.6
+ eslint: 9.8.0
+ ts-api-utils: 1.3.0(typescript@5.4.5)
+ optionalDependencies:
+ typescript: 5.4.5
transitivePeerDependencies:
- supports-color
- dev: true
- /@typescript-eslint/types@7.3.1:
- resolution: {integrity: sha512-2tUf3uWggBDl4S4183nivWQ2HqceOZh1U4hhu4p1tPiIJoRRXrab7Y+Y0p+dozYwZVvLPRI6r5wKe9kToF9FIw==}
- engines: {node: ^18.18.0 || >=20.0.0}
- dev: true
+ '@typescript-eslint/type-utils@8.0.0(eslint@9.8.0)(typescript@5.4.5)':
+ dependencies:
+ '@typescript-eslint/typescript-estree': 8.0.0(typescript@5.4.5)
+ '@typescript-eslint/utils': 8.0.0(eslint@9.8.0)(typescript@5.4.5)
+ debug: 4.3.6
+ ts-api-utils: 1.3.0(typescript@5.4.5)
+ optionalDependencies:
+ typescript: 5.4.5
+ transitivePeerDependencies:
+ - eslint
+ - supports-color
- /@typescript-eslint/typescript-estree@7.3.1(typescript@5.4.3):
- resolution: {integrity: sha512-tLpuqM46LVkduWP7JO7yVoWshpJuJzxDOPYIVWUUZbW+4dBpgGeUdl/fQkhuV0A8eGnphYw3pp8d2EnvPOfxmQ==}
- engines: {node: ^18.18.0 || >=20.0.0}
- peerDependencies:
- typescript: '*'
- peerDependenciesMeta:
- typescript:
- optional: true
+ '@typescript-eslint/types@7.18.0': {}
+
+ '@typescript-eslint/types@8.0.0': {}
+
+ '@typescript-eslint/typescript-estree@7.18.0(typescript@5.4.5)':
dependencies:
- '@typescript-eslint/types': 7.3.1
- '@typescript-eslint/visitor-keys': 7.3.1
- debug: 4.3.4
+ '@typescript-eslint/types': 7.18.0
+ '@typescript-eslint/visitor-keys': 7.18.0
+ debug: 4.3.6
globby: 11.1.0
is-glob: 4.0.3
- minimatch: 9.0.3
- semver: 7.6.0
- ts-api-utils: 1.3.0(typescript@5.4.3)
- typescript: 5.4.3
+ minimatch: 9.0.5
+ semver: 7.6.3
+ ts-api-utils: 1.3.0(typescript@5.4.5)
+ optionalDependencies:
+ typescript: 5.4.5
transitivePeerDependencies:
- supports-color
- dev: true
- /@typescript-eslint/utils@7.3.1(eslint@9.6.0)(typescript@5.4.3):
- resolution: {integrity: sha512-jIERm/6bYQ9HkynYlNZvXpzmXWZGhMbrOvq3jJzOSOlKXsVjrrolzWBjDW6/TvT5Q3WqaN4EkmcfdQwi9tDjBQ==}
- engines: {node: ^18.18.0 || >=20.0.0}
- peerDependencies:
- eslint: ^8.56.0
+ '@typescript-eslint/typescript-estree@8.0.0(typescript@5.4.5)':
+ dependencies:
+ '@typescript-eslint/types': 8.0.0
+ '@typescript-eslint/visitor-keys': 8.0.0
+ debug: 4.3.6
+ globby: 11.1.0
+ is-glob: 4.0.3
+ minimatch: 9.0.5
+ semver: 7.6.3
+ ts-api-utils: 1.3.0(typescript@5.4.5)
+ optionalDependencies:
+ typescript: 5.4.5
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/utils@7.18.0(eslint@9.8.0)(typescript@5.4.5)':
dependencies:
- '@eslint-community/eslint-utils': 4.4.0(eslint@9.6.0)
- '@types/json-schema': 7.0.12
- '@types/semver': 7.5.0
- '@typescript-eslint/scope-manager': 7.3.1
- '@typescript-eslint/types': 7.3.1
- '@typescript-eslint/typescript-estree': 7.3.1(typescript@5.4.3)
- eslint: 9.6.0
- semver: 7.6.0
+ '@eslint-community/eslint-utils': 4.4.0(eslint@9.8.0)
+ '@typescript-eslint/scope-manager': 7.18.0
+ '@typescript-eslint/types': 7.18.0
+ '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.4.5)
+ eslint: 9.8.0
transitivePeerDependencies:
- supports-color
- typescript
- dev: true
- /@typescript-eslint/visitor-keys@7.3.1:
- resolution: {integrity: sha512-9RMXwQF8knsZvfv9tdi+4D/j7dMG28X/wMJ8Jj6eOHyHWwDW4ngQJcqEczSsqIKKjFiLFr40Mnr7a5ulDD3vmw==}
- engines: {node: ^18.18.0 || >=20.0.0}
+ '@typescript-eslint/utils@8.0.0(eslint@9.8.0)(typescript@5.4.5)':
+ dependencies:
+ '@eslint-community/eslint-utils': 4.4.0(eslint@9.8.0)
+ '@typescript-eslint/scope-manager': 8.0.0
+ '@typescript-eslint/types': 8.0.0
+ '@typescript-eslint/typescript-estree': 8.0.0(typescript@5.4.5)
+ eslint: 9.8.0
+ transitivePeerDependencies:
+ - supports-color
+ - typescript
+
+ '@typescript-eslint/visitor-keys@7.18.0':
dependencies:
- '@typescript-eslint/types': 7.3.1
+ '@typescript-eslint/types': 7.18.0
eslint-visitor-keys: 3.4.3
- dev: true
- /@zkochan/retry@0.2.0:
- resolution: {integrity: sha512-WhB+2B/ZPlW2Xy/kMJBrMbqecWXcbDDgn0K0wKBAgO2OlBTz1iLJrRWduo+DGGn0Akvz1Lu4Xvls7dJojximWw==}
- engines: {node: '>=10'}
- dev: true
+ '@typescript-eslint/visitor-keys@8.0.0':
+ dependencies:
+ '@typescript-eslint/types': 8.0.0
+ eslint-visitor-keys: 3.4.3
- /@zkochan/rimraf@2.1.3:
- resolution: {integrity: sha512-mCfR3gylCzPC+iqdxEA6z5SxJeOgzgbwmyxanKriIne5qZLswDe/M43aD3p5MNzwzXRhbZg/OX+MpES6Zk1a6A==}
- engines: {node: '>=12.10'}
+ '@unocss/config@0.61.9':
dependencies:
- rimraf: 3.0.2
- dev: true
+ '@unocss/core': 0.61.9
+ unconfig: 0.5.5
+ transitivePeerDependencies:
+ - supports-color
- /JSONStream@1.3.5:
- resolution: {integrity: sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==}
- hasBin: true
+ '@unocss/core@0.61.9': {}
+
+ '@unocss/eslint-plugin@0.61.9(eslint@9.8.0)(typescript@5.4.5)':
+ dependencies:
+ '@typescript-eslint/utils': 7.18.0(eslint@9.8.0)(typescript@5.4.5)
+ '@unocss/config': 0.61.9
+ '@unocss/core': 0.61.9
+ magic-string: 0.30.11
+ synckit: 0.9.1
+ transitivePeerDependencies:
+ - eslint
+ - supports-color
+ - typescript
+
+ '@vue/compiler-core@3.4.27':
+ dependencies:
+ '@babel/parser': 7.24.7
+ '@vue/shared': 3.4.27
+ entities: 4.5.0
+ estree-walker: 2.0.2
+ source-map-js: 1.2.0
+
+ '@vue/compiler-dom@3.4.27':
+ dependencies:
+ '@vue/compiler-core': 3.4.27
+ '@vue/shared': 3.4.27
+
+ '@vue/compiler-sfc@3.4.27':
+ dependencies:
+ '@babel/parser': 7.24.7
+ '@vue/compiler-core': 3.4.27
+ '@vue/compiler-dom': 3.4.27
+ '@vue/compiler-ssr': 3.4.27
+ '@vue/shared': 3.4.27
+ estree-walker: 2.0.2
+ magic-string: 0.30.11
+ postcss: 8.4.38
+ source-map-js: 1.2.0
+
+ '@vue/compiler-ssr@3.4.27':
+ dependencies:
+ '@vue/compiler-dom': 3.4.27
+ '@vue/shared': 3.4.27
+
+ '@vue/shared@3.4.27': {}
+
+ '@wessberg/stringutil@1.0.19': {}
+
+ JSONStream@1.3.5:
dependencies:
jsonparse: 1.3.1
through: 2.3.8
- dev: true
- /acorn-jsx@5.3.2(acorn@8.12.0):
- resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
- peerDependencies:
- acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
+ acorn-jsx@5.3.2(acorn@8.12.1):
dependencies:
- acorn: 8.12.0
- dev: true
+ acorn: 8.12.1
- /acorn-walk@8.2.0:
- resolution: {integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==}
- engines: {node: '>=0.4.0'}
- dev: true
+ acorn-walk@8.3.2: {}
- /acorn@8.12.0:
- resolution: {integrity: sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw==}
- engines: {node: '>=0.4.0'}
- hasBin: true
- dev: true
+ acorn@8.12.1: {}
- /agent-base@7.1.0:
- resolution: {integrity: sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==}
- engines: {node: '>= 14'}
+ agent-base@7.1.1:
dependencies:
- debug: 4.3.4
+ debug: 4.3.6
transitivePeerDependencies:
- supports-color
- dev: true
- /aggregate-error@3.1.0:
- resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==}
- engines: {node: '>=8'}
+ aggregate-error@3.1.0:
dependencies:
clean-stack: 2.2.0
indent-string: 4.0.0
- dev: true
- /aggregate-error@5.0.0:
- resolution: {integrity: sha512-gOsf2YwSlleG6IjRYG2A7k0HmBMEo6qVNk9Bp/EaLgAJT5ngH6PXbqa4ItvnEwCm/velL5jAnQgsHsWnjhGmvw==}
- engines: {node: '>=18'}
+ aggregate-error@5.0.0:
dependencies:
clean-stack: 5.2.0
indent-string: 5.0.0
- dev: true
- /ajv@6.12.6:
- resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==}
+ ajv@6.12.6:
dependencies:
fast-deep-equal: 3.1.3
fast-json-stable-stringify: 2.1.0
json-schema-traverse: 0.4.1
uri-js: 4.4.1
- dev: true
- /ajv@8.12.0:
- resolution: {integrity: sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==}
+ ajv@8.16.0:
dependencies:
fast-deep-equal: 3.1.3
json-schema-traverse: 1.0.0
require-from-string: 2.0.2
uri-js: 4.4.1
- dev: true
- /ansi-escapes@4.3.2:
- resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==}
- engines: {node: '>=8'}
+ ansi-colors@4.1.3: {}
+
+ ansi-escapes@4.3.2:
dependencies:
type-fest: 0.21.3
- dev: true
- /ansi-escapes@6.2.1:
- resolution: {integrity: sha512-4nJ3yixlEthEJ9Rk4vPcdBRkZvQZlYyu8j4/Mqz5sgIkddmEnH2Yj2ZrnP9S3tQOvSNRUIgVNF/1yPpRAGNRig==}
- engines: {node: '>=14.16'}
- dev: true
+ ansi-escapes@6.2.1: {}
- /ansi-regex@5.0.1:
- resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
- engines: {node: '>=8'}
- dev: true
+ ansi-escapes@7.0.0:
+ dependencies:
+ environment: 1.1.0
- /ansi-regex@6.0.1:
- resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==}
- engines: {node: '>=12'}
- dev: true
+ ansi-regex@5.0.1: {}
- /ansi-styles@3.2.1:
- resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==}
- engines: {node: '>=4'}
+ ansi-regex@6.0.1: {}
+
+ ansi-styles@3.2.1:
dependencies:
color-convert: 1.9.3
- dev: true
- /ansi-styles@4.3.0:
- resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
- engines: {node: '>=8'}
+ ansi-styles@4.3.0:
dependencies:
color-convert: 2.0.1
- dev: true
-
- /ansi-styles@6.2.1:
- resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==}
- engines: {node: '>=12'}
- dev: true
-
- /any-promise@1.3.0:
- resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==}
- dev: true
-
- /are-docs-informative@0.0.2:
- resolution: {integrity: sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig==}
- engines: {node: '>=14'}
- dev: true
- /arg@4.1.3:
- resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==}
- dev: true
+ ansi-styles@6.2.1: {}
- /argparse@2.0.1:
- resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
- dev: true
+ any-promise@1.3.0: {}
- /argv-formatter@1.0.0:
- resolution: {integrity: sha512-F2+Hkm9xFaRg+GkaNnbwXNDV5O6pnCFEmqyhvfC/Ic5LbgOWjJh3L+mN/s91rxVL3znE7DYVpW0GJFT+4YBgWw==}
- dev: true
+ are-docs-informative@0.0.2: {}
- /arity-n@1.0.4:
- resolution: {integrity: sha512-fExL2kFDC1Q2DUOx3whE/9KoN66IzkY4b4zUHUBFM1ojEYjZZYDcUW3bek/ufGionX9giIKDC5redH2IlGqcQQ==}
- dev: true
+ argparse@2.0.1: {}
- /array-buffer-byte-length@1.0.1:
- resolution: {integrity: sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==}
- engines: {node: '>= 0.4'}
+ argv-formatter@1.0.0: {}
+
+ array-buffer-byte-length@1.0.1:
dependencies:
call-bind: 1.0.7
is-array-buffer: 3.0.4
- dev: true
- /array-ify@1.0.0:
- resolution: {integrity: sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==}
- dev: true
+ array-ify@1.0.0: {}
- /array-includes@3.1.8:
- resolution: {integrity: sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==}
- engines: {node: '>= 0.4'}
+ array-includes@3.1.8:
dependencies:
call-bind: 1.0.7
define-properties: 1.2.1
- es-abstract: 1.23.2
+ es-abstract: 1.23.3
es-object-atoms: 1.0.0
get-intrinsic: 1.2.4
is-string: 1.0.7
- dev: true
- /array-last@1.3.0:
- resolution: {integrity: sha512-eOCut5rXlI6aCOS7Z7kCplKRKyiFQ6dHFBem4PwlwKeNFk2/XxTrhRh5T9PyaEWGy/NHTZWbY+nsZlNFJu9rYg==}
- engines: {node: '>=0.10.0'}
- dependencies:
- is-number: 4.0.0
- dev: true
-
- /array-timsort@1.0.3:
- resolution: {integrity: sha512-/+3GRL7dDAGEfM6TseQk/U+mi18TU2Ms9I3UlLdUMhz2hbvGNTKdj9xniwXfUqgYhHxRx0+8UnKkvlNwVU+cWQ==}
- dev: true
+ array-timsort@1.0.3: {}
- /array-union@2.1.0:
- resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==}
- engines: {node: '>=8'}
- dev: true
+ array-union@2.1.0: {}
- /array.prototype.findlastindex@1.2.5:
- resolution: {integrity: sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==}
- engines: {node: '>= 0.4'}
+ array.prototype.findlastindex@1.2.5:
dependencies:
call-bind: 1.0.7
define-properties: 1.2.1
- es-abstract: 1.23.2
+ es-abstract: 1.23.3
es-errors: 1.3.0
es-object-atoms: 1.0.0
es-shim-unscopables: 1.0.2
- dev: true
- /array.prototype.flat@1.3.2:
- resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==}
- engines: {node: '>= 0.4'}
+ array.prototype.flat@1.3.2:
dependencies:
call-bind: 1.0.7
define-properties: 1.2.1
- es-abstract: 1.23.2
+ es-abstract: 1.23.3
es-shim-unscopables: 1.0.2
- dev: true
- /array.prototype.flatmap@1.3.2:
- resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==}
- engines: {node: '>= 0.4'}
+ array.prototype.flatmap@1.3.2:
dependencies:
call-bind: 1.0.7
define-properties: 1.2.1
- es-abstract: 1.23.2
+ es-abstract: 1.23.3
es-shim-unscopables: 1.0.2
- dev: true
- /arraybuffer.prototype.slice@1.0.3:
- resolution: {integrity: sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==}
- engines: {node: '>= 0.4'}
+ arraybuffer.prototype.slice@1.0.3:
dependencies:
array-buffer-byte-length: 1.0.1
call-bind: 1.0.7
define-properties: 1.2.1
- es-abstract: 1.23.2
+ es-abstract: 1.23.3
es-errors: 1.3.0
get-intrinsic: 1.2.4
is-array-buffer: 3.0.4
is-shared-array-buffer: 1.0.3
- dev: true
- /at-least-node@1.0.0:
- resolution: {integrity: sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==}
- engines: {node: '>= 4.0.0'}
- dev: true
+ at-least-node@1.0.0: {}
- /available-typed-arrays@1.0.7:
- resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==}
- engines: {node: '>= 0.4'}
+ available-typed-arrays@1.0.7:
dependencies:
possible-typed-array-names: 1.0.0
- dev: true
-
- /babylon@6.18.0:
- resolution: {integrity: sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==}
- hasBin: true
- dev: true
- /balanced-match@1.0.2:
- resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
- dev: true
+ balanced-match@1.0.2: {}
- /base64-js@1.5.1:
- resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==}
- dev: true
+ base64-js@1.5.1: {}
- /before-after-hook@3.0.2:
- resolution: {integrity: sha512-Nik3Sc0ncrMK4UUdXQmAnRtzmNQTAAXmXIopizwZ1W1t8QmfJj+zL4OA2I7XPTPW5z5TDqv4hRo/JzouDJnX3A==}
- dev: true
+ before-after-hook@3.0.2: {}
- /bl@4.1.0:
- resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==}
+ bl@4.1.0:
dependencies:
buffer: 5.7.1
inherits: 2.0.4
- readable-stream: 3.6.1
- dev: true
+ readable-stream: 3.6.2
- /bole@5.0.11:
- resolution: {integrity: sha512-KB0Ye0iMAW5BnNbnLfMSQcnI186hKUzE2fpkZWqcxsoTR7eqzlTidSOMYPHJOn/yR7VGH7uSZp37qH9q2Et0zQ==}
- dependencies:
- fast-safe-stringify: 2.1.1
- individual: 3.0.0
- dev: true
+ boolbase@1.0.0: {}
- /bottleneck@2.19.5:
- resolution: {integrity: sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==}
- dev: true
+ bottleneck@2.19.5: {}
- /brace-expansion@1.1.11:
- resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
+ brace-expansion@1.1.11:
dependencies:
balanced-match: 1.0.2
concat-map: 0.0.1
- dev: true
- /brace-expansion@2.0.1:
- resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==}
+ brace-expansion@2.0.1:
dependencies:
balanced-match: 1.0.2
- dev: true
- /braces@3.0.2:
- resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==}
- engines: {node: '>=8'}
+ braces@3.0.3:
dependencies:
- fill-range: 7.0.1
- dev: true
+ fill-range: 7.1.1
- /browserslist@4.23.0:
- resolution: {integrity: sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==}
- engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
- hasBin: true
+ browserslist-generator@2.1.0:
+ dependencies:
+ '@mdn/browser-compat-data': 5.5.32
+ '@types/object-path': 0.11.4
+ '@types/semver': 7.5.8
+ '@types/ua-parser-js': 0.7.39
+ browserslist: 4.23.1
+ caniuse-lite: 1.0.30001629
+ isbot: 3.8.0
+ object-path: 0.11.8
+ semver: 7.6.3
+ ua-parser-js: 1.0.38
+
+ browserslist@4.23.1:
dependencies:
- caniuse-lite: 1.0.30001600
- electron-to-chromium: 1.4.715
+ caniuse-lite: 1.0.30001629
+ electron-to-chromium: 1.4.796
node-releases: 2.0.14
- update-browserslist-db: 1.0.13(browserslist@4.23.0)
- dev: true
+ update-browserslist-db: 1.0.16(browserslist@4.23.1)
- /buffer@5.7.1:
- resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==}
+ buffer@5.7.1:
dependencies:
base64-js: 1.5.1
ieee754: 1.2.1
- dev: true
-
- /builtin-modules@3.3.0:
- resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==}
- engines: {node: '>=6'}
- dev: true
- /builtins@2.0.1:
- resolution: {integrity: sha512-XkkVe5QAb6guWPXTzpSrYpSlN3nqEmrrE2TkAr/tp7idSF6+MONh9WvKrAuR3HiKLvoSgmbs8l1U9IPmMrIoLw==}
- dependencies:
- semver: 6.3.1
- dev: true
+ builtin-modules@3.3.0: {}
- /builtins@5.0.1:
- resolution: {integrity: sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==}
+ bundle-require@5.0.0(esbuild@0.21.5):
dependencies:
- semver: 7.6.0
- dev: true
+ esbuild: 0.21.5
+ load-tsconfig: 0.2.5
- /cachedir@2.3.0:
- resolution: {integrity: sha512-A+Fezp4zxnit6FanDmv9EqXNAi3vt9DWp51/71UEhXukb7QUuvtv9344h91dyAxuTLoSYJFU299qzR3tzwPAhw==}
- engines: {node: '>=6'}
- dev: true
+ cachedir@2.3.0: {}
- /call-bind@1.0.7:
- resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==}
- engines: {node: '>= 0.4'}
+ call-bind@1.0.7:
dependencies:
es-define-property: 1.0.0
es-errors: 1.3.0
function-bind: 1.1.2
get-intrinsic: 1.2.4
set-function-length: 1.2.2
- dev: true
- /callsites@3.1.0:
- resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
- engines: {node: '>=6'}
- dev: true
+ call-me-maybe@1.0.2: {}
- /caniuse-lite@1.0.30001600:
- resolution: {integrity: sha512-+2S9/2JFhYmYaDpZvo0lKkfvuKIglrx68MwOBqMGHhQsNkLjB5xtc/TGoEPs+MxjSyN/72qer2g97nzR641mOQ==}
- dev: true
+ callsites@3.1.0: {}
- /chalk-template@1.1.0:
- resolution: {integrity: sha512-T2VJbcDuZQ0Tb2EWwSotMPJjgpy1/tGee1BTpUNsGZ/qgNjV2t7Mvu+d4600U564nbLesN1x2dPL+xii174Ekg==}
- engines: {node: '>=14.16'}
+ caniuse-lite@1.0.30001629: {}
+
+ chalk-template@1.1.0:
dependencies:
chalk: 5.3.0
- dev: true
- /chalk@2.4.2:
- resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
- engines: {node: '>=4'}
+ chalk@2.4.2:
dependencies:
ansi-styles: 3.2.1
escape-string-regexp: 1.0.5
supports-color: 5.5.0
- dev: true
- /chalk@4.1.2:
- resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
- engines: {node: '>=10'}
+ chalk@4.1.2:
dependencies:
ansi-styles: 4.3.0
supports-color: 7.2.0
- dev: true
- /chalk@5.3.0:
- resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==}
- engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
- dev: true
+ chalk@5.3.0: {}
- /char-regex@1.0.2:
- resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==}
- engines: {node: '>=10'}
- dev: true
+ char-regex@1.0.2: {}
- /character-entities-legacy@1.1.4:
- resolution: {integrity: sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==}
- dev: true
+ character-entities-legacy@1.1.4: {}
- /character-entities@1.2.4:
- resolution: {integrity: sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==}
- dev: true
+ character-entities@1.2.4: {}
- /character-reference-invalid@1.1.4:
- resolution: {integrity: sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==}
- dev: true
+ character-reference-invalid@1.1.4: {}
- /chardet@0.7.0:
- resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==}
- dev: true
+ chardet@0.7.0: {}
- /ci-info@4.0.0:
- resolution: {integrity: sha512-TdHqgGf9odd8SXNuxtUBVx8Nv+qZOejE6qyqiy5NtbYYQOeFa6zmHkxlPzmaLxWWHsU6nJmB7AETdVPi+2NBUg==}
- engines: {node: '>=8'}
- dev: true
+ ci-info@4.0.0: {}
- /clean-regexp@1.0.0:
- resolution: {integrity: sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==}
- engines: {node: '>=4'}
+ clean-regexp@1.0.0:
dependencies:
escape-string-regexp: 1.0.5
- dev: true
- /clean-stack@2.2.0:
- resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==}
- engines: {node: '>=6'}
- dev: true
+ clean-stack@2.2.0: {}
- /clean-stack@5.2.0:
- resolution: {integrity: sha512-TyUIUJgdFnCISzG5zu3291TAsE77ddchd0bepon1VVQrKLGKFED4iXFEDQ24mIPdPBbyE16PK3F8MYE1CmcBEQ==}
- engines: {node: '>=14.16'}
+ clean-stack@5.2.0:
dependencies:
escape-string-regexp: 5.0.0
- dev: true
- /clear-module@4.1.2:
- resolution: {integrity: sha512-LWAxzHqdHsAZlPlEyJ2Poz6AIs384mPeqLVCru2p0BrP9G/kVGuhNyZYClLO6cXlnuJjzC8xtsJIuMjKqLXoAw==}
- engines: {node: '>=8'}
+ clear-module@4.1.2:
dependencies:
parent-module: 2.0.0
resolve-from: 5.0.0
- dev: true
- /cli-cursor@3.1.0:
- resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==}
- engines: {node: '>=8'}
+ cli-cursor@3.1.0:
dependencies:
restore-cursor: 3.1.0
- dev: true
- /cli-cursor@4.0.0:
- resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ cli-cursor@5.0.0:
dependencies:
- restore-cursor: 4.0.0
- dev: true
+ restore-cursor: 5.1.0
- /cli-highlight@2.1.11:
- resolution: {integrity: sha512-9KDcoEVwyUXrjcJNvHD0NFc/hiwe/WPVYIleQh2O1N2Zro5gWJZ/K+3DGn8w8P/F6FxOgzyC5bxDyHIgCSPhGg==}
- engines: {node: '>=8.0.0', npm: '>=5.0.0'}
- hasBin: true
+ cli-highlight@2.1.11:
dependencies:
chalk: 4.1.2
highlight.js: 10.7.3
@@ -2173,120 +5595,68 @@ packages:
parse5: 5.1.1
parse5-htmlparser2-tree-adapter: 6.0.1
yargs: 16.2.0
- dev: true
- /cli-spinners@2.7.0:
- resolution: {integrity: sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw==}
- engines: {node: '>=6'}
- dev: true
+ cli-spinners@2.9.2: {}
- /cli-table3@0.6.3:
- resolution: {integrity: sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==}
- engines: {node: 10.* || >= 12.*}
+ cli-table3@0.6.5:
dependencies:
string-width: 4.2.3
optionalDependencies:
'@colors/colors': 1.5.0
- dev: true
- /cli-truncate@4.0.0:
- resolution: {integrity: sha512-nPdaFdQ0h/GEigbPClz11D0v/ZJEwxmeVZGeMo3Z5StPtUTkA9o1lD6QwoirYiSDzbcwn2XcjwmCp68W1IS4TA==}
- engines: {node: '>=18'}
+ cli-truncate@4.0.0:
dependencies:
slice-ansi: 5.0.0
string-width: 7.1.0
- dev: true
- /cli-width@3.0.0:
- resolution: {integrity: sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==}
- engines: {node: '>= 10'}
- dev: true
+ cli-width@3.0.0: {}
- /cliui@7.0.4:
- resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==}
+ cliui@7.0.4:
dependencies:
string-width: 4.2.3
strip-ansi: 6.0.1
wrap-ansi: 7.0.0
- dev: true
- /cliui@8.0.1:
- resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
- engines: {node: '>=12'}
+ cliui@8.0.1:
dependencies:
string-width: 4.2.3
strip-ansi: 6.0.1
wrap-ansi: 7.0.0
- dev: true
- /clone@1.0.4:
- resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==}
- engines: {node: '>=0.8'}
- dev: true
+ clone@1.0.4: {}
- /color-convert@1.9.3:
- resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==}
+ color-convert@1.9.3:
dependencies:
color-name: 1.1.3
- dev: true
- /color-convert@2.0.1:
- resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
- engines: {node: '>=7.0.0'}
+ color-convert@2.0.1:
dependencies:
color-name: 1.1.4
- dev: true
-
- /color-name@1.1.3:
- resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==}
- dev: true
- /color-name@1.1.4:
- resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
- dev: true
+ color-name@1.1.3: {}
- /colorette@2.0.20:
- resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==}
- dev: true
+ color-name@1.1.4: {}
- /commander@11.1.0:
- resolution: {integrity: sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==}
- engines: {node: '>=16'}
- dev: true
+ colorette@2.0.20: {}
- /commander@12.0.0:
- resolution: {integrity: sha512-MwVNWlYjDTtOjX5PiD7o5pK0UrFU/OYgcJfjjK4RaHZETNtjJqrZa9Y9ds88+A+f+d5lv+561eZ+yCKoS3gbAA==}
- engines: {node: '>=18'}
- dev: true
+ commander@12.1.0: {}
- /commander@4.1.1:
- resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==}
- engines: {node: '>= 6'}
- dev: true
+ commander@4.1.1: {}
- /comment-json@4.2.3:
- resolution: {integrity: sha512-SsxdiOf064DWoZLH799Ata6u7iV658A11PlWtZATDlXPpKGJnbJZ5Z24ybixAi+LUUqJ/GKowAejtC5GFUG7Tw==}
- engines: {node: '>= 6'}
+ comment-json@4.2.4:
dependencies:
array-timsort: 1.0.3
core-util-is: 1.0.3
esprima: 4.0.1
has-own-prop: 2.0.0
repeat-string: 1.6.1
- dev: true
- /comment-parser@1.4.1:
- resolution: {integrity: sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==}
- engines: {node: '>= 12.0.0'}
- dev: true
+ comment-parser@1.4.1: {}
- /commitizen@4.3.0(@types/node@18.11.9)(typescript@5.4.3):
- resolution: {integrity: sha512-H0iNtClNEhT0fotHvGV3E9tDejDeS04sN1veIebsKYGMuGscFaswRoYJKmT3eW85eIJAs0F28bG2+a/9wCOfPw==}
- engines: {node: '>= 12'}
- hasBin: true
+ commitizen@4.3.0(@types/node@22.1.0)(typescript@5.4.5):
dependencies:
cachedir: 2.3.0
- cz-conventional-changelog: 3.3.0(@types/node@18.11.9)(typescript@5.4.3)
+ cz-conventional-changelog: 3.3.0(@types/node@22.1.0)(typescript@5.4.5)
dedent: 0.7.0
detect-indent: 6.1.0
find-node-modules: 2.1.3
@@ -2302,536 +5672,336 @@ packages:
transitivePeerDependencies:
- '@types/node'
- typescript
- dev: true
- /commondir@1.0.1:
- resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==}
- dev: true
-
- /compare-func@2.0.0:
- resolution: {integrity: sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==}
+ compare-func@2.0.0:
dependencies:
array-ify: 1.0.0
dot-prop: 5.3.0
- dev: true
- /compose-function@3.0.3:
- resolution: {integrity: sha512-xzhzTJ5eC+gmIzvZq+C3kCJHsp9os6tJkrigDRZclyGtOKINbZtE8n1Tzmeh32jW+BUDPbvZpibwvJHBLGMVwg==}
+ compatfactory@3.0.0(typescript@5.4.5):
dependencies:
- arity-n: 1.0.4
- dev: true
+ helpertypes: 0.0.19
+ typescript: 5.4.5
- /concat-map@0.0.1:
- resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
- dev: true
+ concat-map@0.0.1: {}
- /config-chain@1.1.13:
- resolution: {integrity: sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==}
+ confbox@0.1.7: {}
+
+ config-chain@1.1.13:
dependencies:
ini: 1.3.8
proto-list: 1.2.4
- dev: true
- /configstore@6.0.0:
- resolution: {integrity: sha512-cD31W1v3GqUlQvbBCGcXmd2Nj9SvLDOP1oQ0YFuLETufzSPaKp11rYBsSOm7rCsW3OnIRAFM3OxRhceaXNYHkA==}
- engines: {node: '>=12'}
+ conventional-changelog-angular@7.0.0:
dependencies:
- dot-prop: 6.0.1
- graceful-fs: 4.2.11
- unique-string: 3.0.0
- write-file-atomic: 3.0.3
- xdg-basedir: 5.1.0
- dev: true
+ compare-func: 2.0.0
- /conventional-changelog-angular@7.0.0:
- resolution: {integrity: sha512-ROjNchA9LgfNMTTFSIWPzebCwOGFdgkEq45EnvvrmSLvCtAw0HSmrCs7/ty+wAeYUZyNay0YMUNYFTRL72PkBQ==}
- engines: {node: '>=16'}
+ conventional-changelog-angular@8.0.0:
dependencies:
compare-func: 2.0.0
- dev: true
- /conventional-changelog-conventionalcommits@7.0.2:
- resolution: {integrity: sha512-NKXYmMR/Hr1DevQegFB4MwfM5Vv0m4UIxKZTTYuD98lpTknaZlSRrDOG4X7wIXpGkfsYxZTghUN+Qq+T0YQI7w==}
- engines: {node: '>=16'}
+ conventional-changelog-conventionalcommits@7.0.2:
dependencies:
compare-func: 2.0.0
- dev: true
- /conventional-changelog-writer@7.0.1:
- resolution: {integrity: sha512-Uo+R9neH3r/foIvQ0MKcsXkX642hdm9odUp7TqgFS7BsalTcjzRlIfWZrZR1gbxOozKucaKt5KAbjW8J8xRSmA==}
- engines: {node: '>=16'}
- hasBin: true
+ conventional-changelog-writer@8.0.0:
dependencies:
- conventional-commits-filter: 4.0.0
- handlebars: 4.7.7
- json-stringify-safe: 5.0.1
- meow: 12.1.1
- semver: 7.6.0
- split2: 4.2.0
- dev: true
+ '@types/semver': 7.5.8
+ conventional-commits-filter: 5.0.0
+ handlebars: 4.7.8
+ meow: 13.2.0
+ semver: 7.6.3
- /conventional-commit-types@3.0.0:
- resolution: {integrity: sha512-SmmCYnOniSsAa9GqWOeLqc179lfr5TRu5b4QFDkbsrJ5TZjPJx85wtOr3zn+1dbeNiXDKGPbZ72IKbPhLXh/Lg==}
- dev: true
+ conventional-commit-types@3.0.0: {}
- /conventional-commits-filter@4.0.0:
- resolution: {integrity: sha512-rnpnibcSOdFcdclpFwWa+pPlZJhXE7l+XK04zxhbWrhgpR96h33QLz8hITTXbcYICxVr3HZFtbtUAQ+4LdBo9A==}
- engines: {node: '>=16'}
- dev: true
+ conventional-commits-filter@5.0.0: {}
- /conventional-commits-parser@5.0.0:
- resolution: {integrity: sha512-ZPMl0ZJbw74iS9LuX9YIAiW8pfM5p3yh2o/NbXHbkFuZzY5jvdi5jFycEOkmBW5H5I7nA+D6f3UcsCLP2vvSEA==}
- engines: {node: '>=16'}
- hasBin: true
+ conventional-commits-parser@5.0.0:
dependencies:
JSONStream: 1.3.5
is-text-path: 2.0.0
meow: 12.1.1
split2: 4.2.0
- dev: true
- /core-js-compat@3.36.1:
- resolution: {integrity: sha512-Dk997v9ZCt3X/npqzyGdTlq6t7lDBhZwGvV94PKzDArjp7BTRm7WlDAXYd/OWdeFHO8OChQYRJNJvUCqCbrtKA==}
+ conventional-commits-parser@6.0.0:
dependencies:
- browserslist: 4.23.0
- dev: true
+ meow: 13.2.0
- /core-util-is@1.0.3:
- resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==}
- dev: true
+ convert-hrtime@5.0.0: {}
- /cosmiconfig-typescript-loader@5.0.0(@types/node@18.11.9)(cosmiconfig@9.0.0)(typescript@5.4.3):
- resolution: {integrity: sha512-+8cK7jRAReYkMwMiG+bxhcNKiHJDM6bR9FD/nGBXOWdMLuYawjF5cGrtLilJ+LGd3ZjCXnJjR5DkfWPoIVlqJA==}
- engines: {node: '>=v16'}
- peerDependencies:
- '@types/node': '*'
- cosmiconfig: '>=8.2'
- typescript: '>=4'
+ core-js-compat@3.37.1:
dependencies:
- '@types/node': 18.11.9
- cosmiconfig: 9.0.0(typescript@5.4.3)
- jiti: 1.21.0
- typescript: 5.4.3
- dev: true
+ browserslist: 4.23.1
- /cosmiconfig@9.0.0(typescript@5.4.3):
- resolution: {integrity: sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==}
- engines: {node: '>=14'}
- peerDependencies:
- typescript: '>=4.9.5'
- peerDependenciesMeta:
- typescript:
- optional: true
+ core-util-is@1.0.3: {}
+
+ cosmiconfig-typescript-loader@5.0.0(@types/node@22.1.0)(cosmiconfig@9.0.0(typescript@5.4.5))(typescript@5.4.5):
+ dependencies:
+ '@types/node': 22.1.0
+ cosmiconfig: 9.0.0(typescript@5.4.5)
+ jiti: 1.21.6
+ typescript: 5.4.5
+
+ cosmiconfig@9.0.0(typescript@5.4.5):
dependencies:
env-paths: 2.2.1
import-fresh: 3.3.0
js-yaml: 4.1.0
parse-json: 5.2.0
- typescript: 5.4.3
- dev: true
-
- /create-require@1.1.1:
- resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==}
- dev: true
+ optionalDependencies:
+ typescript: 5.4.5
- /cross-spawn@7.0.3:
- resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==}
- engines: {node: '>= 8'}
+ cross-spawn@7.0.3:
dependencies:
path-key: 3.1.1
shebang-command: 2.0.0
which: 2.0.2
- dev: true
- /crypto-random-string@2.0.0:
- resolution: {integrity: sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==}
- engines: {node: '>=8'}
- dev: true
+ crosspath@2.0.0:
+ dependencies:
+ '@types/node': 17.0.45
- /crypto-random-string@4.0.0:
- resolution: {integrity: sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==}
- engines: {node: '>=12'}
+ crypto-random-string@4.0.0:
dependencies:
type-fest: 1.4.0
- dev: true
- /cspell-config-lib@8.6.1:
- resolution: {integrity: sha512-I6LatgXJb8mxKFzIywO81TlUD/qWnUDrhB6yTUPdP90bwZcXMmGoCsZxhd2Rvl9fz5fWne0T839I1coShfm86g==}
- engines: {node: '>=18'}
+ cspell-config-lib@8.13.1:
dependencies:
- '@cspell/cspell-types': 8.6.1
- comment-json: 4.2.3
- yaml: 2.4.1
- dev: true
+ '@cspell/cspell-types': 8.13.1
+ comment-json: 4.2.4
+ yaml: 2.5.0
- /cspell-dictionary@8.6.1:
- resolution: {integrity: sha512-0SfKPi1QoWbGpZ/rWMR7Jn0+GaQT9PAMLWjVOu66PUNUXI5f4oCTHpnZE1Xts+5VX8shZC3TAMHEgtgKuQn4RQ==}
- engines: {node: '>=18'}
+ cspell-dictionary@8.13.1:
dependencies:
- '@cspell/cspell-pipe': 8.6.1
- '@cspell/cspell-types': 8.6.1
- cspell-trie-lib: 8.6.1
+ '@cspell/cspell-pipe': 8.13.1
+ '@cspell/cspell-types': 8.13.1
+ cspell-trie-lib: 8.13.1
fast-equals: 5.0.1
- gensequence: 7.0.0
- dev: true
- /cspell-gitignore@8.6.1:
- resolution: {integrity: sha512-3gtt351sSDfN826aMXTqGHVLz2lz9ZHr8uemImUc24Q+676sXkJM9lXzqP8PUqwGhLyt5qSf+9pt0ieNwQy/cA==}
- engines: {node: '>=18'}
- hasBin: true
+ cspell-gitignore@8.13.1:
dependencies:
- cspell-glob: 8.6.1
+ '@cspell/url': 8.13.1
+ cspell-glob: 8.13.1
+ cspell-io: 8.13.1
find-up-simple: 1.0.0
- dev: true
- /cspell-glob@8.6.1:
- resolution: {integrity: sha512-QjtngIR0XsUQLmHHDO86hps/JR5sRxSBwCvcsNCEmSdpdofLFc8cuxi3o33JWge7UAPBCQOLGfpA7/Wx31srmw==}
- engines: {node: '>=18'}
+ cspell-glob@8.13.1:
dependencies:
- micromatch: 4.0.5
- dev: true
+ '@cspell/url': 8.13.1
+ micromatch: 4.0.7
- /cspell-grammar@8.6.1:
- resolution: {integrity: sha512-MaG0e/F0b2FnIRULCZ61JxEiJgTP/6rsbUoR5nG9X+WmJYItYmxC1F/FPPrVeTu+jJr/8O4pdnslE20pimHaCw==}
- engines: {node: '>=18'}
- hasBin: true
+ cspell-grammar@8.13.1:
dependencies:
- '@cspell/cspell-pipe': 8.6.1
- '@cspell/cspell-types': 8.6.1
- dev: true
+ '@cspell/cspell-pipe': 8.13.1
+ '@cspell/cspell-types': 8.13.1
- /cspell-io@8.6.1:
- resolution: {integrity: sha512-ofxBB8QtUPvh/bOwKLYsqU1hwQCet8E98jkn/5f4jtG+/x5Zd80I0Ez+tlbjiBmrrQfOKh+i8ipfzHD8JtoreQ==}
- engines: {node: '>=18'}
+ cspell-io@8.13.1:
dependencies:
- '@cspell/cspell-service-bus': 8.6.1
- dev: true
+ '@cspell/cspell-service-bus': 8.13.1
+ '@cspell/url': 8.13.1
- /cspell-lib@8.6.1:
- resolution: {integrity: sha512-kGeDUypRtThFT81IdUK7yU8eUwO5MYWj8pGQ0N8WFsqbCahJrUdcocceVSpnCX48W3CXu12DkqYG9kv5Umn7Xw==}
- engines: {node: '>=18'}
+ cspell-lib@8.13.1:
dependencies:
- '@cspell/cspell-bundled-dicts': 8.6.1
- '@cspell/cspell-pipe': 8.6.1
- '@cspell/cspell-resolver': 8.6.1
- '@cspell/cspell-types': 8.6.1
- '@cspell/dynamic-import': 8.6.1
- '@cspell/strong-weak-map': 8.6.1
+ '@cspell/cspell-bundled-dicts': 8.13.1
+ '@cspell/cspell-pipe': 8.13.1
+ '@cspell/cspell-resolver': 8.13.1
+ '@cspell/cspell-types': 8.13.1
+ '@cspell/dynamic-import': 8.13.1
+ '@cspell/strong-weak-map': 8.13.1
+ '@cspell/url': 8.13.1
clear-module: 4.1.2
- comment-json: 4.2.3
- configstore: 6.0.0
- cspell-config-lib: 8.6.1
- cspell-dictionary: 8.6.1
- cspell-glob: 8.6.1
- cspell-grammar: 8.6.1
- cspell-io: 8.6.1
- cspell-trie-lib: 8.6.1
+ comment-json: 4.2.4
+ cspell-config-lib: 8.13.1
+ cspell-dictionary: 8.13.1
+ cspell-glob: 8.13.1
+ cspell-grammar: 8.13.1
+ cspell-io: 8.13.1
+ cspell-trie-lib: 8.13.1
+ env-paths: 3.0.0
fast-equals: 5.0.1
gensequence: 7.0.0
import-fresh: 3.3.0
resolve-from: 5.0.0
- vscode-languageserver-textdocument: 1.0.11
+ vscode-languageserver-textdocument: 1.0.12
vscode-uri: 3.0.8
- dev: true
+ xdg-basedir: 5.1.0
- /cspell-trie-lib@8.6.1:
- resolution: {integrity: sha512-iuJuAyWoqTH/TpFAR/ISJGQQoW3oiw54GyvXIucPoCJt/jgQONDuzqPW+skiLvcgcTbXCN9dutZTb2gImIkmpw==}
- engines: {node: '>=18'}
+ cspell-trie-lib@8.13.1:
dependencies:
- '@cspell/cspell-pipe': 8.6.1
- '@cspell/cspell-types': 8.6.1
+ '@cspell/cspell-pipe': 8.13.1
+ '@cspell/cspell-types': 8.13.1
gensequence: 7.0.0
- dev: true
- /cspell@8.6.1:
- resolution: {integrity: sha512-/Qle15v4IQe7tViSWX0+RCZJ2HJ4HUCZV9Z4uOVasNUz+DWCrxysNR+pfCRYuLX/6lQdqCM9QCR9GZc7a2KIVA==}
- engines: {node: '>=18'}
- hasBin: true
+ cspell@8.13.1:
dependencies:
- '@cspell/cspell-json-reporter': 8.6.1
- '@cspell/cspell-pipe': 8.6.1
- '@cspell/cspell-types': 8.6.1
- '@cspell/dynamic-import': 8.6.1
+ '@cspell/cspell-json-reporter': 8.13.1
+ '@cspell/cspell-pipe': 8.13.1
+ '@cspell/cspell-types': 8.13.1
+ '@cspell/dynamic-import': 8.13.1
+ '@cspell/url': 8.13.1
chalk: 5.3.0
chalk-template: 1.1.0
- commander: 12.0.0
- cspell-gitignore: 8.6.1
- cspell-glob: 8.6.1
- cspell-io: 8.6.1
- cspell-lib: 8.6.1
+ commander: 12.1.0
+ cspell-dictionary: 8.13.1
+ cspell-gitignore: 8.13.1
+ cspell-glob: 8.13.1
+ cspell-io: 8.13.1
+ cspell-lib: 8.13.1
fast-glob: 3.3.2
fast-json-stable-stringify: 2.1.0
- file-entry-cache: 8.0.0
+ file-entry-cache: 9.0.0
get-stdin: 9.0.0
- semver: 7.6.0
+ semver: 7.6.3
strip-ansi: 7.1.0
- vscode-uri: 3.0.8
- dev: true
- /cz-conventional-changelog@3.3.0(@types/node@18.11.9)(typescript@5.4.3):
- resolution: {integrity: sha512-U466fIzU5U22eES5lTNiNbZ+d8dfcHcssH4o7QsdWaCcRs/feIPCxKYSWkYBNs5mny7MvEfwpTLWjvbm94hecw==}
- engines: {node: '>= 10'}
+ cssesc@3.0.0: {}
+
+ cz-conventional-changelog@3.3.0(@types/node@22.1.0)(typescript@5.4.5):
dependencies:
chalk: 2.4.2
- commitizen: 4.3.0(@types/node@18.11.9)(typescript@5.4.3)
+ commitizen: 4.3.0(@types/node@22.1.0)(typescript@5.4.5)
conventional-commit-types: 3.0.0
lodash.map: 4.6.0
longest: 2.0.1
- word-wrap: 1.2.3
+ word-wrap: 1.2.5
optionalDependencies:
- '@commitlint/load': 19.2.0(@types/node@18.11.9)(typescript@5.4.3)
+ '@commitlint/load': 19.2.0(@types/node@22.1.0)(typescript@5.4.5)
transitivePeerDependencies:
- '@types/node'
- typescript
- dev: true
-
- /dargs@8.1.0:
- resolution: {integrity: sha512-wAV9QHOsNbwnWdNW2FYvE1P56wtgSbM+3SZcdGiWQILwVjACCXDCI3Ai8QlCjMDB8YK5zySiXZYBiwGmNY3lnw==}
- engines: {node: '>=12'}
- dev: true
- /data-uri-to-buffer@3.0.1:
- resolution: {integrity: sha512-WboRycPNsVw3B3TL559F7kuBUM4d8CgMEvk6xEJlOp7OBPjt6G7z8WMWlD2rOFZLk6OYfFIUGsCOWzcQH9K2og==}
- engines: {node: '>= 6'}
- dev: true
+ dargs@8.1.0: {}
- /data-view-buffer@1.0.1:
- resolution: {integrity: sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==}
- engines: {node: '>= 0.4'}
+ data-view-buffer@1.0.1:
dependencies:
call-bind: 1.0.7
es-errors: 1.3.0
is-data-view: 1.0.1
- dev: true
- /data-view-byte-length@1.0.1:
- resolution: {integrity: sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==}
- engines: {node: '>= 0.4'}
+ data-view-byte-length@1.0.1:
dependencies:
call-bind: 1.0.7
es-errors: 1.3.0
is-data-view: 1.0.1
- dev: true
- /data-view-byte-offset@1.0.0:
- resolution: {integrity: sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==}
- engines: {node: '>= 0.4'}
+ data-view-byte-offset@1.0.0:
dependencies:
call-bind: 1.0.7
es-errors: 1.3.0
is-data-view: 1.0.1
- dev: true
- /debug@3.2.7:
- resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==}
- peerDependencies:
- supports-color: '*'
- peerDependenciesMeta:
- supports-color:
- optional: true
+ deassert@1.0.2(rollup@4.20.0):
+ dependencies:
+ '@rollup/pluginutils': 5.1.0(rollup@4.20.0)
+ acorn: 8.12.1
+ acorn-walk: 8.3.2
+ magic-string: 0.30.11
+ transitivePeerDependencies:
+ - rollup
+
+ debug@3.2.7:
dependencies:
ms: 2.1.3
- dev: true
- /debug@4.3.4:
- resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
- engines: {node: '>=6.0'}
- peerDependencies:
- supports-color: '*'
- peerDependenciesMeta:
- supports-color:
- optional: true
+ debug@4.3.6:
dependencies:
ms: 2.1.2
- dev: true
- /dedent@0.7.0:
- resolution: {integrity: sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==}
- dev: true
-
- /deep-extend@0.6.0:
- resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==}
- engines: {node: '>=4.0.0'}
- dev: true
+ dedent@0.7.0: {}
- /deep-freeze@0.0.1:
- resolution: {integrity: sha512-Z+z8HiAvsGwmjqlphnHW5oz6yWlOwu6EQfFTjmeTWlDeda3FS2yv3jhq35TX/ewmsnqB+RX2IdsIOyjJCQN5tg==}
- dev: true
+ deep-extend@0.6.0: {}
- /deep-is@0.1.4:
- resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
- dev: true
-
- /deepmerge-ts@5.1.0:
- resolution: {integrity: sha512-eS8dRJOckyo9maw9Tu5O5RUi/4inFLrnoLkBe3cPfDMx3WZioXtmOew4TXQaxq7Rhl4xjDtR7c6x8nNTxOvbFw==}
- engines: {node: '>=16.0.0'}
+ deep-is@0.1.4: {}
- /deepmerge@4.3.0:
- resolution: {integrity: sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og==}
- engines: {node: '>=0.10.0'}
- dev: true
+ deepmerge-ts@7.1.0: {}
- /defaults@1.0.4:
- resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==}
+ defaults@1.0.4:
dependencies:
clone: 1.0.4
- dev: true
- /define-data-property@1.1.4:
- resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==}
- engines: {node: '>= 0.4'}
+ define-data-property@1.1.4:
dependencies:
es-define-property: 1.0.0
es-errors: 1.3.0
gopd: 1.0.1
- dev: true
- /define-properties@1.2.1:
- resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==}
- engines: {node: '>= 0.4'}
+ define-properties@1.2.1:
dependencies:
define-data-property: 1.1.4
has-property-descriptors: 1.0.2
object-keys: 1.1.1
- dev: true
- /detect-file@1.0.0:
- resolution: {integrity: sha512-DtCOLG98P007x7wiiOmfI0fi3eIKyWiLTGJ2MDnVi/E04lWGbf+JzrRHMm0rgIIZJGtHpKpbVgLWHrv8xXpc3Q==}
- engines: {node: '>=0.10.0'}
- dev: true
+ defu@6.1.4: {}
- /detect-indent@6.1.0:
- resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==}
- engines: {node: '>=8'}
- dev: true
+ detect-file@1.0.0: {}
- /detect-indent@7.0.1:
- resolution: {integrity: sha512-Mc7QhQ8s+cLrnUfU/Ji94vG/r8M26m8f++vyres4ZoojaRDpZ1eSIh/EpzLNwlWuvzSZ3UbDFspjFvTDXe6e/g==}
- engines: {node: '>=12.20'}
- dev: true
+ detect-indent@6.1.0: {}
- /detect-newline@4.0.0:
- resolution: {integrity: sha512-1aXUEPdfGdzVPFpzGJJNgq9o81bGg1s09uxTWsqBlo9PI332uyJRQq13+LK/UN4JfxJbFdCXonUFQ9R/p7yCtw==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
- dev: true
+ detect-indent@7.0.1: {}
- /diff@4.0.2:
- resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==}
- engines: {node: '>=0.3.1'}
- dev: true
+ detect-newline@4.0.1: {}
- /dir-glob@3.0.1:
- resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
- engines: {node: '>=8'}
+ dir-glob@3.0.1:
dependencies:
path-type: 4.0.0
- dev: true
- /doctrine@2.1.0:
- resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==}
- engines: {node: '>=0.10.0'}
+ doctrine@2.1.0:
dependencies:
esutils: 2.0.3
- dev: true
- /dot-prop@5.3.0:
- resolution: {integrity: sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==}
- engines: {node: '>=8'}
+ doctrine@3.0.0:
dependencies:
- is-obj: 2.0.0
- dev: true
+ esutils: 2.0.3
- /dot-prop@6.0.1:
- resolution: {integrity: sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==}
- engines: {node: '>=10'}
+ dot-prop@5.3.0:
dependencies:
is-obj: 2.0.0
- dev: true
- /duplexer2@0.1.4:
- resolution: {integrity: sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==}
+ duplexer2@0.1.4:
dependencies:
readable-stream: 2.3.8
- dev: true
- /eastasianwidth@0.2.0:
- resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
- dev: true
+ eastasianwidth@0.2.0: {}
- /easy-table@1.2.0:
- resolution: {integrity: sha512-OFzVOv03YpvtcWGe5AayU5G2hgybsg3iqA6drU8UaoZyB9jLGMTrz9+asnLp/E+6qPh88yEI1gvyZFZ41dmgww==}
+ easy-table@1.2.0:
dependencies:
ansi-regex: 5.0.1
optionalDependencies:
wcwidth: 1.0.1
- dev: true
- /electron-to-chromium@1.4.715:
- resolution: {integrity: sha512-XzWNH4ZSa9BwVUQSDorPWAUQ5WGuYz7zJUNpNif40zFCiCl20t8zgylmreNmn26h5kiyw2lg7RfTmeMBsDklqg==}
- dev: true
+ electron-to-chromium@1.4.796: {}
- /emoji-regex@10.3.0:
- resolution: {integrity: sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw==}
- dev: true
-
- /emoji-regex@8.0.0:
- resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
- dev: true
+ emoji-regex@10.3.0: {}
- /emoji-regex@9.2.2:
- resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==}
- dev: true
+ emoji-regex@8.0.0: {}
- /emojilib@2.4.0:
- resolution: {integrity: sha512-5U0rVMU5Y2n2+ykNLQqMoqklN9ICBT/KsvC1Gz6vqHbz2AXXGkG+Pm5rMWk/8Vjrr/mY9985Hi8DYzn1F09Nyw==}
- dev: true
+ emoji-regex@9.2.2: {}
- /encode-registry@3.0.1:
- resolution: {integrity: sha512-6qOwkl1g0fv0DN3Y3ggr2EaZXN71aoAqPp3p/pVaWSBSIo+YjLOWN61Fva43oVyQNPf7kgm8lkudzlzojwE2jw==}
- engines: {node: '>=10'}
- dependencies:
- mem: 8.1.1
- dev: true
+ emojilib@2.4.0: {}
- /enhanced-resolve@5.12.0:
- resolution: {integrity: sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==}
- engines: {node: '>=10.13.0'}
+ enhanced-resolve@5.17.0:
dependencies:
graceful-fs: 4.2.11
tapable: 2.2.1
- dev: true
- /entities@4.5.0:
- resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==}
- engines: {node: '>=0.12'}
- dev: true
+ entities@4.5.0: {}
- /env-ci@11.0.0:
- resolution: {integrity: sha512-apikxMgkipkgTvMdRT9MNqWx5VLOci79F4VBd7Op/7OPjjoanjdAvn6fglMCCEf/1bAh8eOiuEVCUs4V3qP3nQ==}
- engines: {node: ^18.17 || >=20.6.1}
+ env-ci@11.0.0:
dependencies:
execa: 8.0.1
java-properties: 1.0.2
- dev: true
- /env-paths@2.2.1:
- resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==}
- engines: {node: '>=6'}
- dev: true
+ env-paths@2.2.1: {}
- /err-code@2.0.3:
- resolution: {integrity: sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==}
- dev: true
+ env-paths@3.0.0: {}
- /error-ex@1.3.2:
- resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==}
+ environment@1.1.0: {}
+
+ error-ex@1.3.2:
dependencies:
is-arrayish: 0.2.1
- dev: true
- /es-abstract@1.23.2:
- resolution: {integrity: sha512-60s3Xv2T2p1ICykc7c+DNDPLDMm9t4QxCOUU0K9JxiLjM3C1zB9YVdN7tjxrFd4+AkZ8CdX1ovUga4P2+1e+/w==}
- engines: {node: '>= 0.4'}
+ es-abstract@1.23.3:
dependencies:
array-buffer-byte-length: 1.0.1
arraybuffer.prototype.slice: 1.0.3
@@ -2848,7 +6018,7 @@ packages:
function.prototype.name: 1.1.6
get-intrinsic: 1.2.4
get-symbol-description: 1.0.2
- globalthis: 1.0.3
+ globalthis: 1.0.4
gopd: 1.0.1
has-property-descriptors: 1.0.2
has-proto: 1.0.3
@@ -2879,114 +6049,105 @@ packages:
typed-array-length: 1.0.6
unbox-primitive: 1.0.2
which-typed-array: 1.1.15
- dev: true
- /es-define-property@1.0.0:
- resolution: {integrity: sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==}
- engines: {node: '>= 0.4'}
+ es-define-property@1.0.0:
dependencies:
get-intrinsic: 1.2.4
- dev: true
- /es-errors@1.3.0:
- resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==}
- engines: {node: '>= 0.4'}
- dev: true
+ es-errors@1.3.0: {}
- /es-object-atoms@1.0.0:
- resolution: {integrity: sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==}
- engines: {node: '>= 0.4'}
+ es-module-lexer@1.5.4: {}
+
+ es-object-atoms@1.0.0:
dependencies:
es-errors: 1.3.0
- dev: true
- /es-set-tostringtag@2.0.3:
- resolution: {integrity: sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==}
- engines: {node: '>= 0.4'}
+ es-set-tostringtag@2.0.3:
dependencies:
get-intrinsic: 1.2.4
has-tostringtag: 1.0.2
hasown: 2.0.2
- dev: true
- /es-shim-unscopables@1.0.2:
- resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==}
+ es-shim-unscopables@1.0.2:
dependencies:
hasown: 2.0.2
- dev: true
- /es-to-primitive@1.2.1:
- resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==}
- engines: {node: '>= 0.4'}
+ es-to-primitive@1.2.1:
dependencies:
is-callable: 1.2.7
is-date-object: 1.0.5
is-symbol: 1.0.4
- dev: true
- /escalade@3.1.1:
- resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==}
- engines: {node: '>=6'}
- dev: true
+ esbuild@0.21.5:
+ optionalDependencies:
+ '@esbuild/aix-ppc64': 0.21.5
+ '@esbuild/android-arm': 0.21.5
+ '@esbuild/android-arm64': 0.21.5
+ '@esbuild/android-x64': 0.21.5
+ '@esbuild/darwin-arm64': 0.21.5
+ '@esbuild/darwin-x64': 0.21.5
+ '@esbuild/freebsd-arm64': 0.21.5
+ '@esbuild/freebsd-x64': 0.21.5
+ '@esbuild/linux-arm': 0.21.5
+ '@esbuild/linux-arm64': 0.21.5
+ '@esbuild/linux-ia32': 0.21.5
+ '@esbuild/linux-loong64': 0.21.5
+ '@esbuild/linux-mips64el': 0.21.5
+ '@esbuild/linux-ppc64': 0.21.5
+ '@esbuild/linux-riscv64': 0.21.5
+ '@esbuild/linux-s390x': 0.21.5
+ '@esbuild/linux-x64': 0.21.5
+ '@esbuild/netbsd-x64': 0.21.5
+ '@esbuild/openbsd-x64': 0.21.5
+ '@esbuild/sunos-x64': 0.21.5
+ '@esbuild/win32-arm64': 0.21.5
+ '@esbuild/win32-ia32': 0.21.5
+ '@esbuild/win32-x64': 0.21.5
- /escape-string-regexp@1.0.5:
- resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
- engines: {node: '>=0.8.0'}
- dev: true
+ escalade@3.1.2: {}
- /escape-string-regexp@4.0.0:
- resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
- engines: {node: '>=10'}
- dev: true
+ escape-string-regexp@1.0.5: {}
- /escape-string-regexp@5.0.0:
- resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==}
- engines: {node: '>=12'}
- dev: true
+ escape-string-regexp@4.0.0: {}
- /eslint-compat-utils@0.5.0(eslint@9.6.0):
- resolution: {integrity: sha512-dc6Y8tzEcSYZMHa+CMPLi/hyo1FzNeonbhJL7Ol0ccuKQkwopJcJBA9YL/xmMTLU1eKigXo9vj9nALElWYSowg==}
- engines: {node: '>=12'}
- peerDependencies:
- eslint: '>=6.0.0'
+ escape-string-regexp@5.0.0: {}
+
+ eslint-compat-utils@0.5.1(eslint@9.8.0):
dependencies:
- eslint: 9.6.0
- semver: 7.6.0
- dev: true
+ eslint: 9.8.0
+ semver: 7.6.3
- /eslint-config-prettier@9.1.0(eslint@9.6.0):
- resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==}
- hasBin: true
- peerDependencies:
- eslint: '>=7.0.0'
+ eslint-config-prettier@9.1.0(eslint@9.8.0):
dependencies:
- eslint: 9.6.0
- dev: true
+ eslint: 9.8.0
- /eslint-import-resolver-node@0.3.9:
- resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==}
+ eslint-flat-config-utils@0.3.0:
+ dependencies:
+ '@types/eslint': 9.6.0
+ pathe: 1.1.2
+
+ eslint-formatting-reporter@0.0.0(eslint@9.8.0):
+ dependencies:
+ eslint: 9.8.0
+ prettier-linter-helpers: 1.0.0
+
+ eslint-import-resolver-node@0.3.9:
dependencies:
debug: 3.2.7
is-core-module: 2.13.1
- resolve: 1.22.4
+ resolve: 1.22.8
transitivePeerDependencies:
- supports-color
- dev: true
- /eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.3.1)(eslint-plugin-import@2.29.1)(eslint@9.6.0):
- resolution: {integrity: sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==}
- engines: {node: ^14.18.0 || >=16.0.0}
- peerDependencies:
- eslint: '*'
- eslint-plugin-import: '*'
+ eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@8.0.0(eslint@9.8.0)(typescript@5.4.5))(eslint-plugin-import@2.29.1)(eslint@9.8.0):
dependencies:
- debug: 4.3.4
- enhanced-resolve: 5.12.0
- eslint: 9.6.0
- eslint-module-utils: 2.8.0(@typescript-eslint/parser@7.3.1)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@9.6.0)
- eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.3.1)(eslint-import-resolver-typescript@3.6.1)(eslint@9.6.0)
+ debug: 4.3.6
+ enhanced-resolve: 5.17.0
+ eslint: 9.8.0
+ eslint-module-utils: 2.8.1(@typescript-eslint/parser@8.0.0(eslint@9.8.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@8.0.0(eslint@9.8.0)(typescript@5.4.5))(eslint-plugin-import@2.29.1)(eslint@9.8.0))(eslint@9.8.0)
+ eslint-plugin-import: 2.29.1(@typescript-eslint/parser@8.0.0(eslint@9.8.0)(typescript@5.4.5))(eslint-import-resolver-typescript@3.6.1)(eslint@9.8.0)
fast-glob: 3.3.2
- get-tsconfig: 4.7.3
+ get-tsconfig: 4.7.5
is-core-module: 2.13.1
is-glob: 4.0.3
transitivePeerDependencies:
@@ -2994,103 +6155,90 @@ packages:
- eslint-import-resolver-node
- eslint-import-resolver-webpack
- supports-color
- dev: true
- /eslint-module-utils@2.8.0(@typescript-eslint/parser@7.3.1)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@9.6.0):
- resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==}
- engines: {node: '>=4'}
- peerDependencies:
- '@typescript-eslint/parser': '*'
- eslint: '*'
- eslint-import-resolver-node: '*'
- eslint-import-resolver-typescript: '*'
- eslint-import-resolver-webpack: '*'
- peerDependenciesMeta:
- '@typescript-eslint/parser':
- optional: true
- eslint:
- optional: true
- eslint-import-resolver-node:
- optional: true
- eslint-import-resolver-typescript:
- optional: true
- eslint-import-resolver-webpack:
- optional: true
+ eslint-merge-processors@0.1.0(eslint@9.8.0):
+ dependencies:
+ eslint: 9.8.0
+
+ eslint-module-utils@2.8.1(@typescript-eslint/parser@8.0.0(eslint@9.8.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@8.0.0(eslint@9.8.0)(typescript@5.4.5))(eslint-plugin-import@2.29.1)(eslint@9.8.0))(eslint@9.8.0):
dependencies:
- '@typescript-eslint/parser': 7.3.1(eslint@9.6.0)(typescript@5.4.3)
debug: 3.2.7
- eslint: 9.6.0
+ optionalDependencies:
+ '@typescript-eslint/parser': 8.0.0(eslint@9.8.0)(typescript@5.4.5)
+ eslint: 9.8.0
eslint-import-resolver-node: 0.3.9
- eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@7.3.1)(eslint-plugin-import@2.29.1)(eslint@9.6.0)
+ eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@8.0.0(eslint@9.8.0)(typescript@5.4.5))(eslint-plugin-import@2.29.1)(eslint@9.8.0)
transitivePeerDependencies:
- supports-color
- dev: true
- /eslint-plugin-es-x@7.6.0(eslint@9.6.0):
- resolution: {integrity: sha512-I0AmeNgevgaTR7y2lrVCJmGYF0rjoznpDvqV/kIkZSZbZ8Rw3eu4cGlvBBULScfkSOCzqKbff5LR4CNrV7mZHA==}
- engines: {node: ^14.18.0 || >=16.0.0}
- peerDependencies:
- eslint: '>=8'
+ eslint-parser-plain@0.1.0: {}
+
+ eslint-plugin-es-x@7.7.0(eslint@9.8.0):
dependencies:
- '@eslint-community/eslint-utils': 4.4.0(eslint@9.6.0)
- '@eslint-community/regexpp': 4.6.2
- eslint: 9.6.0
- eslint-compat-utils: 0.5.0(eslint@9.6.0)
- dev: true
+ '@eslint-community/eslint-utils': 4.4.0(eslint@9.8.0)
+ '@eslint-community/regexpp': 4.11.0
+ eslint: 9.8.0
+ eslint-compat-utils: 0.5.1(eslint@9.8.0)
- /eslint-plugin-eslint-comments@3.2.0(eslint@9.6.0):
- resolution: {integrity: sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==}
- engines: {node: '>=6.5.0'}
- peerDependencies:
- eslint: '>=4.19.1'
+ eslint-plugin-eslint-comments@3.2.0(eslint@9.8.0):
dependencies:
escape-string-regexp: 1.0.5
- eslint: 9.6.0
+ eslint: 9.8.0
ignore: 5.3.1
- dev: true
- /eslint-plugin-functional@6.3.0(eslint@9.6.0)(typescript@5.4.3):
- resolution: {integrity: sha512-QuODFnj0kaQAIicniMQaV9t9aCkwJo6Ibx/5pDVWgluFZKwl9jfUZL09jF5S0E9A0eL45hq7sCybAb7FEnIorQ==}
- engines: {node: '>=16.10.0'}
- peerDependencies:
- eslint: ^8.0.0
- typescript: '>=4.3.5'
- peerDependenciesMeta:
- typescript:
- optional: true
+ eslint-plugin-format@0.1.2(eslint@9.8.0):
dependencies:
- '@typescript-eslint/utils': 7.3.1(eslint@9.6.0)(typescript@5.4.3)
- deepmerge-ts: 5.1.0
- escape-string-regexp: 4.0.0
- eslint: 9.6.0
- is-immutable-type: 2.0.4(eslint@9.6.0)(typescript@5.4.3)
- semver: 7.6.0
- ts-api-utils: 1.3.0(typescript@5.4.3)
- typescript: 5.4.3
+ '@dprint/formatter': 0.3.0
+ '@dprint/markdown': 0.17.1
+ '@dprint/toml': 0.6.2
+ eslint: 9.8.0
+ eslint-formatting-reporter: 0.0.0(eslint@9.8.0)
+ eslint-parser-plain: 0.1.0
+ prettier: 3.3.3
+ synckit: 0.9.1
+
+ eslint-plugin-functional@7.0.0-rc.1(eslint@9.8.0)(typescript@5.4.5):
+ dependencies:
+ '@typescript-eslint/utils': 8.0.0(eslint@9.8.0)(typescript@5.4.5)
+ deepmerge-ts: 7.1.0
+ escape-string-regexp: 5.0.0
+ eslint: 9.8.0
+ is-immutable-type: 4.0.0(eslint@9.8.0)(typescript@5.4.5)
+ ts-api-utils: 1.3.0(typescript@5.4.5)
+ ts-declaration-location: 1.0.4(typescript@5.4.5)
+ optionalDependencies:
+ typescript: 5.4.5
transitivePeerDependencies:
- supports-color
- dev: true
- /eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.3.1)(eslint-import-resolver-typescript@3.6.1)(eslint@9.6.0):
- resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==}
- engines: {node: '>=4'}
- peerDependencies:
- '@typescript-eslint/parser': '*'
- eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8
- peerDependenciesMeta:
- '@typescript-eslint/parser':
- optional: true
+ eslint-plugin-import-x@3.1.0(eslint@9.8.0)(typescript@5.4.5):
+ dependencies:
+ '@typescript-eslint/utils': 7.18.0(eslint@9.8.0)(typescript@5.4.5)
+ debug: 4.3.6
+ doctrine: 3.0.0
+ eslint: 9.8.0
+ eslint-import-resolver-node: 0.3.9
+ get-tsconfig: 4.7.5
+ is-glob: 4.0.3
+ minimatch: 9.0.5
+ semver: 7.6.3
+ stable-hash: 0.0.4
+ tslib: 2.6.3
+ transitivePeerDependencies:
+ - supports-color
+ - typescript
+
+ eslint-plugin-import@2.29.1(@typescript-eslint/parser@8.0.0(eslint@9.8.0)(typescript@5.4.5))(eslint-import-resolver-typescript@3.6.1)(eslint@9.8.0):
dependencies:
- '@typescript-eslint/parser': 7.3.1(eslint@9.6.0)(typescript@5.4.3)
array-includes: 3.1.8
array.prototype.findlastindex: 1.2.5
array.prototype.flat: 1.3.2
array.prototype.flatmap: 1.3.2
debug: 3.2.7
doctrine: 2.1.0
- eslint: 9.6.0
+ eslint: 9.8.0
eslint-import-resolver-node: 0.3.9
- eslint-module-utils: 2.8.0(@typescript-eslint/parser@7.3.1)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@9.6.0)
+ eslint-module-utils: 2.8.1(@typescript-eslint/parser@8.0.0(eslint@9.8.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@8.0.0(eslint@9.8.0)(typescript@5.4.5))(eslint-plugin-import@2.29.1)(eslint@9.8.0))(eslint@9.8.0)
hasown: 2.0.2
is-core-module: 2.13.1
is-glob: 4.0.3
@@ -3100,125 +6248,115 @@ packages:
object.values: 1.2.0
semver: 6.3.1
tsconfig-paths: 3.15.0
+ optionalDependencies:
+ '@typescript-eslint/parser': 8.0.0(eslint@9.8.0)(typescript@5.4.5)
transitivePeerDependencies:
- eslint-import-resolver-typescript
- eslint-import-resolver-webpack
- supports-color
- dev: true
- /eslint-plugin-jsdoc@48.2.1(eslint@9.6.0):
- resolution: {integrity: sha512-iUvbcyDZSO/9xSuRv2HQBw++8VkV/pt3UWtX9cpPH0l7GKPq78QC/6+PmyQHHvNZaTjAce6QVciEbnc6J/zH5g==}
- engines: {node: '>=18'}
- peerDependencies:
- eslint: ^7.0.0 || ^8.0.0 || ^9.0.0
+ eslint-plugin-jsdoc@48.11.0(eslint@9.8.0):
dependencies:
- '@es-joy/jsdoccomment': 0.42.0
+ '@es-joy/jsdoccomment': 0.46.0
are-docs-informative: 0.0.2
comment-parser: 1.4.1
- debug: 4.3.4
+ debug: 4.3.6
escape-string-regexp: 4.0.0
- eslint: 9.6.0
- esquery: 1.5.0
- is-builtin-module: 3.2.1
- semver: 7.6.0
+ eslint: 9.8.0
+ espree: 10.1.0
+ esquery: 1.6.0
+ parse-imports: 2.1.1
+ semver: 7.6.3
spdx-expression-parse: 4.0.0
+ synckit: 0.9.1
transitivePeerDependencies:
- supports-color
- dev: true
- /eslint-plugin-markdown@3.0.1(eslint@9.6.0):
- resolution: {integrity: sha512-8rqoc148DWdGdmYF6WSQFT3uQ6PO7zXYgeBpHAOAakX/zpq+NvFYbDA/H7PYzHajwtmaOzAwfxyl++x0g1/N9A==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
- peerDependencies:
- eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
+ eslint-plugin-jsonc@2.16.0(eslint@9.8.0):
+ dependencies:
+ '@eslint-community/eslint-utils': 4.4.0(eslint@9.8.0)
+ eslint: 9.8.0
+ eslint-compat-utils: 0.5.1(eslint@9.8.0)
+ espree: 9.6.1
+ graphemer: 1.4.0
+ jsonc-eslint-parser: 2.4.0
+ natural-compare: 1.4.0
+ synckit: 0.6.2
+
+ eslint-plugin-markdown@5.1.0(eslint@9.8.0):
dependencies:
- eslint: 9.6.0
+ eslint: 9.8.0
mdast-util-from-markdown: 0.8.5
transitivePeerDependencies:
- supports-color
- dev: true
- /eslint-plugin-n@16.6.2(eslint@9.6.0):
- resolution: {integrity: sha512-6TyDmZ1HXoFQXnhCTUjVFULReoBPOAjpuiKELMkeP40yffI/1ZRO+d9ug/VC6fqISo2WkuIBk3cvuRPALaWlOQ==}
- engines: {node: '>=16.0.0'}
- peerDependencies:
- eslint: '>=7.0.0'
+ eslint-plugin-n@17.10.2(eslint@9.8.0):
dependencies:
- '@eslint-community/eslint-utils': 4.4.0(eslint@9.6.0)
- builtins: 5.0.1
- eslint: 9.6.0
- eslint-plugin-es-x: 7.6.0(eslint@9.6.0)
- get-tsconfig: 4.7.3
- globals: 13.24.0
+ '@eslint-community/eslint-utils': 4.4.0(eslint@9.8.0)
+ enhanced-resolve: 5.17.0
+ eslint: 9.8.0
+ eslint-plugin-es-x: 7.7.0(eslint@9.8.0)
+ get-tsconfig: 4.7.5
+ globals: 15.9.0
ignore: 5.3.1
- is-builtin-module: 3.2.1
- is-core-module: 2.13.1
- minimatch: 3.1.2
- resolve: 1.22.4
- semver: 7.6.0
- dev: true
+ minimatch: 9.0.5
+ semver: 7.6.3
- /eslint-plugin-optimize-regex@1.2.1:
- resolution: {integrity: sha512-fUaU7Tj1G/KSTDTABJw4Wp427Rl7RPl9ViYTu1Jrv36fJw4DFhd4elPdXiuYtdPsNsvzn9GcVlKEssGIVjw0UQ==}
- engines: {node: '>=10'}
+ eslint-plugin-no-only-tests@3.1.0: {}
+
+ eslint-plugin-optimize-regex@1.2.1:
dependencies:
regexp-tree: 0.1.27
- dev: true
- /eslint-plugin-prettier@5.1.3(@types/eslint@8.56.6)(eslint-config-prettier@9.1.0)(eslint@9.6.0)(prettier@3.2.5):
- resolution: {integrity: sha512-C9GCVAs4Eq7ZC/XFQHITLiHJxQngdtraXaM+LoUFoFp/lHNl2Zn8f3WQbe9HvTBBQ9YnKFB0/2Ajdqwo5D1EAw==}
- engines: {node: ^14.18.0 || >=16.0.0}
- peerDependencies:
- '@types/eslint': '>=8.0.0'
- eslint: '>=8.0.0'
- eslint-config-prettier: '*'
- prettier: '>=3.0.0'
- peerDependenciesMeta:
- '@types/eslint':
- optional: true
- eslint-config-prettier:
- optional: true
+ eslint-plugin-prettier@5.2.1(@types/eslint@9.6.0)(eslint-config-prettier@9.1.0(eslint@9.8.0))(eslint@9.8.0)(prettier@3.3.3):
dependencies:
- '@types/eslint': 8.56.6
- eslint: 9.6.0
- eslint-config-prettier: 9.1.0(eslint@9.6.0)
- prettier: 3.2.5
+ eslint: 9.8.0
+ prettier: 3.3.3
prettier-linter-helpers: 1.0.0
- synckit: 0.8.8
- dev: true
+ synckit: 0.9.1
+ optionalDependencies:
+ '@types/eslint': 9.6.0
+ eslint-config-prettier: 9.1.0(eslint@9.8.0)
- /eslint-plugin-promise@6.1.1(eslint@9.6.0):
- resolution: {integrity: sha512-tjqWDwVZQo7UIPMeDReOpUgHCmCiH+ePnVT+5zVapL0uuHnegBUs2smM13CzOs2Xb5+MHMRFTs9v24yjba4Oig==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
- peerDependencies:
- eslint: ^7.0.0 || ^8.0.0
+ eslint-plugin-promise@7.0.0(eslint@9.8.0):
dependencies:
- eslint: 9.6.0
- dev: true
+ eslint: 9.8.0
- /eslint-plugin-sonarjs@0.24.0(eslint@9.6.0):
- resolution: {integrity: sha512-87zp50mbbNrSTuoEOebdRQBPa0mdejA5UEjyuScyIw8hEpEjfWP89Qhkq5xVZfVyVSRQKZc9alVm7yRKQvvUmg==}
- engines: {node: '>=16'}
- peerDependencies:
- eslint: ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0
+ eslint-plugin-regexp@2.6.0(eslint@9.8.0):
dependencies:
- eslint: 9.6.0
- dev: true
+ '@eslint-community/eslint-utils': 4.4.0(eslint@9.8.0)
+ '@eslint-community/regexpp': 4.11.0
+ comment-parser: 1.4.1
+ eslint: 9.8.0
+ jsdoc-type-pratt-parser: 4.0.0
+ refa: 0.12.1
+ regexp-ast-analysis: 0.7.1
+ scslre: 0.3.0
- /eslint-plugin-unicorn@51.0.1(eslint@9.6.0):
- resolution: {integrity: sha512-MuR/+9VuB0fydoI0nIn2RDA5WISRn4AsJyNSaNKLVwie9/ONvQhxOBbkfSICBPnzKrB77Fh6CZZXjgTt/4Latw==}
- engines: {node: '>=16'}
- peerDependencies:
- eslint: '>=8.56.0'
+ eslint-plugin-sonarjs@1.0.4(eslint@9.8.0):
+ dependencies:
+ eslint: 9.8.0
+
+ eslint-plugin-toml@0.11.1(eslint@9.8.0):
+ dependencies:
+ debug: 4.3.6
+ eslint: 9.8.0
+ eslint-compat-utils: 0.5.1(eslint@9.8.0)
+ lodash: 4.17.21
+ toml-eslint-parser: 0.10.0
+ transitivePeerDependencies:
+ - supports-color
+
+ eslint-plugin-unicorn@55.0.0(eslint@9.8.0):
dependencies:
- '@babel/helper-validator-identifier': 7.22.20
- '@eslint-community/eslint-utils': 4.4.0(eslint@9.6.0)
- '@eslint/eslintrc': 2.1.4
+ '@babel/helper-validator-identifier': 7.24.7
+ '@eslint-community/eslint-utils': 4.4.0(eslint@9.8.0)
ci-info: 4.0.0
clean-regexp: 1.0.0
- core-js-compat: 3.36.1
- eslint: 9.6.0
- esquery: 1.5.0
+ core-js-compat: 3.37.1
+ eslint: 9.8.0
+ esquery: 1.6.0
+ globals: 15.9.0
indent-string: 4.0.0
is-builtin-module: 3.2.1
jsesc: 3.0.2
@@ -3226,52 +6364,89 @@ packages:
read-pkg-up: 7.0.1
regexp-tree: 0.1.27
regjsparser: 0.10.0
- semver: 7.6.0
+ semver: 7.6.3
strip-indent: 3.0.0
+
+ eslint-plugin-vitest@0.5.4(@typescript-eslint/eslint-plugin@8.0.0(@typescript-eslint/parser@8.0.0(eslint@9.8.0)(typescript@5.4.5))(eslint@9.8.0)(typescript@5.4.5))(eslint@9.8.0)(typescript@5.4.5):
+ dependencies:
+ '@typescript-eslint/utils': 7.18.0(eslint@9.8.0)(typescript@5.4.5)
+ eslint: 9.8.0
+ optionalDependencies:
+ '@typescript-eslint/eslint-plugin': 8.0.0(@typescript-eslint/parser@8.0.0(eslint@9.8.0)(typescript@5.4.5))(eslint@9.8.0)(typescript@5.4.5)
transitivePeerDependencies:
- supports-color
- dev: true
+ - typescript
- /eslint-scope@8.0.1:
- resolution: {integrity: sha512-pL8XjgP4ZOmmwfFE8mEhSxA7ZY4C+LWyqjQ3o4yWkkmD0qcMT9kkW3zWHOczhWcjTSgqycYAgwSlXvZltv65og==}
- engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ eslint-plugin-vue@9.27.0(eslint@9.8.0):
+ dependencies:
+ '@eslint-community/eslint-utils': 4.4.0(eslint@9.8.0)
+ eslint: 9.8.0
+ globals: 13.24.0
+ natural-compare: 1.4.0
+ nth-check: 2.1.1
+ postcss-selector-parser: 6.1.0
+ semver: 7.6.3
+ vue-eslint-parser: 9.4.3(eslint@9.8.0)
+ xml-name-validator: 4.0.0
+ transitivePeerDependencies:
+ - supports-color
+
+ eslint-plugin-yml@1.14.0(eslint@9.8.0):
+ dependencies:
+ debug: 4.3.6
+ eslint: 9.8.0
+ eslint-compat-utils: 0.5.1(eslint@9.8.0)
+ lodash: 4.17.21
+ natural-compare: 1.4.0
+ yaml-eslint-parser: 1.2.3
+ transitivePeerDependencies:
+ - supports-color
+
+ eslint-processor-vue-blocks@0.1.2(@vue/compiler-sfc@3.4.27)(eslint@9.8.0):
+ dependencies:
+ '@vue/compiler-sfc': 3.4.27
+ eslint: 9.8.0
+
+ eslint-scope@7.2.2:
dependencies:
esrecurse: 4.3.0
estraverse: 5.3.0
- dev: true
- /eslint-visitor-keys@3.4.3:
- resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
- dev: true
+ eslint-scope@8.0.2:
+ dependencies:
+ esrecurse: 4.3.0
+ estraverse: 5.3.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}
- dev: true
+ eslint-typegen@0.3.0(eslint@9.8.0):
+ dependencies:
+ '@types/eslint': 9.6.0
+ eslint: 9.8.0
+ json-schema-to-typescript-lite: 14.0.1
+ ohash: 1.1.3
- /eslint@9.6.0:
- resolution: {integrity: sha512-ElQkdLMEEqQNM9Njff+2Y4q2afHk7JpkPvrd7Xh7xefwgQynqPxwf55J7di9+MEibWUGdNjFF9ITG9Pck5M84w==}
- engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- hasBin: true
+ eslint-visitor-keys@3.4.3: {}
+
+ eslint-visitor-keys@4.0.0: {}
+
+ eslint@9.8.0:
dependencies:
- '@eslint-community/eslint-utils': 4.4.0(eslint@9.6.0)
- '@eslint-community/regexpp': 4.6.2
- '@eslint/config-array': 0.17.0
+ '@eslint-community/eslint-utils': 4.4.0(eslint@9.8.0)
+ '@eslint-community/regexpp': 4.11.0
+ '@eslint/config-array': 0.17.1
'@eslint/eslintrc': 3.1.0
- '@eslint/js': 9.6.0
+ '@eslint/js': 9.8.0
'@humanwhocodes/module-importer': 1.0.1
'@humanwhocodes/retry': 0.3.0
'@nodelib/fs.walk': 1.2.8
ajv: 6.12.6
chalk: 4.1.2
cross-spawn: 7.0.3
- debug: 4.3.4
+ debug: 4.3.6
escape-string-regexp: 4.0.0
- eslint-scope: 8.0.1
+ eslint-scope: 8.0.2
eslint-visitor-keys: 4.0.0
espree: 10.1.0
- esquery: 1.5.0
+ esquery: 1.6.0
esutils: 2.0.3
fast-deep-equal: 3.1.3
file-entry-cache: 8.0.0
@@ -3286,72 +6461,43 @@ packages:
lodash.merge: 4.6.2
minimatch: 3.1.2
natural-compare: 1.4.0
- optionator: 0.9.3
+ optionator: 0.9.4
strip-ansi: 6.0.1
text-table: 0.2.0
transitivePeerDependencies:
- supports-color
- dev: 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.1.0:
dependencies:
- acorn: 8.12.0
- acorn-jsx: 5.3.2(acorn@8.12.0)
+ acorn: 8.12.1
+ acorn-jsx: 5.3.2(acorn@8.12.1)
eslint-visitor-keys: 4.0.0
- dev: true
- /espree@9.6.1:
- resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ espree@9.6.1:
dependencies:
- acorn: 8.12.0
- acorn-jsx: 5.3.2(acorn@8.12.0)
+ acorn: 8.12.1
+ acorn-jsx: 5.3.2(acorn@8.12.1)
eslint-visitor-keys: 3.4.3
- dev: true
- /esprima@4.0.1:
- resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==}
- engines: {node: '>=4'}
- hasBin: true
- dev: true
+ esprima@4.0.1: {}
- /esquery@1.5.0:
- resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==}
- engines: {node: '>=0.10'}
+ esquery@1.6.0:
dependencies:
estraverse: 5.3.0
- dev: true
- /esrecurse@4.3.0:
- resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==}
- engines: {node: '>=4.0'}
+ esrecurse@4.3.0:
dependencies:
estraverse: 5.3.0
- dev: true
- /estraverse@5.3.0:
- resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
- engines: {node: '>=4.0'}
- dev: true
+ estraverse@5.3.0: {}
- /estree-walker@2.0.2:
- resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
- dev: true
+ estree-walker@2.0.2: {}
- /esutils@2.0.3:
- resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
- engines: {node: '>=0.10.0'}
- dev: true
+ esutils@2.0.3: {}
- /eventemitter3@5.0.1:
- resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==}
- dev: true
+ eventemitter3@5.0.1: {}
- /execa@5.1.1:
- resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==}
- engines: {node: '>=10'}
+ execa@5.1.1:
dependencies:
cross-spawn: 7.0.3
get-stream: 6.0.1
@@ -3362,476 +6508,308 @@ packages:
onetime: 5.1.2
signal-exit: 3.0.7
strip-final-newline: 2.0.0
- dev: true
- /execa@8.0.1:
- resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==}
- engines: {node: '>=16.17'}
+ execa@8.0.1:
dependencies:
cross-spawn: 7.0.3
get-stream: 8.0.1
human-signals: 5.0.0
is-stream: 3.0.0
merge-stream: 2.0.0
- npm-run-path: 5.1.0
+ npm-run-path: 5.3.0
onetime: 6.0.0
signal-exit: 4.1.0
strip-final-newline: 3.0.0
- dev: true
- /expand-tilde@2.0.2:
- resolution: {integrity: sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw==}
- engines: {node: '>=0.10.0'}
+ execa@9.2.0:
+ dependencies:
+ '@sindresorhus/merge-streams': 4.0.0
+ cross-spawn: 7.0.3
+ figures: 6.1.0
+ get-stream: 9.0.1
+ human-signals: 7.0.0
+ is-plain-obj: 4.1.0
+ is-stream: 4.0.1
+ npm-run-path: 5.3.0
+ pretty-ms: 9.0.0
+ signal-exit: 4.1.0
+ strip-final-newline: 4.0.0
+ yoctocolors: 2.0.2
+
+ expand-tilde@2.0.2:
dependencies:
homedir-polyfill: 1.0.3
- dev: true
- /external-editor@3.1.0:
- resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==}
- engines: {node: '>=4'}
+ external-editor@3.1.0:
dependencies:
chardet: 0.7.0
iconv-lite: 0.4.24
tmp: 0.0.33
- dev: true
- /fast-deep-equal@3.1.3:
- resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
- dev: true
+ fast-deep-equal@3.1.3: {}
- /fast-diff@1.2.0:
- resolution: {integrity: sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==}
- dev: true
+ fast-diff@1.3.0: {}
- /fast-equals@5.0.1:
- resolution: {integrity: sha512-WF1Wi8PwwSY7/6Kx0vKXtw8RwuSGoM1bvDaJbu7MxDlR1vovZjIAKrnzyrThgAjm6JDTu0fVgWXDlMGspodfoQ==}
- engines: {node: '>=6.0.0'}
- dev: true
+ fast-equals@5.0.1: {}
- /fast-glob@3.3.2:
- resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==}
- engines: {node: '>=8.6.0'}
+ fast-glob@3.3.2:
dependencies:
'@nodelib/fs.stat': 2.0.5
'@nodelib/fs.walk': 1.2.8
glob-parent: 5.1.2
merge2: 1.4.1
- micromatch: 4.0.5
- dev: true
-
- /fast-json-stable-stringify@2.1.0:
- resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==}
- dev: true
+ micromatch: 4.0.7
- /fast-levenshtein@2.0.6:
- resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==}
- dev: true
+ fast-json-stable-stringify@2.1.0: {}
- /fast-safe-stringify@2.1.1:
- resolution: {integrity: sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==}
- dev: true
+ fast-levenshtein@2.0.6: {}
- /fastq@1.15.0:
- resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==}
+ fastq@1.17.1:
dependencies:
reusify: 1.0.4
- dev: true
-
- /fetch-blob@2.1.2:
- resolution: {integrity: sha512-YKqtUDwqLyfyMnmbw8XD6Q8j9i/HggKtPEI+pZ1+8bvheBu78biSmNaXWusx1TauGqtUUGx/cBb1mKdq2rLYow==}
- engines: {node: ^10.17.0 || >=12.3.0}
- peerDependencies:
- domexception: '*'
- peerDependenciesMeta:
- domexception:
- optional: true
- dev: true
- /figures@2.0.0:
- resolution: {integrity: sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA==}
- engines: {node: '>=4'}
+ figures@2.0.0:
dependencies:
escape-string-regexp: 1.0.5
- dev: true
- /figures@3.2.0:
- resolution: {integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==}
- engines: {node: '>=8'}
+ figures@3.2.0:
dependencies:
escape-string-regexp: 1.0.5
- dev: true
- /figures@6.1.0:
- resolution: {integrity: sha512-d+l3qxjSesT4V7v2fh+QnmFnUWv9lSpjarhShNTgBOfA0ttejbQUAlHLitbjkoRiDulW0OPoQPYIGhIC8ohejg==}
- engines: {node: '>=18'}
+ figures@6.1.0:
dependencies:
is-unicode-supported: 2.0.0
- dev: true
- /file-entry-cache@8.0.0:
- resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==}
- engines: {node: '>=16.0.0'}
+ file-entry-cache@8.0.0:
dependencies:
flat-cache: 4.0.1
- dev: true
- /fill-range@7.0.1:
- resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==}
- engines: {node: '>=8'}
+ file-entry-cache@9.0.0:
dependencies:
- to-regex-range: 5.0.1
- dev: true
+ flat-cache: 5.0.0
- /filter-iterator@0.0.1:
- resolution: {integrity: sha512-v4lhL7Qa8XpbW3LN46CEnmhGk3eHZwxfNl5at20aEkreesht4YKb/Ba3BUIbnPhAC/r3dmu7ABaGk6MAvh2alA==}
- dev: true
-
- /filter-obj@1.1.0:
- resolution: {integrity: sha512-8rXg1ZnX7xzy2NGDVkBVaAy+lSlPNwad13BtgSlLuxfIslyt5Vg64U7tFcCt4WS1R0hvtnQybT/IyCkGZ3DpXQ==}
- engines: {node: '>=0.10.0'}
- dev: true
+ fill-range@7.1.1:
+ dependencies:
+ to-regex-range: 5.0.1
- /find-node-modules@2.1.3:
- resolution: {integrity: sha512-UC2I2+nx1ZuOBclWVNdcnbDR5dlrOdVb7xNjmT/lHE+LsgztWks3dG7boJ37yTS/venXw84B/mAW9uHVoC5QRg==}
+ find-node-modules@2.1.3:
dependencies:
findup-sync: 4.0.0
merge: 2.1.1
- dev: true
- /find-root@1.1.0:
- resolution: {integrity: sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==}
- dev: true
+ find-root@1.1.0: {}
- /find-up-simple@1.0.0:
- resolution: {integrity: sha512-q7Us7kcjj2VMePAa02hDAF6d+MzsdsAWEwYyOpwUtlerRBkOEPBCRZrAV4XfcSN8fHAgaD0hP7miwoay6DCprw==}
- engines: {node: '>=18'}
- dev: true
+ find-up-simple@1.0.0: {}
- /find-up@2.1.0:
- resolution: {integrity: sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==}
- engines: {node: '>=4'}
+ find-up@2.1.0:
dependencies:
locate-path: 2.0.0
- dev: true
- /find-up@4.1.0:
- resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==}
- engines: {node: '>=8'}
+ find-up@4.1.0:
dependencies:
locate-path: 5.0.0
path-exists: 4.0.0
- dev: true
- /find-up@5.0.0:
- resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
- engines: {node: '>=10'}
+ find-up@5.0.0:
dependencies:
locate-path: 6.0.0
path-exists: 4.0.0
- dev: true
- /find-up@7.0.0:
- resolution: {integrity: sha512-YyZM99iHrqLKjmt4LJDj58KI+fYyufRLBSYcqycxf//KpBk9FoewoGX0450m9nB44qrZnovzC2oeP5hUibxc/g==}
- engines: {node: '>=18'}
+ find-up@7.0.0:
dependencies:
locate-path: 7.2.0
path-exists: 5.0.0
unicorn-magic: 0.1.0
- dev: true
- /find-versions@5.1.0:
- resolution: {integrity: sha512-+iwzCJ7C5v5KgcBuueqVoNiHVoQpwiUK5XFLjf0affFTep+Wcw93tPvmb8tqujDNmzhBDPddnWV/qgWSXgq+Hg==}
- engines: {node: '>=12'}
+ find-versions@6.0.0:
dependencies:
semver-regex: 4.0.5
- dev: true
+ super-regex: 1.0.0
- /findup-sync@4.0.0:
- resolution: {integrity: sha512-6jvvn/12IC4quLBL1KNokxC7wWTvYncaVUYSoxWw7YykPLuRrnv4qdHcSOywOI5RpkOVGeQRtWM8/q+G6W6qfQ==}
- engines: {node: '>= 8'}
+ findup-sync@4.0.0:
dependencies:
detect-file: 1.0.0
is-glob: 4.0.3
- micromatch: 4.0.5
+ micromatch: 4.0.7
resolve-dir: 1.0.1
- dev: true
- /flat-cache@4.0.1:
- resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==}
- engines: {node: '>=16'}
+ flat-cache@4.0.1:
dependencies:
flatted: 3.3.1
keyv: 4.5.4
- dev: true
- /flatted@3.3.1:
- resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==}
- dev: true
+ flat-cache@5.0.0:
+ dependencies:
+ flatted: 3.3.1
+ keyv: 4.5.4
- /for-each@0.3.3:
- resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==}
+ flatted@3.3.1: {}
+
+ for-each@0.3.3:
dependencies:
is-callable: 1.2.7
- dev: true
- /foreground-child@3.1.1:
- resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==}
- engines: {node: '>=14'}
+ foreground-child@3.1.1:
dependencies:
cross-spawn: 7.0.3
signal-exit: 4.1.0
- dev: true
- /from2@2.3.0:
- resolution: {integrity: sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==}
+ from2@2.3.0:
dependencies:
inherits: 2.0.4
- readable-stream: 2.3.8
- dev: true
-
- /fs-extra@10.1.0:
- resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==}
- engines: {node: '>=12'}
- dependencies:
- graceful-fs: 4.2.11
- jsonfile: 6.1.0
- universalify: 2.0.0
- dev: true
+ readable-stream: 2.3.8
- /fs-extra@11.1.0:
- resolution: {integrity: sha512-0rcTq621PD5jM/e0a3EJoGC/1TC5ZBCERW82LQuwfGnCa1V8w7dpYH1yNu+SLb6E5dkeCBzKEyLGlFrnr+dUyw==}
- engines: {node: '>=14.14'}
+ fs-extra@11.2.0:
dependencies:
graceful-fs: 4.2.11
jsonfile: 6.1.0
- universalify: 2.0.0
- dev: true
+ universalify: 2.0.1
- /fs-extra@9.1.0:
- resolution: {integrity: sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==}
- engines: {node: '>=10'}
+ fs-extra@9.1.0:
dependencies:
at-least-node: 1.0.0
graceful-fs: 4.2.11
jsonfile: 6.1.0
- universalify: 2.0.0
- dev: true
+ universalify: 2.0.1
- /fs.realpath@1.0.0:
- resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
- dev: true
+ fs.realpath@1.0.0: {}
- /fsevents@2.3.2:
- resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==}
- engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
- os: [darwin]
- requiresBuild: true
- dev: true
+ fsevents@2.3.3:
optional: true
- /function-bind@1.1.2:
- resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==}
- dev: true
+ function-bind@1.1.2: {}
- /function.prototype.name@1.1.6:
- resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==}
- engines: {node: '>= 0.4'}
+ function-timeout@1.0.2: {}
+
+ function.prototype.name@1.1.6:
dependencies:
call-bind: 1.0.7
define-properties: 1.2.1
- es-abstract: 1.23.2
+ es-abstract: 1.23.3
functions-have-names: 1.2.3
- dev: true
- /functions-have-names@1.2.3:
- resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==}
- dev: true
+ functions-have-names@1.2.3: {}
- /gensequence@7.0.0:
- resolution: {integrity: sha512-47Frx13aZh01afHJTB3zTtKIlFI6vWY+MYCN9Qpew6i52rfKjnhCF/l1YlC8UmEMvvntZZ6z4PiCcmyuedR2aQ==}
- engines: {node: '>=18'}
- dev: true
+ gensequence@7.0.0: {}
- /get-caller-file@2.0.5:
- resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==}
- engines: {node: 6.* || 8.* || >= 10.*}
- dev: true
+ get-caller-file@2.0.5: {}
- /get-east-asian-width@1.2.0:
- resolution: {integrity: sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA==}
- engines: {node: '>=18'}
- dev: true
+ get-east-asian-width@1.2.0: {}
- /get-intrinsic@1.2.4:
- resolution: {integrity: sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==}
- engines: {node: '>= 0.4'}
+ get-intrinsic@1.2.4:
dependencies:
es-errors: 1.3.0
function-bind: 1.1.2
has-proto: 1.0.3
has-symbols: 1.0.3
hasown: 2.0.2
- dev: true
- /get-stdin@9.0.0:
- resolution: {integrity: sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==}
- engines: {node: '>=12'}
- dev: true
+ get-stdin@9.0.0: {}
- /get-stream@6.0.1:
- resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==}
- engines: {node: '>=10'}
- dev: true
+ get-stream@6.0.1: {}
- /get-stream@7.0.0:
- resolution: {integrity: sha512-ql6FW5b8tgMYvI4UaoxG3EQN3VyZ6VeQpxNBGg5BZ4xD4u+HJeprzhMMA4OCBEGQgSR+m87pstWMpiVW64W8Fw==}
- engines: {node: '>=16'}
- dev: true
+ get-stream@7.0.1: {}
- /get-stream@8.0.1:
- resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==}
- engines: {node: '>=16'}
- dev: true
+ get-stream@8.0.1: {}
- /get-symbol-description@1.0.2:
- resolution: {integrity: sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==}
- engines: {node: '>= 0.4'}
+ get-stream@9.0.1:
+ dependencies:
+ '@sec-ant/readable-stream': 0.4.1
+ is-stream: 4.0.1
+
+ get-symbol-description@1.0.2:
dependencies:
call-bind: 1.0.7
es-errors: 1.3.0
get-intrinsic: 1.2.4
- dev: true
- /get-tsconfig@4.7.3:
- resolution: {integrity: sha512-ZvkrzoUA0PQZM6fy6+/Hce561s+faD1rsNwhnO5FelNjyy7EMGJ3Rz1AQ8GYDWjhRs/7dBLOEJvhK8MiEJOAFg==}
+ get-tsconfig@4.7.5:
dependencies:
resolve-pkg-maps: 1.0.0
- dev: true
- /git-hooks-list@3.1.0:
- resolution: {integrity: sha512-LF8VeHeR7v+wAbXqfgRlTSX/1BJR9Q1vEMR8JAz1cEg6GX07+zyj3sAdDvYjj/xnlIfVuGgj4qBei1K3hKH+PA==}
- dev: true
+ git-hooks-list@3.1.0: {}
- /git-log-parser@1.2.0:
- resolution: {integrity: sha512-rnCVNfkTL8tdNryFuaY0fYiBWEBcgF748O6ZI61rslBvr2o7U65c2/6npCRqH40vuAhtgtDiqLTJjBVdrejCzA==}
+ git-log-parser@1.2.0:
dependencies:
argv-formatter: 1.0.0
spawn-error-forwarder: 1.0.0
split2: 1.0.0
stream-combiner2: 1.1.1
through2: 2.0.5
- traverse: 0.6.7
- dev: true
+ traverse: 0.6.9
- /git-raw-commits@4.0.0:
- resolution: {integrity: sha512-ICsMM1Wk8xSGMowkOmPrzo2Fgmfo4bMHLNX6ytHjajRJUqvHOw/TFapQ+QG75c3X/tTDDhOSRPGC52dDbNM8FQ==}
- engines: {node: '>=16'}
- hasBin: true
+ git-raw-commits@4.0.0:
dependencies:
dargs: 8.1.0
meow: 12.1.1
split2: 4.2.0
- dev: true
- /glob-parent@5.1.2:
- resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
- engines: {node: '>= 6'}
+ glob-parent@5.1.2:
dependencies:
is-glob: 4.0.3
- dev: true
- /glob-parent@6.0.2:
- resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
- engines: {node: '>=10.13.0'}
+ glob-parent@6.0.2:
dependencies:
is-glob: 4.0.3
- dev: true
- /glob@10.3.10:
- resolution: {integrity: sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==}
- engines: {node: '>=16 || 14 >=14.17'}
- hasBin: true
+ glob@10.4.1:
dependencies:
foreground-child: 3.1.1
- jackspeak: 2.3.6
- minimatch: 9.0.3
- minipass: 7.0.4
- path-scurry: 1.10.1
- dev: true
+ jackspeak: 3.4.0
+ minimatch: 9.0.5
+ minipass: 7.1.2
+ path-scurry: 1.11.1
- /glob@7.2.3:
- resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
- deprecated: Glob versions prior to v9 are no longer supported
+ glob@11.0.0:
dependencies:
- fs.realpath: 1.0.0
- inflight: 1.0.6
- inherits: 2.0.4
- minimatch: 3.1.2
- once: 1.4.0
- path-is-absolute: 1.0.1
- dev: true
+ foreground-child: 3.1.1
+ jackspeak: 4.0.1
+ minimatch: 10.0.1
+ minipass: 7.1.2
+ package-json-from-dist: 1.0.0
+ path-scurry: 2.0.0
- /glob@8.1.0:
- resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==}
- engines: {node: '>=12'}
- deprecated: Glob versions prior to v9 are no longer supported
+ glob@7.2.3:
dependencies:
fs.realpath: 1.0.0
inflight: 1.0.6
inherits: 2.0.4
- minimatch: 5.1.6
+ minimatch: 3.1.2
once: 1.4.0
- dev: true
+ path-is-absolute: 1.0.1
- /global-directory@4.0.1:
- resolution: {integrity: sha512-wHTUcDUoZ1H5/0iVqEudYW4/kAlN5cZ3j/bXn0Dpbizl9iaUVeWSHqiOjsgk6OW2bkLclbBjzewBz6weQ1zA2Q==}
- engines: {node: '>=18'}
+ global-directory@4.0.1:
dependencies:
ini: 4.1.1
- dev: true
- /global-modules@1.0.0:
- resolution: {integrity: sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==}
- engines: {node: '>=0.10.0'}
+ global-modules@1.0.0:
dependencies:
global-prefix: 1.0.2
is-windows: 1.0.2
resolve-dir: 1.0.1
- dev: true
- /global-prefix@1.0.2:
- resolution: {integrity: sha512-5lsx1NUDHtSjfg0eHlmYvZKv8/nVqX4ckFbM+FrGcQ+04KWcWFo9P5MxPZYSzUvyzmdTbI7Eix8Q4IbELDqzKg==}
- engines: {node: '>=0.10.0'}
+ global-prefix@1.0.2:
dependencies:
expand-tilde: 2.0.2
homedir-polyfill: 1.0.3
ini: 1.3.8
is-windows: 1.0.2
which: 1.3.1
- dev: true
- /globals@13.24.0:
- resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==}
- engines: {node: '>=8'}
+ globals@13.24.0:
dependencies:
type-fest: 0.20.2
- dev: true
- /globals@14.0.0:
- resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==}
- engines: {node: '>=18'}
- dev: true
+ globals@14.0.0: {}
- /globalthis@1.0.3:
- resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==}
- engines: {node: '>= 0.4'}
+ globals@15.9.0: {}
+
+ globalthis@1.0.4:
dependencies:
define-properties: 1.2.1
- dev: true
+ gopd: 1.0.1
- /globby@11.1.0:
- resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==}
- engines: {node: '>=10'}
+ globby@11.1.0:
dependencies:
array-union: 2.1.0
dir-glob: 3.0.1
@@ -3839,22 +6817,16 @@ packages:
ignore: 5.3.1
merge2: 1.4.1
slash: 3.0.0
- dev: true
- /globby@13.1.4:
- resolution: {integrity: sha512-iui/IiiW+QrJ1X1hKH5qwlMQyv34wJAYwH1vrf8b9kBA4sNiif3gKsMHa+BrdnOpEudWjpotfa7LrTzB1ERS/g==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ globby@13.2.2:
dependencies:
dir-glob: 3.0.1
fast-glob: 3.3.2
ignore: 5.3.1
merge2: 1.4.1
slash: 4.0.0
- dev: true
- /globby@14.0.1:
- resolution: {integrity: sha512-jOMLD2Z7MAhyG8aJpNOpmziMOP4rPLcc95oQPKXBazW82z+CEgPFBQvEpRUa1KeIMUJo4Wsm+q6uzO/Q/4BksQ==}
- engines: {node: '>=18'}
+ globby@14.0.1:
dependencies:
'@sindresorhus/merge-streams': 2.3.0
fast-glob: 3.3.2
@@ -3862,30 +6834,18 @@ packages:
path-type: 5.0.0
slash: 5.1.0
unicorn-magic: 0.1.0
- dev: true
- /gopd@1.0.1:
- resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==}
+ gopd@1.0.1:
dependencies:
get-intrinsic: 1.2.4
- dev: true
- /graceful-fs@4.2.10:
- resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==}
- dev: true
+ graceful-fs@4.2.10: {}
- /graceful-fs@4.2.11:
- resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
- dev: true
+ graceful-fs@4.2.11: {}
- /graphemer@1.4.0:
- resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
- dev: true
+ graphemer@1.4.0: {}
- /handlebars@4.7.7:
- resolution: {integrity: sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==}
- engines: {node: '>=0.4.7'}
- hasBin: true
+ handlebars@4.7.8:
dependencies:
minimist: 1.2.8
neo-async: 2.6.2
@@ -3893,226 +6853,126 @@ packages:
wordwrap: 1.0.0
optionalDependencies:
uglify-js: 3.17.4
- dev: true
-
- /has-bigints@1.0.2:
- resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==}
- dev: true
- /has-flag@3.0.0:
- resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==}
- engines: {node: '>=4'}
- dev: true
+ has-bigints@1.0.2: {}
- /has-flag@4.0.0:
- resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
- engines: {node: '>=8'}
- dev: true
+ has-flag@3.0.0: {}
- /has-own-prop@2.0.0:
- resolution: {integrity: sha512-Pq0h+hvsVm6dDEa8x82GnLSYHOzNDt7f0ddFa3FqcQlgzEiptPqL+XrOJNavjOzSYiYWIrgeVYYgGlLmnxwilQ==}
- engines: {node: '>=8'}
- dev: true
+ has-flag@4.0.0: {}
- /has-own-property@0.1.0:
- resolution: {integrity: sha512-14qdBKoonU99XDhWcFKZTShK+QV47qU97u8zzoVo9cL5TZ3BmBHXogItSt9qJjR0KUMFRhcCW8uGIGl8nkl7Aw==}
- dev: true
+ has-own-prop@2.0.0: {}
- /has-property-descriptors@1.0.2:
- resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==}
+ has-property-descriptors@1.0.2:
dependencies:
es-define-property: 1.0.0
- dev: true
- /has-proto@1.0.3:
- resolution: {integrity: sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==}
- engines: {node: '>= 0.4'}
- dev: true
+ has-proto@1.0.3: {}
- /has-symbols@1.0.3:
- resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==}
- engines: {node: '>= 0.4'}
- dev: true
+ has-symbols@1.0.3: {}
- /has-tostringtag@1.0.2:
- resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==}
- engines: {node: '>= 0.4'}
+ has-tostringtag@1.0.2:
dependencies:
has-symbols: 1.0.3
- dev: true
- /hasown@2.0.2:
- resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==}
- engines: {node: '>= 0.4'}
+ hasown@2.0.2:
dependencies:
function-bind: 1.1.2
- dev: true
- /highlight.js@10.7.3:
- resolution: {integrity: sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==}
- dev: true
+ helpertypes@0.0.19: {}
- /homedir-polyfill@1.0.3:
- resolution: {integrity: sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==}
- engines: {node: '>=0.10.0'}
+ highlight.js@10.7.3: {}
+
+ homedir-polyfill@1.0.3:
dependencies:
parse-passwd: 1.0.0
- dev: true
- /hook-std@3.0.0:
- resolution: {integrity: sha512-jHRQzjSDzMtFy34AGj1DN+vq54WVuhSvKgrHf0OMiFQTwDD4L/qqofVEWjLOBMTn5+lCD3fPg32W9yOfnEJTTw==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
- dev: true
-
- /hosted-git-info@2.8.9:
- resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==}
- dev: true
+ hook-std@3.0.0: {}
- /hosted-git-info@4.1.0:
- resolution: {integrity: sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==}
- engines: {node: '>=10'}
- dependencies:
- lru-cache: 6.0.0
- dev: true
+ hosted-git-info@2.8.9: {}
- /hosted-git-info@7.0.1:
- resolution: {integrity: sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==}
- engines: {node: ^16.14.0 || >=18.0.0}
+ hosted-git-info@7.0.2:
dependencies:
- lru-cache: 10.2.0
- dev: true
+ lru-cache: 10.2.2
- /http-proxy-agent@7.0.0:
- resolution: {integrity: sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==}
- engines: {node: '>= 14'}
+ http-proxy-agent@7.0.2:
dependencies:
- agent-base: 7.1.0
- debug: 4.3.4
+ agent-base: 7.1.1
+ debug: 4.3.6
transitivePeerDependencies:
- supports-color
- dev: true
- /https-proxy-agent@7.0.0:
- resolution: {integrity: sha512-0euwPCRyAPSgGdzD1IVN9nJYHtBhJwb6XPfbpQcYbPCwrBidX6GzxmchnaF4sfF/jPb74Ojx5g4yTg3sixlyPw==}
- engines: {node: '>= 14'}
+ https-proxy-agent@7.0.4:
dependencies:
- agent-base: 7.1.0
- debug: 4.3.4
+ agent-base: 7.1.1
+ debug: 4.3.6
transitivePeerDependencies:
- supports-color
- dev: true
- /human-signals@2.1.0:
- resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==}
- engines: {node: '>=10.17.0'}
- dev: true
+ human-signals@2.1.0: {}
- /human-signals@5.0.0:
- resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==}
- engines: {node: '>=16.17.0'}
- dev: true
+ human-signals@5.0.0: {}
- /husky@9.0.11:
- resolution: {integrity: sha512-AB6lFlbwwyIqMdHYhwPe+kjOC3Oc5P3nThEoW/AaO2BX3vJDjWPFxYLxokUZOo6RNX20He3AaT8sESs9NJcmEw==}
- engines: {node: '>=18'}
- hasBin: true
- dev: true
+ human-signals@7.0.0: {}
- /iconv-lite@0.4.24:
- resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==}
- engines: {node: '>=0.10.0'}
+ husky@9.1.4: {}
+
+ iconv-lite@0.4.24:
dependencies:
safer-buffer: 2.1.2
- dev: true
- /identity-function@1.0.0:
- resolution: {integrity: sha512-kNrgUK0qI+9qLTBidsH85HjDLpZfrrS0ElquKKe/fJFdB3D7VeKdXXEvOPDUHSHOzdZKCAAaQIWWyp0l2yq6pw==}
- dev: true
-
- /ieee754@1.2.1:
- resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==}
- dev: true
+ ieee754@1.2.1: {}
- /ignore@5.3.1:
- resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==}
- engines: {node: '>= 4'}
- dev: true
+ ignore@5.3.1: {}
- /import-fresh@3.3.0:
- resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==}
- engines: {node: '>=6'}
+ import-fresh@3.3.0:
dependencies:
parent-module: 1.0.1
resolve-from: 4.0.0
- dev: true
- /import-from-esm@1.3.3:
- resolution: {integrity: sha512-U3Qt/CyfFpTUv6LOP2jRTLYjphH6zg3okMfHbyqRa/W2w6hr8OsJWVggNlR4jxuojQy81TgTJTxgSkyoteRGMQ==}
- engines: {node: '>=16.20'}
+ import-from-esm@1.3.4:
dependencies:
- debug: 4.3.4
- import-meta-resolve: 4.0.0
+ debug: 4.3.6
+ import-meta-resolve: 4.1.0
transitivePeerDependencies:
- supports-color
- dev: true
- /import-meta-resolve@4.0.0:
- resolution: {integrity: sha512-okYUR7ZQPH+efeuMJGlq4f8ubUgO50kByRPyt/Cy1Io4PSRsPjxME+YlVaCOx+NIToW7hCsZNFJyTPFFKepRSA==}
- dev: true
+ import-meta-resolve@4.1.0: {}
- /imurmurhash@0.1.4:
- resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
- engines: {node: '>=0.8.19'}
- dev: true
+ importx@0.4.3:
+ dependencies:
+ bundle-require: 5.0.0(esbuild@0.21.5)
+ debug: 4.3.6
+ esbuild: 0.21.5
+ jiti: 2.0.0-beta.2
+ jiti-v1: jiti@1.21.6
+ pathe: 1.1.2
+ pkg-types: 1.1.3
+ tsx: 4.16.5
+ transitivePeerDependencies:
+ - supports-color
- /indent-string@4.0.0:
- resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==}
- engines: {node: '>=8'}
- dev: true
+ imurmurhash@0.1.4: {}
- /indent-string@5.0.0:
- resolution: {integrity: sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==}
- engines: {node: '>=12'}
- dev: true
+ indent-string@4.0.0: {}
- /index-to-position@0.1.2:
- resolution: {integrity: sha512-MWDKS3AS1bGCHLBA2VLImJz42f7bJh8wQsTGCzI3j519/CASStoDONUBVz2I/VID0MpiX3SGSnbOD2xUalbE5g==}
- engines: {node: '>=18'}
- dev: true
+ indent-string@5.0.0: {}
- /individual@3.0.0:
- resolution: {integrity: sha512-rUY5vtT748NMRbEMrTNiFfy29BgGZwGXUi2NFUVMWQrogSLzlJvQV9eeMWi+g1aVaQ53tpyLAQtd5x/JH0Nh1g==}
- dev: true
+ index-to-position@0.1.2: {}
- /inflight@1.0.6:
- resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==}
- deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
+ inflight@1.0.6:
dependencies:
once: 1.4.0
wrappy: 1.0.2
- dev: true
- /inherits@2.0.4:
- resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
- dev: true
+ inherits@2.0.4: {}
- /ini@1.3.8:
- resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==}
- dev: true
+ ini@1.3.8: {}
- /ini@4.1.1:
- resolution: {integrity: sha512-QQnnxNyfvmHFIsj7gkPcYymR8Jdw/o7mp5ZFihxn6h8Ci6fh3Dx4E1gPjpQEpIuPo9XVNY/ZUwh4BPMjGyL01g==}
- engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
- dev: true
+ ini@4.1.1: {}
- /ini@4.1.2:
- resolution: {integrity: sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==}
- engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
- dev: true
+ ini@4.1.3: {}
- /inquirer@8.2.5:
- resolution: {integrity: sha512-QAgPDQMEgrDssk1XiwwHoOGYF9BAbUcc1+j+FhEvaOt8/cKRqyLn0U5qA6F74fGhTMGxf92pOvPBeh29jQJDTQ==}
- engines: {node: '>=12.0.0'}
+ inquirer@8.2.5:
dependencies:
ansi-escapes: 4.3.2
chalk: 4.1.2
@@ -4124,713 +6984,392 @@ packages:
mute-stream: 0.0.8
ora: 5.4.1
run-async: 2.4.1
- rxjs: 7.8.0
+ rxjs: 7.8.1
string-width: 4.2.3
strip-ansi: 6.0.1
through: 2.3.8
wrap-ansi: 7.0.0
- dev: true
- /internal-slot@1.0.7:
- resolution: {integrity: sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==}
- engines: {node: '>= 0.4'}
+ internal-slot@1.0.7:
dependencies:
es-errors: 1.3.0
hasown: 2.0.2
- side-channel: 1.0.4
- dev: true
+ side-channel: 1.0.6
- /into-stream@7.0.0:
- resolution: {integrity: sha512-2dYz766i9HprMBasCMvHMuazJ7u4WzhJwo5kb3iPSiW/iRYV6uPari3zHoqZlnuaR7V1bEiNMxikhp37rdBXbw==}
- engines: {node: '>=12'}
+ into-stream@7.0.0:
dependencies:
from2: 2.3.0
p-is-promise: 3.0.0
- dev: true
- /is-alphabetical@1.0.4:
- resolution: {integrity: sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==}
- dev: true
+ is-alphabetical@1.0.4: {}
- /is-alphanumerical@1.0.4:
- resolution: {integrity: sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==}
+ is-alphanumerical@1.0.4:
dependencies:
is-alphabetical: 1.0.4
is-decimal: 1.0.4
- dev: true
- /is-array-buffer@3.0.4:
- resolution: {integrity: sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==}
- engines: {node: '>= 0.4'}
+ is-array-buffer@3.0.4:
dependencies:
call-bind: 1.0.7
get-intrinsic: 1.2.4
- dev: true
- /is-arrayish@0.2.1:
- resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==}
- dev: true
+ is-arrayish@0.2.1: {}
- /is-bigint@1.0.4:
- resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==}
+ is-bigint@1.0.4:
dependencies:
has-bigints: 1.0.2
- dev: true
- /is-boolean-object@1.1.2:
- resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==}
- engines: {node: '>= 0.4'}
+ is-boolean-object@1.1.2:
dependencies:
call-bind: 1.0.7
has-tostringtag: 1.0.2
- dev: true
- /is-builtin-module@3.2.1:
- resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==}
- engines: {node: '>=6'}
+ is-builtin-module@3.2.1:
dependencies:
builtin-modules: 3.3.0
- dev: true
- /is-callable@1.2.7:
- resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==}
- engines: {node: '>= 0.4'}
- dev: true
+ is-callable@1.2.7: {}
- /is-core-module@2.13.1:
- resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==}
+ is-core-module@2.13.1:
dependencies:
hasown: 2.0.2
- dev: true
- /is-data-view@1.0.1:
- resolution: {integrity: sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==}
- engines: {node: '>= 0.4'}
+ is-data-view@1.0.1:
dependencies:
is-typed-array: 1.1.13
- dev: true
- /is-date-object@1.0.5:
- resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==}
- engines: {node: '>= 0.4'}
+ is-date-object@1.0.5:
dependencies:
has-tostringtag: 1.0.2
- dev: true
- /is-decimal@1.0.4:
- resolution: {integrity: sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==}
- dev: true
+ is-decimal@1.0.4: {}
- /is-extglob@2.1.1:
- resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
- engines: {node: '>=0.10.0'}
- dev: true
+ is-extglob@2.1.1: {}
- /is-fullwidth-code-point@3.0.0:
- resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
- engines: {node: '>=8'}
- dev: true
+ is-fullwidth-code-point@3.0.0: {}
- /is-fullwidth-code-point@4.0.0:
- resolution: {integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==}
- engines: {node: '>=12'}
- dev: true
+ is-fullwidth-code-point@4.0.0: {}
- /is-fullwidth-code-point@5.0.0:
- resolution: {integrity: sha512-OVa3u9kkBbw7b8Xw5F9P+D/T9X+Z4+JruYVNapTjPYZYUznQ5YfWeFkOj606XYYW8yugTfC8Pj0hYqvi4ryAhA==}
- engines: {node: '>=18'}
+ is-fullwidth-code-point@5.0.0:
dependencies:
get-east-asian-width: 1.2.0
- dev: true
- /is-glob@4.0.3:
- resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
- engines: {node: '>=0.10.0'}
+ is-glob@4.0.3:
dependencies:
is-extglob: 2.1.1
- dev: true
- /is-hexadecimal@1.0.4:
- resolution: {integrity: sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==}
- dev: true
+ is-hexadecimal@1.0.4: {}
- /is-immutable-type@2.0.4(eslint@9.6.0)(typescript@5.4.3):
- resolution: {integrity: sha512-kjNGSmAQdEj7NJ/Cim9u6OUB/efEsuoUU3fCygl+o0DBwNS0blVjRHumRBX9cBwpZQEQaYVpVLO635HqWvdZRw==}
- peerDependencies:
- eslint: '*'
- typescript: '>=4.7.4'
+ is-immutable-type@4.0.0(eslint@9.8.0)(typescript@5.4.5):
dependencies:
- '@typescript-eslint/type-utils': 7.3.1(eslint@9.6.0)(typescript@5.4.3)
- eslint: 9.6.0
- ts-api-utils: 1.3.0(typescript@5.4.3)
- typescript: 5.4.3
+ '@typescript-eslint/type-utils': 7.18.0(eslint@9.8.0)(typescript@5.4.5)
+ eslint: 9.8.0
+ ts-api-utils: 1.3.0(typescript@5.4.5)
+ ts-declaration-location: 1.0.4(typescript@5.4.5)
+ typescript: 5.4.5
transitivePeerDependencies:
- supports-color
- dev: true
-
- /is-interactive@1.0.0:
- resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==}
- engines: {node: '>=8'}
- dev: true
- /is-iterable@1.1.1:
- resolution: {integrity: sha512-EdOZCr0NsGE00Pot+x1ZFx9MJK3C6wy91geZpXwvwexDLJvA4nzYyZf7r+EIwSeVsOLDdBz7ATg9NqKTzuNYuQ==}
- engines: {node: '>= 4'}
- dev: true
+ is-interactive@1.0.0: {}
- /is-module@1.0.0:
- resolution: {integrity: sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==}
- dev: true
+ is-language-code@3.1.0:
+ dependencies:
+ '@babel/runtime': 7.24.7
- /is-negative-zero@2.0.3:
- resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==}
- engines: {node: '>= 0.4'}
- dev: true
+ is-negative-zero@2.0.3: {}
- /is-number-object@1.0.7:
- resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==}
- engines: {node: '>= 0.4'}
+ is-number-object@1.0.7:
dependencies:
has-tostringtag: 1.0.2
- dev: true
-
- /is-number@4.0.0:
- resolution: {integrity: sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==}
- engines: {node: '>=0.10.0'}
- dev: true
- /is-number@7.0.0:
- resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
- engines: {node: '>=0.12.0'}
- dev: true
-
- /is-obj@2.0.0:
- resolution: {integrity: sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==}
- engines: {node: '>=8'}
- dev: true
+ is-number@7.0.0: {}
- /is-path-inside@3.0.3:
- resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==}
- engines: {node: '>=8'}
- dev: true
+ is-obj@2.0.0: {}
- /is-plain-obj@4.1.0:
- resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==}
- engines: {node: '>=12'}
- dev: true
+ is-path-inside@3.0.3: {}
- /is-reference@1.2.1:
- resolution: {integrity: sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==}
- dependencies:
- '@types/estree': 1.0.5
- dev: true
+ is-plain-obj@4.1.0: {}
- /is-regex@1.1.4:
- resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==}
- engines: {node: '>= 0.4'}
+ is-regex@1.1.4:
dependencies:
call-bind: 1.0.7
has-tostringtag: 1.0.2
- dev: true
- /is-shared-array-buffer@1.0.3:
- resolution: {integrity: sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==}
- engines: {node: '>= 0.4'}
+ is-shared-array-buffer@1.0.3:
dependencies:
call-bind: 1.0.7
- dev: true
- /is-stream@2.0.1:
- resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==}
- engines: {node: '>=8'}
- dev: true
+ is-stream@2.0.1: {}
- /is-stream@3.0.0:
- resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
- dev: true
+ is-stream@3.0.0: {}
- /is-string@1.0.7:
- resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==}
- engines: {node: '>= 0.4'}
+ is-stream@4.0.1: {}
+
+ is-string@1.0.7:
dependencies:
has-tostringtag: 1.0.2
- dev: true
- /is-symbol@1.0.4:
- resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==}
- engines: {node: '>= 0.4'}
+ is-symbol@1.0.4:
dependencies:
has-symbols: 1.0.3
- dev: true
- /is-text-path@2.0.0:
- resolution: {integrity: sha512-+oDTluR6WEjdXEJMnC2z6A4FRwFoYuvShVVEGsS7ewc0UTi2QtAKMDJuL4BDEVt+5T7MjFo12RP8ghOM75oKJw==}
- engines: {node: '>=8'}
+ is-text-path@2.0.0:
dependencies:
text-extensions: 2.4.0
- dev: true
- /is-typed-array@1.1.13:
- resolution: {integrity: sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==}
- engines: {node: '>= 0.4'}
+ is-typed-array@1.1.13:
dependencies:
which-typed-array: 1.1.15
- dev: true
- /is-typedarray@1.0.0:
- resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==}
- dev: true
+ is-unicode-supported@0.1.0: {}
- /is-unicode-supported@0.1.0:
- resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==}
- engines: {node: '>=10'}
- dev: true
-
- /is-unicode-supported@2.0.0:
- resolution: {integrity: sha512-FRdAyx5lusK1iHG0TWpVtk9+1i+GjrzRffhDg4ovQ7mcidMQ6mj+MhKPmvh7Xwyv5gIS06ns49CA7Sqg7lC22Q==}
- engines: {node: '>=18'}
- dev: true
+ is-unicode-supported@2.0.0: {}
- /is-utf8@0.2.1:
- resolution: {integrity: sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q==}
- dev: true
+ is-utf8@0.2.1: {}
- /is-weakref@1.0.2:
- resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==}
+ is-weakref@1.0.2:
dependencies:
call-bind: 1.0.7
- dev: true
- /is-windows@1.0.2:
- resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==}
- engines: {node: '>=0.10.0'}
- dev: true
+ is-windows@1.0.2: {}
- /isarray@1.0.0:
- resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==}
- dev: true
+ isarray@1.0.0: {}
- /isarray@2.0.5:
- resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==}
- dev: true
+ isarray@2.0.5: {}
- /isexe@2.0.0:
- resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
- dev: true
+ isbot@3.8.0: {}
- /isexe@3.1.1:
- resolution: {integrity: sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==}
- engines: {node: '>=16'}
- dev: true
+ isexe@2.0.0: {}
- /issue-parser@7.0.0:
- resolution: {integrity: sha512-jgAw78HO3gs9UrKqJNQvfDj9Ouy8Mhu40fbEJ8yXff4MW8+/Fcn9iFjyWUQ6SKbX8ipPk3X5A3AyfYHRu6uVLw==}
- engines: {node: ^18.17 || >=20.6.1}
+ issue-parser@7.0.1:
dependencies:
lodash.capitalize: 4.2.1
lodash.escaperegexp: 4.1.2
lodash.isplainobject: 4.0.6
lodash.isstring: 4.0.1
lodash.uniqby: 4.7.0
- dev: true
- /iterable-lookahead@1.0.0:
- resolution: {integrity: sha512-hJnEP2Xk4+44DDwJqUQGdXal5VbyeWLaPyDl2AQc242Zr7iqz4DgpQOrEzglWVMGHMDCkguLHEKxd1+rOsmgSQ==}
- engines: {node: '>=4'}
- dev: true
+ jackspeak@3.4.0:
+ dependencies:
+ '@isaacs/cliui': 8.0.2
+ optionalDependencies:
+ '@pkgjs/parseargs': 0.11.0
- /jackspeak@2.3.6:
- resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==}
- engines: {node: '>=14'}
+ jackspeak@4.0.1:
dependencies:
'@isaacs/cliui': 8.0.2
optionalDependencies:
'@pkgjs/parseargs': 0.11.0
- dev: true
- /java-properties@1.0.2:
- resolution: {integrity: sha512-qjdpeo2yKlYTH7nFdK0vbZWuTCesk4o63v5iVOlhMQPfuIZQfW/HI35SjfhA+4qpg36rnFSvUK5b1m+ckIblQQ==}
- engines: {node: '>= 0.6.0'}
- dev: true
+ java-properties@1.0.2: {}
- /jiti@1.21.0:
- resolution: {integrity: sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==}
- hasBin: true
- dev: true
+ jiti@1.21.6: {}
- /js-tokens@4.0.0:
- resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
- dev: true
+ jiti@2.0.0-beta.2: {}
- /js-yaml@4.1.0:
- resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
- hasBin: true
+ js-tokens@4.0.0: {}
+
+ js-yaml@4.1.0:
dependencies:
argparse: 2.0.1
- dev: true
-
- /jsdoc-type-pratt-parser@4.0.0:
- resolution: {integrity: sha512-YtOli5Cmzy3q4dP26GraSOeAhqecewG04hoO8DY56CH4KJ9Fvv5qKWUCCo3HZob7esJQHCv6/+bnTy72xZZaVQ==}
- engines: {node: '>=12.0.0'}
- dev: true
-
- /jsesc@0.5.0:
- resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==}
- hasBin: true
- dev: true
- /jsesc@3.0.2:
- resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==}
- engines: {node: '>=6'}
- hasBin: true
- dev: true
+ jsdoc-type-pratt-parser@4.0.0: {}
- /json-buffer@3.0.1:
- resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==}
- dev: true
+ jsesc@0.5.0: {}
- /json-parse-better-errors@1.0.2:
- resolution: {integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==}
- dev: true
+ jsesc@3.0.2: {}
- /json-parse-even-better-errors@2.3.1:
- resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==}
- dev: true
+ json-buffer@3.0.1: {}
- /json-parse-even-better-errors@3.0.0:
- resolution: {integrity: sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==}
- engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
- dev: true
+ json-parse-better-errors@1.0.2: {}
- /json-schema-traverse@0.4.1:
- resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==}
- dev: true
+ json-parse-even-better-errors@2.3.1: {}
- /json-schema-traverse@1.0.0:
- resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==}
- dev: true
+ json-schema-to-typescript-lite@14.0.1:
+ dependencies:
+ '@apidevtools/json-schema-ref-parser': 11.6.4
+ '@types/json-schema': 7.0.15
- /json-stable-stringify-without-jsonify@1.0.1:
- resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
- dev: true
+ json-schema-traverse@0.4.1: {}
- /json-stringify-safe@5.0.1:
- resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==}
- dev: true
+ json-schema-traverse@1.0.0: {}
- /json5@1.0.2:
- resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==}
- hasBin: true
+ json-stable-stringify-without-jsonify@1.0.1: {}
+
+ json5@1.0.2:
dependencies:
minimist: 1.2.8
- dev: true
- /json5@2.2.3:
- resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==}
- engines: {node: '>=6'}
- hasBin: true
- dev: true
+ json5@2.2.3: {}
- /jsonc-parser@3.2.1:
- resolution: {integrity: sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==}
- dev: true
+ jsonc-eslint-parser@2.4.0:
+ dependencies:
+ acorn: 8.12.1
+ eslint-visitor-keys: 3.4.3
+ espree: 9.6.1
+ semver: 7.6.3
- /jsonfile@6.1.0:
- resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==}
+ jsonc-parser@3.2.1: {}
+
+ jsonfile@6.1.0:
dependencies:
- universalify: 2.0.0
+ universalify: 2.0.1
optionalDependencies:
graceful-fs: 4.2.11
- dev: true
- /jsonparse@1.3.1:
- resolution: {integrity: sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==}
- engines: {'0': node >= 0.2.0}
- dev: true
+ jsonparse@1.3.1: {}
- /keyv@4.5.4:
- resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==}
+ jsonpointer@5.0.1: {}
+
+ keyv@4.5.4:
dependencies:
json-buffer: 3.0.1
- dev: true
- /knip@5.5.0(@types/node@18.11.9)(typescript@5.4.3):
- resolution: {integrity: sha512-50hMAFPBW2z/IJeW5rNKKNNLXVQNJFJDQ72C4o+vsCNCiPv5mn4M52iQVsp8hwjOcVGYB7bKFKaNVzPAQ6C4gw==}
- engines: {node: '>=18.6.0'}
- hasBin: true
- peerDependencies:
- '@types/node': '>=18'
- typescript: '>=5.0.4'
+ knip@5.27.0(@types/node@22.1.0)(typescript@5.4.5):
dependencies:
- '@ericcornelissen/bash-parser': 0.5.2
- '@nodelib/fs.walk': 2.0.0
- '@npmcli/map-workspaces': 3.0.4
- '@npmcli/package-json': 5.0.0
- '@pnpm/logger': 5.0.0
- '@pnpm/workspace.pkgs-graph': 2.0.15(@pnpm/logger@5.0.0)
+ '@nodelib/fs.walk': 1.2.8
'@snyk/github-codeowners': 1.1.0
- '@types/node': 18.11.9
- '@types/picomatch': 2.3.3
+ '@types/node': 22.1.0
easy-table: 1.2.0
fast-glob: 3.3.2
- jiti: 1.21.0
+ jiti: 1.21.6
js-yaml: 4.1.0
- micromatch: 4.0.5
minimist: 1.2.8
- picocolors: 1.0.0
- picomatch: 4.0.1
+ picocolors: 1.0.1
+ picomatch: 4.0.2
pretty-ms: 9.0.0
- smol-toml: 1.1.4
+ resolve: 1.22.8
+ smol-toml: 1.2.1
strip-json-comments: 5.0.1
summary: 2.1.0
- typescript: 5.4.3
- zod: 3.22.4
- zod-validation-error: 3.0.3(zod@3.22.4)
- transitivePeerDependencies:
- - bluebird
- - domexception
- dev: true
+ typescript: 5.4.5
+ zod: 3.23.8
+ zod-validation-error: 3.3.0(zod@3.23.8)
- /levn@0.4.1:
- resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==}
- engines: {node: '>= 0.8.0'}
+ levn@0.4.1:
dependencies:
prelude-ls: 1.2.1
type-check: 0.4.0
- dev: true
- /lilconfig@3.0.0:
- resolution: {integrity: sha512-K2U4W2Ff5ibV7j7ydLr+zLAkIg5JJ4lPn1Ltsdt+Tz/IjQ8buJ55pZAxoP34lqIiwtF9iAvtLv3JGv7CAyAg+g==}
- engines: {node: '>=14'}
- dev: true
+ lilconfig@3.1.2: {}
- /lines-and-columns@1.2.4:
- resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
- dev: true
+ lines-and-columns@1.2.4: {}
- /linkify-it@5.0.0:
- resolution: {integrity: sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==}
+ linkify-it@5.0.0:
dependencies:
uc.micro: 2.1.0
- dev: true
- /lint-staged@15.2.2:
- resolution: {integrity: sha512-TiTt93OPh1OZOsb5B7k96A/ATl2AjIZo+vnzFZ6oHK5FuTk63ByDtxGQpHm+kFETjEWqgkF95M8FRXKR/LEBcw==}
- engines: {node: '>=18.12.0'}
- hasBin: true
+ lint-staged@15.2.8:
dependencies:
chalk: 5.3.0
- commander: 11.1.0
- debug: 4.3.4
+ commander: 12.1.0
+ debug: 4.3.6
execa: 8.0.1
- lilconfig: 3.0.0
- listr2: 8.0.1
- micromatch: 4.0.5
+ lilconfig: 3.1.2
+ listr2: 8.2.4
+ micromatch: 4.0.7
pidtree: 0.6.0
string-argv: 0.3.2
- yaml: 2.3.4
+ yaml: 2.5.0
transitivePeerDependencies:
- supports-color
- dev: true
- /listr2@8.0.1:
- resolution: {integrity: sha512-ovJXBXkKGfq+CwmKTjluEqFi3p4h8xvkxGQQAQan22YCgef4KZ1mKGjzfGh6PL6AW5Csw0QiQPNuQyH+6Xk3hA==}
- engines: {node: '>=18.0.0'}
+ listr2@8.2.4:
dependencies:
cli-truncate: 4.0.0
colorette: 2.0.20
eventemitter3: 5.0.1
- log-update: 6.0.0
- rfdc: 1.3.0
+ log-update: 6.1.0
+ rfdc: 1.4.1
wrap-ansi: 9.0.0
- dev: true
- /load-json-file@4.0.0:
- resolution: {integrity: sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==}
- engines: {node: '>=4'}
+ load-json-file@4.0.0:
dependencies:
graceful-fs: 4.2.11
parse-json: 4.0.0
pify: 3.0.0
strip-bom: 3.0.0
- dev: true
- /load-json-file@6.2.0:
- resolution: {integrity: sha512-gUD/epcRms75Cw8RT1pUdHugZYM5ce64ucs2GEISABwkRsOQr0q2wm/MV2TKThycIe5e0ytRweW2RZxclogCdQ==}
- engines: {node: '>=8'}
+ load-tsconfig@0.2.5: {}
+
+ local-pkg@0.5.0:
dependencies:
- graceful-fs: 4.2.11
- parse-json: 5.2.0
- strip-bom: 4.0.0
- type-fest: 0.6.0
- dev: true
+ mlly: 1.7.1
+ pkg-types: 1.1.3
- /locate-path@2.0.0:
- resolution: {integrity: sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==}
- engines: {node: '>=4'}
+ locate-path@2.0.0:
dependencies:
p-locate: 2.0.0
path-exists: 3.0.0
- dev: true
- /locate-path@5.0.0:
- resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==}
- engines: {node: '>=8'}
+ locate-path@5.0.0:
dependencies:
p-locate: 4.1.0
- dev: true
- /locate-path@6.0.0:
- resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
- engines: {node: '>=10'}
+ locate-path@6.0.0:
dependencies:
p-locate: 5.0.0
- dev: true
- /locate-path@7.2.0:
- resolution: {integrity: sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ locate-path@7.2.0:
dependencies:
p-locate: 6.0.0
- dev: true
-
- /lodash-es@4.17.21:
- resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==}
- dev: true
- /lodash.camelcase@4.3.0:
- resolution: {integrity: sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==}
- dev: true
+ lodash-es@4.17.21: {}
- /lodash.capitalize@4.2.1:
- resolution: {integrity: sha512-kZzYOKspf8XVX5AvmQF94gQW0lejFVgb80G85bU4ZWzoJ6C03PQg3coYAUpSTpQWelrZELd3XWgHzw4Ck5kaIw==}
- dev: true
+ lodash.camelcase@4.3.0: {}
- /lodash.curry@4.1.1:
- resolution: {integrity: sha512-/u14pXGviLaweY5JI0IUzgzF2J6Ne8INyzAZjImcryjgkZ+ebruBxy2/JaOOkTqScddcYtakjhSaeemV8lR0tA==}
- dev: true
+ lodash.capitalize@4.2.1: {}
- /lodash.escaperegexp@4.1.2:
- resolution: {integrity: sha512-TM9YBvyC84ZxE3rgfefxUWiQKLilstD6k7PTGt6wfbtXF8ixIJLOL3VYyV/z+ZiPLsVxAsKAFVwWlWeb2Y8Yyw==}
- dev: true
+ lodash.escaperegexp@4.1.2: {}
- /lodash.isplainobject@4.0.6:
- resolution: {integrity: sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==}
- dev: true
+ lodash.isplainobject@4.0.6: {}
- /lodash.isstring@4.0.1:
- resolution: {integrity: sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==}
- dev: true
+ lodash.isstring@4.0.1: {}
- /lodash.kebabcase@4.1.1:
- resolution: {integrity: sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g==}
- dev: true
+ lodash.kebabcase@4.1.1: {}
- /lodash.map@4.6.0:
- resolution: {integrity: sha512-worNHGKLDetmcEYDvh2stPCrrQRkP20E4l0iIS7F8EvzMqBBi7ltvFN5m1HvTf1P7Jk1txKhvFcmYsCr8O2F1Q==}
- dev: true
+ lodash.map@4.6.0: {}
- /lodash.merge@4.6.2:
- resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==}
- dev: true
+ lodash.merge@4.6.2: {}
- /lodash.mergewith@4.6.2:
- resolution: {integrity: sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ==}
- dev: true
+ lodash.mergewith@4.6.2: {}
- /lodash.snakecase@4.1.1:
- resolution: {integrity: sha512-QZ1d4xoBHYUeuouhEq3lk3Uq7ldgyFXGBhg04+oRLnIz8o9T65Eh+8YdroUwn846zchkA9yDsDl5CVVaV2nqYw==}
- dev: true
+ lodash.snakecase@4.1.1: {}
- /lodash.startcase@4.4.0:
- resolution: {integrity: sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==}
- dev: true
+ lodash.startcase@4.4.0: {}
- /lodash.uniq@4.5.0:
- resolution: {integrity: sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==}
- dev: true
+ lodash.uniq@4.5.0: {}
- /lodash.uniqby@4.7.0:
- resolution: {integrity: sha512-e/zcLx6CSbmaEgFHCA7BnoQKyCtKMxnuWrJygbwPs/AIn+IMKl66L8/s+wBUn5LRw2pZx3bUHibiV1b6aTWIww==}
- dev: true
+ lodash.uniqby@4.7.0: {}
- /lodash.upperfirst@4.3.1:
- resolution: {integrity: sha512-sReKOYJIJf74dhJONhU4e0/shzi1trVbSWDOhKYE5XV2O+H7Sb2Dihwuc7xWxVl+DgFPyTqIN3zMfT9cq5iWDg==}
- dev: true
+ lodash.upperfirst@4.3.1: {}
- /lodash@4.17.21:
- resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
- dev: true
+ lodash@4.17.21: {}
- /log-symbols@4.1.0:
- resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==}
- engines: {node: '>=10'}
+ log-symbols@4.1.0:
dependencies:
chalk: 4.1.2
is-unicode-supported: 0.1.0
- dev: true
- /log-update@6.0.0:
- resolution: {integrity: sha512-niTvB4gqvtof056rRIrTZvjNYE4rCUzO6X/X+kYjd7WFxXeJ0NwEFnRxX6ehkvv3jTwrXnNdtAak5XYZuIyPFw==}
- engines: {node: '>=18'}
+ log-update@6.1.0:
dependencies:
- ansi-escapes: 6.2.1
- cli-cursor: 4.0.0
+ ansi-escapes: 7.0.0
+ cli-cursor: 5.0.0
slice-ansi: 7.1.0
strip-ansi: 7.1.0
wrap-ansi: 9.0.0
- dev: true
-
- /longest@2.0.1:
- resolution: {integrity: sha512-Ajzxb8CM6WAnFjgiloPsI3bF+WCxcvhdIG3KNA2KN962+tdBsHcuQ4k4qX/EcS/2CRkcc0iAkR956Nib6aXU/Q==}
- engines: {node: '>=0.10.0'}
- dev: true
-
- /lru-cache@10.2.0:
- resolution: {integrity: sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==}
- engines: {node: 14 || >=16.14}
- dev: true
-
- /lru-cache@6.0.0:
- resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==}
- engines: {node: '>=10'}
- dependencies:
- yallist: 4.0.0
- dev: true
- /magic-string@0.16.0:
- resolution: {integrity: sha512-c4BEos3y6G2qO0B9X7K0FVLOPT9uGrjYwYRLFmDqyl5YMboUviyecnXWp94fJTSMwPw2/sf+CEYt5AGpmklkkQ==}
- dependencies:
- vlq: 0.2.3
- dev: true
+ longest@2.0.1: {}
- /magic-string@0.30.8:
- resolution: {integrity: sha512-ISQTe55T2ao7XtlAStud6qwYPZjE4GK1S/BeVPus4jrq6JuOnQ00YKQC581RWhR122W7msZV263KzVeLoqidyQ==}
- engines: {node: '>=12'}
- dependencies:
- '@jridgewell/sourcemap-codec': 1.4.15
- dev: true
+ lru-cache@10.2.2: {}
- /make-error@1.3.6:
- resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==}
- dev: true
+ lru-cache@11.0.0: {}
- /map-age-cleaner@0.1.3:
- resolution: {integrity: sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==}
- engines: {node: '>=6'}
+ magic-string@0.30.11:
dependencies:
- p-defer: 1.0.0
- dev: true
+ '@jridgewell/sourcemap-codec': 1.5.0
- /map-obj@2.0.0:
- resolution: {integrity: sha512-TzQSV2DiMYgoF5RycneKVUzIa9bQsj/B3tTgsE3dOGqlzHnGIDaC7XBE7grnA+8kZPnfqSGFe95VHc2oc0VFUQ==}
- engines: {node: '>=4'}
- dev: true
-
- /markdown-it@14.0.0:
- resolution: {integrity: sha512-seFjF0FIcPt4P9U39Bq1JYblX0KZCjDLFFQPHpL5AzHpqPEKtosxmdq/LTVZnjfH7tjt9BxStm+wXcDBNuYmzw==}
- hasBin: true
+ markdown-it@14.1.0:
dependencies:
argparse: 2.0.1
entities: 4.5.0
@@ -4838,655 +7377,310 @@ packages:
mdurl: 2.0.0
punycode.js: 2.3.1
uc.micro: 2.1.0
- dev: true
- /markdownlint-cli@0.39.0:
- resolution: {integrity: sha512-ZuFN7Xpsbn1Nbp0YYkeLOfXOMOfLQBik2lKRy8pVI/llmKQ2uW7x+8k5OMgF6o7XCsTDSYC/OOmeJ+3qplvnJQ==}
- engines: {node: '>=18'}
- hasBin: true
+ markdownlint-cli@0.41.0:
dependencies:
- commander: 11.1.0
+ commander: 12.1.0
get-stdin: 9.0.0
- glob: 10.3.10
+ glob: 10.4.1
ignore: 5.3.1
js-yaml: 4.1.0
jsonc-parser: 3.2.1
- markdownlint: 0.33.0
- minimatch: 9.0.3
+ jsonpointer: 5.0.1
+ markdownlint: 0.34.0
+ minimatch: 9.0.5
run-con: 1.3.2
- dev: true
+ smol-toml: 1.2.1
- /markdownlint-micromark@0.1.8:
- resolution: {integrity: sha512-1ouYkMRo9/6gou9gObuMDnvZM8jC/ly3QCFQyoSPCS2XV1ZClU0xpKbL1Ar3bWWRT1RnBZkWUEiNKrI2CwiBQA==}
- engines: {node: '>=16'}
- dev: true
+ markdownlint-micromark@0.1.9: {}
- /markdownlint@0.33.0:
- resolution: {integrity: sha512-4lbtT14A3m0LPX1WS/3d1m7Blg+ZwiLq36WvjQqFGsX3Gik99NV+VXp/PW3n+Q62xyPdbvGOCfjPqjW+/SKMig==}
- engines: {node: '>=18'}
+ markdownlint@0.34.0:
dependencies:
- markdown-it: 14.0.0
- markdownlint-micromark: 0.1.8
- dev: true
+ markdown-it: 14.1.0
+ markdownlint-micromark: 0.1.9
- /marked-terminal@7.0.0(marked@12.0.1):
- resolution: {integrity: sha512-sNEx8nn9Ktcm6pL0TnRz8tnXq/mSS0Q1FRSwJOAqw4lAB4l49UeDf85Gm1n9RPFm5qurCPjwi1StAQT2XExhZw==}
- engines: {node: '>=16.0.0'}
- peerDependencies:
- marked: '>=1 <13'
+ marked-terminal@7.0.0(marked@12.0.2):
dependencies:
ansi-escapes: 6.2.1
chalk: 5.3.0
cli-highlight: 2.1.11
- cli-table3: 0.6.3
- marked: 12.0.1
+ cli-table3: 0.6.5
+ marked: 12.0.2
node-emoji: 2.1.3
supports-hyperlinks: 3.0.0
- dev: true
- /marked@12.0.1:
- resolution: {integrity: sha512-Y1/V2yafOcOdWQCX0XpAKXzDakPOpn6U0YLxTJs3cww6VxOzZV1BTOOYWLvH3gX38cq+iLwljHHTnMtlDfg01Q==}
- engines: {node: '>= 18'}
- hasBin: true
- dev: true
+ marked@12.0.2: {}
- /mdast-util-from-markdown@0.8.5:
- resolution: {integrity: sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==}
+ mdast-util-from-markdown@0.8.5:
dependencies:
- '@types/mdast': 3.0.10
+ '@types/mdast': 3.0.15
mdast-util-to-string: 2.0.0
micromark: 2.11.4
parse-entities: 2.0.0
unist-util-stringify-position: 2.0.3
transitivePeerDependencies:
- supports-color
- dev: true
-
- /mdast-util-to-string@2.0.0:
- resolution: {integrity: sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==}
- dev: true
- /mdurl@2.0.0:
- resolution: {integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==}
- dev: true
+ mdast-util-to-string@2.0.0: {}
- /mem@6.1.1:
- resolution: {integrity: sha512-Ci6bIfq/UgcxPTYa8dQQ5FY3BzKkT894bwXWXxC/zqs0XgMO2cT20CGkOqda7gZNkmK5VP4x89IGZ6K7hfbn3Q==}
- engines: {node: '>=8'}
- dependencies:
- map-age-cleaner: 0.1.3
- mimic-fn: 3.1.0
- dev: true
+ mdurl@2.0.0: {}
- /mem@8.1.1:
- resolution: {integrity: sha512-qFCFUDs7U3b8mBDPyz5EToEKoAkgCzqquIgi9nkkR9bixxOVOre+09lbuH7+9Kn2NFpm56M3GUWVbU2hQgdACA==}
- engines: {node: '>=10'}
- dependencies:
- map-age-cleaner: 0.1.3
- mimic-fn: 3.1.0
- dev: true
+ meow@12.1.1: {}
- /meow@12.1.1:
- resolution: {integrity: sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==}
- engines: {node: '>=16.10'}
- dev: true
+ meow@13.2.0: {}
- /merge-stream@2.0.0:
- resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
- dev: true
+ merge-stream@2.0.0: {}
- /merge2@1.4.1:
- resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
- engines: {node: '>= 8'}
- dev: true
+ merge2@1.4.1: {}
- /merge@2.1.1:
- resolution: {integrity: sha512-jz+Cfrg9GWOZbQAnDQ4hlVnQky+341Yk5ru8bZSe6sIDTCIg8n9i/u7hSQGSVOF3C7lH6mGtqjkiT9G4wFLL0w==}
- dev: true
+ merge@2.1.1: {}
- /micromark@2.11.4:
- resolution: {integrity: sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==}
+ micromark@2.11.4:
dependencies:
- debug: 4.3.4
+ debug: 4.3.6
parse-entities: 2.0.0
transitivePeerDependencies:
- supports-color
- dev: true
- /micromatch@4.0.5:
- resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==}
- engines: {node: '>=8.6'}
+ micromatch@4.0.7:
dependencies:
- braces: 3.0.2
+ braces: 3.0.3
picomatch: 2.3.1
- dev: true
- /mime@4.0.1:
- resolution: {integrity: sha512-5lZ5tyrIfliMXzFtkYyekWbtRXObT9OWa8IwQ5uxTBDHucNNwniRqo0yInflj+iYi5CBa6qxadGzGarDfuEOxA==}
- engines: {node: '>=16'}
- hasBin: true
- dev: true
+ mime@4.0.3: {}
- /mimic-fn@2.1.0:
- resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==}
- engines: {node: '>=6'}
- dev: true
+ mimic-fn@2.1.0: {}
- /mimic-fn@3.1.0:
- resolution: {integrity: sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==}
- engines: {node: '>=8'}
- dev: true
+ mimic-fn@4.0.0: {}
- /mimic-fn@4.0.0:
- resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==}
- engines: {node: '>=12'}
- dev: true
+ mimic-function@5.0.1: {}
- /min-indent@1.0.1:
- resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==}
- engines: {node: '>=4'}
- dev: true
+ min-indent@1.0.1: {}
- /minimatch@3.1.2:
- resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
+ minimatch@10.0.1:
dependencies:
- brace-expansion: 1.1.11
- dev: true
+ brace-expansion: 2.0.1
- /minimatch@5.1.6:
- resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==}
- engines: {node: '>=10'}
+ minimatch@3.1.2:
dependencies:
- brace-expansion: 2.0.1
- dev: true
+ brace-expansion: 1.1.11
- /minimatch@9.0.3:
- resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==}
- engines: {node: '>=16 || 14 >=14.17'}
+ minimatch@9.0.5:
dependencies:
brace-expansion: 2.0.1
- dev: true
- /minimist@1.2.7:
- resolution: {integrity: sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==}
- dev: true
+ minimist@1.2.7: {}
- /minimist@1.2.8:
- resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==}
- dev: true
+ minimist@1.2.8: {}
- /minipass@7.0.4:
- resolution: {integrity: sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==}
- engines: {node: '>=16 || 14 >=14.17'}
- dev: true
+ minipass@7.1.2: {}
- /ms@2.1.2:
- resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
- dev: true
+ mlly@1.7.1:
+ dependencies:
+ acorn: 8.12.1
+ pathe: 1.1.2
+ pkg-types: 1.1.3
+ ufo: 1.5.3
- /ms@2.1.3:
- resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
- dev: true
+ ms@2.1.2: {}
- /mute-stream@0.0.8:
- resolution: {integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==}
- dev: true
+ ms@2.1.3: {}
- /mz@2.7.0:
- resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==}
+ mute-stream@0.0.8: {}
+
+ mz@2.7.0:
dependencies:
any-promise: 1.3.0
object-assign: 4.1.1
thenify-all: 1.6.0
- dev: true
- /natural-compare@1.4.0:
- resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
- dev: true
+ nanoid@3.3.7: {}
- /ndjson@2.0.0:
- resolution: {integrity: sha512-nGl7LRGrzugTtaFcJMhLbpzJM6XdivmbkdlaGcrk/LXg2KL/YBC6z1g70xh0/al+oFuVFP8N8kiWRucmeEH/qQ==}
- engines: {node: '>=10'}
- hasBin: true
- dependencies:
- json-stringify-safe: 5.0.1
- minimist: 1.2.8
- readable-stream: 3.6.1
- split2: 3.2.2
- through2: 4.0.2
- dev: true
+ natural-compare@1.4.0: {}
- /neo-async@2.6.2:
- resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==}
- dev: true
+ neo-async@2.6.2: {}
- /nerf-dart@1.0.0:
- resolution: {integrity: sha512-EZSPZB70jiVsivaBLYDCyntd5eH8NTSMOn3rB+HxwdmKThGELLdYv8qVIMWvZEFy9w8ZZpW9h9OB32l1rGtj7g==}
- dev: true
+ nerf-dart@1.0.0: {}
- /node-emoji@2.1.3:
- resolution: {integrity: sha512-E2WEOVsgs7O16zsURJ/eH8BqhF029wGpEOnv7Urwdo2wmQanOACwJQh0devF9D9RhoZru0+9JXIS0dBXIAz+lA==}
- engines: {node: '>=18'}
+ node-emoji@2.1.3:
dependencies:
'@sindresorhus/is': 4.6.0
char-regex: 1.0.2
emojilib: 2.4.0
skin-tone: 2.0.0
- dev: true
-
- /node-fetch@3.0.0-beta.9:
- resolution: {integrity: sha512-RdbZCEynH2tH46+tj0ua9caUHVWrd/RHnRfvly2EVdqGmI3ndS1Vn/xjm5KuGejDt2RNDQsVRLPNd2QPwcewVg==}
- engines: {node: ^10.17 || >=12.3}
- dependencies:
- data-uri-to-buffer: 3.0.1
- fetch-blob: 2.1.2
- transitivePeerDependencies:
- - domexception
- dev: true
- /node-releases@2.0.14:
- resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==}
- dev: true
+ node-releases@2.0.14: {}
- /normalize-package-data@2.5.0:
- resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==}
+ normalize-package-data@2.5.0:
dependencies:
hosted-git-info: 2.8.9
- resolve: 1.22.4
- semver: 5.7.1
+ resolve: 1.22.8
+ semver: 5.7.2
validate-npm-package-license: 3.0.4
- dev: true
- /normalize-package-data@6.0.0:
- resolution: {integrity: sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==}
- engines: {node: ^16.14.0 || >=18.0.0}
+ normalize-package-data@6.0.1:
dependencies:
- hosted-git-info: 7.0.1
+ hosted-git-info: 7.0.2
is-core-module: 2.13.1
- semver: 7.6.0
+ semver: 7.6.3
validate-npm-package-license: 3.0.4
- dev: true
-
- /normalize-path@3.0.0:
- resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
- engines: {node: '>=0.10.0'}
- dev: true
-
- /normalize-url@8.0.0:
- resolution: {integrity: sha512-uVFpKhj5MheNBJRTiMZ9pE/7hD1QTeEvugSJW/OmLzAp78PB5O6adfMNTvmfKhXBkvCzC+rqifWcVYpGFwTjnw==}
- engines: {node: '>=14.16'}
- dev: true
-
- /npm-install-checks@6.3.0:
- resolution: {integrity: sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw==}
- engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
- dependencies:
- semver: 7.6.0
- dev: true
-
- /npm-normalize-package-bin@3.0.0:
- resolution: {integrity: sha512-g+DPQSkusnk7HYXr75NtzkIP4+N81i3RPsGFidF3DzHd9MT9wWngmqoeg/fnHFz5MNdtG4w03s+QnhewSLTT2Q==}
- engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
- dev: true
-
- /npm-package-arg@11.0.1:
- resolution: {integrity: sha512-M7s1BD4NxdAvBKUPqqRW957Xwcl/4Zvo8Aj+ANrzvIPzGJZElrH7Z//rSaec2ORcND6FHHLnZeY8qgTpXDMFQQ==}
- engines: {node: ^16.14.0 || >=18.0.0}
- dependencies:
- hosted-git-info: 7.0.1
- proc-log: 3.0.0
- semver: 7.6.0
- validate-npm-package-name: 5.0.0
- dev: true
- /npm-pick-manifest@9.0.0:
- resolution: {integrity: sha512-VfvRSs/b6n9ol4Qb+bDwNGUXutpy76x6MARw/XssevE0TnctIKcmklJZM5Z7nqs5z5aW+0S63pgCNbpkUNNXBg==}
- engines: {node: ^16.14.0 || >=18.0.0}
- dependencies:
- npm-install-checks: 6.3.0
- npm-normalize-package-bin: 3.0.0
- npm-package-arg: 11.0.1
- semver: 7.6.0
- dev: true
+ normalize-url@8.0.1: {}
- /npm-run-path@4.0.1:
- resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==}
- engines: {node: '>=8'}
+ npm-run-path@4.0.1:
dependencies:
path-key: 3.1.1
- dev: true
- /npm-run-path@5.1.0:
- resolution: {integrity: sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ npm-run-path@5.3.0:
dependencies:
path-key: 4.0.0
- dev: true
- /npm@10.5.0:
- resolution: {integrity: sha512-Ejxwvfh9YnWVU2yA5FzoYLTW52vxHCz+MHrOFg9Cc8IFgF/6f5AGPAvb5WTay5DIUP1NIfN3VBZ0cLlGO0Ys+A==}
- engines: {node: ^18.17.0 || >=20.5.0}
- hasBin: true
- dev: true
- bundledDependencies:
- - '@isaacs/string-locale-compare'
- - '@npmcli/arborist'
- - '@npmcli/config'
- - '@npmcli/fs'
- - '@npmcli/map-workspaces'
- - '@npmcli/package-json'
- - '@npmcli/promise-spawn'
- - '@npmcli/run-script'
- - '@sigstore/tuf'
- - abbrev
- - archy
- - cacache
- - chalk
- - ci-info
- - cli-columns
- - cli-table3
- - columnify
- - fastest-levenshtein
- - fs-minipass
- - glob
- - graceful-fs
- - hosted-git-info
- - ini
- - init-package-json
- - is-cidr
- - json-parse-even-better-errors
- - libnpmaccess
- - libnpmdiff
- - libnpmexec
- - libnpmfund
- - libnpmhook
- - libnpmorg
- - libnpmpack
- - libnpmpublish
- - libnpmsearch
- - libnpmteam
- - libnpmversion
- - make-fetch-happen
- - minimatch
- - minipass
- - minipass-pipeline
- - ms
- - node-gyp
- - nopt
- - normalize-package-data
- - npm-audit-report
- - npm-install-checks
- - npm-package-arg
- - npm-pick-manifest
- - npm-profile
- - npm-registry-fetch
- - npm-user-validate
- - npmlog
- - p-map
- - pacote
- - parse-conflict-json
- - proc-log
- - qrcode-terminal
- - read
- - semver
- - spdx-expression-parse
- - ssri
- - supports-color
- - tar
- - text-table
- - tiny-relative-date
- - treeverse
- - validate-npm-package-name
- - which
- - write-file-atomic
+ npm@10.8.1: {}
- /object-assign@4.1.1:
- resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
- engines: {node: '>=0.10.0'}
- dev: true
+ nth-check@2.1.1:
+ dependencies:
+ boolbase: 1.0.0
- /object-inspect@1.13.1:
- resolution: {integrity: sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==}
- dev: true
+ object-assign@4.1.1: {}
- /object-keys@1.1.1:
- resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==}
- engines: {node: '>= 0.4'}
- dev: true
+ object-inspect@1.13.1: {}
- /object-pairs@0.1.0:
- resolution: {integrity: sha512-3ECr6K831I4xX/Mduxr9UC+HPOz/d6WKKYj9p4cmC8Lg8p7g8gitzsxNX5IWlSIgFWN/a4JgrJaoAMKn20oKwA==}
- dev: true
+ object-keys@1.1.1: {}
- /object-values@1.0.0:
- resolution: {integrity: sha512-+8hwcz/JnQ9EpLIXzN0Rs7DLsBpJNT/xYehtB/jU93tHYr5BFEO8E+JGQNOSqE7opVzz5cGksKFHt7uUJVLSjQ==}
- engines: {node: '>=0.10.0'}
- dev: true
+ object-path@0.11.8: {}
- /object.assign@4.1.5:
- resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==}
- engines: {node: '>= 0.4'}
+ object.assign@4.1.5:
dependencies:
call-bind: 1.0.7
define-properties: 1.2.1
has-symbols: 1.0.3
object-keys: 1.1.1
- dev: true
-
- /object.fromentries@2.0.8:
- resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==}
- engines: {node: '>= 0.4'}
+
+ object.fromentries@2.0.8:
dependencies:
call-bind: 1.0.7
define-properties: 1.2.1
- es-abstract: 1.23.2
+ es-abstract: 1.23.3
es-object-atoms: 1.0.0
- dev: true
- /object.groupby@1.0.3:
- resolution: {integrity: sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==}
- engines: {node: '>= 0.4'}
+ object.groupby@1.0.3:
dependencies:
call-bind: 1.0.7
define-properties: 1.2.1
- es-abstract: 1.23.2
- dev: true
+ es-abstract: 1.23.3
- /object.values@1.2.0:
- resolution: {integrity: sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==}
- engines: {node: '>= 0.4'}
+ object.values@1.2.0:
dependencies:
call-bind: 1.0.7
define-properties: 1.2.1
es-object-atoms: 1.0.0
- dev: true
- /once@1.4.0:
- resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
+ ohash@1.1.3: {}
+
+ once@1.4.0:
dependencies:
wrappy: 1.0.2
- dev: true
- /onetime@5.1.2:
- resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==}
- engines: {node: '>=6'}
+ onetime@5.1.2:
dependencies:
mimic-fn: 2.1.0
- dev: true
- /onetime@6.0.0:
- resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==}
- engines: {node: '>=12'}
+ onetime@6.0.0:
dependencies:
mimic-fn: 4.0.0
- dev: true
- /optionator@0.9.3:
- resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==}
- engines: {node: '>= 0.8.0'}
+ onetime@7.0.0:
+ dependencies:
+ mimic-function: 5.0.1
+
+ optionator@0.9.4:
dependencies:
- '@aashutoshrathi/word-wrap': 1.2.6
deep-is: 0.1.4
fast-levenshtein: 2.0.6
levn: 0.4.1
prelude-ls: 1.2.1
type-check: 0.4.0
- dev: true
+ word-wrap: 1.2.5
- /ora@5.4.1:
- resolution: {integrity: sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==}
- engines: {node: '>=10'}
+ ora@5.4.1:
dependencies:
bl: 4.1.0
chalk: 4.1.2
cli-cursor: 3.1.0
- cli-spinners: 2.7.0
+ cli-spinners: 2.9.2
is-interactive: 1.0.0
is-unicode-supported: 0.1.0
log-symbols: 4.1.0
strip-ansi: 6.0.1
wcwidth: 1.0.1
- dev: true
- /os-tmpdir@1.0.2:
- resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==}
- engines: {node: '>=0.10.0'}
- dev: true
-
- /p-defer@1.0.0:
- resolution: {integrity: sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw==}
- engines: {node: '>=4'}
- dev: true
+ os-tmpdir@1.0.2: {}
- /p-each-series@3.0.0:
- resolution: {integrity: sha512-lastgtAdoH9YaLyDa5i5z64q+kzOcQHsQ5SsZJD3q0VEyI8mq872S3geuNbRUQLVAE9siMfgKrpj7MloKFHruw==}
- engines: {node: '>=12'}
- dev: true
+ p-each-series@3.0.0: {}
- /p-filter@4.1.0:
- resolution: {integrity: sha512-37/tPdZ3oJwHaS3gNJdenCDB3Tz26i9sjhnguBtvN0vYlRIiDNnvTWkuh+0hETV9rLPdJ3rlL3yVOYPIAnM8rw==}
- engines: {node: '>=18'}
+ p-filter@4.1.0:
dependencies:
- p-map: 7.0.1
- dev: true
+ p-map: 7.0.2
- /p-is-promise@3.0.0:
- resolution: {integrity: sha512-Wo8VsW4IRQSKVXsJCn7TomUaVtyfjVDn3nUP7kE967BQk0CwFpdbZs0X0uk5sW9mkBa9eNM7hCMaG93WUAwxYQ==}
- engines: {node: '>=8'}
- dev: true
+ p-is-promise@3.0.0: {}
- /p-limit@1.3.0:
- resolution: {integrity: sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==}
- engines: {node: '>=4'}
+ p-limit@1.3.0:
dependencies:
p-try: 1.0.0
- dev: true
- /p-limit@2.3.0:
- resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==}
- engines: {node: '>=6'}
+ p-limit@2.3.0:
dependencies:
p-try: 2.2.0
- dev: true
- /p-limit@3.1.0:
- resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
- engines: {node: '>=10'}
+ p-limit@3.1.0:
dependencies:
yocto-queue: 0.1.0
- dev: true
- /p-limit@4.0.0:
- resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ p-limit@4.0.0:
dependencies:
yocto-queue: 1.0.0
- dev: true
- /p-locate@2.0.0:
- resolution: {integrity: sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==}
- engines: {node: '>=4'}
+ p-locate@2.0.0:
dependencies:
p-limit: 1.3.0
- dev: true
- /p-locate@4.1.0:
- resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==}
- engines: {node: '>=8'}
+ p-locate@4.1.0:
dependencies:
p-limit: 2.3.0
- dev: true
- /p-locate@5.0.0:
- resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
- engines: {node: '>=10'}
+ p-locate@5.0.0:
dependencies:
p-limit: 3.1.0
- dev: true
- /p-locate@6.0.0:
- resolution: {integrity: sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ p-locate@6.0.0:
dependencies:
p-limit: 4.0.0
- dev: true
- /p-map@4.0.0:
- resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==}
- engines: {node: '>=10'}
+ p-map@4.0.0:
dependencies:
aggregate-error: 3.1.0
- dev: true
- /p-map@7.0.1:
- resolution: {integrity: sha512-2wnaR0XL/FDOj+TgpDuRb2KTjLnu3Fma6b1ZUwGY7LcqenMcvP/YFpjpbPKY6WVGsbuJZRuoUz8iPrt8ORnAFw==}
- engines: {node: '>=18'}
- dev: true
+ p-map@7.0.2: {}
- /p-memoize@4.0.1:
- resolution: {integrity: sha512-km0sP12uE0dOZ5qP+s7kGVf07QngxyG0gS8sYFvFWhqlgzOsSy+m71aUejf/0akxj5W7gE//2G74qTv6b4iMog==}
- engines: {node: '>=10'}
- dependencies:
- mem: 6.1.1
- mimic-fn: 3.1.0
- dev: true
+ p-reduce@2.1.0: {}
- /p-reduce@2.1.0:
- resolution: {integrity: sha512-2USApvnsutq8uoxZBGbbWM0JIYLiEMJ9RlaN7fAzVNb9OZN0SHjjTTfIcb667XynS5Y1VhwDJVDa72TnPzAYWw==}
- engines: {node: '>=8'}
- dev: true
+ p-reduce@3.0.0: {}
- /p-reduce@3.0.0:
- resolution: {integrity: sha512-xsrIUgI0Kn6iyDYm9StOpOeK29XM1aboGji26+QEortiFST1hGZaUQOLhtEbqHErPpGW/aSz6allwK2qcptp0Q==}
- engines: {node: '>=12'}
- dev: true
+ p-try@1.0.0: {}
- /p-try@1.0.0:
- resolution: {integrity: sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==}
- engines: {node: '>=4'}
- dev: true
+ p-try@2.2.0: {}
- /p-try@2.2.0:
- resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==}
- engines: {node: '>=6'}
- dev: true
+ package-json-from-dist@1.0.0: {}
- /parent-module@1.0.1:
- resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
- engines: {node: '>=6'}
+ parent-module@1.0.1:
dependencies:
callsites: 3.1.0
- dev: true
- /parent-module@2.0.0:
- resolution: {integrity: sha512-uo0Z9JJeWzv8BG+tRcapBKNJ0dro9cLyczGzulS6EfeyAdeC9sbojtW6XwvYxJkEne9En+J2XEl4zyglVeIwFg==}
- engines: {node: '>=8'}
+ parent-module@2.0.0:
dependencies:
callsites: 3.1.0
- dev: true
- /parse-entities@2.0.0:
- resolution: {integrity: sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==}
+ parse-entities@2.0.0:
dependencies:
character-entities: 1.2.4
character-entities-legacy: 1.1.4
@@ -5494,326 +7688,176 @@ packages:
is-alphanumerical: 1.0.4
is-decimal: 1.0.4
is-hexadecimal: 1.0.4
- dev: true
- /parse-json@4.0.0:
- resolution: {integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==}
- engines: {node: '>=4'}
+ parse-imports@2.1.1:
+ dependencies:
+ es-module-lexer: 1.5.4
+ slashes: 3.0.12
+
+ parse-json@4.0.0:
dependencies:
error-ex: 1.3.2
json-parse-better-errors: 1.0.2
- dev: true
- /parse-json@5.2.0:
- resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}
- engines: {node: '>=8'}
+ parse-json@5.2.0:
dependencies:
- '@babel/code-frame': 7.24.2
+ '@babel/code-frame': 7.24.7
error-ex: 1.3.2
json-parse-even-better-errors: 2.3.1
lines-and-columns: 1.2.4
- dev: true
- /parse-json@8.1.0:
- resolution: {integrity: sha512-rum1bPifK5SSar35Z6EKZuYPJx85pkNaFrxBK3mwdfSJ1/WKbYrjoW/zTPSjRRamfmVX1ACBIdFAO0VRErW/EA==}
- engines: {node: '>=18'}
+ parse-json@8.1.0:
dependencies:
- '@babel/code-frame': 7.24.2
+ '@babel/code-frame': 7.24.7
index-to-position: 0.1.2
- type-fest: 4.14.0
- dev: true
+ type-fest: 4.20.0
- /parse-ms@4.0.0:
- resolution: {integrity: sha512-TXfryirbmq34y8QBwgqCVLi+8oA3oWx2eAnSn62ITyEhEYaWRlVZ2DvMM9eZbMs/RfxPu/PK/aBLyGj4IrqMHw==}
- engines: {node: '>=18'}
- dev: true
-
- /parse-npm-tarball-url@3.0.0:
- resolution: {integrity: sha512-InpdgIdNe5xWMEUcrVQUniQKwnggBtJ7+SCwh7zQAZwbbIYZV9XdgJyhtmDSSvykFyQXoe4BINnzKTfCwWLs5g==}
- engines: {node: '>=8.15'}
- dependencies:
- semver: 6.3.1
- dev: true
+ parse-ms@4.0.0: {}
- /parse-passwd@1.0.0:
- resolution: {integrity: sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==}
- engines: {node: '>=0.10.0'}
- dev: true
+ parse-passwd@1.0.0: {}
- /parse5-htmlparser2-tree-adapter@6.0.1:
- resolution: {integrity: sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==}
+ parse5-htmlparser2-tree-adapter@6.0.1:
dependencies:
parse5: 6.0.1
- dev: true
- /parse5@5.1.1:
- resolution: {integrity: sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==}
- dev: true
+ parse5@5.1.1: {}
- /parse5@6.0.1:
- resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==}
- dev: true
+ parse5@6.0.1: {}
- /path-exists@3.0.0:
- resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==}
- engines: {node: '>=4'}
- dev: true
+ parse5@7.1.2:
+ dependencies:
+ entities: 4.5.0
- /path-exists@4.0.0:
- resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
- engines: {node: '>=8'}
- dev: true
+ path-exists@3.0.0: {}
- /path-exists@5.0.0:
- resolution: {integrity: sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
- dev: true
+ path-exists@4.0.0: {}
- /path-is-absolute@1.0.1:
- resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
- engines: {node: '>=0.10.0'}
- dev: true
+ path-exists@5.0.0: {}
- /path-key@3.1.1:
- resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
- engines: {node: '>=8'}
- dev: true
+ path-is-absolute@1.0.1: {}
- /path-key@4.0.0:
- resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==}
- engines: {node: '>=12'}
- dev: true
+ path-key@3.1.1: {}
- /path-parse@1.0.7:
- resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
- dev: true
+ path-key@4.0.0: {}
- /path-scurry@1.10.1:
- resolution: {integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==}
- engines: {node: '>=16 || 14 >=14.17'}
- dependencies:
- lru-cache: 10.2.0
- minipass: 7.0.4
- dev: true
+ path-parse@1.0.7: {}
- /path-temp@2.1.0:
- resolution: {integrity: sha512-cMMJTAZlion/RWRRC48UbrDymEIt+/YSD/l8NqjneyDw2rDOBQcP5yRkMB4CYGn47KMhZvbblBP7Z79OsMw72w==}
- engines: {node: '>=8.15'}
+ path-scurry@1.11.1:
dependencies:
- unique-string: 2.0.0
- dev: true
+ lru-cache: 10.2.2
+ minipass: 7.1.2
- /path-type@3.0.0:
- resolution: {integrity: sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==}
- engines: {node: '>=4'}
+ path-scurry@2.0.0:
dependencies:
- pify: 3.0.0
- dev: true
+ lru-cache: 11.0.0
+ minipass: 7.1.2
- /path-type@4.0.0:
- resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
- engines: {node: '>=8'}
- dev: true
+ path-type@4.0.0: {}
- /path-type@5.0.0:
- resolution: {integrity: sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg==}
- engines: {node: '>=12'}
- dev: true
+ path-type@5.0.0: {}
- /picocolors@1.0.0:
- resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==}
- dev: true
+ pathe@1.1.2: {}
- /picomatch@2.3.1:
- resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
- engines: {node: '>=8.6'}
- dev: true
+ picocolors@1.0.1: {}
- /picomatch@4.0.1:
- resolution: {integrity: sha512-xUXwsxNjwTQ8K3GnT4pCJm+xq3RUPQbmkYJTP5aFIfNIvbcc/4MUxgBaaRSZJ6yGJZiGSyYlM6MzwTsRk8SYCg==}
- engines: {node: '>=12'}
- dev: true
+ picomatch@2.3.1: {}
- /pidtree@0.6.0:
- resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==}
- engines: {node: '>=0.10'}
- hasBin: true
- dev: true
+ picomatch@4.0.2: {}
- /pify@3.0.0:
- resolution: {integrity: sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==}
- engines: {node: '>=4'}
- dev: true
+ pidtree@0.6.0: {}
- /pkg-conf@2.1.0:
- resolution: {integrity: sha512-C+VUP+8jis7EsQZIhDYmS5qlNtjv2yP4SNtjXK9AP1ZcTRlnSfuumaTnRfYZnYgUUYVIKqL0fRvmUGDV2fmp6g==}
- engines: {node: '>=4'}
+ pify@3.0.0: {}
+
+ pkg-conf@2.1.0:
dependencies:
find-up: 2.1.0
load-json-file: 4.0.0
- dev: true
- /pluralize@8.0.0:
- resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==}
- engines: {node: '>=4'}
- dev: true
+ pkg-types@1.1.3:
+ dependencies:
+ confbox: 0.1.7
+ mlly: 1.7.1
+ pathe: 1.1.2
- /possible-typed-array-names@1.0.0:
- resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==}
- engines: {node: '>= 0.4'}
- dev: true
+ pluralize@8.0.0: {}
- /prelude-ls@1.2.1:
- resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==}
- engines: {node: '>= 0.8.0'}
- dev: true
+ possible-typed-array-names@1.0.0: {}
- /prettier-linter-helpers@1.0.0:
- resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==}
- engines: {node: '>=6.0.0'}
+ postcss-selector-parser@6.1.0:
dependencies:
- fast-diff: 1.2.0
- dev: true
+ cssesc: 3.0.0
+ util-deprecate: 1.0.2
- /prettier-plugin-packagejson@2.4.12(prettier@3.2.5):
- resolution: {integrity: sha512-hifuuOgw5rHHTdouw9VrhT8+Nd7UwxtL1qco8dUfd4XUFQL6ia3xyjSxhPQTsGnSYFraTWy5Omb+MZm/OWDTpQ==}
- peerDependencies:
- prettier: '>= 1.16.0'
- peerDependenciesMeta:
- prettier:
- optional: true
+ postcss@8.4.38:
dependencies:
- prettier: 3.2.5
- sort-package-json: 2.8.0
- synckit: 0.9.0
- dev: true
+ nanoid: 3.3.7
+ picocolors: 1.0.1
+ source-map-js: 1.2.0
- /prettier@3.2.5:
- resolution: {integrity: sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==}
- engines: {node: '>=14'}
- hasBin: true
- dev: true
+ prelude-ls@1.2.1: {}
- /pretty-ms@9.0.0:
- resolution: {integrity: sha512-E9e9HJ9R9NasGOgPaPE8VMeiPKAyWR5jcFpNnwIejslIhWqdqOrb2wShBsncMPUb+BcCd2OPYfh7p2W6oemTng==}
- engines: {node: '>=18'}
+ prettier-linter-helpers@1.0.0:
dependencies:
- parse-ms: 4.0.0
- dev: true
+ fast-diff: 1.3.0
- /proc-log@3.0.0:
- resolution: {integrity: sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==}
- engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
- dev: true
-
- /process-nextick-args@2.0.1:
- resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==}
- dev: true
+ prettier-plugin-packagejson@2.5.1(prettier@3.3.3):
+ dependencies:
+ sort-package-json: 2.10.0
+ synckit: 0.9.1
+ optionalDependencies:
+ prettier: 3.3.3
- /promise-inflight@1.0.1:
- resolution: {integrity: sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==}
- peerDependencies:
- bluebird: '*'
- peerDependenciesMeta:
- bluebird:
- optional: true
- dev: true
+ prettier@3.3.3: {}
- /promise-retry@2.0.1:
- resolution: {integrity: sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==}
- engines: {node: '>=10'}
+ pretty-ms@9.0.0:
dependencies:
- err-code: 2.0.3
- retry: 0.12.0
- dev: true
+ parse-ms: 4.0.0
- /proto-list@1.2.4:
- resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==}
- dev: true
+ process-nextick-args@2.0.1: {}
- /punycode.js@2.3.1:
- resolution: {integrity: sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==}
- engines: {node: '>=6'}
- dev: true
+ proto-list@1.2.4: {}
- /punycode@2.3.0:
- resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==}
- engines: {node: '>=6'}
- dev: true
+ punycode.js@2.3.1: {}
- /queue-microtask@1.2.3:
- resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
- dev: true
+ punycode@2.3.1: {}
- /rc@1.2.8:
- resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==}
- hasBin: true
+ queue-microtask@1.2.3: {}
+
+ rc@1.2.8:
dependencies:
deep-extend: 0.6.0
ini: 1.3.8
minimist: 1.2.8
strip-json-comments: 2.0.1
- dev: true
-
- /read-package-json-fast@3.0.2:
- resolution: {integrity: sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==}
- engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
- dependencies:
- json-parse-even-better-errors: 3.0.0
- npm-normalize-package-bin: 3.0.0
- dev: true
- /read-pkg-up@11.0.0:
- resolution: {integrity: sha512-LOVbvF1Q0SZdjClSefZ0Nz5z8u+tIE7mV5NibzmE9VYmDe9CaBbAVtz1veOSZbofrdsilxuDAYnFenukZVp8/Q==}
- engines: {node: '>=18'}
- deprecated: Renamed to read-package-up
+ read-package-up@11.0.0:
dependencies:
find-up-simple: 1.0.0
read-pkg: 9.0.1
- type-fest: 4.14.0
- dev: true
+ type-fest: 4.20.0
- /read-pkg-up@7.0.1:
- resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==}
- engines: {node: '>=8'}
+ read-pkg-up@7.0.1:
dependencies:
find-up: 4.1.0
read-pkg: 5.2.0
type-fest: 0.8.1
- dev: true
-
- /read-pkg@3.0.0:
- resolution: {integrity: sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==}
- engines: {node: '>=4'}
- dependencies:
- load-json-file: 4.0.0
- normalize-package-data: 2.5.0
- path-type: 3.0.0
- dev: true
- /read-pkg@5.2.0:
- resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==}
- engines: {node: '>=8'}
+ read-pkg@5.2.0:
dependencies:
'@types/normalize-package-data': 2.4.4
normalize-package-data: 2.5.0
parse-json: 5.2.0
type-fest: 0.6.0
- dev: true
- /read-pkg@9.0.1:
- resolution: {integrity: sha512-9viLL4/n1BJUCT1NXVTdS1jtm80yDEgR5T4yCelII49Mbj0v1rZdKqj7zCiYdbB0CuCgdrvHcNogAKTFPBocFA==}
- engines: {node: '>=18'}
+ read-pkg@9.0.1:
dependencies:
'@types/normalize-package-data': 2.4.4
- normalize-package-data: 6.0.0
+ normalize-package-data: 6.0.1
parse-json: 8.1.0
- type-fest: 4.14.0
+ type-fest: 4.20.0
unicorn-magic: 0.1.0
- dev: true
- /readable-stream@2.3.8:
- resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==}
+ readable-stream@2.3.8:
dependencies:
core-util-is: 1.0.3
inherits: 2.0.4
@@ -5822,320 +7866,212 @@ packages:
safe-buffer: 5.1.2
string_decoder: 1.1.1
util-deprecate: 1.0.2
- dev: true
- /readable-stream@3.6.1:
- resolution: {integrity: sha512-+rQmrWMYGA90yenhTYsLWAsLsqVC8osOw6PKE1HDYiO0gdPeKe/xDHNzIAIn4C91YQ6oenEhfYqqc1883qHbjQ==}
- engines: {node: '>= 6'}
+ readable-stream@3.6.2:
dependencies:
inherits: 2.0.4
string_decoder: 1.3.0
util-deprecate: 1.0.2
- dev: true
- /regexp-tree@0.1.27:
- resolution: {integrity: sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==}
- hasBin: true
- dev: true
+ refa@0.12.1:
+ dependencies:
+ '@eslint-community/regexpp': 4.11.0
- /regexp.prototype.flags@1.5.2:
- resolution: {integrity: sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==}
- engines: {node: '>= 0.4'}
+ regenerator-runtime@0.14.1: {}
+
+ regexp-ast-analysis@0.7.1:
+ dependencies:
+ '@eslint-community/regexpp': 4.11.0
+ refa: 0.12.1
+
+ regexp-tree@0.1.27: {}
+
+ regexp.prototype.flags@1.5.2:
dependencies:
call-bind: 1.0.7
define-properties: 1.2.1
es-errors: 1.3.0
set-function-name: 2.0.2
- dev: true
- /registry-auth-token@5.0.2:
- resolution: {integrity: sha512-o/3ikDxtXaA59BmZuZrJZDJv8NMDGSj+6j6XaeBmHw8eY1i1qd9+6H+LjVvQXx3HN6aRCGa1cUdJ9RaJZUugnQ==}
- engines: {node: '>=14'}
+ registry-auth-token@5.0.2:
dependencies:
- '@pnpm/npm-conf': 2.1.0
- dev: true
+ '@pnpm/npm-conf': 2.2.2
- /regjsparser@0.10.0:
- resolution: {integrity: sha512-qx+xQGZVsy55CH0a1hiVwHmqjLryfh7wQyF5HO07XJ9f7dQMY/gPQHhlyDkIzJKC+x2fUCpCcUODUUUFrm7SHA==}
- hasBin: true
+ regjsparser@0.10.0:
dependencies:
jsesc: 0.5.0
- dev: true
- /rename-overwrite@5.0.0:
- resolution: {integrity: sha512-vSxE5Ww7Jnyotvaxi3Dj0vOMoojH8KMkBfs9xYeW/qNfJiLTcC1fmwTjrbGUq3mQSOCxkG0DbdcvwTUrpvBN4w==}
- engines: {node: '>=12.10'}
- dependencies:
- '@zkochan/rimraf': 2.1.3
- fs-extra: 10.1.0
- dev: true
-
- /repeat-string@1.6.1:
- resolution: {integrity: sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==}
- engines: {node: '>=0.10'}
- dev: true
+ repeat-string@1.6.1: {}
- /require-directory@2.1.1:
- resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}
- engines: {node: '>=0.10.0'}
- dev: true
+ require-directory@2.1.1: {}
- /require-from-string@2.0.2:
- resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==}
- engines: {node: '>=0.10.0'}
- dev: true
+ require-from-string@2.0.2: {}
- /resolve-dir@1.0.1:
- resolution: {integrity: sha512-R7uiTjECzvOsWSfdM0QKFNBVFcK27aHOUwdvK53BcW8zqnGdYp0Fbj82cy54+2A4P2tFM22J5kRfe1R+lM/1yg==}
- engines: {node: '>=0.10.0'}
+ resolve-dir@1.0.1:
dependencies:
expand-tilde: 2.0.2
global-modules: 1.0.0
- dev: true
- /resolve-from@4.0.0:
- resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
- engines: {node: '>=4'}
- dev: true
+ resolve-from@4.0.0: {}
- /resolve-from@5.0.0:
- resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==}
- engines: {node: '>=8'}
- dev: true
+ resolve-from@5.0.0: {}
- /resolve-pkg-maps@1.0.0:
- resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==}
- dev: true
+ resolve-pkg-maps@1.0.0: {}
- /resolve@1.22.4:
- resolution: {integrity: sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==}
- hasBin: true
+ resolve@1.22.8:
dependencies:
is-core-module: 2.13.1
path-parse: 1.0.7
supports-preserve-symlinks-flag: 1.0.0
- dev: true
- /restore-cursor@3.1.0:
- resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==}
- engines: {node: '>=8'}
+ restore-cursor@3.1.0:
dependencies:
onetime: 5.1.2
signal-exit: 3.0.7
- dev: true
- /restore-cursor@4.0.0:
- resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ restore-cursor@5.1.0:
dependencies:
- onetime: 5.1.2
- signal-exit: 3.0.7
- dev: true
-
- /retry@0.12.0:
- resolution: {integrity: sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==}
- engines: {node: '>= 4'}
- dev: true
-
- /reusify@1.0.4:
- resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==}
- engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
- dev: true
-
- /reverse-arguments@1.0.0:
- resolution: {integrity: sha512-/x8uIPdTafBqakK0TmPNJzgkLP+3H+yxpUJhCQHsLBg1rYEVNR2D8BRYNWQhVBjyOd7oo1dZRVzIkwMY2oqfYQ==}
- dev: true
+ onetime: 7.0.0
+ signal-exit: 4.1.0
- /rfdc@1.3.0:
- resolution: {integrity: sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==}
- dev: true
+ reusify@1.0.4: {}
- /rimraf@3.0.2:
- resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==}
- deprecated: Rimraf versions prior to v4 are no longer supported
- hasBin: true
- dependencies:
- glob: 7.2.3
- dev: true
+ rfdc@1.4.1: {}
- /rimraf@5.0.5:
- resolution: {integrity: sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==}
- engines: {node: '>=14'}
- hasBin: true
+ rimraf@6.0.1:
dependencies:
- glob: 10.3.10
- dev: true
+ glob: 11.0.0
+ package-json-from-dist: 1.0.0
- /rollup-plugin-auto-external@2.0.0(rollup@4.13.0):
- resolution: {integrity: sha512-HQM3ZkZYfSam1uoZtAB9sK26EiAsfs1phrkf91c/YX+S07wugyRXSigBxrIwiLr5EPPilKYmoMxsrnlGBsXnuQ==}
- engines: {node: '>=6'}
- peerDependencies:
- rollup: '>=0.45.2'
+ rollup-plugin-ts@3.4.5(@babel/runtime@7.24.7)(rollup@4.20.0)(typescript@5.4.5):
dependencies:
- builtins: 2.0.1
- read-pkg: 3.0.0
- rollup: 4.13.0
- safe-resolve: 1.0.0
- semver: 5.7.1
- dev: true
+ '@rollup/pluginutils': 5.1.0(rollup@4.20.0)
+ '@wessberg/stringutil': 1.0.19
+ ansi-colors: 4.1.3
+ browserslist: 4.23.1
+ browserslist-generator: 2.1.0
+ compatfactory: 3.0.0(typescript@5.4.5)
+ crosspath: 2.0.0
+ magic-string: 0.30.11
+ rollup: 4.20.0
+ ts-clone-node: 3.0.0(typescript@5.4.5)
+ tslib: 2.6.3
+ typescript: 5.4.5
+ optionalDependencies:
+ '@babel/runtime': 7.24.7
- /rollup@4.13.0:
- resolution: {integrity: sha512-3YegKemjoQnYKmsBlOHfMLVPPA5xLkQ8MHLLSw/fBrFaVkEayL51DilPpNNLq1exr98F2B1TzrV0FUlN3gWRPg==}
- engines: {node: '>=18.0.0', npm: '>=8.0.0'}
- hasBin: true
+ rollup@4.20.0:
dependencies:
'@types/estree': 1.0.5
optionalDependencies:
- '@rollup/rollup-android-arm-eabi': 4.13.0
- '@rollup/rollup-android-arm64': 4.13.0
- '@rollup/rollup-darwin-arm64': 4.13.0
- '@rollup/rollup-darwin-x64': 4.13.0
- '@rollup/rollup-linux-arm-gnueabihf': 4.13.0
- '@rollup/rollup-linux-arm64-gnu': 4.13.0
- '@rollup/rollup-linux-arm64-musl': 4.13.0
- '@rollup/rollup-linux-riscv64-gnu': 4.13.0
- '@rollup/rollup-linux-x64-gnu': 4.13.0
- '@rollup/rollup-linux-x64-musl': 4.13.0
- '@rollup/rollup-win32-arm64-msvc': 4.13.0
- '@rollup/rollup-win32-ia32-msvc': 4.13.0
- '@rollup/rollup-win32-x64-msvc': 4.13.0
- fsevents: 2.3.2
- dev: true
-
- /run-async@2.4.1:
- resolution: {integrity: sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==}
- engines: {node: '>=0.12.0'}
- dev: true
-
- /run-con@1.3.2:
- resolution: {integrity: sha512-CcfE+mYiTcKEzg0IqS08+efdnH0oJ3zV0wSUFBNrMHMuxCtXvBCLzCJHatwuXDcu/RlhjTziTo/a1ruQik6/Yg==}
- hasBin: true
+ '@rollup/rollup-android-arm-eabi': 4.20.0
+ '@rollup/rollup-android-arm64': 4.20.0
+ '@rollup/rollup-darwin-arm64': 4.20.0
+ '@rollup/rollup-darwin-x64': 4.20.0
+ '@rollup/rollup-linux-arm-gnueabihf': 4.20.0
+ '@rollup/rollup-linux-arm-musleabihf': 4.20.0
+ '@rollup/rollup-linux-arm64-gnu': 4.20.0
+ '@rollup/rollup-linux-arm64-musl': 4.20.0
+ '@rollup/rollup-linux-powerpc64le-gnu': 4.20.0
+ '@rollup/rollup-linux-riscv64-gnu': 4.20.0
+ '@rollup/rollup-linux-s390x-gnu': 4.20.0
+ '@rollup/rollup-linux-x64-gnu': 4.20.0
+ '@rollup/rollup-linux-x64-musl': 4.20.0
+ '@rollup/rollup-win32-arm64-msvc': 4.20.0
+ '@rollup/rollup-win32-ia32-msvc': 4.20.0
+ '@rollup/rollup-win32-x64-msvc': 4.20.0
+ fsevents: 2.3.3
+
+ run-async@2.4.1: {}
+
+ run-con@1.3.2:
dependencies:
deep-extend: 0.6.0
- ini: 4.1.2
+ ini: 4.1.3
minimist: 1.2.8
strip-json-comments: 3.1.1
- dev: true
- /run-parallel@1.2.0:
- resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
+ run-parallel@1.2.0:
dependencies:
queue-microtask: 1.2.3
- dev: true
- /rxjs@7.8.0:
- resolution: {integrity: sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==}
+ rxjs@7.8.1:
dependencies:
- tslib: 2.6.2
- dev: true
+ tslib: 2.6.3
- /safe-array-concat@1.1.2:
- resolution: {integrity: sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==}
- engines: {node: '>=0.4'}
+ safe-array-concat@1.1.2:
dependencies:
call-bind: 1.0.7
get-intrinsic: 1.2.4
has-symbols: 1.0.3
isarray: 2.0.5
- dev: true
- /safe-buffer@5.1.2:
- resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==}
- dev: true
+ safe-buffer@5.1.2: {}
- /safe-buffer@5.2.1:
- resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
- dev: true
+ safe-buffer@5.2.1: {}
- /safe-regex-test@1.0.3:
- resolution: {integrity: sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==}
- engines: {node: '>= 0.4'}
+ safe-regex-test@1.0.3:
dependencies:
call-bind: 1.0.7
es-errors: 1.3.0
is-regex: 1.1.4
- dev: true
- /safe-resolve@1.0.0:
- resolution: {integrity: sha512-aQpRvfxoi1y0UxKEU0tNO327kb0/LMo8Xrk64M2u172UqOOLCCM0khxN2OTClDiTqTJz5864GMD1X92j4YiHTg==}
- dev: true
+ safer-buffer@2.1.2: {}
- /safer-buffer@2.1.2:
- resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
- dev: true
+ scslre@0.3.0:
+ dependencies:
+ '@eslint-community/regexpp': 4.11.0
+ refa: 0.12.1
+ regexp-ast-analysis: 0.7.1
- /semantic-release@23.0.6(typescript@5.4.3):
- resolution: {integrity: sha512-/r62F4PNhJZhyZYMobcpcACGwpFNQyaVcSmqZQXG50GMbHSBVZQLCvwafqxO1lDQKVgmGmyCEtOVYzwvzvyhVw==}
- engines: {node: '>=20.8.1'}
- hasBin: true
+ semantic-release@24.0.0(typescript@5.4.5):
dependencies:
- '@semantic-release/commit-analyzer': 12.0.0(semantic-release@23.0.6)
+ '@semantic-release/commit-analyzer': 13.0.0(semantic-release@24.0.0(typescript@5.4.5))
'@semantic-release/error': 4.0.0
- '@semantic-release/github': 10.0.2(semantic-release@23.0.6)
- '@semantic-release/npm': 12.0.0(semantic-release@23.0.6)
- '@semantic-release/release-notes-generator': 13.0.0(semantic-release@23.0.6)
+ '@semantic-release/github': 10.1.3(semantic-release@24.0.0(typescript@5.4.5))
+ '@semantic-release/npm': 12.0.1(semantic-release@24.0.0(typescript@5.4.5))
+ '@semantic-release/release-notes-generator': 14.0.1(semantic-release@24.0.0(typescript@5.4.5))
aggregate-error: 5.0.0
- cosmiconfig: 9.0.0(typescript@5.4.3)
- debug: 4.3.4
+ cosmiconfig: 9.0.0(typescript@5.4.5)
+ debug: 4.3.6
env-ci: 11.0.0
- execa: 8.0.1
+ execa: 9.2.0
figures: 6.1.0
- find-versions: 5.1.0
+ find-versions: 6.0.0
get-stream: 6.0.1
git-log-parser: 1.2.0
hook-std: 3.0.0
- hosted-git-info: 7.0.1
- import-from-esm: 1.3.3
+ hosted-git-info: 7.0.2
+ import-from-esm: 1.3.4
lodash-es: 4.17.21
- marked: 12.0.1
- marked-terminal: 7.0.0(marked@12.0.1)
- micromatch: 4.0.5
+ marked: 12.0.2
+ marked-terminal: 7.0.0(marked@12.0.2)
+ micromatch: 4.0.7
p-each-series: 3.0.0
p-reduce: 3.0.0
- read-pkg-up: 11.0.0
+ read-package-up: 11.0.0
resolve-from: 5.0.0
- semver: 7.6.0
+ semver: 7.6.3
semver-diff: 4.0.0
signale: 1.4.0
- yargs: 17.7.1
+ yargs: 17.7.2
transitivePeerDependencies:
- supports-color
- typescript
- dev: true
- /semver-diff@4.0.0:
- resolution: {integrity: sha512-0Ju4+6A8iOnpL/Thra7dZsSlOHYAHIeMxfhWQRI1/VLcT3WDBZKKtQt/QkBOsiIN9ZpuvHE6cGZ0x4glCMmfiA==}
- engines: {node: '>=12'}
+ semver-diff@4.0.0:
dependencies:
- semver: 7.6.0
- dev: true
+ semver: 7.6.3
- /semver-regex@4.0.5:
- resolution: {integrity: sha512-hunMQrEy1T6Jr2uEVjrAIqjwWcQTgOAcIM52C8MY1EZSD3DDNft04XzvYKPqjED65bNVVko0YI38nYeEHCX3yw==}
- engines: {node: '>=12'}
- dev: true
+ semver-regex@4.0.5: {}
- /semver@5.7.1:
- resolution: {integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==}
- hasBin: true
- dev: true
+ semver@5.7.2: {}
- /semver@6.3.1:
- resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==}
- hasBin: true
- dev: true
+ semver@6.3.1: {}
- /semver@7.6.0:
- resolution: {integrity: sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==}
- engines: {node: '>=10'}
- hasBin: true
- dependencies:
- lru-cache: 6.0.0
- dev: true
+ semver@7.6.3: {}
- /set-function-length@1.2.2:
- resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==}
- engines: {node: '>= 0.4'}
+ set-function-length@1.2.2:
dependencies:
define-data-property: 1.1.4
es-errors: 1.3.0
@@ -6143,587 +8079,343 @@ packages:
get-intrinsic: 1.2.4
gopd: 1.0.1
has-property-descriptors: 1.0.2
- dev: true
- /set-function-name@2.0.2:
- resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==}
- engines: {node: '>= 0.4'}
+ set-function-name@2.0.2:
dependencies:
define-data-property: 1.1.4
es-errors: 1.3.0
functions-have-names: 1.2.3
has-property-descriptors: 1.0.2
- dev: true
- /shebang-command@2.0.0:
- resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
- engines: {node: '>=8'}
+ shebang-command@2.0.0:
dependencies:
shebang-regex: 3.0.0
- dev: true
-
- /shebang-regex@3.0.0:
- resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
- engines: {node: '>=8'}
- dev: true
- /shell-quote-word@1.0.1:
- resolution: {integrity: sha512-lT297f1WLAdq0A4O+AknIFRP6kkiI3s8C913eJ0XqBxJbZPGWUNkRQk2u8zk4bEAjUJ5i+fSLwB6z1HzeT+DEg==}
- dev: true
+ shebang-regex@3.0.0: {}
- /side-channel@1.0.4:
- resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==}
+ side-channel@1.0.6:
dependencies:
call-bind: 1.0.7
+ es-errors: 1.3.0
get-intrinsic: 1.2.4
object-inspect: 1.13.1
- dev: true
- /signal-exit@3.0.7:
- resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}
- dev: true
+ signal-exit@3.0.7: {}
- /signal-exit@4.1.0:
- resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==}
- engines: {node: '>=14'}
- dev: true
+ signal-exit@4.1.0: {}
- /signale@1.4.0:
- resolution: {integrity: sha512-iuh+gPf28RkltuJC7W5MRi6XAjTDCAPC/prJUpQoG4vIP3MJZ+GTydVnodXA7pwvTKb2cA0m9OFZW/cdWy/I/w==}
- engines: {node: '>=6'}
+ signale@1.4.0:
dependencies:
chalk: 2.4.2
figures: 2.0.0
pkg-conf: 2.1.0
- dev: true
- /skin-tone@2.0.0:
- resolution: {integrity: sha512-kUMbT1oBJCpgrnKoSr0o6wPtvRWT9W9UKvGLwfJYO2WuahZRHOpEyL1ckyMGgMWh0UdpmaoFqKKD29WTomNEGA==}
- engines: {node: '>=8'}
+ sisteransi@1.0.5: {}
+
+ skin-tone@2.0.0:
dependencies:
unicode-emoji-modifier-base: 1.0.0
- dev: true
- /slash@3.0.0:
- resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==}
- engines: {node: '>=8'}
- dev: true
+ slash@3.0.0: {}
- /slash@4.0.0:
- resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==}
- engines: {node: '>=12'}
- dev: true
+ slash@4.0.0: {}
- /slash@5.1.0:
- resolution: {integrity: sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==}
- engines: {node: '>=14.16'}
- dev: true
+ slash@5.1.0: {}
- /slice-ansi@5.0.0:
- resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==}
- engines: {node: '>=12'}
+ slashes@3.0.12: {}
+
+ slice-ansi@5.0.0:
dependencies:
ansi-styles: 6.2.1
is-fullwidth-code-point: 4.0.0
- dev: true
- /slice-ansi@7.1.0:
- resolution: {integrity: sha512-bSiSngZ/jWeX93BqeIAbImyTbEihizcwNjFoRUIY/T1wWQsfsm2Vw1agPKylXvQTU7iASGdHhyqRlqQzfz+Htg==}
- engines: {node: '>=18'}
+ slice-ansi@7.1.0:
dependencies:
ansi-styles: 6.2.1
is-fullwidth-code-point: 5.0.0
- dev: true
- /smol-toml@1.1.4:
- resolution: {integrity: sha512-Y0OT8HezWsTNeEOSVxDnKOW/AyNXHQ4BwJNbAXlLTF5wWsBvrcHhIkE5Rf8kQMLmgf7nDX3PVOlgC6/Aiggu3Q==}
- engines: {node: '>= 18', pnpm: '>= 8'}
- dev: true
+ smol-toml@1.2.1: {}
- /sort-object-keys@1.1.3:
- resolution: {integrity: sha512-855pvK+VkU7PaKYPc+Jjnmt4EzejQHyhhF33q31qG8x7maDzkeFhAAThdCYay11CISO+qAMwjOBP+fPZe0IPyg==}
- dev: true
+ sort-object-keys@1.1.3: {}
- /sort-package-json@2.8.0:
- resolution: {integrity: sha512-PxeNg93bTJWmDGnu0HADDucoxfFiKkIr73Kv85EBThlI1YQPdc0XovBgg2llD0iABZbu2SlKo8ntGmOP9wOj/g==}
- hasBin: true
+ sort-package-json@2.10.0:
dependencies:
detect-indent: 7.0.1
- detect-newline: 4.0.0
+ detect-newline: 4.0.1
get-stdin: 9.0.0
git-hooks-list: 3.1.0
- globby: 13.1.4
+ globby: 13.2.2
is-plain-obj: 4.1.0
+ semver: 7.6.3
sort-object-keys: 1.1.3
- dev: true
- /source-map@0.6.1:
- resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
- engines: {node: '>=0.10.0'}
- dev: true
+ source-map-js@1.2.0: {}
- /spawn-error-forwarder@1.0.0:
- resolution: {integrity: sha512-gRjMgK5uFjbCvdibeGJuy3I5OYz6VLoVdsOJdA6wV0WlfQVLFueoqMxwwYD9RODdgb6oUIvlRlsyFSiQkMKu0g==}
- dev: true
+ source-map@0.6.1: {}
- /spdx-correct@3.2.0:
- resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==}
+ spawn-error-forwarder@1.0.0: {}
+
+ spdx-correct@3.2.0:
dependencies:
spdx-expression-parse: 3.0.1
- spdx-license-ids: 3.0.12
- dev: true
+ spdx-license-ids: 3.0.18
- /spdx-exceptions@2.3.0:
- resolution: {integrity: sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==}
- dev: true
+ spdx-exceptions@2.5.0: {}
- /spdx-expression-parse@3.0.1:
- resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==}
+ spdx-expression-parse@3.0.1:
dependencies:
- spdx-exceptions: 2.3.0
- spdx-license-ids: 3.0.12
- dev: true
+ spdx-exceptions: 2.5.0
+ spdx-license-ids: 3.0.18
- /spdx-expression-parse@4.0.0:
- resolution: {integrity: sha512-Clya5JIij/7C6bRR22+tnGXbc4VKlibKSVj2iHvVeX5iMW7s1SIQlqu699JkODJJIhh/pUu8L0/VLh8xflD+LQ==}
+ spdx-expression-parse@4.0.0:
dependencies:
- spdx-exceptions: 2.3.0
- spdx-license-ids: 3.0.12
- dev: true
+ spdx-exceptions: 2.5.0
+ spdx-license-ids: 3.0.18
- /spdx-license-ids@3.0.12:
- resolution: {integrity: sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==}
- dev: true
+ spdx-license-ids@3.0.18: {}
- /split2@1.0.0:
- resolution: {integrity: sha512-NKywug4u4pX/AZBB1FCPzZ6/7O+Xhz1qMVbzTvvKvikjO99oPN87SkK08mEY9P63/5lWjK+wgOOgApnTg5r6qg==}
+ split2@1.0.0:
dependencies:
through2: 2.0.5
- dev: true
- /split2@3.2.2:
- resolution: {integrity: sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==}
- dependencies:
- readable-stream: 3.6.1
- dev: true
-
- /split2@4.2.0:
- resolution: {integrity: sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==}
- engines: {node: '>= 10.x'}
- dev: true
+ split2@4.2.0: {}
- /ssri@10.0.5:
- resolution: {integrity: sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==}
- engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
- dependencies:
- minipass: 7.0.4
- dev: true
+ stable-hash@0.0.4: {}
- /stream-combiner2@1.1.1:
- resolution: {integrity: sha512-3PnJbYgS56AeWgtKF5jtJRT6uFJe56Z0Hc5Ngg/6sI6rIt8iiMBTa9cvdyFfpMQjaVHr8dusbNeFGIIonxOvKw==}
+ stream-combiner2@1.1.1:
dependencies:
duplexer2: 0.1.4
readable-stream: 2.3.8
- dev: true
- /string-argv@0.3.2:
- resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==}
- engines: {node: '>=0.6.19'}
- dev: true
+ string-argv@0.3.2: {}
- /string-width@4.2.3:
- resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
- engines: {node: '>=8'}
+ string-width@4.2.3:
dependencies:
emoji-regex: 8.0.0
is-fullwidth-code-point: 3.0.0
strip-ansi: 6.0.1
- dev: true
- /string-width@5.1.2:
- resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==}
- engines: {node: '>=12'}
+ string-width@5.1.2:
dependencies:
eastasianwidth: 0.2.0
emoji-regex: 9.2.2
strip-ansi: 7.1.0
- dev: true
- /string-width@7.1.0:
- resolution: {integrity: sha512-SEIJCWiX7Kg4c129n48aDRwLbFb2LJmXXFrWBG4NGaRtMQ3myKPKbwrD1BKqQn74oCoNMBVrfDEr5M9YxCsrkw==}
- engines: {node: '>=18'}
+ string-width@7.1.0:
dependencies:
emoji-regex: 10.3.0
get-east-asian-width: 1.2.0
strip-ansi: 7.1.0
- dev: true
-
- /string.fromcodepoint@0.2.1:
- resolution: {integrity: sha512-n69H31OnxSGSZyZbgBlvYIXlrMhJQ0dQAX1js1QDhpaUH6zmU3QYlj07bCwCNlPOu3oRXIubGPl2gDGnHsiCqg==}
- dev: true
- /string.prototype.trim@1.2.9:
- resolution: {integrity: sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==}
- engines: {node: '>= 0.4'}
+ string.prototype.trim@1.2.9:
dependencies:
call-bind: 1.0.7
define-properties: 1.2.1
- es-abstract: 1.23.2
+ es-abstract: 1.23.3
es-object-atoms: 1.0.0
- dev: true
- /string.prototype.trimend@1.0.8:
- resolution: {integrity: sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==}
+ string.prototype.trimend@1.0.8:
dependencies:
call-bind: 1.0.7
define-properties: 1.2.1
es-object-atoms: 1.0.0
- dev: true
- /string.prototype.trimstart@1.0.8:
- resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==}
- engines: {node: '>= 0.4'}
+ string.prototype.trimstart@1.0.8:
dependencies:
call-bind: 1.0.7
define-properties: 1.2.1
es-object-atoms: 1.0.0
- dev: true
- /string_decoder@1.1.1:
- resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==}
+ string_decoder@1.1.1:
dependencies:
safe-buffer: 5.1.2
- dev: true
- /string_decoder@1.3.0:
- resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==}
+ string_decoder@1.3.0:
dependencies:
safe-buffer: 5.2.1
- dev: true
- /strip-ansi@6.0.1:
- resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
- engines: {node: '>=8'}
+ strip-ansi@6.0.1:
dependencies:
ansi-regex: 5.0.1
- dev: true
- /strip-ansi@7.1.0:
- resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==}
- engines: {node: '>=12'}
+ strip-ansi@7.1.0:
dependencies:
ansi-regex: 6.0.1
- dev: true
- /strip-bom@3.0.0:
- resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==}
- engines: {node: '>=4'}
- dev: true
+ strip-bom@3.0.0: {}
- /strip-bom@4.0.0:
- resolution: {integrity: sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==}
- engines: {node: '>=8'}
- dev: true
+ strip-bom@4.0.0: {}
- /strip-final-newline@2.0.0:
- resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==}
- engines: {node: '>=6'}
- dev: true
+ strip-final-newline@2.0.0: {}
- /strip-final-newline@3.0.0:
- resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==}
- engines: {node: '>=12'}
- dev: true
+ strip-final-newline@3.0.0: {}
- /strip-indent@3.0.0:
- resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==}
- engines: {node: '>=8'}
+ strip-final-newline@4.0.0: {}
+
+ strip-indent@3.0.0:
dependencies:
min-indent: 1.0.1
- dev: true
- /strip-json-comments@2.0.1:
- resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==}
- engines: {node: '>=0.10.0'}
- dev: true
+ strip-json-comments@2.0.1: {}
- /strip-json-comments@3.1.1:
- resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
- engines: {node: '>=8'}
- dev: true
+ strip-json-comments@3.1.1: {}
- /strip-json-comments@5.0.1:
- resolution: {integrity: sha512-0fk9zBqO67Nq5M/m45qHCJxylV/DhBlIOVExqgOMiCCrzrhU6tCibRXNqE3jwJLftzE9SNuZtYbpzcO+i9FiKw==}
- engines: {node: '>=14.16'}
- dev: true
+ strip-json-comments@5.0.1: {}
- /summary@2.1.0:
- resolution: {integrity: sha512-nMIjMrd5Z2nuB2RZCKJfFMjgS3fygbeyGk9PxPPaJR1RIcyN9yn4A63Isovzm3ZtQuEkLBVgMdPup8UeLH7aQw==}
- dev: true
+ summary@2.1.0: {}
- /supports-color@5.5.0:
- resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==}
- engines: {node: '>=4'}
+ super-regex@1.0.0:
+ dependencies:
+ function-timeout: 1.0.2
+ time-span: 5.1.0
+
+ supports-color@5.5.0:
dependencies:
has-flag: 3.0.0
- dev: true
- /supports-color@7.2.0:
- resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
- engines: {node: '>=8'}
+ supports-color@7.2.0:
dependencies:
has-flag: 4.0.0
- dev: true
- /supports-hyperlinks@3.0.0:
- resolution: {integrity: sha512-QBDPHyPQDRTy9ku4URNGY5Lah8PAaXs6tAAwp55sL5WCsSW7GIfdf6W5ixfziW+t7wh3GVvHyHHyQ1ESsoRvaA==}
- engines: {node: '>=14.18'}
+ supports-hyperlinks@3.0.0:
dependencies:
has-flag: 4.0.0
supports-color: 7.2.0
- dev: true
- /supports-preserve-symlinks-flag@1.0.0:
- resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
- engines: {node: '>= 0.4'}
- dev: true
+ supports-preserve-symlinks-flag@1.0.0: {}
- /synckit@0.8.8:
- resolution: {integrity: sha512-HwOKAP7Wc5aRGYdKH+dw0PRRpbO841v2DENBtjnR5HFWoiNByAl7vrx3p0G/rCyYXQsrxqtX48TImFtPcIHSpQ==}
- engines: {node: ^14.18.0 || >=16.0.0}
+ synckit@0.6.2:
dependencies:
- '@pkgr/core': 0.1.1
- tslib: 2.6.2
- dev: true
+ tslib: 2.6.3
- /synckit@0.9.0:
- resolution: {integrity: sha512-7RnqIMq572L8PeEzKeBINYEJDDxpcH8JEgLwUqBd3TkofhFRbkq4QLR0u+36avGAhCRbk2nnmjcW9SE531hPDg==}
- engines: {node: ^14.18.0 || >=16.0.0}
+ synckit@0.9.1:
dependencies:
'@pkgr/core': 0.1.1
- tslib: 2.6.2
- dev: true
+ tslib: 2.6.3
- /tapable@2.2.1:
- resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==}
- engines: {node: '>=6'}
- dev: true
+ tapable@2.2.1: {}
- /temp-dir@2.0.0:
- resolution: {integrity: sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==}
- engines: {node: '>=8'}
- dev: true
+ temp-dir@3.0.0: {}
- /tempy@3.0.0:
- resolution: {integrity: sha512-B2I9X7+o2wOaW4r/CWMkpOO9mdiTRCxXNgob6iGvPmfPWgH/KyUD6Uy5crtWBxIBe3YrNZKR2lSzv1JJKWD4vA==}
- engines: {node: '>=14.16'}
+ tempy@3.1.0:
dependencies:
is-stream: 3.0.0
- temp-dir: 2.0.0
+ temp-dir: 3.0.0
type-fest: 2.19.0
unique-string: 3.0.0
- dev: true
- /text-extensions@2.4.0:
- resolution: {integrity: sha512-te/NtwBwfiNRLf9Ijqx3T0nlqZiQ2XrrtBvu+cLL8ZRrGkO0NHTug8MYFKyoSrv/sHTaSKfilUkizV6XhxMJ3g==}
- engines: {node: '>=8'}
- dev: true
+ text-extensions@2.4.0: {}
- /text-table@0.2.0:
- resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==}
- dev: true
+ text-table@0.2.0: {}
- /thenify-all@1.6.0:
- resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==}
- engines: {node: '>=0.8'}
+ thenify-all@1.6.0:
dependencies:
thenify: 3.3.1
- dev: true
- /thenify@3.3.1:
- resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==}
+ thenify@3.3.1:
dependencies:
any-promise: 1.3.0
- dev: true
- /through2@2.0.5:
- resolution: {integrity: sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==}
+ through2@2.0.5:
dependencies:
readable-stream: 2.3.8
xtend: 4.0.2
- dev: true
- /through2@4.0.2:
- resolution: {integrity: sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==}
- dependencies:
- readable-stream: 3.6.1
- dev: true
+ through@2.3.8: {}
- /through@2.3.8:
- resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==}
- dev: true
+ time-span@5.1.0:
+ dependencies:
+ convert-hrtime: 5.0.0
- /tmp@0.0.33:
- resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==}
- engines: {node: '>=0.6.0'}
+ tmp@0.0.33:
dependencies:
os-tmpdir: 1.0.2
- dev: true
- /to-no-case@1.0.2:
- resolution: {integrity: sha512-Z3g735FxuZY8rodxV4gH7LxClE4H0hTIyHNIHdk+vpQxjLm0cwnKXq/OFVZ76SOQmto7txVcwSCwkU5kqp+FKg==}
- dev: true
+ to-fast-properties@2.0.0: {}
- /to-pascal-case@1.0.0:
- resolution: {integrity: sha512-QGMWHqM6xPrcQW57S23c5/3BbYb0Tbe9p+ur98ckRnGDwD4wbbtDiYI38CfmMKNB5Iv0REjs5SNDntTwvDxzZA==}
+ to-regex-range@5.0.1:
dependencies:
- to-space-case: 1.0.0
- dev: true
+ is-number: 7.0.0
- /to-regex-range@5.0.1:
- resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
- engines: {node: '>=8.0'}
+ toml-eslint-parser@0.10.0:
dependencies:
- is-number: 7.0.0
- dev: true
+ eslint-visitor-keys: 3.4.3
- /to-space-case@1.0.0:
- resolution: {integrity: sha512-rLdvwXZ39VOn1IxGL3V6ZstoTbwLRckQmn/U8ZDLuWwIXNpuZDhQ3AiRUlhTbOXFVE9C+dR51wM0CBDhk31VcA==}
+ traverse@0.6.9:
dependencies:
- to-no-case: 1.0.2
- dev: true
+ gopd: 1.0.1
+ typedarray.prototype.slice: 1.0.3
+ which-typed-array: 1.1.15
- /traverse@0.6.7:
- resolution: {integrity: sha512-/y956gpUo9ZNCb99YjxG7OaslxZWHfCHAUUfshwqOXmxUIvqLjVO581BT+gM59+QV9tFe6/CGG53tsA1Y7RSdg==}
- dev: true
+ ts-api-utils@1.3.0(typescript@5.4.5):
+ dependencies:
+ typescript: 5.4.5
- /ts-api-utils@1.3.0(typescript@5.4.3):
- resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==}
- engines: {node: '>=16'}
- peerDependencies:
- typescript: '>=4.2.0'
+ ts-clone-node@3.0.0(typescript@5.4.5):
dependencies:
- typescript: 5.4.3
- dev: true
+ compatfactory: 3.0.0(typescript@5.4.5)
+ typescript: 5.4.5
- /ts-node@10.9.2(@types/node@18.11.9)(typescript@5.4.3):
- resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==}
- hasBin: true
- peerDependencies:
- '@swc/core': '>=1.2.50'
- '@swc/wasm': '>=1.2.50'
- '@types/node': '*'
- typescript: '>=2.7'
- peerDependenciesMeta:
- '@swc/core':
- optional: true
- '@swc/wasm':
- optional: true
+ ts-declaration-location@1.0.4(typescript@5.4.5):
dependencies:
- '@cspotcode/source-map-support': 0.8.1
- '@tsconfig/node10': 1.0.9
- '@tsconfig/node12': 1.0.11
- '@tsconfig/node14': 1.0.3
- '@tsconfig/node16': 1.0.3
- '@types/node': 18.11.9
- acorn: 8.12.0
- acorn-walk: 8.2.0
- arg: 4.1.3
- create-require: 1.1.1
- diff: 4.0.2
- make-error: 1.3.6
- typescript: 5.4.3
- v8-compile-cache-lib: 3.0.1
- yn: 3.1.1
- dev: true
-
- /tsconfig-paths@3.15.0:
- resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==}
+ minimatch: 10.0.1
+ typescript: 5.4.5
+
+ tsc-files@1.1.4(typescript@5.4.5):
+ dependencies:
+ typescript: 5.4.5
+
+ tsconfig-paths@3.15.0:
dependencies:
'@types/json5': 0.0.29
json5: 1.0.2
minimist: 1.2.8
strip-bom: 3.0.0
- dev: true
- /tsconfig-paths@4.2.0:
- resolution: {integrity: sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==}
- engines: {node: '>=6'}
- dependencies:
- json5: 2.2.3
- minimist: 1.2.8
- strip-bom: 3.0.0
- dev: true
+ tslib@2.6.3: {}
- /tslib@2.6.2:
- resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==}
- dev: true
+ tsx@4.16.5:
+ dependencies:
+ esbuild: 0.21.5
+ get-tsconfig: 4.7.5
+ optionalDependencies:
+ fsevents: 2.3.3
- /type-check@0.4.0:
- resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
- engines: {node: '>= 0.8.0'}
+ type-check@0.4.0:
dependencies:
prelude-ls: 1.2.1
- dev: true
- /type-fest@0.20.2:
- resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==}
- engines: {node: '>=10'}
- dev: true
+ type-detect@4.0.8: {}
- /type-fest@0.21.3:
- resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==}
- engines: {node: '>=10'}
- dev: true
+ type-fest@0.20.2: {}
- /type-fest@0.6.0:
- resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==}
- engines: {node: '>=8'}
- dev: true
+ type-fest@0.21.3: {}
- /type-fest@0.8.1:
- resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==}
- engines: {node: '>=8'}
- dev: true
+ type-fest@0.6.0: {}
- /type-fest@1.4.0:
- resolution: {integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==}
- engines: {node: '>=10'}
- dev: true
+ type-fest@0.8.1: {}
- /type-fest@2.19.0:
- resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==}
- engines: {node: '>=12.20'}
- dev: true
+ type-fest@1.4.0: {}
- /type-fest@4.14.0:
- resolution: {integrity: sha512-on5/Cw89wwqGZQu+yWO0gGMGu8VNxsaW9SB2HE8yJjllEk7IDTwnSN1dUVldYILhYPN5HzD7WAaw2cc/jBfn0Q==}
- engines: {node: '>=16'}
- dev: true
+ type-fest@2.19.0: {}
- /typed-array-buffer@1.0.2:
- resolution: {integrity: sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==}
- engines: {node: '>= 0.4'}
+ type-fest@4.20.0: {}
+
+ typed-array-buffer@1.0.2:
dependencies:
call-bind: 1.0.7
es-errors: 1.3.0
is-typed-array: 1.1.13
- dev: true
- /typed-array-byte-length@1.0.1:
- resolution: {integrity: sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==}
- engines: {node: '>= 0.4'}
+ typed-array-byte-length@1.0.1:
dependencies:
call-bind: 1.0.7
for-each: 0.3.3
gopd: 1.0.1
has-proto: 1.0.3
is-typed-array: 1.1.13
- dev: true
- /typed-array-byte-offset@1.0.2:
- resolution: {integrity: sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==}
- engines: {node: '>= 0.4'}
+ typed-array-byte-offset@1.0.2:
dependencies:
available-typed-arrays: 1.0.7
call-bind: 1.0.7
@@ -6731,11 +8423,8 @@ packages:
gopd: 1.0.1
has-proto: 1.0.3
is-typed-array: 1.1.13
- dev: true
- /typed-array-length@1.0.6:
- resolution: {integrity: sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==}
- engines: {node: '>= 0.4'}
+ typed-array-length@1.0.6:
dependencies:
call-bind: 1.0.7
for-each: 0.3.3
@@ -6743,345 +8432,196 @@ packages:
has-proto: 1.0.3
is-typed-array: 1.1.13
possible-typed-array-names: 1.0.0
- dev: true
- /typedarray-to-buffer@3.1.5:
- resolution: {integrity: sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==}
+ typedarray.prototype.slice@1.0.3:
dependencies:
- is-typedarray: 1.0.0
- dev: true
+ call-bind: 1.0.7
+ define-properties: 1.2.1
+ es-abstract: 1.23.3
+ es-errors: 1.3.0
+ typed-array-buffer: 1.0.2
+ typed-array-byte-offset: 1.0.2
- /typescript@5.4.3:
- resolution: {integrity: sha512-KrPd3PKaCLr78MalgiwJnA25Nm8HAmdwN3mYUYZgG/wizIo9EainNVQI9/yDavtVFRN2h3k8uf3GLHuhDMgEHg==}
- engines: {node: '>=14.17'}
- hasBin: true
- dev: true
+ typescript@5.4.5: {}
- /uc.micro@2.1.0:
- resolution: {integrity: sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==}
- dev: true
+ ua-parser-js@1.0.38: {}
- /uglify-js@3.17.4:
- resolution: {integrity: sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==}
- engines: {node: '>=0.8.0'}
- hasBin: true
- requiresBuild: true
- dev: true
+ uc.micro@2.1.0: {}
+
+ ufo@1.5.3: {}
+
+ uglify-js@3.17.4:
optional: true
- /unbox-primitive@1.0.2:
- resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==}
+ unbox-primitive@1.0.2:
dependencies:
call-bind: 1.0.7
has-bigints: 1.0.2
has-symbols: 1.0.3
which-boxed-primitive: 1.0.2
- dev: true
- /unescape-js@1.1.4:
- resolution: {integrity: sha512-42SD8NOQEhdYntEiUQdYq/1V/YHwr1HLwlHuTJB5InVVdOSbgI6xu8jK5q65yIzuFCfczzyDF/7hbGzVbyCw0g==}
+ unconfig@0.5.5:
dependencies:
- string.fromcodepoint: 0.2.1
- dev: true
+ '@antfu/utils': 0.7.10
+ defu: 6.1.4
+ importx: 0.4.3
+ transitivePeerDependencies:
+ - supports-color
- /unicode-emoji-modifier-base@1.0.0:
- resolution: {integrity: sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g==}
- engines: {node: '>=4'}
- dev: true
+ undici-types@6.13.0: {}
- /unicorn-magic@0.1.0:
- resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==}
- engines: {node: '>=18'}
- dev: true
+ unicode-emoji-modifier-base@1.0.0: {}
- /unique-string@2.0.0:
- resolution: {integrity: sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==}
- engines: {node: '>=8'}
- dependencies:
- crypto-random-string: 2.0.0
- dev: true
+ unicorn-magic@0.1.0: {}
- /unique-string@3.0.0:
- resolution: {integrity: sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ==}
- engines: {node: '>=12'}
+ unique-string@3.0.0:
dependencies:
crypto-random-string: 4.0.0
- dev: true
- /unist-util-stringify-position@2.0.3:
- resolution: {integrity: sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==}
+ unist-util-stringify-position@2.0.3:
dependencies:
- '@types/unist': 2.0.6
- dev: true
+ '@types/unist': 2.0.10
- /universal-user-agent@7.0.2:
- resolution: {integrity: sha512-0JCqzSKnStlRRQfCdowvqy3cy0Dvtlb8xecj/H8JFZuCze4rwjPZQOgvFvn0Ws/usCHQFGpyr+pB9adaGwXn4Q==}
- dev: true
+ universal-user-agent@7.0.2: {}
- /universalify@2.0.0:
- resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==}
- engines: {node: '>= 10.0.0'}
- dev: true
+ universalify@2.0.1: {}
- /update-browserslist-db@1.0.13(browserslist@4.23.0):
- resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==}
- hasBin: true
- peerDependencies:
- browserslist: '>= 4.21.0'
+ update-browserslist-db@1.0.16(browserslist@4.23.1):
dependencies:
- browserslist: 4.23.0
- escalade: 3.1.1
- picocolors: 1.0.0
- dev: true
+ browserslist: 4.23.1
+ escalade: 3.1.2
+ picocolors: 1.0.1
- /uri-js@4.4.1:
- resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
+ uri-js@4.4.1:
dependencies:
- punycode: 2.3.0
- dev: true
-
- /url-join@5.0.0:
- resolution: {integrity: sha512-n2huDr9h9yzd6exQVnH/jU5mr+Pfx08LRXXZhkLLetAMESRj+anQsTAh940iMrIetKAmry9coFuZQ2jY8/p3WA==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
- dev: true
+ punycode: 2.3.1
- /util-deprecate@1.0.2:
- resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
- dev: true
+ url-join@5.0.0: {}
- /v8-compile-cache-lib@3.0.1:
- resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==}
- dev: true
+ util-deprecate@1.0.2: {}
- /validate-npm-package-license@3.0.4:
- resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==}
+ validate-npm-package-license@3.0.4:
dependencies:
spdx-correct: 3.2.0
spdx-expression-parse: 3.0.1
- dev: true
- /validate-npm-package-name@4.0.0:
- resolution: {integrity: sha512-mzR0L8ZDktZjpX4OB46KT+56MAhl4EIazWP/+G/HPGuvfdaqg4YsCdtOm6U9+LOFyYDoh4dpnpxZRB9MQQns5Q==}
- engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0}
- dependencies:
- builtins: 5.0.1
- dev: true
+ vscode-languageserver-textdocument@1.0.12: {}
- /validate-npm-package-name@5.0.0:
- resolution: {integrity: sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==}
- engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
- dependencies:
- builtins: 5.0.1
- dev: true
+ vscode-uri@3.0.8: {}
- /version-selector-type@3.0.0:
- resolution: {integrity: sha512-PSvMIZS7C1MuVNBXl/CDG2pZq8EXy/NW2dHIdm3bVP5N0PC8utDK8ttXLXj44Gn3J0lQE3U7Mpm1estAOd+eiA==}
- engines: {node: '>=10.13'}
+ vue-eslint-parser@9.4.3(eslint@9.8.0):
dependencies:
- semver: 7.6.0
- dev: true
-
- /vlq@0.2.3:
- resolution: {integrity: sha512-DRibZL6DsNhIgYQ+wNdWDL2SL3bKPlVrRiBqV5yuMm++op8W4kGFtaQfCs4KEJn0wBZcHVHJ3eoywX8983k1ow==}
- dev: true
-
- /vscode-languageserver-textdocument@1.0.11:
- resolution: {integrity: sha512-X+8T3GoiwTVlJbicx/sIAF+yuJAqz8VvwJyoMVhwEMoEKE/fkDmrqUgDMyBECcM2A2frVZIUj5HI/ErRXCfOeA==}
- dev: true
-
- /vscode-uri@3.0.8:
- resolution: {integrity: sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==}
- dev: true
+ debug: 4.3.6
+ eslint: 9.8.0
+ eslint-scope: 7.2.2
+ eslint-visitor-keys: 3.4.3
+ espree: 9.6.1
+ esquery: 1.6.0
+ lodash: 4.17.21
+ semver: 7.6.3
+ transitivePeerDependencies:
+ - supports-color
- /wcwidth@1.0.1:
- resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==}
+ wcwidth@1.0.1:
dependencies:
defaults: 1.0.4
- dev: true
- /which-boxed-primitive@1.0.2:
- resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==}
+ which-boxed-primitive@1.0.2:
dependencies:
is-bigint: 1.0.4
is-boolean-object: 1.1.2
is-number-object: 1.0.7
is-string: 1.0.7
is-symbol: 1.0.4
- dev: true
- /which-typed-array@1.1.15:
- resolution: {integrity: sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==}
- engines: {node: '>= 0.4'}
+ which-typed-array@1.1.15:
dependencies:
available-typed-arrays: 1.0.7
call-bind: 1.0.7
for-each: 0.3.3
gopd: 1.0.1
has-tostringtag: 1.0.2
- dev: true
- /which@1.3.1:
- resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==}
- hasBin: true
+ which@1.3.1:
dependencies:
isexe: 2.0.0
- dev: true
- /which@2.0.2:
- resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
- engines: {node: '>= 8'}
- hasBin: true
+ which@2.0.2:
dependencies:
isexe: 2.0.0
- dev: true
-
- /which@4.0.0:
- resolution: {integrity: sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==}
- engines: {node: ^16.13.0 || >=18.0.0}
- hasBin: true
- dependencies:
- isexe: 3.1.1
- dev: true
- /word-wrap@1.2.3:
- resolution: {integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==}
- engines: {node: '>=0.10.0'}
- dev: true
+ word-wrap@1.2.5: {}
- /wordwrap@1.0.0:
- resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==}
- dev: true
+ wordwrap@1.0.0: {}
- /wrap-ansi@7.0.0:
- resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
- engines: {node: '>=10'}
+ wrap-ansi@7.0.0:
dependencies:
ansi-styles: 4.3.0
string-width: 4.2.3
strip-ansi: 6.0.1
- dev: true
- /wrap-ansi@8.1.0:
- resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==}
- engines: {node: '>=12'}
+ wrap-ansi@8.1.0:
dependencies:
ansi-styles: 6.2.1
string-width: 5.1.2
strip-ansi: 7.1.0
- dev: true
- /wrap-ansi@9.0.0:
- resolution: {integrity: sha512-G8ura3S+3Z2G+mkgNRq8dqaFZAuxfsxpBB8OCTGRTCtp+l/v9nbFNmCUP1BZMts3G1142MsZfn6eeUKrr4PD1Q==}
- engines: {node: '>=18'}
+ wrap-ansi@9.0.0:
dependencies:
ansi-styles: 6.2.1
string-width: 7.1.0
strip-ansi: 7.1.0
- dev: true
- /wrappy@1.0.2:
- resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
- dev: true
-
- /write-file-atomic@3.0.3:
- resolution: {integrity: sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==}
- dependencies:
- imurmurhash: 0.1.4
- is-typedarray: 1.0.0
- signal-exit: 3.0.7
- typedarray-to-buffer: 3.1.5
- dev: true
+ wrappy@1.0.2: {}
- /xdg-basedir@5.1.0:
- resolution: {integrity: sha512-GCPAHLvrIH13+c0SuacwvRYj2SxJXQ4kaVTT5xgL3kPrz56XxkF21IGhjSE1+W0aw7gpBWRGXLCPnPby6lSpmQ==}
- engines: {node: '>=12'}
- dev: true
+ xdg-basedir@5.1.0: {}
- /xtend@4.0.2:
- resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==}
- engines: {node: '>=0.4'}
- dev: true
+ xml-name-validator@4.0.0: {}
- /y18n@5.0.8:
- resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
- engines: {node: '>=10'}
- dev: true
+ xtend@4.0.2: {}
- /yallist@4.0.0:
- resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==}
- dev: true
+ y18n@5.0.8: {}
- /yaml@2.3.4:
- resolution: {integrity: sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==}
- engines: {node: '>= 14'}
- dev: true
+ yaml-eslint-parser@1.2.3:
+ dependencies:
+ eslint-visitor-keys: 3.4.3
+ lodash: 4.17.21
+ yaml: 2.5.0
- /yaml@2.4.1:
- resolution: {integrity: sha512-pIXzoImaqmfOrL7teGUBt/T7ZDnyeGBWyXQBvOVhLkWLN37GXv8NMLK406UY6dS51JfcQHsmcW5cJ441bHg6Lg==}
- engines: {node: '>= 14'}
- hasBin: true
- dev: true
+ yaml@2.5.0: {}
- /yargs-parser@20.2.9:
- resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==}
- engines: {node: '>=10'}
- dev: true
+ yargs-parser@20.2.9: {}
- /yargs-parser@21.1.1:
- resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==}
- engines: {node: '>=12'}
- dev: true
+ yargs-parser@21.1.1: {}
- /yargs@16.2.0:
- resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==}
- engines: {node: '>=10'}
+ yargs@16.2.0:
dependencies:
cliui: 7.0.4
- escalade: 3.1.1
+ escalade: 3.1.2
get-caller-file: 2.0.5
require-directory: 2.1.1
string-width: 4.2.3
y18n: 5.0.8
yargs-parser: 20.2.9
- dev: true
- /yargs@17.7.1:
- resolution: {integrity: sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==}
- engines: {node: '>=12'}
+ yargs@17.7.2:
dependencies:
cliui: 8.0.1
- escalade: 3.1.1
+ escalade: 3.1.2
get-caller-file: 2.0.5
require-directory: 2.1.1
string-width: 4.2.3
y18n: 5.0.8
yargs-parser: 21.1.1
- dev: true
- /yn@3.1.1:
- resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==}
- engines: {node: '>=6'}
- dev: true
+ yocto-queue@0.1.0: {}
- /yocto-queue@0.1.0:
- resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
- engines: {node: '>=10'}
- dev: true
+ yocto-queue@1.0.0: {}
- /yocto-queue@1.0.0:
- resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==}
- engines: {node: '>=12.20'}
- dev: true
+ yoctocolors@2.0.2: {}
- /zod-validation-error@3.0.3(zod@3.22.4):
- resolution: {integrity: sha512-cETTrcMq3Ze58vhdR0zD37uJm/694I6mAxcf/ei5bl89cC++fBNxrC2z8lkFze/8hVMPwrbtrwXHR2LB50fpHw==}
- engines: {node: '>=18.0.0'}
- peerDependencies:
- zod: ^3.18.0
+ zod-validation-error@3.3.0(zod@3.23.8):
dependencies:
- zod: 3.22.4
- dev: true
+ zod: 3.23.8
- /zod@3.22.4:
- resolution: {integrity: sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==}
- dev: true
+ zod@3.23.8: {}
diff --git a/project-dictionary.txt b/project-dictionary.txt
new file mode 100644
index 00000000..861cfcd7
--- /dev/null
+++ b/project-dictionary.txt
@@ -0,0 +1,37 @@
+antfu
+attributify
+bar
+baz
+boop
+corge
+deassert
+foo
+fred
+garply
+grault
+iife
+intlify
+jiti
+knip
+litecoin
+lockb
+lookarounds
+monero
+nocheck
+noreply
+nums
+nuxt
+nvim
+plugh
+quux
+qux
+Rebecca
+slidev
+sonarjs
+Stevens
+thud
+TSES
+unocss
+vitepress
+waldo
+xyzzy
diff --git a/rollup.config.ts b/rollup.config.ts
index 8f8e10ce..d0f1770e 100644
--- a/rollup.config.ts
+++ b/rollup.config.ts
@@ -1,64 +1,53 @@
-import * as fs from "node:fs";
-import * as path from "node:path";
-
-import rollupPluginCommonjs from "@rollup/plugin-commonjs";
-import rollupPluginNodeResolve from "@rollup/plugin-node-resolve";
-import rollupPluginTypescript from "@rollup/plugin-typescript";
-import { type RollupOptions } from "rollup";
-import rollupPluginAutoExternal from "rollup-plugin-auto-external";
-
-const configDir = "./src/configs/";
-
-const configFiles: ReadonlyArray = fs
- .readdirSync(configDir)
- .filter((file) => file !== "index.ts" && file.endsWith(".ts"));
-
-const common: Partial = {
- output: {
- dir: "./dist",
- sourcemap: false,
- exports: "default",
- },
-
- treeshake: {
- annotations: true,
- moduleSideEffects: [],
- propertyReadSideEffects: false,
- unknownGlobalSideEffects: false,
- },
-};
-
-/**
- * Get the rollup config for the given eslint config.
- */
-function getConfig(filename: string): RollupOptions {
- return {
- ...common,
-
- input: `${configDir}${filename}`,
-
- output: [
- {
- ...common.output,
- entryFileNames: `${path.basename(filename, ".ts")}.cjs`,
- format: "cjs",
+import { rollupPlugin as rollupPluginDeassert } from "deassert";
+import type { RollupOptions } from "rollup";
+import rollupPluginTs from "rollup-plugin-ts";
+
+import pkg from "./package.json" with { type: "json" };
+
+const treeshake = {
+ annotations: true,
+ moduleSideEffects: ["src/typegen.ts"],
+ propertyReadSideEffects: false,
+ unknownGlobalSideEffects: false,
+} satisfies RollupOptions["treeshake"];
+
+export default {
+ input: "src/index.ts",
+
+ output: [
+ {
+ file: pkg.exports.import,
+ format: "esm",
+ sourcemap: false,
+ generatedCode: {
+ preset: "es2015",
},
- {
- ...common.output,
- entryFileNames: `${path.basename(filename, ".ts")}.mjs`,
- format: "esm",
+ },
+ {
+ file: pkg.exports.require,
+ format: "cjs",
+ sourcemap: false,
+ generatedCode: {
+ preset: "es2015",
},
- ],
-
- plugins: [
- rollupPluginAutoExternal(),
- rollupPluginNodeResolve(),
- rollupPluginCommonjs(),
- rollupPluginTypescript({
- tsconfig: "tsconfig.build.json",
- }),
- ],
- };
-}
-
-export default configFiles.map((filename) => getConfig(filename));
+ },
+ ],
+
+ external: [
+ ...Object.keys(pkg.dependencies),
+ ...Object.keys(pkg.peerDependencies),
+ ],
+
+ plugins: [
+ rollupPluginTs({
+ transpileOnly: true,
+ tsconfig: "tsconfig.build.json",
+ }),
+ rollupPluginDeassert({
+ include: ["**/*.{js,ts}"],
+ exclude: ["**/*.d.ts"],
+ }),
+ ],
+
+ treeshake,
+} satisfies RollupOptions;
diff --git a/scripts/generate-preview.ts b/scripts/generate-preview.ts
deleted file mode 100644
index a535655e..00000000
--- a/scripts/generate-preview.ts
+++ /dev/null
@@ -1,24 +0,0 @@
-import { promises as fs } from "node:fs";
-
-import prettierConfig from "eslint-config-prettier";
-import { configs as prettierPluginConfigs } from "eslint-plugin-prettier";
-
-import overridesConfig from "~/configs/common-overrides";
-import modernConfig from "~/configs/modern";
-import typescriptConfig from "~/configs/typescript";
-import { mergeConfigs } from "~/merge-configs";
-
-// Merged config.
-const config = mergeConfigs(
- modernConfig,
- typescriptConfig,
- overridesConfig,
- prettierPluginConfigs!["recommended"]!,
- prettierConfig,
-);
-
-// Write the file.
-void fs.writeFile(
- ".eslintrc.preview.json",
- JSON.stringify(config, undefined, 2),
-);
diff --git a/scripts/tsconfig.json b/scripts/tsconfig.json
deleted file mode 100644
index 035f11be..00000000
--- a/scripts/tsconfig.json
+++ /dev/null
@@ -1,6 +0,0 @@
-{
- "extends": "../tsconfig.base.json",
- "compilerOptions": {
- "module": "commonjs"
- }
-}
diff --git a/scripts/typegen.ts b/scripts/typegen.ts
new file mode 100644
index 00000000..e72613cf
--- /dev/null
+++ b/scripts/typegen.ts
@@ -0,0 +1,146 @@
+import fs from "node:fs/promises";
+
+import { type Linter } from "eslint";
+import { flatConfigsToRulesDTS } from "eslint-typegen/core";
+
+import {
+ comments,
+ formatters,
+ functional,
+ ignores,
+ imports,
+ inEditor,
+ javascript,
+ jsdoc,
+ jsonc,
+ markdown,
+ node,
+ overrides,
+ promise,
+ regexp,
+ sonar,
+ sortTsconfig,
+ stylistic,
+ test,
+ toml,
+ typescript,
+ unicorn,
+ unocss,
+ vue,
+ yaml,
+} from "../src/configs";
+import { combine } from "../src/utils";
+
+const configs = (await combine(
+ comments(),
+ formatters({}, {}),
+ functional({
+ functionalEnforcement: "none",
+ ignoreNamePattern: [],
+ stylistic: false,
+ overrides: undefined,
+ parserOptions: {},
+ filesTypeAware: [],
+ mode: "none",
+ }),
+ ignores({
+ projectRoot: process.cwd(),
+ ignores: [],
+ ignoreFiles: [],
+ }),
+ imports({
+ stylistic: false,
+ parserOptions: {},
+ filesTypeAware: [],
+ }),
+ inEditor(),
+ javascript({
+ overrides: undefined,
+ functionalEnforcement: "none",
+ ignoreNamePattern: [],
+ }),
+ jsdoc({
+ stylistic: false,
+ }),
+ jsonc({
+ files: [],
+ stylistic: false,
+ overrides: undefined,
+ }),
+ markdown({
+ files: [],
+ enableTypeRequiredRules: false,
+ componentExts: [],
+ overrides: undefined,
+ }),
+ node(),
+ overrides(),
+ promise(),
+ regexp(),
+ sonar({
+ functionalEnforcement: "none",
+ ignoreNamePattern: [],
+ }),
+ sortTsconfig(),
+ stylistic({
+ stylistic: {
+ indent: 2,
+ jsx: true,
+ quotes: "double",
+ semi: true,
+ },
+ overrides: undefined,
+ typescript: false
+ }),
+ test({
+ files: [],
+ overrides: undefined,
+ }),
+ toml({
+ overrides: undefined,
+ stylistic: false,
+ files: [],
+ }),
+ typescript({
+ files: [],
+ componentExts: [],
+ overrides: undefined,
+ parserOptions: {},
+ filesTypeAware: [],
+ unsafe: "off",
+ functionalEnforcement: "none",
+ ignoreNamePattern: [],
+ projectRoot: process.cwd(),
+ mode: "none",
+ }),
+ unicorn(),
+ unocss({
+ attributify: false,
+ strict: false,
+ overrides: undefined,
+ }),
+ vue({
+ sfcBlocks: false,
+ vueVersion: 2,
+ i18n: false,
+ overrides: undefined,
+ typescript: false,
+ stylistic: false,
+ files: [],
+ filesTypeAware: [],
+ parserOptions: {},
+ }),
+ yaml({
+ overrides: undefined,
+ stylistic: false,
+ files: [],
+ }),
+)) as Linter.FlatConfig[];
+
+const dts = await flatConfigsToRulesDTS(configs, {
+ includeIgnoreComments: false,
+});
+
+const fullDts = `// @ts-nocheck\n${dts}`;
+
+await fs.writeFile("src/typegen.ts", fullDts);
diff --git a/src/builtin/deprecated.ts b/src/builtin/deprecated.ts
deleted file mode 100644
index a705b414..00000000
--- a/src/builtin/deprecated.ts
+++ /dev/null
@@ -1,29 +0,0 @@
-import { type Linter } from "eslint";
-
-export const rules: Linter.Config["rules"] = {
- "callback-return": "off",
- "global-require": "off",
- "handle-callback-err": "off",
- "id-blacklist": "off",
- "indent-legacy": "off",
- "lines-around-directive": "off",
- "newline-after-var": "off",
- "newline-before-return": "off",
- "no-buffer-constructor": "off",
- "no-catch-shadow": "off",
- "no-mixed-requires": "off",
- "no-native-reassign": "off",
- "no-negated-in-lhs": "off",
- "no-new-require": "off",
- "no-path-concat": "off",
- "no-process-env": "off",
- "no-process-exit": "off",
- "no-restricted-modules": "off",
- "no-spaced-func": "off",
- "no-sync": "off",
- "prefer-reflect": "off",
- "require-jsdoc": "off",
- "valid-jsdoc": "off",
-};
-
-export const overrides: NonNullable = [];
diff --git a/src/builtin/index.ts b/src/builtin/index.ts
deleted file mode 100644
index 49b7c53f..00000000
--- a/src/builtin/index.ts
+++ /dev/null
@@ -1,32 +0,0 @@
-import { type Linter } from "eslint";
-
-import {
- rules as deprecatedRules,
- overrides as deprecatedOverrides,
-} from "./deprecated";
-import {
- rules as layoutRules,
- overrides as layoutOverrides,
-} from "./layout+formatting";
-import {
- rules as possibleProblemsRules,
- overrides as possibleProblemsOverrides,
-} from "./possible-problems";
-import {
- rules as suggestionsRules,
- overrides as suggestionsOverrides,
-} from "./suggestions";
-
-export const rules: Linter.Config["rules"] = {
- ...possibleProblemsRules,
- ...suggestionsRules,
- ...layoutRules,
- ...deprecatedRules,
-};
-
-export const overrides: NonNullable = [
- ...deprecatedOverrides,
- ...layoutOverrides,
- ...possibleProblemsOverrides,
- ...suggestionsOverrides,
-];
diff --git a/src/builtin/layout+formatting.ts b/src/builtin/layout+formatting.ts
deleted file mode 100644
index ccc308d4..00000000
--- a/src/builtin/layout+formatting.ts
+++ /dev/null
@@ -1,289 +0,0 @@
-import { type Linter } from "eslint";
-
-export const rules: Linter.Config["rules"] = {
- "array-bracket-spacing": ["error", "never"],
- "arrow-parens": ["error", "always"],
- "arrow-spacing": ["error", { before: true, after: true }],
- "block-spacing": ["error", "always"],
- "brace-style": "error",
- "capitalized-comments": "off",
- "comma-dangle": [
- "error",
- {
- arrays: "only-multiline",
- objects: "only-multiline",
- imports: "only-multiline",
- exports: "only-multiline",
- functions: "ignore",
- },
- ],
- "comma-spacing": ["error", { before: false, after: true }],
- "comma-style": ["error", "last"],
- "computed-property-spacing": "error",
- "consistent-this": "off",
- "dot-location": ["error", "property"],
- "eol-last": "error",
- "func-call-spacing": ["error", "never"],
- "func-name-matching": "error",
- "func-names": ["error", "as-needed"],
- "func-style": ["error", "declaration", { allowArrowFunctions: true }],
- "function-paren-newline": "off",
- "generator-star-spacing": ["error", "after"],
- "implicit-arrow-linebreak": "off",
- "indent": [
- "error",
- 2,
- {
- SwitchCase: 1,
- VariableDeclarator: 1,
- outerIIFEBody: 1,
- MemberExpression: 1,
- FunctionDeclaration: {
- parameters: 1,
- body: 1,
- },
- FunctionExpression: {
- parameters: 1,
- body: 1,
- },
- CallExpression: {
- arguments: 1,
- },
- ArrayExpression: 1,
- ObjectExpression: 1,
- ImportDeclaration: 1,
- flatTernaryExpressions: false,
- ignoreComments: false,
- },
- ],
- "key-spacing": ["error", { beforeColon: false, afterColon: true }],
- "keyword-spacing": ["error", { before: true, after: true }],
- "line-comment-position": "off",
- "linebreak-style": ["error", "unix"],
- "lines-around-comment": [
- "warn",
- {
- beforeBlockComment: true,
- beforeLineComment: false,
- afterBlockComment: false,
- afterLineComment: false,
- allowBlockStart: true,
- allowBlockEnd: true,
- allowObjectStart: true,
- allowObjectEnd: true,
- allowArrayStart: true,
- allowArrayEnd: true,
- allowClassStart: true,
- allowClassEnd: true,
- },
- ],
- "lines-between-class-members": [
- "error",
- "always",
- {
- exceptAfterSingleLine: true,
- },
- ],
- "max-depth": ["error", 10],
- "max-len": [
- "off",
- {
- code: 100,
- ignoreComments: true,
- },
- ],
- "max-lines-per-function": "off",
- "max-nested-callbacks": "off",
- "max-params": "off",
- "max-statements-per-line": ["error", { max: 1 }],
- "multiline-comment-style": "off",
- "multiline-ternary": ["error", "always-multiline"],
- // This rule is implemented in a not very nice way when it comes to working with 3rd parties.
- "new-cap": "off",
- "new-parens": "error",
- "newline-per-chained-call": [
- "error",
- {
- ignoreChainWithDepth: 2,
- },
- ],
- "no-array-constructor": "error",
- "no-inline-comments": "off",
- "no-lonely-if": "error",
- "no-mixed-operators": [
- "error",
- {
- groups: [
- ["+", "-", "*", "/", "%", "**"],
- ["&", "|", "^", "~", "<<", ">>", ">>>"],
- ["==", "!=", "===", "!==", ">", ">=", "<", "<="],
- ["&&", "||"],
- ["in", "instanceof"],
- ],
- allowSamePrecedence: true,
- },
- ],
- "no-mixed-spaces-and-tabs": "error",
- "no-multi-assign": "error",
- "no-multiple-empty-lines": [
- "error",
- {
- max: 1,
- maxEOF: 1,
- },
- ],
- "no-negated-condition": "off",
- "no-nested-ternary": "off",
- "no-new-object": "error",
- "no-plusplus": "off",
- "no-restricted-syntax": [
- "error",
- {
- selector: "ForInStatement",
- message:
- "for..in loops iterate over the entire prototype chain, which is virtually never what you want. Use Object.{keys,values,entries}, and iterate over the resulting array.",
- },
- {
- selector: "WithStatement",
- message:
- "`with` is disallowed in strict mode because it makes code impossible to predict and optimize.",
- },
- {
- selector:
- ':not(ArrowFunctionExpression) > UnaryExpression[operator="void"] > :not(CallExpression)',
- message: 'Don\'t use "void".',
- },
- ],
- "no-tabs": "error",
- "no-trailing-spaces": "error",
- "no-underscore-dangle": "off",
- "no-unneeded-ternary": "error",
- "no-whitespace-before-property": "error",
- "no-multi-spaces": [
- "error",
- {
- ignoreEOLComments: true,
- },
- ],
- "nonblock-statement-body-position": [
- "error",
- "beside",
- {
- overrides: {},
- },
- ],
- "object-curly-newline": [
- "error",
- {
- ObjectExpression: {
- minProperties: 3,
- multiline: true,
- consistent: true,
- },
- ObjectPattern: {
- minProperties: 3,
- multiline: true,
- consistent: true,
- },
- },
- ],
- "object-curly-spacing": ["error", "always"],
- "object-property-newline": [
- "error",
- {
- allowAllPropertiesOnSameLine: true,
- },
- ],
- "one-var": [
- "error",
- {
- var: "never",
- let: "never",
- const: "never",
- },
- ],
- "one-var-declaration-per-line": ["error", "always"],
- "operator-assignment": ["error", "always"],
- "operator-linebreak": [
- "error",
- "after",
- {
- overrides: {
- "=": "none",
- "==": "none",
- "===": "none",
- "?": "before",
- ":": "before",
- },
- },
- ],
- "padded-blocks": [
- "error",
- {
- blocks: "never",
- switches: "never",
- classes: "never",
- },
- ],
- "prefer-object-spread": "error",
- "quote-props": ["error", "consistent-as-needed"],
- "quotes": [
- "error",
- "double",
- {
- avoidEscape: true,
- allowTemplateLiterals: true,
- },
- ],
- "rest-spread-spacing": ["error", "never"],
- "semi": ["error", "always"],
- "semi-spacing": ["error", { before: false, after: true }],
- "semi-style": ["error", "last"],
- "space-before-blocks": ["error", "always"],
- "space-before-function-paren": [
- "error",
- {
- asyncArrow: "always",
- anonymous: "never",
- named: "never",
- },
- ],
- "space-in-parens": ["error", "never"],
- "space-infix-ops": "error",
- "space-unary-ops": [
- "error",
- {
- words: true,
- nonwords: false,
- },
- ],
- "spaced-comment": [
- "error",
- "always",
- {
- line: {
- exceptions: ["-", "+", "*"],
- markers: ["*package", "!", "/", ",", "="],
- },
- block: {
- balanced: true,
- exceptions: ["-", "+", "*"],
- markers: ["*package", "!", "*", ",", ":", "::", "flow-include"],
- },
- },
- ],
- "switch-colon-spacing": ["error", { after: true, before: false }],
- "template-curly-spacing": ["error", "never"],
- "template-tag-spacing": ["error", "never"],
- "unicode-bom": ["error", "never"],
- "wrap-iife": [
- "error",
- "inside",
- {
- functionPrototypeMethods: true,
- },
- ],
- "yield-star-spacing": ["error", "after"],
-};
-
-export const overrides: NonNullable = [];
diff --git a/src/builtin/possible-problems.ts b/src/builtin/possible-problems.ts
deleted file mode 100644
index 5e8ab173..00000000
--- a/src/builtin/possible-problems.ts
+++ /dev/null
@@ -1,86 +0,0 @@
-import { type Linter } from "eslint";
-
-export const rules: Linter.Config["rules"] = {
- "constructor-super": "error",
- "for-direction": "error",
- "getter-return": "error",
- "no-await-in-loop": "error",
- "no-compare-neg-zero": "error",
- "no-cond-assign": ["error", "always"],
- "no-console": "off",
- "no-constant-binary-expression": "error",
- "no-constant-condition": "error",
- "no-constructor-return": "error",
- "no-control-regex": "error",
- "no-debugger": "warn",
- "no-dupe-args": "error",
- "no-dupe-keys": "error",
- "no-duplicate-case": "error",
- "no-empty-character-class": "error",
- "no-empty-pattern": "error",
- "no-empty": ["warn", { allowEmptyCatch: true }],
- "no-ex-assign": "error",
- "no-extra-boolean-cast": "error",
- "no-extra-parens": [
- "error",
- "all",
- {
- nestedBinaryExpressions: false,
- },
- ],
- "no-class-assign": "error",
- "no-const-assign": "error",
- "no-dupe-class-members": "error",
- "no-duplicate-imports": "off",
- "no-extra-semi": "error",
- "no-fallthrough": "error",
- "no-func-assign": "error",
- "no-inner-declarations": ["error", "functions"],
- "no-invalid-regexp": "error",
- "no-irregular-whitespace": "error",
- "no-misleading-character-class": "error",
- "no-new-symbol": "error",
- "no-obj-calls": "error",
- "no-promise-executor-return": "error",
- "no-prototype-builtins": "error",
- "no-regex-spaces": "error",
- "no-self-assign": "error",
- "no-self-compare": "error",
- "no-sparse-arrays": "error",
- "no-template-curly-in-string": "warn",
- "no-this-before-super": "error",
- "no-undef": "error",
- "no-unexpected-multiline": "error",
- "no-unmodified-loop-condition": "error",
- "no-unreachable-loop": "error",
- "no-unreachable": "error",
- "no-unsafe-finally": "error",
- "no-unsafe-negation": "error",
- "no-unused-private-class-members": "error",
- "no-unused-vars": [
- "error",
- {
- vars: "all",
- args: "after-used",
- ignoreRestSiblings: true,
- },
- ],
- "no-use-before-define": [
- "error",
- {
- functions: true,
- classes: true,
- variables: true,
- },
- ],
- "require-atomic-updates": "error",
- "use-isnan": "error",
- "valid-typeof": [
- "error",
- {
- requireStringLiterals: true,
- },
- ],
-};
-
-export const overrides: NonNullable = [];
diff --git a/src/builtin/suggestions.ts b/src/builtin/suggestions.ts
deleted file mode 100644
index e5b5485f..00000000
--- a/src/builtin/suggestions.ts
+++ /dev/null
@@ -1,201 +0,0 @@
-import { type Linter } from "eslint";
-
-import { typescriptDeclarationFiles } from "~/files";
-
-const useNumberIsFinite = "Please use Number.isFinite instead";
-const useNumberIsNan = "Please use Number.isNaN instead";
-const useObjectDefineProperty = "Please use Object.defineProperty instead.";
-
-export const rules: Linter.Config["rules"] = {
- "accessor-pairs": "error",
- "arrow-body-style": ["error", "as-needed"],
- "block-scoped-var": "error",
- "class-methods-use-this": "error",
- "consistent-return": [
- "error",
- {
- treatUndefinedAsUnspecified: false,
- },
- ],
- "curly": ["error", "all"],
- "default-case-last": "error",
- "default-param-last": "off",
- "dot-notation": "error",
- "eqeqeq": ["error", "always", { null: "always" }],
- "grouped-accessor-pairs": "error",
- "guard-for-in": "error",
- "init-declarations": "off",
- "logical-assignment-operators": "error",
- "max-classes-per-file": ["error", 1],
- "no-alert": "error",
- "no-caller": "error",
- "no-case-declarations": "error",
- "no-else-return": [
- "error",
- {
- allowElseIf: false,
- },
- ],
- "no-empty-function": "off",
- "no-eq-null": "error",
- "no-eval": "error",
- "no-extend-native": "error",
- "no-extra-bind": "error",
- "no-extra-label": "error",
- "no-floating-decimal": "error",
- "no-global-assign": "error",
- "no-implicit-coercion": "error",
- "no-implicit-globals": "error",
- "no-implied-eval": "error",
- "no-invalid-this": "error",
- "no-iterator": "error",
- "no-labels": [
- "error",
- {
- allowLoop: true,
- allowSwitch: true,
- },
- ],
- "no-lone-blocks": "error",
- "no-loop-func": "error",
- "no-multi-str": "off",
- "no-new-func": "error",
- "no-new-object": "error",
- "no-new-wrappers": "error",
- "no-new": "error",
- "no-octal-escape": "error",
- "no-octal": "error",
- "no-param-reassign": "error",
- "no-proto": "error",
- "no-redeclare": "error",
- "no-restricted-properties": [
- "error",
- {
- object: "arguments",
- property: "callee",
- message: "arguments.callee is deprecated",
- },
- {
- object: "global",
- property: "isFinite",
- message: useNumberIsFinite,
- },
- {
- object: "self",
- property: "isFinite",
- message: useNumberIsFinite,
- },
- {
- object: "window",
- property: "isFinite",
- message: useNumberIsFinite,
- },
- {
- object: "global",
- property: "isNaN",
- message: useNumberIsNan,
- },
- {
- object: "self",
- property: "isNaN",
- message: useNumberIsNan,
- },
- {
- object: "window",
- property: "isNaN",
- message: useNumberIsNan,
- },
- {
- property: "__defineGetter__",
- message: useObjectDefineProperty,
- },
- {
- property: "__defineSetter__",
- message: useObjectDefineProperty,
- },
- ],
- "object-shorthand": "error",
- "no-delete-var": "error",
- "no-label-var": "error",
- "no-restricted-globals": [
- "error",
- {
- name: "event",
- message: "Use local parameter instead.",
- },
- ],
- "no-return-assign": "error",
- "no-return-await": "error",
- "no-script-url": "error",
- "no-sequences": "error",
- "no-shadow": [
- "warn",
- {
- builtinGlobals: false,
- hoist: "never",
- allow: ["resolve", "reject", "done", "cb"],
- },
- ],
- "no-shadow-restricted-names": "error",
- "no-throw-literal": "error",
- "no-unused-expressions": "error",
- "no-unused-labels": "error",
- "no-useless-call": "error",
- "no-useless-computed-key": "error",
- "no-useless-concat": "error",
- "no-useless-constructor": "warn",
- "no-useless-escape": "error",
- "no-useless-rename": "error",
- "no-useless-return": "error",
- "no-var": "error",
- "no-void": "off",
- "no-warning-comments": "off",
- "no-with": "error",
- "prefer-arrow-callback": "error",
- "prefer-const": [
- "error",
- {
- destructuring: "all",
- },
- ],
- "prefer-destructuring": [
- "error",
- {
- VariableDeclarator: {
- array: false,
- object: true,
- },
- AssignmentExpression: {
- array: true,
- object: true,
- },
- },
- {
- enforceForRenamedProperties: false,
- },
- ],
- "prefer-exponentiation-operator": "error",
- "prefer-numeric-literals": "error",
- "prefer-object-has-own": "error",
- "prefer-promise-reject-errors": "error",
- "prefer-regex-literals": "error",
- "prefer-rest-params": "error",
- "prefer-spread": "error",
- "prefer-template": "error",
- "radix": "error",
- "require-await": "error",
- "require-unicode-regexp": "error",
- "require-yield": "error",
- "strict": ["error", "never"],
- "symbol-description": "error",
- "yoda": ["error", "never"],
-};
-
-export const overrides: NonNullable = [
- {
- files: typescriptDeclarationFiles,
- rules: {
- "init-declarations": "off",
- },
- },
-];
diff --git a/src/common/files.ts b/src/common/files.ts
deleted file mode 100644
index 5453a38b..00000000
--- a/src/common/files.ts
+++ /dev/null
@@ -1,24 +0,0 @@
-export const typescriptExtensions = [".ts", ".tsx", ".mts", ".cts"];
-export const typescriptDeclarationExtensions = [".d.ts", ".d.mts", ".d.cts"];
-export const jsExtensions = [".js", ".mjs", ".cjs"];
-export const jsxExtensions = [".jsx", ".tsx"];
-export const commonJsExtensions = [".cjs", ".cts"];
-
-export const typescriptSupportedExtensions = [
- ...new Set([
- ...typescriptExtensions,
- ...typescriptDeclarationExtensions,
- ...jsExtensions,
- ...jsxExtensions,
- ]),
-];
-
-export const typescriptFiles = [`**/*{${typescriptExtensions.join(",")}}`];
-export const typescriptDeclarationFiles = [
- `**/*{${typescriptDeclarationExtensions.join(",")}}`,
-];
-export const jsxFiles = [`**/*{${jsxExtensions.join(",")}}`];
-export const commonJsFiles = [`**/*{${commonJsExtensions.join(",")}}`];
-export const jsFiles = [`**/*{${jsExtensions.join(",")}}`];
-
-export const testFiles = ["{test,tests}/**/*", "**/*.{spec,test}.*"];
diff --git a/src/common/merge-configs.ts b/src/common/merge-configs.ts
deleted file mode 100644
index 5f0dab07..00000000
--- a/src/common/merge-configs.ts
+++ /dev/null
@@ -1,94 +0,0 @@
-import {
- type DeepMergeMergeFunctionUtils,
- deepmergeCustom,
-} from "deepmerge-ts";
-import { type Linter } from "eslint";
-
-type Meta = Readonly<{
- keyPath: PropertyKey[];
-}>;
-
-/**
- * Merge multiple eslint configs into one.
- */
-export const mergeConfigs = deepmergeCustom<{}, Meta>({
- metaDataUpdater: (previousMeta, metaMeta): Meta => {
- if (previousMeta === undefined) {
- if (metaMeta.key === undefined) {
- return { keyPath: [] };
- }
- return { keyPath: [metaMeta.key] };
- }
- if (metaMeta.key === undefined) {
- return previousMeta;
- }
- return {
- ...metaMeta,
- keyPath: [...previousMeta.keyPath, metaMeta.key],
- };
- },
- mergeArrays(values, utils, meta): unknown {
- if (isRuleSettings(meta)) {
- return mergeRuleSettings(values, utils);
- }
-
- return [...new Set(utils.defaultMergeFunctions.mergeArrays(values))];
- },
- mergeOthers(values, utils, meta): unknown {
- if (isRuleSettings(meta)) {
- return mergeRuleSettings(values, utils);
- }
-
- return utils.actions.defaultMerge;
- },
-});
-
-/**
- * Based on the meta data, should the current data be for rule settings.
- */
-function isRuleSettings(meta: Meta | undefined) {
- return (
- meta !== undefined &&
- ((meta.keyPath.length === 2 && meta.keyPath[0] === "rules") ||
- (meta.keyPath.length === 4 &&
- meta.keyPath[1] === "overrides" &&
- typeof meta.keyPath[2] === "number" &&
- meta.keyPath[3] === "rules"))
- );
-}
-
-/**
- * Merge eslint rule settings.
- *
- * @throws When invalid rule setting syntax are given.
- */
-function mergeRuleSettings(
- values: ReadonlyArray,
- utils: DeepMergeMergeFunctionUtils,
-): Linter.RuleEntry | (typeof utils.actions)[keyof typeof utils.actions] {
- const settingsData = values.findLast(
- (value): value is [unknown, ...unknown[]] =>
- Array.isArray(value) && value.length >= 2,
- );
- if (settingsData === undefined) {
- return utils.actions.defaultMerge;
- }
- const severityData = values.at(-1);
- const severity: unknown = Array.isArray(severityData)
- ? severityData[0]
- : severityData;
-
- if (severity === "off" || severity === 0) {
- return severity;
- }
- if (
- severity !== "error" &&
- severity !== 2 &&
- severity !== "warn" &&
- severity !== 1
- ) {
- throw new Error(`Unknow rule severity: "${String(severity)}"`);
- }
- const settings = settingsData.slice(1);
- return [severity, ...settings];
-}
diff --git a/src/configs/comments.ts b/src/configs/comments.ts
new file mode 100644
index 00000000..28d557c2
--- /dev/null
+++ b/src/configs/comments.ts
@@ -0,0 +1,26 @@
+import type { ESLint } from "eslint";
+
+import type { FlatConfigItem } from "../types";
+import { loadPackages } from "../utils";
+
+export async function comments(): Promise {
+ const [pluginComments] = (await loadPackages([
+ "eslint-plugin-eslint-comments",
+ ])) as [ESLint.Plugin];
+
+ return [
+ {
+ name: "rs:comments",
+ plugins: {
+ comments: pluginComments,
+ },
+ rules: {
+ "comments/no-aggregating-enable": "error",
+ "comments/no-duplicate-disable": "error",
+ "comments/no-unlimited-disable": "error",
+ "comments/no-unused-enable": "error",
+ "comments/disable-enable-pair": ["error", { allowWholeFile: true }],
+ },
+ },
+ ];
+}
diff --git a/src/configs/common-overrides.ts b/src/configs/common-overrides.ts
deleted file mode 100644
index d781444d..00000000
--- a/src/configs/common-overrides.ts
+++ /dev/null
@@ -1,45 +0,0 @@
-import { type Linter } from "eslint";
-
-import { jsFiles, jsxFiles, testFiles } from "~/files";
-
-export default {
- overrides: [
- {
- files: ["./*"],
- extends: ["@rebeccastevens/eslint-config/script"],
- rules: {
- "functional/immutable-data": "off",
- },
- },
- {
- files: ["scripts/**/*"],
- extends: ["@rebeccastevens/eslint-config/script"],
- },
- {
- files: testFiles,
- extends: ["@rebeccastevens/eslint-config/test"],
- },
- {
- files: jsFiles,
- extends: [
- "plugin:@typescript-eslint/disable-type-checked",
- "plugin:functional/disable-type-checked",
- ],
- parserOptions: {
- project: false,
- },
- },
- {
- files: jsxFiles,
- parserOptions: {
- ecmaVersion: "latest",
- sourceType: "module",
- ecmaFeatures: {
- globalReturn: false,
- impliedStrict: true,
- jsx: true,
- },
- },
- },
- ],
-} as Linter.Config;
diff --git a/src/configs/formatters.ts b/src/configs/formatters.ts
new file mode 100644
index 00000000..30e23c84
--- /dev/null
+++ b/src/configs/formatters.ts
@@ -0,0 +1,626 @@
+import type { ESLint } from "eslint";
+import { isPackageExists } from "local-pkg";
+import type { Options as PrettierOptions } from "prettier";
+
+import {
+ GLOB_CSS,
+ GLOB_DTS,
+ GLOB_GRAPHQL,
+ GLOB_JS,
+ GLOB_JSON,
+ GLOB_JSON5,
+ GLOB_JSONC,
+ GLOB_JSX,
+ GLOB_LESS,
+ GLOB_MARKDOWN,
+ GLOB_POSTCSS,
+ GLOB_SCSS,
+ GLOB_TS,
+ GLOB_TSX,
+ GLOB_YAML,
+} from "../globs";
+import type {
+ FlatConfigItem,
+ OptionsFormatters,
+ StylisticConfig,
+} from "../types";
+import { loadPackages, parserPlain } from "../utils";
+
+export async function formatters(
+ opts: Readonly,
+ stylistic: Readonly,
+): Promise {
+ const options =
+ opts === true
+ ? {
+ js: true,
+ ts: true,
+ dts: false,
+ json: true,
+ yaml: true,
+ css: true,
+ graphql: true,
+ html: true,
+ markdown: true,
+ slidev: isPackageExists("@slidev/cli"),
+ }
+ : opts;
+
+ if (
+ options.slidev !== false &&
+ options.slidev !== undefined &&
+ options.markdown !== true
+ ) {
+ throw new Error(
+ "`slidev` option only works when `markdown` is enabled with `prettier`",
+ );
+ }
+
+ const { indent, quotes, semi } = stylistic;
+
+ const prettierOptions: PrettierOptions = Object.assign(
+ {
+ endOfLine: "lf",
+ semi: semi ?? true,
+ singleQuote: quotes === "single",
+ tabWidth: typeof indent === "number" ? indent : 2,
+ trailingComma: "all",
+ useTabs: indent === "tab",
+ } satisfies PrettierOptions,
+
+ options.prettierOptions ?? {},
+ );
+
+ const [pluginFormat, configPrettier] = (await loadPackages([
+ "eslint-plugin-format",
+ "eslint-config-prettier",
+ "prettier",
+ "prettier-plugin-packagejson",
+ ])) as [ESLint.Plugin, ESLint.ConfigData, unknown, unknown];
+
+ const turnOffRulesForPrettier = {
+ ...Object.fromEntries(
+ Object.entries(configPrettier.rules ?? {}).filter(
+ ([, value]) => value === "off",
+ ),
+ ),
+
+ "no-irregular-whitespace": "off",
+ // "style/lines-around-comment": "off",
+ "style/max-len": "off",
+ "style/no-confusing-arrow": "off",
+ "style/no-mixed-operators": "off",
+ "style/no-tabs": "off",
+ "style/quotes": "off",
+ // "style/js/lines-around-comment": "off",
+ // "style/js/max-len": "off",
+ "style/js/no-confusing-arrow": "off",
+ "style/js/no-mixed-operators": "off",
+ "style/js/no-tabs": "off",
+ "style/js/quotes": "off",
+ // "style/ts/lines-around-comment": "off",
+ "style/ts/quotes": "off",
+
+ // From https://github.com/prettier/eslint-config-prettier/pull/272
+ "style/array-bracket-newline": "off",
+ "style/array-bracket-spacing": "off",
+ "style/array-element-newline": "off",
+ "style/arrow-parens": "off",
+ "style/arrow-spacing": "off",
+ "style/block-spacing": "off",
+ "style/brace-style": "off",
+ "style/comma-dangle": "off",
+ "style/comma-spacing": "off",
+ "style/comma-style": "off",
+ "style/computed-property-spacing": "off",
+ "style/dot-location": "off",
+ "style/eol-last": "off",
+ "style/func-call-spacing": "off",
+ "style/function-call-argument-newline": "off",
+ "style/function-call-spacing": "off",
+ "style/function-paren-newline": "off",
+ "style/generator-star-spacing": "off",
+ "style/implicit-arrow-linebreak": "off",
+ "style/indent-binary-ops": "off",
+ "style/indent": "off",
+ "style/key-spacing": "off",
+ "style/keyword-spacing": "off",
+ "style/linebreak-style": "off",
+ "style/max-statements-per-line": "off",
+ "style/member-delimiter-style": "off",
+ "style/multiline-ternary": "off",
+ "style/new-parens": "off",
+ "style/newline-per-chained-call": "off",
+ "style/no-extra-parens": "off",
+ "style/no-extra-semi": "off",
+ "style/no-floating-decimal": "off",
+ "style/no-mixed-spaces-and-tabs": "off",
+ "style/no-multi-spaces": "off",
+ "style/no-multiple-empty-lines": "off",
+ "style/no-trailing-spaces": "off",
+ "style/no-whitespace-before-property": "off",
+ "style/nonblock-statement-body-position": "off",
+ "style/object-curly-newline": "off",
+ "style/object-curly-spacing": "off",
+ "style/object-property-newline": "off",
+ "style/one-var-declaration-per-line": "off",
+ "style/operator-linebreak": "off",
+ "style/padded-blocks": "off",
+ "style/quote-props": "off",
+ "style/rest-spread-spacing": "off",
+ "style/semi-spacing": "off",
+ "style/semi-style": "off",
+ "style/semi": "off",
+ "style/space-before-blocks": "off",
+ "style/space-before-function-paren": "off",
+ "style/space-in-parens": "off",
+ "style/space-infix-ops": "off",
+ "style/space-unary-ops": "off",
+ "style/switch-colon-spacing": "off",
+ "style/template-curly-spacing": "off",
+ "style/template-tag-spacing": "off",
+ "style/type-annotation-spacing": "off",
+ "style/type-generic-spacing": "off",
+ "style/type-named-tuple-spacing": "off",
+ "style/wrap-iife": "off",
+ "style/wrap-regex": "off",
+ "style/yield-star-spacing": "off",
+
+ "style/js/array-bracket-newline": "off",
+ "style/js/array-bracket-spacing": "off",
+ "style/js/array-element-newline": "off",
+ "style/js/arrow-parens": "off",
+ "style/js/arrow-spacing": "off",
+ "style/js/block-spacing": "off",
+ "style/js/brace-style": "off",
+ "style/js/comma-dangle": "off",
+ "style/js/comma-spacing": "off",
+ "style/js/comma-style": "off",
+ "style/js/computed-property-spacing": "off",
+ "style/js/dot-location": "off",
+ "style/js/eol-last": "off",
+ "style/js/func-call-spacing": "off",
+ "style/js/function-call-argument-newline": "off",
+ "style/js/function-call-spacing": "off",
+ "style/js/function-paren-newline": "off",
+ "style/js/generator-star-spacing": "off",
+ "style/js/implicit-arrow-linebreak": "off",
+ "style/js/indent": "off",
+ "style/js/jsx-quotes": "off",
+ "style/js/key-spacing": "off",
+ "style/js/keyword-spacing": "off",
+ "style/js/linebreak-style": "off",
+ "style/js/max-statements-per-line": "off",
+ "style/js/multiline-ternary": "off",
+ "style/js/new-parens": "off",
+ "style/js/newline-per-chained-call": "off",
+ "style/js/no-extra-parens": "off",
+ "style/js/no-extra-semi": "off",
+ "style/js/no-floating-decimal": "off",
+ "style/js/no-mixed-spaces-and-tabs": "off",
+ "style/js/no-multi-spaces": "off",
+ "style/js/no-multiple-empty-lines": "off",
+ "style/js/no-trailing-spaces": "off",
+ "style/js/no-whitespace-before-property": "off",
+ "style/js/nonblock-statement-body-position": "off",
+ "style/js/object-curly-newline": "off",
+ "style/js/object-curly-spacing": "off",
+ "style/js/object-property-newline": "off",
+ "style/js/one-var-declaration-per-line": "off",
+ "style/js/operator-linebreak": "off",
+ "style/js/padded-blocks": "off",
+ "style/js/quote-props": "off",
+ "style/js/rest-spread-spacing": "off",
+ "style/js/semi-spacing": "off",
+ "style/js/semi-style": "off",
+ "style/js/semi": "off",
+ "style/js/space-before-blocks": "off",
+ "style/js/space-before-function-paren": "off",
+ "style/js/space-in-parens": "off",
+ "style/js/space-infix-ops": "off",
+ "style/js/space-unary-ops": "off",
+ "style/js/switch-colon-spacing": "off",
+ "style/js/template-curly-spacing": "off",
+ "style/js/template-tag-spacing": "off",
+ "style/js/wrap-iife": "off",
+ "style/js/wrap-regex": "off",
+ "style/js/yield-star-spacing": "off",
+
+ "style/jsx-child-element-spacing": "off",
+ "style/jsx-closing-bracket-location": "off",
+ "style/jsx-closing-tag-location": "off",
+ "style/jsx-curly-newline": "off",
+ "style/jsx-curly-spacing": "off",
+ "style/jsx-equals-spacing": "off",
+ "style/jsx-first-prop-new-line": "off",
+ "style/jsx-indent-props": "off",
+ "style/jsx-indent": "off",
+ "style/jsx-max-props-per-line": "off",
+ "style/jsx-newline": "off",
+ "style/jsx-one-expression-per-line": "off",
+ "style/jsx-props-no-multi-spaces": "off",
+ "style/jsx-quotes": "off",
+ "style/jsx-tag-spacing": "off",
+ "style/jsx-wrap-multilines": "off",
+ "style/jsx/jsx-child-element-spacing": "off",
+ "style/jsx/jsx-closing-bracket-location": "off",
+ "style/jsx/jsx-closing-tag-location": "off",
+ "style/jsx/jsx-curly-newline": "off",
+ "style/jsx/jsx-curly-spacing": "off",
+ "style/jsx/jsx-equals-spacing": "off",
+ "style/jsx/jsx-first-prop-new-line": "off",
+ "style/jsx/jsx-indent-props": "off",
+ "style/jsx/jsx-indent": "off",
+ "style/jsx/jsx-max-props-per-line": "off",
+
+ "style/ts/block-spacing": "off",
+ "style/ts/brace-style": "off",
+ "style/ts/comma-dangle": "off",
+ "style/ts/comma-spacing": "off",
+ "style/ts/func-call-spacing": "off",
+ "style/ts/function-call-spacing": "off",
+ "style/ts/indent": "off",
+ "style/ts/key-spacing": "off",
+ "style/ts/keyword-spacing": "off",
+ "style/ts/member-delimiter-style": "off",
+ "style/ts/no-extra-parens": "off",
+ "style/ts/no-extra-semi": "off",
+ "style/ts/object-curly-spacing": "off",
+ "style/ts/semi": "off",
+ "style/ts/space-before-blocks": "off",
+ "style/ts/space-before-function-paren": "off",
+ "style/ts/space-infix-ops": "off",
+ "style/ts/type-annotation-spacing": "off",
+
+ "@typescript-eslint/block-spacing": "off",
+ "@typescript-eslint/brace-style": "off",
+ "@typescript-eslint/comma-dangle": "off",
+ "@typescript-eslint/comma-spacing": "off",
+ "@typescript-eslint/func-call-spacing": "off",
+ "@typescript-eslint/indent": "off",
+ "@typescript-eslint/key-spacing": "off",
+ "@typescript-eslint/keyword-spacing": "off",
+ "@typescript-eslint/member-delimiter-style": "off",
+ "@typescript-eslint/no-extra-parens": "off",
+ "@typescript-eslint/no-extra-semi": "off",
+ "@typescript-eslint/object-curly-spacing": "off",
+ "@typescript-eslint/semi": "off",
+ "@typescript-eslint/space-before-blocks": "off",
+ "@typescript-eslint/space-before-function-paren": "off",
+ "@typescript-eslint/space-infix-ops": "off",
+ "@typescript-eslint/type-annotation-spacing": "off",
+
+ "unicorn/empty-brace-spaces": "off",
+ "unicorn/no-nested-ternary": "off",
+ "unicorn/number-literal-case": "off",
+
+ "vue/array-bracket-newline": "off",
+ "vue/array-bracket-spacing": "off",
+ "vue/array-element-newline": "off",
+ "vue/arrow-spacing": "off",
+ "vue/block-spacing": "off",
+ "vue/block-tag-newline": "off",
+ "vue/brace-style": "off",
+ "vue/comma-dangle": "off",
+ "vue/comma-spacing": "off",
+ "vue/comma-style": "off",
+ "vue/dot-location": "off",
+ "vue/func-call-spacing": "off",
+ "vue/html-closing-bracket-newline": "off",
+ "vue/html-closing-bracket-spacing": "off",
+ "vue/html-end-tags": "off",
+ "vue/html-indent": "off",
+ "vue/html-quotes": "off",
+ "vue/key-spacing": "off",
+ "vue/keyword-spacing": "off",
+ "vue/max-attributes-per-line": "off",
+ "vue/multiline-html-element-content-newline": "off",
+ "vue/multiline-ternary": "off",
+ "vue/mustache-interpolation-spacing": "off",
+ "vue/no-extra-parens": "off",
+ "vue/no-multi-spaces": "off",
+ "vue/no-spaces-around-equal-signs-in-attribute": "off",
+ "vue/object-curly-newline": "off",
+ "vue/object-curly-spacing": "off",
+ "vue/object-property-newline": "off",
+ "vue/operator-linebreak": "off",
+ "vue/quote-props": "off",
+ "vue/script-indent": "off",
+ "vue/singleline-html-element-content-newline": "off",
+ "vue/space-in-parens": "off",
+ "vue/space-infix-ops": "off",
+ "vue/space-unary-ops": "off",
+ "vue/template-curly-spacing": "off",
+
+ "yaml/block-sequence-hyphen-indicator-newline": "off",
+ } satisfies FlatConfigItem["rules"];
+
+ const m_configs: FlatConfigItem[] = [
+ {
+ name: "rs:formatters:setup",
+ plugins: {
+ format: pluginFormat,
+ },
+ },
+ ];
+
+ if (options.js !== undefined && options.js) {
+ m_configs.push({
+ name: "rs:formatter:javascript",
+ files: [GLOB_JS, GLOB_JSX],
+ rules: {
+ ...turnOffRulesForPrettier,
+ "format/prettier": [
+ "error",
+ {
+ ...prettierOptions,
+ parser: "babel",
+ },
+ ],
+ },
+ });
+ }
+
+ if (options.ts !== undefined && options.ts) {
+ m_configs.push({
+ name: "rs:formatter:typescript",
+ files: [GLOB_TS, GLOB_TSX],
+ ignores: options.dts === true ? [] : [GLOB_DTS],
+ rules: {
+ ...turnOffRulesForPrettier,
+ "format/prettier": [
+ "error",
+ {
+ ...prettierOptions,
+ parser: "typescript",
+ },
+ ],
+ },
+ });
+ }
+
+ if (options.yaml !== undefined && options.yaml) {
+ m_configs.push({
+ name: "rs:formatter:yaml",
+ files: [GLOB_YAML],
+ languageOptions: {
+ parser: parserPlain,
+ },
+ rules: {
+ ...turnOffRulesForPrettier,
+ "format/prettier": [
+ "error",
+ {
+ ...prettierOptions,
+ parser: "yaml",
+ },
+ ],
+ },
+ });
+ }
+
+ if (options.json !== undefined && options.json) {
+ m_configs.push(
+ {
+ name: "rs:formatter:json",
+ files: [GLOB_JSON],
+ languageOptions: {
+ parser: parserPlain,
+ },
+ rules: {
+ ...turnOffRulesForPrettier,
+ "format/prettier": [
+ "error",
+ {
+ ...prettierOptions,
+ parser: "json",
+ },
+ ],
+ },
+ },
+ {
+ name: "rs:formatter:jsonc",
+ files: [GLOB_JSONC],
+ languageOptions: {
+ parser: parserPlain,
+ },
+ rules: {
+ ...turnOffRulesForPrettier,
+ "format/prettier": [
+ "error",
+ {
+ ...prettierOptions,
+ parser: "jsonc",
+ },
+ ],
+ },
+ },
+ {
+ name: "rs:formatter:json5",
+ files: [GLOB_JSON5],
+ languageOptions: {
+ parser: parserPlain,
+ },
+ rules: {
+ ...turnOffRulesForPrettier,
+ "format/prettier": [
+ "error",
+ {
+ ...prettierOptions,
+ parser: "json5",
+ },
+ ],
+ },
+ },
+ {
+ name: "rs:formatter:json",
+ files: ["**/package.json"],
+ languageOptions: {
+ parser: parserPlain,
+ },
+ rules: {
+ ...turnOffRulesForPrettier,
+ "format/prettier": [
+ "error",
+ {
+ ...prettierOptions,
+ parser: "json",
+ plugins: ["prettier-plugin-packagejson"],
+ },
+ ],
+ },
+ },
+ );
+ }
+
+ if (options.css !== undefined && options.css) {
+ m_configs.push(
+ {
+ name: "rs:formatter:css",
+ files: [GLOB_CSS, GLOB_POSTCSS],
+ languageOptions: {
+ parser: parserPlain,
+ },
+ rules: {
+ ...turnOffRulesForPrettier,
+ "format/prettier": [
+ "error",
+ {
+ ...prettierOptions,
+ parser: "css",
+ },
+ ],
+ },
+ },
+ {
+ name: "rs:formatter:scss",
+ files: [GLOB_SCSS],
+ languageOptions: {
+ parser: parserPlain,
+ },
+ rules: {
+ ...turnOffRulesForPrettier,
+ "format/prettier": [
+ "error",
+ {
+ ...prettierOptions,
+ parser: "scss",
+ },
+ ],
+ },
+ },
+ {
+ name: "rs:formatter:less",
+ files: [GLOB_LESS],
+ languageOptions: {
+ parser: parserPlain,
+ },
+ rules: {
+ ...turnOffRulesForPrettier,
+ "format/prettier": [
+ "error",
+ {
+ ...prettierOptions,
+ parser: "less",
+ },
+ ],
+ },
+ },
+ );
+ }
+
+ if (options.html !== undefined && options.html) {
+ m_configs.push({
+ name: "rs:formatter:html",
+ files: ["**/*.html"],
+ languageOptions: {
+ parser: parserPlain,
+ },
+ rules: {
+ ...turnOffRulesForPrettier,
+ "format/prettier": [
+ "error",
+ {
+ ...prettierOptions,
+ parser: "html",
+ },
+ ],
+ },
+ });
+ }
+
+ if (options.markdown !== undefined && options.markdown) {
+ const GLOB_SLIDEV =
+ options.slidev === undefined || options.slidev === false
+ ? []
+ : options.slidev === true
+ ? ["**/slides.md"]
+ : (options.slidev.files ?? []);
+
+ m_configs.push({
+ name: "rs:formatter:markdown",
+ files: [GLOB_MARKDOWN],
+ ignores: GLOB_SLIDEV,
+ languageOptions: {
+ parser: parserPlain,
+ },
+ rules: {
+ ...turnOffRulesForPrettier,
+ "format/prettier": [
+ "error",
+ {
+ printWidth: 120,
+ ...prettierOptions,
+ embeddedLanguageFormatting: "off",
+ parser: "markdown",
+ },
+ ],
+ },
+ });
+
+ if (options.slidev !== undefined && options.slidev !== false) {
+ m_configs.push({
+ name: "rs:formatter:slidev",
+ files: GLOB_SLIDEV,
+ languageOptions: {
+ parser: parserPlain,
+ },
+ rules: {
+ ...turnOffRulesForPrettier,
+ "format/prettier": [
+ "error",
+ {
+ printWidth: 120,
+ ...prettierOptions,
+ embeddedLanguageFormatting: "off",
+ parser: "slidev",
+ plugins: ["prettier-plugin-slidev"],
+ },
+ ],
+ },
+ });
+ }
+ }
+
+ if (options.graphql !== undefined && options.graphql) {
+ m_configs.push({
+ files: [GLOB_GRAPHQL],
+ languageOptions: {
+ parser: parserPlain,
+ },
+ name: "rs:formatter:graphql",
+ rules: {
+ ...turnOffRulesForPrettier,
+ "format/prettier": [
+ "error",
+ {
+ ...prettierOptions,
+ parser: "graphql",
+ },
+ ],
+ },
+ });
+ }
+
+ return m_configs;
+}
diff --git a/src/configs/functional.ts b/src/configs/functional.ts
new file mode 100644
index 00000000..bf4230f8
--- /dev/null
+++ b/src/configs/functional.ts
@@ -0,0 +1,297 @@
+import type {
+ FlatConfigItem,
+ OptionsFunctional,
+ OptionsMode,
+ OptionsOverrides,
+ OptionsTypeScriptParserOptions,
+ RequiredOptionsStylistic,
+} from "../types";
+import { loadPackages } from "../utils";
+
+export async function functional(
+ options: Readonly<
+ Required<
+ OptionsFunctional &
+ RequiredOptionsStylistic &
+ OptionsOverrides &
+ OptionsTypeScriptParserOptions &
+ OptionsMode
+ >
+ >,
+): Promise {
+ const {
+ mode,
+ overrides,
+ stylistic,
+ filesTypeAware,
+ functionalEnforcement,
+ ignoreNamePattern,
+ // ignoreTypePattern,
+ } = options;
+
+ const stylisticEnforcement = stylistic === false ? "off" : "error";
+
+ const [pluginFunctional] = (await loadPackages([
+ "eslint-plugin-functional",
+ ])) as [(typeof import("eslint-plugin-functional"))["default"]];
+
+ const strictRules = {
+ "functional/functional-parameters": "error",
+ "functional/no-throw-statements": "error",
+ "functional/no-try-statements": "error",
+ "functional/no-let": "error",
+ "functional/no-classes": "error",
+ "functional/no-this-expressions": "error",
+ "functional/no-loop-statements": "error",
+ "functional/immutable-data": "error",
+ "functional/prefer-immutable-types": "error",
+ "functional/type-declaration-immutability": "error",
+ "functional/no-mixed-types": "error",
+ "functional/no-conditional-statements": "error",
+ "functional/no-expression-statements": "error",
+ "functional/no-return-void": "error",
+ "functional/prefer-property-signatures": stylisticEnforcement,
+ "functional/prefer-tacit": stylisticEnforcement,
+ "functional/readonly-type": stylisticEnforcement,
+ } as const satisfies FlatConfigItem["rules"];
+
+ const recommendedRules = {
+ "functional/functional-parameters": [
+ "error",
+ {
+ allowRestParameter: true,
+ enforceParameterCount: false,
+ },
+ ],
+ "functional/no-let": [
+ "error",
+ {
+ allowInForLoopInit: true,
+ ignoreIdentifierPattern: ignoreNamePattern,
+ },
+ ],
+ "functional/no-loop-statements": "error",
+ "functional/no-throw-statements": [
+ "error",
+ {
+ allowToRejectPromises: true,
+ },
+ ],
+
+ "functional/immutable-data": [
+ "error",
+ {
+ ignoreAccessorPattern: ["**.mutable*.**", "**.m_*.**"],
+ ignoreClasses: "fieldsOnly",
+ ignoreImmediateMutation: true,
+ ignoreNonConstDeclarations: true,
+ },
+ ],
+ "functional/no-conditional-statements": [
+ "error",
+ {
+ allowReturningBranches: true,
+ },
+ ],
+ "functional/no-expression-statements": [
+ "error",
+ {
+ ignoreCodePattern: "^assert",
+ ignoreSelfReturning: true,
+ ignoreVoid: true,
+ },
+ ],
+ "functional/no-return-void": "error",
+ "ts/prefer-readonly-parameter-types": "off",
+ "functional/prefer-immutable-types": [
+ mode === "library" ? "warn" : "off",
+ {
+ enforcement: "None",
+ overrides: [
+ {
+ specifiers: [
+ {
+ from: "file",
+ },
+ {
+ from: "lib",
+ },
+ ],
+ options: {
+ ignoreInferredTypes: true,
+ ignoreNamePattern,
+ parameters: { enforcement: "ReadonlyShallow" },
+ },
+ },
+ ],
+ suggestions: {
+ ReadonlyShallow: [
+ [
+ {
+ pattern:
+ "^([_$a-zA-Z\\xA0-\\uFFFF][_$a-zA-Z0-9\\xA0-\\uFFFF]*\\[\\])$",
+ replace: "readonly $1",
+ message: "Prepend with readonly.",
+ },
+ {
+ pattern: "^(Array|Map|Set)<(.+)>$",
+ replace: "Readonly$1<$2>",
+ message: "Use Readonly$1 instead of $1.",
+ },
+ ],
+ [
+ {
+ pattern: "^(.+)$",
+ replace: "Readonly<$1>",
+ message: "Surround with Readonly.",
+ },
+ ],
+ ],
+ ReadonlyDeep: [
+ [
+ {
+ pattern: "^(?:Readonly<(.+)>|(.+))$",
+ replace: "ReadonlyDeep<$1$2>",
+ message: "Surround with ReadonlyDeep.",
+ },
+ ],
+ ],
+ Immutable: [
+ [
+ {
+ pattern: "^(?:Readonly(?:Deep)?<(.+)>|(.+))$",
+ replace: "Immutable<$1$2>",
+ message: "Surround with Immutable.",
+ },
+ ],
+ ],
+ },
+ },
+ ],
+ "functional/type-declaration-immutability": [
+ "error",
+ {
+ rules: [
+ {
+ identifiers: "I?Immutable.+",
+ immutability: "Immutable",
+ comparator: "AtLeast",
+ },
+ {
+ identifiers: "I?ReadonlyDeep.+",
+ immutability: "ReadonlyDeep",
+ comparator: "AtLeast",
+ },
+ {
+ identifiers: "I?Readonly.+",
+ immutability: "ReadonlyShallow",
+ comparator: "AtLeast",
+ fixer: [
+ {
+ pattern:
+ "^([_$a-zA-Z\\xA0-\\uFFFF][_$a-zA-Z0-9\\xA0-\\uFFFF]*\\[\\])$",
+ replace: "readonly $1",
+ },
+ {
+ pattern: "^(Array|Map|Set)<(.+)>$",
+ replace: "Readonly$1<$2>",
+ },
+ {
+ pattern: "^(.+)$",
+ replace: "Readonly<$1>",
+ },
+ ],
+ },
+ {
+ identifiers: "I?Mutable.+",
+ immutability: "Mutable",
+ comparator: "AtMost",
+ fixer: [
+ {
+ pattern: "^Readonly(Array|Map|Set)<(.+)>$",
+ replace: "$1<$2>",
+ },
+ {
+ pattern: "^Readonly<(.+)>$",
+ replace: "$1",
+ },
+ ],
+ },
+ ],
+ },
+ ],
+
+ "functional/prefer-property-signatures": stylisticEnforcement,
+ "functional/prefer-tacit": stylisticEnforcement,
+ "functional/readonly-type": stylisticEnforcement,
+ } as const satisfies FlatConfigItem["rules"];
+
+ const liteRules = {
+ ...recommendedRules,
+ "functional/no-conditional-statements": "off",
+ "functional/no-expression-statements": "off",
+ "functional/no-return-void": "off",
+ "functional/prefer-immutable-types": [
+ mode === "library" ? "warn" : "off",
+ {
+ ...recommendedRules["functional/prefer-immutable-types"][1],
+ overrides: [
+ {
+ ...recommendedRules["functional/prefer-immutable-types"][1]
+ .overrides[0],
+ specifiers: [
+ {
+ from: "file",
+ },
+ ],
+ },
+ ],
+ },
+ ],
+ } as const satisfies FlatConfigItem["rules"];
+
+ const noneLibraryRules = {
+ "functional/prefer-immutable-types":
+ liteRules["functional/prefer-immutable-types"],
+ "functional/type-declaration-immutability": [
+ "warn",
+ liteRules["functional/type-declaration-immutability"][1],
+ ],
+ } as const satisfies FlatConfigItem["rules"];
+
+ return [
+ {
+ name: "rs:functional",
+ plugins: {
+ functional: pluginFunctional,
+ },
+ settings: {
+ immutability: {
+ overrides: [
+ { type: "^Readonly<.+>$", to: "ReadonlyShallow" },
+ { type: "^ReadonlyDeep<.+>$", to: "ReadonlyDeep" },
+ { type: "^Immutable<.+>$", to: "Immutable" },
+ ],
+ },
+ },
+ rules: {
+ ...pluginFunctional.configs.off.rules,
+ ...(functionalEnforcement === "none"
+ ? mode === "library"
+ ? noneLibraryRules
+ : {}
+ : functionalEnforcement === "lite"
+ ? liteRules
+ : functionalEnforcement === "strict"
+ ? strictRules
+ : recommendedRules),
+ ...overrides,
+ },
+ },
+ {
+ name: "rs:functional:disable-type-aware",
+ ignores: filesTypeAware,
+ rules: pluginFunctional.configs.disableTypeChecked.rules,
+ },
+ ];
+}
diff --git a/src/configs/ignores.ts b/src/configs/ignores.ts
new file mode 100644
index 00000000..14dc80e9
--- /dev/null
+++ b/src/configs/ignores.ts
@@ -0,0 +1,54 @@
+import assert from "node:assert/strict";
+import fs from "node:fs/promises";
+import path from "node:path";
+
+import { GLOB_EXCLUDE } from "../globs";
+import type {
+ FlatConfigItem,
+ OptionsIgnoreFiles,
+ OptionsIgnores,
+ OptionsProjectRoot,
+} from "../types";
+import { loadPackages } from "../utils";
+
+export async function ignores(
+ options: Readonly<
+ { ignores: OptionsIgnores } & OptionsProjectRoot & OptionsIgnoreFiles
+ >,
+): Promise {
+ const { ignoreFiles, ignores: ignoresOptions, projectRoot } = options;
+
+ const includeIgnoreFile =
+ ignoreFiles.length === 0
+ ? undefined
+ : await loadPackages(["@eslint/compat"]).then(
+ ([p]) => (p as typeof import("@eslint/compat")).includeIgnoreFile,
+ );
+
+ const [extend, files] = Array.isArray(ignoresOptions)
+ ? [true, ignoresOptions]
+ : [ignoresOptions.extend, ignoresOptions.files];
+
+ const ignoreConfig = {
+ ignores: extend ? [...GLOB_EXCLUDE, ...files] : [...files],
+ };
+
+ const ignoreFileConfigs = await Promise.all(
+ ignoreFiles.map((file) => {
+ assert(includeIgnoreFile !== undefined);
+ const filePath = path.resolve(projectRoot, file);
+ return fs
+ .access(filePath)
+ .then(() => includeIgnoreFile(filePath))
+ .catch(() => {
+ console.warn(`Ignore file "${filePath}" not found.`);
+ return null;
+ });
+ }),
+ );
+
+ return [
+ ignoreConfig,
+ ...ignoreFileConfigs.filter((v: T | null): v is T => v !== null),
+ ];
+}
diff --git a/src/configs/imports.ts b/src/configs/imports.ts
new file mode 100644
index 00000000..d0b6a4b5
--- /dev/null
+++ b/src/configs/imports.ts
@@ -0,0 +1,190 @@
+import type { ESLint } from "eslint";
+
+import { GLOB_DTS, GLOB_MJS, GLOB_MTS, GLOB_TS, GLOB_TSX } from "../globs";
+import type {
+ FlatConfigItem,
+ OptionsTypeScriptParserOptions,
+ RequiredOptionsStylistic,
+} from "../types";
+import { loadPackages } from "../utils";
+
+export async function imports(
+ options: Readonly<
+ Required
+ >,
+): Promise {
+ const { stylistic, parserOptions } = options;
+
+ const [pluginImport] = (await loadPackages([
+ "eslint-plugin-import-x",
+ "eslint-import-resolver-typescript",
+ ])) as [ESLint.Plugin, ESLint.Plugin];
+
+ const stylisticEnforcement = stylistic === false ? "off" : "error";
+
+ return [
+ {
+ name: "rs:imports",
+ plugins: {
+ import: pluginImport,
+ },
+ settings: {
+ "import-x/external-module-folders": [
+ "node_modules",
+ "node_modules/@types",
+ ],
+ "import-x/internal-regex": "^(?:#|(?:@|~)\\/).*",
+ "import-x/extensions": [".ts", ".tsx", ".js", ".jsx"],
+ "import-x/parsers": {
+ "@typescript-eslint/parser": [".ts", ".tsx", ".cts", ".mts"],
+ },
+ "import-x/resolver": {
+ typescript: {
+ alwaysTryTypes: true,
+ projectService: parserOptions.projectService,
+ },
+ node: {
+ extensions: [".ts", ".tsx", ".js", ".jsx"],
+ },
+ },
+ },
+ rules: {
+ // "import/consistent-type-specifier-style": ["error", "prefer-inline"], -- using ts/consistent-type-imports instead
+ "import/default": "error",
+ // "import/dynamic-import-chunkname": "off",
+ "import/export": "error",
+ // "import/exports-last": "off",
+ // "import/extensions": "off",
+ "import/first": "error",
+ // "import/group-exports": "off",
+ // "import/max-dependencies": [
+ // "off",
+ // {
+ // max: 10,
+ // },
+ // ],
+ "import/named": "error",
+ "import/namespace": [
+ "error",
+ {
+ allowComputed: true,
+ },
+ ],
+ "import/no-absolute-path": "error",
+ "import/no-amd": "error",
+ // "import/no-anonymous-default-export": "off",
+ // "import/no-commonjs": "off",
+ // "import/no-cycle": "off",
+ // "import/no-default-export": "off",
+ // "import/no-deprecated": "warn",
+ "import/no-duplicates": ["error", { "prefer-inline": true }],
+ // "import/no-dynamic-require": "off",
+ "import/no-empty-named-blocks": "error",
+ "import/no-extraneous-dependencies": [
+ "error",
+ {
+ bundledDependencies: true,
+ devDependencies: [
+ "*.{js,cjs,mjs,ts,cts,mts,jsx,tsx}",
+ "**/scripts/**",
+ "**/spec/**",
+ "**/test/**",
+ "**/tests/**",
+ "**/__mocks__/**",
+ "**/__tests__/**",
+ "**/*{.,_}{test,spec}.{js,cjs,mjs,ts,cts,mts,jsx,tsx}",
+ "**/Gruntfile{,.{js,cjs,mjs,ts}}",
+ "**/gulpfile.{js,cjs,mjs,ts}",
+ "**/gulpfile.*.{js,cjs,mjs,ts}",
+ "**/jest.config.{js,cjs,mjs,ts}",
+ "**/jest.setup.{js,cjs,mjs,ts}",
+ "**/karma.conf.{js,cjs,mjs,ts}",
+ "**/postcss.config.{js,cjs,mjs,ts}",
+ "**/protractor.conf.{js,cjs,mjs,ts}",
+ "**/protractor.conf.*.{js,cjs,mjs,ts}",
+ "**/rollup.config.{js,cjs,mjs,ts}",
+ "**/rollup.config.*.{js,cjs,mjs,ts}",
+ "**/vite.config.{js,cjs,mjs,ts}",
+ "**/vitest.config.{js,cjs,mjs,ts}",
+ "**/vue.config.{js,cjs,mjs,ts}",
+ "**/webpack.config.{js,cjs,mjs,ts}",
+ "**/webpack.config.*.{js,cjs,mjs,ts}",
+ ],
+ optionalDependencies: true,
+ peerDependencies: true,
+ },
+ ],
+ // "import/no-internal-modules": "off",
+ "import/no-mutable-exports": "error",
+ // "import/no-named-as-default": "off",
+ // "import/no-named-as-default-member": "off",
+ "import/no-named-default": "error",
+ // "import/no-named-export": "off",
+ // "import/no-namespace": "off",
+ // "import/no-nodejs-modules": "off",
+ // "import/no-relative-parent-imports": "off",
+ // "import/no-restricted-paths": "off",
+ "import/no-self-import": "error",
+ "import/no-unassigned-import": "error",
+ // "import/no-unused-modules": "off",
+ // "import/no-unresolved": "off",
+ "import/no-useless-path-segments": [
+ "error",
+ {
+ commonjs: true,
+ noUselessIndex: true,
+ },
+ ],
+ "import/no-webpack-loader-syntax": "error",
+ // "import/prefer-default-export": "off",
+ // "import/unambiguous": "off",
+
+ "import/newline-after-import": [stylisticEnforcement, { count: 1 }],
+ "import/order": [
+ stylisticEnforcement,
+ {
+ alphabetize: {
+ caseInsensitive: false,
+ order: "asc",
+ },
+ groups: [
+ "builtin",
+ "external",
+ "internal",
+ "parent",
+ "sibling",
+ "index",
+ ],
+ "newlines-between": "always",
+ },
+ ],
+ },
+ },
+ {
+ files: [GLOB_MJS, GLOB_MTS],
+ rules: {
+ "import/no-commonjs": "error",
+ "import/no-dynamic-require": "error",
+ },
+ },
+ {
+ files: [GLOB_TS, GLOB_TSX, GLOB_DTS],
+ rules: {
+ "import/no-unresolved": "off",
+ "import/named": "off",
+ "import/default": "off",
+ "import/namespace": "off",
+
+ "ts/no-import-type-side-effects": "error",
+ "ts/consistent-type-imports": [
+ stylisticEnforcement,
+ {
+ prefer: "type-imports",
+ fixStyle: "inline-type-imports",
+ disallowTypeAnnotations: false,
+ },
+ ],
+ },
+ },
+ ];
+}
diff --git a/src/configs/in-editor.ts b/src/configs/in-editor.ts
new file mode 100644
index 00000000..0f13b825
--- /dev/null
+++ b/src/configs/in-editor.ts
@@ -0,0 +1,46 @@
+import type { FlatConfigItem } from "../types";
+
+export function inEditor(): FlatConfigItem[] {
+ return [
+ {
+ name: "rs:in-editor",
+ rules: {
+ "no-console": "off",
+ "no-debugger": "off",
+ "prefer-const": "off",
+
+ "sonar/no-all-duplicated-branches": "off",
+ "sonar/no-collapsible-if": "off",
+ "sonar/no-collection-size-mischeck": "off",
+ "sonar/no-duplicated-branches": "off",
+ "sonar/no-element-overwrite": "off",
+ "sonar/no-empty-collection": "off",
+ "sonar/no-extra-arguments": "off",
+ "sonar/no-gratuitous-expressions": "off",
+ "sonar/no-identical-conditions": "off",
+ "sonar/no-identical-expressions": "off",
+ "sonar/no-identical-functions": "off",
+ "sonar/no-ignored-return": "off",
+ "sonar/no-inverted-boolean-check": "off",
+ "sonar/no-nested-switch": "off",
+ "sonar/no-nested-template-literals": "off",
+ "sonar/no-one-iteration-loop": "off",
+ "sonar/no-redundant-boolean": "off",
+ "sonar/no-redundant-jump": "off",
+ "sonar/no-same-line-conditional": "off",
+ "sonar/no-unused-collection": "off",
+ "sonar/no-use-of-empty-return-value": "off",
+ "sonar/no-useless-catch": "off",
+ "sonar/non-existent-operator": "off",
+ "sonar/prefer-immediate-return": "off",
+ "sonar/prefer-object-literal": "off",
+ "sonar/prefer-single-boolean-return": "off",
+ "sonar/prefer-while": "off",
+
+ "test/no-only-tests": "off",
+
+ "unicorn/no-lonely-if": "off",
+ },
+ },
+ ];
+}
diff --git a/src/configs/index.ts b/src/configs/index.ts
new file mode 100644
index 00000000..560d824d
--- /dev/null
+++ b/src/configs/index.ts
@@ -0,0 +1,24 @@
+export * from "./comments";
+export * from "./formatters";
+export * from "./functional";
+export * from "./ignores";
+export * from "./imports";
+export * from "./in-editor";
+export * from "./javascript";
+export * from "./jsdoc";
+export * from "./jsonc";
+export * from "./markdown";
+export * from "./node";
+export * from "./overrides";
+export * from "./sort";
+export * from "./stylistic";
+export * from "./test";
+export * from "./toml";
+export * from "./typescript";
+export * from "./unicorn";
+export * from "./unocss";
+export * from "./vue";
+export * from "./yaml";
+export * from "./promise";
+export * from "./regexp";
+export * from "./sonar";
diff --git a/src/configs/javascript.ts b/src/configs/javascript.ts
new file mode 100644
index 00000000..e28c30f1
--- /dev/null
+++ b/src/configs/javascript.ts
@@ -0,0 +1,360 @@
+import globals from "globals";
+
+import type {
+ FlatConfigItem,
+ OptionsFunctional,
+ OptionsOverrides,
+} from "../types";
+
+const useNumberIsFinite = "Please use Number.isFinite instead";
+const useNumberIsNan = "Please use Number.isNaN instead";
+const useObjectDefineProperty = "Please use Object.defineProperty instead.";
+
+export function javascript(
+ options: Readonly>,
+): FlatConfigItem[] {
+ const { functionalEnforcement, overrides } = options;
+
+ return [
+ {
+ name: "rs:javascript",
+ languageOptions: {
+ ecmaVersion: "latest",
+ globals: {
+ ...globals.browser,
+ ...globals.es2021,
+ ...globals.node,
+ document: "readonly",
+ navigator: "readonly",
+ window: "readonly",
+ },
+ parserOptions: {
+ ecmaFeatures: { jsx: true },
+ ecmaVersion: "latest",
+ sourceType: "module",
+ },
+ sourceType: "module",
+ },
+ linterOptions: {
+ reportUnusedDisableDirectives: true,
+ },
+ rules: {
+ "accessor-pairs": "error",
+ "array-callback-return": "error",
+ "arrow-body-style": ["error", "as-needed"],
+ "block-scoped-var": "error",
+ "class-methods-use-this": "error",
+ "consistent-return": ["error", { treatUndefinedAsUnspecified: false }],
+ "constructor-super": "error",
+ curly: ["error", "all"],
+ "default-case-last": "error",
+ "dot-notation": ["error", { allowKeywords: true }],
+ eqeqeq: ["error", "always", { null: "always" }],
+ "for-direction": "error",
+ "func-name-matching": "error",
+ "func-names": ["error", "as-needed"],
+ "func-style": ["error", "declaration", { allowArrowFunctions: true }],
+ "getter-return": "error",
+ "grouped-accessor-pairs": "error",
+ "guard-for-in": "error",
+ "logical-assignment-operators": "error",
+ "max-classes-per-file": ["error", 1],
+ "max-depth": ["error", 10],
+ "new-cap": [
+ "error",
+ {
+ capIsNew: false,
+ newIsCap: true,
+ properties: true,
+ },
+ ],
+ "no-alert": "error",
+ "no-array-constructor": "error",
+ "no-async-promise-executor": "error",
+ "no-await-in-loop": "error",
+ "no-caller": "error",
+ "no-case-declarations": "error",
+ "no-class-assign": "error",
+ "no-compare-neg-zero": "error",
+ "no-cond-assign": ["error", "always"],
+ "no-console": ["error", { allow: ["warn", "error"] }],
+ "no-const-assign": "error",
+ "no-constant-binary-expression": "error",
+ "no-constant-condition": "error",
+ "no-constructor-return": "error",
+ "no-control-regex": "error",
+ "no-debugger": "error",
+ "no-delete-var": "error",
+ "no-dupe-args": "error",
+ "no-dupe-class-members": "error",
+ "no-dupe-keys": "error",
+ "no-duplicate-case": "error",
+ "no-else-return": ["error", { allowElseIf: false }],
+ "no-empty-pattern": "error",
+ "no-empty": ["error", { allowEmptyCatch: true }],
+ "no-eq-null": "error",
+ "no-eval": "error",
+ "no-ex-assign": "error",
+ "no-extend-native": "error",
+ "no-extra-bind": "error",
+ "no-extra-boolean-cast": "error",
+ "no-extra-label": "error",
+ "no-fallthrough": "error",
+ "no-func-assign": "error",
+ "no-global-assign": "error",
+ "no-implicit-coercion": "error",
+ "no-implicit-globals": "error",
+ "no-implied-eval": "error",
+ "no-import-assign": "error",
+ "no-inner-declarations": ["error", "functions"],
+ "no-invalid-this": "error",
+ "no-irregular-whitespace": "error",
+ "no-iterator": "error",
+ "no-label-var": "error",
+ "no-labels": ["error", { allowLoop: true, allowSwitch: true }],
+ "no-lone-blocks": "error",
+ "no-lonely-if": "error",
+ "no-loop-func": "error",
+ "no-loss-of-precision": "error",
+ "no-misleading-character-class": "error",
+ "no-multi-assign": "error",
+ "no-multi-str": "error",
+ "no-new-func": "error",
+ "no-new-object": "error",
+ "no-new-symbol": "error",
+ "no-new-wrappers": "error",
+ "no-new": "error",
+ "no-obj-calls": "error",
+ "no-octal-escape": "error",
+ "no-octal": "error",
+ "no-promise-executor-return": "error",
+ "no-proto": "error",
+ "no-prototype-builtins": "error",
+ "no-redeclare": ["error", { builtinGlobals: false }],
+ "no-regex-spaces": "error",
+ "no-restricted-globals": [
+ "error",
+ { name: "event", message: "Use local parameter instead." },
+ { name: "global", message: "Use `globalThis` instead." },
+ { name: "self", message: "Use `globalThis` instead." },
+ { name: "window", message: "Use `globalThis` instead." },
+ ],
+ "no-restricted-properties": [
+ "error",
+ {
+ property: "__proto__",
+ message:
+ "Use `Object.getPrototypeOf` or `Object.setPrototypeOf` instead.",
+ },
+ {
+ property: "__lookupGetter__",
+ message: "Use `Object.getOwnPropertyDescriptor` instead.",
+ },
+ {
+ property: "__lookupSetter__",
+ message: "Use `Object.getOwnPropertyDescriptor` instead.",
+ },
+ {
+ object: "arguments",
+ property: "callee",
+ message: "arguments.callee is deprecated",
+ },
+ {
+ object: "global",
+ property: "isFinite",
+ message: useNumberIsFinite,
+ },
+ {
+ object: "self",
+ property: "isFinite",
+ message: useNumberIsFinite,
+ },
+ {
+ object: "window",
+ property: "isFinite",
+ message: useNumberIsFinite,
+ },
+ {
+ object: "global",
+ property: "isNaN",
+ message: useNumberIsNan,
+ },
+ {
+ object: "self",
+ property: "isNaN",
+ message: useNumberIsNan,
+ },
+ {
+ object: "window",
+ property: "isNaN",
+ message: useNumberIsNan,
+ },
+ { property: "__defineGetter__", message: useObjectDefineProperty },
+ { property: "__defineSetter__", message: useObjectDefineProperty },
+ ],
+ "no-restricted-syntax": [
+ "error",
+ {
+ selector: "ForInStatement",
+ message:
+ "for..in loops iterate over the entire prototype chain, which is virtually never what you want. Use Object.{keys,values,entries}, and iterate over the resulting array.",
+ },
+ {
+ selector: "WithStatement",
+ message:
+ "`with` is disallowed in strict mode because it makes code impossible to predict and optimize.",
+ },
+ {
+ selector:
+ ':not(ArrowFunctionExpression) > UnaryExpression[operator="void"] > :not(CallExpression)',
+ message: 'Don\'t use "void".',
+ },
+ ],
+ "no-return-assign": "error",
+ "no-return-await": "error",
+ "no-script-url": "error",
+ "no-self-assign": ["error", { props: true }],
+ "no-self-compare": "error",
+ "no-shadow-restricted-names": "error",
+ "no-shadow": [
+ "warn",
+ {
+ allow: ["resolve", "reject", "done", "cb"],
+ builtinGlobals: false,
+ hoist: "never",
+ },
+ ],
+ "no-sparse-arrays": "error",
+ "no-template-curly-in-string": "error",
+ "no-this-before-super": "error",
+ "no-throw-literal": "error",
+ "no-undef-init": "error",
+ "no-undef": "error",
+ "no-unexpected-multiline": "error",
+ "no-unmodified-loop-condition": "error",
+ "no-unneeded-ternary": ["error", { defaultAssignment: false }],
+ "no-unreachable-loop": "error",
+ "no-unreachable": "error",
+ "no-unsafe-finally": "error",
+ "no-unsafe-negation": "error",
+ "no-unused-expressions": [
+ "error",
+ {
+ allowShortCircuit: true,
+ allowTaggedTemplates: true,
+ allowTernary: true,
+ },
+ ],
+ "no-unused-labels": "error",
+ "no-unused-private-class-members": "error",
+ "no-unused-vars": [
+ "error",
+ {
+ args: "none",
+ caughtErrors: "none",
+ ignoreRestSiblings: true,
+ vars: "all",
+ },
+ ],
+ "no-use-before-define": [
+ "error",
+ {
+ classes: true,
+ functions: false,
+ variables: true,
+ },
+ ],
+ "no-useless-call": "error",
+ "no-useless-catch": "error",
+ "no-useless-computed-key": "error",
+ "no-useless-concat": "error",
+ "no-useless-constructor": "error",
+ "no-useless-escape": "error",
+ "no-useless-rename": "error",
+ "no-useless-return": "error",
+ "no-var": "error",
+ "no-with": "error",
+ "object-shorthand": [
+ "error",
+ "always",
+ { avoidQuotes: true, ignoreConstructors: false },
+ ],
+ "one-var": [
+ "error",
+ {
+ var: "never",
+ let: "never",
+ const: "never",
+ },
+ ],
+ "operator-assignment": ["error", "always"],
+ "prefer-arrow-callback": [
+ "error",
+ { allowNamedFunctions: false, allowUnboundThis: true },
+ ],
+ "prefer-const": [
+ "error",
+ { destructuring: "all", ignoreReadBeforeAssign: true },
+ ],
+ "prefer-destructuring": [
+ "error",
+ {
+ VariableDeclarator: { array: false, object: true },
+ AssignmentExpression: { array: true, object: true },
+ },
+ { enforceForRenamedProperties: false },
+ ],
+ "prefer-exponentiation-operator": "error",
+ "prefer-numeric-literals": "error",
+ "prefer-object-has-own": "error",
+ "prefer-object-spread": "error",
+ "prefer-promise-reject-errors": "error",
+ "prefer-regex-literals": ["error", { disallowRedundantWrapping: true }],
+ "prefer-rest-params": "error",
+ "prefer-spread": "error",
+ "prefer-template": "error",
+ radix: "error",
+ "require-atomic-updates": "error",
+ "require-await": "error",
+ "require-unicode-regexp": "error",
+ "require-yield": "error",
+ "sort-imports": [
+ "error",
+ {
+ allowSeparatedGroups: false,
+ ignoreCase: false,
+ ignoreDeclarationSort: true,
+ ignoreMemberSort: false,
+ memberSyntaxSortOrder: ["none", "all", "multiple", "single"],
+ },
+ ],
+ strict: ["error", "never"],
+ "symbol-description": "error",
+ "unicode-bom": ["error", "never"],
+ "use-isnan": [
+ "error",
+ { enforceForIndexOf: true, enforceForSwitchCase: true },
+ ],
+ "valid-typeof": ["error", { requireStringLiterals: true }],
+ "vars-on-top": "error",
+ yoda: ["error", "never"],
+
+ ...(functionalEnforcement === "none"
+ ? {}
+ : {
+ "no-param-reassign": [
+ "error",
+ functionalEnforcement === "lite"
+ ? { props: false }
+ : {
+ props: true,
+ ignorePropertyModificationsForRegex: ["^[mM]_"],
+ },
+ ],
+ }),
+
+ ...overrides,
+ },
+ },
+ ];
+}
diff --git a/src/configs/jsdoc.ts b/src/configs/jsdoc.ts
new file mode 100644
index 00000000..40a22cac
--- /dev/null
+++ b/src/configs/jsdoc.ts
@@ -0,0 +1,95 @@
+import type { ESLint } from "eslint";
+
+import type { FlatConfigItem, RequiredOptionsStylistic } from "../types";
+import { loadPackages } from "../utils";
+
+export async function jsdoc(
+ options: Readonly>,
+): Promise {
+ const { stylistic } = options;
+
+ const [pluginJSDoc] = (await loadPackages(["eslint-plugin-jsdoc"])) as [
+ typeof import("eslint-plugin-jsdoc"),
+ ];
+
+ const stylisticEnforcement = stylistic === false ? "off" : "error";
+
+ return [
+ {
+ name: "rs:jsdoc",
+ plugins: {
+ jsdoc: pluginJSDoc as ESLint.Plugin,
+ },
+ rules: {
+ // waiting on https://github.com/eslint/eslint/issues/14745
+ // "jsdoc/check-examples": "error",
+ "jsdoc/check-indentation": "error",
+ "jsdoc/check-line-alignment": "error",
+ "jsdoc/check-param-names": "error",
+ "jsdoc/check-property-names": "error",
+ "jsdoc/check-types": "error",
+ "jsdoc/check-values": "error",
+ "jsdoc/no-bad-blocks": [
+ "error",
+ {
+ ignore: [
+ "ts-check",
+ "ts-expect-error",
+ "ts-ignore",
+ "ts-nocheck",
+ "vue-ignore",
+ ],
+ },
+ ],
+ "jsdoc/no-defaults": "warn",
+ "jsdoc/require-asterisk-prefix": "error",
+ "jsdoc/require-description": "warn",
+ // Rule is too strict.
+ // "jsdoc/require-description-complete-sentence": "off",
+ "jsdoc/require-hyphen-before-param-description": "error",
+ "jsdoc/require-jsdoc": [
+ "warn",
+ {
+ contexts: [
+ ":matches(:matches(ExportDefaultDeclaration, ExportNamedDeclaration) > TSDeclareFunction, ExportDefaultDeclaration > FunctionDeclaration,:matches(ExportNamedDeclaration > FunctionDeclaration):not(ExportNamedDeclaration:has(TSDeclareFunction) + ExportNamedDeclaration > FunctionDeclaration))",
+ ":matches(ExportDefaultDeclaration, ExportNamedDeclaration) > TSTypeAliasDeclaration",
+ ":matches(ExportDefaultDeclaration, ExportNamedDeclaration) > TSInterfaceDeclaration",
+ ":matches(ExportDefaultDeclaration, ExportNamedDeclaration) > TSEnumDeclaration",
+ ],
+ enableFixer: false,
+ require: {
+ FunctionDeclaration: false,
+ },
+ },
+ ],
+ "jsdoc/require-param-name": "error",
+ // "jsdoc/require-param": "off",
+ "jsdoc/require-property-name": "error",
+ // "jsdoc/require-property": "off",
+ "jsdoc/require-returns-check": "error",
+ // "jsdoc/require-returns": "off",
+ "jsdoc/require-throws": "warn",
+ "jsdoc/require-yields-check": "error",
+ "jsdoc/tag-lines": [
+ "warn",
+ "never",
+ {
+ applyToEndTag: false,
+ startLines: 1,
+ tags: { example: { lines: "always" } },
+ },
+ ],
+
+ "jsdoc/check-access": "warn",
+ "jsdoc/empty-tags": "warn",
+ "jsdoc/implements-on-classes": "warn",
+ "jsdoc/no-multi-asterisks": "warn",
+ "jsdoc/require-property-description": "warn",
+ "jsdoc/require-returns-description": "warn",
+
+ "jsdoc/check-alignment": stylisticEnforcement,
+ "jsdoc/multiline-blocks": stylisticEnforcement,
+ },
+ },
+ ];
+}
diff --git a/src/configs/jsonc.ts b/src/configs/jsonc.ts
new file mode 100644
index 00000000..feae602c
--- /dev/null
+++ b/src/configs/jsonc.ts
@@ -0,0 +1,92 @@
+import type { ESLint } from "eslint";
+
+import type {
+ FlatConfigItem,
+ OptionsFiles,
+ OptionsOverrides,
+ RequiredOptionsStylistic,
+} from "../types";
+import { loadPackages } from "../utils";
+
+export async function jsonc(
+ options: Readonly<
+ Required
+ >,
+): Promise {
+ const { files, overrides, stylistic } = options;
+
+ const { indent = 2 } = typeof stylistic === "boolean" ? {} : stylistic;
+
+ const [pluginJsonc, parserJsonc] = (await loadPackages([
+ "eslint-plugin-jsonc",
+ "jsonc-eslint-parser",
+ ])) as [ESLint.Plugin, typeof import("jsonc-eslint-parser")];
+
+ const stylisticEnforcement = stylistic === false ? "off" : "error";
+
+ return [
+ {
+ name: "rs:jsonc:setup",
+ plugins: {
+ jsonc: pluginJsonc,
+ },
+ },
+ {
+ name: "rs:jsonc:rules",
+ files,
+ languageOptions: {
+ parser: parserJsonc,
+ },
+ rules: {
+ "jsonc/no-bigint-literals": "error",
+ "jsonc/no-binary-expression": "error",
+ "jsonc/no-binary-numeric-literals": "error",
+ "jsonc/no-dupe-keys": "error",
+ "jsonc/no-escape-sequence-in-identifier": "error",
+ "jsonc/no-floating-decimal": "error",
+ "jsonc/no-hexadecimal-numeric-literals": "error",
+ "jsonc/no-infinity": "error",
+ "jsonc/no-multi-str": "error",
+ "jsonc/no-nan": "error",
+ "jsonc/no-number-props": "error",
+ "jsonc/no-numeric-separators": "error",
+ "jsonc/no-octal": "error",
+ "jsonc/no-octal-escape": "error",
+ "jsonc/no-octal-numeric-literals": "error",
+ "jsonc/no-parenthesized": "error",
+ "jsonc/no-plus-sign": "error",
+ "jsonc/no-regexp-literals": "error",
+ "jsonc/no-sparse-arrays": "error",
+ "jsonc/no-template-literals": "error",
+ "jsonc/no-undefined-value": "error",
+ "jsonc/no-unicode-codepoint-escapes": "error",
+ "jsonc/no-useless-escape": "error",
+ "jsonc/space-unary-ops": "error",
+ "jsonc/valid-json-number": "error",
+ "jsonc/vue-custom-block/no-parsing-error": "error",
+
+ "jsonc/array-bracket-spacing": [stylisticEnforcement, "never"],
+ "jsonc/comma-dangle": [stylisticEnforcement, "never"],
+ "jsonc/comma-style": [stylisticEnforcement, "last"],
+ "jsonc/indent": [stylisticEnforcement, indent],
+ "jsonc/key-spacing": [
+ stylisticEnforcement,
+ { afterColon: true, beforeColon: false },
+ ],
+ "jsonc/object-curly-newline": [
+ stylisticEnforcement,
+ { consistent: true, multiline: true },
+ ],
+ "jsonc/object-curly-spacing": [stylisticEnforcement, "always"],
+ "jsonc/object-property-newline": [
+ stylisticEnforcement,
+ { allowMultiplePropertiesPerLine: true },
+ ],
+ "jsonc/quote-props": stylisticEnforcement,
+ "jsonc/quotes": stylisticEnforcement,
+
+ ...overrides,
+ },
+ },
+ ];
+}
diff --git a/src/configs/markdown.ts b/src/configs/markdown.ts
new file mode 100644
index 00000000..83f4bc40
--- /dev/null
+++ b/src/configs/markdown.ts
@@ -0,0 +1,157 @@
+import type { ESLint, Linter } from "eslint";
+import { mergeProcessors, processorPassThrough } from "eslint-merge-processors";
+
+import {
+ GLOB_MARKDOWN,
+ GLOB_MARKDOWN_CODE,
+ GLOB_MARKDOWN_IN_MARKDOWN,
+} from "../globs";
+import type {
+ FlatConfigItem,
+ OptionsComponentExts,
+ OptionsFiles,
+ OptionsOverrides,
+ OptionsTypeRequiredRules,
+} from "../types";
+import { interopDefault, loadPackages, parserPlain } from "../utils";
+
+export async function markdown(
+ options: Readonly<
+ Required<
+ OptionsFiles &
+ OptionsComponentExts &
+ OptionsTypeRequiredRules &
+ OptionsOverrides
+ >
+ >,
+): Promise {
+ const { componentExts, files, overrides, enableTypeRequiredRules } = options;
+
+ const [pluginMarkdown] = (await loadPackages(["eslint-plugin-markdown"])) as [
+ ESLint.Plugin,
+ ];
+
+ const [pluginTs, pluginFunctional] = await Promise.all([
+ interopDefault(import("@typescript-eslint/eslint-plugin")).catch(
+ () => undefined,
+ ),
+ interopDefault(import("eslint-plugin-functional")).catch(() => undefined),
+ ]);
+
+ return [
+ {
+ name: "rs:markdown:setup",
+ plugins: {
+ pluginMarkdown,
+ },
+ },
+ {
+ name: "rs:markdown:processor",
+ files,
+ ignores: [GLOB_MARKDOWN_IN_MARKDOWN],
+ // `eslint-plugin-markdown` only creates virtual files for code blocks,
+ // but not the markdown file itself. We use `eslint-merge-processors` to
+ // add a pass-through processor for the markdown file itself.
+ processor: mergeProcessors([
+ // eslint-disable-next-line ts/no-explicit-any, ts/no-unsafe-member-access
+ (pluginMarkdown as any).processors.markdown as Linter.Processor,
+ processorPassThrough,
+ ]),
+ },
+ {
+ name: "rs:markdown:parser",
+ files,
+ languageOptions: {
+ parser: parserPlain,
+ },
+ },
+ {
+ name: "rs:markdown:code",
+ files: [
+ GLOB_MARKDOWN_CODE,
+ ...componentExts.map((ext) => `${GLOB_MARKDOWN}/*.${ext}`),
+ ],
+ languageOptions: {
+ parserOptions: {
+ ...(enableTypeRequiredRules
+ ? undefined
+ : { project: false, projectService: false, program: null }),
+ ecmaFeatures: {
+ impliedStrict: true,
+ },
+ },
+ },
+ rules: {
+ ...(enableTypeRequiredRules
+ ? undefined
+ : {
+ ...pluginTs?.configs["disable-type-checked"]?.rules,
+ ...pluginFunctional?.configs.off.rules,
+ }),
+
+ "dot-notation": "off",
+ "init-declarations": "off",
+ "no-alert": "off",
+ "no-console": "off",
+ "no-empty-function": "off",
+ "no-empty": "off",
+ "no-irregular-whitespace": "off",
+ "no-invalid-this": "off",
+ "no-labels": "off",
+ "no-lone-blocks": "off",
+ "no-restricted-syntax": "off",
+ "no-throw-literal": "off",
+ "no-undef": "off",
+ "no-unused-expressions": "off",
+ "no-unused-labels": "off",
+ "no-unused-vars": "off",
+ "no-useless-return": "off",
+ "prefer-const": "off",
+ "unicode-bom": "off",
+
+ "import/extensions": "off",
+ "import/newline-after-import": "off",
+ "import/no-extraneous-dependencies": "off",
+ "import/no-unresolved": "off",
+ "import/order": "off",
+
+ "jsdoc/require-jsdoc": "off",
+
+ "node/handle-callback-err": "off",
+ "node/prefer-global/process": "off",
+
+ "prettier/prettier": "off",
+
+ "sonar/no-extra-arguments": "off",
+ "sonar/no-unused-collection": "off",
+
+ "style/comma-dangle": "off",
+ "style/eol-last": "off",
+
+ "ts/consistent-generic-constructors": "off",
+ "ts/consistent-indexed-object-style": "off",
+ "ts/consistent-type-definitions": "off",
+ "ts/consistent-type-imports": "off",
+ "ts/explicit-member-accessibility": "off",
+ "ts/naming-convention": "off",
+ "ts/no-empty-function": "off",
+ "ts/no-explicit-any": "off",
+ "ts/no-namespace": "off",
+ "ts/no-redeclare": "off",
+ "ts/no-require-imports": "off",
+ "ts/no-unused-expressions": "off",
+ "ts/no-unused-vars": "off",
+ "ts/no-use-before-define": "off",
+ "ts/no-var-requires": "off",
+ "ts/prefer-for-of": "off",
+ "ts/prefer-function-type": "off",
+
+ "unicorn/prefer-optional-catch-binding": "off",
+ "unicorn/prefer-top-level-await": "off",
+ "unicorn/switch-case-braces": "off",
+
+ ...overrides,
+ },
+ },
+ ];
+}
diff --git a/src/configs/modern.ts b/src/configs/modern.ts
deleted file mode 100644
index ede0d325..00000000
--- a/src/configs/modern.ts
+++ /dev/null
@@ -1,54 +0,0 @@
-import { type Linter } from "eslint";
-
-import {
- rules as builtinRules,
- overrides as builtinOverrides,
-} from "~/builtin";
-import { mergeConfigs } from "~/merge-configs";
-import { settings as eslintComments } from "~/plugins/eslint-comments";
-import { settings as functional } from "~/plugins/functional";
-import { settings as importPlugin } from "~/plugins/import";
-import { settings as jsdoc } from "~/plugins/jsdoc";
-import { settings as markdown } from "~/plugins/markdown";
-import { settings as node } from "~/plugins/node";
-import { settings as optimizeRegex } from "~/plugins/optimize-regex";
-import { settings as promise } from "~/plugins/promise";
-import { settings as sonarjs } from "~/plugins/sonarjs";
-import { settings as unicorn } from "~/plugins/unicorn";
-
-const baseConfig: Linter.Config = {
- parser: "babel-eslint",
-
- parserOptions: {
- ecmaVersion: "latest",
- ecmaFeatures: {
- globalReturn: false,
- impliedStrict: true,
- },
- sourceType: "module",
- },
-
- extends: ["eslint:recommended"],
-
- rules: builtinRules,
-
- overrides: builtinOverrides,
-
- ignorePatterns: ["/dist"],
-
- reportUnusedDisableDirectives: true,
-};
-
-export default mergeConfigs(
- baseConfig,
- eslintComments,
- functional,
- importPlugin,
- jsdoc,
- markdown,
- node,
- optimizeRegex,
- promise,
- sonarjs,
- unicorn,
-);
diff --git a/src/configs/node.ts b/src/configs/node.ts
new file mode 100644
index 00000000..0ce3b9f4
--- /dev/null
+++ b/src/configs/node.ts
@@ -0,0 +1,90 @@
+import type { ESLint } from "eslint";
+
+import { GLOB_DTS, GLOB_MJS, GLOB_TS, GLOB_TSX } from "../globs";
+import type { FlatConfigItem } from "../types";
+import { loadPackages } from "../utils";
+
+export async function node(): Promise {
+ const [pluginNode] = (await loadPackages(["eslint-plugin-n"])) as [
+ ESLint.Plugin,
+ ];
+
+ return [
+ {
+ name: "rs:node",
+ plugins: {
+ node: pluginNode,
+ },
+ rules: {
+ "node/callback-return": "error",
+ "node/exports-style": ["error", "module.exports"],
+ "node/global-require": "off",
+ "node/handle-callback-err": ["error", "^(err|error)$"],
+ "node/no-callback-literal": "error",
+ "node/no-missing-import": "off",
+ "node/no-mixed-requires": [
+ "error",
+ {
+ allowCall: true,
+ grouping: true,
+ },
+ ],
+ "node/no-new-require": "error",
+ "node/no-path-concat": "error",
+ "node/no-process-exit": "error",
+ "node/no-restricted-import": [
+ "error",
+ [
+ {
+ name: "assert",
+ message: "Please use assert/strict instead.",
+ },
+ {
+ name: "node:assert",
+ message: "Please use node:assert/strict instead.",
+ },
+ ],
+ ],
+ "node/no-restricted-require": [
+ "error",
+ [
+ {
+ name: "assert",
+ message: "Please use assert/strict instead.",
+ },
+ {
+ name: "node:assert",
+ message: "Please use node:assert/strict instead.",
+ },
+ ],
+ ],
+ "node/no-sync": "error",
+ "node/no-unpublished-import": "warn",
+ "node/prefer-global/buffer": ["error", "never"],
+ "node/prefer-global/console": ["error", "always"],
+ "node/prefer-global/process": ["error", "always"],
+ "node/prefer-global/text-decoder": ["error", "never"],
+ "node/prefer-global/text-encoder": ["error", "never"],
+ "node/prefer-global/url": ["error", "never"],
+ "node/prefer-global/url-search-params": ["error", "never"],
+ "node/prefer-promises/dns": "error",
+ "node/prefer-promises/fs": "error",
+ },
+ },
+ {
+ files: [GLOB_TS, GLOB_TSX, GLOB_DTS, GLOB_MJS],
+ rules: {
+ "node/no-unsupported-features/es-syntax": "off",
+ },
+ },
+ {
+ files: [GLOB_TS, GLOB_TSX, GLOB_DTS],
+ rules: {
+ "node/no-extraneous-import": "off",
+ "node/no-missing-import": "off",
+ "node/no-restricted-import": "off",
+ "node/no-restricted-require": "off",
+ },
+ },
+ ];
+}
diff --git a/src/configs/overrides.ts b/src/configs/overrides.ts
new file mode 100644
index 00000000..9eda5f6d
--- /dev/null
+++ b/src/configs/overrides.ts
@@ -0,0 +1,83 @@
+import { GLOB_DTS, GLOB_SRC, GLOB_SRC_EXT, GLOB_TYPINGS } from "../globs";
+import type { FlatConfigItem } from "../types";
+import { interopDefault } from "../utils";
+
+export async function overrides(): Promise {
+ const [pluginFunctional] = await Promise.all([
+ interopDefault(import("eslint-plugin-functional")).catch(() => undefined),
+ ]);
+
+ return [
+ {
+ files: [GLOB_DTS],
+ name: "rs:typescript:dts-overrides",
+ rules: {
+ "eslint-comments/no-unlimited-disable": "off",
+ "import/no-duplicates": "off",
+ "no-restricted-syntax": "off",
+ },
+ },
+ {
+ name: "rs:overrides-typings",
+ files: [GLOB_TYPINGS],
+ rules: {
+ ...pluginFunctional?.configs.off.rules,
+
+ "import/no-unassigned-import": "off",
+
+ "jsdoc/check-examples": "off",
+ "jsdoc/check-indentation": "off",
+ "jsdoc/check-line-alignment": "off",
+ "jsdoc/check-param-names": "off",
+ "jsdoc/check-property-names": "off",
+ "jsdoc/check-types": "off",
+ "jsdoc/check-values": "off",
+ "jsdoc/no-bad-blocks": "off",
+ "jsdoc/no-defaults": "off",
+ "jsdoc/require-asterisk-prefix": "off",
+ "jsdoc/require-description": "off",
+ "jsdoc/require-description-complete-sentence": "off",
+ "jsdoc/require-hyphen-before-param-description": "off",
+ "jsdoc/require-jsdoc": "off",
+ "jsdoc/require-param-name": "off",
+ "jsdoc/require-param": "off",
+ "jsdoc/require-property-name": "off",
+ "jsdoc/require-property": "off",
+ "jsdoc/require-returns-check": "off",
+ "jsdoc/require-returns": "off",
+ "jsdoc/require-throws": "off",
+ "jsdoc/require-yields-check": "off",
+ "jsdoc/tag-lines": "off",
+ "jsdoc/check-access": "off",
+ "jsdoc/empty-tags": "off",
+ "jsdoc/implements-on-classes": "off",
+ "jsdoc/no-multi-asterisks": "off",
+ "jsdoc/require-property-description": "off",
+ "jsdoc/require-returns-description": "off",
+ "jsdoc/check-alignment": "off",
+ "jsdoc/multiline-blocks": "off",
+
+ "ts/consistent-type-definitions": "off",
+ "ts/no-empty-object-type": "off",
+ "ts/no-explicit-any": "off",
+ "ts/no-unused-vars": "off",
+ },
+ },
+ {
+ name: "rs:overrides-scripts",
+ files: [`scripts/${GLOB_SRC}`, `cli.${GLOB_SRC_EXT}`],
+ rules: {
+ "no-console": "off",
+
+ "functional/no-conditional-statements": "off",
+ "functional/no-expression-statements": "off",
+ "functional/no-loop-statements": "off",
+ "functional/no-return-void": "off",
+ "functional/no-throw-statements": "off",
+
+ "node/no-sync": "off",
+ "node/no-unpublished-import": "off",
+ },
+ },
+ ];
+}
diff --git a/src/configs/promise.ts b/src/configs/promise.ts
new file mode 100644
index 00000000..db34d1bd
--- /dev/null
+++ b/src/configs/promise.ts
@@ -0,0 +1,30 @@
+import type { ESLint } from "eslint";
+
+import type { FlatConfigItem } from "../types";
+import { loadPackages } from "../utils";
+
+export async function promise(): Promise {
+ const [pluginPromise] = (await loadPackages(["eslint-plugin-promise"])) as [
+ ESLint.Plugin,
+ ];
+
+ return [
+ {
+ name: "rs:node",
+ plugins: {
+ promise: pluginPromise,
+ },
+ rules: {
+ "promise/avoid-new": "warn",
+ "promise/no-callback-in-promise": "error",
+ "promise/no-nesting": "error",
+ "promise/no-new-statics": "error",
+ "promise/no-promise-in-callback": "error",
+ "promise/no-return-in-finally": "error",
+ "promise/no-return-wrap": "error",
+ "promise/param-names": "error",
+ "promise/valid-params": "error",
+ },
+ },
+ ];
+}
diff --git a/src/configs/regexp.ts b/src/configs/regexp.ts
new file mode 100644
index 00000000..da3d5a33
--- /dev/null
+++ b/src/configs/regexp.ts
@@ -0,0 +1,93 @@
+import type { ESLint } from "eslint";
+
+import type { FlatConfigItem } from "../types";
+import { loadPackages } from "../utils";
+
+export async function regexp(): Promise {
+ const [pluginRegexp, pluginOptimizeRegex] = (await loadPackages([
+ "eslint-plugin-regexp",
+ "eslint-plugin-optimize-regex",
+ ])) as [ESLint.Plugin, ESLint.Plugin];
+
+ return [
+ {
+ name: "rs:node",
+ plugins: {
+ regexp: {
+ ...pluginRegexp,
+ rules: {
+ ...pluginRegexp.rules,
+ ...pluginOptimizeRegex.rules,
+ },
+ },
+ },
+ rules: {
+ "no-empty-character-class": "off",
+ "no-invalid-regexp": "off",
+ "no-useless-backreference": "off",
+
+ "regexp/confusing-quantifier": "error",
+ "regexp/control-character-escape": "error",
+ "regexp/match-any": "error",
+ "regexp/negation": "error",
+ "regexp/no-contradiction-with-assertion": "error",
+ "regexp/no-dupe-characters-character-class": "error",
+ "regexp/no-dupe-disjunctions": "error",
+ "regexp/no-empty-alternative": "error",
+ "regexp/no-empty-capturing-group": "error",
+ "regexp/no-empty-character-class": "error",
+ "regexp/no-empty-group": "error",
+ "regexp/no-empty-lookarounds-assertion": "error",
+ "regexp/no-empty-string-literal": "error",
+ "regexp/no-escape-backspace": "error",
+ "regexp/no-extra-lookaround-assertions": "error",
+ "regexp/no-invalid-regexp": "error",
+ "regexp/no-invisible-character": "error",
+ "regexp/no-lazy-ends": "error",
+ "regexp/no-legacy-features": "error",
+ "regexp/no-misleading-capturing-group": "error",
+ "regexp/no-misleading-unicode-character": "error",
+ "regexp/no-missing-g-flag": "error",
+ "regexp/no-non-standard-flag": "error",
+ "regexp/no-obscure-range": "error",
+ "regexp/no-optional-assertion": "error",
+ "regexp/no-potentially-useless-backreference": "error",
+ "regexp/no-super-linear-backtracking": "error",
+ "regexp/no-trivially-nested-assertion": "error",
+ "regexp/no-trivially-nested-quantifier": "error",
+ "regexp/no-unused-capturing-group": "warn",
+ "regexp/no-useless-assertions": "error",
+ "regexp/no-useless-backreference": "error",
+ "regexp/no-useless-character-class": "error",
+ "regexp/no-useless-dollar-replacements": "error",
+ "regexp/no-useless-escape": "error",
+ "regexp/no-useless-flag": "error",
+ "regexp/no-useless-lazy": "error",
+ "regexp/no-useless-non-capturing-group": "error",
+ "regexp/no-useless-quantifier": "error",
+ "regexp/no-useless-range": "error",
+ "regexp/no-useless-set-operand": "error",
+ "regexp/no-useless-string-literal": "error",
+ "regexp/no-useless-two-nums-quantifier": "error",
+ "regexp/no-zero-quantifier": "error",
+ "regexp/optimal-lookaround-quantifier": "error",
+ "regexp/optimal-quantifier-concatenation": "error",
+ "regexp/optimize-regex": "error",
+ "regexp/prefer-character-class": "error",
+ "regexp/prefer-d": "error",
+ "regexp/prefer-plus-quantifier": "error",
+ "regexp/prefer-predefined-assertion": "error",
+ "regexp/prefer-question-quantifier": "error",
+ "regexp/prefer-range": "error",
+ "regexp/prefer-set-operation": "error",
+ "regexp/prefer-star-quantifier": "error",
+ "regexp/prefer-unicode-codepoint-escapes": "error",
+ "regexp/prefer-w": "error",
+ "regexp/simplify-set-operations": "error",
+ "regexp/sort-flags": "error",
+ "regexp/strict": "error",
+ "regexp/use-ignore-case": "error",
+ },
+ },
+ ];
+}
diff --git a/src/configs/script.ts b/src/configs/script.ts
deleted file mode 100644
index f7269870..00000000
--- a/src/configs/script.ts
+++ /dev/null
@@ -1,22 +0,0 @@
-import { type Linter } from "eslint";
-
-const baseConfig: Linter.Config = {
- rules: {
- "functional/functional-parameters": [
- "error",
- {
- enforceParameterCount: false,
- },
- ],
- "functional/no-conditional-statements": "off",
- "functional/no-expression-statements": "off",
- "functional/no-loop-statements": "off",
- "functional/no-return-void": "off",
- "functional/no-throw-statements": "off",
- "n/no-process-exit": "off",
- "n/no-sync": "off",
- "n/no-unpublished-import": "off",
- },
-};
-
-export default baseConfig;
diff --git a/src/configs/sonar.ts b/src/configs/sonar.ts
new file mode 100644
index 00000000..95012558
--- /dev/null
+++ b/src/configs/sonar.ts
@@ -0,0 +1,59 @@
+import type { ESLint } from "eslint";
+
+import type { FlatConfigItem, OptionsFunctional } from "../types";
+import { loadPackages } from "../utils";
+
+export async function sonar(
+ options: Readonly>,
+): Promise {
+ const { functionalEnforcement = "none" } = options;
+
+ const [pluginSonar] = (await loadPackages(["eslint-plugin-sonarjs"])) as [
+ ESLint.Plugin,
+ ];
+
+ return [
+ {
+ name: "rs:node",
+ plugins: {
+ sonar: pluginSonar,
+ },
+ rules: {
+ "sonar/no-all-duplicated-branches": "error",
+ "sonar/no-collapsible-if": "error",
+ "sonar/no-collection-size-mischeck": "error",
+ "sonar/no-duplicated-branches": "error",
+ "sonar/no-element-overwrite": "error",
+ "sonar/no-empty-collection": "error",
+ "sonar/no-extra-arguments": "error",
+ "sonar/no-gratuitous-expressions": "error",
+ "sonar/no-identical-conditions": "error",
+ "sonar/no-identical-expressions": "error",
+ "sonar/no-identical-functions": "error",
+ "sonar/no-ignored-return": "error",
+ "sonar/no-inverted-boolean-check": "error",
+ "sonar/no-nested-switch": "error",
+ "sonar/no-nested-template-literals": "error",
+ "sonar/no-one-iteration-loop": "error",
+ "sonar/no-redundant-boolean": "error",
+ "sonar/no-redundant-jump": "error",
+ "sonar/no-same-line-conditional": "error",
+ "sonar/no-unused-collection": "error",
+ "sonar/no-use-of-empty-return-value": "error",
+ "sonar/no-useless-catch": "error",
+ "sonar/non-existent-operator": "error",
+ "sonar/prefer-immediate-return": "error",
+ "sonar/prefer-object-literal": "error",
+ "sonar/prefer-single-boolean-return": "error",
+ "sonar/prefer-while": "error",
+
+ ...(functionalEnforcement === "recommended" ||
+ functionalEnforcement === "strict"
+ ? {
+ "sonar/elseif-without-else": "error",
+ }
+ : {}),
+ },
+ },
+ ];
+}
diff --git a/src/configs/sort.ts b/src/configs/sort.ts
new file mode 100644
index 00000000..4bd391ef
--- /dev/null
+++ b/src/configs/sort.ts
@@ -0,0 +1,139 @@
+import type { FlatConfigItem } from "../types";
+
+/**
+ * Sort tsconfig.json
+ *
+ * Requires `jsonc` config
+ */
+export function sortTsconfig(): FlatConfigItem[] {
+ return [
+ {
+ files: ["**/tsconfig.json", "**/tsconfig.*.json"],
+ name: "",
+ rules: {
+ "jsonc/sort-keys": [
+ "error",
+ {
+ order: [
+ "extends",
+ "compilerOptions",
+ "references",
+ "files",
+ "include",
+ "exclude",
+ ],
+ pathPattern: "^$",
+ },
+ {
+ order: [
+ /* Projects */
+ "incremental",
+ "composite",
+ "tsBuildInfoFile",
+ "disableSourceOfProjectReferenceRedirect",
+ "disableSolutionSearching",
+ "disableReferencedProjectLoad",
+
+ /* Language and Environment */
+ "target",
+ "jsx",
+ "jsxFactory",
+ "jsxFragmentFactory",
+ "jsxImportSource",
+ "lib",
+ "moduleDetection",
+ "noLib",
+ "reactNamespace",
+ "useDefineForClassFields",
+ "emitDecoratorMetadata",
+ "experimentalDecorators",
+
+ /* Modules */
+ "baseUrl",
+ "rootDir",
+ "rootDirs",
+ "customConditions",
+ "module",
+ "moduleResolution",
+ "moduleSuffixes",
+ "noResolve",
+ "paths",
+ "resolveJsonModule",
+ "resolvePackageJsonExports",
+ "resolvePackageJsonImports",
+ "typeRoots",
+ "types",
+ "allowArbitraryExtensions",
+ "allowImportingTsExtensions",
+ "allowUmdGlobalAccess",
+
+ /* JavaScript Support */
+ "allowJs",
+ "checkJs",
+ "maxNodeModuleJsDepth",
+
+ /* Type Checking */
+ "strict",
+ "strictBindCallApply",
+ "strictFunctionTypes",
+ "strictNullChecks",
+ "strictPropertyInitialization",
+ "allowUnreachableCode",
+ "allowUnusedLabels",
+ "alwaysStrict",
+ "exactOptionalPropertyTypes",
+ "noFallthroughCasesInSwitch",
+ "noImplicitAny",
+ "noImplicitOverride",
+ "noImplicitReturns",
+ "noImplicitThis",
+ "noPropertyAccessFromIndexSignature",
+ "noUncheckedIndexedAccess",
+ "noUnusedLocals",
+ "noUnusedParameters",
+ "useUnknownInCatchVariables",
+
+ /* Emit */
+ "declaration",
+ "declarationDir",
+ "declarationMap",
+ "downlevelIteration",
+ "emitBOM",
+ "emitDeclarationOnly",
+ "importHelpers",
+ "importsNotUsedAsValues",
+ "inlineSourceMap",
+ "inlineSources",
+ "mapRoot",
+ "newLine",
+ "noEmit",
+ "noEmitHelpers",
+ "noEmitOnError",
+ "outDir",
+ "outFile",
+ "preserveConstEnums",
+ "preserveValueImports",
+ "removeComments",
+ "sourceMap",
+ "sourceRoot",
+ "stripInternal",
+
+ /* Interop Constraints */
+ "allowSyntheticDefaultImports",
+ "esModuleInterop",
+ "forceConsistentCasingInFileNames",
+ "isolatedModules",
+ "preserveSymlinks",
+ "verbatimModuleSyntax",
+
+ /* Completeness */
+ "skipDefaultLibCheck",
+ "skipLibCheck",
+ ],
+ pathPattern: "^compilerOptions$",
+ },
+ ],
+ },
+ },
+ ];
+}
diff --git a/src/configs/stylistic.ts b/src/configs/stylistic.ts
new file mode 100644
index 00000000..f6070d71
--- /dev/null
+++ b/src/configs/stylistic.ts
@@ -0,0 +1,293 @@
+import type { StylisticCustomizeOptions } from "@stylistic/eslint-plugin";
+import type { ESLint } from "eslint";
+
+import type {
+ FlatConfigItem,
+ OptionsHasTypeScript,
+ OptionsOverrides,
+ StylisticConfig,
+} from "../types";
+import { loadPackages } from "../utils";
+
+export const StylisticConfigDefaults: Required = {
+ indent: 2,
+ jsx: true,
+ quotes: "double",
+ semi: true,
+};
+
+export async function stylistic(
+ options: Readonly<
+ Required<
+ { stylistic: Required } & OptionsOverrides &
+ OptionsHasTypeScript
+ >
+ >,
+): Promise {
+ const {
+ stylistic: { indent, jsx, quotes, semi },
+ overrides,
+ typescript,
+ } = options;
+
+ const [pluginStylistic] = (await loadPackages([
+ "@stylistic/eslint-plugin",
+ ])) as [typeof import("@stylistic/eslint-plugin")];
+
+ const config = pluginStylistic.configs.customize({
+ flat: true,
+ indent,
+ jsx,
+ pluginName: "style",
+ quotes,
+ semi,
+ } as StylisticCustomizeOptions);
+
+ return [
+ {
+ name: "rs:stylistic",
+ plugins: {
+ style: pluginStylistic as ESLint.Plugin,
+ },
+ rules: {
+ ...config.rules,
+
+ "style/array-bracket-spacing": ["error", "never"],
+ "style/arrow-parens": ["error", "always"],
+ "style/arrow-spacing": ["error", { before: true, after: true }],
+ "style/block-spacing": ["error", "always"],
+ "style/brace-style": "error",
+ "style/comma-dangle": [
+ "error",
+ {
+ arrays: "only-multiline",
+ exports: "only-multiline",
+ functions: "ignore",
+ imports: "only-multiline",
+ objects: "only-multiline",
+
+ ...(typescript
+ ? {
+ enums: "only-multiline",
+ generics: "only-multiline",
+ tuples: "only-multiline",
+ }
+ : {}),
+ },
+ ],
+ "style/comma-spacing": ["error", { before: false, after: true }],
+ "style/comma-style": ["error", "last"],
+ "style/computed-property-spacing": "error",
+ "style/dot-location": ["error", "property"],
+ "style/eol-last": "error",
+ "style/func-call-spacing": ["error", "never"],
+ "style/generator-star-spacing": ["error", "after"],
+ "style/indent": typescript
+ ? "off"
+ : [
+ "error",
+ indent,
+ {
+ SwitchCase: 1,
+ VariableDeclarator: 1,
+ outerIIFEBody: 1,
+ MemberExpression: 1,
+ FunctionDeclaration: { parameters: 1, body: 1 },
+ FunctionExpression: { parameters: 1, body: 1 },
+ CallExpression: { arguments: 1 },
+ ArrayExpression: 1,
+ ObjectExpression: 1,
+ ImportDeclaration: 1,
+ flatTernaryExpressions: false,
+ ignoreComments: false,
+ },
+ ],
+ "style/indent-binary-ops": "error",
+ "style/key-spacing": [
+ "error",
+ { beforeColon: false, afterColon: true },
+ ],
+ "style/keyword-spacing": ["error", { before: true, after: true }],
+ "style/linebreak-style": ["error", "unix"],
+ "style/lines-around-comment": [
+ "warn",
+ {
+ beforeBlockComment: true,
+ beforeLineComment: false,
+ afterBlockComment: false,
+ afterLineComment: false,
+ afterHashbangComment: true,
+ allowBlockStart: true,
+ allowBlockEnd: true,
+ allowObjectStart: true,
+ allowObjectEnd: true,
+ allowArrayStart: true,
+ allowArrayEnd: true,
+ allowClassStart: true,
+ allowClassEnd: true,
+
+ ...(typescript
+ ? {
+ allowEnumEnd: true,
+ allowEnumStart: true,
+ allowInterfaceEnd: true,
+ allowInterfaceStart: true,
+ allowModuleEnd: true,
+ allowModuleStart: true,
+ allowTypeEnd: true,
+ allowTypeStart: true,
+ }
+ : {}),
+ },
+ ],
+ "style/lines-between-class-members": [
+ "error",
+ "always",
+ {
+ exceptAfterSingleLine: true,
+ ...(typescript
+ ? {
+ exceptAfterOverload: true,
+ }
+ : {}),
+ },
+ ],
+ "style/max-statements-per-line": ["error", { max: 1 }],
+ "style/multiline-ternary": ["error", "always-multiline"],
+ "style/new-parens": "error",
+ "style/newline-per-chained-call": [
+ "error",
+ { ignoreChainWithDepth: 2 },
+ ],
+ "style/no-extra-parens": [
+ "error",
+ "all",
+ { nestedBinaryExpressions: false },
+ ],
+ "style/no-extra-semi": "error",
+ "style/no-floating-decimal": "error",
+ "style/no-mixed-operators": [
+ "error",
+ {
+ groups: [
+ ["+", "-", "*", "/", "%", "**"],
+ ["&", "|", "^", "~", "<<", ">>", ">>>"],
+ ["==", "!=", "===", "!==", ">", ">=", "<", "<="],
+ ["&&", "||"],
+ ["in", "instanceof"],
+ ],
+ allowSamePrecedence: true,
+ },
+ ],
+ "style/no-mixed-spaces-and-tabs": "error",
+ "style/no-multi-spaces": ["error", { ignoreEOLComments: true }],
+ "style/no-multiple-empty-lines": ["error", { max: 1, maxEOF: 1 }],
+ "style/no-tabs": "error",
+ "style/no-trailing-spaces": "error",
+ "style/no-whitespace-before-property": "error",
+ "style/nonblock-statement-body-position": [
+ "error",
+ "beside",
+ { overrides: {} },
+ ],
+ "style/object-curly-newline": [
+ "error",
+ {
+ ObjectExpression: {
+ minProperties: 3,
+ multiline: true,
+ consistent: true,
+ },
+ ObjectPattern: {
+ minProperties: 3,
+ multiline: true,
+ consistent: true,
+ },
+ },
+ ],
+ "style/object-curly-spacing": ["error", "always"],
+ "style/object-property-newline": [
+ "error",
+ { allowAllPropertiesOnSameLine: true },
+ ],
+ "style/one-var-declaration-per-line": ["error", "always"],
+ "style/operator-linebreak": [
+ "error",
+ "after",
+ {
+ overrides: {
+ "=": "none",
+ "==": "none",
+ "===": "none",
+ "?": "before",
+ ":": "before",
+ },
+ },
+ ],
+ "style/padded-blocks": [
+ "error",
+ {
+ blocks: "never",
+ switches: "never",
+ classes: "never",
+ },
+ ],
+ "style/quote-props": ["error", "consistent-as-needed"],
+ "style/quotes": [
+ "error",
+ quotes,
+ { avoidEscape: true, allowTemplateLiterals: true },
+ ],
+ "style/rest-spread-spacing": ["error", "never"],
+ "style/semi-spacing": ["error", { before: false, after: true }],
+ "style/semi-style": ["error", "last"],
+ "style/semi": ["error", semi ? "always" : "never"],
+ "style/space-before-blocks": ["error", "always"],
+ "style/space-before-function-paren": [
+ "error",
+ {
+ asyncArrow: "always",
+ anonymous: "never",
+ named: "never",
+ },
+ ],
+ "style/space-in-parens": ["error", "never"],
+ "style/space-infix-ops": "error",
+ "style/space-unary-ops": ["error", { words: true, nonwords: false }],
+ "style/spaced-comment": [
+ "error",
+ "always",
+ {
+ line: {
+ exceptions: ["-", "+", "*"],
+ markers: ["*package", "!", "/", ",", "="],
+ },
+ block: {
+ balanced: true,
+ exceptions: ["-", "+", "*"],
+ markers: ["*package", "!", "*", ",", ":", "::", "flow-include"],
+ },
+ },
+ ],
+ "style/switch-colon-spacing": ["error", { after: true, before: false }],
+ "style/template-curly-spacing": ["error", "never"],
+ "style/template-tag-spacing": ["error", "never"],
+ "style/wrap-iife": [
+ "error",
+ "inside",
+ { functionPrototypeMethods: true },
+ ],
+ "style/yield-star-spacing": ["error", "after"],
+
+ ...(typescript
+ ? {
+ "style/member-delimiter-style": "error",
+ "style/type-annotation-spacing": "error",
+ }
+ : {}),
+
+ ...overrides,
+ },
+ },
+ ];
+}
diff --git a/src/configs/test.ts b/src/configs/test.ts
index f653b1c7..183dd7b7 100644
--- a/src/configs/test.ts
+++ b/src/configs/test.ts
@@ -1,32 +1,83 @@
-import { type Linter } from "eslint";
-
-const baseConfig: Linter.Config = {
- extends: ["@rebeccastevens/eslint-config/script"],
-
- rules: {
- "@typescript-eslint/no-empty-function": "off",
- "@typescript-eslint/no-unsafe-argument": "off",
- "@typescript-eslint/no-unsafe-assignment": "off",
- "@typescript-eslint/no-unsafe-call": "off",
- "@typescript-eslint/no-unsafe-member-access": "off",
- "@typescript-eslint/no-unsafe-return": "off",
- "@typescript-eslint/restrict-template-expressions": "off",
- "eslint-comments/disable-enable-pair": "off",
- "functional/functional-parameters": "off",
- "functional/immutable-data": "warn",
- "functional/no-classes": "off",
- "functional/no-conditional-statements": "warn",
- "functional/no-expression-statements": "off",
- "functional/no-loop-statements": "warn",
- "functional/no-throw-statements": "off",
- "jsdoc/require-jsdoc": "off",
- "lines-between-class-members": "off",
- "max-classes-per-file": "off",
- "n/no-sync": "off",
- "sonarjs/no-duplicate-string": "off",
- "sonarjs/no-identical-functions": "off",
- "unicorn/consistent-function-scoping": "off",
- },
-};
-
-export default baseConfig;
+import type { ESLint } from "eslint";
+
+import type { FlatConfigItem, OptionsFiles, OptionsOverrides } from "../types";
+import { interopDefault, loadPackages } from "../utils";
+
+export async function test(
+ options: Readonly>,
+): Promise {
+ const { files, overrides } = options;
+
+ const [pluginVitest, pluginNoOnlyTests] = (await loadPackages([
+ "eslint-plugin-vitest",
+ "eslint-plugin-no-only-tests",
+ ])) as [typeof import("eslint-plugin-vitest"), ESLint.Plugin];
+
+ const [pluginFunctional] = await Promise.all([
+ interopDefault(import("eslint-plugin-functional")).catch(() => undefined),
+ ]);
+
+ return [
+ {
+ name: "rs:test:setup",
+ plugins: {
+ test: {
+ ...pluginVitest,
+ rules: {
+ ...(pluginVitest as ESLint.Plugin).rules,
+ ...pluginNoOnlyTests.rules,
+ },
+ },
+ },
+ settings: {
+ vitest: {
+ typecheck: true,
+ },
+ },
+ },
+ {
+ files,
+ name: "rs:test:rules",
+ rules: {
+ ...pluginFunctional?.configs.off.rules,
+
+ "node/prefer-global/process": "off",
+ "node/no-sync": "off",
+
+ "import/no-named-as-default-member": "off",
+
+ "jsdoc/require-jsdoc": "off",
+
+ "regexp/no-super-linear-backtracking": "off",
+
+ "sonar/no-duplicate-string": "off",
+ "sonar/no-identical-functions": "off",
+
+ "test/consistent-test-it": [
+ "error",
+ { fn: "it", withinDescribe: "it" },
+ ],
+ "test/no-identical-title": "error",
+ "test/no-import-node-test": "error",
+ "test/no-only-tests": "error",
+ "test/prefer-hooks-in-order": "error",
+ "test/prefer-lowercase-title": "error",
+ "test/valid-expect": "off", // Too many false positives.
+
+ "ts/consistent-type-definitions": "off",
+ "ts/no-unsafe-argument": "off",
+ "ts/no-unsafe-assignment": "off",
+ "ts/no-unsafe-call": "off",
+ "ts/no-unsafe-member-access": "off",
+ "ts/no-unsafe-return": "off",
+ "ts/no-unused-vars": "off",
+ "ts/strict-boolean-expressions": "off",
+
+ "unicorn/consistent-function-scoping": "off",
+ "unicorn/prefer-module": "off",
+
+ ...overrides,
+ },
+ },
+ ];
+}
diff --git a/src/configs/toml.ts b/src/configs/toml.ts
new file mode 100644
index 00000000..8924d731
--- /dev/null
+++ b/src/configs/toml.ts
@@ -0,0 +1,69 @@
+import type { ESLint, Linter } from "eslint";
+
+import type {
+ FlatConfigItem,
+ OptionsFiles,
+ OptionsOverrides,
+ RequiredOptionsStylistic,
+} from "../types";
+import { loadPackages } from "../utils";
+
+export async function toml(
+ options: Readonly<
+ Required
+ >,
+): Promise {
+ const { files, overrides, stylistic } = options;
+
+ const { indent = 2 } = typeof stylistic === "boolean" ? {} : stylistic;
+
+ const [pluginToml, parserToml] = (await loadPackages([
+ "eslint-plugin-toml",
+ "toml-eslint-parser",
+ ])) as [ESLint.Plugin, Linter.Parser];
+
+ const stylisticEnforcement = stylistic === false ? "off" : "error";
+
+ return [
+ {
+ name: "rs:toml:setup",
+ plugins: {
+ toml: pluginToml,
+ },
+ },
+ {
+ files,
+ languageOptions: {
+ parser: parserToml,
+ },
+ name: "rs:toml:rules",
+ rules: {
+ "style/spaced-comment": "off",
+
+ "toml/comma-style": "error",
+ "toml/keys-order": "error",
+ "toml/no-space-dots": "error",
+ "toml/no-unreadable-number-separator": "error",
+ "toml/precision-of-fractional-seconds": "error",
+ "toml/precision-of-integer": "error",
+ "toml/tables-order": "error",
+
+ "toml/vue-custom-block/no-parsing-error": "error",
+
+ "toml/array-bracket-newline": stylisticEnforcement,
+ "toml/array-bracket-spacing": stylisticEnforcement,
+ "toml/array-element-newline": stylisticEnforcement,
+ "toml/indent": [stylisticEnforcement, indent === "tab" ? 2 : indent],
+ "toml/inline-table-curly-spacing": stylisticEnforcement,
+ "toml/key-spacing": stylisticEnforcement,
+ "toml/padding-line-between-pairs": stylisticEnforcement,
+ "toml/padding-line-between-tables": stylisticEnforcement,
+ "toml/quoted-keys": stylisticEnforcement,
+ "toml/spaced-comment": stylisticEnforcement,
+ "toml/table-bracket-spacing": stylisticEnforcement,
+
+ ...overrides,
+ },
+ },
+ ];
+}
diff --git a/src/configs/typescript.ts b/src/configs/typescript.ts
index 05d4d5bf..af2116d2 100644
--- a/src/configs/typescript.ts
+++ b/src/configs/typescript.ts
@@ -1,44 +1,479 @@
-import { type Linter } from "eslint";
-
-import { typescriptExtensions, typescriptSupportedExtensions } from "~/files";
-import { mergeConfigs } from "~/merge-configs";
-import { settings as typescript } from "~/plugins/typescript";
-
-const baseConfig: Linter.Config = {
- parser: "@typescript-eslint/parser",
-
- rules: {
- "camelcase": "off",
- "comma-dangle": "off",
- "consistent-return": "off",
- "dot-notation": "off",
- "indent": "off",
- "no-constant-condition": "off",
- "no-extra-parens": "off",
- "no-loop-func": "off",
- "no-loss-of-precision": "off",
- "no-redeclare": "off",
- "no-shadow": "off",
- "no-unused-expressions": "off",
- "no-unused-vars": "off",
- "no-use-before-define": "off",
- "object-curly-spacing": "off",
- "prefer-destructuring": "off",
- "space-infix-ops": "off",
- },
-
- settings: {
- "import/extensions": typescriptSupportedExtensions,
- "import/external-module-folders": ["node_modules", "node_modules/@types"],
- "import/parsers": {
- "@typescript-eslint/parser": typescriptExtensions,
- },
- "import/resolver": {
- typescript: {
- extensions: typescriptSupportedExtensions,
+import assert from "node:assert/strict";
+
+import type { ESLint, Linter } from "eslint";
+
+import {
+ GLOB_DTS,
+ GLOB_JS,
+ GLOB_JSX,
+ GLOB_TESTS,
+ GLOB_TS,
+ GLOB_TSX,
+} from "../globs";
+import type {
+ FlatConfigItem,
+ OptionsComponentExts,
+ OptionsFiles,
+ OptionsFunctional,
+ OptionsMode,
+ OptionsOverrides,
+ OptionsProjectRoot,
+ OptionsTypeScriptParserOptions,
+ OptionsTypeScriptUnsafeSeverity,
+} from "../types";
+import { loadPackages } from "../utils";
+
+export const defaultFilesTypesAware = [GLOB_TS, GLOB_TSX, GLOB_DTS];
+
+export async function typescript(
+ options: Readonly<
+ Required<
+ OptionsComponentExts &
+ OptionsFiles &
+ OptionsFunctional &
+ OptionsMode &
+ OptionsOverrides &
+ OptionsProjectRoot &
+ OptionsTypeScriptParserOptions &
+ OptionsTypeScriptUnsafeSeverity
+ >
+ >,
+): Promise {
+ const {
+ mode,
+ functionalEnforcement,
+ componentExts,
+ overrides,
+ parserOptions,
+ unsafe,
+ files,
+ filesTypeAware,
+ projectRoot,
+ } = options;
+
+ const [pluginTs, parserTs] = (await loadPackages([
+ "@typescript-eslint/eslint-plugin",
+ "@typescript-eslint/parser",
+ ])) as [ESLint.Plugin, Linter.Parser];
+
+ function makeParser(
+ typeAware: boolean,
+ files: string[],
+ ignores: string[] = [],
+ ): FlatConfigItem {
+ return {
+ name: `rs:typescript:${typeAware ? "type-aware-parser" : "parser"}`,
+ files,
+ ignores,
+ languageOptions: {
+ parser: parserTs,
+ parserOptions: {
+ extraFileExtensions: componentExts.map((ext) => `.${ext}`),
+ sourceType: "module",
+ ...(typeAware
+ ? {
+ projectService: true,
+ tsconfigRootDir: projectRoot,
+ }
+ : {}),
+ ...(parserOptions as Linter.ParserOptions),
+ },
},
+ };
+ }
+
+ return [
+ {
+ name: "rs:typescript:setup",
+ plugins: { ts: pluginTs },
},
- },
-};
+ makeParser(true, filesTypeAware),
+ makeParser(false, files, filesTypeAware),
+ {
+ name: "rs:typescript:rules",
+ files,
+ rules: {
+ ...(assert(!Array.isArray(pluginTs.configs?.["eslint-recommended"])),
+ pluginTs.configs?.["eslint-recommended"]?.rules),
+
+ "no-extra-boolean-cast": "off",
+ "consistent-return": "off", // Don't turn on ts version
+ "import/named": "off",
+ "no-undef": "off",
+
+ "ts/array-type": [
+ "error",
+ { default: "array-simple", readonly: "generic" },
+ ],
+ "ts/await-thenable": "error",
+ "ts/ban-ts-comment": ["error", { minimumDescriptionLength: 10 }],
+ "ts/explicit-function-return-type": [
+ "off",
+ {
+ allowConciseArrowFunctionExpressionsStartingWithVoid: true,
+ allowExpressions: true,
+ allowHigherOrderFunctions: true,
+ allowTypedFunctionExpressions: true,
+ },
+ ],
+ "ts/explicit-member-accessibility": [
+ "error",
+ { accessibility: "explicit" },
+ ],
+ "ts/no-array-delete": "error",
+ "ts/no-base-to-string": "error",
+ "ts/no-confusing-void-expression": [
+ "error",
+ { ignoreArrowShorthand: false, ignoreVoidOperator: true },
+ ],
+ "ts/no-duplicate-enum-values": "error",
+ "ts/no-duplicate-type-constituents": "error",
+ "ts/no-dynamic-delete": "error",
+ "ts/no-empty-interface": ["error", { allowSingleExtends: true }],
+ "ts/no-explicit-any": unsafe,
+ "ts/no-extra-non-null-assertion": "error",
+ "ts/no-extraneous-class": "error",
+ "ts/no-floating-promises": "error",
+ "ts/no-for-in-array": "error",
+ "ts/no-invalid-void-type": "error",
+ "ts/no-loop-func": "error",
+ // "ts/no-meaningless-void-operator": "error",
+ "ts/no-misused-new": "error",
+ "ts/no-misused-promises": "error",
+ "ts/no-mixed-enums": "error",
+ "ts/no-namespace": "error",
+ "ts/no-non-null-asserted-nullish-coalescing": "error",
+ "ts/no-non-null-asserted-optional-chain": "error",
+ // "ts/no-non-null-assertion": "error",
+ "ts/no-redundant-type-constituents": "error",
+ "ts/no-this-alias": "error",
+ "ts/no-unnecessary-boolean-literal-compare": "error",
+ "ts/no-unnecessary-condition": [
+ "error",
+ { allowConstantLoopConditions: true },
+ ],
+ "ts/no-unnecessary-type-arguments": "error",
+ "ts/no-unnecessary-type-assertion": "error",
+ "ts/no-unnecessary-type-constraint": "error",
+ "ts/no-unsafe-argument": unsafe,
+ "ts/no-unsafe-assignment": unsafe,
+ "ts/no-unsafe-call": unsafe,
+ "ts/no-unsafe-declaration-merging": unsafe,
+ "ts/no-unsafe-enum-comparison": unsafe,
+ "ts/no-unsafe-function-type": unsafe,
+ "ts/no-unsafe-member-access": unsafe,
+ "ts/no-unsafe-return": unsafe,
+ "ts/no-unused-expressions": [
+ "error",
+ {
+ allowShortCircuit: true,
+ allowTaggedTemplates: true,
+ allowTernary: true,
+ },
+ ],
+ "ts/no-unnecessary-template-expression": "error",
+ "ts/no-wrapper-object-types": "error",
+ "ts/non-nullable-type-assertion-style": "error",
+ "ts/prefer-as-const": "error",
+ "ts/prefer-for-of": "error",
+ "ts/prefer-includes": "error",
+ "ts/prefer-literal-enum-member": "error",
+ "ts/prefer-nullish-coalescing": "error",
+ "ts/prefer-optional-chain": "error",
+ // "ts/prefer-readonly-parameter-types": "error",
+ "ts/prefer-reduce-type-parameter": "error",
+ "ts/prefer-regexp-exec": "error",
+ "ts/prefer-return-this-type": "error",
+ "ts/prefer-string-starts-ends-with": "error",
+ "ts/restrict-plus-operands": [
+ "error",
+ {
+ allowAny: true,
+ allowBoolean: false,
+ allowNullish: false,
+ allowNumberAndString: false,
+ allowRegExp: false,
+ skipCompoundAssignments: true,
+ },
+ ],
+ "ts/restrict-template-expressions": [
+ "error",
+ {
+ allowAny: true,
+ allowBoolean: true,
+ allowNullish: true,
+ allowNumber: true,
+ allowRegExp: false,
+ allowNever: false,
+ },
+ ],
+ "ts/strict-boolean-expressions": [
+ "error",
+ {
+ allowAny: false,
+ allowNullableBoolean: false,
+ allowNullableNumber: false,
+ allowNullableObject: false,
+ allowNullableString: false,
+ allowNumber: false,
+ allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing: false,
+ allowString: false,
+ },
+ ],
+ "ts/switch-exhaustiveness-check": "error",
+ "ts/unbound-method": ["error", { ignoreStatic: true }],
+ "ts/unified-signatures": [
+ "error",
+ { ignoreDifferentlyNamedParameters: true },
+ ],
+ "ts/use-unknown-in-catch-callback-variable": "error",
+
+ "no-use-before-define": "off",
+ "ts/no-use-before-define": [
+ "error",
+ {
+ classes: true,
+ functions: false,
+ typedefs: true,
+ variables: true,
+ },
+ ],
+
+ "no-shadow": "off",
+ "ts/no-shadow": [
+ "warn",
+ {
+ allow: ["resolve", "reject", "done", "cb"],
+ builtinGlobals: false,
+ hoist: "never",
+ },
+ ],
+
+ "no-dupe-class-members": "off",
+ "ts/no-dupe-class-members": "off",
+
+ "no-invalid-this": "off",
+ "ts/no-invalid-this": "off",
+
+ "no-redeclare": "off",
+ "ts/no-redeclare": "off",
+
+ "no-unused-vars": "off",
+ "ts/no-unused-vars": [
+ "error",
+ {
+ args: "none",
+ caughtErrors: "none",
+ ignoreRestSiblings: true,
+ vars: "all",
+ },
+ ],
+
+ "no-loss-of-precision": "off",
+ "ts/no-loss-of-precision": "error",
+
+ "no-throw-literal": "off",
+ "ts/only-throw-error": "error",
+
+ "dot-notation": "off",
+ "ts/dot-notation": [
+ "error",
+ { allowIndexSignaturePropertyAccess: true },
+ ],
-export default mergeConfigs(baseConfig, typescript);
+ "ts/consistent-indexed-object-style": "error",
+ "ts/consistent-type-definitions": ["error", "type"],
+
+ "class-methods-use-this": "off",
+ "ts/class-methods-use-this": "error",
+
+ "no-array-constructor": "off",
+ "ts/no-array-constructor": "error",
+
+ "no-implied-eval": "off",
+ "ts/no-implied-eval": "error",
+
+ "no-return-await": "off",
+ "ts/return-await": ["error", "never"],
+
+ "no-useless-constructor": "off",
+ "ts/no-useless-constructor": "error",
+
+ "prefer-destructuring": "off",
+ "ts/prefer-destructuring": [
+ "error",
+ {
+ VariableDeclarator: { array: false, object: true },
+ AssignmentExpression: { array: true, object: true },
+ },
+ { enforceForRenamedProperties: false },
+ ],
+
+ "prefer-promise-reject-errors": "off",
+ "ts/prefer-promise-reject-errors": "error",
+
+ "require-await": "off",
+ "ts/require-await": "error",
+
+ ...(mode === "application"
+ ? {
+ "ts/no-empty-object-type": [
+ "error",
+ {
+ allowInterfaces: "with-single-extends",
+ },
+ ],
+ }
+ : {}),
+
+ ...(functionalEnforcement === "none"
+ ? {}
+ : {
+ "ts/naming-convention": [
+ "error",
+ {
+ selector: "default",
+ format: ["camelCase", "PascalCase"],
+ leadingUnderscore: "allow",
+ trailingUnderscore: "forbid",
+ },
+ {
+ selector: "variableLike",
+ filter: { regex: "_[^_]+", match: true },
+ format: ["camelCase", "PascalCase"],
+ prefix: ["m_", "M_"],
+ leadingUnderscore: "forbid",
+ trailingUnderscore: "forbid",
+ },
+ {
+ selector: "variableLike",
+ format: ["camelCase", "PascalCase"],
+ leadingUnderscore: "allow",
+ trailingUnderscore: "forbid",
+ },
+ {
+ selector: "variable",
+ format: ["camelCase", "PascalCase", "UPPER_CASE"],
+ prefix: ["m_", "M_"],
+ leadingUnderscore: "forbid",
+ trailingUnderscore: "forbid",
+ },
+ {
+ selector: "variable",
+ filter: { regex: "^[A-Z0-9_]+$", match: true },
+ format: ["UPPER_CASE"],
+ modifiers: ["const"],
+ leadingUnderscore: "forbid",
+ trailingUnderscore: "forbid",
+ },
+ {
+ selector: "variable",
+ filter: { regex: "_[^_]+", match: true },
+ format: ["camelCase", "PascalCase"],
+ modifiers: ["const"],
+ prefix: ["m_", "M_"],
+ leadingUnderscore: "forbid",
+ trailingUnderscore: "forbid",
+ },
+ {
+ selector: "variable",
+ format: ["camelCase", "PascalCase", "UPPER_CASE"],
+ modifiers: ["const"],
+ leadingUnderscore: "allow",
+ trailingUnderscore: "forbid",
+ },
+ {
+ selector: "variable",
+ format: null,
+ modifiers: ["destructured"],
+ },
+ {
+ selector: "memberLike",
+ filter: { regex: "^[A-Z0-9_]+$", match: true },
+ format: ["UPPER_CASE"],
+ leadingUnderscore: "forbid",
+ trailingUnderscore: "forbid",
+ },
+ {
+ selector: "memberLike",
+ format: ["camelCase", "PascalCase"],
+ prefix: ["m_", "M_"],
+ leadingUnderscore: "forbid",
+ trailingUnderscore: "forbid",
+ },
+ {
+ selector: "memberLike",
+ filter: { regex: "_[^_]+", match: true },
+ format: ["camelCase", "PascalCase"],
+ modifiers: ["readonly"],
+ prefix: ["m_", "M_"],
+ leadingUnderscore: "forbid",
+ trailingUnderscore: "forbid",
+ },
+ {
+ selector: "memberLike",
+ format: ["camelCase", "PascalCase", "UPPER_CASE"],
+ modifiers: ["readonly"],
+ leadingUnderscore: "allow",
+ trailingUnderscore: "forbid",
+ },
+ {
+ selector: [
+ "accessor",
+ "classMethod",
+ "typeMethod",
+ "typeProperty",
+ ],
+ format: ["camelCase", "PascalCase", "UPPER_CASE"],
+ leadingUnderscore: "allow",
+ trailingUnderscore: "forbid",
+ },
+ {
+ selector: "enumMember",
+ format: ["PascalCase", "UPPER_CASE"],
+ leadingUnderscore: "allow",
+ trailingUnderscore: "forbid",
+ },
+ {
+ selector: "typeLike",
+ format: ["PascalCase"],
+ leadingUnderscore: "allow",
+ trailingUnderscore: "forbid",
+ },
+ {
+ selector: ["objectLiteralProperty", "objectLiteralMethod"],
+ format: null,
+ },
+ ],
+ }),
+
+ ...overrides,
+ },
+ },
+ {
+ name: "rs:typescript:rules-non-type-aware",
+ files,
+ ignores: filesTypeAware,
+ rules: ((pluginTs.configs?.["disable-type-checked"] as Linter.FlatConfig)
+ .rules ?? {}) as NonNullable,
+ },
+ {
+ name: "rs:typescript:tests-overrides",
+ files: GLOB_TESTS,
+ rules: {
+ "ts/no-unused-expressions": "off",
+ "ts/consistent-type-definitions": "off",
+ "ts/triple-slash-reference": "off",
+ },
+ },
+ {
+ name: "rs:typescript:javascript-overrides",
+ files: [GLOB_JS, GLOB_JSX],
+ rules: {
+ "ts/ban-ts-comment": "off",
+ "ts/no-require-imports": "off",
+ "ts/no-var-requires": "off",
+ },
+ },
+ ];
+}
diff --git a/src/configs/unicorn.ts b/src/configs/unicorn.ts
new file mode 100644
index 00000000..ee0f598b
--- /dev/null
+++ b/src/configs/unicorn.ts
@@ -0,0 +1,131 @@
+import type { ESLint } from "eslint";
+
+import type { FlatConfigItem } from "../types";
+import { loadPackages } from "../utils";
+
+export async function unicorn(): Promise {
+ const [pluginUnicorn] = (await loadPackages(["eslint-plugin-unicorn"])) as [
+ ESLint.Plugin,
+ ];
+
+ return [
+ {
+ name: "rs:unicorn",
+ plugins: {
+ unicorn: pluginUnicorn,
+ },
+ rules: {
+ "unicorn/better-regex": "error",
+ "unicorn/catch-error-name": "error",
+ "unicorn/consistent-function-scoping": "error",
+ "unicorn/custom-error-definition": "error",
+ "unicorn/empty-brace-spaces": "error",
+ "unicorn/error-message": "error",
+ "unicorn/escape-case": "error",
+ "unicorn/expiring-todo-comments": "error",
+ "unicorn/explicit-length-check": "error",
+ "unicorn/filename-case": [
+ "error",
+ {
+ cases: { kebabCase: true, pascalCase: true },
+ ignore: ["^.*\\.md$", "FUNDING.yml"],
+ },
+ ],
+ "unicorn/import-style": [
+ "error",
+ {
+ extendDefaultStyles: false,
+ styles: { typescript: { default: true, named: true } },
+ },
+ ],
+ "unicorn/new-for-builtins": "error",
+ // "unicorn/no-anonymous-default-export": "error", // https://github.com/sindresorhus/eslint-plugin-unicorn/issues/2302
+ "unicorn/no-array-for-each": "error",
+ "unicorn/no-array-method-this-argument": "error",
+ "unicorn/no-array-push-push": "error",
+ "unicorn/no-await-expression-member": "error",
+ // "unicorn/no-await-in-promise-methods": "error", // https://github.com/sindresorhus/eslint-plugin-unicorn/issues/2302
+ "unicorn/no-console-spaces": "error",
+ "unicorn/no-document-cookie": "error",
+ "unicorn/no-for-loop": "error",
+ "unicorn/no-hex-escape": "error",
+ "unicorn/no-instanceof-array": "error",
+ "unicorn/no-invalid-remove-event-listener": "error",
+ "unicorn/no-lonely-if": "error",
+ "unicorn/no-negated-condition": "error",
+ "unicorn/no-new-array": "error",
+ "unicorn/no-new-buffer": "error",
+ "unicorn/no-object-as-default-parameter": "error",
+ // "unicorn/no-single-promise-in-promise-methods": "error", // https://github.com/sindresorhus/eslint-plugin-unicorn/issues/2302
+ "unicorn/no-static-only-class": "error",
+ "unicorn/no-thenable": "error",
+ "unicorn/no-this-assignment": "error",
+ "unicorn/no-typeof-undefined": "error",
+ "unicorn/no-unnecessary-await": "error",
+ "unicorn/no-unnecessary-polyfills": "error",
+ "unicorn/no-unreadable-array-destructuring": "error",
+ "unicorn/no-unreadable-iife": "error",
+ "unicorn/no-useless-fallback-in-spread": "error",
+ "unicorn/no-useless-length-check": "error",
+ "unicorn/no-useless-promise-resolve-reject": "error",
+ // "unicorn/no-useless-spread": "error", // https://github.com/sindresorhus/eslint-plugin-unicorn/issues/2018
+ "unicorn/no-useless-switch-case": "error",
+ "unicorn/no-zero-fractions": "error",
+ "unicorn/number-literal-case": "error",
+ "unicorn/numeric-separators-style": "error",
+ "unicorn/prefer-add-event-listener": "error",
+ "unicorn/prefer-array-find": "error",
+ "unicorn/prefer-array-flat-map": "error",
+ "unicorn/prefer-array-flat": "error",
+ "unicorn/prefer-array-index-of": "error",
+ "unicorn/prefer-array-some": "error",
+ "unicorn/prefer-at": ["error", { checkAllIndexAccess: false }],
+ "unicorn/prefer-blob-reading-methods": "error",
+ "unicorn/prefer-code-point": "error",
+ "unicorn/prefer-date-now": "error",
+ "unicorn/prefer-default-parameters": "error",
+ "unicorn/prefer-dom-node-append": "error",
+ "unicorn/prefer-dom-node-dataset": "error",
+ "unicorn/prefer-dom-node-remove": "error",
+ "unicorn/prefer-dom-node-text-content": "error",
+ "unicorn/prefer-event-target": "error",
+ "unicorn/prefer-export-from": "error",
+ "unicorn/prefer-includes": "error",
+ "unicorn/prefer-keyboard-event-key": "error",
+ "unicorn/prefer-logical-operator-over-ternary": "error",
+ "unicorn/prefer-math-trunc": "error",
+ "unicorn/prefer-modern-dom-apis": "error",
+ "unicorn/prefer-modern-math-apis": "error",
+ // "unicorn/prefer-module": "error",
+ "unicorn/prefer-native-coercion-functions": "error",
+ "unicorn/prefer-negative-index": "error",
+ "unicorn/prefer-node-protocol": "error",
+ "unicorn/prefer-number-properties": "error",
+ "unicorn/prefer-object-from-entries": "error",
+ "unicorn/prefer-optional-catch-binding": "error",
+ "unicorn/prefer-prototype-methods": "error",
+ "unicorn/prefer-query-selector": "error",
+ "unicorn/prefer-reflect-apply": "error",
+ "unicorn/prefer-regexp-test": "error",
+ "unicorn/prefer-set-has": "error",
+ "unicorn/prefer-set-size": "error",
+ "unicorn/prefer-spread": "error",
+ "unicorn/prefer-string-replace-all": "error",
+ "unicorn/prefer-string-slice": "error",
+ "unicorn/prefer-string-starts-ends-with": "error",
+ "unicorn/prefer-string-trim-start-end": "error",
+ "unicorn/prefer-switch": "error",
+ "unicorn/prefer-ternary": "error",
+ "unicorn/prefer-top-level-await": "error",
+ "unicorn/prefer-type-error": "error",
+ "unicorn/relative-url-style": "error",
+ "unicorn/require-array-join-separator": "error",
+ "unicorn/require-number-to-fixed-digits-argument": "error",
+ "unicorn/switch-case-braces": "error",
+ "unicorn/template-indent": "error",
+ "unicorn/text-encoding-identifier-case": "error",
+ "unicorn/throw-new-error": "error",
+ },
+ },
+ ];
+}
diff --git a/src/configs/unocss.ts b/src/configs/unocss.ts
new file mode 100644
index 00000000..da78eeaa
--- /dev/null
+++ b/src/configs/unocss.ts
@@ -0,0 +1,36 @@
+import type { ESLint } from "eslint";
+
+import type { FlatConfigItem, OptionsUnoCSS } from "../types";
+import { loadPackages } from "../utils";
+
+export async function unocss(
+ options: Readonly>,
+): Promise {
+ const { attributify, strict } = options;
+
+ const [pluginUnoCSS] = (await loadPackages(["@unocss/eslint-plugin"])) as [
+ ESLint.Plugin,
+ ];
+
+ return [
+ {
+ name: "js:unocss",
+ plugins: {
+ unocss: pluginUnoCSS,
+ },
+ rules: {
+ "unocss/order": "error",
+ ...(attributify
+ ? {
+ "unocss/order-attributify": "error",
+ }
+ : {}),
+ ...(strict
+ ? {
+ "unocss/blocklist": "error",
+ }
+ : {}),
+ },
+ },
+ ];
+}
diff --git a/src/configs/vue.ts b/src/configs/vue.ts
new file mode 100644
index 00000000..1ebc727b
--- /dev/null
+++ b/src/configs/vue.ts
@@ -0,0 +1,280 @@
+import type { ESLint, Linter } from "eslint";
+import { mergeProcessors } from "eslint-merge-processors";
+
+import type {
+ FlatConfigItem,
+ OptionsFiles,
+ OptionsHasTypeScript,
+ OptionsOverrides,
+ OptionsTypeScriptParserOptions,
+ OptionsVue,
+ RequiredOptionsStylistic,
+} from "../types";
+import { interopDefault, loadPackages } from "../utils";
+
+/* eslint-disable ts/naming-convention */
+type PluginVue = ESLint.Plugin & {
+ configs: {
+ base: Linter.FlatConfig;
+ essential: Linter.FlatConfig;
+ "strongly-recommended": Linter.FlatConfig;
+ recommended: Linter.FlatConfig;
+ "vue3-essential": Linter.FlatConfig;
+ "vue3-strongly-recommended": Linter.FlatConfig;
+ "vue3-recommended": Linter.FlatConfig;
+ };
+};
+/* eslint-enable ts/naming-convention */
+
+export async function vue(
+ options: Readonly<
+ Required<
+ OptionsVue &
+ OptionsFiles &
+ OptionsHasTypeScript &
+ OptionsOverrides &
+ OptionsTypeScriptParserOptions &
+ RequiredOptionsStylistic
+ >
+ >,
+): Promise {
+ const {
+ files,
+ i18n,
+ overrides,
+ parserOptions,
+ stylistic,
+ typescript,
+ vueVersion,
+ } = options;
+
+ const sfcBlocks = options.sfcBlocks === true ? {} : options.sfcBlocks;
+
+ const { indent = 2 } = typeof stylistic === "boolean" ? {} : stylistic;
+
+ const [pluginVue, pluginVueI18n, parserVue, processorVueBlocks] =
+ (await loadPackages([
+ "eslint-plugin-vue",
+ "@intlify/eslint-plugin-vue-i18n",
+ "vue-eslint-parser",
+ "eslint-processor-vue-blocks",
+ ])) as [
+ PluginVue,
+ ESLint.Plugin,
+ typeof import("vue-eslint-parser"),
+ (typeof import("eslint-processor-vue-blocks"))["default"],
+ ];
+
+ const parserTs = await interopDefault(
+ import("@typescript-eslint/parser"),
+ ).catch(() => undefined);
+
+ const stylisticEnforcement = stylistic === false ? "off" : "error";
+
+ return [
+ {
+ name: "rs:vue:setup",
+ languageOptions: {
+ globals: {
+ computed: "readonly",
+ defineEmits: "readonly",
+ defineExpose: "readonly",
+ defineProps: "readonly",
+ onMounted: "readonly",
+ onUnmounted: "readonly",
+ reactive: "readonly",
+ ref: "readonly",
+ shallowReactive: "readonly",
+ shallowRef: "readonly",
+ toRef: "readonly",
+ toRefs: "readonly",
+ watch: "readonly",
+ watchEffect: "readonly",
+ },
+ },
+ plugins:
+ i18n === false
+ ? {
+ vue: pluginVue,
+ }
+ : {
+ vue: pluginVue,
+ "vue-i18n": pluginVueI18n,
+ },
+ },
+
+ {
+ name: "rs:vue:rules",
+ files,
+ languageOptions: {
+ parser: parserVue,
+ parserOptions: {
+ ecmaFeatures: {
+ jsx: true,
+ },
+ extraFileExtensions: [".vue"],
+ parser: typescript ? parserTs : null,
+ ...(typescript ? parserOptions : {}),
+ sourceType: "module",
+ },
+ },
+ processor:
+ sfcBlocks === false
+ ? pluginVue.processors![".vue"]!
+ : mergeProcessors([
+ pluginVue.processors![".vue"]!,
+ processorVueBlocks({
+ ...sfcBlocks,
+ blocks: {
+ styles: true,
+ ...sfcBlocks.blocks,
+ },
+ }),
+ ]),
+
+ settings:
+ i18n === false
+ ? {}
+ : {
+ "vue-i18n": i18n,
+ },
+ rules: {
+ ...pluginVue.configs.base.rules,
+
+ ...(vueVersion === 2
+ ? {
+ ...pluginVue.configs.essential.rules,
+ ...pluginVue.configs["strongly-recommended"].rules,
+ ...pluginVue.configs.recommended.rules,
+ }
+ : {
+ ...pluginVue.configs["vue3-essential"].rules,
+ ...pluginVue.configs["vue3-strongly-recommended"].rules,
+ ...pluginVue.configs["vue3-recommended"].rules,
+ }),
+
+ "node/prefer-global/process": "off",
+ "vue/block-order": [
+ "error",
+ {
+ order: ["script", "template", "style"],
+ },
+ ],
+
+ "vue/component-name-in-template-casing": ["error", "PascalCase"],
+ "vue/component-options-name-casing": ["error", "PascalCase"],
+ // this is deprecated
+ // "vue/component-tags-order": "off",
+ "vue/custom-event-name-casing": ["error", "camelCase"],
+ "vue/define-macros-order": [
+ "error",
+ {
+ order: [
+ "defineOptions",
+ "defineProps",
+ "defineEmits",
+ "defineSlots",
+ ],
+ },
+ ],
+ "vue/dot-location": ["error", "property"],
+ "vue/dot-notation": ["error", { allowKeywords: true }],
+ "vue/eqeqeq": ["error", "smart"],
+ "vue/html-indent": ["error", indent],
+ "vue/html-quotes": ["error", "double"],
+ // "vue/max-attributes-per-line": "off",
+ "vue/multi-word-component-names": "error",
+ // "vue/no-dupe-keys": "off",
+ "vue/no-empty-pattern": "error",
+ "vue/no-irregular-whitespace": "error",
+ "vue/no-loss-of-precision": "error",
+ "vue/no-restricted-syntax": [
+ "error",
+ "DebuggerStatement",
+ "LabeledStatement",
+ "WithStatement",
+ ],
+ "vue/no-restricted-v-bind": ["error", "/^v-/"],
+ // "vue/no-setup-props-reactivity-loss": "off",
+ "vue/no-sparse-arrays": "error",
+ "vue/no-unused-refs": "error",
+ "vue/no-useless-v-bind": "error",
+ // "vue/no-v-html": "off",
+ "vue/object-shorthand": [
+ "error",
+ "always",
+ {
+ avoidQuotes: true,
+ ignoreConstructors: false,
+ },
+ ],
+ "vue/prefer-separate-static-class": "error",
+ "vue/prefer-template": "error",
+ "vue/prop-name-casing": ["error", "camelCase"],
+ // "vue/require-default-prop": "off",
+ // "vue/require-prop-types": "off",
+ "vue/space-infix-ops": "error",
+ "vue/space-unary-ops": ["error", { nonwords: false, words: true }],
+
+ "vue-i18n/no-html-messages": i18n === false ? "off" : "error",
+ "vue-i18n/no-missing-keys": i18n === false ? "off" : "error",
+ "vue-i18n/no-raw-text": i18n === false ? "off" : "warn",
+ "vue-i18n/no-v-html": i18n === false ? "off" : "error",
+
+ "vue/array-bracket-spacing": [stylisticEnforcement, "never"],
+ "vue/arrow-spacing": [
+ stylisticEnforcement,
+ { after: true, before: true },
+ ],
+ "vue/block-spacing": [stylisticEnforcement, "always"],
+ "vue/block-tag-newline": [
+ stylisticEnforcement,
+ {
+ multiline: "always",
+ singleline: "always",
+ },
+ ],
+ "vue/brace-style": [
+ stylisticEnforcement,
+ // cspell:disable-next-line
+ "stroustrup",
+ { allowSingleLine: true },
+ ],
+ "vue/comma-dangle": [stylisticEnforcement, "always-multiline"],
+ "vue/comma-spacing": [
+ stylisticEnforcement,
+ { after: true, before: false },
+ ],
+ "vue/comma-style": [stylisticEnforcement, "last"],
+ "vue/html-comment-content-spacing": [
+ stylisticEnforcement,
+ "always",
+ {
+ exceptions: ["-"],
+ },
+ ],
+ "vue/key-spacing": [
+ stylisticEnforcement,
+ { afterColon: true, beforeColon: false },
+ ],
+ "vue/keyword-spacing": [
+ stylisticEnforcement,
+ { after: true, before: true },
+ ],
+ // "vue/object-curly-newline": "off",
+ "vue/object-curly-spacing": [stylisticEnforcement, "always"],
+ "vue/object-property-newline": [
+ stylisticEnforcement,
+ { allowMultiplePropertiesPerLine: true },
+ ],
+ "vue/operator-linebreak": [stylisticEnforcement, "before"],
+ "vue/padding-line-between-blocks": [stylisticEnforcement, "always"],
+ "vue/quote-props": [stylisticEnforcement, "consistent-as-needed"],
+ "vue/space-in-parens": [stylisticEnforcement, "never"],
+ "vue/template-curly-spacing": stylisticEnforcement,
+
+ ...overrides,
+ },
+ },
+ ];
+}
diff --git a/src/configs/yaml.ts b/src/configs/yaml.ts
new file mode 100644
index 00000000..21eff61d
--- /dev/null
+++ b/src/configs/yaml.ts
@@ -0,0 +1,75 @@
+import type { ESLint } from "eslint";
+
+import type {
+ FlatConfigItem,
+ OptionsFiles,
+ OptionsOverrides,
+ RequiredOptionsStylistic,
+} from "../types";
+import { loadPackages } from "../utils";
+
+export async function yaml(
+ options: Readonly<
+ Required
+ >,
+): Promise {
+ const { files, overrides, stylistic } = options;
+
+ const { indent = 2, quotes = "single" } =
+ typeof stylistic === "boolean" ? {} : stylistic;
+
+ const [pluginYaml, parserYaml] = (await loadPackages([
+ "eslint-plugin-yml",
+ "yaml-eslint-parser",
+ ])) as [
+ typeof import("eslint-plugin-yml"),
+ typeof import("yaml-eslint-parser"),
+ ];
+
+ const stylisticEnforcement = stylistic === false ? "off" : "error";
+
+ return [
+ {
+ name: "rs:yaml:setup",
+ plugins: {
+ yaml: pluginYaml as unknown as ESLint.Plugin,
+ },
+ },
+ {
+ files,
+ languageOptions: {
+ parser: parserYaml,
+ },
+ name: "rs:yaml:rules",
+ rules: {
+ "style/spaced-comment": "off",
+
+ "yaml/block-mapping": "error",
+ "yaml/block-sequence": "error",
+ "yaml/no-empty-key": "error",
+ "yaml/no-empty-sequence-entry": "error",
+ "yaml/no-irregular-whitespace": "error",
+ "yaml/plain-scalar": "error",
+
+ "yaml/vue-custom-block/no-parsing-error": "error",
+
+ "yaml/block-mapping-question-indicator-newline": stylisticEnforcement,
+ "yaml/block-sequence-hyphen-indicator-newline": stylisticEnforcement,
+ "yaml/flow-mapping-curly-newline": stylisticEnforcement,
+ "yaml/flow-mapping-curly-spacing": stylisticEnforcement,
+ "yaml/flow-sequence-bracket-newline": stylisticEnforcement,
+ "yaml/flow-sequence-bracket-spacing": stylisticEnforcement,
+ "yaml/indent": [stylisticEnforcement, indent === "tab" ? 2 : indent],
+ "yaml/key-spacing": stylisticEnforcement,
+ "yaml/no-tab-indent": stylisticEnforcement,
+ "yaml/quotes": [
+ stylisticEnforcement,
+ { avoidEscape: true, prefer: quotes },
+ ],
+ "yaml/spaced-comment": stylisticEnforcement,
+
+ ...overrides,
+ },
+ },
+ ];
+}
diff --git a/src/factory.ts b/src/factory.ts
new file mode 100644
index 00000000..2c9ecc7f
--- /dev/null
+++ b/src/factory.ts
@@ -0,0 +1,378 @@
+import * as path from "node:path";
+
+import { FlatConfigComposer } from "eslint-flat-config-utils";
+import { isPackageExists } from "local-pkg";
+
+import {
+ StylisticConfigDefaults,
+ comments,
+ defaultFilesTypesAware,
+ formatters,
+ functional,
+ ignores,
+ imports,
+ inEditor,
+ javascript,
+ jsdoc,
+ jsonc,
+ markdown,
+ node,
+ overrides,
+ promise,
+ regexp,
+ sonar,
+ sortTsconfig,
+ stylistic,
+ test,
+ toml,
+ typescript,
+ unicorn,
+ unocss,
+ vue,
+ yaml,
+} from "./configs";
+import {
+ GLOB_JSON,
+ GLOB_JSON5,
+ GLOB_JSONC,
+ GLOB_MARKDOWN,
+ GLOB_ROOT_DTS,
+ GLOB_ROOT_JS,
+ GLOB_ROOT_JSX,
+ GLOB_ROOT_TS,
+ GLOB_ROOT_TSX,
+ GLOB_SRC,
+ GLOB_TESTS,
+ GLOB_TOML,
+ GLOB_VUE,
+ GLOB_YAML,
+} from "./globs";
+import type {
+ Awaitable,
+ FlatConfigItem,
+ OptionsConfig,
+ OptionsTypeScriptParserOptions,
+ OptionsTypeScriptShorthands,
+ OptionsTypescript,
+} from "./types";
+
+const VuePackages = ["vue", "nuxt", "vitepress", "@slidev/cli"];
+
+export const defaultPluginRenaming = {
+ "@intlify/vue-i18n": "vue-i18n",
+ "@stylistic": "style",
+ "@typescript-eslint": "ts",
+ "import-x": "import",
+ n: "node",
+ "optimize-regex": "regexp",
+ sonarjs: "sonar",
+ vitest: "test",
+ yml: "yaml",
+};
+
+/**
+ * Construct an array of ESLint flat config items.
+ *
+ * @param {OptionsConfig & FlatConfigItem} options - The options for generating the ESLint configurations.
+ * @param {Awaitable[]} userConfigs - The user configurations to be merged with the generated configurations.
+ * @returns {Promise} The merged ESLint configurations.
+ */
+export function rsEslint(
+ options: OptionsConfig,
+ ...userConfigs: ReadonlyArray>
+): FlatConfigComposer {
+ const {
+ autoRenamePlugins = true,
+ componentExts = [],
+ isInEditor = !Boolean(process.env["CI"]) &&
+ (Boolean(process.env["VSCODE_PID"]) ||
+ Boolean(process.env["VSCODE_CWD"]) ||
+ Boolean(process.env["JETBRAINS_IDE"]) ||
+ Boolean(process.env["VIM"]) ||
+ Boolean(process.env["NVIM"])),
+ ignores: ignoresOptions,
+ ignoresFiles: ignoresFilesOptions = [".gitignore"],
+ typescript: typeScriptOptions = isPackageExists("typescript"),
+ unocss: unoCSSOptions = isPackageExists("unocss"),
+ vue: vueOptions = VuePackages.some((i) => isPackageExists(i)),
+ test: testOptions = true,
+ jsx: jsxOptions = true,
+ functional: functionalOptions = true,
+ jsonc: jsoncOptions = false,
+ yaml: yamlOptions = false,
+ toml: tomlOptions = false,
+ markdown: markdownOptions = false,
+ formatters: formattersOptions = true,
+ mode,
+ projectRoot,
+ } = options;
+
+ const stylisticOptions =
+ options.stylistic === false
+ ? false
+ : typeof options.stylistic === "object"
+ ? {
+ ...StylisticConfigDefaults,
+ jsx: jsxOptions,
+ ...options.stylistic,
+ }
+ : StylisticConfigDefaults;
+
+ const functionalEnforcement =
+ typeof functionalOptions === "string"
+ ? functionalOptions
+ : typeof functionalOptions === "object"
+ ? (functionalOptions.functionalEnforcement ?? "recommended")
+ : functionalOptions
+ ? "recommended"
+ : "none";
+
+ const hasTypeScript = Boolean(typeScriptOptions);
+
+ const {
+ filesTypeAware,
+ parserOptions,
+ useDefaultDefaultProject,
+ ...typeScriptSubOptions
+ } = resolveSubOptions(options, "typescript") as OptionsTypescript &
+ OptionsTypeScriptParserOptions &
+ OptionsTypeScriptShorthands;
+
+ const projectServiceUserConfig = {
+ defaultProject: "./tsconfig.json",
+ ...(typeof parserOptions?.projectService === "object"
+ ? parserOptions.projectService
+ : undefined),
+ };
+
+ const typescriptConfigOptions: Required = {
+ ...typeScriptSubOptions,
+ filesTypeAware: filesTypeAware ?? defaultFilesTypesAware,
+ parserOptions: {
+ tsconfigRootDir: projectRoot,
+ ...parserOptions,
+ projectService:
+ parserOptions?.projectService === false
+ ? false
+ : useDefaultDefaultProject === false
+ ? projectServiceUserConfig
+ : {
+ allowDefaultProject: [
+ path.join(projectRoot, GLOB_ROOT_JS),
+ path.join(projectRoot, GLOB_ROOT_JSX),
+ path.join(projectRoot, GLOB_ROOT_TS),
+ path.join(projectRoot, GLOB_ROOT_TSX),
+ path.join(projectRoot, GLOB_ROOT_DTS),
+ ],
+ ...projectServiceUserConfig,
+ },
+ },
+ };
+
+ const functionalConfigOptions = {
+ functionalEnforcement,
+ ignoreNamePattern: ["^mutable", "^[mM]_"],
+ ...resolveSubOptions(options, "functional"),
+ };
+
+ const m_configs: Array> = [];
+
+ // Base configs
+ m_configs.push(
+ ignores({
+ projectRoot,
+ ignores: ignoresOptions ?? [],
+ ignoreFiles: ignoresFilesOptions,
+ }),
+ javascript({
+ ...functionalConfigOptions,
+ overrides: getOverrides(options, "javascript"),
+ }),
+ imports({
+ ...typescriptConfigOptions,
+ stylistic: stylisticOptions,
+ }),
+ jsdoc({
+ stylistic: stylisticOptions,
+ }),
+ promise(),
+ regexp(),
+ sonar(functionalConfigOptions),
+ comments(),
+ unicorn(),
+ node(),
+ );
+
+ if (vueOptions !== false) {
+ componentExts.push("vue");
+ }
+
+ if (typeScriptOptions !== false) {
+ m_configs.push(
+ typescript({
+ projectRoot,
+ mode,
+ files: [GLOB_SRC, ...componentExts.map((ext) => `**/*.${ext}`)],
+ unsafe: "warn",
+ ...typescriptConfigOptions,
+ ...functionalConfigOptions,
+ componentExts,
+ overrides: getOverrides(options, "typescript"),
+ }),
+ );
+ }
+
+ if (stylisticOptions !== false) {
+ m_configs.push(
+ stylistic({
+ stylistic: stylisticOptions,
+ typescript: hasTypeScript,
+ overrides: getOverrides(options, "stylistic"),
+ }),
+ );
+ }
+
+ if (functionalEnforcement !== "none" || mode === "library") {
+ m_configs.push(
+ functional({
+ ...typescriptConfigOptions,
+ ...functionalConfigOptions,
+ overrides: getOverrides(options, "functional"),
+ stylistic: stylisticOptions,
+ mode,
+ }),
+ );
+ }
+
+ if (testOptions !== false) {
+ m_configs.push(
+ test({
+ files: GLOB_TESTS,
+ overrides: getOverrides(options, "test"),
+ }),
+ );
+ }
+
+ if (vueOptions !== false) {
+ m_configs.push(
+ vue({
+ ...typescriptConfigOptions,
+ typescript: hasTypeScript,
+ files: [GLOB_VUE],
+ i18n: false,
+ vueVersion: 3,
+ sfcBlocks: true,
+ ...resolveSubOptions(options, "vue"),
+ overrides: getOverrides(options, "vue"),
+ stylistic: stylisticOptions,
+ }),
+ );
+ }
+
+ if (unoCSSOptions !== false) {
+ m_configs.push(
+ unocss({
+ attributify: true,
+ strict: true,
+ ...resolveSubOptions(options, "unocss"),
+ overrides: getOverrides(options, "unocss"),
+ }),
+ );
+ }
+
+ if (jsoncOptions !== false) {
+ m_configs.push(
+ jsonc({
+ files: [GLOB_JSON, GLOB_JSON5, GLOB_JSONC],
+ overrides: getOverrides(options, "jsonc"),
+ stylistic: stylisticOptions,
+ }),
+ sortTsconfig(),
+ );
+ }
+
+ if (yamlOptions !== false) {
+ m_configs.push(
+ yaml({
+ files: [GLOB_YAML],
+ overrides: getOverrides(options, "yaml"),
+ stylistic: stylisticOptions,
+ }),
+ );
+ }
+
+ if (tomlOptions !== false) {
+ m_configs.push(
+ toml({
+ files: [GLOB_TOML],
+ overrides: getOverrides(options, "toml"),
+ stylistic: stylisticOptions,
+ }),
+ );
+ }
+
+ if (markdownOptions !== false) {
+ m_configs.push(
+ markdown({
+ enableTypeRequiredRules: !(
+ markdownOptions === true ||
+ markdownOptions.enableTypeRequiredRules === false
+ ),
+ files: [GLOB_MARKDOWN],
+ componentExts,
+ overrides: getOverrides(options, "markdown"),
+ }),
+ );
+ }
+
+ if (formattersOptions !== false) {
+ m_configs.push(
+ formatters(
+ formattersOptions,
+ stylisticOptions === false ? {} : stylisticOptions,
+ ),
+ );
+ }
+
+ if (isInEditor) {
+ m_configs.push(inEditor());
+ }
+
+ m_configs.push(overrides());
+
+ let m_composer = new FlatConfigComposer().append(
+ ...m_configs,
+ ...userConfigs,
+ );
+
+ if (autoRenamePlugins) {
+ m_composer = m_composer.renamePlugins(defaultPluginRenaming);
+ }
+
+ return m_composer;
+}
+
+export type ResolvedOptions = T extends boolean
+ ? never
+ : T extends string
+ ? never
+ : NonNullable;
+
+export function resolveSubOptions(
+ options: Readonly,
+ key: K,
+): ResolvedOptions {
+ return (
+ typeof options[key] === "boolean" || typeof options[key] === "string"
+ ? {}
+ : (options[key] ?? {})
+ ) as ResolvedOptions;
+}
+
+export function getOverrides(
+ options: Readonly,
+ key: K,
+) {
+ const sub = resolveSubOptions(options, key);
+ return "overrides" in sub ? sub.overrides : {};
+}
diff --git a/src/globs.ts b/src/globs.ts
new file mode 100644
index 00000000..b53311d8
--- /dev/null
+++ b/src/globs.ts
@@ -0,0 +1,104 @@
+export const GLOB_SRC_EXT = "?([cm])[jt]s?(x)";
+export const GLOB_SRC = "**/?(.)*.?([cm])[jt]s?(x)";
+
+export const GLOB_JS = "**/?(.)*.?([cm])js";
+export const GLOB_JSX = "**/?(.)*.?([cm])jsx";
+
+export const GLOB_TS = "**/?(.)*.?([cm])ts";
+export const GLOB_TSX = "**/?(.)*.?([cm])tsx";
+export const GLOB_DTS = "**/?(.)*.d.?([cm])ts";
+
+export const GLOB_ROOT_JS = "./?(.)*.?([cm])js";
+export const GLOB_ROOT_JSX = "./?(.)*.?([cm])jsx";
+
+export const GLOB_ROOT_TS = "./?(.)*.?([cm])ts";
+export const GLOB_ROOT_TSX = "./?(.)*.?([cm])tsx";
+export const GLOB_ROOT_DTS = "./?(.)*.d.?([cm])ts";
+
+export const GLOB_TYPINGS = "typings/**/?(.)*.?([cm])ts";
+
+export const GLOB_MJS = "**/?(.)*.mjs";
+export const GLOB_MTS = "**/?(.)*.mts";
+
+export const GLOB_CJS = "**/?(.)*.cjs";
+export const GLOB_CTS = "**/?(.)*.cts";
+
+export const GLOB_STYLE = "**/?(.)*.{c,le,sc}ss";
+export const GLOB_CSS = "**/?(.)*.css";
+export const GLOB_POSTCSS = "**/?(.)*.{p,post}css";
+export const GLOB_LESS = "**/?(.)*.less";
+export const GLOB_SCSS = "**/?(.)*.scss";
+
+export const GLOB_JSON = "**/?(.)*.json";
+export const GLOB_JSON5 = "**/?(.)*.json5";
+export const GLOB_JSONC = "**/?(.)*.jsonc";
+
+export const GLOB_MARKDOWN = "**/?(.)*.md";
+export const GLOB_MARKDOWN_IN_MARKDOWN = "**/?(.)*.md/?(.)*.md";
+export const GLOB_VUE = "**/?(.)*.vue";
+export const GLOB_YAML = "**/?(.)*.y?(a)ml";
+export const GLOB_TOML = "**/?(.)*.toml";
+export const GLOB_HTML = "**/?(.)*.htm?(l)";
+export const GLOB_GRAPHQL = "**/?(.)*.{g,graph}ql";
+
+export const GLOB_MARKDOWN_CODE = `${GLOB_MARKDOWN}/${GLOB_SRC}`;
+
+export const GLOB_TESTS = [
+ `**/__tests__/**/?(.)*.${GLOB_SRC_EXT}`,
+ `**/?(.)*.spec.${GLOB_SRC_EXT}`,
+ `**/?(.)*.test.${GLOB_SRC_EXT}`,
+ `**/?(.)*.bench.${GLOB_SRC_EXT}`,
+ `**/?(.)*.benchmark.${GLOB_SRC_EXT}`,
+];
+
+export const GLOB_ALL_SRC = [
+ GLOB_SRC,
+ GLOB_STYLE,
+ GLOB_JSON,
+ GLOB_JSON5,
+ GLOB_MARKDOWN,
+ GLOB_VUE,
+ GLOB_YAML,
+ GLOB_HTML,
+];
+
+export const GLOB_EXCLUDE = [
+ "**/node_modules",
+ "**/dist",
+ "**/lib",
+ "**/package-lock.json",
+ "**/yarn.lock",
+ "**/pnpm-lock.yaml",
+ "**/bun.lockb",
+
+ "**/output",
+ "**/coverage",
+ "**/temp",
+ "**/.temp",
+ "**/tmp",
+ "**/.tmp",
+ "**/.history",
+ "**/.vitepress/cache",
+ "**/.nuxt",
+ "**/.next",
+ "**/.vercel",
+ "**/.changeset",
+ "**/.idea",
+ "**/.cache",
+ "**/.output",
+ "**/.vite-inspect",
+ "**/.yarn",
+
+ "**/CHANGELOG*.md",
+ "**/?(.)*.min.*",
+ "**/LICENSE*",
+ "**/__snapshots__",
+ "**/auto-import.ts",
+ "**/auto-import.d.ts",
+ "**/auto-imports.ts",
+ "**/auto-imports.d.ts",
+ "**/components.ts",
+ "**/components.d.ts",
+ "**/typegen.ts",
+ "**/typegen.d.ts",
+];
diff --git a/src/index.ts b/src/index.ts
new file mode 100644
index 00000000..b3fb368e
--- /dev/null
+++ b/src/index.ts
@@ -0,0 +1,7 @@
+export * from "./configs";
+export * from "./factory";
+export * from "./globs";
+export * from "./types";
+// export * from "./utils";
+
+export { rsEslint as default } from "./factory";
diff --git a/src/plugins/eslint-comments.ts b/src/plugins/eslint-comments.ts
deleted file mode 100644
index 7c137433..00000000
--- a/src/plugins/eslint-comments.ts
+++ /dev/null
@@ -1,11 +0,0 @@
-import { type Linter } from "eslint";
-
-export const settings: Linter.Config = {
- plugins: ["eslint-comments"],
-
- extends: ["plugin:eslint-comments/recommended"],
-
- rules: {
- "eslint-comments/disable-enable-pair": ["error", { allowWholeFile: true }],
- },
-};
diff --git a/src/plugins/functional.ts b/src/plugins/functional.ts
deleted file mode 100644
index 7b8727be..00000000
--- a/src/plugins/functional.ts
+++ /dev/null
@@ -1,78 +0,0 @@
-import { type Linter } from "eslint";
-
-export const settings: Linter.Config = {
- plugins: ["functional"],
-
- extends: ["plugin:functional/recommended"],
-
- settings: {
- immutability: {
- overrides: [
- { type: "^ReadonlyDeep<.+>$", to: "ReadonlyDeep" },
- { type: "^Immutable<.+>$", to: "Immutable" },
- ],
- },
- },
-
- rules: {
- "functional/no-expression-statements": [
- "error",
- {
- ignoreCodePattern: "^assert",
- },
- ],
- "functional/immutable-data": [
- "error",
- {
- ignoreAccessorPattern: ["**.mutable*.**", "**.m_*.**"],
- ignoreClasses: "fieldsOnly",
- ignoreImmediateMutation: true,
- },
- ],
- "functional/no-classes": "off",
- "functional/no-let": [
- "error",
- {
- allowInForLoopInit: true,
- ignoreIdentifierPattern: ["^mutable", "^m_"],
- },
- ],
- "functional/no-mixed-types": "off",
- "functional/functional-parameters": "off",
- "functional/prefer-immutable-types": [
- "warn",
- {
- enforcement: "None",
- ignoreInferredTypes: true,
- ignoreNamePattern: ["^m_"],
- parameters: {
- enforcement: "ReadonlyShallow",
- },
- fixer: {
- ReadonlyShallow: [
- {
- pattern: "^(Array|Map|Set)<(.+)>$",
- replace: "Readonly$1<$2>",
- },
- {
- pattern: "^(.+)$",
- replace: "Readonly<$1>",
- },
- ],
- ReadonlyDeep: [
- {
- pattern: "^(?:Readonly<(.+)>|(.+))$",
- replace: "ReadonlyDeep<$1$2>",
- },
- ],
- Immutable: [
- {
- pattern: "^(?:Readonly(?:Deep)?<(.+)>|(.+))$",
- replace: "Immutable<$1$2>",
- },
- ],
- },
- },
- ],
- },
-};
diff --git a/src/plugins/import.ts b/src/plugins/import.ts
deleted file mode 100644
index f0d74a23..00000000
--- a/src/plugins/import.ts
+++ /dev/null
@@ -1,150 +0,0 @@
-import { type Linter } from "eslint";
-
-import { commonJsFiles, jsExtensions, typescriptFiles } from "~/files";
-
-export const settings: Linter.Config = {
- plugins: ["import"],
-
- extends: ["plugin:import/recommended"],
-
- rules: {
- "import/consistent-type-specifier-style": ["error", "prefer-inline"],
- "import/default": "error",
- "import/dynamic-import-chunkname": "off",
- "import/export": "error",
- "import/exports-last": "off",
- "import/extensions": "off",
- "import/first": "error",
- "import/group-exports": "off",
- "import/max-dependencies": [
- "off",
- {
- max: 10,
- },
- ],
- "import/named": "error",
- "import/namespace": [
- "error",
- {
- allowComputed: true,
- },
- ],
- "import/newline-after-import": "error",
- "import/no-absolute-path": "error",
- "import/no-amd": "error",
- "import/no-anonymous-default-export": "off",
- "import/no-commonjs": "off",
- // Should be safe when bundling.
- "import/no-cycle": "off",
- "import/no-default-export": "off",
- "import/no-deprecated": "warn",
- "import/no-duplicates": ["error", { "prefer-inline": true }],
- "import/no-dynamic-require": "error",
- "import/no-empty-named-blocks": "error",
- "import/no-extraneous-dependencies": [
- "error",
- {
- bundledDependencies: true,
- devDependencies: [
- "*.{js,cjs,mjs,ts,cts,mts,jsx,tsx}",
- "**/scripts/**",
- "**/spec/**",
- "**/test/**",
- "**/tests/**",
- "**/__mocks__/**",
- "**/__tests__/**",
- "**/*{.,_}{test,spec}.{js,cjs,mjs,ts,cts,mts,jsx,tsx}",
- "**/Gruntfile{,.{js,cjs,mjs,ts}}",
- "**/gulpfile.{js,cjs,mjs,ts}",
- "**/gulpfile.*.{js,cjs,mjs,ts}",
- "**/jest.config.{js,cjs,mjs,ts}",
- "**/jest.setup.{js,cjs,mjs,ts}",
- "**/karma.conf.{js,cjs,mjs,ts}",
- "**/postcss.config.{js,cjs,mjs,ts}",
- "**/protractor.conf.{js,cjs,mjs,ts}",
- "**/protractor.conf.*.{js,cjs,mjs,ts}",
- "**/rollup.config.{js,cjs,mjs,ts}",
- "**/rollup.config.*.{js,cjs,mjs,ts}",
- "**/vite.config.{js,cjs,mjs,ts}",
- "**/vitest.config.{js,cjs,mjs,ts}",
- "**/vue.config.{js,cjs,mjs,ts}",
- "**/webpack.config.{js,cjs,mjs,ts}",
- "**/webpack.config.*.{js,cjs,mjs,ts}",
- ],
- optionalDependencies: true,
- peerDependencies: true,
- },
- ],
- "import/no-internal-modules": "off",
- "import/no-mutable-exports": "error",
- "import/no-named-as-default": "off",
- // using unicorn/import-style for per package control
- "import/no-named-as-default-member": "off",
- "import/no-named-default": "error",
- "import/no-named-export": "off",
- "import/no-namespace": "off",
- "import/no-nodejs-modules": "off",
- "import/no-relative-parent-imports": "off",
- "import/no-restricted-paths": "off",
- "import/no-self-import": "error",
- "import/no-unassigned-import": "error",
- "import/no-unused-modules": "off",
- "import/no-useless-path-segments": [
- "error",
- {
- commonjs: true,
- noUselessIndex: true,
- },
- ],
- "import/no-webpack-loader-syntax": "error",
- "import/order": [
- "error",
- {
- "alphabetize": {
- caseInsensitive: false,
- order: "asc",
- },
- "groups": [
- "builtin",
- "external",
- "internal",
- "parent",
- "sibling",
- "index",
- ],
- "newlines-between": "always",
- },
- ],
- "import/prefer-default-export": "off",
- "import/unambiguous": "off",
- },
-
- settings: {
- "import/external-module-folders": ["node_modules"],
- "import/internal-regex": "^(?:#|(?:@|~)\\/).*",
- "import/resolver": {
- node: {
- extensions: jsExtensions,
- },
- },
- },
-
- overrides: [
- {
- files: commonJsFiles,
- rules: {
- "import/no-commonjs": "off",
- "import/no-dynamic-require": "off",
- },
- },
- {
- files: typescriptFiles,
- rules: {
- "import/no-unresolved": "off",
- "import/named": "off",
- "import/default": "off",
- "import/namespace": "off",
- },
- },
- ],
-};
diff --git a/src/plugins/jsdoc.ts b/src/plugins/jsdoc.ts
deleted file mode 100644
index 289abbc1..00000000
--- a/src/plugins/jsdoc.ts
+++ /dev/null
@@ -1,85 +0,0 @@
-import { type Linter } from "eslint";
-
-import { typescriptFiles } from "~/files";
-
-export const settings: Linter.Config = {
- plugins: ["jsdoc"],
-
- extends: ["plugin:jsdoc/recommended"],
-
- rules: {
- "jsdoc/check-alignment": "error",
- // waiting on https://github.com/eslint/eslint/issues/14745
- // "jsdoc/check-examples": "error",
- "jsdoc/check-indentation": "error",
- "jsdoc/check-line-alignment": "error",
- "jsdoc/check-param-names": "error",
- "jsdoc/check-property-names": "error",
- "jsdoc/check-types": "error",
- "jsdoc/check-values": "error",
- "jsdoc/no-bad-blocks": [
- "error",
- {
- ignore: [
- "ts-check",
- "ts-expect-error",
- "ts-ignore",
- "ts-nocheck",
- "vue-ignore",
- ],
- },
- ],
- "jsdoc/no-defaults": "warn",
- "jsdoc/require-asterisk-prefix": "error",
- "jsdoc/require-description": "warn",
- // Rule is too strict.
- // "jsdoc/require-description-complete-sentence": "off",
- "jsdoc/require-hyphen-before-param-description": "error",
- "jsdoc/require-jsdoc": [
- "warn",
- {
- contexts: [
- ":not(ExportNamedDeclaration) > FunctionDeclaration:not(TSDeclareFunction + FunctionDeclaration)",
- "ExportNamedDeclaration > FunctionDeclaration:not(ExportNamedDeclaration:has(TSDeclareFunction) + ExportNamedDeclaration > FunctionDeclaration)",
- "TSDeclareFunction",
- "ExportNamedDeclaration > TSTypeAliasDeclaration",
- "ExportNamedDeclaration > TSInterfaceDeclaration",
- "TSEnumDeclaration",
- ],
- enableFixer: false,
- require: {
- FunctionDeclaration: false,
- },
- },
- ],
- "jsdoc/require-param-name": "error",
- "jsdoc/require-param": "off",
- "jsdoc/require-property-name": "error",
- "jsdoc/require-property": "off",
- "jsdoc/require-returns-check": "error",
- "jsdoc/require-returns": "off",
- "jsdoc/require-throws": "warn",
- "jsdoc/require-yields-check": "error",
- "jsdoc/tag-lines": [
- "warn",
- "never",
- {
- applyToEndTag: false,
- startLines: 1,
- tags: { example: { lines: "always" } },
- },
- ],
- },
-
- overrides: [
- {
- files: typescriptFiles,
- rules: {
- "jsdoc/no-types": "warn",
- "jsdoc/require-param-type": "off",
- "jsdoc/require-property-type": "off",
- "jsdoc/require-returns-type": "off",
- },
- },
- ],
-};
diff --git a/src/plugins/markdown.ts b/src/plugins/markdown.ts
deleted file mode 100644
index 5de3cdf9..00000000
--- a/src/plugins/markdown.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-import { type Linter } from "eslint";
-
-export const settings: Linter.Config = {
- plugins: ["markdown"],
-
- extends: ["plugin:markdown/recommended"],
-
- overrides: [
- {
- files: ["./**/*.md"],
- processor: "markdown/markdown",
- },
- {
- files: ["./**/*.md/**"],
- parserOptions: {
- project: null,
- },
- extends: [
- "plugin:markdown/recommended",
- "plugin:@typescript-eslint/disable-type-checked",
- "plugin:functional/off",
- ],
- rules: {
- "@typescript-eslint/consistent-generic-constructors": "off",
- "@typescript-eslint/consistent-type-definitions": "off",
- "@typescript-eslint/explicit-member-accessibility": "off",
- "@typescript-eslint/no-empty-function": "off",
- "@typescript-eslint/no-explicit-any": "off",
- "@typescript-eslint/no-unused-expressions": "off",
- "@typescript-eslint/no-unused-vars": "off",
- "@typescript-eslint/prefer-function-type": "off",
- "dot-notation": "off",
- "import/extensions": "off",
- "import/newline-after-import": "off",
- "import/no-unresolved": "off",
- "init-declarations": "off",
- "jsdoc/require-jsdoc": "off",
- "n/handle-callback-err": "off",
- "no-alert": "off",
- "no-console": "off",
- "no-empty-function": "off",
- "no-empty": "off",
- "no-invalid-this": "off",
- "no-labels": "off",
- "no-lone-blocks": "off",
- "no-restricted-syntax": "off",
- "no-throw-literal": "off",
- "no-undef": "off",
- "no-unused-expressions": "off",
- "no-unused-labels": "off",
- "no-unused-vars": "off",
- "no-useless-return": "off",
- "node/prefer-global/process": "off",
- "prefer-const": "off",
- "prettier/prettier": "off",
- "sonarjs/no-extra-arguments": "off",
- "sonarjs/no-unused-collection": "off",
- "style/comma-dangle": "off",
- "style/eol-last": "off",
- "ts/consistent-type-imports": "off",
- "ts/no-namespace": "off",
- "ts/no-redeclare": "off",
- "ts/no-require-imports": "off",
- "ts/no-unused-vars": "off",
- "ts/no-use-before-define": "off",
- "ts/no-var-requires": "off",
- "unicode-bom": "off",
- "unicorn/prefer-optional-catch-binding": "off",
- "unicorn/prefer-top-level-await": "off",
- "unicorn/switch-case-braces": "off",
- "unused-imports/no-unused-imports": "off",
- "unused-imports/no-unused-vars": "off",
- },
- },
- ],
-};
diff --git a/src/plugins/node.ts b/src/plugins/node.ts
deleted file mode 100644
index db83cb69..00000000
--- a/src/plugins/node.ts
+++ /dev/null
@@ -1,84 +0,0 @@
-import { type Linter } from "eslint";
-
-import { commonJsFiles, typescriptFiles } from "~/files";
-
-// eslint eslint-plugin-n (instead of eslint-plugin-node)
-
-export const settings: Linter.Config = {
- plugins: ["n"],
-
- extends: ["plugin:n/recommended"],
-
- rules: {
- "n/callback-return": "error",
- "n/exports-style": ["error", "module.exports"],
- // Allow dynamic imports.
- "n/global-require": "off",
- "n/handle-callback-err": ["error", "^(err|error)$"],
- "n/no-callback-literal": "error",
- "n/no-missing-import": "off",
- "n/no-mixed-requires": [
- "error",
- {
- allowCall: true,
- grouping: true,
- },
- ],
- "n/no-new-require": "error",
- "n/no-path-concat": "error",
- "n/no-process-exit": "error",
- "n/no-restricted-import": [
- "error",
- [
- {
- name: "assert",
- message: "Please use assert/strict instead.",
- },
- {
- name: "node:assert",
- message: "Please use node:assert/strict instead.",
- },
- ],
- ],
- "n/no-restricted-require": [
- "error",
- [
- {
- name: "assert",
- message: "Please use assert/strict instead.",
- },
- {
- name: "node:assert",
- message: "Please use node:assert/strict instead.",
- },
- ],
- ],
- "n/no-sync": "error",
- "n/no-unpublished-import": "warn",
- "n/no-unsupported-features/es-syntax": "off",
- "n/prefer-global/buffer": ["error", "always"],
- "n/prefer-global/console": ["error", "always"],
- "n/prefer-global/process": ["error", "always"],
- "n/prefer-global/text-decoder": ["error", "always"],
- "n/prefer-global/text-encoder": ["error", "always"],
- "n/prefer-global/url": ["error", "always"],
- "n/prefer-global/url-search-params": ["error", "always"],
- "n/prefer-promises/dns": "error",
- "n/prefer-promises/fs": "error",
- },
-
- overrides: [
- {
- files: commonJsFiles,
- rules: {
- "n/no-missing-require": "off",
- },
- },
- {
- files: typescriptFiles,
- rules: {
- "n/no-unsupported-features/es-syntax": "off",
- },
- },
- ],
-};
diff --git a/src/plugins/optimize-regex.ts b/src/plugins/optimize-regex.ts
deleted file mode 100644
index 9000c5af..00000000
--- a/src/plugins/optimize-regex.ts
+++ /dev/null
@@ -1,9 +0,0 @@
-import { type Linter } from "eslint";
-
-export const settings: Linter.Config = {
- plugins: ["optimize-regex"],
-
- rules: {
- "optimize-regex/optimize-regex": "warn",
- },
-};
diff --git a/src/plugins/promise.ts b/src/plugins/promise.ts
deleted file mode 100644
index d634893f..00000000
--- a/src/plugins/promise.ts
+++ /dev/null
@@ -1,19 +0,0 @@
-import { type Linter } from "eslint";
-
-export const settings: Linter.Config = {
- plugins: ["promise"],
-
- extends: ["plugin:promise/recommended"],
-
- rules: {
- "promise/always-return": "off",
- "promise/avoid-new": "warn",
- "promise/catch-or-return": "off",
- "promise/no-nesting": "error",
- "promise/no-promise-in-callback": "error",
- "promise/no-return-in-finally": "error",
- "promise/prefer-await-to-callbacks": "off",
- "promise/prefer-await-to-then": "off",
- "promise/valid-params": "error",
- },
-};
diff --git a/src/plugins/sonarjs.ts b/src/plugins/sonarjs.ts
deleted file mode 100644
index a1b27bfb..00000000
--- a/src/plugins/sonarjs.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import { type Linter } from "eslint";
-
-export const settings: Linter.Config = {
- plugins: ["sonarjs"],
-
- extends: ["plugin:sonarjs/recommended"],
-
- rules: {
- "sonarjs/cognitive-complexity": "off",
- "sonarjs/no-duplicate-string": "off",
- "sonarjs/no-small-switch": "off",
- "sonarjs/no-useless-cast": "off",
- "sonarjs/max-switch-cases": "off",
- },
-};
diff --git a/src/plugins/typescript.ts b/src/plugins/typescript.ts
deleted file mode 100644
index 7aa552ae..00000000
--- a/src/plugins/typescript.ts
+++ /dev/null
@@ -1,326 +0,0 @@
-import { type Linter } from "eslint";
-
-import { typescriptDeclarationFiles } from "~/files";
-
-export const settings: Linter.Config = {
- plugins: ["@typescript-eslint"],
-
- extends: [
- "plugin:@typescript-eslint/eslint-recommended",
- "plugin:@typescript-eslint/recommended",
- "plugin:@typescript-eslint/recommended-type-checked",
- "plugin:@typescript-eslint/strict",
- "plugin:@typescript-eslint/strict-type-checked",
- "plugin:@typescript-eslint/stylistic",
- "plugin:@typescript-eslint/stylistic-type-checked",
- ],
-
- rules: {
- "@typescript-eslint/array-type": [
- "error",
- {
- default: "array-simple",
- readonly: "generic",
- },
- ],
- "@typescript-eslint/ban-types": [
- "error",
- {
- extendDefaults: true,
- types: {
- "{}": false,
- "object": false,
- "Object": {
- fixWith: "object",
- message: "Use object instead",
- },
- },
- },
- ],
- "@typescript-eslint/comma-dangle": [
- "error",
- {
- arrays: "only-multiline",
- exports: "only-multiline",
- functions: "ignore",
- imports: "only-multiline",
- objects: "only-multiline",
- },
- ],
- "@typescript-eslint/consistent-indexed-object-style": "error",
- "@typescript-eslint/consistent-type-definitions": ["error", "type"],
- "@typescript-eslint/consistent-type-imports": "error",
- "@typescript-eslint/dot-notation": [
- "error",
- {
- allowIndexSignaturePropertyAccess: true,
- },
- ],
- "@typescript-eslint/explicit-function-return-type": [
- "off",
- {
- allowConciseArrowFunctionExpressionsStartingWithVoid: true,
- allowExpressions: true,
- allowHigherOrderFunctions: true,
- allowTypedFunctionExpressions: true,
- },
- ],
- "@typescript-eslint/explicit-member-accessibility": [
- "error",
- {
- accessibility: "explicit",
- },
- ],
- "@typescript-eslint/explicit-module-boundary-types": "off",
- "@typescript-eslint/indent": ["error", 2],
- "@typescript-eslint/naming-convention": [
- "error",
- {
- selector: "default",
- format: ["camelCase", "PascalCase"],
- leadingUnderscore: "allow",
- trailingUnderscore: "forbid",
- },
- {
- selector: "variableLike",
- filter: {
- regex: "_[^_]+",
- match: true,
- },
- format: ["camelCase", "PascalCase"],
- prefix: ["m_", "M_"],
- leadingUnderscore: "forbid",
- trailingUnderscore: "forbid",
- },
- {
- selector: "variableLike",
- format: ["camelCase", "PascalCase"],
- leadingUnderscore: "allow",
- trailingUnderscore: "forbid",
- },
- {
- selector: "variable",
- format: ["camelCase", "PascalCase", "UPPER_CASE"],
- prefix: ["m_", "M_"],
- leadingUnderscore: "forbid",
- trailingUnderscore: "forbid",
- },
- {
- selector: "variable",
- filter: {
- regex: "_[^_]+",
- match: true,
- },
- format: ["camelCase", "PascalCase", "UPPER_CASE"],
- modifiers: ["const"],
- prefix: ["m_", "M_"],
- leadingUnderscore: "forbid",
- trailingUnderscore: "forbid",
- },
- {
- selector: "variable",
- format: ["camelCase", "PascalCase", "UPPER_CASE"],
- modifiers: ["const"],
- leadingUnderscore: "allow",
- trailingUnderscore: "forbid",
- },
- {
- selector: "variable",
- format: null,
- modifiers: ["destructured"],
- },
- {
- selector: "memberLike",
- format: ["camelCase", "PascalCase", "UPPER_CASE"],
- prefix: ["m_", "M_"],
- leadingUnderscore: "forbid",
- trailingUnderscore: "forbid",
- },
- {
- selector: "memberLike",
- filter: {
- regex: "_[^_]+",
- match: true,
- },
- format: ["camelCase", "PascalCase", "UPPER_CASE"],
- modifiers: ["readonly"],
- prefix: ["m_", "M_"],
- leadingUnderscore: "forbid",
- trailingUnderscore: "forbid",
- },
- {
- selector: "memberLike",
- format: ["camelCase", "PascalCase", "UPPER_CASE"],
- modifiers: ["readonly"],
- leadingUnderscore: "allow",
- trailingUnderscore: "forbid",
- },
- {
- selector: ["accessor", "classMethod", "typeMethod", "typeProperty"],
- format: ["camelCase", "PascalCase", "UPPER_CASE"],
- leadingUnderscore: "allow",
- trailingUnderscore: "forbid",
- },
- {
- selector: "enumMember",
- format: ["PascalCase", "UPPER_CASE"],
- leadingUnderscore: "allow",
- trailingUnderscore: "forbid",
- },
- {
- selector: "typeLike",
- format: ["PascalCase"],
- leadingUnderscore: "allow",
- trailingUnderscore: "forbid",
- },
- {
- selector: ["objectLiteralProperty", "objectLiteralMethod"],
- format: null,
- },
- ],
- "@typescript-eslint/no-meaningless-void-operator": "off",
- "@typescript-eslint/no-confusing-void-expression": [
- "error",
- {
- ignoreArrowShorthand: false,
- ignoreVoidOperator: true,
- },
- ],
- "@typescript-eslint/no-empty-interface": [
- "error",
- {
- allowSingleExtends: true,
- },
- ],
- "@typescript-eslint/no-extra-parens": [
- "error",
- "all",
- {
- nestedBinaryExpressions: false,
- },
- ],
- "@typescript-eslint/no-invalid-void-type": "error",
- "@typescript-eslint/no-loop-func": "error",
- "@typescript-eslint/no-loss-of-precision": "error",
- "@typescript-eslint/no-non-null-assertion": "off",
- // "node" plugin will handle this.
- "@typescript-eslint/no-require-imports": "off",
- "@typescript-eslint/no-shadow": [
- "warn",
- {
- allow: ["resolve", "reject", "done", "cb"],
- builtinGlobals: false,
- hoist: "never",
- },
- ],
- "@typescript-eslint/no-throw-literal": "error",
- "@typescript-eslint/no-unnecessary-condition": [
- "error",
- {
- allowConstantLoopConditions: true,
- },
- ],
- "@typescript-eslint/no-explicit-any": "warn",
- "@typescript-eslint/no-unnecessary-type-constraint": "error",
- "@typescript-eslint/no-unsafe-argument": "warn",
- "@typescript-eslint/no-unsafe-assignment": "warn",
- "@typescript-eslint/no-unsafe-call": "warn",
- "@typescript-eslint/no-unsafe-member-access": "warn",
- "@typescript-eslint/no-unsafe-return": "warn",
- "@typescript-eslint/no-unused-expressions": [
- "error",
- {
- allowShortCircuit: true,
- allowTaggedTemplates: true,
- allowTernary: true,
- },
- ],
- "no-unused-vars": "off",
- "@typescript-eslint/no-unused-vars": [
- "warn",
- {
- args: "none",
- caughtErrors: "none",
- ignoreRestSiblings: true,
- vars: "all",
- },
- ],
- "@typescript-eslint/no-use-before-define": [
- "error",
- {
- classes: true,
- functions: false,
- typedefs: true,
- variables: true,
- },
- ],
- "@typescript-eslint/no-var-requires": "error",
- "@typescript-eslint/non-nullable-type-assertion-style": "error",
- "@typescript-eslint/object-curly-spacing": ["error", "always"],
- "@typescript-eslint/prefer-for-of": "warn",
- "@typescript-eslint/prefer-includes": "warn",
- "@typescript-eslint/prefer-interface": "off",
- "@typescript-eslint/prefer-nullish-coalescing": "warn",
- "@typescript-eslint/prefer-optional-chain": "warn",
- "@typescript-eslint/prefer-readonly-parameter-types": "off",
- "@typescript-eslint/prefer-regexp-exec": "error",
- "@typescript-eslint/prefer-string-starts-ends-with": "warn",
- "@typescript-eslint/prefer-ts-expect-error": "warn",
- "@typescript-eslint/promise-function-async": "off",
- "@typescript-eslint/restrict-plus-operands": [
- "error",
- {
- skipCompoundAssignments: true,
- },
- ],
- "@typescript-eslint/restrict-template-expressions": [
- "error",
- {
- allowAny: true,
- allowBoolean: true,
- allowNullish: true,
- allowNumber: true,
- },
- ],
- "@typescript-eslint/space-infix-ops": "error",
- "@typescript-eslint/sort-type-union-intersection-members": "off",
- "@typescript-eslint/strict-boolean-expressions": [
- "error",
- {
- allowAny: false,
- allowNullableBoolean: false,
- allowNullableNumber: false,
- allowNullableObject: false,
- allowNullableString: false,
- allowNumber: false,
- allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing: false,
- allowString: false,
- },
- ],
- "@typescript-eslint/switch-exhaustiveness-check": "warn",
- "@typescript-eslint/type-annotation-spacing": "error",
- "@typescript-eslint/unbound-method": [
- "error",
- {
- ignoreStatic: true,
- },
- ],
- "@typescript-eslint/unified-signatures": [
- "error",
- {
- ignoreDifferentlyNamedParameters: true,
- },
- ],
- "@typescript-eslint/no-redeclare": "error",
- },
-
- overrides: [
- {
- files: typescriptDeclarationFiles,
- rules: {
- "@typescript-eslint/consistent-type-definitions": "off",
- "@typescript-eslint/triple-slash-reference": "off",
- },
- },
- ],
-};
diff --git a/src/plugins/unicorn.ts b/src/plugins/unicorn.ts
deleted file mode 100644
index 1e2e99bc..00000000
--- a/src/plugins/unicorn.ts
+++ /dev/null
@@ -1,64 +0,0 @@
-import { type Linter } from "eslint";
-
-import { commonJsFiles } from "~/files";
-
-export const settings: Linter.Config = {
- plugins: ["unicorn"],
-
- extends: ["plugin:unicorn/recommended"],
-
- rules: {
- "unicorn/import-style": [
- "error",
- {
- extendDefaultStyles: false,
- styles: {
- typescript: {
- default: true,
- named: true,
- },
- },
- },
- ],
- "unicorn/filename-case": [
- "error",
- {
- cases: {
- kebabCase: true,
- pascalCase: true,
- },
- ignore: ["^.*\\.md$"],
- },
- ],
- // "eslint-comments/no-unlimited-disable" covers this.
- "unicorn/no-abusive-eslint-disable": "off",
- "unicorn/no-array-callback-reference": "off",
- "unicorn/no-array-reduce": "off",
- "unicorn/no-empty-file": "off",
- "unicorn/no-nested-ternary": "off",
- "unicorn/no-null": "off",
- // "n/no-process-exit" covers this.
- "unicorn/no-process-exit": "off",
- "unicorn/no-useless-undefined": "off",
- "unicorn/prefer-at": [
- "error",
- {
- checkAllIndexAccess: false,
- },
- ],
- "unicorn/prefer-json-parse-buffer": "off",
- "unicorn/prefer-string-replace-all": "error",
- "unicorn/prefer-top-level-await": "error",
- "unicorn/prevent-abbreviations": "off",
- },
-
- overrides: [
- {
- files: commonJsFiles,
- rules: {
- "unicorn/prefer-module": "off",
- "unicorn/prefer-top-level-await": "off",
- },
- },
- ],
-};
diff --git a/src/types.ts b/src/types.ts
new file mode 100644
index 00000000..a8668965
--- /dev/null
+++ b/src/types.ts
@@ -0,0 +1,311 @@
+import type { StylisticCustomizeOptions } from "@stylistic/eslint-plugin";
+import type { ParserOptions } from "@typescript-eslint/parser";
+import type { TSESLint } from "@typescript-eslint/utils";
+import type { ESLint, Linter } from "eslint";
+import type { Options as VueBlocksOptions } from "eslint-processor-vue-blocks";
+import type { Options as PrettierOptions } from "prettier";
+
+import type { SettingsVueI18nLocaleDir } from "../typings/eslint-plugin-vue-i18n";
+
+import type { RuleOptions as Rules } from "./typegen";
+
+declare module "eslint" {
+ // eslint-disable-next-line ts/no-namespace
+ namespace Linter {
+ // eslint-disable-next-line ts/consistent-type-definitions
+ interface RulesRecord extends Rules {}
+ }
+}
+
+export type Awaitable = T | Promise;
+
+export type FlatConfigItem = Omit & {
+ /**
+ * Custom name of each config item
+ */
+ name?: string | undefined;
+
+ plugins?:
+ | Record>
+ | undefined;
+
+ /**
+ * An object containing a name-value mapping of rules to use.
+ */
+ rules?: (TSESLint.FlatConfig.Config["rules"] & Rules) | undefined;
+};
+
+export type OptionsFiles = {
+ /**
+ * Override the `files` option to provide custom globs.
+ */
+ files?: string[];
+};
+
+export type OptionsVue = {
+ /**
+ * Create virtual files for Vue SFC blocks to enable linting.
+ *
+ * @see https://github.com/antfu/eslint-processor-vue-blocks
+ * @default true
+ */
+ sfcBlocks?: boolean | VueBlocksOptions;
+
+ /**
+ * Vue version. Apply different rules set from `eslint-plugin-vue`.
+ *
+ * @default 3
+ */
+ vueVersion?: 2 | 3;
+
+ i18n?:
+ | {
+ localeDir?: SettingsVueI18nLocaleDir;
+ messageSyntaxVersion?: string;
+ }
+ | false;
+} & OptionsOverrides;
+
+export type OptionsTypescript = OptionsTypeScriptParserOptions &
+ OptionsOverrides &
+ OptionsTypeScriptUnsafeSeverity &
+ OptionsTypeScriptShorthands;
+
+export type OptionsFormatters = {
+ js?: boolean;
+ ts?: boolean;
+ json?: boolean;
+ yaml?: boolean;
+ dts?: boolean;
+ css?: boolean;
+ html?: boolean;
+ markdown?: boolean;
+ graphql?: boolean;
+ prettierOptions?: PrettierOptions;
+ slidev?:
+ | boolean
+ | {
+ files?: string[];
+ };
+};
+
+export type OptionsComponentExts = {
+ /**
+ * Additional extensions for components.
+ *
+ * @example ['vue']
+ *
+ * @default []
+ */
+ componentExts?: string[];
+};
+
+export type OptionsTypeScriptParserOptions = {
+ /**
+ * Additional parser options for TypeScript.
+ */
+ parserOptions?: Partial;
+
+ /**
+ * Glob patterns for files that should be type aware.
+ *
+ * @default ['**\/*.{ts,tsx}']
+ */
+ filesTypeAware?: string[];
+};
+
+export type OptionsTypeScriptShorthands = {
+ /**
+ * Any easy way to disable the default project.
+ * Has no effect if `parserOptions.projectService` is set.
+ *
+ * @default true
+ */
+ useDefaultDefaultProject?: boolean;
+};
+
+export type OptionsTypeScriptUnsafeSeverity = {
+ unsafe?: "off" | "warn" | "error";
+};
+
+export type OptionsHasTypeScript = {
+ typescript?: boolean;
+};
+
+export type OptionsTypeRequiredRules = {
+ enableTypeRequiredRules?: boolean;
+};
+
+export type OptionsStylistic = {
+ stylistic?: StylisticConfig | false;
+};
+
+export type RequiredOptionsStylistic = {
+ stylistic: Required | false;
+};
+
+export type StylisticConfig = {} & Pick<
+ StylisticCustomizeOptions,
+ "indent" | "quotes" | "jsx" | "semi"
+>;
+
+export type OptionsOverrides = {
+ overrides?: FlatConfigItem["rules"];
+};
+
+export type OptionsIsInEditor = {
+ isInEditor?: boolean;
+};
+
+export type OptionsUnoCSS = {
+ /**
+ * Enable attributify support.
+ */
+ attributify?: boolean;
+
+ /**
+ * Enable strict mode by throwing errors about blocklisted classes.
+ */
+ strict?: boolean;
+} & OptionsOverrides;
+
+export type OptionsFunctional = {
+ functionalEnforcement?: "none" | "lite" | "recommended" | "strict";
+ ignoreNamePattern?: string[];
+ // ignoreTypePattern?: string[];
+};
+
+export type OptionsMode = {
+ mode: "library" | "application" | "none";
+};
+
+export type OptionsProjectRoot = {
+ projectRoot: string;
+};
+
+export type OptionsIgnoreFiles = {
+ /**
+ * Files that contain ignore patterns.
+ *
+ * @default [".gitignore"]
+ */
+ ignoreFiles: string[];
+};
+
+export type OptionsIgnores =
+ | NonNullable
+ | {
+ extend: boolean;
+ files: NonNullable;
+ };
+
+export type OptionsConfig = {
+ /**
+ * The root directory of the project.
+ */
+ projectRoot: OptionsProjectRoot["projectRoot"];
+
+ /**
+ * What are we linting?
+ */
+ mode: OptionsMode["mode"];
+
+ /**
+ * Core rules. Can't be disabled.
+ */
+ javascript?: OptionsOverrides;
+
+ /**
+ * Enable TypeScript support.
+ *
+ * Passing an object to enable TypeScript Language Server support.
+ *
+ * @default auto-detect based on the dependencies
+ */
+ typescript?: boolean | OptionsTypescript;
+
+ /**
+ * Enable JSX related rules.
+ */
+ jsx?: boolean;
+
+ /**
+ * Enable test support.
+ */
+ test?: boolean | OptionsOverrides;
+
+ /**
+ * Enforce functional programming.
+ */
+ functional?:
+ | boolean
+ | OptionsFunctional["functionalEnforcement"]
+ | (OptionsOverrides & OptionsFunctional);
+
+ /**
+ * Enable Vue support.
+ *
+ * @default auto-detect based on the dependencies
+ */
+ vue?: boolean | OptionsVue;
+
+ /**
+ * Enable JSONC support.
+ */
+ jsonc?: boolean | OptionsOverrides;
+
+ /**
+ * Enable YAML support.
+ */
+ yaml?: boolean | OptionsOverrides;
+
+ /**
+ * Enable TOML support.
+ */
+ toml?: boolean | OptionsOverrides;
+
+ /**
+ * Enable linting for **code snippets** in Markdown.
+ *
+ * For formatting Markdown content, enable also `formatters.markdown`.
+ */
+ markdown?: boolean | (OptionsOverrides & OptionsTypeRequiredRules);
+
+ /**
+ * Enable stylistic rules.
+ */
+ stylistic?: boolean | (StylisticConfig & OptionsOverrides);
+
+ /**
+ * Enable unocss rules.
+ */
+ unocss?: boolean | OptionsUnoCSS;
+
+ /**
+ * Use external formatters to format files.
+ *
+ * When set to `true`, it will enable all formatters.
+ */
+ formatters?: boolean | OptionsFormatters;
+
+ /**
+ * Control to disable some rules in editors.
+ */
+ isInEditor?: boolean;
+
+ /**
+ * Automatically rename plugins in the config.
+ */
+ autoRenamePlugins?: boolean;
+
+ ignores?: OptionsIgnores;
+
+ /**
+ * Files that contain ignore patterns.
+ *
+ * @default [".gitignore"]
+ */
+ ignoresFiles?: OptionsIgnoreFiles["ignoreFiles"];
+} & OptionsComponentExts;
+
+export { type RuleOptions as Rules } from "./typegen";
diff --git a/src/utils.ts b/src/utils.ts
new file mode 100644
index 00000000..51ff4917
--- /dev/null
+++ b/src/utils.ts
@@ -0,0 +1,117 @@
+import assert from "node:assert/strict";
+
+import type { Awaitable } from "eslint-flat-config-utils";
+import { isPackageExists } from "local-pkg";
+
+import type { FlatConfigItem } from "./types";
+
+/**
+ * Combine array and non-array configs into a single array.
+ */
+export async function combine(
+ ...configs: ReadonlyArray>
+): Promise {
+ const resolved = await Promise.all(configs);
+ return resolved.flat();
+}
+
+export async function interopDefault(
+ value: Awaitable,
+): Promise {
+ const resolved = await value;
+ // eslint-disable-next-line ts/no-unsafe-return, ts/no-explicit-any, ts/no-unsafe-member-access
+ return (resolved as any).default ?? resolved;
+}
+
+export const parserPlain = {
+ meta: {
+ name: "parser-plain",
+ },
+ parseForESLint: (code: string) => ({
+ ast: {
+ body: [],
+ comments: [],
+ loc: { end: code.length, start: 0 },
+ range: [0, code.length],
+ tokens: [],
+ type: "Program",
+ },
+ scopeManager: null,
+ services: { isPlain: true },
+ visitorKeys: {
+ Program: [],
+ },
+ }),
+};
+
+export async function loadPackages(
+ packageIds: T,
+): Promise<{
+ [K in keyof T]: unknown;
+}> {
+ const missing = packageIds.filter((id) => !isPackageExists(id));
+
+ if (missing.length > 0) {
+ await installPackages(missing);
+ }
+
+ // eslint-disable-next-line ts/no-explicit-any, ts/no-unsafe-return
+ return Promise.all(packageIds.map((id) => interopDefault(import(id)))) as any;
+}
+
+const installPackagesToLoad = new Set();
+let m_installPackagesAction: Promise | null = null;
+let m_installPackagesActionResolver:
+ | ((value: string[] | PromiseLike) => void)
+ | null = null;
+let m_installPackagesTimeout: NodeJS.Timeout | null = null;
+
+/* eslint-disable functional/no-loop-statements */
+async function installPackages(packages: ReadonlyArray) {
+ for (const p of packages) {
+ installPackagesToLoad.add(p);
+ }
+
+ if (m_installPackagesTimeout !== null) {
+ clearTimeout(m_installPackagesTimeout);
+ }
+
+ m_installPackagesTimeout = setTimeout(() => {
+ const allPackages = [...installPackagesToLoad.values()];
+ m_installPackagesTimeout = null;
+ installPackagesToLoad.clear();
+ m_installPackagesAction = null;
+ assert(m_installPackagesActionResolver !== null);
+ m_installPackagesActionResolver(allPackages);
+ m_installPackagesActionResolver = null;
+ }, 10);
+
+ if (m_installPackagesAction === null) {
+ m_installPackagesAction = new Promise((resolve) => {
+ m_installPackagesActionResolver = resolve;
+ }).then(async (allPackages: string[]) => {
+ const allPackagesString = allPackages.join(", ");
+
+ if (Boolean(process.env["CI"]) || !process.stdout.isTTY) {
+ throw new Error(`Missing packages: ${allPackagesString}`);
+ }
+
+ const prompt = await import("@clack/prompts");
+ const result = await prompt.confirm({
+ message:
+ allPackages.length === 1
+ ? `${allPackages[0]} is required for this config. Do you want to install it?`
+ : `Packages are required for this config: ${allPackagesString}.\nDo you want to install them?`,
+ });
+
+ if (result !== false) {
+ await import("@antfu/install-pkg").then(({ installPackage }) =>
+ installPackage(allPackages, { dev: true }),
+ );
+ }
+ });
+ }
+
+ return m_installPackagesAction;
+}
+/* eslint-enable functional/no-loop-statements */
diff --git a/tsconfig.base.json b/tsconfig.base.json
index 61982d0c..16dcb72c 100644
--- a/tsconfig.base.json
+++ b/tsconfig.base.json
@@ -1,35 +1,34 @@
{
"compilerOptions": {
- "allowSyntheticDefaultImports": true,
+ "target": "ESNext",
+ "lib": ["ESNext"],
+ "baseUrl": ".",
+ "module": "ESNext",
+ "moduleResolution": "Bundler",
+ "paths": {},
+ "resolveJsonModule": true,
+ "strict": true,
"allowUnreachableCode": false,
"allowUnusedLabels": false,
"alwaysStrict": true,
- "esModuleInterop": true,
"exactOptionalPropertyTypes": true,
- "forceConsistentCasingInFileNames": true,
- "importHelpers": false,
- "lib": ["ESNext"],
- "module": "ESNext",
- "moduleResolution": "node",
- "newLine": "LF",
- "noEmitOnError": true,
"noImplicitReturns": true,
"noPropertyAccessFromIndexSignature": true,
"noUncheckedIndexedAccess": true,
"noUnusedLocals": false,
"noUnusedParameters": false,
- "pretty": true,
- "resolveJsonModule": true,
+ "useUnknownInCatchVariables": true,
+ "importHelpers": false,
+ "newLine": "LF",
+ "noEmitOnError": true,
+ "preserveConstEnums": true,
"sourceMap": false,
- "strict": true,
- "target": "ES2020",
- "baseUrl": "./src",
- "paths": {
- "~": ["."],
- "~/*": ["./common/*"],
- "~/builtin": ["./builtin"],
- "~/configs/*": ["./configs/*"],
- "~/plugins/*": ["./plugins/*"]
- }
- }
+ "allowSyntheticDefaultImports": true,
+ "esModuleInterop": true,
+ "forceConsistentCasingInFileNames": true,
+ "noErrorTruncation": true,
+ "pretty": true,
+ "skipLibCheck": true
+ },
+ "exclude": ["dist/"]
}
diff --git a/tsconfig.build.json b/tsconfig.build.json
index f0e7ceb2..87c00d23 100644
--- a/tsconfig.build.json
+++ b/tsconfig.build.json
@@ -1,7 +1,8 @@
{
"extends": "./tsconfig.base.json",
"compilerOptions": {
- "rootDir": "./src"
+ "rootDir": "src",
+ "declaration": true
},
- "include": ["src"]
+ "include": ["src", "typings"]
}
diff --git a/tsconfig.json b/tsconfig.json
index 0034c917..3f278c90 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -1,7 +1,10 @@
{
"extends": "./tsconfig.build.json",
"compilerOptions": {
+ "allowJs": true,
+ "noEmit": true,
"rootDir": "."
+ // "isolatedDeclarations": false
},
- "include": [".", "src"]
+ "include": [".", ".*", "**/*", "**/.*"]
}
diff --git a/typings/es.d.ts b/typings/es.d.ts
new file mode 100644
index 00000000..4ad747be
--- /dev/null
+++ b/typings/es.d.ts
@@ -0,0 +1,7 @@
+declare global {
+ interface ArrayConstructor {
+ isArray(arg: unknown): arg is T[] | ReadonlyArray;
+ }
+}
+
+export {};
diff --git a/typings/eslint-plugin-vue-i18n.d.ts b/typings/eslint-plugin-vue-i18n.d.ts
new file mode 100644
index 00000000..387beffa
--- /dev/null
+++ b/typings/eslint-plugin-vue-i18n.d.ts
@@ -0,0 +1,49 @@
+// From https://github.com/intlify/eslint-plugin-vue-i18n/blob/v3.0.0/lib/types/settings.ts
+
+/**
+ * How to determine the locale for localization messages.
+ * - `'file'` ... Determine the locale name from the filename. The resource file should only contain messages for that locale.
+ * Use this option if you use `vue-cli-plugin-i18n`. This method is also used when String option is specified.
+ * - `'path'` ... Determine the locale name from the path of resource. In this case, the locale must be had structured with your rule on the path.
+ * It can be captured with the regular expression named capture. The resource file should only contain messages for that locale.
+ * - `'key'` ... Determine the locale name from the root key name of the file contents. The value of that key should only contain messages for that locale.
+ * Used when the resource file is in the format given to the `messages` option of the `VueI18n` constructor option.
+ */
+export type LocaleKeyType = "file" | "path" | "key";
+
+/**
+ * Type of `settings['vue-i18n'].localeDir`
+ */
+export type SettingsVueI18nLocaleDir =
+ | SettingsVueI18nLocaleDirGlob
+ | SettingsVueI18nLocaleDirObject
+ | Array;
+
+/**
+ * A glob for specifying files that store localization messages of project.
+ */
+export type SettingsVueI18nLocaleDirGlob = string;
+
+/**
+ * Specifies a glob and messages format type.
+ */
+export interface SettingsVueI18nLocaleDirObject {
+ /**
+ * A glob for specifying files that store localization messages of project.
+ */
+ pattern: string;
+
+ /**
+ * Specifies how to determine the locale for localization messages.
+ */
+ localeKey: LocaleKeyType;
+
+ /**
+ * Specifies how to determine pattern the locale for localization messages.
+ *
+ * This option means, when `localeKey` is `'path'`, you will need to capture the locale using a regular expression.
+ * You need to use the locale capture as a named capture `?`, so it’s be able to capture from the path of the locale resources.
+ * If you omit it, it will be captured from the resource path with the same regular expression pattern as `vue-cli-plugin-i18n`.
+ */
+ localePattern?: string | RegExp;
+}