Skip to content

Commit 5037c1a

Browse files
committed
refactor: overhaul build scripts
1 parent 5844700 commit 5037c1a

10 files changed

+1497
-831
lines changed

docs/vite.config.ts

+7-62
Original file line numberDiff line numberDiff line change
@@ -1,64 +1,9 @@
1-
import fs from 'fs'
2-
import path from 'path'
3-
import { UserConfig } from 'vite'
1+
import { defineConfig } from 'vite'
42
import prefresh from '@prefresh/vite'
5-
import windicss from 'vite-plugin-windicss'
3+
import { createConfig } from '../scripts/utils'
64

7-
const pkg = require('../package.json')
8-
9-
function getPrismLanguages() {
10-
const files = fs.readdirSync('node_modules/prismjs/components')
11-
return files
12-
.filter((file) => file.endsWith('.min.js'))
13-
.map((file) => {
14-
const [, name] = /\-([^\.]+)/.exec(file)!
15-
return name
16-
})
17-
}
18-
19-
const config: UserConfig = {
20-
define: {
21-
DOCUP_VERSION: JSON.stringify(pkg.version),
22-
PRISM_VERSION: JSON.stringify(require('prismjs/package').version),
23-
PRISM_LANGUAGES: JSON.stringify(getPrismLanguages()),
24-
},
25-
esbuild: {
26-
jsxFactory: 'h',
27-
jsxFragment: 'Fragment',
28-
},
29-
resolve: {
30-
alias: {
31-
renderer:
32-
process.env.NODE_ENV === 'fre'
33-
? path.resolve('src/renderer/fre.ts')
34-
: path.resolve('src/renderer/preact.ts'),
35-
},
36-
},
37-
plugins: [
38-
prefresh(),
39-
windicss({
40-
scan: {
41-
fileExtensions: ['tsx'],
42-
dirs: [path.resolve('src')],
43-
},
44-
}),
45-
],
46-
build: {
47-
target: ['es2020', 'safari14', 'chrome88'],
48-
minify: !process.env.DEBUG,
49-
polyfillDynamicImport: false,
50-
rollupOptions: {
51-
input: [
52-
path.join(__dirname, 'main.ts'),
53-
path.join(__dirname, 'index.html'),
54-
],
55-
preserveEntrySignatures: 'strict',
56-
output: {
57-
// Disable vendor chunk, make everything bundled in a single file
58-
manualChunks: undefined,
59-
},
60-
},
61-
},
62-
}
63-
64-
export default config
5+
export default defineConfig({
6+
...createConfig('preact', false),
7+
// @ts-expect-error
8+
plugins: [prefresh()],
9+
})

package.json

+9-12
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,7 @@
77
"type": "git"
88
},
99
"files": [
10-
"dist",
11-
"!dist/docup.d.css",
12-
"!dist/docup.esm.css"
10+
"dist"
1311
],
1412
"types": "dist/docup.d.ts",
1513
"unpkg": "dist/docup.min.js",
@@ -22,7 +20,7 @@
2220
},
2321
"scripts": {
2422
"test": "echo skip",
25-
"build": "rm -rf dist && cross-env NODE_ENV=production rollup -c",
23+
"build": "rm -rf dist && cross-env NODE_ENV=production node -r esbuild-register scripts/build.ts",
2624
"dev": "vite docs",
2725
"dev:fre": "cross-env vite docs NODE_ENV=fre",
2826
"build:website": "vite build docs && cp docs/README.md docs/dist/",
@@ -39,25 +37,24 @@
3937
},
4038
"devDependencies": {
4139
"@egoist/rollup-plugin-ts-resolve": "^0.1.0",
42-
"@prefresh/vite": "^2.1.0",
40+
"@prefresh/vite": "^2.2.4",
4341
"@rollup/plugin-alias": "^3.1.2",
4442
"@rollup/plugin-commonjs": "^17.1.0",
4543
"@rollup/plugin-node-resolve": "^11.2.0",
4644
"@types/debug": "^4.1.5",
4745
"@types/marked": "^1.2.2",
4846
"@types/prismjs": "^1.16.3",
49-
"clean-css": "^5.1.0",
5047
"cross-env": "7.0.3",
5148
"debug": "^4.3.1",
52-
"esbuild": "^0.10.0",
49+
"esbuild": "^0.14.2",
50+
"esbuild-register": "^3.2.0",
5351
"fre": "^2.0.4",
5452
"prettier": "^2.2.1",
55-
"rollup": "^2.42.4",
56-
"rollup-plugin-dts": "^3.0.1",
57-
"rollup-plugin-esbuild": "^3.0.2",
53+
"rollup": "^2.61.0",
54+
"rollup-plugin-dts": "^4.0.1",
55+
"tailwindcss": "^2.2.19",
5856
"type-fest": "^0.21.2",
5957
"typescript": "^4.2.3",
60-
"vite": "^2.1.3",
61-
"vite-plugin-windicss": "^0.9.11"
58+
"vite": "^2.7.1"
6259
}
6360
}

0 commit comments

Comments
 (0)