From fcc47c66050cfaa218f4ca51cd3392e6386faa27 Mon Sep 17 00:00:00 2001 From: Nicolas Stepien Date: Sat, 28 Mar 2026 00:40:28 +0000 Subject: [PATCH 1/2] Adopt TypeScript 7 --- .vscode/extensions.json | 2 +- .vscode/settings.json | 1 + package.json | 3 ++- src/EditCell.tsx | 2 +- 4 files changed, 5 insertions(+), 3 deletions(-) diff --git a/.vscode/extensions.json b/.vscode/extensions.json index 0d4efacdc9..cf3caf0895 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -1,3 +1,3 @@ { - "recommendations": ["dbaeumer.vscode-eslint", "oxc.oxc-vscode"] + "recommendations": ["dbaeumer.vscode-eslint", "oxc.oxc-vscode", "typescriptteam.native-preview"] } diff --git a/.vscode/settings.json b/.vscode/settings.json index b76ddf9a99..762045fea0 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -10,6 +10,7 @@ "editor.formatOnSaveMode": "file", "js/ts.tsdk.promptToUseWorkspaceVersion": true, "js/ts.tsdk.path": "node_modules/typescript/lib", + "js/ts.experimental.useTsgo": true, "files.readonlyInclude": { "**/routeTree.gen.ts": true }, diff --git a/package.json b/package.json index c4ffeac7de..30409f3fbb 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "format:check": "oxfmt --check", "eslint": "eslint --max-warnings 0 --cache --cache-location .cache/eslint --cache-strategy content", "eslint:fix": "node --run eslint -- --fix", - "typecheck": "tsc --build" + "typecheck": "tsgo --build" }, "devDependencies": { "@eslint-react/eslint-plugin": "^3.0.0", @@ -55,6 +55,7 @@ "@types/node": "^25.5.0", "@types/react": "^19.2.14", "@types/react-dom": "^19.2.3", + "@typescript/native-preview": "^7.0.0-dev.20260327.2", "@vitejs/plugin-react": "^6.0.1", "@vitest/browser-playwright": "^4.1.0", "@vitest/coverage-istanbul": "^4.1.0", diff --git a/src/EditCell.tsx b/src/EditCell.tsx index 750aebf78f..78fd789230 100644 --- a/src/EditCell.tsx +++ b/src/EditCell.tsx @@ -21,7 +21,7 @@ import type { * The event can be `stopPropagation()`ed halfway through, so they may not always bubble back up to the window, * so an alternative check must be used. The check must happen after the event can reach the "inside" container, * and not before it run to completion. `postTask`/`requestAnimationFrame` are the best way we know to achieve this. - * Usually we want click event handlers from parent components to access the latest commited values, + * Usually we want click event handlers from parent components to access the latest committed values, * so `mousedown` is used instead of `click`. * * We must also rely on React's event capturing/bubbling to handle elements rendered in a portal. From ef9f5a897f842b238f95dab906c45dd944a55a52 Mon Sep 17 00:00:00 2001 From: Nicolas Stepien Date: Sat, 28 Mar 2026 00:44:57 +0000 Subject: [PATCH 2/2] update AGENTS.ms --- AGENTS.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/AGENTS.md b/AGENTS.md index b64555fe1a..558d9f82e2 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -5,7 +5,7 @@ ```shell npm install # setup (requires Node.js ≥ 22 for `node --run`) node --run build # library → lib/ -node --run typecheck # tsc --build +node --run typecheck # tsgo --build node --run eslint # eslint --max-warnings 0 node --run eslint:fix # eslint --fix node --run format # oxfmt