1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
| import { cp, mkdir } from 'node:fs/promises';
| import { dirname, join } from 'node:path';
| import { fileURLToPath } from 'node:url';
|
| import { defineConfig } from 'tsdown';
|
| const rootDir = dirname(fileURLToPath(import.meta.url));
| const loadingAssets = ['default-loading-antd.html', 'default-loading.html'];
|
| export default defineConfig({
| clean: true,
| deps: {
| neverBundle: ['@vben/node-utils'],
| skipNodeModulesBundle: true,
| },
| dts: {
| resolver: 'tsc',
| },
| entry: ['src/index.ts'],
| format: ['esm'],
| hooks: {
| 'build:done': async (context) => {
| const outDir = context.options.outDir;
| if (!outDir) {
| return;
| }
|
| await mkdir(outDir, { recursive: true });
|
| for (const file of loadingAssets) {
| await cp(
| join(rootDir, 'src/plugins/inject-app-loading', file),
| join(outDir, file),
| );
| }
| },
| },
| outExtensions: () => ({
| dts: '.d.ts',
| }),
| });
|
|