workflow: copy non-ts files during dev

pull/18/head
Evan You 4 years ago
parent a5e3d5d2f5
commit 0d462b4256

@ -27,8 +27,9 @@
},
"homepage": "https://github.com/vuejs/vitepress/tree/master/#readme",
"scripts": {
"dev": "run-p dev-client dev-node",
"dev": "run-p dev-client dev-client-copy dev-node",
"dev-client": "tsc -w -p src/client",
"dev-client-copy": "node scripts/copy",
"dev-node": "tsc -w -p src/node",
"build": "rm -rf dist && tsc -p src/client && tsc -p src/node",
"changelog": "conventional-changelog -p angular -i CHANGELOG.md -s",
@ -77,6 +78,7 @@
"@types/lru-cache": "^5.1.0",
"@types/markdown-it": "^10.0.1",
"@types/node": "^13.13.4",
"chokidar": "^3.4.0",
"conventional-changelog-cli": "^2.0.31",
"lint-staged": "^10.2.1",
"npm-run-all": "^4.1.5",

@ -0,0 +1,30 @@
// copy and watch non-ts files in src/client
const fs = require('fs-extra')
const path = require('path')
const globby = require('globby')
const chokidar = require('chokidar')
const pattern = 'src/client/**/!(*.ts|tsconfig.json)'
function toDest(file) {
return file.replace(/^src\//, 'dist/')
}
function copy(file) {
fs.copy(file, toDest(file))
}
// copy on start
;(async () => {
for (const file of await globby(pattern)) {
copy(file)
}
})()
chokidar
.watch(pattern)
.on('change', copy)
.on('add', copy)
.on('unlink', (file) => {
fs.remove(toDest(file))
})

@ -679,7 +679,7 @@ chalk@^4.0.0:
ansi-styles "^4.1.0"
supports-color "^7.1.0"
chokidar@^3.3.1:
chokidar@^3.3.1, chokidar@^3.4.0:
version "3.4.0"
resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.4.0.tgz#b30611423ce376357c765b9b8f904b9fba3c0be8"
integrity sha512-aXAaho2VJtisB/1fg1+3nlLJqGOuewTzQpd/Tz0yTg2R0e4IGtshYvtjowyEumcBv2z+y4+kc75Mz7j5xJskcQ==

Loading…
Cancel
Save