UNPKG

apeman-doc

Version:
53 lines (44 loc) 1.15 kB
/** * Documentize an apemanfile. * @function apemanfileDocBud */ 'use strict' const _tmpl = require('./_tmpl') const path = require('path') const assert = require('assert') const arrayreduce = require('arrayreduce') const arrayfilter = require('arrayfilter') const pkgData = require('./pkg_data') const protoData = require('./proto_data') const childrenData = require('./children_data') const needsData = require('./needs_data') /** @lends apemanfileDocBud */ function apemanfileDocBud (apemanfile) { if (typeof apemanfile === 'string') { apemanfile = require(apemanfile) } assert.ok(apemanfile, 'apemanfile is required.') let $cwd = apemanfile.$cwd || process.cwd() let { $pkg, $notes, $children, $needs, $proto } = apemanfile let arrayConcat = arrayreduce.arrayConcat() let emptyReject = arrayfilter.emptyReject() return { force: true, mode: '444', mkdirp: true, tmpl: _tmpl('apdoc.hbs'), data: { pkg: pkgData($pkg), proto: protoData($proto), children: childrenData($children), needs: needsData($needs) } } } module.exports = apemanfileDocBud