fix(usage-to-readme): fix multiple .USAGE.md changes
This commit is contained in:
+24
-18
@@ -10,32 +10,38 @@ const { execFile } = require('node:child_process')
|
|||||||
const generateReadme = readFile(join(__dirname, 'README.md.tpl'), 'utf8').then(compile)
|
const generateReadme = readFile(join(__dirname, 'README.md.tpl'), 'utf8').then(compile)
|
||||||
|
|
||||||
async function usageToReadme(...args) {
|
async function usageToReadme(...args) {
|
||||||
|
console.error(process.argv, args)
|
||||||
|
|
||||||
const gitAdd = args[0] === '--git-add'
|
const gitAdd = args[0] === '--git-add'
|
||||||
if (gitAdd) {
|
if (gitAdd) {
|
||||||
args.shift()
|
args.shift()
|
||||||
}
|
}
|
||||||
|
|
||||||
const usagePath = args[0]
|
for (const usagePath of args) {
|
||||||
const dir = dirname(usagePath)
|
console.error(usagePath)
|
||||||
|
const dir = dirname(usagePath)
|
||||||
|
|
||||||
const [usage, pkg] = await Promise.all([
|
const [usage, pkg] = await Promise.all([
|
||||||
readFile(usagePath, 'utf8'),
|
readFile(usagePath, 'utf8'),
|
||||||
readFile(join(dir, 'package.json')).then(JSON.parse),
|
readFile(join(dir, 'package.json')).then(JSON.parse),
|
||||||
])
|
])
|
||||||
|
|
||||||
const readmePath = join(dir, 'README.md')
|
const readmePath = join(dir, 'README.md')
|
||||||
await writeFile(readmePath, (await generateReadme)({ pkg, usage: usage.trim() }))
|
await writeFile(readmePath, (await generateReadme)({ pkg, usage: usage.trim() }))
|
||||||
|
|
||||||
if (gitAdd) {
|
if (gitAdd) {
|
||||||
await new Promise((resolve, reject) => {
|
await new Promise((resolve, reject) => {
|
||||||
execFile('git', ['add', '--', readmePath])
|
execFile('git', ['add', '--', readmePath])
|
||||||
.on('error', reject)
|
.on('error', reject)
|
||||||
.on('exit', code => {
|
.on('exit', code => {
|
||||||
if (code !== 0) {
|
if (code !== 0) {
|
||||||
reject(new Error('command exited with non-zero status code: ' + code))
|
reject(new Error('command exited with non-zero status code: ' + code))
|
||||||
}
|
} else {
|
||||||
})
|
resolve()
|
||||||
})
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user