fix(vite): update vitest and use parseCLI (#21890)

This commit is contained in:
Katerina Skroumpelou 2024-02-22 18:03:08 +02:00 committed by GitHub
parent 1a7e812611
commit 00dae6a811
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
14 changed files with 128 additions and 203 deletions

View File

@ -20,6 +20,7 @@
"type": "string",
"description": "Directory to write coverage report to."
},
"mode": { "type": "string", "description": "Mode for Vite." },
"testFiles": {
"aliases": ["testFile"],
"type": "array",

View File

@ -290,7 +290,7 @@
"use-sync-external-store": "^1.2.0",
"verdaccio": "^5.0.4",
"vite": "5.0.8",
"vitest": "^1.0.4",
"vitest": "^1.3.1",
"webpack": "5.88.0",
"webpack-dev-server": "^4.9.3",
"webpack-merge": "^5.8.0",

View File

@ -48,7 +48,7 @@ describe('app', () => {
).toMatchSnapshot();
expect(tree.read('my-app/tsconfig.json', 'utf-8')).toMatchSnapshot();
const packageJson = readJson(tree, 'package.json');
expect(packageJson.devDependencies['vitest']).toEqual('^1.0.4');
expect(packageJson.devDependencies['vitest']).toEqual('^1.3.1');
});
it('should configure tsconfig and project.json correctly', () => {

View File

@ -53,6 +53,27 @@
}
},
"packageJsonUpdates": {
"18.1.0": {
"version": "18.1.0-beta.1",
"packages": {
"vitest": {
"version": "^1.3.1",
"alwaysAddToPackageJson": false
},
"@vitest/coverage-v8": {
"version": "^1.3.1",
"alwaysAddToPackageJson": false
},
"@vitest/ui": {
"version": "^1.3.1",
"alwaysAddToPackageJson": false
},
"@vitest/coverage-istanbul": {
"version": "^1.3.1",
"alwaysAddToPackageJson": false
}
}
},
"17.3.0": {
"version": "17.3.0-beta.0",
"packages": {

View File

@ -38,7 +38,7 @@
},
"peerDependencies": {
"vite": "^5.0.0",
"vitest": "^1.0.0"
"vitest": "^1.3.1"
},
"publishConfig": {
"access": "public"

View File

@ -7,13 +7,15 @@ import {
import { VitestExecutorOptions } from '../schema';
import { normalizeViteConfigFilePath } from '../../../utils/options-utils';
import { relative } from 'path';
import { loadViteDynamicImport } from '../../../utils/executor-utils';
import {
loadViteDynamicImport,
loadVitestDynamicImport,
} from '../../../utils/executor-utils';
export async function getOptions(
options: VitestExecutorOptions,
context: ExecutorContext,
projectRoot: string,
extraArgs: Record<string, any>
projectRoot: string
) {
// Allows ESM to be required in CJS modules. Vite will be published as ESM in the future.
const { loadConfigFromFile, mergeConfig } = await loadViteDynamicImport();
@ -38,7 +40,7 @@ export async function getOptions(
const resolved = await loadConfigFromFile(
{
mode: extraArgs?.mode ?? 'production',
mode: options?.mode ?? 'production',
command: 'serve',
},
viteConfigPath
@ -59,7 +61,12 @@ export async function getOptions(
? process.cwd()
: relative(context.cwd, joinPathFragments(context.root, projectRoot));
const normalizedExtraArgs = normalizeArgs(extraArgs);
const { parseCLI } = await loadVitestDynamicImport();
const normalizedExtraArgs = parseCLI([
'vitest',
...getOptionsAsArgv(options),
]);
const settings = {
...normalizedExtraArgs,
@ -72,42 +79,18 @@ export async function getOptions(
return mergeConfig(resolved?.config?.['test'] ?? {}, settings);
}
export async function getExtraArgs(
options: VitestExecutorOptions
): Promise<Record<string, any>> {
// support passing extra args to vite cli
const extraArgs: Record<string, any> = {};
for (const key of Object.keys(options)) {
extraArgs[key] = options[key];
export function getOptionsAsArgv(obj: Record<string, any>): string[] {
const argv: string[] = [];
for (const [key, value] of Object.entries(obj)) {
if (Array.isArray(value)) {
value.forEach((item) => argv.push(`--${key}=${item}`));
} else if (typeof value === 'object' && value !== null) {
argv.push(`--${key}='${JSON.stringify(value)}'`);
} else {
argv.push(`--${key}=${value}`);
}
}
return extraArgs;
}
// normalizes some args that were previously normalized by `startVitest` until this is fixed
// https://github.com/vitest-dev/vitest/pull/5126/files#diff-49ef635be88fe607c8682e81ab56b061ba9aafd5c94a5690a70b90a54604cd24L40-L62
function normalizeArgs(extraArgs: Record<string, any>) {
const args = { ...extraArgs };
if (typeof args.coverage === 'boolean') {
args.coverage = { enabled: args.coverage };
}
// running "vitest --browser", assumes browser name is set in the config
if (typeof args.browser === 'boolean') {
args.browser = { enabled: args.browser } as any;
}
// running "vitest --browser=chrome"
if (typeof args.browser === 'string') {
args.browser = { enabled: true, name: args.browser };
}
if (typeof args.typecheck === 'boolean') {
args.typecheck = { enabled: true };
}
if (typeof args.typecheck?.only === 'boolean') {
args.typecheck ??= {};
args.typecheck.only = true;
args.typecheck.enabled = true;
}
return args;
return argv;
}

View File

@ -3,4 +3,5 @@ export interface VitestExecutorOptions {
reportsDirectory?: string;
testFiles?: string[];
watch?: boolean;
mode?: string;
}

View File

@ -17,6 +17,10 @@
"type": "string",
"description": "Directory to write coverage report to."
},
"mode": {
"type": "string",
"description": "Mode for Vite."
},
"testFiles": {
"aliases": ["testFile"],
"type": "array",

View File

@ -3,7 +3,8 @@ import { VitestExecutorOptions } from './schema';
import { resolve } from 'path';
import { registerTsConfigPaths } from '@nx/js/src/internal';
import { NxReporter } from './lib/nx-reporter';
import { getExtraArgs, getOptions } from './lib/utils';
import { getOptions } from './lib/utils';
import { loadVitestDynamicImport } from '../../utils/executor-utils';
export async function* vitestExecutor(
options: VitestExecutorOptions,
@ -16,13 +17,10 @@ export async function* vitestExecutor(
process.env.VITE_CJS_IGNORE_WARNING = 'true';
// Allows ESM to be required in CJS modules. Vite will be published as ESM in the future.
const { startVitest } = await (Function(
'return import("vitest/node")'
)() as Promise<typeof import('vitest/node')>);
const { startVitest } = await loadVitestDynamicImport();
const extraArgs = await getExtraArgs(options);
const resolvedOptions =
(await getOptions(options, context, projectRoot, extraArgs)) ?? {};
(await getOptions(options, context, projectRoot)) ?? {};
const nxReporter = new NxReporter(resolvedOptions['watch']);
if (resolvedOptions['reporters'] === undefined) {

View File

@ -8,10 +8,10 @@ exports[`@nx/vite:init dependencies for package.json should add required package
"devDependencies": {
"@nx/vite": "0.0.1",
"@nx/web": "0.0.1",
"@vitest/ui": "^1.0.4",
"@vitest/ui": "^1.3.1",
"existing": "1.0.0",
"vite": "~5.0.0",
"vitest": "^1.0.4",
"vitest": "^1.3.1",
},
"name": "@proj/source",
}

View File

@ -61,3 +61,9 @@ export function createBuildableTsConfig(
export function loadViteDynamicImport() {
return Function('return import("vite")')() as Promise<typeof import('vite')>;
}
export function loadVitestDynamicImport() {
return Function('return import("vitest/node")')() as Promise<
typeof import('vitest/node')
>;
}

View File

@ -1,6 +1,6 @@
export const nxVersion = require('../../package.json').version;
export const viteVersion = '~5.0.0';
export const vitestVersion = '^1.0.4';
export const vitestVersion = '^1.3.1';
export const vitePluginReactVersion = '^4.2.0';
export const vitePluginReactSwcVersion = '^3.5.0';
export const jsdomVersion = '~22.1.0';

View File

@ -186,7 +186,7 @@ exports[`lib should add vue, vite and vitest to package.json 1`] = `
"@typescript-eslint/parser": "^6.13.2",
"@vitejs/plugin-vue": "^4.5.0",
"@vitest/coverage-v8": "^1.0.4",
"@vitest/ui": "^1.0.4",
"@vitest/ui": "^1.3.1",
"@vue/eslint-config-prettier": "7.1.0",
"@vue/eslint-config-typescript": "^11.0.3",
"@vue/test-utils": "^2.4.1",
@ -197,7 +197,7 @@ exports[`lib should add vue, vite and vitest to package.json 1`] = `
"prettier": "^2.6.2",
"typescript": "~5.3.2",
"vite": "~5.0.0",
"vitest": "^1.0.4",
"vitest": "^1.3.1",
"vue-tsc": "^1.8.8",
},
"name": "@proj/source",

207
pnpm-lock.yaml generated
View File

@ -1,9 +1,5 @@
lockfileVersion: '6.0'
settings:
autoInstallPeers: true
excludeLinksFromLockfile: false
overrides:
minimist: ^1.2.6
underscore: ^1.12.1
@ -250,7 +246,7 @@ devDependencies:
version: 9.1.6(@nestjs/common@9.1.6)(@nestjs/core@9.1.6)
'@nestjs/schematics':
specifier: ^9.1.0
version: 9.1.0(typescript@5.3.3)
version: 9.1.0(chokidar@3.5.3)(typescript@4.9.4)
'@nestjs/swagger':
specifier: ^6.0.0
version: 6.1.3(@nestjs/common@9.1.6)(@nestjs/core@9.1.6)(reflect-metadata@0.1.14)
@ -310,7 +306,7 @@ devDependencies:
version: 18.1.0-beta.1(@swc-node/register@1.8.0)(@swc/core@1.3.86)(@types/node@18.19.8)(cypress@13.0.0)(js-yaml@4.1.0)(nx@18.1.0-beta.1)(typescript@5.3.3)(verdaccio@5.15.4)
'@nx/vite':
specifier: 18.1.0-beta.1
version: 18.1.0-beta.1(@swc-node/register@1.8.0)(@swc/core@1.3.86)(@types/node@18.19.8)(nx@18.1.0-beta.1)(typescript@5.3.3)(verdaccio@5.15.4)(vite@5.0.8)(vitest@1.0.4)
version: 18.1.0-beta.1(@swc-node/register@1.8.0)(@swc/core@1.3.86)(@types/node@18.19.8)(nx@18.1.0-beta.1)(typescript@5.3.3)(verdaccio@5.15.4)(vite@5.0.8)(vitest@1.3.1)
'@nx/web':
specifier: 18.1.0-beta.1
version: 18.1.0-beta.1(@swc-node/register@1.8.0)(@swc/core@1.3.86)(@types/node@18.19.8)(nx@18.1.0-beta.1)(typescript@5.3.3)(verdaccio@5.15.4)
@ -945,8 +941,8 @@ devDependencies:
specifier: 5.0.8
version: 5.0.8(@types/node@18.19.8)(less@4.1.3)(sass@1.55.0)(stylus@0.59.0)
vitest:
specifier: ^1.0.4
version: 1.0.4(@types/node@18.19.8)(less@4.1.3)(sass@1.55.0)(stylus@0.59.0)
specifier: ^1.3.1
version: 1.3.1(@types/node@18.19.8)(less@4.1.3)(sass@1.55.0)(stylus@0.59.0)
webpack:
specifier: 5.88.0
version: 5.88.0(@swc/core@1.3.86)(esbuild@0.19.5)
@ -6201,7 +6197,7 @@ packages:
jest-validate: 29.7.0
jest-watcher: 29.5.0
micromatch: 4.0.5
pretty-format: 29.4.3
pretty-format: 29.7.0
slash: 3.0.0
strip-ansi: 6.0.1
transitivePeerDependencies:
@ -6977,20 +6973,6 @@ packages:
- chokidar
dev: true
/@nestjs/schematics@9.1.0(typescript@5.3.3):
resolution: {integrity: sha512-/7CyMTnPJSK9/xD9CkCqwuHPOlHVlLC2RDnbdCJ7mIO07SdbBbY14msTqtYW9VRQtsjZPLh1GTChf7ryJUImwA==}
peerDependencies:
typescript: '>=4.3.5'
dependencies:
'@angular-devkit/core': 15.2.4(chokidar@3.5.3)
'@angular-devkit/schematics': 15.2.4(chokidar@3.5.3)
jsonc-parser: 3.2.0
pluralize: 8.0.0
typescript: 5.3.3
transitivePeerDependencies:
- chokidar
dev: true
/@nestjs/swagger@6.1.3(@nestjs/common@9.1.6)(@nestjs/core@9.1.6)(reflect-metadata@0.1.14):
resolution: {integrity: sha512-H9C/yRgLFb5QrAt6iGrYmIX9X7Q0zXkgZaTNUATljUBra+RCWrEUbLHBcGjTAOtcIyGV/vmyCLv68YSVcZoE0Q==}
peerDependencies:
@ -7612,10 +7594,10 @@ packages:
- debug
dev: true
/@nrwl/vite@18.1.0-beta.1(@swc-node/register@1.8.0)(@swc/core@1.3.86)(@types/node@18.19.8)(nx@18.1.0-beta.1)(typescript@5.3.3)(verdaccio@5.15.4)(vite@5.0.8)(vitest@1.0.4):
/@nrwl/vite@18.1.0-beta.1(@swc-node/register@1.8.0)(@swc/core@1.3.86)(@types/node@18.19.8)(nx@18.1.0-beta.1)(typescript@5.3.3)(verdaccio@5.15.4)(vite@5.0.8)(vitest@1.3.1):
resolution: {integrity: sha512-AECmGPhW1lTDIAuRFgGCEHxjaKrTCs3R7LL2l/J3zL+d56d/XDnZwB3o5E5xvCwoHWY0vGoAjDtCF2GHv1/oiA==}
dependencies:
'@nx/vite': 18.1.0-beta.1(@swc-node/register@1.8.0)(@swc/core@1.3.86)(@types/node@18.19.8)(nx@18.1.0-beta.1)(typescript@5.3.3)(verdaccio@5.15.4)(vite@5.0.8)(vitest@1.0.4)
'@nx/vite': 18.1.0-beta.1(@swc-node/register@1.8.0)(@swc/core@1.3.86)(@types/node@18.19.8)(nx@18.1.0-beta.1)(typescript@5.3.3)(verdaccio@5.15.4)(vite@5.0.8)(vitest@1.3.1)
transitivePeerDependencies:
- '@babel/traverse'
- '@swc-node/register'
@ -7901,8 +7883,8 @@ packages:
ufo: 1.3.2
unenv: 1.9.0
unplugin: 1.6.0
vite: 5.0.12(@types/node@18.19.8)(less@4.1.3)(sass@1.55.0)(stylus@0.59.0)
vite-node: 1.2.2(@types/node@18.19.8)(less@4.1.3)(sass@1.55.0)(stylus@0.59.0)
vite: 5.0.12(@types/node@18.19.8)(less@4.2.0)(sass@1.70.0)(stylus@0.59.0)(terser@5.27.0)
vite-node: 1.3.1(@types/node@18.19.8)(less@4.1.3)(sass@1.55.0)(stylus@0.59.0)
vite-plugin-checker: 0.6.4(eslint@8.48.0)(typescript@5.3.3)(vite@5.0.12)
vue: 3.4.15(typescript@5.3.3)
vue-bundle-renderer: 2.0.0
@ -8635,13 +8617,13 @@ packages:
- verdaccio
dev: true
/@nx/vite@18.1.0-beta.1(@swc-node/register@1.8.0)(@swc/core@1.3.86)(@types/node@18.19.8)(nx@18.1.0-beta.1)(typescript@5.3.3)(verdaccio@5.15.4)(vite@5.0.8)(vitest@1.0.4):
/@nx/vite@18.1.0-beta.1(@swc-node/register@1.8.0)(@swc/core@1.3.86)(@types/node@18.19.8)(nx@18.1.0-beta.1)(typescript@5.3.3)(verdaccio@5.15.4)(vite@5.0.8)(vitest@1.3.1):
resolution: {integrity: sha512-/6NGrYBVwTIxcVijZP5wAqH4ZeV+1bvOex5fXePj5nBHKEtGbP82TS43O0x4yDAXo6gP6ugLKrSU5FwhXrDWDw==}
peerDependencies:
vite: ^5.0.0
vitest: ^1.0.0
dependencies:
'@nrwl/vite': 18.1.0-beta.1(@swc-node/register@1.8.0)(@swc/core@1.3.86)(@types/node@18.19.8)(nx@18.1.0-beta.1)(typescript@5.3.3)(verdaccio@5.15.4)(vite@5.0.8)(vitest@1.0.4)
'@nrwl/vite': 18.1.0-beta.1(@swc-node/register@1.8.0)(@swc/core@1.3.86)(@types/node@18.19.8)(nx@18.1.0-beta.1)(typescript@5.3.3)(verdaccio@5.15.4)(vite@5.0.8)(vitest@1.3.1)
'@nx/devkit': 18.1.0-beta.1(nx@18.1.0-beta.1)
'@nx/js': 18.1.0-beta.1(@swc-node/register@1.8.0)(@swc/core@1.3.86)(@types/node@18.19.8)(nx@18.1.0-beta.1)(typescript@5.3.3)(verdaccio@5.15.4)
'@phenomnomnominal/tsquery': 5.0.1(typescript@5.3.3)
@ -8649,7 +8631,7 @@ packages:
enquirer: 2.3.6
tsconfig-paths: 4.1.2
vite: 5.0.8(@types/node@18.19.8)(less@4.1.3)(sass@1.55.0)(stylus@0.59.0)
vitest: 1.0.4(@types/node@18.19.8)(less@4.1.3)(sass@1.55.0)(stylus@0.59.0)
vitest: 1.3.1(@types/node@18.19.8)(less@4.1.3)(sass@1.55.0)(stylus@0.59.0)
transitivePeerDependencies:
- '@babel/traverse'
- '@swc-node/register'
@ -13464,7 +13446,7 @@ packages:
'@babel/core': 7.23.9
'@babel/plugin-transform-typescript': 7.23.6(@babel/core@7.23.9)
'@vue/babel-plugin-jsx': 1.2.1(@babel/core@7.23.9)
vite: 5.0.12(@types/node@18.19.8)(less@4.1.3)(sass@1.55.0)(stylus@0.59.0)
vite: 5.0.12(@types/node@18.19.8)(less@4.2.0)(sass@1.70.0)(stylus@0.59.0)(terser@5.27.0)
vue: 3.4.15(typescript@5.3.3)
transitivePeerDependencies:
- supports-color
@ -13477,44 +13459,45 @@ packages:
vite: ^5.0.0
vue: ^3.2.25
dependencies:
vite: 5.0.12(@types/node@18.19.8)(less@4.1.3)(sass@1.55.0)(stylus@0.59.0)
vite: 5.0.12(@types/node@18.19.8)(less@4.2.0)(sass@1.70.0)(stylus@0.59.0)(terser@5.27.0)
vue: 3.4.15(typescript@5.3.3)
dev: true
/@vitest/expect@1.0.4:
resolution: {integrity: sha512-/NRN9N88qjg3dkhmFcCBwhn/Ie4h064pY3iv7WLRsDJW7dXnEgeoa8W9zy7gIPluhz6CkgqiB3HmpIXgmEY5dQ==}
/@vitest/expect@1.3.1:
resolution: {integrity: sha512-xofQFwIzfdmLLlHa6ag0dPV8YsnKOCP1KdAeVVh34vSjN2dcUiXYCD9htu/9eM7t8Xln4v03U9HLxLpPlsXdZw==}
dependencies:
'@vitest/spy': 1.0.4
'@vitest/utils': 1.0.4
'@vitest/spy': 1.3.1
'@vitest/utils': 1.3.1
chai: 4.3.10
dev: true
/@vitest/runner@1.0.4:
resolution: {integrity: sha512-rhOQ9FZTEkV41JWXozFM8YgOqaG9zA7QXbhg5gy6mFOVqh4PcupirIJ+wN7QjeJt8S8nJRYuZH1OjJjsbxAXTQ==}
/@vitest/runner@1.3.1:
resolution: {integrity: sha512-5FzF9c3jG/z5bgCnjr8j9LNq/9OxV2uEBAITOXfoe3rdZJTdO7jzThth7FXv/6b+kdY65tpRQB7WaKhNZwX+Kg==}
dependencies:
'@vitest/utils': 1.0.4
'@vitest/utils': 1.3.1
p-limit: 5.0.0
pathe: 1.1.2
dev: true
/@vitest/snapshot@1.0.4:
resolution: {integrity: sha512-vkfXUrNyNRA/Gzsp2lpyJxh94vU2OHT1amoD6WuvUAA12n32xeVZQ0KjjQIf8F6u7bcq2A2k969fMVxEsxeKYA==}
/@vitest/snapshot@1.3.1:
resolution: {integrity: sha512-EF++BZbt6RZmOlE3SuTPu/NfwBF6q4ABS37HHXzs2LUVPBLx2QoY/K0fKpRChSo8eLiuxcbCVfqKgx/dplCDuQ==}
dependencies:
magic-string: 0.30.7
pathe: 1.1.2
pretty-format: 29.7.0
dev: true
/@vitest/spy@1.0.4:
resolution: {integrity: sha512-9ojTFRL1AJVh0hvfzAQpm0QS6xIS+1HFIw94kl/1ucTfGCaj1LV/iuJU4Y6cdR03EzPDygxTHwE1JOm+5RCcvA==}
/@vitest/spy@1.3.1:
resolution: {integrity: sha512-xAcW+S099ylC9VLU7eZfdT9myV67Nor9w9zhf0mGCYJSO+zM2839tOeROTdikOi/8Qeusffvxb/MyBSOja1Uig==}
dependencies:
tinyspy: 2.2.0
dev: true
/@vitest/utils@1.0.4:
resolution: {integrity: sha512-gsswWDXxtt0QvtK/y/LWukN7sGMYmnCcv1qv05CsY6cU/Y1zpGX1QuvLs+GO1inczpE6Owixeel3ShkjhYtGfA==}
/@vitest/utils@1.3.1:
resolution: {integrity: sha512-d3Waie/299qqRyHTm2DjADeTaNdNSVsnwHPWrs20JMpjh6eiVq7ggggweO8rc4arhf6rRkWuHKwvxGvejUXZZQ==}
dependencies:
diff-sequences: 29.6.3
estree-walker: 3.0.3
loupe: 2.3.7
pretty-format: 29.7.0
dev: true
@ -14014,7 +13997,7 @@ packages:
resolution: {integrity: sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==}
dependencies:
acorn: 8.11.3
acorn-walk: 8.3.1
acorn-walk: 8.3.2
dev: true
/acorn-import-assertions@1.9.0(acorn@8.11.3):
@ -14064,8 +14047,8 @@ packages:
resolution: {integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==}
engines: {node: '>=0.4.0'}
/acorn-walk@8.3.1:
resolution: {integrity: sha512-TgUZgYvqZprrl7YldZNoa9OciCAyZR+Ejm9eXzKCmjsF5IKp/wgQ7Z/ZpjpGTIUPwrHQIcYeI8qDh4PsEwxMbw==}
/acorn-walk@8.3.2:
resolution: {integrity: sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==}
engines: {node: '>=0.4.0'}
dev: true
@ -15729,7 +15712,7 @@ packages:
check-error: 1.0.3
deep-eql: 4.1.3
get-func-name: 2.0.2
loupe: 2.3.6
loupe: 2.3.7
pathval: 1.1.1
type-detect: 4.0.8
dev: true
@ -21801,7 +21784,7 @@ packages:
jest-snapshot: 29.5.0
jest-util: 29.7.0
p-limit: 3.1.0
pretty-format: 29.5.0
pretty-format: 29.7.0
pure-rand: 6.0.1
slash: 3.0.0
stack-utils: 2.0.5
@ -22329,7 +22312,7 @@ packages:
chalk: 4.1.2
jest-get-type: 29.4.3
leven: 3.1.0
pretty-format: 29.5.0
pretty-format: 29.7.0
dev: true
/jest-validate@29.7.0:
@ -23209,13 +23192,6 @@ packages:
dependencies:
js-tokens: 4.0.0
/loupe@2.3.6:
resolution: {integrity: sha512-RaPMZKiMy8/JruncMU5Bt6na1eftNoo++R4Y+N2FrxkDVTrGvcyzFTsaGif4QTeKESheMGegbhw6iUAq+5A8zA==}
deprecated: Please upgrade to 2.3.7 which fixes GHSA-4q6p-r6v2-jvc5
dependencies:
get-func-name: 2.0.2
dev: true
/loupe@2.3.7:
resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==}
dependencies:
@ -26141,10 +26117,6 @@ packages:
engines: {node: '>=12'}
dev: true
/pathe@1.1.1:
resolution: {integrity: sha512-d+RQGp0MAYTIaDBIMmOfMwz3E+LOZnxx1HZd5R18mmCZY0QBlK0LDZfPc8FW8Ed2DlvsuE6PRjroDY+wg4+j/Q==}
dev: true
/pathe@1.1.2:
resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==}
dev: true
@ -30161,10 +30133,6 @@ packages:
engines: {node: '>= 0.8'}
dev: true
/std-env@3.6.0:
resolution: {integrity: sha512-aFZ19IgVmhdB2uX599ve2kE6BIE3YMnQ6Gp6BURhW/oIzpXGKr878TQfAQZn1+i0Flcc/UKUy1gOlcfaUBCryg==}
dev: true
/std-env@3.7.0:
resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==}
dev: true
@ -31075,8 +31043,8 @@ packages:
resolution: {integrity: sha512-65NKvSuAVDP/n4CqH+a9w2kTlLReS9vhsAP06MWx+/89nMinJyB2icyl58RIcqCmIggpojIGeuJGhjU1aGMBSg==}
dev: true
/tinypool@0.8.1:
resolution: {integrity: sha512-zBTCK0cCgRROxvs9c0CGK838sPkeokNGdQVUUwHAbynHFlmyJYj825f/oRs528HaIJ97lo0pLIlDUzwN+IorWg==}
/tinypool@0.8.2:
resolution: {integrity: sha512-SUszKYe5wgsxnNOVlBYO6IC+8VGWdVGZWAqUxp3UErNBtptZvWbwyUOyzNL59zigz2rCA92QiL3wvG+JDSdJdQ==}
engines: {node: '>=14.0.0'}
dev: true
@ -32444,29 +32412,8 @@ packages:
- terser
dev: true
/vite-node@1.0.4(@types/node@18.19.8)(less@4.1.3)(sass@1.55.0)(stylus@0.59.0):
resolution: {integrity: sha512-9xQQtHdsz5Qn8hqbV7UKqkm8YkJhzT/zr41Dmt5N7AlD8hJXw/Z7y0QiD5I8lnTthV9Rvcvi0QW7PI0Fq83ZPg==}
engines: {node: ^18.0.0 || >=20.0.0}
hasBin: true
dependencies:
cac: 6.7.14
debug: 4.3.4(supports-color@5.5.0)
pathe: 1.1.2
picocolors: 1.0.0
vite: 5.0.8(@types/node@18.19.8)(less@4.1.3)(sass@1.55.0)(stylus@0.59.0)
transitivePeerDependencies:
- '@types/node'
- less
- lightningcss
- sass
- stylus
- sugarss
- supports-color
- terser
dev: true
/vite-node@1.2.2(@types/node@18.19.8)(less@4.1.3)(sass@1.55.0)(stylus@0.59.0):
resolution: {integrity: sha512-1as4rDTgVWJO3n1uHmUYqq7nsFgINQ9u+mRcXpjeOMJUmviqNKjcZB7UfRZrlM7MjYXMKpuWp5oGkjaFLnjawg==}
/vite-node@1.3.1(@types/node@18.19.8)(less@4.1.3)(sass@1.55.0)(stylus@0.59.0):
resolution: {integrity: sha512-azbRrqRxlWTJEVbzInZCTchx0X69M/XPTCz4H+TLvlTcR/xH/3hkRqhOakT41fMJCMzXTu4UvegkZiEoJAWvng==}
engines: {node: ^18.0.0 || >=20.0.0}
hasBin: true
dependencies:
@ -32530,7 +32477,7 @@ packages:
strip-ansi: 6.0.1
tiny-invariant: 1.3.1
typescript: 5.3.3
vite: 5.0.12(@types/node@18.19.8)(less@4.1.3)(sass@1.55.0)(stylus@0.59.0)
vite: 5.0.12(@types/node@18.19.8)(less@4.2.0)(sass@1.70.0)(stylus@0.59.0)(terser@5.27.0)
vscode-languageclient: 7.0.0
vscode-languageserver: 7.0.0
vscode-languageserver-textdocument: 1.0.11
@ -32621,45 +32568,6 @@ packages:
fsevents: 2.3.3
dev: true
/vite@5.0.12(@types/node@18.19.8)(less@4.1.3)(sass@1.55.0)(stylus@0.59.0):
resolution: {integrity: sha512-4hsnEkG3q0N4Tzf1+t6NdN9dg/L3BM+q8SWgbSPnJvrgH2kgdyzfVJwbR1ic69/4uMJJ/3dqDZZE5/WwqW8U1w==}
engines: {node: ^18.0.0 || >=20.0.0}
hasBin: true
peerDependencies:
'@types/node': ^18.0.0 || >=20.0.0
less: '*'
lightningcss: ^1.21.0
sass: '*'
stylus: '*'
sugarss: '*'
terser: ^5.4.0
peerDependenciesMeta:
'@types/node':
optional: true
less:
optional: true
lightningcss:
optional: true
sass:
optional: true
stylus:
optional: true
sugarss:
optional: true
terser:
optional: true
dependencies:
'@types/node': 18.19.8
esbuild: 0.19.5
less: 4.1.3
postcss: 8.4.35
rollup: 4.9.6
sass: 1.55.0
stylus: 0.59.0
optionalDependencies:
fsevents: 2.3.3
dev: true
/vite@5.0.12(@types/node@18.19.8)(less@4.2.0)(sass@1.70.0)(stylus@0.59.0)(terser@5.27.0):
resolution: {integrity: sha512-4hsnEkG3q0N4Tzf1+t6NdN9dg/L3BM+q8SWgbSPnJvrgH2kgdyzfVJwbR1ic69/4uMJJ/3dqDZZE5/WwqW8U1w==}
engines: {node: ^18.0.0 || >=20.0.0}
@ -32739,15 +32647,15 @@ packages:
fsevents: 2.3.3
dev: true
/vitest@1.0.4(@types/node@18.19.8)(less@4.1.3)(sass@1.55.0)(stylus@0.59.0):
resolution: {integrity: sha512-s1GQHp/UOeWEo4+aXDOeFBJwFzL6mjycbQwwKWX2QcYfh/7tIerS59hWQ20mxzupTJluA2SdwiBuWwQHH67ckg==}
/vitest@1.3.1(@types/node@18.19.8)(less@4.1.3)(sass@1.55.0)(stylus@0.59.0):
resolution: {integrity: sha512-/1QJqXs8YbCrfv/GPQ05wAZf2eakUPLPa18vkJAKE7RXOKfVHqMZZ1WlTjiwl6Gcn65M5vpNUB6EFLnEdRdEXQ==}
engines: {node: ^18.0.0 || >=20.0.0}
hasBin: true
peerDependencies:
'@edge-runtime/vm': '*'
'@types/node': ^18.0.0 || >=20.0.0
'@vitest/browser': ^1.0.0
'@vitest/ui': ^1.0.0
'@vitest/browser': 1.3.1
'@vitest/ui': 1.3.1
happy-dom: '*'
jsdom: '*'
peerDependenciesMeta:
@ -32765,26 +32673,25 @@ packages:
optional: true
dependencies:
'@types/node': 18.19.8
'@vitest/expect': 1.0.4
'@vitest/runner': 1.0.4
'@vitest/snapshot': 1.0.4
'@vitest/spy': 1.0.4
'@vitest/utils': 1.0.4
acorn-walk: 8.3.1
cac: 6.7.14
'@vitest/expect': 1.3.1
'@vitest/runner': 1.3.1
'@vitest/snapshot': 1.3.1
'@vitest/spy': 1.3.1
'@vitest/utils': 1.3.1
acorn-walk: 8.3.2
chai: 4.3.10
debug: 4.3.4(supports-color@5.5.0)
execa: 8.0.1
local-pkg: 0.5.0
magic-string: 0.30.5
pathe: 1.1.1
magic-string: 0.30.7
pathe: 1.1.2
picocolors: 1.0.0
std-env: 3.6.0
strip-literal: 1.3.0
std-env: 3.7.0
strip-literal: 2.0.0
tinybench: 2.5.1
tinypool: 0.8.1
tinypool: 0.8.2
vite: 5.0.8(@types/node@18.19.8)(less@4.1.3)(sass@1.55.0)(stylus@0.59.0)
vite-node: 1.0.4(@types/node@18.19.8)(less@4.1.3)(sass@1.55.0)(stylus@0.59.0)
vite-node: 1.3.1(@types/node@18.19.8)(less@4.1.3)(sass@1.55.0)(stylus@0.59.0)
why-is-node-running: 2.2.2
transitivePeerDependencies:
- less
@ -33822,3 +33729,7 @@ packages:
/zwitch@2.0.4:
resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==}
dev: true
settings:
autoInstallPeers: true
excludeLinksFromLockfile: false