diff --git a/.gitignore b/.gitignore index cfc9c649..f204e65a 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,6 @@ coverage # Packed packages mendix-*.tgz + +# Git worktrees +.worktrees/ diff --git a/packages/pluggable-widgets-tools/CHANGELOG.md b/packages/pluggable-widgets-tools/CHANGELOG.md index 11177170..91c7297b 100644 --- a/packages/pluggable-widgets-tools/CHANGELOG.md +++ b/packages/pluggable-widgets-tools/CHANGELOG.md @@ -6,6 +6,15 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +### Changed + +- We replaced `ts-jest` with `@swc/jest` as the Jest transform (3–5× faster for TSX-heavy test suites) and switched the test runner from `jest-jasmine2` to `jest-circus`. + +### Breaking Changes + +- The `jest-jasmine2` runner has been removed. Tests using Jasmine-specific globals (`jasmine.createSpy()`, `jasmine.objectContaining()`, etc.) will throw `ReferenceError: jasmine is not defined`. Replace with Jest equivalents: `jest.fn()`, `expect.objectContaining()`. +- Consumers who extended the base config with `globals['ts-jest']` options must migrate those settings to the `@swc/jest` transform config. + ## [11.11.0] - 2026-06-04 ### Added diff --git a/packages/pluggable-widgets-tools/package.json b/packages/pluggable-widgets-tools/package.json index c0b42293..1e3c2ae4 100644 --- a/packages/pluggable-widgets-tools/package.json +++ b/packages/pluggable-widgets-tools/package.json @@ -97,6 +97,8 @@ "semver": "^7.3.2", "shelljs": "^0.10.0", "shx": "^0.4.0", + "@swc/core": "^1.10.0", + "@swc/jest": "^0.2.37", "ts-jest": "^29.4.9", "ts-node": "^10.9.2", "typescript": "^5.6.3", diff --git a/packages/pluggable-widgets-tools/test-config/jest.config.js b/packages/pluggable-widgets-tools/test-config/jest.config.js index 55311539..b4b9c6ea 100644 --- a/packages/pluggable-widgets-tools/test-config/jest.config.js +++ b/packages/pluggable-widgets-tools/test-config/jest.config.js @@ -4,18 +4,22 @@ const projectDir = process.cwd(); module.exports = { clearMocks: true, - testRunner: "jest-jasmine2", + testRunner: "jest-circus/runner", rootDir: join(projectDir, "src"), setupFilesAfterEnv: [join(__dirname, "test-index.js")], testMatch: ["/**/*.spec.{js,jsx,ts,tsx}"], transform: { - "^.+\\.tsx?$": [ - "ts-jest", + "^.+\\.(t|j)sx?$": [ + "@swc/jest", { - tsconfig: { module: "commonjs", target: "ES2019" } + jsc: { + transform: { react: { runtime: "automatic" } }, + parser: { syntax: "typescript", tsx: true, decorators: true }, + target: "es2019" + }, + module: { type: "commonjs" } } ], - "^.+\\.jsx?$": join(__dirname, "transform.js"), "^.+\\.svg$": join(__dirname, "jest-svg-transformer") }, moduleNameMapper: { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 693dee0d..a356934a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -28,7 +28,7 @@ importers: version: 10.1.8(eslint@10.4.0) eslint-plugin-jest: specifier: ^29.15.2 - version: 29.15.2(@typescript-eslint/eslint-plugin@8.59.3(@typescript-eslint/parser@8.59.3(eslint@10.4.0)(typescript@5.9.3))(eslint@10.4.0)(typescript@5.9.3))(eslint@10.4.0)(jest@30.4.2(@types/node@20.19.41)(ts-node@10.9.2(@types/node@20.19.41)(typescript@5.9.3)))(typescript@5.9.3) + version: 29.15.2(@typescript-eslint/eslint-plugin@8.59.3(@typescript-eslint/parser@8.59.3(eslint@10.4.0)(typescript@5.9.3))(eslint@10.4.0)(typescript@5.9.3))(eslint@10.4.0)(jest@30.4.2(@types/node@20.19.41)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@20.19.41)(typescript@5.9.3)))(typescript@5.9.3) eslint-plugin-prettier: specifier: ^5.5.5 version: 5.5.5(eslint-config-prettier@10.1.8(eslint@10.4.0))(eslint@10.4.0)(prettier@3.8.3) @@ -97,7 +97,7 @@ importers: version: 1.2.2 ts-node: specifier: ^10.9.1 - version: 10.9.2(@types/node@20.19.41)(typescript@4.9.5) + version: 10.9.2(@swc/core@1.15.41)(@types/node@20.19.41)(typescript@4.9.5) typescript: specifier: ^4.8.4 version: 4.9.5 @@ -131,7 +131,7 @@ importers: version: 5.0.2 jest: specifier: ^30.3.0 - version: 30.4.2(@types/node@20.19.41)(ts-node@10.9.2(@types/node@20.19.41)(typescript@5.9.3)) + version: 30.4.2(@types/node@20.19.41)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@20.19.41)(typescript@5.9.3)) packages/pluggable-widgets-tools: dependencies: @@ -192,6 +192,12 @@ importers: '@rollup/pluginutils': specifier: ^5.3.0 version: 5.3.0(rollup@4.60.4) + '@swc/core': + specifier: ^1.10.0 + version: 1.15.41 + '@swc/jest': + specifier: ^0.2.37 + version: 0.2.39(@swc/core@1.15.41) '@testing-library/dom': specifier: ^10.4.1 version: 10.4.1 @@ -203,7 +209,7 @@ importers: version: 16.3.2(@testing-library/dom@10.4.1)(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.6(react@19.2.6))(react@19.2.6) '@testing-library/react-native': specifier: ^13.3.3 - version: 13.3.3(jest@30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@types/node@16.18.126)(typescript@5.9.3)))(react-native@0.78.3(@babel/core@7.29.0)(@babel/preset-env@7.29.5(@babel/core@7.29.0))(@types/react@19.2.14)(react@19.2.6))(react-test-renderer@19.2.6(react@19.2.6))(react@19.2.6) + version: 13.3.3(jest@30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3)))(react-native@0.78.3(@babel/core@7.29.0)(@babel/preset-env@7.29.5(@babel/core@7.29.0))(@types/react@19.2.14)(react@19.2.6))(react-test-renderer@19.2.6(react@19.2.6))(react@19.2.6) '@testing-library/user-event': specifier: ^14.6.1 version: 14.6.1(@testing-library/dom@10.4.1) @@ -248,7 +254,7 @@ importers: version: 8.10.2(eslint@9.39.4) eslint-plugin-jest: specifier: ^29.15.2 - version: 29.15.2(@typescript-eslint/eslint-plugin@8.59.3(@typescript-eslint/parser@8.59.3(eslint@9.39.4)(typescript@5.9.3))(eslint@9.39.4)(typescript@5.9.3))(eslint@9.39.4)(jest@30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@types/node@16.18.126)(typescript@5.9.3)))(typescript@5.9.3) + version: 29.15.2(@typescript-eslint/eslint-plugin@8.59.3(@typescript-eslint/parser@8.59.3(eslint@9.39.4)(typescript@5.9.3))(eslint@9.39.4)(typescript@5.9.3))(eslint@9.39.4)(jest@30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3)))(typescript@5.9.3) eslint-plugin-prettier: specifier: ^3.3.1 version: 3.4.1(eslint-config-prettier@8.10.2(eslint@9.39.4))(eslint@9.39.4)(prettier@2.8.8) @@ -278,7 +284,7 @@ importers: version: 3.99.1 jest: specifier: ~30.3.0 - version: 30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@types/node@16.18.126)(typescript@5.9.3)) + version: 30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3)) jest-environment-jsdom: specifier: ~30.3.0 version: 30.3.0 @@ -335,7 +341,7 @@ importers: version: 2.0.5 rollup-plugin-postcss: specifier: ^4.0.2 - version: 4.0.2(postcss@8.5.14)(ts-node@10.9.2(@types/node@16.18.126)(typescript@5.9.3)) + version: 4.0.2(postcss@8.5.14)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3)) rollup-plugin-re: specifier: ^1.0.7 version: 1.0.7 @@ -353,10 +359,10 @@ importers: version: 0.4.0 ts-jest: specifier: ^29.4.9 - version: 29.4.9(@babel/core@7.29.0)(@jest/transform@30.4.1)(@jest/types@30.4.1)(babel-jest@29.7.0(@babel/core@7.29.0))(jest-util@30.4.1)(jest@30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@types/node@16.18.126)(typescript@5.9.3)))(typescript@5.9.3) + version: 29.4.9(@babel/core@7.29.0)(@jest/transform@30.4.1)(@jest/types@30.4.1)(babel-jest@29.7.0(@babel/core@7.29.0))(jest-util@30.4.1)(jest@30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3)))(typescript@5.9.3) ts-node: specifier: ^10.9.2 - version: 10.9.2(@types/node@16.18.126)(typescript@5.9.3) + version: 10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3) typescript: specifier: ^5.6.3 version: 5.9.3 @@ -393,7 +399,7 @@ importers: version: 2.7.0 ts-node: specifier: ^10.9.1 - version: 10.9.2(@types/node@16.18.126)(typescript@4.9.5) + version: 10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@4.9.5) devDependencies: '@types/node': specifier: ^16.11.19 @@ -1432,6 +1438,10 @@ packages: resolution: {integrity: sha512-4QqS3LY5PBmTRHj9sAg1HLoPzqAI0uOX6wI/TRqHIcOxlFidy6YEmCQJk6FSZjNLGCeubDMfmkWL+qaLKhSGQA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + '@jest/create-cache-key-function@30.4.1': + resolution: {integrity: sha512-R+xGEtzA95NIsvpXJSROG4t01956dDOt17KpamguY4XOnGvdHNFFXE7Er0C1OAsRjOwiIxpKqOvGlznIGZIQlQ==} + engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} + '@jest/diff-sequences@30.3.0': resolution: {integrity: sha512-cG51MVnLq1ecVUaQ3fr6YuuAOitHK1S4WUJHnsPFE/quQr33ADUx1FfrTCpMCRxvy0Yr9BThKpDjSlcTi91tMA==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} @@ -2187,6 +2197,105 @@ packages: '@sinonjs/fake-timers@15.4.0': resolution: {integrity: sha512-DsG+8/LscQIQg68J6Ef3dv10u6nVyetYn923s3/sus5eaGfTo1of5WMZSLf0UJc9KDuKPilPH0UDJCjvNbDNCA==} + '@swc/core-darwin-arm64@1.15.41': + resolution: {integrity: sha512-kREh6J5paQFvP3i7f/4FbqRNOJREutVFVOkder4GVyCBQ39YmER55cW/y1NNjwrchzFqgYswFn0mMDCqbqKzrw==} + engines: {node: '>=10'} + cpu: [arm64] + os: [darwin] + + '@swc/core-darwin-x64@1.15.41': + resolution: {integrity: sha512-N8B56ESFazZAWZyIkecADSPCwlLEinW7QLMEeotCpv4J7VXwfH+OLkmRL8o96UZ+1355fwHxDTS6/wK7yucvkA==} + engines: {node: '>=10'} + cpu: [x64] + os: [darwin] + + '@swc/core-linux-arm-gnueabihf@1.15.41': + resolution: {integrity: sha512-6XrId2fyle0mS5xxON8rU84mPd2Cq1kDJRj+4BnQKTd7u+2kSA6Ww+JkOP0iTNqOqt9OXhPOEAjBHAuonWcdCg==} + engines: {node: '>=10'} + cpu: [arm] + os: [linux] + + '@swc/core-linux-arm64-gnu@1.15.41': + resolution: {integrity: sha512-ynLIarxlkVnqHn1D0fKOVht6mNU5ks6lrH+MY3kkS+XFaGGgDxFZVjWKJlkYTKm3RCvBTfA8Ng5fLufXheMRKQ==} + engines: {node: '>=10'} + cpu: [arm64] + os: [linux] + libc: [glibc] + + '@swc/core-linux-arm64-musl@1.15.41': + resolution: {integrity: sha512-dXu/5vd4gh8symyhRF+4G7gOPkjmb4pONhh7sl+6GSiW0LOKZlfu5kXmyFbTz9smOT7jgr002qY9b1nujjXt2A==} + engines: {node: '>=10'} + cpu: [arm64] + os: [linux] + libc: [musl] + + '@swc/core-linux-ppc64-gnu@1.15.41': + resolution: {integrity: sha512-XGO6zVPXoPE0gf/XnI4jBbafNT13AYgoh6ns0JCSdOetI/kqVf0vhpz7NuNgAzZrMVCsmieqjPoTwViDgh4mOQ==} + engines: {node: '>=10'} + cpu: [ppc64] + os: [linux] + libc: [glibc] + + '@swc/core-linux-s390x-gnu@1.15.41': + resolution: {integrity: sha512-0WUglRwyZtW+iMi7J3iFdrCxreZZIKf4egTwEQfIYRsqFax69A0OrFj+NIoFSE03xBT/IFRrg+S8K6f9Ky+4hA==} + engines: {node: '>=10'} + cpu: [s390x] + os: [linux] + libc: [glibc] + + '@swc/core-linux-x64-gnu@1.15.41': + resolution: {integrity: sha512-VxkuQK59c0tHm6uJZCUrS3cyA2JhGGfdU6e41SZz0x/JS+4Sm7C1mIc97In14vkZJopEt7yXA2TouCqZDSygEA==} + engines: {node: '>=10'} + cpu: [x64] + os: [linux] + libc: [glibc] + + '@swc/core-linux-x64-musl@1.15.41': + resolution: {integrity: sha512-/0qXIu1ZxggLuovLb22vFfKHq2AA4n6Whw5UwmVCHk4pkw7KWnPIQpMCEqUMPsNkFJig7PPp/TSYFu8ZEb2rtQ==} + engines: {node: '>=10'} + cpu: [x64] + os: [linux] + libc: [musl] + + '@swc/core-win32-arm64-msvc@1.15.41': + resolution: {integrity: sha512-Y481sMNZM6rECh9VO4+y26N1lWEDAyxnBZskUf37fl90uHE946VHfmiVQWT0uMFOhyJJFovGTRuF4W82dwewUg==} + engines: {node: '>=10'} + cpu: [arm64] + os: [win32] + + '@swc/core-win32-ia32-msvc@1.15.41': + resolution: {integrity: sha512-BAchBD5qeUzy3hiPSLJtaaoSm4blCLyYffOF1bGE4ETcV+OisqjUAwDQMJj++4bTpvMCDzwC+Bj3PmQyBCtscw==} + engines: {node: '>=10'} + cpu: [ia32] + os: [win32] + + '@swc/core-win32-x64-msvc@1.15.41': + resolution: {integrity: sha512-WOkA+fJ/ViVBQDsSV9JC52NACTe5PhlurA6viASDZGb7HR3KS01ZG7RZ+Bg6SVQFIoq3gSbTsskQVe6EbHFAYw==} + engines: {node: '>=10'} + cpu: [x64] + os: [win32] + + '@swc/core@1.15.41': + resolution: {integrity: sha512-03nQq/082QRJJiOvp3FGbgxTGyyxMxohPTjhk/W9bD2J0tk4ukITI7goOhOO2WbaHn/lsPmo/zf8+DIXhwpgYQ==} + engines: {node: '>=10'} + peerDependencies: + '@swc/helpers': '>=0.5.17' + peerDependenciesMeta: + '@swc/helpers': + optional: true + + '@swc/counter@0.1.3': + resolution: {integrity: sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==} + + '@swc/jest@0.2.39': + resolution: {integrity: sha512-eyokjOwYd0Q8RnMHri+8/FS1HIrIUKK/sRrFp8c1dThUOfNeCWbLmBP1P5VsKdvmkd25JaH+OKYwEYiAYg9YAA==} + engines: {npm: '>= 7.0.0'} + peerDependencies: + '@swc/core': '*' + + '@swc/types@0.1.27': + resolution: {integrity: sha512-K6h3iUlqeM946U4sXFYeahefR1YBbXJvko+hv8WS8/0BNJ4OHiHRywMnQUJCqkR7Y9+hqQ1TvEpiKqUhz7NEFg==} + '@testing-library/dom@10.4.1': resolution: {integrity: sha512-o4PXJQidqJl82ckFaXUeoAW+XysPLauYI43Abki5hABd853iMhitooc6znOnczgbTYmEP6U6/y1ZyKAIsvMKGg==} engines: {node: '>=18'} @@ -4668,6 +4777,9 @@ packages: engines: {node: '>=6'} hasBin: true + jsonc-parser@3.3.1: + resolution: {integrity: sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==} + jsonfile@6.2.1: resolution: {integrity: sha512-zwOTdL3rFQ/lRdBnntKVOX6k5cKJwEc1HdilT71BWEu7J41gXIB2MRp+vxduPSwZJPWBxEzv4yH1wYLJGUHX4Q==} @@ -8143,7 +8255,7 @@ snapshots: jest-util: 30.4.1 slash: 3.0.0 - '@jest/core@30.3.0(ts-node@10.9.2(@types/node@16.18.126)(typescript@5.9.3))': + '@jest/core@30.3.0(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3))': dependencies: '@jest/console': 30.3.0 '@jest/pattern': 30.0.1 @@ -8158,7 +8270,7 @@ snapshots: exit-x: 0.2.2 graceful-fs: 4.2.11 jest-changed-files: 30.3.0 - jest-config: 30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@types/node@16.18.126)(typescript@5.9.3)) + jest-config: 30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3)) jest-haste-map: 30.3.0 jest-message-util: 30.3.0 jest-regex-util: 30.0.1 @@ -8178,7 +8290,7 @@ snapshots: - supports-color - ts-node - '@jest/core@30.4.2(ts-node@10.9.2(@types/node@20.19.41)(typescript@5.9.3))': + '@jest/core@30.4.2(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@20.19.41)(typescript@5.9.3))': dependencies: '@jest/console': 30.4.1 '@jest/pattern': 30.4.0 @@ -8194,7 +8306,7 @@ snapshots: fast-json-stable-stringify: 2.1.0 graceful-fs: 4.2.11 jest-changed-files: 30.4.1 - jest-config: 30.4.2(@types/node@16.18.126)(ts-node@10.9.2(@types/node@20.19.41)(typescript@5.9.3)) + jest-config: 30.4.2(@types/node@16.18.126)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@20.19.41)(typescript@5.9.3)) jest-haste-map: 30.4.1 jest-message-util: 30.4.1 jest-regex-util: 30.4.0 @@ -8218,6 +8330,10 @@ snapshots: dependencies: '@jest/types': 29.6.3 + '@jest/create-cache-key-function@30.4.1': + dependencies: + '@jest/types': 30.4.1 + '@jest/diff-sequences@30.3.0': {} '@jest/diff-sequences@30.4.0': {} @@ -9234,6 +9350,73 @@ snapshots: dependencies: '@sinonjs/commons': 3.0.1 + '@swc/core-darwin-arm64@1.15.41': + optional: true + + '@swc/core-darwin-x64@1.15.41': + optional: true + + '@swc/core-linux-arm-gnueabihf@1.15.41': + optional: true + + '@swc/core-linux-arm64-gnu@1.15.41': + optional: true + + '@swc/core-linux-arm64-musl@1.15.41': + optional: true + + '@swc/core-linux-ppc64-gnu@1.15.41': + optional: true + + '@swc/core-linux-s390x-gnu@1.15.41': + optional: true + + '@swc/core-linux-x64-gnu@1.15.41': + optional: true + + '@swc/core-linux-x64-musl@1.15.41': + optional: true + + '@swc/core-win32-arm64-msvc@1.15.41': + optional: true + + '@swc/core-win32-ia32-msvc@1.15.41': + optional: true + + '@swc/core-win32-x64-msvc@1.15.41': + optional: true + + '@swc/core@1.15.41': + dependencies: + '@swc/counter': 0.1.3 + '@swc/types': 0.1.27 + optionalDependencies: + '@swc/core-darwin-arm64': 1.15.41 + '@swc/core-darwin-x64': 1.15.41 + '@swc/core-linux-arm-gnueabihf': 1.15.41 + '@swc/core-linux-arm64-gnu': 1.15.41 + '@swc/core-linux-arm64-musl': 1.15.41 + '@swc/core-linux-ppc64-gnu': 1.15.41 + '@swc/core-linux-s390x-gnu': 1.15.41 + '@swc/core-linux-x64-gnu': 1.15.41 + '@swc/core-linux-x64-musl': 1.15.41 + '@swc/core-win32-arm64-msvc': 1.15.41 + '@swc/core-win32-ia32-msvc': 1.15.41 + '@swc/core-win32-x64-msvc': 1.15.41 + + '@swc/counter@0.1.3': {} + + '@swc/jest@0.2.39(@swc/core@1.15.41)': + dependencies: + '@jest/create-cache-key-function': 30.4.1 + '@swc/core': 1.15.41 + '@swc/counter': 0.1.3 + jsonc-parser: 3.3.1 + + '@swc/types@0.1.27': + dependencies: + '@swc/counter': 0.1.3 + '@testing-library/dom@10.4.1': dependencies: '@babel/code-frame': 7.29.0 @@ -9254,7 +9437,7 @@ snapshots: picocolors: 1.1.1 redent: 3.0.0 - '@testing-library/react-native@13.3.3(jest@30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@types/node@16.18.126)(typescript@5.9.3)))(react-native@0.78.3(@babel/core@7.29.0)(@babel/preset-env@7.29.5(@babel/core@7.29.0))(@types/react@19.2.14)(react@19.2.6))(react-test-renderer@19.2.6(react@19.2.6))(react@19.2.6)': + '@testing-library/react-native@13.3.3(jest@30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3)))(react-native@0.78.3(@babel/core@7.29.0)(@babel/preset-env@7.29.5(@babel/core@7.29.0))(@types/react@19.2.14)(react@19.2.6))(react-test-renderer@19.2.6(react@19.2.6))(react@19.2.6)': dependencies: jest-matcher-utils: 30.4.1 picocolors: 1.1.1 @@ -9264,7 +9447,7 @@ snapshots: react-test-renderer: 19.2.6(react@19.2.6) redent: 3.0.0 optionalDependencies: - jest: 30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@types/node@16.18.126)(typescript@5.9.3)) + jest: 30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3)) '@testing-library/react@16.3.2(@testing-library/dom@10.4.1)(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.6(react@19.2.6))(react@19.2.6)': dependencies: @@ -10668,24 +10851,24 @@ snapshots: dependencies: eslint: 9.39.4 - eslint-plugin-jest@29.15.2(@typescript-eslint/eslint-plugin@8.59.3(@typescript-eslint/parser@8.59.3(eslint@10.4.0)(typescript@5.9.3))(eslint@10.4.0)(typescript@5.9.3))(eslint@10.4.0)(jest@30.4.2(@types/node@20.19.41)(ts-node@10.9.2(@types/node@20.19.41)(typescript@5.9.3)))(typescript@5.9.3): + eslint-plugin-jest@29.15.2(@typescript-eslint/eslint-plugin@8.59.3(@typescript-eslint/parser@8.59.3(eslint@10.4.0)(typescript@5.9.3))(eslint@10.4.0)(typescript@5.9.3))(eslint@10.4.0)(jest@30.4.2(@types/node@20.19.41)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@20.19.41)(typescript@5.9.3)))(typescript@5.9.3): dependencies: '@typescript-eslint/utils': 8.59.3(eslint@10.4.0)(typescript@5.9.3) eslint: 10.4.0 optionalDependencies: '@typescript-eslint/eslint-plugin': 8.59.3(@typescript-eslint/parser@8.59.3(eslint@10.4.0)(typescript@5.9.3))(eslint@10.4.0)(typescript@5.9.3) - jest: 30.4.2(@types/node@20.19.41)(ts-node@10.9.2(@types/node@20.19.41)(typescript@5.9.3)) + jest: 30.4.2(@types/node@20.19.41)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@20.19.41)(typescript@5.9.3)) typescript: 5.9.3 transitivePeerDependencies: - supports-color - eslint-plugin-jest@29.15.2(@typescript-eslint/eslint-plugin@8.59.3(@typescript-eslint/parser@8.59.3(eslint@9.39.4)(typescript@5.9.3))(eslint@9.39.4)(typescript@5.9.3))(eslint@9.39.4)(jest@30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@types/node@16.18.126)(typescript@5.9.3)))(typescript@5.9.3): + eslint-plugin-jest@29.15.2(@typescript-eslint/eslint-plugin@8.59.3(@typescript-eslint/parser@8.59.3(eslint@9.39.4)(typescript@5.9.3))(eslint@9.39.4)(typescript@5.9.3))(eslint@9.39.4)(jest@30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3)))(typescript@5.9.3): dependencies: '@typescript-eslint/utils': 8.59.3(eslint@9.39.4)(typescript@5.9.3) eslint: 9.39.4 optionalDependencies: '@typescript-eslint/eslint-plugin': 8.59.3(@typescript-eslint/parser@8.59.3(eslint@9.39.4)(typescript@5.9.3))(eslint@9.39.4)(typescript@5.9.3) - jest: 30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@types/node@16.18.126)(typescript@5.9.3)) + jest: 30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3)) typescript: 5.9.3 transitivePeerDependencies: - supports-color @@ -11682,15 +11865,15 @@ snapshots: - babel-plugin-macros - supports-color - jest-cli@30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@types/node@16.18.126)(typescript@5.9.3)): + jest-cli@30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3)): dependencies: - '@jest/core': 30.3.0(ts-node@10.9.2(@types/node@16.18.126)(typescript@5.9.3)) + '@jest/core': 30.3.0(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3)) '@jest/test-result': 30.3.0 '@jest/types': 30.3.0 chalk: 4.1.2 exit-x: 0.2.2 import-local: 3.2.0 - jest-config: 30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@types/node@16.18.126)(typescript@5.9.3)) + jest-config: 30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3)) jest-util: 30.3.0 jest-validate: 30.3.0 yargs: 17.7.2 @@ -11701,15 +11884,15 @@ snapshots: - supports-color - ts-node - jest-cli@30.4.2(@types/node@20.19.41)(ts-node@10.9.2(@types/node@20.19.41)(typescript@5.9.3)): + jest-cli@30.4.2(@types/node@20.19.41)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@20.19.41)(typescript@5.9.3)): dependencies: - '@jest/core': 30.4.2(ts-node@10.9.2(@types/node@20.19.41)(typescript@5.9.3)) + '@jest/core': 30.4.2(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@20.19.41)(typescript@5.9.3)) '@jest/test-result': 30.4.1 '@jest/types': 30.4.1 chalk: 4.1.2 exit-x: 0.2.2 import-local: 3.2.0 - jest-config: 30.4.2(@types/node@20.19.41)(ts-node@10.9.2(@types/node@20.19.41)(typescript@5.9.3)) + jest-config: 30.4.2(@types/node@20.19.41)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@20.19.41)(typescript@5.9.3)) jest-util: 30.4.1 jest-validate: 30.4.1 yargs: 17.7.2 @@ -11720,7 +11903,7 @@ snapshots: - supports-color - ts-node - jest-config@30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@types/node@16.18.126)(typescript@5.9.3)): + jest-config@30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3)): dependencies: '@babel/core': 7.29.0 '@jest/get-type': 30.1.0 @@ -11747,12 +11930,12 @@ snapshots: strip-json-comments: 3.1.1 optionalDependencies: '@types/node': 16.18.126 - ts-node: 10.9.2(@types/node@16.18.126)(typescript@5.9.3) + ts-node: 10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3) transitivePeerDependencies: - babel-plugin-macros - supports-color - jest-config@30.4.2(@types/node@16.18.126)(ts-node@10.9.2(@types/node@20.19.41)(typescript@5.9.3)): + jest-config@30.4.2(@types/node@16.18.126)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@20.19.41)(typescript@5.9.3)): dependencies: '@babel/core': 7.29.0 '@jest/get-type': 30.1.0 @@ -11779,12 +11962,12 @@ snapshots: strip-json-comments: 3.1.1 optionalDependencies: '@types/node': 16.18.126 - ts-node: 10.9.2(@types/node@20.19.41)(typescript@5.9.3) + ts-node: 10.9.2(@swc/core@1.15.41)(@types/node@20.19.41)(typescript@5.9.3) transitivePeerDependencies: - babel-plugin-macros - supports-color - jest-config@30.4.2(@types/node@20.19.41)(ts-node@10.9.2(@types/node@20.19.41)(typescript@5.9.3)): + jest-config@30.4.2(@types/node@20.19.41)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@20.19.41)(typescript@5.9.3)): dependencies: '@babel/core': 7.29.0 '@jest/get-type': 30.1.0 @@ -11811,7 +11994,7 @@ snapshots: strip-json-comments: 3.1.1 optionalDependencies: '@types/node': 20.19.41 - ts-node: 10.9.2(@types/node@20.19.41)(typescript@5.9.3) + ts-node: 10.9.2(@swc/core@1.15.41)(@types/node@20.19.41)(typescript@5.9.3) transitivePeerDependencies: - babel-plugin-macros - supports-color @@ -12358,12 +12541,12 @@ snapshots: merge-stream: 2.0.0 supports-color: 8.1.1 - jest@30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@types/node@16.18.126)(typescript@5.9.3)): + jest@30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3)): dependencies: - '@jest/core': 30.3.0(ts-node@10.9.2(@types/node@16.18.126)(typescript@5.9.3)) + '@jest/core': 30.3.0(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3)) '@jest/types': 30.3.0 import-local: 3.2.0 - jest-cli: 30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@types/node@16.18.126)(typescript@5.9.3)) + jest-cli: 30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3)) transitivePeerDependencies: - '@types/node' - babel-plugin-macros @@ -12371,12 +12554,12 @@ snapshots: - supports-color - ts-node - jest@30.4.2(@types/node@20.19.41)(ts-node@10.9.2(@types/node@20.19.41)(typescript@5.9.3)): + jest@30.4.2(@types/node@20.19.41)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@20.19.41)(typescript@5.9.3)): dependencies: - '@jest/core': 30.4.2(ts-node@10.9.2(@types/node@20.19.41)(typescript@5.9.3)) + '@jest/core': 30.4.2(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@20.19.41)(typescript@5.9.3)) '@jest/types': 30.4.1 import-local: 3.2.0 - jest-cli: 30.4.2(@types/node@20.19.41)(ts-node@10.9.2(@types/node@20.19.41)(typescript@5.9.3)) + jest-cli: 30.4.2(@types/node@20.19.41)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@20.19.41)(typescript@5.9.3)) transitivePeerDependencies: - '@types/node' - babel-plugin-macros @@ -12467,6 +12650,8 @@ snapshots: json5@2.2.3: {} + jsonc-parser@3.3.1: {} + jsonfile@6.2.1: dependencies: universalify: 2.0.1 @@ -13408,13 +13593,13 @@ snapshots: read-cache: 1.0.0 resolve: 1.22.12 - postcss-load-config@3.1.4(postcss@8.5.14)(ts-node@10.9.2(@types/node@16.18.126)(typescript@5.9.3)): + postcss-load-config@3.1.4(postcss@8.5.14)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3)): dependencies: lilconfig: 2.1.0 yaml: 1.10.3 optionalDependencies: postcss: 8.5.14 - ts-node: 10.9.2(@types/node@16.18.126)(typescript@5.9.3) + ts-node: 10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3) postcss-merge-longhand@5.1.7(postcss@8.5.14): dependencies: @@ -13949,7 +14134,7 @@ snapshots: - bufferutil - utf-8-validate - rollup-plugin-postcss@4.0.2(postcss@8.5.14)(ts-node@10.9.2(@types/node@16.18.126)(typescript@5.9.3)): + rollup-plugin-postcss@4.0.2(postcss@8.5.14)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3)): dependencies: chalk: 4.1.2 concat-with-sourcemaps: 1.1.0 @@ -13958,7 +14143,7 @@ snapshots: p-queue: 6.6.2 pify: 5.0.0 postcss: 8.5.14 - postcss-load-config: 3.1.4(postcss@8.5.14)(ts-node@10.9.2(@types/node@16.18.126)(typescript@5.9.3)) + postcss-load-config: 3.1.4(postcss@8.5.14)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3)) postcss-modules: 4.3.1(postcss@8.5.14) promise.series: 0.2.0 resolve: 1.22.12 @@ -14555,12 +14740,12 @@ snapshots: dependencies: typescript: 5.9.3 - ts-jest@29.4.9(@babel/core@7.29.0)(@jest/transform@30.4.1)(@jest/types@30.4.1)(babel-jest@29.7.0(@babel/core@7.29.0))(jest-util@30.4.1)(jest@30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@types/node@16.18.126)(typescript@5.9.3)))(typescript@5.9.3): + ts-jest@29.4.9(@babel/core@7.29.0)(@jest/transform@30.4.1)(@jest/types@30.4.1)(babel-jest@29.7.0(@babel/core@7.29.0))(jest-util@30.4.1)(jest@30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3)))(typescript@5.9.3): dependencies: bs-logger: 0.2.6 fast-json-stable-stringify: 2.1.0 handlebars: 4.7.9 - jest: 30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@types/node@16.18.126)(typescript@5.9.3)) + jest: 30.3.0(@types/node@16.18.126)(ts-node@10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3)) json5: 2.2.3 lodash.memoize: 4.1.2 make-error: 1.3.6 @@ -14575,7 +14760,7 @@ snapshots: babel-jest: 29.7.0(@babel/core@7.29.0) jest-util: 30.4.1 - ts-node@10.9.2(@types/node@16.18.126)(typescript@4.9.5): + ts-node@10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@4.9.5): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.12 @@ -14592,8 +14777,10 @@ snapshots: typescript: 4.9.5 v8-compile-cache-lib: 3.0.1 yn: 3.1.1 + optionalDependencies: + '@swc/core': 1.15.41 - ts-node@10.9.2(@types/node@16.18.126)(typescript@5.9.3): + ts-node@10.9.2(@swc/core@1.15.41)(@types/node@16.18.126)(typescript@5.9.3): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.12 @@ -14610,8 +14797,10 @@ snapshots: typescript: 5.9.3 v8-compile-cache-lib: 3.0.1 yn: 3.1.1 + optionalDependencies: + '@swc/core': 1.15.41 - ts-node@10.9.2(@types/node@20.19.41)(typescript@4.9.5): + ts-node@10.9.2(@swc/core@1.15.41)(@types/node@20.19.41)(typescript@4.9.5): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.12 @@ -14628,8 +14817,10 @@ snapshots: typescript: 4.9.5 v8-compile-cache-lib: 3.0.1 yn: 3.1.1 + optionalDependencies: + '@swc/core': 1.15.41 - ts-node@10.9.2(@types/node@20.19.41)(typescript@5.9.3): + ts-node@10.9.2(@swc/core@1.15.41)(@types/node@20.19.41)(typescript@5.9.3): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.12 @@ -14646,6 +14837,8 @@ snapshots: typescript: 5.9.3 v8-compile-cache-lib: 3.0.1 yn: 3.1.1 + optionalDependencies: + '@swc/core': 1.15.41 optional: true tslib@2.8.1: {}