import tailwindcss from '@tailwindcss/vite'; import react from '@vitejs/plugin-react'; import path from 'path'; import {defineConfig} from 'vite'; /** * 내부 운영 화면. 사장님 앱(solution/frontend)과 번들이 갈린다. * * `@` 를 이 앱이 아니라 사장님 앱 src 로 겨눈다 — 내부 화면이 쓰는 API·UI·수집 배선이 * 거기 한 벌만 있고 그 파일들끼리도 `@/...` 로 서로를 부른다(자기 src 로 잡으면 TS2307 14건). * 이 앱 고유 파일은 `@admin`. 의존 방향은 admin → solution 한 쪽뿐이다. */ export default defineConfig({ plugins: [react(), tailwindcss()], resolve: { alias: { '@admin': path.resolve(__dirname, 'src'), '@': path.resolve(__dirname, '../../solution/frontend/src'), // css 별칭이 먼저 와야 한다 — 접두어가 먼저 걸리면 없는 경로로 떨어진다. '@o2o/shared/tokens.css': path.resolve(__dirname, '../../solution/shared/src/styles/tokens.css'), '@o2o/shared/base.css': path.resolve(__dirname, '../../solution/shared/src/styles/base.css'), '@o2o/shared': path.resolve(__dirname, '../../solution/shared/src'), }, }, server: { watch: {usePolling: true, interval: 300}, }, });