From b5b010126da42fcc35250614de87ba0cd590442f Mon Sep 17 00:00:00 2001 From: miyaoka Date: Sat, 14 Mar 2026 17:45:20 +0900 Subject: [PATCH] Revert oxlint to 1.52.0 --- pnpm-lock.yaml | 227 ++++++++++++++++++++++++++++++++++++++++++-- pnpm-workspace.yaml | 2 +- 2 files changed, 221 insertions(+), 8 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 84d33820..a17442d1 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -37,8 +37,8 @@ catalogs: specifier: 0.37.0 version: 0.37.0 oxlint: - specifier: 1.53.0 - version: 1.53.0 + specifier: 1.52.0 + version: 1.52.0 oxlint-tsgolint: specifier: 0.16.0 version: 0.16.0 @@ -73,7 +73,7 @@ importers: version: 0.37.0 oxlint: specifier: 'catalog:' - version: 1.53.0(oxlint-tsgolint@0.16.0) + version: 1.52.0(oxlint-tsgolint@0.16.0) oxlint-tsgolint: specifier: 'catalog:' version: 0.16.0 @@ -104,7 +104,7 @@ importers: version: 0.37.0 oxlint: specifier: 'catalog:' - version: 1.53.0(oxlint-tsgolint@0.16.0) + version: 1.52.0(oxlint-tsgolint@0.16.0) oxlint-tsgolint: specifier: 'catalog:' version: 0.16.0 @@ -135,7 +135,7 @@ importers: version: 0.37.0 oxlint: specifier: 'catalog:' - version: 1.53.0(oxlint-tsgolint@0.16.0) + version: 1.52.0(oxlint-tsgolint@0.16.0) oxlint-tsgolint: specifier: 'catalog:' version: 0.16.0 @@ -253,7 +253,7 @@ importers: version: 0.37.0 oxlint: specifier: 'catalog:' - version: 1.53.0(oxlint-tsgolint@0.16.0) + version: 1.52.0(oxlint-tsgolint@0.16.0) oxlint-tsgolint: specifier: 'catalog:' version: 0.16.0 @@ -274,7 +274,7 @@ importers: version: 0.37.0 oxlint: specifier: 'catalog:' - version: 1.53.0(oxlint-tsgolint@0.16.0) + version: 1.52.0(oxlint-tsgolint@0.16.0) oxlint-tsgolint: specifier: 'catalog:' version: 0.16.0 @@ -636,48 +636,97 @@ packages: cpu: [x64] os: [win32] + '@oxlint/binding-android-arm-eabi@1.52.0': + resolution: {integrity: sha512-fW2pmR1VzFEdcvOYeSiv+R7CqffOjr9Bv5QmZaHuHJ4ZCqouaF6o48N/hJ3H1n9Zd8PCMFgJkeqUvUsVce01mw==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm] + os: [android] + '@oxlint/binding-android-arm-eabi@1.53.0': resolution: {integrity: sha512-JC89/jAx4d2zhDIbK8MC4L659FN1WiMXMBkNg7b33KXSkYpUgcbf+0nz7+EPRg+VwWiZVfaoFkNHJ7RXYb5Neg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [android] + '@oxlint/binding-android-arm64@1.52.0': + resolution: {integrity: sha512-ptuJljIB+klNi8//qxXyGD51NLJXY9lv40Olc7l3/pEyjejWwXGvGMO0GM6f0JsjmbnDL+VkX7RVQNhByaX8WA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [android] + '@oxlint/binding-android-arm64@1.53.0': resolution: {integrity: sha512-CY+pZfi+uyeU7AwFrEnjsNT+VfxYmKLMuk7bVxArd8f+09hQbJb8f7C7EpvTfNqrCK1J8zZlaYI4LltmEctgbQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [android] + '@oxlint/binding-darwin-arm64@1.52.0': + resolution: {integrity: sha512-5d079Uw43BHVZzOwm3uJI2PgSbsZJTpfHDq2jMOR6rRjGiEBlgasaEvAA26VBqpkO1++/59ZCKLBnEpkro3zIg==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [darwin] + '@oxlint/binding-darwin-arm64@1.53.0': resolution: {integrity: sha512-0aqsC4HDQ94oI6kMz64iaOJ1f3bCVArxvaHJGOScBvFz6CcQedXi5b70Xg09CYjKNaHA56dW0QJfoZ/111kz1A==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [darwin] + '@oxlint/binding-darwin-x64@1.52.0': + resolution: {integrity: sha512-vRTjnhPEHAyfUhO9w6GM1VkxeVXFcDs+huyB5YNMw+Py+6PRYDFFrrOEr0rZYcoGtSH25ScozZV8I1UXrzaDjQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [darwin] + '@oxlint/binding-darwin-x64@1.53.0': resolution: {integrity: sha512-e+KvuaWtnisyWojO/t5qKDbp2dvVpg+1dl4MGnTb21QpY4+4+9Y1XmZPaztcA2XNvy4BIaXFW+9JH9tMpSBqUg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [darwin] + '@oxlint/binding-freebsd-x64@1.52.0': + resolution: {integrity: sha512-vFthhhciRAliAjoKMsvi7UkkQp/EtMNhmCRYBuKsNiTH0k4H3SFfbuWWr80Q7+uTXijfBP91KO/EeF48RggC7A==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [freebsd] + '@oxlint/binding-freebsd-x64@1.53.0': resolution: {integrity: sha512-hpU0ZHVeblFjmZDfgi9BxhhCpURh0KjoFy5V+Tvp9sg/fRcnMUEfaJrgz+jQfOX4jctlVWrAs1ANs91+5iV+zA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [freebsd] + '@oxlint/binding-linux-arm-gnueabihf@1.52.0': + resolution: {integrity: sha512-qX3K4mKbju54ojUa8nigVxxZAUDBGu5MGzpoXvWmiw+7hafoQKaLAoTm94EqRlv9v27p864GQBgc4g3qYtMXXA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm] + os: [linux] + '@oxlint/binding-linux-arm-gnueabihf@1.53.0': resolution: {integrity: sha512-ccKxOpw+X4xa2pO+qbTOpxQ2x1+Ag3ViRQMnWt3gHp1LcpNgS1xd6GYc3OvehmHtrXqEV3YGczZ0I1qpBB4/2A==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [linux] + '@oxlint/binding-linux-arm-musleabihf@1.52.0': + resolution: {integrity: sha512-x5D5/EUS9U4kndPncLB6mDfCsv7i8XcRLu0DZyTngXvyqapc96WwmyyOG2j8Dt26aE8Ykgh6AhsHp9bQtoBUAw==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm] + os: [linux] + '@oxlint/binding-linux-arm-musleabihf@1.53.0': resolution: {integrity: sha512-UBkBvmzSmlyH2ZObQMDKW/TuyTmUtP/XClPUyU2YLwj0qLopZTZxnDz4VG5d3wz1HQuZXO0o1QqsnQUW1v4a6Q==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [linux] + '@oxlint/binding-linux-arm64-gnu@1.52.0': + resolution: {integrity: sha512-2Ep1tnGLuGG7lUkKG/nilIJ0/T2rebEcATxMJ7afuhD6Z2Sc9dDcpX00IngAMyR9l6hXrvaOw9YA5HUAJVSENg==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [linux] + libc: [glibc] + '@oxlint/binding-linux-arm64-gnu@1.53.0': resolution: {integrity: sha512-PQJJ1izoH9p61las6rZ0BWOznAhTDMmdUPL2IEBLuXFwhy2mSloYHvRkk39PSYJ1DyG+trqU5Z9ZbtHSGH6plg==} engines: {node: ^20.19.0 || >=22.12.0} @@ -685,6 +734,13 @@ packages: os: [linux] libc: [glibc] + '@oxlint/binding-linux-arm64-musl@1.52.0': + resolution: {integrity: sha512-54wxvb1Pztz0GMgTLUG9HsH8uhZSL4UbG7n4PDxWIRT9TygTVYKfD6D7iasYdKg6ZpWB5Y86VMxgjSJpR/Y7bQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [linux] + libc: [musl] + '@oxlint/binding-linux-arm64-musl@1.53.0': resolution: {integrity: sha512-GXI1o4Thn/rtnRIL38BwrDMwVcUbIHKCsOixIWf/CkU3fCG3MXFzFTtDMt+34ik0Qk452d8kcpksL0w/hUkMZA==} engines: {node: ^20.19.0 || >=22.12.0} @@ -692,6 +748,13 @@ packages: os: [linux] libc: [musl] + '@oxlint/binding-linux-ppc64-gnu@1.52.0': + resolution: {integrity: sha512-A82Zks1lJyLclrj8n2tJPHOw2ieZXCaBctnCarS1BRlPQMC1Y98vWCLqgvg9ssWy5ZAja0IjUHN1cYsp53mrqA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [ppc64] + os: [linux] + libc: [glibc] + '@oxlint/binding-linux-ppc64-gnu@1.53.0': resolution: {integrity: sha512-Uahk7IVs2yBamCgeJ3XKpKT9Vh+de0pDKISFKnjEcI3c/w2CFHk1+W6Q6G3KI56HGwE9PWCp6ayhA9whXWkNIQ==} engines: {node: ^20.19.0 || >=22.12.0} @@ -699,6 +762,13 @@ packages: os: [linux] libc: [glibc] + '@oxlint/binding-linux-riscv64-gnu@1.52.0': + resolution: {integrity: sha512-ci89Ou+u9vnA0r4eQqGm/KPEkpea+QEtZCLKkrOAD/K5ZBwjS8ToID6aMgsDbIOJUNBGufsmX0iCC7EWrNKQFA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [riscv64] + os: [linux] + libc: [glibc] + '@oxlint/binding-linux-riscv64-gnu@1.53.0': resolution: {integrity: sha512-sWtcU9UkrKMWsGKdFy8R6jkm9Q0VVG1VCpxVuh0HzRQQi3ENI1Nh5CkpsdfUs2MKRcOoHKbXqTscunuXjhxoxQ==} engines: {node: ^20.19.0 || >=22.12.0} @@ -706,6 +776,13 @@ packages: os: [linux] libc: [glibc] + '@oxlint/binding-linux-riscv64-musl@1.52.0': + resolution: {integrity: sha512-3/+DVDWajFSu69TaYnKkoUgMEcHR3puO8TcBu3fPCKRhbLjgwDiYIVRdvQX0QaSjkNPJARmpYq7vlPHWNo2cUA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [riscv64] + os: [linux] + libc: [musl] + '@oxlint/binding-linux-riscv64-musl@1.53.0': resolution: {integrity: sha512-aXew1+HDvCdExijX/8NBVC854zJwxhKP3l9AHFSHQNo4EanlHtzDMIlIvP3raUkL0vXtFCkTFYezzU5HjstB8A==} engines: {node: ^20.19.0 || >=22.12.0} @@ -713,6 +790,13 @@ packages: os: [linux] libc: [musl] + '@oxlint/binding-linux-s390x-gnu@1.52.0': + resolution: {integrity: sha512-BU7CbceOh00NDmY1IYr72qZoj4sJVHB9DCL2tIq2vyNllNJIpZWTxqlzdqmC4FViXWMy8kZNkOa+SdauH+EcoQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [s390x] + os: [linux] + libc: [glibc] + '@oxlint/binding-linux-s390x-gnu@1.53.0': resolution: {integrity: sha512-rVpyBSqPGou9sITcsoXqUoGBUH74bxYLYOAGUqN599Zu6BQBlBU9hh3bJQ/20D1xrhhrsbiCpVPvXpLPM5nL1w==} engines: {node: ^20.19.0 || >=22.12.0} @@ -720,6 +804,13 @@ packages: os: [linux] libc: [glibc] + '@oxlint/binding-linux-x64-gnu@1.52.0': + resolution: {integrity: sha512-JUVZ6TKYl1yArS3xGsNLQlZxgVpjNKtZFja6VxSTDy2ToN7H58PiDRcxWoN2XoIcWlHSvK7pkIPFNOyzdEJ23A==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [linux] + libc: [glibc] + '@oxlint/binding-linux-x64-gnu@1.53.0': resolution: {integrity: sha512-eOyeQ8qFQ2geXmlWJuXAOaek0hFhbMLlYsU457NMLKDRoC43Xf+eDPZ9Yk0n9jDaGJ5zBl/3Dy8wo41cnIXuLA==} engines: {node: ^20.19.0 || >=22.12.0} @@ -727,6 +818,13 @@ packages: os: [linux] libc: [glibc] + '@oxlint/binding-linux-x64-musl@1.52.0': + resolution: {integrity: sha512-IatLKG6UUbIbTBjBZ9SIAYp4SIvOpYIXPXn9cMLqWxh9HrHsu0fLNL+VQ67y4vdlIleYLeuIHkAp3M6saIN1RQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [linux] + libc: [musl] + '@oxlint/binding-linux-x64-musl@1.53.0': resolution: {integrity: sha512-S6rBArW/zD1tob8M9PwKYrRmz+j1ss1+wjbRAJCWKd7TC3JB6noDiA95pIj9zOZVVp04MIzy5qymnYusrEyXzg==} engines: {node: ^20.19.0 || >=22.12.0} @@ -734,24 +832,48 @@ packages: os: [linux] libc: [musl] + '@oxlint/binding-openharmony-arm64@1.52.0': + resolution: {integrity: sha512-CWgJ6FepHryuc/lgQWStFf3lcvEkbFLSa9zqO0D0QLVfrdg43I4XItKpL/bnfm4n7obzwgG8j8sBggdoxJQKfw==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [openharmony] + '@oxlint/binding-openharmony-arm64@1.53.0': resolution: {integrity: sha512-sd/A0Ny5sN0D/MJtlk7w2jGY4bJQou7gToa9WZF7Sj6HTyVzvlzKJWiOHfr4SulVk4ndiFQ8rKmF9rXP0EcF3A==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [openharmony] + '@oxlint/binding-win32-arm64-msvc@1.52.0': + resolution: {integrity: sha512-EuNAbPpctu8jYMZnvYh53Xw3YVY2nIi9bQlyMjY0eKiJxDv8ikHrAfcVcwTQW9xa5tp0eiMkmW7iHPP5CYUC9Q==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [win32] + '@oxlint/binding-win32-arm64-msvc@1.53.0': resolution: {integrity: sha512-QC3q7b51Er/ZurEFcFzc7RpQ/YEoEBLJuCp3WoOzhSHHH/nkUKFy+igOxlj1z3LayhEZPDQQ7sXvv2PM2cdG3Q==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [win32] + '@oxlint/binding-win32-ia32-msvc@1.52.0': + resolution: {integrity: sha512-wu3fquQttzSXwyy8DfdOG3Kyb17yAbRhwPlly7NHSXkrffAEAmZ6+o38tCNgsReGLugbn/wbq4uS4nEQubCq+A==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [ia32] + os: [win32] + '@oxlint/binding-win32-ia32-msvc@1.53.0': resolution: {integrity: sha512-3OvLgOqwd705hWHV2i8ni80pilvg6BUgpC2+xtVu++e/q28LKVohGh5J5QYJOrRMfWmxK0M/AUu43vUw62LAKQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [ia32] os: [win32] + '@oxlint/binding-win32-x64-msvc@1.52.0': + resolution: {integrity: sha512-wikx9I9J9/lPOZlrCCNgm8YjWkia8NZfhWd1TTvZTMguyChbw/oA2VEM6Fzx+kkpA+1qu5Mo7nrLdOXEJavw8g==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [win32] + '@oxlint/binding-win32-x64-msvc@1.53.0': resolution: {integrity: sha512-xTiOkntexCdJytZ7ArIIgl3vGW5ujMM3sJNM7/+iqGAVJagCqjFFWn68HRWRLeyT66c95uR+CeFmQFI6mLQqDw==} engines: {node: ^20.19.0 || >=22.12.0} @@ -2686,6 +2808,16 @@ packages: resolution: {integrity: sha512-4RuJK2jP08XwqtUu+5yhCbxEauCm6tv2MFHKEMsjbosK2+vy5us82oI3VLuHwbNyZG7ekZA26U2LLHnGR4frIA==} hasBin: true + oxlint@1.52.0: + resolution: {integrity: sha512-InLldD+6+3iHJGIrtU1W37UIpsg+xoGCemkZCuSQhxUO3evMX+L872ONvbECyRza9k7ScMCukJIK3Al/2ZMDnQ==} + engines: {node: ^20.19.0 || >=22.12.0} + hasBin: true + peerDependencies: + oxlint-tsgolint: '>=0.15.0' + peerDependenciesMeta: + oxlint-tsgolint: + optional: true + oxlint@1.53.0: resolution: {integrity: sha512-TLW0PzGbpO1JxUnuy1pIqVPjQUGh4fNfxu5XJbdFIRFVaJ0UFzTjjk/hSFTMRxN6lZub53xL/IwJNEkrh7VtDg==} engines: {node: ^20.19.0 || >=22.12.0} @@ -3648,60 +3780,117 @@ snapshots: '@oxlint-tsgolint/win32-x64@0.16.0': optional: true + '@oxlint/binding-android-arm-eabi@1.52.0': + optional: true + '@oxlint/binding-android-arm-eabi@1.53.0': optional: true + '@oxlint/binding-android-arm64@1.52.0': + optional: true + '@oxlint/binding-android-arm64@1.53.0': optional: true + '@oxlint/binding-darwin-arm64@1.52.0': + optional: true + '@oxlint/binding-darwin-arm64@1.53.0': optional: true + '@oxlint/binding-darwin-x64@1.52.0': + optional: true + '@oxlint/binding-darwin-x64@1.53.0': optional: true + '@oxlint/binding-freebsd-x64@1.52.0': + optional: true + '@oxlint/binding-freebsd-x64@1.53.0': optional: true + '@oxlint/binding-linux-arm-gnueabihf@1.52.0': + optional: true + '@oxlint/binding-linux-arm-gnueabihf@1.53.0': optional: true + '@oxlint/binding-linux-arm-musleabihf@1.52.0': + optional: true + '@oxlint/binding-linux-arm-musleabihf@1.53.0': optional: true + '@oxlint/binding-linux-arm64-gnu@1.52.0': + optional: true + '@oxlint/binding-linux-arm64-gnu@1.53.0': optional: true + '@oxlint/binding-linux-arm64-musl@1.52.0': + optional: true + '@oxlint/binding-linux-arm64-musl@1.53.0': optional: true + '@oxlint/binding-linux-ppc64-gnu@1.52.0': + optional: true + '@oxlint/binding-linux-ppc64-gnu@1.53.0': optional: true + '@oxlint/binding-linux-riscv64-gnu@1.52.0': + optional: true + '@oxlint/binding-linux-riscv64-gnu@1.53.0': optional: true + '@oxlint/binding-linux-riscv64-musl@1.52.0': + optional: true + '@oxlint/binding-linux-riscv64-musl@1.53.0': optional: true + '@oxlint/binding-linux-s390x-gnu@1.52.0': + optional: true + '@oxlint/binding-linux-s390x-gnu@1.53.0': optional: true + '@oxlint/binding-linux-x64-gnu@1.52.0': + optional: true + '@oxlint/binding-linux-x64-gnu@1.53.0': optional: true + '@oxlint/binding-linux-x64-musl@1.52.0': + optional: true + '@oxlint/binding-linux-x64-musl@1.53.0': optional: true + '@oxlint/binding-openharmony-arm64@1.52.0': + optional: true + '@oxlint/binding-openharmony-arm64@1.53.0': optional: true + '@oxlint/binding-win32-arm64-msvc@1.52.0': + optional: true + '@oxlint/binding-win32-arm64-msvc@1.53.0': optional: true + '@oxlint/binding-win32-ia32-msvc@1.52.0': + optional: true + '@oxlint/binding-win32-ia32-msvc@1.53.0': optional: true + '@oxlint/binding-win32-x64-msvc@1.52.0': + optional: true + '@oxlint/binding-win32-x64-msvc@1.53.0': optional: true @@ -5680,6 +5869,29 @@ snapshots: '@oxlint-tsgolint/win32-arm64': 0.16.0 '@oxlint-tsgolint/win32-x64': 0.16.0 + oxlint@1.52.0(oxlint-tsgolint@0.16.0): + optionalDependencies: + '@oxlint/binding-android-arm-eabi': 1.52.0 + '@oxlint/binding-android-arm64': 1.52.0 + '@oxlint/binding-darwin-arm64': 1.52.0 + '@oxlint/binding-darwin-x64': 1.52.0 + '@oxlint/binding-freebsd-x64': 1.52.0 + '@oxlint/binding-linux-arm-gnueabihf': 1.52.0 + '@oxlint/binding-linux-arm-musleabihf': 1.52.0 + '@oxlint/binding-linux-arm64-gnu': 1.52.0 + '@oxlint/binding-linux-arm64-musl': 1.52.0 + '@oxlint/binding-linux-ppc64-gnu': 1.52.0 + '@oxlint/binding-linux-riscv64-gnu': 1.52.0 + '@oxlint/binding-linux-riscv64-musl': 1.52.0 + '@oxlint/binding-linux-s390x-gnu': 1.52.0 + '@oxlint/binding-linux-x64-gnu': 1.52.0 + '@oxlint/binding-linux-x64-musl': 1.52.0 + '@oxlint/binding-openharmony-arm64': 1.52.0 + '@oxlint/binding-win32-arm64-msvc': 1.52.0 + '@oxlint/binding-win32-ia32-msvc': 1.52.0 + '@oxlint/binding-win32-x64-msvc': 1.52.0 + oxlint-tsgolint: 0.16.0 + oxlint@1.53.0(oxlint-tsgolint@0.16.0): optionalDependencies: '@oxlint/binding-android-arm-eabi': 1.53.0 @@ -5702,6 +5914,7 @@ snapshots: '@oxlint/binding-win32-ia32-msvc': 1.53.0 '@oxlint/binding-win32-x64-msvc': 1.53.0 oxlint-tsgolint: 0.16.0 + optional: true p-limit@3.1.0: dependencies: diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index edba1559..bb34cf00 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -20,7 +20,7 @@ catalog: eslint-plugin-unused-imports: 4.4.1 lefthook: 2.1.3 oxfmt: 0.37.0 - oxlint: 1.53.0 + oxlint: 1.52.0 oxlint-tsgolint: 0.16.0 tailwindcss: 4.2.1 typescript: 5.9.3