diff --git a/eslint.config.mjs b/eslint.config.mjs index 01245ec83fa..bc5b452bd94 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -273,6 +273,7 @@ const config = defineConfig([ }, rules: { ...vitest.configs.recommended.rules, + 'vitest/no-conditional-expect': 'off', }, settings: { vitest: { diff --git a/package-lock.json b/package-lock.json index 232def519e0..64f45201e56 100644 --- a/package-lock.json +++ b/package-lock.json @@ -32,9 +32,9 @@ "@primer/stylelint-config": "13.4.1", "@size-limit/preset-big-lib": "11.2.0", "@types/semver": "^7.7.1", - "@vitest/browser": "^4.0.3", - "@vitest/browser-playwright": "^4.0.3", - "@vitest/eslint-plugin": "^1.3.24", + "@vitest/browser": "^4.0.15", + "@vitest/browser-playwright": "^4.0.15", + "@vitest/eslint-plugin": "^1.5.2", "babel-plugin-react-compiler": "^1.0.0", "change-case": "^5.4.4", "eslint": "^9.39.1", @@ -63,7 +63,7 @@ "turbo": "^2.5.5", "typescript": "^5.9.2", "typescript-eslint": "^8.40.0", - "vitest": "^4.0.3" + "vitest": "^4.0.15" }, "engines": { "node": ">=12", @@ -80,7 +80,7 @@ "react-dom": "^18.3.1" }, "devDependencies": { - "@primer/react": "38.4.0", + "@primer/react": "38.5.0", "@primer/styled-react": "1.0.2", "@types/react": "^18.3.11", "@types/react-dom": "^18.3.0", @@ -94,7 +94,7 @@ "name": "example-nextjs", "version": "0.0.0", "dependencies": { - "@primer/react": "38.4.0", + "@primer/react": "38.5.0", "@primer/styled-react": "1.0.2", "next": "^16.0.7", "react": "^19.2.0", @@ -137,7 +137,7 @@ "version": "0.0.0", "dependencies": { "@primer/octicons-react": "^19.14.0", - "@primer/react": "38.4.0", + "@primer/react": "38.5.0", "@primer/styled-react": "1.0.2", "clsx": "^2.1.1", "next": "^16.0.7", @@ -9348,15 +9348,15 @@ } }, "node_modules/@vitest/browser": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@vitest/browser/-/browser-4.0.3.tgz", - "integrity": "sha512-XmGOU2m0x86yFIrAFiIQ5yV7dpk8hW1HCohUR7QOGfywGS8z2WshdEZc5A+G67mS69L8Ub3NEttjWtXVhw/Sew==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@vitest/browser/-/browser-4.0.15.tgz", + "integrity": "sha512-zedtczX688KehaIaAv7m25CeDLb0gBtAOa2Oi1G1cqvSO5aLSVfH6lpZMJLW8BKYuWMxLQc9/5GYoM+jgvGIrw==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/mocker": "4.0.3", - "@vitest/utils": "4.0.3", - "magic-string": "^0.30.19", + "@vitest/mocker": "4.0.15", + "@vitest/utils": "4.0.15", + "magic-string": "^0.30.21", "pixelmatch": "7.1.0", "pngjs": "^7.0.0", "sirv": "^3.0.2", @@ -9367,18 +9367,18 @@ "url": "https://opencollective.com/vitest" }, "peerDependencies": { - "vitest": "4.0.3" + "vitest": "4.0.15" } }, "node_modules/@vitest/browser-playwright": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@vitest/browser-playwright/-/browser-playwright-4.0.3.tgz", - "integrity": "sha512-dWbOAtgWRsa4ErGqBqb1noX8BzoHy3Ti1wgm+rA7qJ9bB1JaTDUK1yZk+WAhD/zKw9s6Eyi+etPumId1U8W7dA==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@vitest/browser-playwright/-/browser-playwright-4.0.15.tgz", + "integrity": "sha512-94yVpDbb+ykiT7mK6ToonGnq2GIHEQGBTZTAzGxBGQXcVNCh54YKC2/WkfaDzxy0m6Kgw05kq3FYHKHu+wRdIA==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/browser": "4.0.3", - "@vitest/mocker": "4.0.3", + "@vitest/browser": "4.0.15", + "@vitest/mocker": "4.0.15", "tinyrainbow": "^3.0.3" }, "funding": { @@ -9386,7 +9386,7 @@ }, "peerDependencies": { "playwright": "*", - "vitest": "4.0.3" + "vitest": "4.0.15" }, "peerDependenciesMeta": { "playwright": { @@ -9395,15 +9395,15 @@ } }, "node_modules/@vitest/browser-playwright/node_modules/@vitest/mocker": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-4.0.3.tgz", - "integrity": "sha512-evZcRspIPbbiJEe748zI2BRu94ThCBE+RkjCpVF8yoVYuTV7hMe+4wLF/7K86r8GwJHSmAPnPbZhpXWWrg1qbA==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-4.0.15.tgz", + "integrity": "sha512-CZ28GLfOEIFkvCFngN8Sfx5h+Se0zN+h4B7yOsPVCcgtiO7t5jt9xQh2E1UkFep+eb9fjyMfuC5gBypwb07fvQ==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/spy": "4.0.3", + "@vitest/spy": "4.0.15", "estree-walker": "^3.0.3", - "magic-string": "^0.30.19" + "magic-string": "^0.30.21" }, "funding": { "url": "https://opencollective.com/vitest" @@ -9422,9 +9422,9 @@ } }, "node_modules/@vitest/browser-playwright/node_modules/@vitest/spy": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-4.0.3.tgz", - "integrity": "sha512-82vVL8Cqz7rbXaNUl35V2G7xeNMAjBdNOVaHbrzznT9BmiCiPOzhf0FhU3eP41nP1bLDm/5wWKZqkG4nyU95DQ==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-4.0.15.tgz", + "integrity": "sha512-+EIjOJmnY6mIfdXtE/bnozKEvTC4Uczg19yeZ2vtCz5Yyb0QQ31QWVQ8hswJ3Ysx/K2EqaNsVanjr//2+P3FHw==", "dev": true, "license": "MIT", "funding": { @@ -9452,15 +9452,15 @@ } }, "node_modules/@vitest/browser/node_modules/@vitest/mocker": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-4.0.3.tgz", - "integrity": "sha512-evZcRspIPbbiJEe748zI2BRu94ThCBE+RkjCpVF8yoVYuTV7hMe+4wLF/7K86r8GwJHSmAPnPbZhpXWWrg1qbA==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-4.0.15.tgz", + "integrity": "sha512-CZ28GLfOEIFkvCFngN8Sfx5h+Se0zN+h4B7yOsPVCcgtiO7t5jt9xQh2E1UkFep+eb9fjyMfuC5gBypwb07fvQ==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/spy": "4.0.3", + "@vitest/spy": "4.0.15", "estree-walker": "^3.0.3", - "magic-string": "^0.30.19" + "magic-string": "^0.30.21" }, "funding": { "url": "https://opencollective.com/vitest" @@ -9479,9 +9479,9 @@ } }, "node_modules/@vitest/browser/node_modules/@vitest/pretty-format": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-4.0.3.tgz", - "integrity": "sha512-N7gly/DRXzxa9w9sbDXwD9QNFYP2hw90LLLGDobPNwiWgyW95GMxsCt29/COIKKh3P7XJICR38PSDePenMBtsw==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-4.0.15.tgz", + "integrity": "sha512-SWdqR8vEv83WtZcrfLNqlqeQXlQLh2iilO1Wk1gv4eiHKjEzvgHb2OVc3mIPyhZE6F+CtfYjNlDJwP5MN6Km7A==", "dev": true, "license": "MIT", "dependencies": { @@ -9492,9 +9492,9 @@ } }, "node_modules/@vitest/browser/node_modules/@vitest/spy": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-4.0.3.tgz", - "integrity": "sha512-82vVL8Cqz7rbXaNUl35V2G7xeNMAjBdNOVaHbrzznT9BmiCiPOzhf0FhU3eP41nP1bLDm/5wWKZqkG4nyU95DQ==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-4.0.15.tgz", + "integrity": "sha512-+EIjOJmnY6mIfdXtE/bnozKEvTC4Uczg19yeZ2vtCz5Yyb0QQ31QWVQ8hswJ3Ysx/K2EqaNsVanjr//2+P3FHw==", "dev": true, "license": "MIT", "funding": { @@ -9502,13 +9502,13 @@ } }, "node_modules/@vitest/browser/node_modules/@vitest/utils": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-4.0.3.tgz", - "integrity": "sha512-qV6KJkq8W3piW6MDIbGOmn1xhvcW4DuA07alqaQ+vdx7YA49J85pnwnxigZVQFQw3tWnQNRKWwhz5wbP6iv/GQ==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-4.0.15.tgz", + "integrity": "sha512-HXjPW2w5dxhTD0dLwtYHDnelK3j8sR8cWIaLxr22evTyY6q8pRCjZSmhRWVjBaOVXChQd6AwMzi9pucorXCPZA==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/pretty-format": "4.0.3", + "@vitest/pretty-format": "4.0.15", "tinyrainbow": "^3.0.3" }, "funding": { @@ -9536,9 +9536,9 @@ } }, "node_modules/@vitest/eslint-plugin": { - "version": "1.3.24", - "resolved": "https://registry.npmjs.org/@vitest/eslint-plugin/-/eslint-plugin-1.3.24.tgz", - "integrity": "sha512-p1HbH4tMp6kqXS3dwFgy9Ne5Cs9UdBWnGL714m6I/xLK0QoU7MQcR+r+bUjgSFBimNrgiNzUGQ0aiFzKTiJacA==", + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/@vitest/eslint-plugin/-/eslint-plugin-1.5.2.tgz", + "integrity": "sha512-2t1F2iecXB/b1Ox4U137lhD3chihEE3dRVtu3qMD35tc6UqUjg1VGRJoS1AkFKwpT8zv8OQInzPQO06hrRkeqw==", "dev": true, "license": "MIT", "dependencies": { @@ -9807,13 +9807,13 @@ } }, "node_modules/@vitest/runner": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-4.0.3.tgz", - "integrity": "sha512-1/aK6fPM0lYXWyGKwop2Gbvz1plyTps/HDbIIJXYtJtspHjpXIeB3If07eWpVH4HW7Rmd3Rl+IS/+zEAXrRtXA==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-4.0.15.tgz", + "integrity": "sha512-+A+yMY8dGixUhHmNdPUxOh0la6uVzun86vAbuMT3hIDxMrAOmn5ILBHm8ajrqHE0t8R9T1dGnde1A5DTnmi3qw==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/utils": "4.0.3", + "@vitest/utils": "4.0.15", "pathe": "^2.0.3" }, "funding": { @@ -9821,9 +9821,9 @@ } }, "node_modules/@vitest/runner/node_modules/@vitest/pretty-format": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-4.0.3.tgz", - "integrity": "sha512-N7gly/DRXzxa9w9sbDXwD9QNFYP2hw90LLLGDobPNwiWgyW95GMxsCt29/COIKKh3P7XJICR38PSDePenMBtsw==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-4.0.15.tgz", + "integrity": "sha512-SWdqR8vEv83WtZcrfLNqlqeQXlQLh2iilO1Wk1gv4eiHKjEzvgHb2OVc3mIPyhZE6F+CtfYjNlDJwP5MN6Km7A==", "dev": true, "license": "MIT", "dependencies": { @@ -9834,13 +9834,13 @@ } }, "node_modules/@vitest/runner/node_modules/@vitest/utils": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-4.0.3.tgz", - "integrity": "sha512-qV6KJkq8W3piW6MDIbGOmn1xhvcW4DuA07alqaQ+vdx7YA49J85pnwnxigZVQFQw3tWnQNRKWwhz5wbP6iv/GQ==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-4.0.15.tgz", + "integrity": "sha512-HXjPW2w5dxhTD0dLwtYHDnelK3j8sR8cWIaLxr22evTyY6q8pRCjZSmhRWVjBaOVXChQd6AwMzi9pucorXCPZA==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/pretty-format": "4.0.3", + "@vitest/pretty-format": "4.0.15", "tinyrainbow": "^3.0.3" }, "funding": { @@ -9858,14 +9858,14 @@ } }, "node_modules/@vitest/snapshot": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-4.0.3.tgz", - "integrity": "sha512-amnYmvZ5MTjNCP1HZmdeczAPLRD6iOm9+2nMRUGxbe/6sQ0Ymur0NnR9LIrWS8JA3wKE71X25D6ya/3LN9YytA==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-4.0.15.tgz", + "integrity": "sha512-A7Ob8EdFZJIBjLjeO0DZF4lqR6U7Ydi5/5LIZ0xcI+23lYlsYJAfGn8PrIWTYdZQRNnSRlzhg0zyGu37mVdy5g==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/pretty-format": "4.0.3", - "magic-string": "^0.30.19", + "@vitest/pretty-format": "4.0.15", + "magic-string": "^0.30.21", "pathe": "^2.0.3" }, "funding": { @@ -9873,9 +9873,9 @@ } }, "node_modules/@vitest/snapshot/node_modules/@vitest/pretty-format": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-4.0.3.tgz", - "integrity": "sha512-N7gly/DRXzxa9w9sbDXwD9QNFYP2hw90LLLGDobPNwiWgyW95GMxsCt29/COIKKh3P7XJICR38PSDePenMBtsw==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-4.0.15.tgz", + "integrity": "sha512-SWdqR8vEv83WtZcrfLNqlqeQXlQLh2iilO1Wk1gv4eiHKjEzvgHb2OVc3mIPyhZE6F+CtfYjNlDJwP5MN6Km7A==", "dev": true, "license": "MIT", "dependencies": { @@ -16929,9 +16929,9 @@ } }, "node_modules/magic-string": { - "version": "0.30.19", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.19.tgz", - "integrity": "sha512-2N21sPY9Ws53PZvsEpVtNuSW+ScYbQdp4b9qUaL+9QkHUrGFKo56Lg9Emg5s9V/qrtNBmiR01sYhUOwu3H+VOw==", + "version": "0.30.21", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", "dev": true, "license": "MIT", "dependencies": { @@ -18646,6 +18646,17 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/obug": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/obug/-/obug-2.1.1.tgz", + "integrity": "sha512-uTqF9MuPraAQ+IsnPf366RG4cP9RtUi7MLO1N3KEc+wb0a6yKpeL0lmk2IB1jY5KHPAlTc6T/JRdC/YqxHNwkQ==", + "dev": true, + "funding": [ + "https://github.com/sponsors/sxzz", + "https://opencollective.com/debug" + ], + "license": "MIT" + }, "node_modules/on-finished": { "version": "2.4.1", "license": "MIT", @@ -22627,7 +22638,9 @@ } }, "node_modules/std-env": { - "version": "3.9.0", + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.10.0.tgz", + "integrity": "sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==", "dev": true, "license": "MIT" }, @@ -23821,9 +23834,14 @@ "license": "MIT" }, "node_modules/tinyexec": { - "version": "0.3.2", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-1.0.2.tgz", + "integrity": "sha512-W/KYk+NFhkmsYpuHq5JykngiOCnxeVL8v8dFnqxSD8qEEdRfXk1SDM6JzNqcERbcGYj9tMrDQBYV9cjgnunFIg==", "dev": true, - "license": "MIT" + "license": "MIT", + "engines": { + "node": ">=18" + } }, "node_modules/tinyglobby": { "version": "0.2.15", @@ -25424,28 +25442,28 @@ } }, "node_modules/vitest": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/vitest/-/vitest-4.0.3.tgz", - "integrity": "sha512-IUSop8jgaT7w0g1yOM/35qVtKjr/8Va4PrjzH1OUb0YH4c3OXB2lCZDkMAB6glA8T5w8S164oJGsbcmAecr4sA==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-4.0.15.tgz", + "integrity": "sha512-n1RxDp8UJm6N0IbJLQo+yzLZ2sQCDyl1o0LeugbPWf8+8Fttp29GghsQBjYJVmWq3gBFfe9Hs1spR44vovn2wA==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/expect": "4.0.3", - "@vitest/mocker": "4.0.3", - "@vitest/pretty-format": "4.0.3", - "@vitest/runner": "4.0.3", - "@vitest/snapshot": "4.0.3", - "@vitest/spy": "4.0.3", - "@vitest/utils": "4.0.3", - "debug": "^4.4.3", + "@vitest/expect": "4.0.15", + "@vitest/mocker": "4.0.15", + "@vitest/pretty-format": "4.0.15", + "@vitest/runner": "4.0.15", + "@vitest/snapshot": "4.0.15", + "@vitest/spy": "4.0.15", + "@vitest/utils": "4.0.15", "es-module-lexer": "^1.7.0", "expect-type": "^1.2.2", - "magic-string": "^0.30.19", + "magic-string": "^0.30.21", + "obug": "^2.1.1", "pathe": "^2.0.3", "picomatch": "^4.0.3", - "std-env": "^3.9.0", + "std-env": "^3.10.0", "tinybench": "^2.9.0", - "tinyexec": "^0.3.2", + "tinyexec": "^1.0.2", "tinyglobby": "^0.2.15", "tinyrainbow": "^3.0.3", "vite": "^6.0.0 || ^7.0.0", @@ -25462,12 +25480,12 @@ }, "peerDependencies": { "@edge-runtime/vm": "*", - "@types/debug": "^4.1.12", + "@opentelemetry/api": "^1.9.0", "@types/node": "^20.0.0 || ^22.0.0 || >=24.0.0", - "@vitest/browser-playwright": "4.0.3", - "@vitest/browser-preview": "4.0.3", - "@vitest/browser-webdriverio": "4.0.3", - "@vitest/ui": "4.0.3", + "@vitest/browser-playwright": "4.0.15", + "@vitest/browser-preview": "4.0.15", + "@vitest/browser-webdriverio": "4.0.15", + "@vitest/ui": "4.0.15", "happy-dom": "*", "jsdom": "*" }, @@ -25475,7 +25493,7 @@ "@edge-runtime/vm": { "optional": true }, - "@types/debug": { + "@opentelemetry/api": { "optional": true }, "@types/node": { @@ -25502,17 +25520,17 @@ } }, "node_modules/vitest/node_modules/@vitest/expect": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-4.0.3.tgz", - "integrity": "sha512-v3eSDx/bF25pzar6aEJrrdTXJduEBU3uSGXHslIdGIpJVP8tQQHV6x1ZfzbFQ/bLIomLSbR/2ZCfnaEGkWkiVQ==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-4.0.15.tgz", + "integrity": "sha512-Gfyva9/GxPAWXIWjyGDli9O+waHDC0Q0jaLdFP1qPAUUfo1FEXPXUfUkp3eZA0sSq340vPycSyOlYUeM15Ft1w==", "dev": true, "license": "MIT", "dependencies": { "@standard-schema/spec": "^1.0.0", "@types/chai": "^5.2.2", - "@vitest/spy": "4.0.3", - "@vitest/utils": "4.0.3", - "chai": "^6.0.1", + "@vitest/spy": "4.0.15", + "@vitest/utils": "4.0.15", + "chai": "^6.2.1", "tinyrainbow": "^3.0.3" }, "funding": { @@ -25520,15 +25538,15 @@ } }, "node_modules/vitest/node_modules/@vitest/mocker": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-4.0.3.tgz", - "integrity": "sha512-evZcRspIPbbiJEe748zI2BRu94ThCBE+RkjCpVF8yoVYuTV7hMe+4wLF/7K86r8GwJHSmAPnPbZhpXWWrg1qbA==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-4.0.15.tgz", + "integrity": "sha512-CZ28GLfOEIFkvCFngN8Sfx5h+Se0zN+h4B7yOsPVCcgtiO7t5jt9xQh2E1UkFep+eb9fjyMfuC5gBypwb07fvQ==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/spy": "4.0.3", + "@vitest/spy": "4.0.15", "estree-walker": "^3.0.3", - "magic-string": "^0.30.19" + "magic-string": "^0.30.21" }, "funding": { "url": "https://opencollective.com/vitest" @@ -25547,9 +25565,9 @@ } }, "node_modules/vitest/node_modules/@vitest/pretty-format": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-4.0.3.tgz", - "integrity": "sha512-N7gly/DRXzxa9w9sbDXwD9QNFYP2hw90LLLGDobPNwiWgyW95GMxsCt29/COIKKh3P7XJICR38PSDePenMBtsw==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-4.0.15.tgz", + "integrity": "sha512-SWdqR8vEv83WtZcrfLNqlqeQXlQLh2iilO1Wk1gv4eiHKjEzvgHb2OVc3mIPyhZE6F+CtfYjNlDJwP5MN6Km7A==", "dev": true, "license": "MIT", "dependencies": { @@ -25560,9 +25578,9 @@ } }, "node_modules/vitest/node_modules/@vitest/spy": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-4.0.3.tgz", - "integrity": "sha512-82vVL8Cqz7rbXaNUl35V2G7xeNMAjBdNOVaHbrzznT9BmiCiPOzhf0FhU3eP41nP1bLDm/5wWKZqkG4nyU95DQ==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-4.0.15.tgz", + "integrity": "sha512-+EIjOJmnY6mIfdXtE/bnozKEvTC4Uczg19yeZ2vtCz5Yyb0QQ31QWVQ8hswJ3Ysx/K2EqaNsVanjr//2+P3FHw==", "dev": true, "license": "MIT", "funding": { @@ -25570,13 +25588,13 @@ } }, "node_modules/vitest/node_modules/@vitest/utils": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-4.0.3.tgz", - "integrity": "sha512-qV6KJkq8W3piW6MDIbGOmn1xhvcW4DuA07alqaQ+vdx7YA49J85pnwnxigZVQFQw3tWnQNRKWwhz5wbP6iv/GQ==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-4.0.15.tgz", + "integrity": "sha512-HXjPW2w5dxhTD0dLwtYHDnelK3j8sR8cWIaLxr22evTyY6q8pRCjZSmhRWVjBaOVXChQd6AwMzi9pucorXCPZA==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/pretty-format": "4.0.3", + "@vitest/pretty-format": "4.0.15", "tinyrainbow": "^3.0.3" }, "funding": { @@ -25584,9 +25602,9 @@ } }, "node_modules/vitest/node_modules/chai": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/chai/-/chai-6.2.0.tgz", - "integrity": "sha512-aUTnJc/JipRzJrNADXVvpVqi6CO0dn3nx4EVPxijri+fj3LUUDyZQOgVeW54Ob3Y1Xh9Iz8f+CgaCl8v0mn9bA==", + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/chai/-/chai-6.2.1.tgz", + "integrity": "sha512-p4Z49OGG5W/WBCPSS/dH3jQ73kD6tiMmUM+bckNK6Jr5JHMG3k9bg/BvKR8lKmtVBKmOiuVaV2ws8s9oSbwysg==", "dev": true, "license": "MIT", "engines": { @@ -26327,7 +26345,7 @@ }, "packages/react": { "name": "@primer/react", - "version": "38.4.0", + "version": "38.5.0", "license": "MIT", "dependencies": { "@github/mini-throttle": "^2.1.1", diff --git a/package.json b/package.json index 54b0d363454..09e7f03bd14 100644 --- a/package.json +++ b/package.json @@ -60,9 +60,9 @@ "@primer/stylelint-config": "13.4.1", "@size-limit/preset-big-lib": "11.2.0", "@types/semver": "^7.7.1", - "@vitest/browser": "^4.0.3", - "@vitest/browser-playwright": "^4.0.3", - "@vitest/eslint-plugin": "^1.3.24", + "@vitest/browser": "^4.0.15", + "@vitest/browser-playwright": "^4.0.15", + "@vitest/eslint-plugin": "^1.5.2", "babel-plugin-react-compiler": "^1.0.0", "change-case": "^5.4.4", "eslint": "^9.39.1", @@ -91,7 +91,7 @@ "turbo": "^2.5.5", "typescript": "^5.9.2", "typescript-eslint": "^8.40.0", - "vitest": "^4.0.3" + "vitest": "^4.0.15" }, "optionalDependencies": { "@rollup/rollup-linux-x64-gnu": "^4.53.3" diff --git a/packages/react/src/Heading/__tests__/Heading.test.tsx b/packages/react/src/Heading/__tests__/Heading.test.tsx index 573bc2405e9..15aa5cb2663 100644 --- a/packages/react/src/Heading/__tests__/Heading.test.tsx +++ b/packages/react/src/Heading/__tests__/Heading.test.tsx @@ -25,7 +25,7 @@ describe('Heading', () => { }) // How can we test for generated class names? - it.skip('should only include css modules class', () => { + it.todo('should only include css modules class', () => { render(test) expect(screen.getByText('test')).toHaveClass('prc-Heading-Heading-6CmGO') // Note: this is the generated class name when CSS modules is used diff --git a/packages/react/src/Overlay/Overlay.test.tsx b/packages/react/src/Overlay/Overlay.test.tsx index 8de120215dd..b3a9ebf805b 100644 --- a/packages/react/src/Overlay/Overlay.test.tsx +++ b/packages/react/src/Overlay/Overlay.test.tsx @@ -202,7 +202,7 @@ describe('Overlay', () => { spy.mockRestore() }) - it.skip('should right align when given `right: 0` and `position: fixed`', async () => { + it.todo('should right align when given `right: 0` and `position: fixed`', async () => { const spy = vi.spyOn(console, 'log').mockImplementation(message => { if (!message.startsWith('global handler')) { throw new Error( @@ -228,7 +228,7 @@ describe('Overlay', () => { spy.mockRestore() }) - it.skip('should left align when not given position and left props', async () => { + it.todo('should left align when not given position and left props', async () => { const spy = vi.spyOn(console, 'log').mockImplementation(message => { if (!message.startsWith('global handler')) { throw new Error( @@ -293,7 +293,7 @@ describe('Overlay', () => { expect(container.queryByLabelText('Change issue title')).not.toBeInTheDocument() }) - it.skip('memex repro: should not leak overlay events to the document', async () => { + it.todo('memex repro: should not leak overlay events to the document', async () => { const user = userEvent.setup() const mockHandler = vi.fn() const BugRepro1802 = () => { diff --git a/packages/react/src/PageLayout/PageLayout.test.tsx b/packages/react/src/PageLayout/PageLayout.test.tsx index 8220f425c4e..36a0d6098de 100644 --- a/packages/react/src/PageLayout/PageLayout.test.tsx +++ b/packages/react/src/PageLayout/PageLayout.test.tsx @@ -61,7 +61,7 @@ describe('PageLayout', async () => { }) // The test suite can't compute styles so skipping - it.skip('can hide pane when narrow', () => { + it.todo('can hide pane when narrow', () => { // Set narrow viewport act(() => { window.matchMedia(viewportRanges.narrow) @@ -80,7 +80,7 @@ describe('PageLayout', async () => { }) // The test suite can't compute styles so skipping - it.skip('shows all subcomponents by default', () => { + it.todo('shows all subcomponents by default', () => { // Set regular viewport act(() => { matchMedia(viewportRanges.regular) diff --git a/packages/react/src/PageLayout/__snapshots__/PageLayout.test.tsx.snap b/packages/react/src/PageLayout/__snapshots__/PageLayout.test.tsx.snap index 5ac82e6ca02..0f60be9ba4a 100644 --- a/packages/react/src/PageLayout/__snapshots__/PageLayout.test.tsx.snap +++ b/packages/react/src/PageLayout/__snapshots__/PageLayout.test.tsx.snap @@ -373,91 +373,3 @@ exports[`PageLayout > renders with dividers 1`] = ` `; - -exports[`PageLayout renders pane in different position when narrow 1`] = ` -
-
-
-
-
- Header -
-
-
-
-
-
- Content -
-
-
-
-
- Pane -
-
-
-
-
-
-
- Footer -
-
-
-
-
-`; diff --git a/packages/react/src/Stack/__tests__/Stack.test.tsx b/packages/react/src/Stack/__tests__/Stack.test.tsx index 2ea7b651e11..2c0dbb59473 100644 --- a/packages/react/src/Stack/__tests__/Stack.test.tsx +++ b/packages/react/src/Stack/__tests__/Stack.test.tsx @@ -102,7 +102,7 @@ describe('Stack', () => { describe('gap', () => { // Fix when we have a better way to test this - it.skip('should set the default gap to `normal`', () => { + it.todo('should set the default gap to `normal`', () => { render() expect(screen.getByTestId('stack')).toHaveStyle('gap: var(--stack-gap,var(--stack-gap-normal,1rem));') }) diff --git a/packages/react/src/__tests__/BaseStyles.test.tsx b/packages/react/src/__tests__/BaseStyles.test.tsx index 43ccd4d9077..4bfb723d617 100644 --- a/packages/react/src/__tests__/BaseStyles.test.tsx +++ b/packages/react/src/__tests__/BaseStyles.test.tsx @@ -8,7 +8,7 @@ describe('BaseStyles', () => { expect(container).toMatchSnapshot() }) - it.skip('respects styling props', () => { + it.todo('respects styling props', () => { const styles = { color: '#f00', fontFamily: 'Arial', diff --git a/packages/react/src/__tests__/ThemeProvider.test.tsx b/packages/react/src/__tests__/ThemeProvider.test.tsx index ce023877820..6c008559c74 100644 --- a/packages/react/src/__tests__/ThemeProvider.test.tsx +++ b/packages/react/src/__tests__/ThemeProvider.test.tsx @@ -70,7 +70,7 @@ it('works in auto mode', () => { }) // TODO: need to wire up a prefers color scheme mock, vitest-matchmedia-mock? -it.skip('works in auto mode (dark)', () => { +it.todo('works in auto mode (dark)', () => { const matchMediaSpy = vi.spyOn(window, 'matchMedia').mockImplementation(query => ({ matches: true, // enable dark mode media: query,