1 | #!/usr/bin/env node
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 | 'use strict'
|
8 |
|
9 | process.chdir(`${__dirname}/..`)
|
10 |
|
11 | const apeTasking = require('ape-tasking')
|
12 | const co = require('co')
|
13 | const coz = require('coz')
|
14 | const { execSync } = require('child_process')
|
15 | const writeout = require('writeout')
|
16 |
|
17 | apeTasking.runTasks('build', [
|
18 |
|
19 | () => co(function * () {
|
20 | let src = 'lib/*.js'
|
21 | let dest = 'jsdoc.json'
|
22 | let data = execSync(`
|
23 | jsdoc ${src} -t templates/haruki -d console -q format=JSON
|
24 | `)
|
25 | data = JSON.stringify(JSON.parse(data), null, 2)
|
26 | let result = yield writeout(dest, data, {
|
27 | mkdirp: true,
|
28 | skipIfIdentical: true
|
29 | })
|
30 | if (!result.skipped) {
|
31 | console.log(`File generated: ${result.filename}`)
|
32 | }
|
33 | }),
|
34 | () => coz.render('doc/**/.*.bud')
|
35 | ], true)
|