diff --git a/packages/lifeforge-ui/package.json b/packages/lifeforge-ui/package.json index d89a48332..bf9eae066 100644 --- a/packages/lifeforge-ui/package.json +++ b/packages/lifeforge-ui/package.json @@ -14,7 +14,7 @@ "sideEffects": false, "main": "dist/index.js", "module": "dist/index.mjs", - "types": "dist/src/index.d.ts", + "types": "dist/index.d.ts", "files": [ "dist", "README.md" @@ -25,7 +25,7 @@ "scripts": { "dev": "storybook dev -p 6006", "types": "tsc -b", - "build": "rm -rf dist && tsup src/index.ts && tsc", + "build": "rm -rf dist && vite build", "build-storybook": "cd ../../shared && bun run build && cd ../packages/lifeforge-ui && storybook build" }, "dependencies": { @@ -86,8 +86,6 @@ "@storybook/addon-docs": "10.1.0", "@storybook/addon-onboarding": "10.1.0", "@storybook/react-vite": "10.1.0", - "@tailwindcss/cli": "^4.1.14", - "@tailwindcss/vite": "^4.1.14", "@types/culori": "^4.0.1", "@types/dom-css": "^2.1.1", "@types/javascript-color-gradient": "^2.4.2", @@ -108,7 +106,8 @@ "storybook": "10.1.0", "storybook-addon-deep-controls": "^0.9.5", "tsup": "^8.5.0", - "vite": "^7.1.9", + "vite": "^7.3.1", + "vite-plugin-dts": "^4.5.4", "vite-tsconfig-paths": "^5.1.4", "vitest": "^1.6.1" } diff --git a/packages/lifeforge-ui/vite.config.ts b/packages/lifeforge-ui/vite.config.ts new file mode 100644 index 000000000..27afd6e44 --- /dev/null +++ b/packages/lifeforge-ui/vite.config.ts @@ -0,0 +1,47 @@ +import react from '@vitejs/plugin-react' +import { resolve } from 'path' +import { defineConfig } from 'vite' +import dts from 'vite-plugin-dts' + +export default defineConfig({ + plugins: [ + react(), + dts({ + rollupTypes: true + }) + ], + resolve: { + alias: { + '@components': resolve(__dirname, 'src/components'), + '@': resolve(__dirname, 'src') + } + }, + build: { + lib: { + entry: resolve(__dirname, 'src/index.ts'), + formats: ['es', 'cjs'], + fileName: format => `index.${format === 'es' ? 'mjs' : 'js'}` + }, + rollupOptions: { + external: [ + 'react', + 'react-dom', + 'react/jsx-runtime', + 'shared', + '@tanstack/react-query', + /^react-router/, + /^react-i18next/, + /^i18next/ + ], + output: { + globals: { + react: 'React', + 'react-dom': 'ReactDOM' + }, + assetFileNames: 'index.[ext]' + } + }, + sourcemap: false, + minify: true + } +})