tiny-vue/gulp/buildRenderless.mjs

46 lines
1022 B
JavaScript
Raw Normal View History

import gulp from 'gulp'
import minimist from 'minimist'
import shell from 'shelljs'
const build = gulp.series(tsup, release, publish)
build.description = '构建 @opentiny/renderless'
build.flags = {
'--ver': '设置版本号,比如 --ver 3.8.7',
'--publish -p': '自动发布(提前修改好用户下的.npmrc'
}
export default build
function tsup(cb) {
shell.cd('packages/renderless')
shell.rm('-rf', 'dist')
shell.exec('npx tsup')
cb()
}
function release(cb) {
const argv = minimist(process.argv.slice(2))
if (!argv.ver) {
cb(new Error('必须填写 --ver 参数'))
}
shell.cp('README.md', 'dist/README.md')
const pck = JSON.parse(shell.cat('package.json'))
delete pck.exports
delete pck.private
pck.version = argv.ver
shell.ShellString(JSON.stringify(pck, null, ' ')).to('dist/package.json')
cb()
}
function publish(cb) {
const argv = minimist(process.argv.slice(2))
if (argv.p || argv.publish) {
shell.cd('dist')
shell.exec('npm publish')
}
cb()
}