From 8b11e5a434a214069d650085ca283922cf1a71f8 Mon Sep 17 00:00:00 2001 From: Paul van Brenk <5273975+paulvanbrenk@users.noreply.github.com> Date: Mon, 16 Feb 2026 15:49:15 -0500 Subject: [PATCH] chore: Use pnpm catalog for shared dependency versions Centralizes shared dependency versions (typescript, react, @types/react, @types/node, tailwindcss, vitest) in pnpm-workspace.yaml catalog so all workspace packages use the same versions from a single source of truth. Also downgrades @types/node from 25.x to 22.x to match the Node >=22 engine requirement, and adds engines.node to patchnotes-email. Co-Authored-By: Claude Opus 4.6 --- patchnotes-email/package.json | 15 ++-- patchnotes-web/package.json | 12 +-- pnpm-lock.yaml | 147 +++++++++++++++++++--------------- pnpm-workspace.yaml | 7 ++ 4 files changed, 106 insertions(+), 75 deletions(-) diff --git a/patchnotes-email/package.json b/patchnotes-email/package.json index f47a358a..c96a4cef 100644 --- a/patchnotes-email/package.json +++ b/patchnotes-email/package.json @@ -1,6 +1,9 @@ { "name": "", "version": "1.0.0", + "engines": { + "node": ">=22" + }, "description": "", "main": "dist/src/functions/*.js", "scripts": { @@ -21,19 +24,19 @@ "@react-email/components": "^1.0.7", "@react-email/render": "^2.0.4", "esbuild": "^0.27.3", - "react": "^19.2.4", + "react": "catalog:", "resend": "^6.9.2" }, "packageManager": "pnpm@10.28.0", "devDependencies": { - "@types/node": "25.x", - "@types/react": "^19.2.14", + "@types/node": "catalog:", + "@types/react": "catalog:", "azure-functions-core-tools": "^4.x", "dotenv": "^17.3.1", "prisma": "^7.4.0", "rimraf": "^6.1.2", - "tailwindcss": "^4.1.18", - "typescript": "^5.0.0", - "vitest": "^4.0.18" + "tailwindcss": "catalog:", + "typescript": "catalog:", + "vitest": "catalog:" } } diff --git a/patchnotes-web/package.json b/patchnotes-web/package.json index d59a3fcd..797399a8 100644 --- a/patchnotes-web/package.json +++ b/patchnotes-web/package.json @@ -31,7 +31,7 @@ "@tanstack/react-query": "^5.90.21", "@tanstack/react-router": "^1.160.0", "lucide-react": "^0.564.0", - "react": "^19.2.4", + "react": "catalog:", "react-dom": "^19.2.4", "react-error-boundary": "^6.1.0", "react-markdown": "^10.1.0", @@ -45,8 +45,8 @@ "@testing-library/jest-dom": "^6.9.1", "@testing-library/react": "^16.3.2", "@testing-library/user-event": "^14.6.1", - "@types/node": "^25.2.3", - "@types/react": "^19.2.14", + "@types/node": "catalog:", + "@types/react": "catalog:", "@types/react-dom": "^19.2.3", "@vitejs/plugin-react": "^5.1.4", "@vitest/coverage-v8": "^4.0.18", @@ -63,11 +63,11 @@ "msw": "^2.12.10", "orval": "^8.3.0", "prettier": "^3.8.1", - "tailwindcss": "^4.1.18", - "typescript": "~5.9.3", + "tailwindcss": "catalog:", + "typescript": "catalog:", "typescript-eslint": "^8.55.0", "vite": "^7.2.4", - "vitest": "^4.0.17", + "vitest": "catalog:", "zod": "^4.3.6" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f7b6d985..b3636a12 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4,6 +4,27 @@ settings: autoInstallPeers: true excludeLinksFromLockfile: false +catalogs: + default: + '@types/node': + specifier: 22.x + version: 22.19.11 + '@types/react': + specifier: ^19.2.14 + version: 19.2.14 + react: + specifier: ^19.2.4 + version: 19.2.4 + tailwindcss: + specifier: ^4.1.18 + version: 4.1.18 + typescript: + specifier: ~5.9.3 + version: 5.9.3 + vitest: + specifier: ^4.0.18 + version: 4.0.18 + importers: .: {} @@ -29,17 +50,17 @@ importers: specifier: ^0.27.3 version: 0.27.3 react: - specifier: ^19.2.4 + specifier: 'catalog:' version: 19.2.4 resend: specifier: ^6.9.2 version: 6.9.2(@react-email/render@2.0.4(react-dom@19.2.4(react@19.2.4))(react@19.2.4)) devDependencies: '@types/node': - specifier: 25.x - version: 25.2.3 + specifier: 'catalog:' + version: 22.19.11 '@types/react': - specifier: ^19.2.14 + specifier: 'catalog:' version: 19.2.14 azure-functions-core-tools: specifier: ^4.x @@ -54,14 +75,14 @@ importers: specifier: ^6.1.2 version: 6.1.2 tailwindcss: - specifier: ^4.1.18 + specifier: 'catalog:' version: 4.1.18 typescript: - specifier: ^5.0.0 + specifier: 'catalog:' version: 5.9.3 vitest: - specifier: ^4.0.18 - version: 4.0.18(@types/node@25.2.3)(jiti@2.6.1)(jsdom@28.1.0)(lightningcss@1.30.2)(msw@2.12.10(@types/node@25.2.3)(typescript@5.9.3))(tsx@4.21.0)(yaml@2.8.2) + specifier: 'catalog:' + version: 4.0.18(@types/node@22.19.11)(jiti@2.6.1)(jsdom@28.1.0)(lightningcss@1.30.2)(msw@2.12.10(@types/node@22.19.11)(typescript@5.9.3))(tsx@4.21.0)(yaml@2.8.2) patchnotes-web: dependencies: @@ -78,7 +99,7 @@ importers: specifier: ^0.564.0 version: 0.564.0(react@19.2.4) react: - specifier: ^19.2.4 + specifier: 'catalog:' version: 19.2.4 react-dom: specifier: ^19.2.4 @@ -98,10 +119,10 @@ importers: version: 10.0.1(eslint@10.0.0(jiti@2.6.1)) '@tailwindcss/vite': specifier: ^4.1.18 - version: 4.1.18(vite@7.3.1(@types/node@25.2.3)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2)) + version: 4.1.18(vite@7.3.1(@types/node@22.19.11)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2)) '@tanstack/router-plugin': specifier: ^1.160.0 - version: 1.160.0(@tanstack/react-router@1.160.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(vite@7.3.1(@types/node@25.2.3)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2)) + version: 1.160.0(@tanstack/react-router@1.160.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(vite@7.3.1(@types/node@22.19.11)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2)) '@testing-library/dom': specifier: ^10.4.1 version: 10.4.1 @@ -115,20 +136,20 @@ importers: specifier: ^14.6.1 version: 14.6.1(@testing-library/dom@10.4.1) '@types/node': - specifier: ^25.2.3 - version: 25.2.3 + specifier: 'catalog:' + version: 22.19.11 '@types/react': - specifier: ^19.2.14 + specifier: 'catalog:' version: 19.2.14 '@types/react-dom': specifier: ^19.2.3 version: 19.2.3(@types/react@19.2.14) '@vitejs/plugin-react': specifier: ^5.1.4 - version: 5.1.4(vite@7.3.1(@types/node@25.2.3)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2)) + version: 5.1.4(vite@7.3.1(@types/node@22.19.11)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2)) '@vitest/coverage-v8': specifier: ^4.0.18 - version: 4.0.18(vitest@4.0.18(@types/node@25.2.3)(jiti@2.6.1)(jsdom@28.1.0)(lightningcss@1.30.2)(msw@2.12.10(@types/node@25.2.3)(typescript@5.9.3))(tsx@4.21.0)(yaml@2.8.2)) + version: 4.0.18(vitest@4.0.18(@types/node@22.19.11)(jiti@2.6.1)(jsdom@28.1.0)(lightningcss@1.30.2)(msw@2.12.10(@types/node@22.19.11)(typescript@5.9.3))(tsx@4.21.0)(yaml@2.8.2)) ajv: specifier: ^8.18.0 version: 8.18.0 @@ -155,13 +176,13 @@ importers: version: 28.1.0 knip: specifier: ^5.83.1 - version: 5.83.1(@types/node@25.2.3)(typescript@5.9.3) + version: 5.83.1(@types/node@22.19.11)(typescript@5.9.3) lint-staged: specifier: ^16.2.7 version: 16.2.7 msw: specifier: ^2.12.10 - version: 2.12.10(@types/node@25.2.3)(typescript@5.9.3) + version: 2.12.10(@types/node@22.19.11)(typescript@5.9.3) orval: specifier: ^8.3.0 version: 8.3.0(typescript@5.9.3) @@ -169,20 +190,20 @@ importers: specifier: ^3.8.1 version: 3.8.1 tailwindcss: - specifier: ^4.1.18 + specifier: 'catalog:' version: 4.1.18 typescript: - specifier: ~5.9.3 + specifier: 'catalog:' version: 5.9.3 typescript-eslint: specifier: ^8.55.0 version: 8.55.0(eslint@10.0.0(jiti@2.6.1))(typescript@5.9.3) vite: specifier: ^7.2.4 - version: 7.3.1(@types/node@25.2.3)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2) + version: 7.3.1(@types/node@22.19.11)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2) vitest: - specifier: ^4.0.17 - version: 4.0.18(@types/node@25.2.3)(jiti@2.6.1)(jsdom@28.1.0)(lightningcss@1.30.2)(msw@2.12.10(@types/node@25.2.3)(typescript@5.9.3))(tsx@4.21.0)(yaml@2.8.2) + specifier: 'catalog:' + version: 4.0.18(@types/node@22.19.11)(jiti@2.6.1)(jsdom@28.1.0)(lightningcss@1.30.2)(msw@2.12.10(@types/node@22.19.11)(typescript@5.9.3))(tsx@4.21.0)(yaml@2.8.2) zod: specifier: ^4.3.6 version: 4.3.6 @@ -1561,8 +1582,8 @@ packages: '@types/ms@2.1.0': resolution: {integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==} - '@types/node@25.2.3': - resolution: {integrity: sha512-m0jEgYlYz+mDJZ2+F4v8D1AyQb+QzsNqRuI7xg1VQX/KlKS0qT9r1Mo16yo5F/MtifXFgaofIFsdFMox2SxIbQ==} + '@types/node@22.19.11': + resolution: {integrity: sha512-BH7YwL6rA93ReqeQS1c4bsPpcfOmJasG+Fkr6Y59q83f9M1WcBRHR2vM+P9eOisYRcN3ujQoiZY8uk5W+1WL8w==} '@types/react-dom@19.2.3': resolution: {integrity: sha512-jp2L/eY6fn+KgVVQAOqYItbF0VY/YApe5Mz2F0aykSO8gx31bYCZyvSeYxCHKvzHG5eZjc+zyaS5BrBWya2+kQ==} @@ -3687,8 +3708,8 @@ packages: uc.micro@2.1.0: resolution: {integrity: sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==} - undici-types@7.16.0: - resolution: {integrity: sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==} + undici-types@6.21.0: + resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} undici@7.22.0: resolution: {integrity: sha512-RqslV2Us5BrllB+JeiZnK4peryVTndy9Dnqq62S3yYRRTj0tFQCwEniUy2167skdGOy3vqRzEvl1Dm4sV2ReDg==} @@ -4490,31 +4511,31 @@ snapshots: '@inquirer/ansi@1.0.2': {} - '@inquirer/confirm@5.1.21(@types/node@25.2.3)': + '@inquirer/confirm@5.1.21(@types/node@22.19.11)': dependencies: - '@inquirer/core': 10.3.2(@types/node@25.2.3) - '@inquirer/type': 3.0.10(@types/node@25.2.3) + '@inquirer/core': 10.3.2(@types/node@22.19.11) + '@inquirer/type': 3.0.10(@types/node@22.19.11) optionalDependencies: - '@types/node': 25.2.3 + '@types/node': 22.19.11 - '@inquirer/core@10.3.2(@types/node@25.2.3)': + '@inquirer/core@10.3.2(@types/node@22.19.11)': dependencies: '@inquirer/ansi': 1.0.2 '@inquirer/figures': 1.0.15 - '@inquirer/type': 3.0.10(@types/node@25.2.3) + '@inquirer/type': 3.0.10(@types/node@22.19.11) cli-width: 4.1.0 mute-stream: 2.0.0 signal-exit: 4.1.0 wrap-ansi: 6.2.0 yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 25.2.3 + '@types/node': 22.19.11 '@inquirer/figures@1.0.15': {} - '@inquirer/type@3.0.10(@types/node@25.2.3)': + '@inquirer/type@3.0.10(@types/node@22.19.11)': optionalDependencies: - '@types/node': 25.2.3 + '@types/node': 22.19.11 '@isaacs/cliui@9.0.0': {} @@ -5163,12 +5184,12 @@ snapshots: '@tailwindcss/oxide-win32-arm64-msvc': 4.1.18 '@tailwindcss/oxide-win32-x64-msvc': 4.1.18 - '@tailwindcss/vite@4.1.18(vite@7.3.1(@types/node@25.2.3)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2))': + '@tailwindcss/vite@4.1.18(vite@7.3.1(@types/node@22.19.11)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2))': dependencies: '@tailwindcss/node': 4.1.18 '@tailwindcss/oxide': 4.1.18 tailwindcss: 4.1.18 - vite: 7.3.1(@types/node@25.2.3)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2) + vite: 7.3.1(@types/node@22.19.11)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2) '@tanstack/history@1.154.14': {} @@ -5220,7 +5241,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@tanstack/router-plugin@1.160.0(@tanstack/react-router@1.160.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(vite@7.3.1(@types/node@25.2.3)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2))': + '@tanstack/router-plugin@1.160.0(@tanstack/react-router@1.160.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(vite@7.3.1(@types/node@22.19.11)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2))': dependencies: '@babel/core': 7.29.0 '@babel/plugin-syntax-jsx': 7.28.6(@babel/core@7.29.0) @@ -5237,7 +5258,7 @@ snapshots: zod: 3.25.76 optionalDependencies: '@tanstack/react-router': 1.160.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4) - vite: 7.3.1(@types/node@25.2.3)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2) + vite: 7.3.1(@types/node@22.19.11)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2) transitivePeerDependencies: - supports-color @@ -5356,9 +5377,9 @@ snapshots: '@types/ms@2.1.0': {} - '@types/node@25.2.3': + '@types/node@22.19.11': dependencies: - undici-types: 7.16.0 + undici-types: 6.21.0 '@types/react-dom@19.2.3(@types/react@19.2.14)': dependencies: @@ -5370,7 +5391,7 @@ snapshots: '@types/readable-stream@4.0.23': dependencies: - '@types/node': 25.2.3 + '@types/node': 22.19.11 '@types/statuses@2.0.6': {} @@ -5380,7 +5401,7 @@ snapshots: '@types/yauzl@2.10.3': dependencies: - '@types/node': 25.2.3 + '@types/node': 22.19.11 optional: true '@typescript-eslint/eslint-plugin@8.55.0(@typescript-eslint/parser@8.55.0(eslint@10.0.0(jiti@2.6.1))(typescript@5.9.3))(eslint@10.0.0(jiti@2.6.1))(typescript@5.9.3)': @@ -5484,7 +5505,7 @@ snapshots: '@ungap/structured-clone@1.3.0': {} - '@vitejs/plugin-react@5.1.4(vite@7.3.1(@types/node@25.2.3)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2))': + '@vitejs/plugin-react@5.1.4(vite@7.3.1(@types/node@22.19.11)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2))': dependencies: '@babel/core': 7.29.0 '@babel/plugin-transform-react-jsx-self': 7.27.1(@babel/core@7.29.0) @@ -5492,11 +5513,11 @@ snapshots: '@rolldown/pluginutils': 1.0.0-rc.3 '@types/babel__core': 7.20.5 react-refresh: 0.18.0 - vite: 7.3.1(@types/node@25.2.3)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2) + vite: 7.3.1(@types/node@22.19.11)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2) transitivePeerDependencies: - supports-color - '@vitest/coverage-v8@4.0.18(vitest@4.0.18(@types/node@25.2.3)(jiti@2.6.1)(jsdom@28.1.0)(lightningcss@1.30.2)(msw@2.12.10(@types/node@25.2.3)(typescript@5.9.3))(tsx@4.21.0)(yaml@2.8.2))': + '@vitest/coverage-v8@4.0.18(vitest@4.0.18(@types/node@22.19.11)(jiti@2.6.1)(jsdom@28.1.0)(lightningcss@1.30.2)(msw@2.12.10(@types/node@22.19.11)(typescript@5.9.3))(tsx@4.21.0)(yaml@2.8.2))': dependencies: '@bcoe/v8-coverage': 1.0.2 '@vitest/utils': 4.0.18 @@ -5508,7 +5529,7 @@ snapshots: obug: 2.1.1 std-env: 3.10.0 tinyrainbow: 3.0.3 - vitest: 4.0.18(@types/node@25.2.3)(jiti@2.6.1)(jsdom@28.1.0)(lightningcss@1.30.2)(msw@2.12.10(@types/node@25.2.3)(typescript@5.9.3))(tsx@4.21.0)(yaml@2.8.2) + vitest: 4.0.18(@types/node@22.19.11)(jiti@2.6.1)(jsdom@28.1.0)(lightningcss@1.30.2)(msw@2.12.10(@types/node@22.19.11)(typescript@5.9.3))(tsx@4.21.0)(yaml@2.8.2) '@vitest/expect@4.0.18': dependencies: @@ -5519,14 +5540,14 @@ snapshots: chai: 6.2.2 tinyrainbow: 3.0.3 - '@vitest/mocker@4.0.18(msw@2.12.10(@types/node@25.2.3)(typescript@5.9.3))(vite@7.3.1(@types/node@25.2.3)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2))': + '@vitest/mocker@4.0.18(msw@2.12.10(@types/node@22.19.11)(typescript@5.9.3))(vite@7.3.1(@types/node@22.19.11)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2))': dependencies: '@vitest/spy': 4.0.18 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: - msw: 2.12.10(@types/node@25.2.3)(typescript@5.9.3) - vite: 7.3.1(@types/node@25.2.3)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2) + msw: 2.12.10(@types/node@22.19.11)(typescript@5.9.3) + vite: 7.3.1(@types/node@22.19.11)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2) '@vitest/pretty-format@4.0.18': dependencies: @@ -6564,10 +6585,10 @@ snapshots: dependencies: json-buffer: 3.0.1 - knip@5.83.1(@types/node@25.2.3)(typescript@5.9.3): + knip@5.83.1(@types/node@22.19.11)(typescript@5.9.3): dependencies: '@nodelib/fs.walk': 1.2.8 - '@types/node': 25.2.3 + '@types/node': 22.19.11 fast-glob: 3.3.3 formatly: 0.3.0 jiti: 2.6.1 @@ -7011,9 +7032,9 @@ snapshots: - '@azure/core-client' - supports-color - msw@2.12.10(@types/node@25.2.3)(typescript@5.9.3): + msw@2.12.10(@types/node@22.19.11)(typescript@5.9.3): dependencies: - '@inquirer/confirm': 5.1.21(@types/node@25.2.3) + '@inquirer/confirm': 5.1.21(@types/node@22.19.11) '@mswjs/interceptors': 0.41.3 '@open-draft/deferred-promise': 2.2.0 '@types/statuses': 2.0.6 @@ -7625,7 +7646,7 @@ snapshots: '@azure/identity': 4.13.0 '@azure/keyvault-keys': 4.10.0(@azure/core-client@1.10.1) '@js-joda/core': 5.7.0 - '@types/node': 25.2.3 + '@types/node': 22.19.11 bl: 6.1.6 iconv-lite: 0.7.2 js-md4: 0.3.2 @@ -7729,7 +7750,7 @@ snapshots: uc.micro@2.1.0: {} - undici-types@7.16.0: {} + undici-types@6.21.0: {} undici@7.22.0: {} @@ -7813,7 +7834,7 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.3 - vite@7.3.1(@types/node@25.2.3)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2): + vite@7.3.1(@types/node@22.19.11)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2): dependencies: esbuild: 0.27.3 fdir: 6.5.0(picomatch@4.0.3) @@ -7822,17 +7843,17 @@ snapshots: rollup: 4.57.1 tinyglobby: 0.2.15 optionalDependencies: - '@types/node': 25.2.3 + '@types/node': 22.19.11 fsevents: 2.3.3 jiti: 2.6.1 lightningcss: 1.30.2 tsx: 4.21.0 yaml: 2.8.2 - vitest@4.0.18(@types/node@25.2.3)(jiti@2.6.1)(jsdom@28.1.0)(lightningcss@1.30.2)(msw@2.12.10(@types/node@25.2.3)(typescript@5.9.3))(tsx@4.21.0)(yaml@2.8.2): + vitest@4.0.18(@types/node@22.19.11)(jiti@2.6.1)(jsdom@28.1.0)(lightningcss@1.30.2)(msw@2.12.10(@types/node@22.19.11)(typescript@5.9.3))(tsx@4.21.0)(yaml@2.8.2): dependencies: '@vitest/expect': 4.0.18 - '@vitest/mocker': 4.0.18(msw@2.12.10(@types/node@25.2.3)(typescript@5.9.3))(vite@7.3.1(@types/node@25.2.3)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2)) + '@vitest/mocker': 4.0.18(msw@2.12.10(@types/node@22.19.11)(typescript@5.9.3))(vite@7.3.1(@types/node@22.19.11)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2)) '@vitest/pretty-format': 4.0.18 '@vitest/runner': 4.0.18 '@vitest/snapshot': 4.0.18 @@ -7849,10 +7870,10 @@ snapshots: tinyexec: 1.0.2 tinyglobby: 0.2.15 tinyrainbow: 3.0.3 - vite: 7.3.1(@types/node@25.2.3)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2) + vite: 7.3.1(@types/node@22.19.11)(jiti@2.6.1)(lightningcss@1.30.2)(tsx@4.21.0)(yaml@2.8.2) why-is-node-running: 2.3.0 optionalDependencies: - '@types/node': 25.2.3 + '@types/node': 22.19.11 jsdom: 28.1.0 transitivePeerDependencies: - jiti diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 6f1ed969..e6e2f573 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -1,6 +1,13 @@ packages: - patchnotes-web - patchnotes-email +catalog: + typescript: ~5.9.3 + react: ^19.2.4 + "@types/react": ^19.2.14 + "@types/node": 22.x + tailwindcss: ^4.1.18 + vitest: ^4.0.18 onlyBuiltDependencies: - esbuild - msw