import { createViteConfig } from '@vtj/cli'; import fs from 'fs-extra'; import { kebabCase } from 'lodash-es'; const BUILD_TYPE = process.env.BUILD_TYPE || ''; const materials = { ui: { entry: 'src/ui/index.ts', library: 'VtjUIMaterial', outDir: 'dist/assets/ui' }, element: { entry: 'src/element/index.ts', library: 'ElementPlusMaterial', outDir: 'dist/assets/element' }, antdv: { entry: 'src/antdv/index.ts', library: 'AntdvMaterial', outDir: 'dist/assets/antdv' }, charts: { entry: 'src/charts/index.ts', library: 'VtjChartsMaterial', outDir: 'dist/assets/charts' }, vant: { entry: 'src/vant/index.ts', library: 'VantMaterial', outDir: 'dist/assets/vant' }, uniApp: { entry: 'src/uni-app/index.ts', library: 'UniApp', outDir: 'dist/deps/uni-app' }, uniH5: { entry: 'src/uni-h5/index.ts', library: 'UniH5', outDir: 'dist/deps/uni-h5' }, uniH5Vue: { entry: 'src/uni-h5-vue/index.ts', library: 'Vue', outDir: 'dist/deps/uni-h5-vue' }, uniH5C: { entry: 'src/uni-h5/components/index.ts', library: 'UniH5Material', outDir: 'dist/assets/uni-h5' }, uniUI: { entry: 'src/uni-ui/index.ts', library: 'UniUI', outDir: 'dist/deps/uni-ui' }, uniUIC: { entry: 'src/uni-ui/components/index.ts', library: 'UniUIMaterial', outDir: 'dist/assets/uni-ui' } }; const UniComponents = [ 'View', 'ScrollView', 'Swiper', 'MovableArea', 'MovableView', 'CoverView', 'CoverImage', 'Icon', 'Text', 'RichText', 'Progress', 'Button', 'CheckboxGroup', 'Checkbox', 'Editor', 'Form', 'Input', 'Label', 'Picker', 'PickerView', 'RadioGroup', 'Radio', 'Slider', 'Switch', 'Textarea', 'Navigator', 'Image', 'Video', 'Map', 'Canvas', 'WebView', 'PickerViewColumn', 'ResizeSensor', 'SwiperItem' ]; const UniComponentsKebabCase = UniComponents.map((n) => { return { name: n, value: kebabCase(n) }; }); const UinUI = { name: 'uni-ui-loader', load(id: string) { if ( id.includes('/materials/src/uni-ui/lib') || id.includes('@dcloudio/uni-ui') ) { let content = fs.readFileSync(id, 'utf-8'); for (const { name, value } of UniComponentsKebabCase) { content = content .replace(new RegExp(`<${value}`, 'g'), `<${name}`) .replace(new RegExp(`