From 176d53c1b3791361d3475e1469ffc368df7e0a0e Mon Sep 17 00:00:00 2001 From: Zack Pollard Date: Mon, 16 Jun 2025 16:03:46 +0100 Subject: [PATCH] chore: bump browserlists version and load tscompat browserlist from file (#19212) * chore: bump browserlists version to include latest edge browsers * chore: load tscompat browser list from the .browserslistrc file --- web/.browserslistrc | 2 -- web/eslint.config.js | 9 ++++++++- web/package-lock.json | 24 ++++++++++++------------ 3 files changed, 20 insertions(+), 15 deletions(-) diff --git a/web/.browserslistrc b/web/.browserslistrc index c3a939f1b7..18be2d93e6 100644 --- a/web/.browserslistrc +++ b/web/.browserslistrc @@ -1,5 +1,3 @@ > 0.2% and last 4 major versions > 0.5% not dead -edge >= 135 -not edge < 135 diff --git a/web/eslint.config.js b/web/eslint.config.js index 55d39e637f..6b7b343ad1 100644 --- a/web/eslint.config.js +++ b/web/eslint.config.js @@ -4,6 +4,7 @@ import eslintPluginCompat from 'eslint-plugin-compat'; import eslintPluginSvelte from 'eslint-plugin-svelte'; import eslintPluginUnicorn from 'eslint-plugin-unicorn'; import globals from 'globals'; +import fs from 'node:fs'; import path from 'node:path'; import { fileURLToPath } from 'node:url'; import parser from 'svelte-eslint-parser'; @@ -23,7 +24,13 @@ export default typescriptEslint.config( rules: { 'tscompat/tscompat': [ 'error', - { browserslist: ['> 0.2% and last 4 major versions', '> 0.5%', 'not dead', 'edge >= 135', 'not edge < 135'] }, + { + browserslist: fs + .readFileSync(path.join(__dirname, '.browserslistrc'), 'utf8') + .split('\n') + .map((line) => line.trim()) + .filter((line) => line && !line.startsWith('#')), + }, ], }, languageOptions: { diff --git a/web/package-lock.json b/web/package-lock.json index 7a36685cdb..72b9eb6a7c 100644 --- a/web/package-lock.json +++ b/web/package-lock.json @@ -3656,9 +3656,9 @@ } }, "node_modules/browserslist": { - "version": "4.24.4", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.4.tgz", - "integrity": "sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==", + "version": "4.25.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.25.0.tgz", + "integrity": "sha512-PJ8gYKeS5e/whHBh8xrwYK+dAvEj7JXtz6uTucnMRB8OiGTsKccFekoRrjajPBHV8oOY+2tI4uxeceSimKwMFA==", "dev": true, "funding": [ { @@ -3676,10 +3676,10 @@ ], "license": "MIT", "dependencies": { - "caniuse-lite": "^1.0.30001688", - "electron-to-chromium": "^1.5.73", + "caniuse-lite": "^1.0.30001718", + "electron-to-chromium": "^1.5.160", "node-releases": "^2.0.19", - "update-browserslist-db": "^1.1.1" + "update-browserslist-db": "^1.1.3" }, "bin": { "browserslist": "cli.js" @@ -3752,9 +3752,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001713", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001713.tgz", - "integrity": "sha512-wCIWIg+A4Xr7NfhTuHdX+/FKh3+Op3LBbSp2N5Pfx6T/LhdQy3GTyoTg48BReaW/MyMNZAkTadsBtai3ldWK0Q==", + "version": "1.0.30001723", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001723.tgz", + "integrity": "sha512-1R/elMjtehrFejxwmexeXAtae5UO9iSyFn6G/I806CYC/BLyyBk1EPhrKBkWhy6wM6Xnm47dSJQec+tLJ39WHw==", "dev": true, "funding": [ { @@ -4374,9 +4374,9 @@ "license": "MIT" }, "node_modules/electron-to-chromium": { - "version": "1.5.137", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.137.tgz", - "integrity": "sha512-/QSJaU2JyIuTbbABAo/crOs+SuAZLS+fVVS10PVrIT9hrRkmZl8Hb0xPSkKRUUWHQtYzXHpQUW3Dy5hwMzGZkA==", + "version": "1.5.167", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.167.tgz", + "integrity": "sha512-LxcRvnYO5ez2bMOFpbuuVuAI5QNeY1ncVytE/KXaL6ZNfzX1yPlAO0nSOyIHx2fVAuUprMqPs/TdVhUFZy7SIQ==", "dev": true, "license": "ISC" },