diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 387d01f..5d18064 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -1,6 +1,7 @@ name: Test on: - push: + - push + - workflow_dispatch jobs: build: diff --git a/.gitignore b/.gitignore index 2854f9a..bafe5e5 100644 --- a/.gitignore +++ b/.gitignore @@ -59,6 +59,8 @@ Thumbs.db # Skip mjs vite config temporarily by vitest as it confuses Nx crystal vite.config.*.timestamp* vitest.config.*.timestamp* +__screenshots__ + .cursor/rules/nx-rules.mdc .github/instructions/nx.instructions.md diff --git a/apps/101-meal-planner-solution/vitest.config.mts b/apps/101-meal-planner-solution/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/101-meal-planner-solution/vitest.config.mts +++ b/apps/101-meal-planner-solution/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/101-meal-planner-starter/vitest.config.mts b/apps/101-meal-planner-starter/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/101-meal-planner-starter/vitest.config.mts +++ b/apps/101-meal-planner-starter/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/102-meal-planner-reactive-solution/vitest.config.mts b/apps/102-meal-planner-reactive-solution/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/102-meal-planner-reactive-solution/vitest.config.mts +++ b/apps/102-meal-planner-reactive-solution/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/102-meal-planner-reactive-starter/vitest.config.mts b/apps/102-meal-planner-reactive-starter/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/102-meal-planner-reactive-starter/vitest.config.mts +++ b/apps/102-meal-planner-reactive-starter/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/201-meal-planner-indirect-output-solution/vitest.config.mts b/apps/201-meal-planner-indirect-output-solution/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/201-meal-planner-indirect-output-solution/vitest.config.mts +++ b/apps/201-meal-planner-indirect-output-solution/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/201-meal-planner-indirect-output-starter/vitest.config.mts b/apps/201-meal-planner-indirect-output-starter/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/201-meal-planner-indirect-output-starter/vitest.config.mts +++ b/apps/201-meal-planner-indirect-output-starter/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/202-meal-planner-indirect-input-solution/vitest.config.mts b/apps/202-meal-planner-indirect-input-solution/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/202-meal-planner-indirect-input-solution/vitest.config.mts +++ b/apps/202-meal-planner-indirect-input-solution/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/202-meal-planner-indirect-input-starter/vitest.config.mts b/apps/202-meal-planner-indirect-input-starter/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/202-meal-planner-indirect-input-starter/vitest.config.mts +++ b/apps/202-meal-planner-indirect-input-starter/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/203-meal-repository-solution/vitest.config.mts b/apps/203-meal-repository-solution/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/203-meal-repository-solution/vitest.config.mts +++ b/apps/203-meal-repository-solution/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/203-meal-repository-starter/vitest.config.mts b/apps/203-meal-repository-starter/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/203-meal-repository-starter/vitest.config.mts +++ b/apps/203-meal-repository-starter/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/204-meal-repository-contract-solution/vitest.config.mts b/apps/204-meal-repository-contract-solution/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/204-meal-repository-contract-solution/vitest.config.mts +++ b/apps/204-meal-repository-contract-solution/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/204-meal-repository-contract-starter/vitest.config.mts b/apps/204-meal-repository-contract-starter/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/204-meal-repository-contract-starter/vitest.config.mts +++ b/apps/204-meal-repository-contract-starter/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/301-recipe-search-isolated-solution/vitest.config.mts b/apps/301-recipe-search-isolated-solution/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/301-recipe-search-isolated-solution/vitest.config.mts +++ b/apps/301-recipe-search-isolated-solution/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/301-recipe-search-isolated-starter/vitest.config.mts b/apps/301-recipe-search-isolated-starter/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/301-recipe-search-isolated-starter/vitest.config.mts +++ b/apps/301-recipe-search-isolated-starter/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/302-recipe-search-integration-browser-mode-solution/vitest.config.mts b/apps/302-recipe-search-integration-browser-mode-solution/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/302-recipe-search-integration-browser-mode-solution/vitest.config.mts +++ b/apps/302-recipe-search-integration-browser-mode-solution/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/302-recipe-search-integration-browser-mode-starter/vitest.config.mts b/apps/302-recipe-search-integration-browser-mode-starter/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/302-recipe-search-integration-browser-mode-starter/vitest.config.mts +++ b/apps/302-recipe-search-integration-browser-mode-starter/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/302-recipe-search-integration-test-bed-solution/vitest.config.mts b/apps/302-recipe-search-integration-test-bed-solution/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/302-recipe-search-integration-test-bed-solution/vitest.config.mts +++ b/apps/302-recipe-search-integration-test-bed-solution/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/302-recipe-search-integration-test-bed-starter/vitest.config.mts b/apps/302-recipe-search-integration-test-bed-starter/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/302-recipe-search-integration-test-bed-starter/vitest.config.mts +++ b/apps/302-recipe-search-integration-test-bed-starter/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/302-recipe-search-integration-testing-library-solution/vitest.config.mts b/apps/302-recipe-search-integration-testing-library-solution/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/302-recipe-search-integration-testing-library-solution/vitest.config.mts +++ b/apps/302-recipe-search-integration-testing-library-solution/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/302-recipe-search-integration-testing-library-starter/vitest.config.mts b/apps/302-recipe-search-integration-testing-library-starter/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/302-recipe-search-integration-testing-library-starter/vitest.config.mts +++ b/apps/302-recipe-search-integration-testing-library-starter/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/303-recipe-search-shallow-browser-mode-solution/vitest.config.mts b/apps/303-recipe-search-shallow-browser-mode-solution/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/303-recipe-search-shallow-browser-mode-solution/vitest.config.mts +++ b/apps/303-recipe-search-shallow-browser-mode-solution/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/303-recipe-search-shallow-browser-mode-starter/vitest.config.mts b/apps/303-recipe-search-shallow-browser-mode-starter/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/303-recipe-search-shallow-browser-mode-starter/vitest.config.mts +++ b/apps/303-recipe-search-shallow-browser-mode-starter/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/303-recipe-search-shallow-test-bed-solution/vitest.config.mts b/apps/303-recipe-search-shallow-test-bed-solution/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/303-recipe-search-shallow-test-bed-solution/vitest.config.mts +++ b/apps/303-recipe-search-shallow-test-bed-solution/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/303-recipe-search-shallow-test-bed-starter/vitest.config.mts b/apps/303-recipe-search-shallow-test-bed-starter/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/303-recipe-search-shallow-test-bed-starter/vitest.config.mts +++ b/apps/303-recipe-search-shallow-test-bed-starter/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/303-recipe-search-shallow-testing-library-solution/vitest.config.mts b/apps/303-recipe-search-shallow-testing-library-solution/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/303-recipe-search-shallow-testing-library-solution/vitest.config.mts +++ b/apps/303-recipe-search-shallow-testing-library-solution/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/303-recipe-search-shallow-testing-library-starter/vitest.config.mts b/apps/303-recipe-search-shallow-testing-library-starter/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/303-recipe-search-shallow-testing-library-starter/vitest.config.mts +++ b/apps/303-recipe-search-shallow-testing-library-starter/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/304-recipe-search-async-pipe-solution/vitest.config.mts b/apps/304-recipe-search-async-pipe-solution/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/304-recipe-search-async-pipe-solution/vitest.config.mts +++ b/apps/304-recipe-search-async-pipe-solution/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/304-recipe-search-async-pipe-starter/vitest.config.mts b/apps/304-recipe-search-async-pipe-starter/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/304-recipe-search-async-pipe-starter/vitest.config.mts +++ b/apps/304-recipe-search-async-pipe-starter/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/305-recipe-search-signals-solution/vitest.config.mts b/apps/305-recipe-search-signals-solution/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/305-recipe-search-signals-solution/vitest.config.mts +++ b/apps/305-recipe-search-signals-solution/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/305-recipe-search-signals-starter/vitest.config.mts b/apps/305-recipe-search-signals-starter/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/305-recipe-search-signals-starter/vitest.config.mts +++ b/apps/305-recipe-search-signals-starter/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/401-recipe-filter-solution/vitest.config.mts b/apps/401-recipe-filter-solution/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/401-recipe-filter-solution/vitest.config.mts +++ b/apps/401-recipe-filter-solution/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/401-recipe-filter-starter/vitest.config.mts b/apps/401-recipe-filter-starter/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/401-recipe-filter-starter/vitest.config.mts +++ b/apps/401-recipe-filter-starter/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/402-recipe-search-filter-interaction-solution/vitest.config.mts b/apps/402-recipe-search-filter-interaction-solution/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/402-recipe-search-filter-interaction-solution/vitest.config.mts +++ b/apps/402-recipe-search-filter-interaction-solution/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/402-recipe-search-filter-interaction-starter/vitest.config.mts b/apps/402-recipe-search-filter-interaction-starter/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/402-recipe-search-filter-interaction-starter/vitest.config.mts +++ b/apps/402-recipe-search-filter-interaction-starter/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/403-recipe-search-add-button-solution/vitest.config.mts b/apps/403-recipe-search-add-button-solution/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/403-recipe-search-add-button-solution/vitest.config.mts +++ b/apps/403-recipe-search-add-button-solution/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/403-recipe-search-add-button-starter/vitest.config.mts b/apps/403-recipe-search-add-button-starter/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/403-recipe-search-add-button-starter/vitest.config.mts +++ b/apps/403-recipe-search-add-button-starter/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/404-recipe-filter-material-solution/vitest.config.mts b/apps/404-recipe-filter-material-solution/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/404-recipe-filter-material-solution/vitest.config.mts +++ b/apps/404-recipe-filter-material-solution/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/404-recipe-filter-material-starter/vitest.config.mts b/apps/404-recipe-filter-material-starter/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/404-recipe-filter-material-starter/vitest.config.mts +++ b/apps/404-recipe-filter-material-starter/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/501-recipe-preview-testronaut-solution/vitest.config.mts b/apps/501-recipe-preview-testronaut-solution/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/501-recipe-preview-testronaut-solution/vitest.config.mts +++ b/apps/501-recipe-preview-testronaut-solution/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/501-recipe-preview-testronaut-starter/vitest.config.mts b/apps/501-recipe-preview-testronaut-starter/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/501-recipe-preview-testronaut-starter/vitest.config.mts +++ b/apps/501-recipe-preview-testronaut-starter/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/502-recipe-filter-testronaut-solution/vitest.config.mts b/apps/502-recipe-filter-testronaut-solution/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/502-recipe-filter-testronaut-solution/vitest.config.mts +++ b/apps/502-recipe-filter-testronaut-solution/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/502-recipe-filter-testronaut-starter/vitest.config.mts b/apps/502-recipe-filter-testronaut-starter/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/502-recipe-filter-testronaut-starter/vitest.config.mts +++ b/apps/502-recipe-filter-testronaut-starter/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/503-recipe-search-testronaut-solution/vitest.config.mts b/apps/503-recipe-search-testronaut-solution/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/503-recipe-search-testronaut-solution/vitest.config.mts +++ b/apps/503-recipe-search-testronaut-solution/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/503-recipe-search-testronaut-starter/vitest.config.mts b/apps/503-recipe-search-testronaut-starter/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/503-recipe-search-testronaut-starter/vitest.config.mts +++ b/apps/503-recipe-search-testronaut-starter/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/504-playwright-visual-regression-testing-solution/src/app/recipe/recipe-search.pw.ts-snapshots/RecipeSearch-shows-recipes-1-chromium-linux.png b/apps/504-playwright-visual-regression-testing-solution/src/app/recipe/recipe-search.pw.ts-snapshots/RecipeSearch-shows-recipes-1-chromium-linux.png index ccfd4cc..dd937c1 100644 Binary files a/apps/504-playwright-visual-regression-testing-solution/src/app/recipe/recipe-search.pw.ts-snapshots/RecipeSearch-shows-recipes-1-chromium-linux.png and b/apps/504-playwright-visual-regression-testing-solution/src/app/recipe/recipe-search.pw.ts-snapshots/RecipeSearch-shows-recipes-1-chromium-linux.png differ diff --git a/apps/504-playwright-visual-regression-testing-solution/vitest.config.mts b/apps/504-playwright-visual-regression-testing-solution/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/504-playwright-visual-regression-testing-solution/vitest.config.mts +++ b/apps/504-playwright-visual-regression-testing-solution/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/apps/504-playwright-visual-regression-testing-starter/vitest.config.mts b/apps/504-playwright-visual-regression-testing-starter/vitest.config.mts index b13f7b4..8e3739b 100644 --- a/apps/504-playwright-visual-regression-testing-starter/vitest.config.mts +++ b/apps/504-playwright-visual-regression-testing-starter/vitest.config.mts @@ -3,7 +3,7 @@ import { defineConfig, mergeConfig } from 'vitest/config'; import viteConfig from './vite.config.mjs'; import vitestAngularPreset from './vitest-angular-preset'; -const testPatterns = ['src/**/*.spec.ts']; +const emulatedTestPatterns = ['src/**/!(*.browser).spec.ts']; const browserTestPatterns = ['src/**/*.browser.spec.ts']; export default mergeConfig( @@ -20,14 +20,14 @@ export default mergeConfig( watch: false, pool: 'threads', isolate: false, + testTimeout: 1_500, projects: [ { extends: true, test: { name: 'emulated', environment: 'jsdom', - include: testPatterns, - exclude: browserTestPatterns, + include: emulatedTestPatterns, }, }, { diff --git a/package.json b/package.json index fac676c..0d4622b 100644 --- a/package.json +++ b/package.json @@ -106,7 +106,7 @@ "typescript": "5.9.2", "typescript-eslint": "^8.40.0", "unplugin-swc": "1.5.1", - "vite": "7.1.5", + "vite": "7.3.1", "vitest": "4.0.18", "zx": "8.8.5" }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index eb30c9e..01c49b9 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -125,10 +125,10 @@ importers: version: 22.5.4(@babel/traverse@7.29.0)(@playwright/test@1.58.2)(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19))(@zkochan/js-yaml@0.0.7)(eslint@9.38.0(jiti@2.4.2))(nx@22.5.4(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19))) '@nx/vite': specifier: 22.5.4 - version: 22.5.4(@babel/traverse@7.29.0)(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19))(nx@22.5.4(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19)))(typescript@5.9.2)(vite@7.1.5(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))(vitest@4.0.18) + version: 22.5.4(@babel/traverse@7.29.0)(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19))(nx@22.5.4(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19)))(typescript@5.9.2)(vite@7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))(vitest@4.0.18) '@nx/vitest': specifier: 22.5.4 - version: 22.5.4(@babel/traverse@7.29.0)(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19))(nx@22.5.4(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19)))(typescript@5.9.2)(vite@7.1.5(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))(vitest@4.0.18) + version: 22.5.4(@babel/traverse@7.29.0)(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19))(nx@22.5.4(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19)))(typescript@5.9.2)(vite@7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))(vitest@4.0.18) '@nx/web': specifier: 22.5.4 version: 22.5.4(@babel/traverse@7.29.0)(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19))(nx@22.5.4(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19))) @@ -185,10 +185,10 @@ importers: version: 8.46.2(eslint@9.38.0(jiti@2.4.2))(typescript@5.9.2) '@vitest/browser-playwright': specifier: 4.0.18 - version: 4.0.18(playwright@1.58.2)(vite@7.1.5(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))(vitest@4.0.18) + version: 4.0.18(playwright@1.58.2)(vite@7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))(vitest@4.0.18) '@vitest/coverage-v8': specifier: 4.0.18 - version: 4.0.18(@vitest/browser@4.0.18(vite@7.1.5(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))(vitest@4.0.18))(vitest@4.0.18) + version: 4.0.18(@vitest/browser@4.0.18(vite@7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))(vitest@4.0.18))(vitest@4.0.18) '@vitest/eslint-plugin': specifier: 1.6.9 version: 1.6.9(eslint@9.38.0(jiti@2.4.2))(typescript@5.9.2)(vitest@4.0.18) @@ -265,8 +265,8 @@ importers: specifier: 1.5.1 version: 1.5.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(rollup@4.50.2) vite: - specifier: 7.1.5 - version: 7.1.5(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0) + specifier: 7.3.1 + version: 7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0) vitest: specifier: 4.0.18 version: 4.0.18(@types/node@20.19.9)(@vitest/browser-playwright@4.0.18)(@vitest/ui@4.0.18)(happy-dom@18.0.1)(jiti@2.4.2)(jsdom@22.1.0)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0) @@ -2234,12 +2234,6 @@ packages: '@emnapi/wasi-threads@1.1.0': resolution: {integrity: sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==} - '@esbuild/aix-ppc64@0.25.4': - resolution: {integrity: sha512-1VCICWypeQKhVbE9oW/sJaAmjLxhVqacdkvPLEjwlttjfwENRSClS8EjBz0KzRyFSCPDIkuXW34Je/vk7zdB7Q==} - engines: {node: '>=18'} - cpu: [ppc64] - os: [aix] - '@esbuild/aix-ppc64@0.25.9': resolution: {integrity: sha512-OaGtL73Jck6pBKjNIe24BnFE6agGl+6KxDtTfHhy1HmhthfKouEcOhqpSL64K4/0WCtbKFLOdzD/44cJ4k9opA==} engines: {node: '>=18'} @@ -2252,12 +2246,6 @@ packages: cpu: [ppc64] os: [aix] - '@esbuild/android-arm64@0.25.4': - resolution: {integrity: sha512-bBy69pgfhMGtCnwpC/x5QhfxAz/cBgQ9enbtwjf6V9lnPI/hMyT9iWpR1arm0l3kttTr4L0KSLpKmLp/ilKS9A==} - engines: {node: '>=18'} - cpu: [arm64] - os: [android] - '@esbuild/android-arm64@0.25.9': resolution: {integrity: sha512-IDrddSmpSv51ftWslJMvl3Q2ZT98fUSL2/rlUXuVqRXHCs5EUF1/f+jbjF5+NG9UffUDMCiTyh8iec7u8RlTLg==} engines: {node: '>=18'} @@ -2270,12 +2258,6 @@ packages: cpu: [arm64] os: [android] - '@esbuild/android-arm@0.25.4': - resolution: {integrity: sha512-QNdQEps7DfFwE3hXiU4BZeOV68HHzYwGd0Nthhd3uCkkEKK7/R6MTgM0P7H7FAs5pU/DIWsviMmEGxEoxIZ+ZQ==} - engines: {node: '>=18'} - cpu: [arm] - os: [android] - '@esbuild/android-arm@0.25.9': resolution: {integrity: sha512-5WNI1DaMtxQ7t7B6xa572XMXpHAaI/9Hnhk8lcxF4zVN4xstUgTlvuGDorBguKEnZO70qwEcLpfifMLoxiPqHQ==} engines: {node: '>=18'} @@ -2288,12 +2270,6 @@ packages: cpu: [arm] os: [android] - '@esbuild/android-x64@0.25.4': - resolution: {integrity: sha512-TVhdVtQIFuVpIIR282btcGC2oGQoSfZfmBdTip2anCaVYcqWlZXGcdcKIUklfX2wj0JklNYgz39OBqh2cqXvcQ==} - engines: {node: '>=18'} - cpu: [x64] - os: [android] - '@esbuild/android-x64@0.25.9': resolution: {integrity: sha512-I853iMZ1hWZdNllhVZKm34f4wErd4lMyeV7BLzEExGEIZYsOzqDWDf+y082izYUE8gtJnYHdeDpN/6tUdwvfiw==} engines: {node: '>=18'} @@ -2306,12 +2282,6 @@ packages: cpu: [x64] os: [android] - '@esbuild/darwin-arm64@0.25.4': - resolution: {integrity: sha512-Y1giCfM4nlHDWEfSckMzeWNdQS31BQGs9/rouw6Ub91tkK79aIMTH3q9xHvzH8d0wDru5Ci0kWB8b3up/nl16g==} - engines: {node: '>=18'} - cpu: [arm64] - os: [darwin] - '@esbuild/darwin-arm64@0.25.9': resolution: {integrity: sha512-XIpIDMAjOELi/9PB30vEbVMs3GV1v2zkkPnuyRRURbhqjyzIINwj+nbQATh4H9GxUgH1kFsEyQMxwiLFKUS6Rg==} engines: {node: '>=18'} @@ -2324,12 +2294,6 @@ packages: cpu: [arm64] os: [darwin] - '@esbuild/darwin-x64@0.25.4': - resolution: {integrity: sha512-CJsry8ZGM5VFVeyUYB3cdKpd/H69PYez4eJh1W/t38vzutdjEjtP7hB6eLKBoOdxcAlCtEYHzQ/PJ/oU9I4u0A==} - engines: {node: '>=18'} - cpu: [x64] - os: [darwin] - '@esbuild/darwin-x64@0.25.9': resolution: {integrity: sha512-jhHfBzjYTA1IQu8VyrjCX4ApJDnH+ez+IYVEoJHeqJm9VhG9Dh2BYaJritkYK3vMaXrf7Ogr/0MQ8/MeIefsPQ==} engines: {node: '>=18'} @@ -2342,12 +2306,6 @@ packages: cpu: [x64] os: [darwin] - '@esbuild/freebsd-arm64@0.25.4': - resolution: {integrity: sha512-yYq+39NlTRzU2XmoPW4l5Ifpl9fqSk0nAJYM/V/WUGPEFfek1epLHJIkTQM6bBs1swApjO5nWgvr843g6TjxuQ==} - engines: {node: '>=18'} - cpu: [arm64] - os: [freebsd] - '@esbuild/freebsd-arm64@0.25.9': resolution: {integrity: sha512-z93DmbnY6fX9+KdD4Ue/H6sYs+bhFQJNCPZsi4XWJoYblUqT06MQUdBCpcSfuiN72AbqeBFu5LVQTjfXDE2A6Q==} engines: {node: '>=18'} @@ -2360,12 +2318,6 @@ packages: cpu: [arm64] os: [freebsd] - '@esbuild/freebsd-x64@0.25.4': - resolution: {integrity: sha512-0FgvOJ6UUMflsHSPLzdfDnnBBVoCDtBTVyn/MrWloUNvq/5SFmh13l3dvgRPkDihRxb77Y17MbqbCAa2strMQQ==} - engines: {node: '>=18'} - cpu: [x64] - os: [freebsd] - '@esbuild/freebsd-x64@0.25.9': resolution: {integrity: sha512-mrKX6H/vOyo5v71YfXWJxLVxgy1kyt1MQaD8wZJgJfG4gq4DpQGpgTB74e5yBeQdyMTbgxp0YtNj7NuHN0PoZg==} engines: {node: '>=18'} @@ -2378,12 +2330,6 @@ packages: cpu: [x64] os: [freebsd] - '@esbuild/linux-arm64@0.25.4': - resolution: {integrity: sha512-+89UsQTfXdmjIvZS6nUnOOLoXnkUTB9hR5QAeLrQdzOSWZvNSAXAtcRDHWtqAUtAmv7ZM1WPOOeSxDzzzMogiQ==} - engines: {node: '>=18'} - cpu: [arm64] - os: [linux] - '@esbuild/linux-arm64@0.25.9': resolution: {integrity: sha512-BlB7bIcLT3G26urh5Dmse7fiLmLXnRlopw4s8DalgZ8ef79Jj4aUcYbk90g8iCa2467HX8SAIidbL7gsqXHdRw==} engines: {node: '>=18'} @@ -2396,12 +2342,6 @@ packages: cpu: [arm64] os: [linux] - '@esbuild/linux-arm@0.25.4': - resolution: {integrity: sha512-kro4c0P85GMfFYqW4TWOpvmF8rFShbWGnrLqlzp4X1TNWjRY3JMYUfDCtOxPKOIY8B0WC8HN51hGP4I4hz4AaQ==} - engines: {node: '>=18'} - cpu: [arm] - os: [linux] - '@esbuild/linux-arm@0.25.9': resolution: {integrity: sha512-HBU2Xv78SMgaydBmdor38lg8YDnFKSARg1Q6AT0/y2ezUAKiZvc211RDFHlEZRFNRVhcMamiToo7bDx3VEOYQw==} engines: {node: '>=18'} @@ -2414,12 +2354,6 @@ packages: cpu: [arm] os: [linux] - '@esbuild/linux-ia32@0.25.4': - resolution: {integrity: sha512-yTEjoapy8UP3rv8dB0ip3AfMpRbyhSN3+hY8mo/i4QXFeDxmiYbEKp3ZRjBKcOP862Ua4b1PDfwlvbuwY7hIGQ==} - engines: {node: '>=18'} - cpu: [ia32] - os: [linux] - '@esbuild/linux-ia32@0.25.9': resolution: {integrity: sha512-e7S3MOJPZGp2QW6AK6+Ly81rC7oOSerQ+P8L0ta4FhVi+/j/v2yZzx5CqqDaWjtPFfYz21Vi1S0auHrap3Ma3A==} engines: {node: '>=18'} @@ -2432,12 +2366,6 @@ packages: cpu: [ia32] os: [linux] - '@esbuild/linux-loong64@0.25.4': - resolution: {integrity: sha512-NeqqYkrcGzFwi6CGRGNMOjWGGSYOpqwCjS9fvaUlX5s3zwOtn1qwg1s2iE2svBe4Q/YOG1q6875lcAoQK/F4VA==} - engines: {node: '>=18'} - cpu: [loong64] - os: [linux] - '@esbuild/linux-loong64@0.25.9': resolution: {integrity: sha512-Sbe10Bnn0oUAB2AalYztvGcK+o6YFFA/9829PhOCUS9vkJElXGdphz0A3DbMdP8gmKkqPmPcMJmJOrI3VYB1JQ==} engines: {node: '>=18'} @@ -2450,12 +2378,6 @@ packages: cpu: [loong64] os: [linux] - '@esbuild/linux-mips64el@0.25.4': - resolution: {integrity: sha512-IcvTlF9dtLrfL/M8WgNI/qJYBENP3ekgsHbYUIzEzq5XJzzVEV/fXY9WFPfEEXmu3ck2qJP8LG/p3Q8f7Zc2Xg==} - engines: {node: '>=18'} - cpu: [mips64el] - os: [linux] - '@esbuild/linux-mips64el@0.25.9': resolution: {integrity: sha512-YcM5br0mVyZw2jcQeLIkhWtKPeVfAerES5PvOzaDxVtIyZ2NUBZKNLjC5z3/fUlDgT6w89VsxP2qzNipOaaDyA==} engines: {node: '>=18'} @@ -2468,12 +2390,6 @@ packages: cpu: [mips64el] os: [linux] - '@esbuild/linux-ppc64@0.25.4': - resolution: {integrity: sha512-HOy0aLTJTVtoTeGZh4HSXaO6M95qu4k5lJcH4gxv56iaycfz1S8GO/5Jh6X4Y1YiI0h7cRyLi+HixMR+88swag==} - engines: {node: '>=18'} - cpu: [ppc64] - os: [linux] - '@esbuild/linux-ppc64@0.25.9': resolution: {integrity: sha512-++0HQvasdo20JytyDpFvQtNrEsAgNG2CY1CLMwGXfFTKGBGQT3bOeLSYE2l1fYdvML5KUuwn9Z8L1EWe2tzs1w==} engines: {node: '>=18'} @@ -2486,12 +2402,6 @@ packages: cpu: [ppc64] os: [linux] - '@esbuild/linux-riscv64@0.25.4': - resolution: {integrity: sha512-i8JUDAufpz9jOzo4yIShCTcXzS07vEgWzyX3NH2G7LEFVgrLEhjwL3ajFE4fZI3I4ZgiM7JH3GQ7ReObROvSUA==} - engines: {node: '>=18'} - cpu: [riscv64] - os: [linux] - '@esbuild/linux-riscv64@0.25.9': resolution: {integrity: sha512-uNIBa279Y3fkjV+2cUjx36xkx7eSjb8IvnL01eXUKXez/CBHNRw5ekCGMPM0BcmqBxBcdgUWuUXmVWwm4CH9kg==} engines: {node: '>=18'} @@ -2504,12 +2414,6 @@ packages: cpu: [riscv64] os: [linux] - '@esbuild/linux-s390x@0.25.4': - resolution: {integrity: sha512-jFnu+6UbLlzIjPQpWCNh5QtrcNfMLjgIavnwPQAfoGx4q17ocOU9MsQ2QVvFxwQoWpZT8DvTLooTvmOQXkO51g==} - engines: {node: '>=18'} - cpu: [s390x] - os: [linux] - '@esbuild/linux-s390x@0.25.9': resolution: {integrity: sha512-Mfiphvp3MjC/lctb+7D287Xw1DGzqJPb/J2aHHcHxflUo+8tmN/6d4k6I2yFR7BVo5/g7x2Monq4+Yew0EHRIA==} engines: {node: '>=18'} @@ -2522,12 +2426,6 @@ packages: cpu: [s390x] os: [linux] - '@esbuild/linux-x64@0.25.4': - resolution: {integrity: sha512-6e0cvXwzOnVWJHq+mskP8DNSrKBr1bULBvnFLpc1KY+d+irZSgZ02TGse5FsafKS5jg2e4pbvK6TPXaF/A6+CA==} - engines: {node: '>=18'} - cpu: [x64] - os: [linux] - '@esbuild/linux-x64@0.25.9': resolution: {integrity: sha512-iSwByxzRe48YVkmpbgoxVzn76BXjlYFXC7NvLYq+b+kDjyyk30J0JY47DIn8z1MO3K0oSl9fZoRmZPQI4Hklzg==} engines: {node: '>=18'} @@ -2540,12 +2438,6 @@ packages: cpu: [x64] os: [linux] - '@esbuild/netbsd-arm64@0.25.4': - resolution: {integrity: sha512-vUnkBYxZW4hL/ie91hSqaSNjulOnYXE1VSLusnvHg2u3jewJBz3YzB9+oCw8DABeVqZGg94t9tyZFoHma8gWZQ==} - engines: {node: '>=18'} - cpu: [arm64] - os: [netbsd] - '@esbuild/netbsd-arm64@0.25.9': resolution: {integrity: sha512-9jNJl6FqaUG+COdQMjSCGW4QiMHH88xWbvZ+kRVblZsWrkXlABuGdFJ1E9L7HK+T0Yqd4akKNa/lO0+jDxQD4Q==} engines: {node: '>=18'} @@ -2558,12 +2450,6 @@ packages: cpu: [arm64] os: [netbsd] - '@esbuild/netbsd-x64@0.25.4': - resolution: {integrity: sha512-XAg8pIQn5CzhOB8odIcAm42QsOfa98SBeKUdo4xa8OvX8LbMZqEtgeWE9P/Wxt7MlG2QqvjGths+nq48TrUiKw==} - engines: {node: '>=18'} - cpu: [x64] - os: [netbsd] - '@esbuild/netbsd-x64@0.25.9': resolution: {integrity: sha512-RLLdkflmqRG8KanPGOU7Rpg829ZHu8nFy5Pqdi9U01VYtG9Y0zOG6Vr2z4/S+/3zIyOxiK6cCeYNWOFR9QP87g==} engines: {node: '>=18'} @@ -2576,12 +2462,6 @@ packages: cpu: [x64] os: [netbsd] - '@esbuild/openbsd-arm64@0.25.4': - resolution: {integrity: sha512-Ct2WcFEANlFDtp1nVAXSNBPDxyU+j7+tId//iHXU2f/lN5AmO4zLyhDcpR5Cz1r08mVxzt3Jpyt4PmXQ1O6+7A==} - engines: {node: '>=18'} - cpu: [arm64] - os: [openbsd] - '@esbuild/openbsd-arm64@0.25.9': resolution: {integrity: sha512-YaFBlPGeDasft5IIM+CQAhJAqS3St3nJzDEgsgFixcfZeyGPCd6eJBWzke5piZuZ7CtL656eOSYKk4Ls2C0FRQ==} engines: {node: '>=18'} @@ -2594,12 +2474,6 @@ packages: cpu: [arm64] os: [openbsd] - '@esbuild/openbsd-x64@0.25.4': - resolution: {integrity: sha512-xAGGhyOQ9Otm1Xu8NT1ifGLnA6M3sJxZ6ixylb+vIUVzvvd6GOALpwQrYrtlPouMqd/vSbgehz6HaVk4+7Afhw==} - engines: {node: '>=18'} - cpu: [x64] - os: [openbsd] - '@esbuild/openbsd-x64@0.25.9': resolution: {integrity: sha512-1MkgTCuvMGWuqVtAvkpkXFmtL8XhWy+j4jaSO2wxfJtilVCi0ZE37b8uOdMItIHz4I6z1bWWtEX4CJwcKYLcuA==} engines: {node: '>=18'} @@ -2624,12 +2498,6 @@ packages: cpu: [arm64] os: [openharmony] - '@esbuild/sunos-x64@0.25.4': - resolution: {integrity: sha512-Mw+tzy4pp6wZEK0+Lwr76pWLjrtjmJyUB23tHKqEDP74R3q95luY/bXqXZeYl4NYlvwOqoRKlInQialgCKy67Q==} - engines: {node: '>=18'} - cpu: [x64] - os: [sunos] - '@esbuild/sunos-x64@0.25.9': resolution: {integrity: sha512-WjH4s6hzo00nNezhp3wFIAfmGZ8U7KtrJNlFMRKxiI9mxEK1scOMAaa9i4crUtu+tBr+0IN6JCuAcSBJZfnphw==} engines: {node: '>=18'} @@ -2642,12 +2510,6 @@ packages: cpu: [x64] os: [sunos] - '@esbuild/win32-arm64@0.25.4': - resolution: {integrity: sha512-AVUP428VQTSddguz9dO9ngb+E5aScyg7nOeJDrF1HPYu555gmza3bDGMPhmVXL8svDSoqPCsCPjb265yG/kLKQ==} - engines: {node: '>=18'} - cpu: [arm64] - os: [win32] - '@esbuild/win32-arm64@0.25.9': resolution: {integrity: sha512-mGFrVJHmZiRqmP8xFOc6b84/7xa5y5YvR1x8djzXpJBSv/UsNK6aqec+6JDjConTgvvQefdGhFDAs2DLAds6gQ==} engines: {node: '>=18'} @@ -2660,12 +2522,6 @@ packages: cpu: [arm64] os: [win32] - '@esbuild/win32-ia32@0.25.4': - resolution: {integrity: sha512-i1sW+1i+oWvQzSgfRcxxG2k4I9n3O9NRqy8U+uugaT2Dy7kLO9Y7wI72haOahxceMX8hZAzgGou1FhndRldxRg==} - engines: {node: '>=18'} - cpu: [ia32] - os: [win32] - '@esbuild/win32-ia32@0.25.9': resolution: {integrity: sha512-b33gLVU2k11nVx1OhX3C8QQP6UHQK4ZtN56oFWvVXvz2VkDoe6fbG8TOgHFxEvqeqohmRnIHe5A1+HADk4OQww==} engines: {node: '>=18'} @@ -2678,12 +2534,6 @@ packages: cpu: [ia32] os: [win32] - '@esbuild/win32-x64@0.25.4': - resolution: {integrity: sha512-nOT2vZNw6hJ+z43oP1SPea/G/6AbN6X+bGNhNuq8NtRHy4wsMhw765IKLNmnjek7GvjWBYQ8Q5VBoYTFg9y1UQ==} - engines: {node: '>=18'} - cpu: [x64] - os: [win32] - '@esbuild/win32-x64@0.25.9': resolution: {integrity: sha512-PPOl1mi6lpLNQxnGoyAfschAodRFYXJ+9fs6WHXz7CSWKbOqiMZsubC+BQsVKuul+3vKLuwTHsS2c2y9EoKwxQ==} engines: {node: '>=18'} @@ -6772,11 +6622,6 @@ packages: engines: {node: '>=18'} hasBin: true - esbuild@0.25.4: - resolution: {integrity: sha512-8pgjLUcUjcgDg+2Q4NYXnPbo/vncAY4UmyaCm0jZevERqCHZIaWwdJHkf8XQtu4AxSKCdvrUbT0XUr1IdZzI8Q==} - engines: {node: '>=18'} - hasBin: true - esbuild@0.25.9: resolution: {integrity: sha512-CRbODhYyQx3qp7ZEwzxOk4JBqmD/seJrzPa/cGjY1VtIn5E09Oi9/dB4JwctnfZ8Q8iT7rioVv5k/FNT/uf54g==} engines: {node: '>=18'} @@ -11510,46 +11355,6 @@ packages: vfile@6.0.3: resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} - vite@7.1.5: - resolution: {integrity: sha512-4cKBO9wR75r0BeIWWWId9XK9Lj6La5X846Zw9dFfzMRw38IlTk2iCcUt6hsyiDRcPidc55ZParFYDXi0nXOeLQ==} - engines: {node: ^20.19.0 || >=22.12.0} - hasBin: true - peerDependencies: - '@types/node': ^20.19.0 || >=22.12.0 - jiti: '>=1.21.0' - less: ^4.0.0 - lightningcss: ^1.21.0 - sass: ^1.70.0 - sass-embedded: ^1.70.0 - stylus: '>=0.54.8' - sugarss: ^5.0.0 - terser: ^5.16.0 - tsx: ^4.8.1 - yaml: ^2.4.2 - peerDependenciesMeta: - '@types/node': - optional: true - jiti: - optional: true - less: - optional: true - lightningcss: - optional: true - sass: - optional: true - sass-embedded: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - tsx: - optional: true - yaml: - optional: true - vite@7.3.1: resolution: {integrity: sha512-w+N7Hifpc3gRjZ63vYBXA56dvvRlNWRczTdmCBBa+CotUzAPf5b7YMdMR/8CQoeYE5LX3W4wj6RYTgonm1b9DA==} engines: {node: ^20.19.0 || >=22.12.0} @@ -12467,7 +12272,7 @@ snapshots: '@babel/helper-annotate-as-pure': 7.27.3 '@babel/helper-split-export-declaration': 7.24.7 '@inquirer/confirm': 5.1.21(@types/node@20.19.9) - '@vitejs/plugin-basic-ssl': 2.1.4(vite@7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.97.3)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0)) + '@vitejs/plugin-basic-ssl': 2.1.4(vite@7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0)) beasties: 0.4.1 browserslist: 4.28.1 esbuild: 0.27.3 @@ -12520,7 +12325,7 @@ snapshots: '@babel/helper-annotate-as-pure': 7.27.3 '@babel/helper-split-export-declaration': 7.24.7 '@inquirer/confirm': 5.1.21(@types/node@20.19.9) - '@vitejs/plugin-basic-ssl': 2.1.4(vite@7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.97.3)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0)) + '@vitejs/plugin-basic-ssl': 2.1.4(vite@7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0)) beasties: 0.4.1 browserslist: 4.28.1 esbuild: 0.27.3 @@ -16387,189 +16192,126 @@ snapshots: dependencies: tslib: 2.8.1 - '@esbuild/aix-ppc64@0.25.4': - optional: true - '@esbuild/aix-ppc64@0.25.9': optional: true '@esbuild/aix-ppc64@0.27.3': optional: true - '@esbuild/android-arm64@0.25.4': - optional: true - '@esbuild/android-arm64@0.25.9': optional: true '@esbuild/android-arm64@0.27.3': optional: true - '@esbuild/android-arm@0.25.4': - optional: true - '@esbuild/android-arm@0.25.9': optional: true '@esbuild/android-arm@0.27.3': optional: true - '@esbuild/android-x64@0.25.4': - optional: true - '@esbuild/android-x64@0.25.9': optional: true '@esbuild/android-x64@0.27.3': optional: true - '@esbuild/darwin-arm64@0.25.4': - optional: true - '@esbuild/darwin-arm64@0.25.9': optional: true '@esbuild/darwin-arm64@0.27.3': optional: true - '@esbuild/darwin-x64@0.25.4': - optional: true - '@esbuild/darwin-x64@0.25.9': optional: true '@esbuild/darwin-x64@0.27.3': optional: true - '@esbuild/freebsd-arm64@0.25.4': - optional: true - '@esbuild/freebsd-arm64@0.25.9': optional: true '@esbuild/freebsd-arm64@0.27.3': optional: true - '@esbuild/freebsd-x64@0.25.4': - optional: true - '@esbuild/freebsd-x64@0.25.9': optional: true '@esbuild/freebsd-x64@0.27.3': optional: true - '@esbuild/linux-arm64@0.25.4': - optional: true - '@esbuild/linux-arm64@0.25.9': optional: true '@esbuild/linux-arm64@0.27.3': optional: true - '@esbuild/linux-arm@0.25.4': - optional: true - '@esbuild/linux-arm@0.25.9': optional: true '@esbuild/linux-arm@0.27.3': optional: true - '@esbuild/linux-ia32@0.25.4': - optional: true - '@esbuild/linux-ia32@0.25.9': optional: true '@esbuild/linux-ia32@0.27.3': optional: true - '@esbuild/linux-loong64@0.25.4': - optional: true - '@esbuild/linux-loong64@0.25.9': optional: true '@esbuild/linux-loong64@0.27.3': optional: true - '@esbuild/linux-mips64el@0.25.4': - optional: true - '@esbuild/linux-mips64el@0.25.9': optional: true '@esbuild/linux-mips64el@0.27.3': optional: true - '@esbuild/linux-ppc64@0.25.4': - optional: true - '@esbuild/linux-ppc64@0.25.9': optional: true '@esbuild/linux-ppc64@0.27.3': optional: true - '@esbuild/linux-riscv64@0.25.4': - optional: true - '@esbuild/linux-riscv64@0.25.9': optional: true '@esbuild/linux-riscv64@0.27.3': optional: true - '@esbuild/linux-s390x@0.25.4': - optional: true - '@esbuild/linux-s390x@0.25.9': optional: true '@esbuild/linux-s390x@0.27.3': optional: true - '@esbuild/linux-x64@0.25.4': - optional: true - '@esbuild/linux-x64@0.25.9': optional: true '@esbuild/linux-x64@0.27.3': optional: true - '@esbuild/netbsd-arm64@0.25.4': - optional: true - '@esbuild/netbsd-arm64@0.25.9': optional: true '@esbuild/netbsd-arm64@0.27.3': optional: true - '@esbuild/netbsd-x64@0.25.4': - optional: true - '@esbuild/netbsd-x64@0.25.9': optional: true '@esbuild/netbsd-x64@0.27.3': optional: true - '@esbuild/openbsd-arm64@0.25.4': - optional: true - '@esbuild/openbsd-arm64@0.25.9': optional: true '@esbuild/openbsd-arm64@0.27.3': optional: true - '@esbuild/openbsd-x64@0.25.4': - optional: true - '@esbuild/openbsd-x64@0.25.9': optional: true @@ -16582,36 +16324,24 @@ snapshots: '@esbuild/openharmony-arm64@0.27.3': optional: true - '@esbuild/sunos-x64@0.25.4': - optional: true - '@esbuild/sunos-x64@0.25.9': optional: true '@esbuild/sunos-x64@0.27.3': optional: true - '@esbuild/win32-arm64@0.25.4': - optional: true - '@esbuild/win32-arm64@0.25.9': optional: true '@esbuild/win32-arm64@0.27.3': optional: true - '@esbuild/win32-ia32@0.25.4': - optional: true - '@esbuild/win32-ia32@0.25.9': optional: true '@esbuild/win32-ia32@0.27.3': optional: true - '@esbuild/win32-x64@0.25.4': - optional: true - '@esbuild/win32-x64@0.25.9': optional: true @@ -18461,11 +18191,11 @@ snapshots: - webpack-cli - webpack-hot-middleware - '@nx/vite@22.5.4(@babel/traverse@7.29.0)(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19))(nx@22.5.4(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19)))(typescript@5.9.2)(vite@7.1.5(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))(vitest@4.0.18)': + '@nx/vite@22.5.4(@babel/traverse@7.29.0)(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19))(nx@22.5.4(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19)))(typescript@5.9.2)(vite@7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))(vitest@4.0.18)': dependencies: '@nx/devkit': 22.5.4(nx@22.5.4(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19))) '@nx/js': 22.5.4(@babel/traverse@7.29.0)(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19))(nx@22.5.4(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19))) - '@nx/vitest': 22.5.4(@babel/traverse@7.29.0)(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19))(nx@22.5.4(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19)))(typescript@5.9.2)(vite@7.1.5(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))(vitest@4.0.18) + '@nx/vitest': 22.5.4(@babel/traverse@7.29.0)(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19))(nx@22.5.4(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19)))(typescript@5.9.2)(vite@7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))(vitest@4.0.18) '@phenomnomnominal/tsquery': 6.1.4(typescript@5.9.2) ajv: 8.17.1 enquirer: 2.3.6 @@ -18473,7 +18203,7 @@ snapshots: semver: 7.7.3 tsconfig-paths: 4.2.0 tslib: 2.8.1 - vite: 7.1.5(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0) + vite: 7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0) vitest: 4.0.18(@types/node@20.19.9)(@vitest/browser-playwright@4.0.18)(@vitest/ui@4.0.18)(happy-dom@18.0.1)(jiti@2.4.2)(jsdom@22.1.0)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0) transitivePeerDependencies: - '@babel/traverse' @@ -18485,7 +18215,7 @@ snapshots: - typescript - verdaccio - '@nx/vitest@22.5.4(@babel/traverse@7.29.0)(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19))(nx@22.5.4(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19)))(typescript@5.9.2)(vite@7.1.5(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))(vitest@4.0.18)': + '@nx/vitest@22.5.4(@babel/traverse@7.29.0)(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19))(nx@22.5.4(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19)))(typescript@5.9.2)(vite@7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))(vitest@4.0.18)': dependencies: '@nx/devkit': 22.5.4(nx@22.5.4(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19))) '@nx/js': 22.5.4(@babel/traverse@7.29.0)(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19))(nx@22.5.4(@swc-node/register@1.11.1(@swc/core@1.15.8(@swc/helpers@0.5.19))(@swc/types@0.1.25)(typescript@5.9.2))(@swc/core@1.15.8(@swc/helpers@0.5.19))) @@ -18493,7 +18223,7 @@ snapshots: semver: 7.7.4 tslib: 2.8.1 optionalDependencies: - vite: 7.1.5(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0) + vite: 7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0) vitest: 4.0.18(@types/node@20.19.9)(@vitest/browser-playwright@4.0.18)(@vitest/ui@4.0.18)(happy-dom@18.0.1)(jiti@2.4.2)(jsdom@22.1.0)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0) transitivePeerDependencies: - '@babel/traverse' @@ -19952,14 +19682,14 @@ snapshots: '@unrs/resolver-binding-win32-x64-msvc@1.11.1': optional: true - '@vitejs/plugin-basic-ssl@2.1.4(vite@7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.97.3)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))': + '@vitejs/plugin-basic-ssl@2.1.4(vite@7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))': dependencies: - vite: 7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.97.3)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0) + vite: 7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0) - '@vitest/browser-playwright@4.0.18(playwright@1.58.2)(vite@7.1.5(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))(vitest@4.0.18)': + '@vitest/browser-playwright@4.0.18(playwright@1.58.2)(vite@7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))(vitest@4.0.18)': dependencies: - '@vitest/browser': 4.0.18(vite@7.1.5(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))(vitest@4.0.18) - '@vitest/mocker': 4.0.18(vite@7.1.5(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0)) + '@vitest/browser': 4.0.18(vite@7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))(vitest@4.0.18) + '@vitest/mocker': 4.0.18(vite@7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0)) playwright: 1.58.2 tinyrainbow: 3.0.3 vitest: 4.0.18(@types/node@20.19.9)(@vitest/browser-playwright@4.0.18)(@vitest/ui@4.0.18)(happy-dom@18.0.1)(jiti@2.4.2)(jsdom@22.1.0)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0) @@ -19969,9 +19699,9 @@ snapshots: - utf-8-validate - vite - '@vitest/browser@4.0.18(vite@7.1.5(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))(vitest@4.0.18)': + '@vitest/browser@4.0.18(vite@7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))(vitest@4.0.18)': dependencies: - '@vitest/mocker': 4.0.18(vite@7.1.5(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0)) + '@vitest/mocker': 4.0.18(vite@7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0)) '@vitest/utils': 4.0.18 magic-string: 0.30.21 pixelmatch: 7.1.0 @@ -19986,7 +19716,7 @@ snapshots: - utf-8-validate - vite - '@vitest/coverage-v8@4.0.18(@vitest/browser@4.0.18(vite@7.1.5(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))(vitest@4.0.18))(vitest@4.0.18)': + '@vitest/coverage-v8@4.0.18(@vitest/browser@4.0.18(vite@7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))(vitest@4.0.18))(vitest@4.0.18)': dependencies: '@bcoe/v8-coverage': 1.0.2 '@vitest/utils': 4.0.18 @@ -20000,7 +19730,7 @@ snapshots: tinyrainbow: 3.0.3 vitest: 4.0.18(@types/node@20.19.9)(@vitest/browser-playwright@4.0.18)(@vitest/ui@4.0.18)(happy-dom@18.0.1)(jiti@2.4.2)(jsdom@22.1.0)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0) optionalDependencies: - '@vitest/browser': 4.0.18(vite@7.1.5(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))(vitest@4.0.18) + '@vitest/browser': 4.0.18(vite@7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))(vitest@4.0.18) '@vitest/eslint-plugin@1.6.9(eslint@9.38.0(jiti@2.4.2))(typescript@5.9.2)(vitest@4.0.18)': dependencies: @@ -20022,13 +19752,13 @@ snapshots: chai: 6.2.2 tinyrainbow: 3.0.3 - '@vitest/mocker@4.0.18(vite@7.1.5(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))': + '@vitest/mocker@4.0.18(vite@7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))': dependencies: '@vitest/spy': 4.0.18 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: - vite: 7.1.5(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0) + vite: 7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0) '@vitest/pretty-format@4.0.18': dependencies: @@ -21776,34 +21506,6 @@ snapshots: esbuild-wasm@0.27.3: {} - esbuild@0.25.4: - optionalDependencies: - '@esbuild/aix-ppc64': 0.25.4 - '@esbuild/android-arm': 0.25.4 - '@esbuild/android-arm64': 0.25.4 - '@esbuild/android-x64': 0.25.4 - '@esbuild/darwin-arm64': 0.25.4 - '@esbuild/darwin-x64': 0.25.4 - '@esbuild/freebsd-arm64': 0.25.4 - '@esbuild/freebsd-x64': 0.25.4 - '@esbuild/linux-arm': 0.25.4 - '@esbuild/linux-arm64': 0.25.4 - '@esbuild/linux-ia32': 0.25.4 - '@esbuild/linux-loong64': 0.25.4 - '@esbuild/linux-mips64el': 0.25.4 - '@esbuild/linux-ppc64': 0.25.4 - '@esbuild/linux-riscv64': 0.25.4 - '@esbuild/linux-s390x': 0.25.4 - '@esbuild/linux-x64': 0.25.4 - '@esbuild/netbsd-arm64': 0.25.4 - '@esbuild/netbsd-x64': 0.25.4 - '@esbuild/openbsd-arm64': 0.25.4 - '@esbuild/openbsd-x64': 0.25.4 - '@esbuild/sunos-x64': 0.25.4 - '@esbuild/win32-arm64': 0.25.4 - '@esbuild/win32-ia32': 0.25.4 - '@esbuild/win32-x64': 0.25.4 - esbuild@0.25.9: optionalDependencies: '@esbuild/aix-ppc64': 0.25.9 @@ -27926,9 +27628,9 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.2 - vite@7.1.5(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0): + vite@7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0): dependencies: - esbuild: 0.25.4 + esbuild: 0.27.3 fdir: 6.5.0(picomatch@4.0.3) picomatch: 4.0.3 postcss: 8.5.6 @@ -27969,7 +27671,7 @@ snapshots: vitest@4.0.18(@types/node@20.19.9)(@vitest/browser-playwright@4.0.18)(@vitest/ui@4.0.18)(happy-dom@18.0.1)(jiti@2.4.2)(jsdom@22.1.0)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0): dependencies: '@vitest/expect': 4.0.18 - '@vitest/mocker': 4.0.18(vite@7.1.5(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0)) + '@vitest/mocker': 4.0.18(vite@7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0)) '@vitest/pretty-format': 4.0.18 '@vitest/runner': 4.0.18 '@vitest/snapshot': 4.0.18 @@ -27986,11 +27688,11 @@ snapshots: tinyexec: 1.0.2 tinyglobby: 0.2.15 tinyrainbow: 3.0.3 - vite: 7.1.5(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0) + vite: 7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0) why-is-node-running: 2.3.0 optionalDependencies: '@types/node': 20.19.9 - '@vitest/browser-playwright': 4.0.18(playwright@1.58.2)(vite@7.1.5(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))(vitest@4.0.18) + '@vitest/browser-playwright': 4.0.18(playwright@1.58.2)(vite@7.3.1(@types/node@20.19.9)(jiti@2.4.2)(less@4.4.2)(sass-embedded@1.92.1)(sass@1.92.1)(stylus@0.64.0)(terser@5.46.0)(tsx@4.19.4)(yaml@2.7.0))(vitest@4.0.18) '@vitest/ui': 4.0.18(vitest@4.0.18) happy-dom: 18.0.1 jsdom: 22.1.0