-
Notifications
You must be signed in to change notification settings - Fork 0
/
vite.config.example.ts
36 lines (32 loc) · 1.05 KB
/
vite.config.example.ts
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
import { resolve } from 'path';
import { defineConfig } from 'vite';
import { splitVendorChunkPlugin } from 'vite';
import topLevelAwait from 'vite-plugin-top-level-await';
import { EXAMPLES } from './examples';
// @ts-ignore
const input: { [key: string]: resolve } = {};
EXAMPLES.forEach((example) => {
input['examples'] = resolve(__dirname, `examples/index.html`);
input[example] = resolve(__dirname, `examples/examples/${example}/index.html`);
});
export default defineConfig({
base: './',
build: {
target: 'esnext',
// minify: false,
outDir: './dist/examples',
rollupOptions: {
input,
// treeshake: false,
},
},
plugins: [
splitVendorChunkPlugin(),
topLevelAwait({
// The export name of top-level await promise for each chunk module
promiseExportName: '__tla',
// The function to generate import names of top-level await promise in each chunk module
promiseImportName: (i) => `__tla_${i}`,
}),
],
});