1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 |
|
9 | "use strict";
|
10 |
|
11 | const argx = require('argx'),
|
12 | fs = require('fs'),
|
13 | assert = require('assert'),
|
14 | stringcase = require('stringcase'),
|
15 | _tmpl = require('./_tmpl');
|
16 |
|
17 |
|
18 | function setup(params) {
|
19 | let args = argx(arguments);
|
20 | params = args.shift('object') || {};
|
21 |
|
22 | let name = params.name,
|
23 | pkg = params.pkg;
|
24 |
|
25 | assert(name, 'params.name is required.');
|
26 | assert(pkg, 'params.pkg is required.');
|
27 |
|
28 |
|
29 | return [].concat(name).map((name, i) => {
|
30 | let tmpl = _tmpl(name);
|
31 | return {
|
32 | force: false,
|
33 | mode: '644',
|
34 | path: `${_numPrefix(i)} - ${stringcase.spinalcase(name)}.md`,
|
35 | tmpl: tmpl,
|
36 | data: {
|
37 | pkg: pkg,
|
38 | name:name,
|
39 | params: params
|
40 | }
|
41 | }
|
42 | });
|
43 | }
|
44 |
|
45 | function _numPrefix(value) {
|
46 | let prefix = String(value);
|
47 | while (prefix.length < 2) {
|
48 | prefix = '0' + prefix;
|
49 | }
|
50 | return prefix;
|
51 | }
|
52 | module.exports = setup;
|