diff --git a/.gitignore b/.gitignore index 7f9a85235..3d4f9095a 100644 --- a/.gitignore +++ b/.gitignore @@ -9,6 +9,7 @@ node_modules playground tmp dist +ts-dist .turbo **/.serena .serena/ diff --git a/bun.lock b/bun.lock index c173f9d0f..9773d2d57 100644 --- a/bun.lock +++ b/bun.lock @@ -363,6 +363,7 @@ "@actions/artifact": "4.0.0", "@tauri-apps/cli": "^2", "@types/bun": "catalog:", + "@typescript/native-preview": "catalog:", "typescript": "~5.6.2", "vite": "catalog:", }, diff --git a/packages/desktop/tsconfig.json b/packages/desktop/tsconfig.json index 8057094c3..e91a254de 100644 --- a/packages/desktop/tsconfig.json +++ b/packages/desktop/tsconfig.json @@ -1,6 +1,7 @@ { "$schema": "https://json.schemastore.org/tsconfig", "compilerOptions": { + "composite": true, "target": "ESNext", "module": "ESNext", "skipLibCheck": true, @@ -11,7 +12,9 @@ "jsxImportSource": "solid-js", "allowJs": true, "strict": true, - "noEmit": true, + "noEmit": false, + "emitDeclarationOnly": true, + "outDir": "ts-dist", "isolatedModules": true, "paths": { "@/*": ["./src/*"] diff --git a/packages/tauri/package.json b/packages/tauri/package.json index 1300aaf93..70b9e7cc8 100644 --- a/packages/tauri/package.json +++ b/packages/tauri/package.json @@ -4,9 +4,10 @@ "version": "1.0.137", "type": "module", "scripts": { + "typecheck": "tsgo -b", "predev": "bun ./scripts/predev.ts", "dev": "vite", - "build": "tsc && vite build", + "build": "bun run typecheck && vite build", "preview": "vite preview", "tauri": "tauri" }, @@ -24,6 +25,7 @@ "@actions/artifact": "4.0.0", "@tauri-apps/cli": "^2", "@types/bun": "catalog:", + "@typescript/native-preview": "catalog:", "typescript": "~5.6.2", "vite": "catalog:" } diff --git a/packages/tauri/src/index.tsx b/packages/tauri/src/index.tsx index 4e23241ec..495cff8fc 100644 --- a/packages/tauri/src/index.tsx +++ b/packages/tauri/src/index.tsx @@ -13,10 +13,17 @@ if (import.meta.env.DEV && !(root instanceof HTMLElement)) { const platform: Platform = {} -render(() => { - onMount(() => { - if (window.__OPENCODE__.updaterEnabled) runUpdater() - }) +declare global { + interface Window { + __OPENCODE__?: { updaterEnabled?: boolean } + } +} + +render( + () => { + onMount(() => { + if(window.__OPENCODE__?.updaterEnabled) runUpdater(); + }); return ( diff --git a/packages/tauri/tsconfig.json b/packages/tauri/tsconfig.json index cf73096e5..b21529450 100644 --- a/packages/tauri/tsconfig.json +++ b/packages/tauri/tsconfig.json @@ -1,26 +1,8 @@ { + "extends": "../desktop/tsconfig.json", "compilerOptions": { - "target": "ES2020", - "useDefineForClassFields": true, - "module": "ESNext", - "lib": ["ES2020", "DOM", "DOM.Iterable"], - "skipLibCheck": true, - - /* Bundler mode */ - "moduleResolution": "bundler", - "allowImportingTsExtensions": true, - "resolveJsonModule": true, - "isolatedModules": true, - "noEmit": true, - - /* Linting */ - "strict": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - "noFallthroughCasesInSwitch": true, - - "jsx": "preserve", - "jsxImportSource": "solid-js" + "outDir": "ts-dist" }, + "references": [{ "path": "../desktop" }], "include": ["src"] }