1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 |
|
9 |
|
10 | 'use strict'
|
11 |
|
12 | const assert = require('assert')
|
13 | const objnest = require('objnest')
|
14 | const evaljson = require('evaljson')
|
15 | const _tmpl = require('./_tmpl')
|
16 |
|
17 | function binBud (config) {
|
18 | let signature = config.signature
|
19 | assert.ok(signature, 'config.signature is required.')
|
20 | return {
|
21 | force: true,
|
22 | mode: '555',
|
23 | mkdirp: true,
|
24 | tmpl: _tmpl('hbs/bin.hbs'),
|
25 | path: config.path || signature.name,
|
26 | data: {
|
27 | done: config.done,
|
28 | lib: config.lib || '../lib',
|
29 | get signature () {
|
30 | return evaljson(objnest.expand(signature))
|
31 | }
|
32 | }
|
33 | }
|
34 | }
|
35 |
|
36 | module.exports = binBud
|