-
Notifications
You must be signed in to change notification settings - Fork 0
/
vite.config.ts
45 lines (39 loc) · 878 Bytes
/
vite.config.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
37
38
39
40
41
42
43
44
45
/// <reference types="vitest" />
import { existsSync, lstatSync, readdirSync, rmdirSync, unlinkSync } from "fs";
import { resolve } from "path";
import { defineConfig } from "vite";
import dts from "vite-plugin-dts";
emptyDir(resolve(__dirname, "dist"));
export default defineConfig({
build: {
lib: {
entry: resolve(__dirname, "src/index.ts"),
fileName: "easy-date-range",
name: "easy-date-range",
},
rollupOptions: {
external: ["luxon"],
},
},
plugins: [dts()],
test: {
coverage: {
reportsDirectory: "tests/coverage",
},
},
});
function emptyDir(dir: string): void {
if (!existsSync(dir)) {
return;
}
for (const file of readdirSync(dir)) {
const abs = resolve(dir, file);
// baseline is Node 12 so can't use rmSync
if (lstatSync(abs).isDirectory()) {
emptyDir(abs);
rmdirSync(abs);
} else {
unlinkSync(abs);
}
}
}