Make the editor packages compatible with, and benefit from, the native Go
compiler (TypeScript 7 / tsgo) while keeping the npm publish path on stable tsc.
- Add @typescript/native-preview (pinned 7.0.0-dev.20260624.1). tsgo coexists
with typescript@6, which Next typegen and the IDE plugin still need until the
TS 7.1 programmatic API ships.
- Fix two react-three-fiber JSX augmentations the native checker rejects but
tsc tolerated:
- viewer: map only LineBasicNodeMaterial (the one webgpu node material used as
a JSX tag) instead of the whole three/webgpu namespace (TS2320/TS2590).
- plane-box-select-tool: drop the redundant `IntrinsicElements extends
ThreeElements` block — it duplicated R3F's global augmentation and, by
referencing @react-three/fiber's ThreeElements directly, hit a bun peer-dep
variant-directory duplicate under tsgo (TS2320). r3f.d.ts already covers
those JSX intrinsics. Types-only — no runtime change.
- check-types -> tsgo --noEmit (editor, @repo/ui, editor app, ifc-converter app)
- emit-package dev watch -> tsgo --build --watch
- build/publish stay tsc --build (prepublishOnly + release.yml unchanged;
emitted .d.ts is byte-identical to tsc output)
- bump next 16.2.6 -> 16.2.9
tsc remains the source of truth and fallback. Published artifacts unchanged.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
27 lines
580 B
JSON
27 lines
580 B
JSON
{
|
|
"name": "@repo/ui",
|
|
"version": "0.0.0",
|
|
"private": true,
|
|
"exports": {
|
|
"./*": "./src/*.tsx"
|
|
},
|
|
"scripts": {
|
|
"lint": "eslint . --max-warnings 0",
|
|
"generate:component": "turbo gen react-component",
|
|
"check-types": "tsgo --noEmit"
|
|
},
|
|
"devDependencies": {
|
|
"@repo/eslint-config": "*",
|
|
"@repo/typescript-config": "*",
|
|
"@types/node": "^22.15.3",
|
|
"@types/react": "19.2.2",
|
|
"@types/react-dom": "19.2.2",
|
|
"eslint": "^9.39.1",
|
|
"typescript": "6.0.3"
|
|
},
|
|
"dependencies": {
|
|
"react": "^19.2.0",
|
|
"react-dom": "^19.2.0"
|
|
}
|
|
}
|