diff --git a/e2e/helper.ts b/e2e/helper.ts
index 411228738..42ea2f373 100644
--- a/e2e/helper.ts
+++ b/e2e/helper.ts
@@ -2,7 +2,7 @@ import { JSDOM } from 'jsdom'
import type { Page } from 'playwright'
-export async function sleep(delay: number) {
+export function sleep(delay: number) {
return new Promise(resolve => setTimeout(resolve, delay))
}
@@ -43,7 +43,7 @@ export async function assetLocaleHead(page: Page, headSelector: string) {
},
[headHandle, localeHeadValue]
)
- headHandle?.dispose()
+ await headHandle?.dispose()
}
export function getDom(html: string) {
@@ -57,10 +57,7 @@ export function getDataFromDom(dom: Document, selector: string) {
)
}
-export async function assertLocaleHeadWithDom(
- dom: Document,
- headSelector: string
-) {
+export function assertLocaleHeadWithDom(dom: Document, headSelector: string) {
const localeHead = getDataFromDom(dom, headSelector)
const headData = [...localeHead.link, ...localeHead.meta]
for (const head of headData) {
diff --git a/eslint.config.mjs b/eslint.config.mjs
index 98e9110b2..bed4f8485 100644
--- a/eslint.config.mjs
+++ b/eslint.config.mjs
@@ -1,12 +1,9 @@
import globals from 'globals'
import js from '@eslint/js'
-import { FlatCompat } from '@eslint/eslintrc'
import ts from 'typescript-eslint'
-import eslintConfigPrettier from 'eslint-config-prettier'
+import pritter from 'eslint-config-prettier'
+import vue from 'eslint-plugin-vue'
-const vue = extendVuePlugin('plugin:vue/vue3-recommended', ts.parser)
-
-/** @type { import("eslint").Linter.FlatConfig[] } */
export default [
// ignore globally
{
@@ -24,11 +21,6 @@ export default [
]
},
- js.configs.recommended,
- ...ts.configs.recommended,
- eslintConfigPrettier,
- ...vue,
-
// globals
{
// files: ['**/*.js', '**/*.ts', '**/*.vue', '**/*.json'],
@@ -45,6 +37,44 @@ export default [
}
},
+ js.configs.recommended,
+
+ //...ts.configs.recommended,
+ ...ts.configs.recommendedTypeChecked,
+ {
+ files: ['**/*.ts', '**/*.tsx', '**/*.cts', '**/*.mts', '**/*.vue'],
+ languageOptions: {
+ parserOptions: {
+ project: true,
+ tsconfigRootDir: import.meta.dirname,
+ parser: ts.parser,
+ extraFileExtensions: ['.vue']
+ }
+ },
+ rules: {
+ '@typescript-eslint/no-unsafe-member-access': 'off',
+ '@typescript-eslint/no-unsafe-assignment': 'off',
+ '@typescript-eslint/no-unsafe-call': 'off',
+ '@typescript-eslint/no-unsafe-argument': 'off',
+ '@typescript-eslint/no-unsafe-return': 'off',
+ '@typescript-eslint/no-unsafe-enum-comparison': 'off',
+ '@typescript-eslint/no-unnecessary-type-assertion': 'off',
+ '@typescript-eslint/unbound-method': 'off',
+ '@typescript-eslint/no-implied-eval': 'off',
+ '@typescript-eslint/no-redundant-type-constituents': 'off',
+ '@typescript-eslint/restrict-template-expressions': 'off',
+ '@typescript-eslint/no-base-to-string': 'off'
+ }
+ },
+ {
+ files: ['**/*.js', '**/*.cjs', '**/*.mjs'],
+ ...ts.configs.disableTypeChecked
+ },
+
+ ...vue.configs['flat/recommended'],
+
+ pritter,
+
// custom rules
{
rules: {
@@ -64,34 +94,3 @@ export default [
}
}
]
-
-/**
- * extend eslint-plugin-vue with @typescript-eslint/parser
- * (NOTE: eslint-plugin-vue flat config WIP currently https://github.com/vuejs/eslint-plugin-vue/issues/1291)
- *
- * @param { 'plugin:vue/vue3-essential' | 'plugin:vue/vue3-strongly-recommended' | 'plugin:vue/vue3-recommended' } vueConfigPattern
- * @param { import("typescript-eslint").Config.parser } tsParser
- *
- * @return { import("eslint").Linter.FlatConfig[] }
- */
-function extendVuePlugin(vueConfigPattern, tsParser) {
- const compat = new FlatCompat()
- const vuePlugin = compat.extends(vueConfigPattern)
- const vueLangOptions = vuePlugin[2]
- vueLangOptions.files = [
- '**/*.vue',
- '**/*.ts',
- '**/*.tsx',
- '**/*.mts',
- '**/*.cts'
- ]
- vueLangOptions.languageOptions = {
- // NOTE:
- // https://eslint.vuejs.org/user-guide/#how-to-use-a-custom-parser
- parserOptions: {
- parser: tsParser
- },
- ecmaVersion: 'latest'
- }
- return vuePlugin
-}
diff --git a/package.json b/package.json
index 1d40a91ae..5618f55b0 100644
--- a/package.json
+++ b/package.json
@@ -44,6 +44,7 @@
"docs:dev": "vitepress dev docs",
"docs:serve": "vitepress serve docs",
"docs:setup": "pnpm build:typed && pnpm docs:apigen",
+ "eslint:inspector": "npx @eslint/config-inspector",
"example:ssr": "cd examples/ssr/vite && pnpm dev",
"fix": "run-p lint:fix format:fix",
"format:fix": "run-p \"format:prettier --write\" format:package",
@@ -69,7 +70,6 @@
"test:unit": "cross-env TZ=UTC vitest run -c ./vitest.unit.config.ts"
},
"devDependencies": {
- "@eslint/eslintrc": "^3.0.0",
"@eslint/js": "^8.57.0",
"@intlify/core-base": "workspace:*",
"@intlify/message-compiler": "workspace:*",
@@ -81,11 +81,13 @@
"@rollup/plugin-terser": "^0.4.3",
"@secretlint/secretlint-rule-preset-recommend": "^3.1.0",
"@textlint-rule/textlint-rule-no-unmatched-pair": "^2.0.0",
+ "@types/brotli": "^1.3.4",
+ "@types/eslint": "^8.56.7",
"@types/js-yaml": "^4.0.5",
"@types/jsdom": "^21.1.1",
+ "@types/minimist": "^1.2.5",
"@types/node": "^20.11.21",
- "@typescript-eslint/eslint-plugin": "^6.5.0",
- "@typescript-eslint/parser": "^6.5.0",
+ "@types/rc": "^1.2.4",
"@vitest/coverage-v8": "^1.3.0",
"api-docs-gen": "^0.4.0",
"benchmark": "^2.1.4",
@@ -95,7 +97,7 @@
"esbuild-register": "^3.5.0",
"eslint": "^8.57.0",
"eslint-config-prettier": "^9.1.0",
- "eslint-plugin-vue": "^9.22.0",
+ "eslint-plugin-vue": "^9.24.0",
"execa": "^5.0.0",
"fixpack": "^4.0.0",
"globals": "^15.0.0",
@@ -114,7 +116,7 @@
"playwright": "^1.34.0",
"prettier": "^3.2.5",
"rc": "^1.2.8",
- "rimraf": "^3.0.2",
+ "rimraf": "^5.0.5",
"rollup": "^3.29.2",
"rollup-plugin-node-builtins": "^2.1.2",
"rollup-plugin-node-globals": "^1.4.0",
@@ -141,7 +143,7 @@
"trash-cli": "^5.0.0",
"tslib": "^2.6.2",
"typescript": "^5.3.3",
- "typescript-eslint": "^7.1.0",
+ "typescript-eslint": "^7.5.0",
"vitepress": "1.0.2",
"vitest": "^1.3.0",
"vue": "3.4.21",
diff --git a/packages/format-explorer/src/App.vue b/packages/format-explorer/src/App.vue
index 594d0f3ea..a018b3cf4 100644
--- a/packages/format-explorer/src/App.vue
+++ b/packages/format-explorer/src/App.vue
@@ -72,6 +72,7 @@ async function compile(
lastSuccessCode =
evalCode.toString() + `\n\n// Check the console for the AST`
lastSuccessfulMap =
+ // eslint-disable-next-line @typescript-eslint/await-thenable
options.sourceMap && map ? await new SourceMapConsumer(map) : null
lastSuccessfulMap?.computeColumnSpans()
} catch (e: unknown) {
@@ -222,11 +223,7 @@ const onChangeOptions = async (options: CompileOptions) => {
@change-model="onChangeModel"
@ready="onReadyInput"
/>
-
+
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 2bfc92e04..905e305c1 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -12,9 +12,6 @@ importers:
.:
devDependencies:
- '@eslint/eslintrc':
- specifier: ^3.0.0
- version: 3.0.2
'@eslint/js':
specifier: ^8.57.0
version: 8.57.0
@@ -48,21 +45,27 @@ importers:
'@textlint-rule/textlint-rule-no-unmatched-pair':
specifier: ^2.0.0
version: 2.0.2
+ '@types/brotli':
+ specifier: ^1.3.4
+ version: 1.3.4
+ '@types/eslint':
+ specifier: ^8.56.7
+ version: 8.56.7
'@types/js-yaml':
specifier: ^4.0.5
version: 4.0.9
'@types/jsdom':
specifier: ^21.1.1
version: 21.1.6
+ '@types/minimist':
+ specifier: ^1.2.5
+ version: 1.2.5
'@types/node':
specifier: ^20.11.21
version: 20.11.21
- '@typescript-eslint/eslint-plugin':
- specifier: ^6.5.0
- version: 6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.57.0)(typescript@5.3.3)
- '@typescript-eslint/parser':
- specifier: ^6.5.0
- version: 6.21.0(eslint@8.57.0)(typescript@5.3.3)
+ '@types/rc':
+ specifier: ^1.2.4
+ version: 1.2.4
'@vitest/coverage-v8':
specifier: ^1.3.0
version: 1.3.1(vitest@1.3.1)
@@ -91,8 +94,8 @@ importers:
specifier: ^9.1.0
version: 9.1.0(eslint@8.57.0)
eslint-plugin-vue:
- specifier: ^9.22.0
- version: 9.22.0(eslint@8.57.0)
+ specifier: ^9.24.0
+ version: 9.24.0(eslint@8.57.0)
execa:
specifier: ^5.0.0
version: 5.1.1
@@ -148,8 +151,8 @@ importers:
specifier: ^1.2.8
version: 1.2.8
rimraf:
- specifier: ^3.0.2
- version: 3.0.2
+ specifier: ^5.0.5
+ version: 5.0.5
rollup:
specifier: ^3.29.2
version: 3.29.4
@@ -229,8 +232,8 @@ importers:
specifier: ^5.3.3
version: 5.3.3
typescript-eslint:
- specifier: ^7.1.0
- version: 7.1.0(eslint@8.57.0)(typescript@5.3.3)
+ specifier: ^7.5.0
+ version: 7.5.0(eslint@8.57.0)(typescript@5.3.3)
vitepress:
specifier: 1.0.2
version: 1.0.2(@algolia/client-search@4.22.1)(@types/node@20.11.21)(search-insights@2.13.0)(typescript@5.3.3)
@@ -1649,23 +1652,6 @@ packages:
- supports-color
dev: true
- /@eslint/eslintrc@3.0.2:
- resolution: {integrity: sha512-wV19ZEGEMAC1eHgrS7UQPqsdEiCIbTKTasEfcXAigzoXICcqZSjBZEHlZwNVvKg6UBCjSlos84XiLqsRJnIcIg==}
- engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- dependencies:
- ajv: 6.12.6
- debug: 4.3.4(supports-color@6.1.0)
- espree: 10.0.1
- globals: 14.0.0
- ignore: 5.3.1
- import-fresh: 3.3.0
- js-yaml: 4.1.0
- minimatch: 3.1.2
- strip-json-comments: 3.1.1
- transitivePeerDependencies:
- - supports-color
- dev: true
-
/@eslint/js@8.57.0:
resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
@@ -1886,6 +1872,18 @@ packages:
vue: 3.4.20(typescript@5.3.3)
dev: true
+ /@isaacs/cliui@8.0.2:
+ resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
+ engines: {node: '>=12'}
+ dependencies:
+ string-width: 5.1.2
+ string-width-cjs: /string-width@4.2.3
+ strip-ansi: 7.1.0
+ strip-ansi-cjs: /strip-ansi@6.0.1
+ wrap-ansi: 8.1.0
+ wrap-ansi-cjs: /wrap-ansi@7.0.0
+ dev: true
+
/@istanbuljs/schema@0.1.3:
resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==}
engines: {node: '>=8'}
@@ -2169,6 +2167,13 @@ packages:
'@parcel/watcher-win32-x64': 2.4.1
dev: true
+ /@pkgjs/parseargs@0.11.0:
+ resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
+ engines: {node: '>=14'}
+ requiresBuild: true
+ dev: true
+ optional: true
+
/@rollup/plugin-commonjs@25.0.7(rollup@3.29.4):
resolution: {integrity: sha512-nEvcR+LRjEjsaSsc4x3XZfCCvZIaSMenZu/OiwOKGN2UhQpAYI7ru7czFvyWbErlpoGjnSX3D5Ch5FcMA3kRWQ==}
engines: {node: '>=14.0.0'}
@@ -2842,12 +2847,25 @@ packages:
'@types/node': 20.11.21
dev: true
+ /@types/brotli@1.3.4:
+ resolution: {integrity: sha512-cKYjgaS2DMdCKF7R0F5cgx1nfBYObN2ihIuPGQ4/dlIY6RpV7OWNwe9L8V4tTVKL2eZqOkNM9FM/rgTvLf4oXw==}
+ dependencies:
+ '@types/node': 20.11.21
+ dev: true
+
/@types/connect@3.4.38:
resolution: {integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==}
dependencies:
'@types/node': 20.11.21
dev: true
+ /@types/eslint@8.56.7:
+ resolution: {integrity: sha512-SjDvI/x3zsZnOkYZ3lCt9lOZWZLB2jIlNKz+LBgCtDurK0JZcwucxYHn1w2BJkD34dgX9Tjnak0txtq4WTggEA==}
+ dependencies:
+ '@types/estree': 1.0.5
+ '@types/json-schema': 7.0.15
+ dev: true
+
/@types/estree@1.0.5:
resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==}
dev: true
@@ -2960,6 +2978,12 @@ packages:
resolution: {integrity: sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==}
dev: true
+ /@types/rc@1.2.4:
+ resolution: {integrity: sha512-xD6+epQoMH79A1uwmJIq25D+XZ57jUzCQ1DGSvs3tGKdx7QDYOOaMh6m5KBkEIW4+Cy5++bZ7NLDfdpNiYVKYA==}
+ dependencies:
+ '@types/minimist': 1.2.5
+ dev: true
+
/@types/resolve@1.20.2:
resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==}
dev: true
@@ -2995,38 +3019,9 @@ packages:
resolution: {integrity: sha512-g9gZnnXVq7gM7v3tJCWV/qw7w+KeOlSHAhgF9RytFyifW6AF61hdT2ucrYhPq9hLs5JIryeupHV3qGk95dH9ow==}
dev: true
- /@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.57.0)(typescript@5.3.3):
- resolution: {integrity: sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==}
- engines: {node: ^16.0.0 || >=18.0.0}
- peerDependencies:
- '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha
- eslint: ^7.0.0 || ^8.0.0
- typescript: '*'
- peerDependenciesMeta:
- typescript:
- optional: true
- dependencies:
- '@eslint-community/regexpp': 4.10.0
- '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.3.3)
- '@typescript-eslint/scope-manager': 6.21.0
- '@typescript-eslint/type-utils': 6.21.0(eslint@8.57.0)(typescript@5.3.3)
- '@typescript-eslint/utils': 6.21.0(eslint@8.57.0)(typescript@5.3.3)
- '@typescript-eslint/visitor-keys': 6.21.0
- debug: 4.3.4(supports-color@6.1.0)
- eslint: 8.57.0
- graphemer: 1.4.0
- ignore: 5.3.1
- natural-compare: 1.4.0
- semver: 7.6.0
- ts-api-utils: 1.2.1(typescript@5.3.3)
- typescript: 5.3.3
- transitivePeerDependencies:
- - supports-color
- dev: true
-
- /@typescript-eslint/eslint-plugin@7.1.0(@typescript-eslint/parser@7.1.0)(eslint@8.57.0)(typescript@5.3.3):
- resolution: {integrity: sha512-j6vT/kCulhG5wBmGtstKeiVr1rdXE4nk+DT1k6trYkwlrvW9eOF5ZbgKnd/YR6PcM4uTEXa0h6Fcvf6X7Dxl0w==}
- engines: {node: ^16.0.0 || >=18.0.0}
+ /@typescript-eslint/eslint-plugin@7.5.0(@typescript-eslint/parser@7.5.0)(eslint@8.57.0)(typescript@5.3.3):
+ resolution: {integrity: sha512-HpqNTH8Du34nLxbKgVMGljZMG0rJd2O9ecvr2QLYp+7512ty1j42KnsFwspPXg1Vh8an9YImf6CokUBltisZFQ==}
+ engines: {node: ^18.18.0 || >=20.0.0}
peerDependencies:
'@typescript-eslint/parser': ^7.0.0
eslint: ^8.56.0
@@ -3036,11 +3031,11 @@ packages:
optional: true
dependencies:
'@eslint-community/regexpp': 4.10.0
- '@typescript-eslint/parser': 7.1.0(eslint@8.57.0)(typescript@5.3.3)
- '@typescript-eslint/scope-manager': 7.1.0
- '@typescript-eslint/type-utils': 7.1.0(eslint@8.57.0)(typescript@5.3.3)
- '@typescript-eslint/utils': 7.1.0(eslint@8.57.0)(typescript@5.3.3)
- '@typescript-eslint/visitor-keys': 7.1.0
+ '@typescript-eslint/parser': 7.5.0(eslint@8.57.0)(typescript@5.3.3)
+ '@typescript-eslint/scope-manager': 7.5.0
+ '@typescript-eslint/type-utils': 7.5.0(eslint@8.57.0)(typescript@5.3.3)
+ '@typescript-eslint/utils': 7.5.0(eslint@8.57.0)(typescript@5.3.3)
+ '@typescript-eslint/visitor-keys': 7.5.0
debug: 4.3.4(supports-color@6.1.0)
eslint: 8.57.0
graphemer: 1.4.0
@@ -3053,30 +3048,9 @@ packages:
- supports-color
dev: true
- /@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.3.3):
- resolution: {integrity: sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==}
- engines: {node: ^16.0.0 || >=18.0.0}
- peerDependencies:
- eslint: ^7.0.0 || ^8.0.0
- typescript: '*'
- peerDependenciesMeta:
- typescript:
- optional: true
- dependencies:
- '@typescript-eslint/scope-manager': 6.21.0
- '@typescript-eslint/types': 6.21.0
- '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.3.3)
- '@typescript-eslint/visitor-keys': 6.21.0
- debug: 4.3.4(supports-color@6.1.0)
- eslint: 8.57.0
- typescript: 5.3.3
- transitivePeerDependencies:
- - supports-color
- dev: true
-
- /@typescript-eslint/parser@7.1.0(eslint@8.57.0)(typescript@5.3.3):
- resolution: {integrity: sha512-V1EknKUubZ1gWFjiOZhDSNToOjs63/9O0puCgGS8aDOgpZY326fzFu15QAUjwaXzRZjf/qdsdBrckYdv9YxB8w==}
- engines: {node: ^16.0.0 || >=18.0.0}
+ /@typescript-eslint/parser@7.5.0(eslint@8.57.0)(typescript@5.3.3):
+ resolution: {integrity: sha512-cj+XGhNujfD2/wzR1tabNsidnYRaFfEkcULdcIyVBYcXjBvBKOes+mpMBP7hMpOyk+gBcfXsrg4NBGAStQyxjQ==}
+ engines: {node: ^18.18.0 || >=20.0.0}
peerDependencies:
eslint: ^8.56.0
typescript: '*'
@@ -3084,10 +3058,10 @@ packages:
typescript:
optional: true
dependencies:
- '@typescript-eslint/scope-manager': 7.1.0
- '@typescript-eslint/types': 7.1.0
- '@typescript-eslint/typescript-estree': 7.1.0(typescript@5.3.3)
- '@typescript-eslint/visitor-keys': 7.1.0
+ '@typescript-eslint/scope-manager': 7.5.0
+ '@typescript-eslint/types': 7.5.0
+ '@typescript-eslint/typescript-estree': 7.5.0(typescript@5.3.3)
+ '@typescript-eslint/visitor-keys': 7.5.0
debug: 4.3.4(supports-color@6.1.0)
eslint: 8.57.0
typescript: 5.3.3
@@ -3095,45 +3069,17 @@ packages:
- supports-color
dev: true
- /@typescript-eslint/scope-manager@6.21.0:
- resolution: {integrity: sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==}
- engines: {node: ^16.0.0 || >=18.0.0}
- dependencies:
- '@typescript-eslint/types': 6.21.0
- '@typescript-eslint/visitor-keys': 6.21.0
- dev: true
-
- /@typescript-eslint/scope-manager@7.1.0:
- resolution: {integrity: sha512-6TmN4OJiohHfoOdGZ3huuLhpiUgOGTpgXNUPJgeZOZR3DnIpdSgtt83RS35OYNNXxM4TScVlpVKC9jyQSETR1A==}
- engines: {node: ^16.0.0 || >=18.0.0}
+ /@typescript-eslint/scope-manager@7.5.0:
+ resolution: {integrity: sha512-Z1r7uJY0MDeUlql9XJ6kRVgk/sP11sr3HKXn268HZyqL7i4cEfrdFuSSY/0tUqT37l5zT0tJOsuDP16kio85iA==}
+ engines: {node: ^18.18.0 || >=20.0.0}
dependencies:
- '@typescript-eslint/types': 7.1.0
- '@typescript-eslint/visitor-keys': 7.1.0
+ '@typescript-eslint/types': 7.5.0
+ '@typescript-eslint/visitor-keys': 7.5.0
dev: true
- /@typescript-eslint/type-utils@6.21.0(eslint@8.57.0)(typescript@5.3.3):
- resolution: {integrity: sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==}
- engines: {node: ^16.0.0 || >=18.0.0}
- peerDependencies:
- eslint: ^7.0.0 || ^8.0.0
- typescript: '*'
- peerDependenciesMeta:
- typescript:
- optional: true
- dependencies:
- '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.3.3)
- '@typescript-eslint/utils': 6.21.0(eslint@8.57.0)(typescript@5.3.3)
- debug: 4.3.4(supports-color@6.1.0)
- eslint: 8.57.0
- ts-api-utils: 1.2.1(typescript@5.3.3)
- typescript: 5.3.3
- transitivePeerDependencies:
- - supports-color
- dev: true
-
- /@typescript-eslint/type-utils@7.1.0(eslint@8.57.0)(typescript@5.3.3):
- resolution: {integrity: sha512-UZIhv8G+5b5skkcuhgvxYWHjk7FW7/JP5lPASMEUoliAPwIH/rxoUSQPia2cuOj9AmDZmwUl1usKm85t5VUMew==}
- engines: {node: ^16.0.0 || >=18.0.0}
+ /@typescript-eslint/type-utils@7.5.0(eslint@8.57.0)(typescript@5.3.3):
+ resolution: {integrity: sha512-A021Rj33+G8mx2Dqh0nMO9GyjjIBK3MqgVgZ2qlKf6CJy51wY/lkkFqq3TqqnH34XyAHUkq27IjlUkWlQRpLHw==}
+ engines: {node: ^18.18.0 || >=20.0.0}
peerDependencies:
eslint: ^8.56.0
typescript: '*'
@@ -3141,8 +3087,8 @@ packages:
typescript:
optional: true
dependencies:
- '@typescript-eslint/typescript-estree': 7.1.0(typescript@5.3.3)
- '@typescript-eslint/utils': 7.1.0(eslint@8.57.0)(typescript@5.3.3)
+ '@typescript-eslint/typescript-estree': 7.5.0(typescript@5.3.3)
+ '@typescript-eslint/utils': 7.5.0(eslint@8.57.0)(typescript@5.3.3)
debug: 4.3.4(supports-color@6.1.0)
eslint: 8.57.0
ts-api-utils: 1.2.1(typescript@5.3.3)
@@ -3151,49 +3097,22 @@ packages:
- supports-color
dev: true
- /@typescript-eslint/types@6.21.0:
- resolution: {integrity: sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==}
- engines: {node: ^16.0.0 || >=18.0.0}
- dev: true
-
- /@typescript-eslint/types@7.1.0:
- resolution: {integrity: sha512-qTWjWieJ1tRJkxgZYXx6WUYtWlBc48YRxgY2JN1aGeVpkhmnopq+SUC8UEVGNXIvWH7XyuTjwALfG6bFEgCkQA==}
- engines: {node: ^16.0.0 || >=18.0.0}
- dev: true
-
- /@typescript-eslint/typescript-estree@6.21.0(typescript@5.3.3):
- resolution: {integrity: sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==}
- engines: {node: ^16.0.0 || >=18.0.0}
- peerDependencies:
- typescript: '*'
- peerDependenciesMeta:
- typescript:
- optional: true
- dependencies:
- '@typescript-eslint/types': 6.21.0
- '@typescript-eslint/visitor-keys': 6.21.0
- debug: 4.3.4(supports-color@6.1.0)
- globby: 11.1.0
- is-glob: 4.0.3
- minimatch: 9.0.3
- semver: 7.6.0
- ts-api-utils: 1.2.1(typescript@5.3.3)
- typescript: 5.3.3
- transitivePeerDependencies:
- - supports-color
+ /@typescript-eslint/types@7.5.0:
+ resolution: {integrity: sha512-tv5B4IHeAdhR7uS4+bf8Ov3k793VEVHd45viRRkehIUZxm0WF82VPiLgHzA/Xl4TGPg1ZD49vfxBKFPecD5/mg==}
+ engines: {node: ^18.18.0 || >=20.0.0}
dev: true
- /@typescript-eslint/typescript-estree@7.1.0(typescript@5.3.3):
- resolution: {integrity: sha512-k7MyrbD6E463CBbSpcOnwa8oXRdHzH1WiVzOipK3L5KSML92ZKgUBrTlehdi7PEIMT8k0bQixHUGXggPAlKnOQ==}
- engines: {node: ^16.0.0 || >=18.0.0}
+ /@typescript-eslint/typescript-estree@7.5.0(typescript@5.3.3):
+ resolution: {integrity: sha512-YklQQfe0Rv2PZEueLTUffiQGKQneiIEKKnfIqPIOxgM9lKSZFCjT5Ad4VqRKj/U4+kQE3fa8YQpskViL7WjdPQ==}
+ engines: {node: ^18.18.0 || >=20.0.0}
peerDependencies:
typescript: '*'
peerDependenciesMeta:
typescript:
optional: true
dependencies:
- '@typescript-eslint/types': 7.1.0
- '@typescript-eslint/visitor-keys': 7.1.0
+ '@typescript-eslint/types': 7.5.0
+ '@typescript-eslint/visitor-keys': 7.5.0
debug: 4.3.4(supports-color@6.1.0)
globby: 11.1.0
is-glob: 4.0.3
@@ -3205,37 +3124,18 @@ packages:
- supports-color
dev: true
- /@typescript-eslint/utils@6.21.0(eslint@8.57.0)(typescript@5.3.3):
- resolution: {integrity: sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==}
- engines: {node: ^16.0.0 || >=18.0.0}
- peerDependencies:
- eslint: ^7.0.0 || ^8.0.0
- dependencies:
- '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0)
- '@types/json-schema': 7.0.15
- '@types/semver': 7.5.7
- '@typescript-eslint/scope-manager': 6.21.0
- '@typescript-eslint/types': 6.21.0
- '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.3.3)
- eslint: 8.57.0
- semver: 7.6.0
- transitivePeerDependencies:
- - supports-color
- - typescript
- dev: true
-
- /@typescript-eslint/utils@7.1.0(eslint@8.57.0)(typescript@5.3.3):
- resolution: {integrity: sha512-WUFba6PZC5OCGEmbweGpnNJytJiLG7ZvDBJJoUcX4qZYf1mGZ97mO2Mps6O2efxJcJdRNpqweCistDbZMwIVHw==}
- engines: {node: ^16.0.0 || >=18.0.0}
+ /@typescript-eslint/utils@7.5.0(eslint@8.57.0)(typescript@5.3.3):
+ resolution: {integrity: sha512-3vZl9u0R+/FLQcpy2EHyRGNqAS/ofJ3Ji8aebilfJe+fobK8+LbIFmrHciLVDxjDoONmufDcnVSF38KwMEOjzw==}
+ engines: {node: ^18.18.0 || >=20.0.0}
peerDependencies:
eslint: ^8.56.0
dependencies:
'@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0)
'@types/json-schema': 7.0.15
'@types/semver': 7.5.7
- '@typescript-eslint/scope-manager': 7.1.0
- '@typescript-eslint/types': 7.1.0
- '@typescript-eslint/typescript-estree': 7.1.0(typescript@5.3.3)
+ '@typescript-eslint/scope-manager': 7.5.0
+ '@typescript-eslint/types': 7.5.0
+ '@typescript-eslint/typescript-estree': 7.5.0(typescript@5.3.3)
eslint: 8.57.0
semver: 7.6.0
transitivePeerDependencies:
@@ -3243,19 +3143,11 @@ packages:
- typescript
dev: true
- /@typescript-eslint/visitor-keys@6.21.0:
- resolution: {integrity: sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==}
- engines: {node: ^16.0.0 || >=18.0.0}
- dependencies:
- '@typescript-eslint/types': 6.21.0
- eslint-visitor-keys: 3.4.3
- dev: true
-
- /@typescript-eslint/visitor-keys@7.1.0:
- resolution: {integrity: sha512-FhUqNWluiGNzlvnDZiXad4mZRhtghdoKW6e98GoEOYSu5cND+E39rG5KwJMUzeENwm1ztYBRqof8wMLP+wNPIA==}
- engines: {node: ^16.0.0 || >=18.0.0}
+ /@typescript-eslint/visitor-keys@7.5.0:
+ resolution: {integrity: sha512-mcuHM/QircmA6O7fy6nn2w/3ditQkj+SgtOc8DW3uQ10Yfj42amm2i+6F2K4YAOPNNTmE6iM1ynM6lrSwdendA==}
+ engines: {node: ^18.18.0 || >=20.0.0}
dependencies:
- '@typescript-eslint/types': 7.1.0
+ '@typescript-eslint/types': 7.5.0
eslint-visitor-keys: 3.4.3
dev: true
@@ -5549,6 +5441,10 @@ packages:
resolution: {integrity: sha512-tzBmM2mFSnAq5BuxPSyin6qXb3yMe1wufJN7L7ZPcEWS5S+jI2dhKQEoqHVEcSMMXo/j5lcWpX5jzA6wLSmX6w==}
dev: true
+ /eastasianwidth@0.2.0:
+ resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
+ dev: true
+
/ee-first@1.1.1:
resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==}
dev: true
@@ -5581,6 +5477,10 @@ packages:
resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
dev: true
+ /emoji-regex@9.2.2:
+ resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==}
+ dev: true
+
/emojis-list@3.0.0:
resolution: {integrity: sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==}
engines: {node: '>= 4'}
@@ -5846,14 +5746,15 @@ packages:
eslint: 8.57.0
dev: true
- /eslint-plugin-vue@9.22.0(eslint@8.57.0):
- resolution: {integrity: sha512-7wCXv5zuVnBtZE/74z4yZ0CM8AjH6bk4MQGm7hZjUC2DBppKU5ioeOk5LGSg/s9a1ZJnIsdPLJpXnu1Rc+cVHg==}
+ /eslint-plugin-vue@9.24.0(eslint@8.57.0):
+ resolution: {integrity: sha512-9SkJMvF8NGMT9aQCwFc5rj8Wo1XWSMSHk36i7ZwdI614BU7sIOR28ZjuFPKp8YGymZN12BSEbiSwa7qikp+PBw==}
engines: {node: ^14.17.0 || >=16.0.0}
peerDependencies:
eslint: ^6.2.0 || ^7.0.0 || ^8.0.0
dependencies:
'@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0)
eslint: 8.57.0
+ globals: 13.24.0
natural-compare: 1.4.0
nth-check: 2.1.1
postcss-selector-parser: 6.0.15
@@ -5897,11 +5798,6 @@ packages:
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dev: true
- /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@8.57.0:
resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
@@ -5949,15 +5845,6 @@ packages:
- supports-color
dev: true
- /espree@10.0.1:
- resolution: {integrity: sha512-MWkrWZbJsL2UwnjxTX3gG8FneachS/Mwg7tdGXce011sJd5b0JG54vat5KHnfSBODZ3Wvzd2WnjxyzsRoVv+ww==}
- engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- dependencies:
- acorn: 8.11.3
- acorn-jsx: 5.3.2(acorn@8.11.3)
- eslint-visitor-keys: 4.0.0
- dev: true
-
/espree@6.2.1:
resolution: {integrity: sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==}
engines: {node: '>=6.0.0'}
@@ -6487,6 +6374,14 @@ packages:
resolution: {integrity: sha512-k6GAGDyqLe9JaebCsFCoudPPWfihKu8pylYXRlqP1J7ms39iPoTtk2fviNglIeQEwdh0bQeKJ01ZPyuyQvKzwg==}
dev: true
+ /foreground-child@3.1.1:
+ resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==}
+ engines: {node: '>=14'}
+ dependencies:
+ cross-spawn: 7.0.3
+ signal-exit: 4.1.0
+ dev: true
+
/form-data@4.0.0:
resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==}
engines: {node: '>= 6'}
@@ -6727,6 +6622,18 @@ packages:
is-glob: 4.0.3
dev: true
+ /glob@10.3.12:
+ resolution: {integrity: sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg==}
+ engines: {node: '>=16 || 14 >=14.17'}
+ hasBin: true
+ dependencies:
+ foreground-child: 3.1.1
+ jackspeak: 2.3.6
+ minimatch: 9.0.3
+ minipass: 7.0.4
+ path-scurry: 1.10.2
+ dev: true
+
/glob@7.2.3:
resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
dependencies:
@@ -6797,11 +6704,6 @@ packages:
type-fest: 0.20.2
dev: true
- /globals@14.0.0:
- resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==}
- engines: {node: '>=18'}
- dev: true
-
/globals@15.0.0:
resolution: {integrity: sha512-m/C/yR4mjO6pXDTm9/R/SpYTAIyaUB4EOzcaaMEl7mds7Mshct9GfejiJNQGjHHbdMPey13Kpu4TMbYi9ex1pw==}
engines: {node: '>=18'}
@@ -7828,6 +7730,15 @@ packages:
textextensions: 3.3.0
dev: true
+ /jackspeak@2.3.6:
+ resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==}
+ engines: {node: '>=14'}
+ dependencies:
+ '@isaacs/cliui': 8.0.2
+ optionalDependencies:
+ '@pkgjs/parseargs': 0.11.0
+ dev: true
+
/jiti@1.21.0:
resolution: {integrity: sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==}
hasBin: true
@@ -8321,6 +8232,11 @@ packages:
get-func-name: 2.0.2
dev: true
+ /lru-cache@10.2.0:
+ resolution: {integrity: sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==}
+ engines: {node: 14 || >=16.14}
+ dev: true
+
/lru-cache@5.1.1:
resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==}
dependencies:
@@ -8832,6 +8748,11 @@ packages:
engines: {node: '>=8'}
dev: true
+ /minipass@7.0.4:
+ resolution: {integrity: sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==}
+ engines: {node: '>=16 || 14 >=14.17'}
+ dev: true
+
/minisearch@6.3.0:
resolution: {integrity: sha512-ihFnidEeU8iXzcVHy74dhkxh/dn8Dc08ERl0xwoMMGqp4+LvRSCgicb+zGqWthVokQKvCSxITlh3P08OzdTYCQ==}
dev: true
@@ -9590,6 +9511,14 @@ packages:
resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
dev: true
+ /path-scurry@1.10.2:
+ resolution: {integrity: sha512-7xTavNy5RQXnsjANvVvMkEjvloOinkAjv/Z6Ildz9v2RinZ4SBKTWFOVRbaF8p0vpHnyjV/UwNDdKuUv6M5qcA==}
+ engines: {node: '>=16 || 14 >=14.17'}
+ dependencies:
+ lru-cache: 10.2.0
+ minipass: 7.0.4
+ dev: true
+
/path-to-glob-pattern@1.0.2:
resolution: {integrity: sha512-ryF65N5MBB9XOjE5mMOi+0bMrh1F0ORQmqDSSERvv5zD62Cfc5QC6rK1AR1xuDIG1I091CkNENblbteWy1bXgw==}
dev: true
@@ -10410,6 +10339,14 @@ packages:
glob: 7.2.3
dev: true
+ /rimraf@5.0.5:
+ resolution: {integrity: sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==}
+ engines: {node: '>=14'}
+ hasBin: true
+ dependencies:
+ glob: 10.3.12
+ dev: true
+
/ripemd160@2.0.2:
resolution: {integrity: sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==}
dependencies:
@@ -11177,6 +11114,15 @@ packages:
strip-ansi: 6.0.1
dev: true
+ /string-width@5.1.2:
+ resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==}
+ engines: {node: '>=12'}
+ 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'}
@@ -11936,9 +11882,9 @@ packages:
resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==}
dev: true
- /typescript-eslint@7.1.0(eslint@8.57.0)(typescript@5.3.3):
- resolution: {integrity: sha512-GfAALH4zoqae5mIfHr7WU3BsULHP73hjwF8vCmyTkH3IXHXjqg3JNWwUcd8CwOTLIr4tjRTZQWpToyESPnpOhg==}
- engines: {node: ^16.0.0 || >=18.0.0}
+ /typescript-eslint@7.5.0(eslint@8.57.0)(typescript@5.3.3):
+ resolution: {integrity: sha512-eKhF39LRi2xYvvXh3h3S+mCxC01dZTIZBlka25o39i81VeQG+OZyfC4i2GEDspNclMRdXkg9uGhmvWMhjph2XQ==}
+ engines: {node: ^18.18.0 || >=20.0.0}
peerDependencies:
eslint: ^8.56.0
typescript: '*'
@@ -11946,8 +11892,9 @@ packages:
typescript:
optional: true
dependencies:
- '@typescript-eslint/eslint-plugin': 7.1.0(@typescript-eslint/parser@7.1.0)(eslint@8.57.0)(typescript@5.3.3)
- '@typescript-eslint/parser': 7.1.0(eslint@8.57.0)(typescript@5.3.3)
+ '@typescript-eslint/eslint-plugin': 7.5.0(@typescript-eslint/parser@7.5.0)(eslint@8.57.0)(typescript@5.3.3)
+ '@typescript-eslint/parser': 7.5.0(eslint@8.57.0)(typescript@5.3.3)
+ '@typescript-eslint/utils': 7.5.0(eslint@8.57.0)(typescript@5.3.3)
eslint: 8.57.0
typescript: 5.3.3
transitivePeerDependencies:
@@ -12876,6 +12823,24 @@ packages:
strip-ansi: 5.2.0
dev: true
+ /wrap-ansi@7.0.0:
+ resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
+ engines: {node: '>=10'}
+ 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'}
+ 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'}
diff --git a/scripts/aliases.ts b/scripts/aliases.ts
index c09180414..fb1ea3ea7 100644
--- a/scripts/aliases.ts
+++ b/scripts/aliases.ts
@@ -2,12 +2,12 @@ import { readdirSync, statSync } from 'node:fs'
import { resolve } from 'node:path'
import { fileURLToPath } from 'node:url'
-const resolveEntryForPkg = p =>
+const resolveEntryForPkg = (p: string) =>
resolve(fileURLToPath(import.meta.url), `../../packages/${p}/src/index.ts`)
const dirs = readdirSync(new URL('../packages', import.meta.url))
-const entries = {
+const entries: Record = {
'vue-i18n': resolveEntryForPkg('vue-i18n'),
'vue-i18n-bridge': resolveEntryForPkg('vue-i18n-bridge'),
'petite-vue-i18n': resolveEntryForPkg('petite-vue-i18n')
diff --git a/scripts/build.ts b/scripts/build.ts
index 1306f3d18..dfe806ad2 100644
--- a/scripts/build.ts
+++ b/scripts/build.ts
@@ -14,13 +14,13 @@ pnpm build core --formats cjs
```
*/
-import { promisify } from 'util'
-import { promises as fs } from 'fs'
+import { promisify } from 'node:util'
+import { promises as fs } from 'node:fs'
import path from 'pathe'
import pc from 'picocolors'
import execa from 'execa'
-import os from 'os'
-import { gzip as _gzip } from 'zlib'
+import os from 'node:os'
+import { gzip as _gzip } from 'node:zlib'
import { compress } from 'brotli'
import {
targets as allTargets,
@@ -30,10 +30,9 @@ import {
} from './utils'
import minimist from 'minimist'
import { Extractor, ExtractorConfig } from '@microsoft/api-extractor'
-import { default as _rimraf } from 'rimraf'
+import { rimrafSync } from 'rimraf'
const gzip = promisify(_gzip)
-const rimraf = promisify(_rimraf)
async function main() {
const args = minimist(process.argv.slice(2))
@@ -53,10 +52,7 @@ async function main() {
async function run() {
if (isRelease) {
// remove build cache for release builds to avoid outdated enum values
- // @ts-ignore
- await rimraf(
- path.resolve(path.dirname('.'), './node_modules/.rts2_cache')
- )
+ rimrafSync(path.resolve(path.dirname('.'), './node_modules/.rts2_cache'))
}
if (!targets.length) {
targets = await allTargets()
@@ -85,6 +81,7 @@ async function main() {
ret.push(p)
if (maxConcurrency <= source.length) {
+ // @ts-expect-error
const e = p.then(() => executing.splice(executing.indexOf(e), 1))
executing.push(e)
if (executing.length >= maxConcurrency) {
@@ -115,8 +112,7 @@ async function main() {
// if building a specific format, do not remove dist.
if (!formats) {
- // @ts-ignore
- await rimraf(`${pkgDir}/dist`)
+ rimrafSync(`${pkgDir}/dist`)
}
const env =
@@ -197,7 +193,7 @@ async function main() {
)
} catch (e) {
console.error(
- `Failed in opening Vue type definition file with error code: ${e.code}`
+ `Failed in opening Vue type definition file with error code: ${(e as NodeJS.ErrnoException).code}`
)
process.exitCode = 1
}
@@ -220,8 +216,7 @@ async function main() {
)
}
- // @ts-ignore
- await rimraf(`${pkgDir}/dist/packages`)
+ rimrafSync(`${pkgDir}/dist/packages`)
}
}
diff --git a/scripts/dev.ts b/scripts/dev.ts
index c9e8af2b6..ad5b87916 100644
--- a/scripts/dev.ts
+++ b/scripts/dev.ts
@@ -19,6 +19,8 @@ __DEV__=false pnpm run dev
import execa from 'execa'
import { fuzzyMatchTarget } from './utils'
import minimist from 'minimist'
+
+// eslint-disable-next-line @typescript-eslint/no-floating-promises
;(async () => {
const args = minimist(process.argv.slice(2))
const target = args._.length
@@ -29,6 +31,7 @@ import minimist from 'minimist'
const { stdout } = await execa('git', ['rev-parse', 'HEAD'])
const commit = stdout.slice(0, 7)
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
execa(
'rollup',
[
diff --git a/scripts/fixpack.ts b/scripts/fixpack.ts
index 819b0f831..0899fcf1e 100644
--- a/scripts/fixpack.ts
+++ b/scripts/fixpack.ts
@@ -1,8 +1,10 @@
import pc from 'picocolors'
+// @ts-ignore
import fixpack from 'fixpack'
import { resolve, dirname } from 'pathe'
import rc from 'rc'
import { targets, readJson } from './utils'
+// eslint-disable-next-line @typescript-eslint/no-floating-promises
;(async () => {
const allTargets = await targets()
const defaultConfig = await readJson(
diff --git a/scripts/postprocess.ts b/scripts/postprocess.ts
index b1aace5ff..132a4044d 100644
--- a/scripts/postprocess.ts
+++ b/scripts/postprocess.ts
@@ -1,5 +1,5 @@
import path from 'pathe'
-import { promises as fs } from 'fs'
+import { promises as fs } from 'node:fs'
function replaceWithCompositionApi(source: string, target: string) {
return source.replace(
diff --git a/scripts/utils.ts b/scripts/utils.ts
index 2296303a6..7535f3e64 100644
--- a/scripts/utils.ts
+++ b/scripts/utils.ts
@@ -1,4 +1,4 @@
-import { promises as fs } from 'fs'
+import { promises as fs } from 'node:fs'
import { resolve, dirname } from 'pathe'
import pc from 'picocolors'
@@ -54,7 +54,7 @@ export const fuzzyMatchTarget = async (
}
}
-export async function checkSizeDistFiles(target) {
+export async function checkSizeDistFiles(target: string) {
const dirs = await fs.readdir(`${target}/dist`)
return dirs.filter(file => /prod.[cm]js$/.test(file))
}
diff --git a/scripts/vitest.unit.globalSetup.ts b/scripts/vitest.unit.globalSetup.ts
index d3d5a4bda..43b5102fd 100644
--- a/scripts/vitest.unit.globalSetup.ts
+++ b/scripts/vitest.unit.globalSetup.ts
@@ -1,3 +1,3 @@
-export async function setup() {
+export function setup() {
console.log('ICU version:', process.versions.icu)
}
diff --git a/shim.d.ts b/shim.d.ts
index 5993e11c0..6c6d87747 100644
--- a/shim.d.ts
+++ b/shim.d.ts
@@ -10,6 +10,7 @@ declare global {
interface ProcessEnv {
E2E_BROWSER?: 'chromium' | 'firefox' | 'webkit'
CI?: string
+ GITHUB_ACTIONS?: string
}
}
}
diff --git a/tsconfig.json b/tsconfig.json
index 42b97a816..1c016710e 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -52,6 +52,7 @@
"esModuleInterop": true, /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */
// "preserveSymlinks": true, /* Do not resolve the real path of symlinks. */
// "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */
+ "resolveJsonModule": true, /* Include modules imported with '.json' extension. */
/* Source Map Options */
// "sourceRoot": "", /* Specify the location where debugger should locate TypeScript files instead of source locations. */
@@ -72,10 +73,12 @@
"packages/global.d.ts",
"packages/*/src",
"packages/*/test",
+ "packages/*/*.config.ts",
"test-dts",
- "scripts/vitest.*.ts",
- "e2e/**/*.ts",
- "shim.d.ts"
+ "scripts",
+ "e2e",
+ "shim.d.ts",
+ "*.config.ts"
],
"exclude": ["node_modules"]
}
diff --git a/vitest.config.ts b/vitest.config.ts
index bb87f6295..e85a05eb6 100644
--- a/vitest.config.ts
+++ b/vitest.config.ts
@@ -1,12 +1,12 @@
import { defineConfig, UserConfig } from 'vitest/config'
-import pkg from './package.json'
+import { version } from './package.json'
import { entries } from './scripts/aliases'
export default defineConfig({
define: {
__DEV__: true,
__TEST__: true,
- __VERSION__: JSON.stringify(pkg.version),
+ __VERSION__: JSON.stringify(version),
__BROWSER__: false,
__GLOBAL__: false,
__RUNTIME__: false,
@@ -27,6 +27,6 @@ export default defineConfig({
test: {
globals: true,
// disable threads on GH actions to speed it up
- threads: !process.env.GITHUB_ACTIONS
+ pool: process.env.GITHUB_ACTIONS ? undefined : 'threads'
}
}) as UserConfig