@pgsz/pg-cli
Version:
pg-cli脚手架的自我学习
41 lines (32 loc) • 903 B
JavaScript
const transforms = require('./utils/configTransforms')
class ConfigTransform {
constructor(options) {
this.fileDescriptor = options.file
}
transform(value, context) {
let file
if (!file) {
// { type: 'js', filename: 'babel.config.js' }
file = this.getDefaultFile()
}
const { type, filename } = file
const transform = transforms[type]
let source
const content = transform.write({
source,
filename,
context,
value,
})
return {
filename,
content,
}
}
getDefaultFile() {
const [type] = Object.keys(this.fileDescriptor)
const [filename] = this.fileDescriptor[type]
return { type, filename }
}
}
module.exports = ConfigTransform