From cc84db49c8dabb4baf4dfe7c6372d3675c0565fd Mon Sep 17 00:00:00 2001 From: Brendan Allan Date: Mon, 7 Nov 2022 12:18:41 +0800 Subject: [PATCH] Utilise tsconfig paths for workspace module resolution (#454) * use @sd/client for tsconfig extends * move all svgs to @sd/assets * only use vite-tsconfig-paths * remove ui from web * use relative extends for ui tsconfig * remove aliases from landing? * use wacky landing vite config * try using tsconfig paths and root on landing * Revert "try using tsconfig paths and root on landing" This reverts commit 43bd2a0f84e6cda7a2be4f6a9bc20920d23748c8. * remove tsconfig-paths from landing --- apps/desktop/package.json | 6 ++++-- apps/desktop/tsconfig.json | 5 +---- apps/desktop/vite.config.ts | 2 ++ apps/web/package.json | 4 ++-- apps/web/tsconfig.json | 3 +-- apps/web/vite.config.ts | 5 ++--- .../src/assets/svg => assets/svgs}/alert.svg | 0 .../svg => assets/svgs}/arrow-right.svg | 0 .../src/assets/svg => assets/svgs}/drive.svg | 0 .../src/assets/svg => assets/svgs}/info.svg | 0 .../svg => assets/svgs}/macos_close.svg | 0 .../svg => assets/svgs}/macos_fullscreen.svg | 0 .../svg => assets/svgs}/macos_minimize.svg | 0 .../assets/svg => assets/svgs}/spinner.svg | 0 packages/client/package.json | 2 -- packages/config/base.tsconfig.json | 3 ++- .../src/components/os/TrafficLights.tsx | 6 +++--- packages/interface/tsconfig.json | 8 ++------ packages/ui/package.json | 1 - packages/ui/tsconfig.json | 12 +++++------- pnpm-lock.yaml | Bin 820255 -> 821029 bytes 21 files changed, 24 insertions(+), 33 deletions(-) rename packages/{interface/src/assets/svg => assets/svgs}/alert.svg (100%) rename packages/{interface/src/assets/svg => assets/svgs}/arrow-right.svg (100%) rename packages/{interface/src/assets/svg => assets/svgs}/drive.svg (100%) rename packages/{interface/src/assets/svg => assets/svgs}/info.svg (100%) rename packages/{interface/src/assets/svg => assets/svgs}/macos_close.svg (100%) rename packages/{interface/src/assets/svg => assets/svgs}/macos_fullscreen.svg (100%) rename packages/{interface/src/assets/svg => assets/svgs}/macos_minimize.svg (100%) rename packages/{interface/src/assets/svg => assets/svgs}/spinner.svg (100%) diff --git a/apps/desktop/package.json b/apps/desktop/package.json index 6d3187854..c6603ae9c 100644 --- a/apps/desktop/package.json +++ b/apps/desktop/package.json @@ -12,8 +12,8 @@ "dmg": "open ../../target/release/bundle/dmg/" }, "dependencies": { - "@rspc/tauri": "^0.0.0-main-7c0a67c1", "@rspc/client": "^0.0.0-main-7c0a67c1", + "@rspc/tauri": "^0.0.0-main-7c0a67c1", "@sd/client": "workspace:*", "@sd/interface": "workspace:*", "@sd/ui": "workspace:*", @@ -22,6 +22,7 @@ "react-dom": "^18.2.0" }, "devDependencies": { + "@sd/config": "workspace:*", "@tauri-apps/cli": "1.1.1", "@tauri-apps/tauricon": "github:tauri-apps/tauricon", "@types/babel-core": "^6.25.7", @@ -33,6 +34,7 @@ "sass": "^1.55.0", "typescript": "^4.8.4", "vite": "^3.1.4", - "vite-plugin-svgr": "^2.2.1" + "vite-plugin-svgr": "^2.2.1", + "vite-tsconfig-paths": "^3.5.2" } } diff --git a/apps/desktop/tsconfig.json b/apps/desktop/tsconfig.json index 435bfd6d3..404c5a9cb 100644 --- a/apps/desktop/tsconfig.json +++ b/apps/desktop/tsconfig.json @@ -1,7 +1,4 @@ { - "extends": "../../packages/config/interface.tsconfig.json", - "compilerOptions": { - "target": "es2020" - }, + "extends": "@sd/config/interface.tsconfig.json", "include": ["src"] } diff --git a/apps/desktop/vite.config.ts b/apps/desktop/vite.config.ts index 512405f20..00103bb15 100644 --- a/apps/desktop/vite.config.ts +++ b/apps/desktop/vite.config.ts @@ -1,6 +1,7 @@ import react from '@vitejs/plugin-react'; import { defineConfig } from 'vite'; import svgr from 'vite-plugin-svgr'; +import tsconfigPaths from 'vite-tsconfig-paths'; import { name, version } from './package.json'; @@ -10,6 +11,7 @@ export default defineConfig({ port: 8001 }, plugins: [ + tsconfigPaths(), react(), svgr({ svgrOptions: { diff --git a/apps/web/package.json b/apps/web/package.json index 35e3cda8b..b8e845a14 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -12,12 +12,12 @@ "@rspc/client": "^0.0.0-main-7c0a67c1", "@sd/client": "workspace:*", "@sd/interface": "workspace:*", - "@sd/ui": "workspace:*", "@tanstack/react-query": "^4.12.0", "react": "^18.2.0", "react-dom": "^18.2.0" }, "devDependencies": { + "@sd/config": "workspace:*", "@types/react": "^18.0.21", "@types/react-dom": "^18.0.6", "@vitejs/plugin-react": "^2.1.0", @@ -28,6 +28,6 @@ "vite": "^3.1.4", "vite-plugin-html": "^3.2.0", "vite-plugin-svgr": "^2.2.1", - "vite-plugin-tsconfig-paths": "^1.2.0" + "vite-tsconfig-paths": "^3.5.2" } } diff --git a/apps/web/tsconfig.json b/apps/web/tsconfig.json index 168f12434..404c5a9cb 100644 --- a/apps/web/tsconfig.json +++ b/apps/web/tsconfig.json @@ -1,5 +1,4 @@ { - "extends": "../../packages/config/interface.tsconfig.json", - "compilerOptions": {}, + "extends": "@sd/config/interface.tsconfig.json", "include": ["src"] } diff --git a/apps/web/vite.config.ts b/apps/web/vite.config.ts index affc565fe..6595d6480 100644 --- a/apps/web/vite.config.ts +++ b/apps/web/vite.config.ts @@ -3,7 +3,7 @@ import { visualizer } from 'rollup-plugin-visualizer'; import { defineConfig } from 'vite'; import { createHtmlPlugin } from 'vite-plugin-html'; import svg from 'vite-plugin-svgr'; -import tsconfigPaths from 'vite-plugin-tsconfig-paths'; +import tsconfigPaths from 'vite-tsconfig-paths'; import { name, version } from './package.json'; @@ -13,9 +13,9 @@ export default defineConfig({ port: 8002 }, plugins: [ + tsconfigPaths(), react(), svg({ svgrOptions: { icon: true } }), - tsconfigPaths(), createHtmlPlugin({ minify: true }), @@ -25,7 +25,6 @@ export default defineConfig({ }) ], root: 'src', - publicDir: '../../packages/interface/src/assets', define: { pkgJson: { name, version } }, diff --git a/packages/interface/src/assets/svg/alert.svg b/packages/assets/svgs/alert.svg similarity index 100% rename from packages/interface/src/assets/svg/alert.svg rename to packages/assets/svgs/alert.svg diff --git a/packages/interface/src/assets/svg/arrow-right.svg b/packages/assets/svgs/arrow-right.svg similarity index 100% rename from packages/interface/src/assets/svg/arrow-right.svg rename to packages/assets/svgs/arrow-right.svg diff --git a/packages/interface/src/assets/svg/drive.svg b/packages/assets/svgs/drive.svg similarity index 100% rename from packages/interface/src/assets/svg/drive.svg rename to packages/assets/svgs/drive.svg diff --git a/packages/interface/src/assets/svg/info.svg b/packages/assets/svgs/info.svg similarity index 100% rename from packages/interface/src/assets/svg/info.svg rename to packages/assets/svgs/info.svg diff --git a/packages/interface/src/assets/svg/macos_close.svg b/packages/assets/svgs/macos_close.svg similarity index 100% rename from packages/interface/src/assets/svg/macos_close.svg rename to packages/assets/svgs/macos_close.svg diff --git a/packages/interface/src/assets/svg/macos_fullscreen.svg b/packages/assets/svgs/macos_fullscreen.svg similarity index 100% rename from packages/interface/src/assets/svg/macos_fullscreen.svg rename to packages/assets/svgs/macos_fullscreen.svg diff --git a/packages/interface/src/assets/svg/macos_minimize.svg b/packages/assets/svgs/macos_minimize.svg similarity index 100% rename from packages/interface/src/assets/svg/macos_minimize.svg rename to packages/assets/svgs/macos_minimize.svg diff --git a/packages/interface/src/assets/svg/spinner.svg b/packages/assets/svgs/spinner.svg similarity index 100% rename from packages/interface/src/assets/svg/spinner.svg rename to packages/assets/svgs/spinner.svg diff --git a/packages/client/package.json b/packages/client/package.json index 2452db02b..70ab2ec59 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -8,8 +8,6 @@ ], "scripts": { "test": "jest", - "dev": "tsc -w", - "build": "tsc", "lint": "TIMING=1 eslint src --fix", "clean": "rm -rf .turbo && rm -rf node_modules && rm -rf dist" }, diff --git a/packages/config/base.tsconfig.json b/packages/config/base.tsconfig.json index 819f5cfbd..db03ce4b6 100644 --- a/packages/config/base.tsconfig.json +++ b/packages/config/base.tsconfig.json @@ -23,7 +23,8 @@ "paths": { "@sd/interface": ["../../packages/interface"], "@sd/ui": ["../../packages/ui"], - "@sd/client": ["../../packages/client"] + "@sd/client": ["../../packages/client"], + "@sd/assets": ["../../packages/assets"] } }, "exclude": ["node_modules"] diff --git a/packages/interface/src/components/os/TrafficLights.tsx b/packages/interface/src/components/os/TrafficLights.tsx index 17eda944a..1682e6f6a 100644 --- a/packages/interface/src/components/os/TrafficLights.tsx +++ b/packages/interface/src/components/os/TrafficLights.tsx @@ -1,9 +1,9 @@ +import closeIconPath from '@sd/assets/svgs/macos_close.svg'; +import fullscreenIconPath from '@sd/assets/svgs/macos_fullscreen.svg'; +import minimizeIconPath from '@sd/assets/svgs/macos_minimize.svg'; import clsx from 'clsx'; import { HTMLAttributes, useEffect, useRef } from 'react'; -import closeIconPath from '../../assets/svg/macos_close.svg'; -import fullscreenIconPath from '../../assets/svg/macos_fullscreen.svg'; -import minimizeIconPath from '../../assets/svg/macos_minimize.svg'; import { useFocusState } from '../../hooks/useFocusState'; import { DefaultProps } from '../primitive/types'; diff --git a/packages/interface/tsconfig.json b/packages/interface/tsconfig.json index cf8e0fb5a..404c5a9cb 100644 --- a/packages/interface/tsconfig.json +++ b/packages/interface/tsconfig.json @@ -1,8 +1,4 @@ { - "extends": "../config/interface.tsconfig.json", - "compilerOptions": { - "target": "es2020", - "outDir": "./dist" - }, - "include": ["src", "../ui/src/Dialog.tsx", "../ui/src/Loader.tsx"] + "extends": "@sd/config/interface.tsconfig.json", + "include": ["src"] } diff --git a/packages/ui/package.json b/packages/ui/package.json index a98927f32..aa9d39046 100644 --- a/packages/ui/package.json +++ b/packages/ui/package.json @@ -12,7 +12,6 @@ "./package.json": "./package.json" }, "scripts": { - "build": "tsc", "storybook": "start-storybook -p 6006", "storybook:build": "build-storybook" }, diff --git a/packages/ui/tsconfig.json b/packages/ui/tsconfig.json index b24a29cd7..a68a989fe 100644 --- a/packages/ui/tsconfig.json +++ b/packages/ui/tsconfig.json @@ -1,9 +1,7 @@ { - "extends": "../config/base.tsconfig.json", - "include": [ - "src" - ], - "compilerOptions": { - "outDir": "./dist" - } + "extends": "../config/interface.tsconfig.json", + "include": ["src"], + "compilerOptions": { + "outDir": "./dist" + } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a49f7536fe0ea82b29f5af0847622d4a454e316c..a72b2bbf0ae09f031c4508f98665c5ac889bf37c 100644 GIT binary patch delta 1274 zcmZ{jTWs4@7{`^mZJH)+H`aES7A=LYC8UXCJJ${d&c%(}+%HQ~E}N6sN$Mm{94B@v z0fR~Fcz|j0!$GRVm=M#1G|{ON1~GVo2P&aWJir4gsBeJwFbPc{HX&R#kc!|)-_z0m zobUVpzW=53=zDLX8x2UFd`2gq_Kt1VAx)2bZALpTvq`8K4JzkzJv+cO4yGp{|ak=IT71OL{ma{0o*Pn+wyYkiw9 zjYwmEe<|0Y$H0*?bVR;mc~XAGF)hE}`?!4L*l+*Sf=mrh$hT)U!0#))9r>&N!)g;Y z@Ev5BP{pJ29|uO%2gc>?k%RJQPyA^7k3OvEsZK?ppT(?*)qQr`q->isTVD?q+O0Co z(^X2SbZ9W;fXt~xg9!zMRJBV=bR@R0RN&a8xq*3?NfM4@`JBXeiA1Sdb_6jTOSzjK zrWMN7T=+)Pj^N_j|vG4TDA_ zOx3$JN+^`U^p(Rjb^+I`HecwR^Bmxd#u<5kovBRxPb=y#S+DRK70EraMV0mGB7WLPM&y zShkoZ_*S4%XPhoJS&OkwXBS^cAuc=QV;aa^CZfsa}JCxg34g)+}k0=RfXXI4I{>UHDFt=IG~_w_%>71*h$ zJn^7p545=kT+9+a^GV6!_E1$KPr2iyutJ#KWyT#6YVC?o40cI7AI!#uXfzO^!fv*c zV;oGvR!sQHT})ifkjtJ--s>VVoQ!aff?KD0C%_9!TCF_yya9ZPLgT>sx_%5;E({DS z#CiQwgd*S6L;2CYF@Yb1{fxz6OG}I4QV>VEMbsVlEuf6KoaGD6RnA2U0-sDQ*>M<7 zH9U47)6P0*T8K&*)~txxV7ger2$2oOP)@}aY8n#EL#d!PA9*)?(hM?u8Y5c(Zqed86Hm c0K{w<1()Uw`@z$QVH)iFP&1|IFvEEKPYooq1ONa4 delta 711 zcmZ45XEeXVXhQ+><_XOI87DvB6Px}ji&<-OffnoLZ>&a)let*9Cx2r$*gT27hH#1)5>e8HCqbfSN!CGT_Ks=ZEWPWzZ=?(^LY?B-;H{aF}Wt==u zlidK_2%rgi2J!jE#RUar861+*AXU23oY%Lv3w zK+L?o{x8d2{pqEqOv3F6x~xFVwmm_Yy*zum>@0Sk?JYCer!Y@HJ)50>azQi8cA2^C zro8R%SFvw@zl!5q+vG3F!mN3TdHP1v4VJKLwM!UrZkI6P`supevXV>Y==95KOv2OW z+jH}5PqpLrFqqyf59Dvm<^Y&G(+*PdG&3d>^+;|`%qHm~YqGvFD z?*~@1(EOYd<4W%=(-aebKU3d=!1Ri;!h%dcBNNAh;-ZwCpghk&xAMZAq^i=8te_~j zK)?JD|Ej7GFGJ(9N|&G#^RRG(%?VB}FUc~