eefd7abf83
Reorganize components into category folders (forms/canvas/overlays/etc.); add the media-editor headless family (timeline, curve-editor, waveform, crop, color picker, etc.); apply perf fixes (O(1) collection lookups, plain-object drag state, gesture-leak teardown, shallowRef color state, rect caching) and replace source `any` with proper types.
31 lines
776 B
TypeScript
31 lines
776 B
TypeScript
import { defineConfig } from 'tsdown';
|
|
import { sharedConfig } from '@robonen/tsdown';
|
|
import Vue from 'unplugin-vue/rolldown';
|
|
|
|
export default defineConfig({
|
|
...sharedConfig,
|
|
tsconfig: './tsconfig.src.json',
|
|
// Components live one level deep now: src/<category>/<component>/index.ts.
|
|
entry: ['src/index.ts', 'src/*/*/index.ts'],
|
|
plugins: [Vue({ isProduction: true })],
|
|
dts: { vue: true },
|
|
deps: {
|
|
neverBundle: ['vue'],
|
|
alwaysBundle: [/^@robonen\//, '@vue/shared'],
|
|
},
|
|
inputOptions: {
|
|
resolve: {
|
|
alias: {
|
|
'@vue/shared': '@vue/shared/dist/shared.esm-bundler.js',
|
|
},
|
|
},
|
|
},
|
|
outputOptions: {
|
|
...sharedConfig.outputOptions,
|
|
chunkFileNames: 'shared/[name]-[hash].js',
|
|
},
|
|
define: {
|
|
__DEV__: 'false',
|
|
},
|
|
});
|