From 1ad84021a17a560e5158f936b54e4d4934fd64e6 Mon Sep 17 00:00:00 2001 From: Anton Georgiev Date: Fri, 4 Sep 2026 20:53:17 -0400 Subject: [PATCH] build: require Node >= 22 and build with Node 24 Add an `engines` floor of Node >= 22 to package.json and mirror it into package-lock.json, and bump @types/node to ^24.13.3 so the typings match the runtime the plugin is built with. Move CI onto Node 24 (was Node 20). --- .github/workflows/ts-code-compilation.yml | 2 +- .github/workflows/ts-code-validation.yml | 2 +- package-lock.json | 25 ++++++++++++++--------- package.json | 7 +++++-- 4 files changed, 22 insertions(+), 14 deletions(-) diff --git a/.github/workflows/ts-code-compilation.yml b/.github/workflows/ts-code-compilation.yml index 8c351fc..3d917f4 100644 --- a/.github/workflows/ts-code-compilation.yml +++ b/.github/workflows/ts-code-compilation.yml @@ -14,7 +14,7 @@ jobs: - name: install node uses: actions/setup-node@v4 with: - node-version: 20.x + node-version: 24.x - name: run npm install run: npm install - name: typescript code compilation diff --git a/.github/workflows/ts-code-validation.yml b/.github/workflows/ts-code-validation.yml index b9fa8e8..7dbff82 100644 --- a/.github/workflows/ts-code-validation.yml +++ b/.github/workflows/ts-code-validation.yml @@ -15,7 +15,7 @@ jobs: - name: install node uses: actions/setup-node@v4 with: - node-version: 20.x + node-version: 24.x - name: run npm install run: npm install - name: typescript code validation with eslint diff --git a/package-lock.json b/package-lock.json index 91fcc77..55e350b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,7 +10,7 @@ "dependencies": { "@testing-library/react": "^13.4.0", "@testing-library/user-event": "^13.5.0", - "@types/node": "^20.3.1", + "@types/node": "^24.13.3", "@types/react": "^18.2.13", "@types/react-dom": "^18.2.6", "babel-plugin-syntax-dynamic-import": "^6.18.0", @@ -26,7 +26,7 @@ "@babel/core": "^7.21.8", "@babel/preset-env": "^7.21.5", "@babel/preset-react": "^7.18.6", - "@types/node": "^20.4.4", + "@types/node": "^24.13.3", "@types/react": "^18.2.15", "@types/react-dom": "^18.2.7", "@types/react-modal": "^3.16.0", @@ -53,6 +53,9 @@ "webpack": "^5.83.1", "webpack-cli": "^5.1.1", "webpack-dev-server": "^4.15.1" + }, + "engines": { + "node": ">=22" } }, "node_modules/@ampproject/remapping": { @@ -2660,12 +2663,13 @@ "dev": true }, "node_modules/@types/node": { - "version": "20.14.9", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.9.tgz", - "integrity": "sha512-06OCtnTXtWOZBJlRApleWndH4JsRVs1pDCc8dLSQp+7PpUpX3ePdHyeNSFTeSe7FtKyQkrlPvHwJOW3SLd8Oyg==", + "version": "24.13.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.13.3.tgz", + "integrity": "sha512-Dh8vAsV36ig5wa9OX4pXvMc9D3Veibfw2wix0CUwYODLD8nkj9UsLjASr49nPg+2eKzxhBV+v7L8pXvT4e639Q==", "dev": true, + "license": "MIT", "dependencies": { - "undici-types": "~5.26.4" + "undici-types": "~7.18.0" } }, "node_modules/@types/node-forge": { @@ -10231,10 +10235,11 @@ } }, "node_modules/undici-types": { - "version": "5.26.5", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", - "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", - "dev": true + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.18.2.tgz", + "integrity": "sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w==", + "dev": true, + "license": "MIT" }, "node_modules/unicode-canonical-property-names-ecmascript": { "version": "2.0.0", diff --git a/package.json b/package.json index 04ae0b2..71e47ab 100644 --- a/package.json +++ b/package.json @@ -3,10 +3,13 @@ "version": "0.2.0", "private": true, "main": "./src/index.tsx", + "engines": { + "node": ">=22" + }, "dependencies": { "@testing-library/react": "^13.4.0", "@testing-library/user-event": "^13.5.0", - "@types/node": "^20.3.1", + "@types/node": "^24.13.3", "@types/react": "^18.2.13", "@types/react-dom": "^18.2.6", "babel-plugin-syntax-dynamic-import": "^6.18.0", @@ -42,7 +45,7 @@ "@babel/core": "^7.21.8", "@babel/preset-env": "^7.21.5", "@babel/preset-react": "^7.18.6", - "@types/node": "^20.4.4", + "@types/node": "^24.13.3", "@types/react": "^18.2.15", "@types/react-dom": "^18.2.7", "@types/react-modal": "^3.16.0",