simple-scaffold 1.0.0-alpha.6 → 1.0.0-alpha.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +21 -10
- package/cmd.js +2 -80
- package/cmd.js.map +1 -1
- package/cmd_util.d.ts +1 -0
- package/cmd_util.js +90 -0
- package/cmd_util.js.map +1 -0
- package/package.json +3 -2
- package/utils.js +1 -1
- package/utils.js.map +1 -1
package/README.md
CHANGED
|
@@ -22,6 +22,8 @@ npx simple-scaffold <...args>
|
|
|
22
22
|
```plaintext
|
|
23
23
|
Usage: simple-scaffold [options]
|
|
24
24
|
|
|
25
|
+
Create structured files based on templates.
|
|
26
|
+
|
|
25
27
|
Options:
|
|
26
28
|
|
|
27
29
|
--help|-h Display help information
|
|
@@ -35,7 +37,8 @@ Options:
|
|
|
35
37
|
|
|
36
38
|
--templates|-t Template files to use as input. You may provide multiple
|
|
37
39
|
files, each of which can be a relative or absolute path, or a glob
|
|
38
|
-
pattern for multiple file matching easily.
|
|
40
|
+
pattern for multiple file matching easily. (default:
|
|
41
|
+
)
|
|
39
42
|
|
|
40
43
|
--overwrite|-w Enable to override output files, even if they already exist.
|
|
41
44
|
(default: false)
|
|
@@ -43,25 +46,30 @@ Options:
|
|
|
43
46
|
--data|-d Add custom data to the templates. By default, only your app
|
|
44
47
|
name is included.
|
|
45
48
|
|
|
46
|
-
--create-sub-folder|-s Create subfolder with the input name (default:
|
|
49
|
+
--create-sub-folder|-s Create subfolder with the input name (default:
|
|
50
|
+
false)
|
|
47
51
|
|
|
48
|
-
--quiet|-q Suppress output logs (Same as --verbose 0)
|
|
52
|
+
--quiet|-q Suppress output logs (Same as --verbose 0)
|
|
53
|
+
(default: false)
|
|
49
54
|
|
|
50
|
-
--verbose|-v Determine amount of logs to display. The values are: 0
|
|
51
|
-
| 1 (debug) | 2 (info) | 3 (warn) | 4 (error). The
|
|
52
|
-
will display messages of the same level or higher.
|
|
55
|
+
--verbose|-v Determine amount of logs to display. The values are: 0
|
|
56
|
+
(none) | 1 (debug) | 2 (info) | 3 (warn) | 4 (error). The
|
|
57
|
+
provided level will display messages of the same level or higher.
|
|
53
58
|
(default: 2)
|
|
54
59
|
|
|
55
60
|
--dry-run|-dr Don't emit files. This is good for testing your scaffolds and
|
|
56
61
|
making sure they don't fail, without having to write actual file
|
|
57
|
-
contents or create directories. (default:
|
|
62
|
+
contents or create directories. (default:
|
|
63
|
+
false)
|
|
58
64
|
```
|
|
59
65
|
|
|
60
66
|
You can also add this as a script in your `package.json`:
|
|
61
67
|
|
|
62
68
|
```json
|
|
63
69
|
{
|
|
70
|
+
...
|
|
64
71
|
"scripts": {
|
|
72
|
+
...
|
|
65
73
|
"scaffold": "yarn simple-scaffold --templates scaffolds/component/**/* --output src/components --data '{\"myProp\": \"propName\", \"myVal\": \"123\"}'"
|
|
66
74
|
}
|
|
67
75
|
}
|
|
@@ -93,7 +101,7 @@ function for each input file to output into a dynamic path:
|
|
|
93
101
|
```javascript
|
|
94
102
|
config.output = (fullPath, baseDir, baseName) => {
|
|
95
103
|
console.log({ fullPath, baseDir, baseName })
|
|
96
|
-
return
|
|
104
|
+
return path.resolve(baseDir, baseName)
|
|
97
105
|
}
|
|
98
106
|
```
|
|
99
107
|
|
|
@@ -121,6 +129,8 @@ Your `data` will be pre-populated with the following:
|
|
|
121
129
|
> Any `data` you add in the config will be available for use with their names wrapped in
|
|
122
130
|
> `{{` and `}}`.
|
|
123
131
|
|
|
132
|
+
#### Helpers
|
|
133
|
+
|
|
124
134
|
Simple-Scaffold provides some built-in text transformation filters usable by handleBars.
|
|
125
135
|
|
|
126
136
|
For example, you may use `{{ snakeCase name }}` inside a template file or filename, and it will
|
|
@@ -147,7 +157,8 @@ Here are the built-in helpers available for use:
|
|
|
147
157
|
simple-scaffold MyComponent \
|
|
148
158
|
-t project/scaffold/**/* \
|
|
149
159
|
-o src/components \
|
|
150
|
-
-d '{"className":"myClassName"}'
|
|
160
|
+
-d '{"className": "myClassName"}'
|
|
161
|
+
MyComponent
|
|
151
162
|
```
|
|
152
163
|
|
|
153
164
|
### Example Scaffold Input
|
|
@@ -188,7 +199,7 @@ module.exports = class {{Name}} extends React.Component {
|
|
|
188
199
|
- ...
|
|
189
200
|
```
|
|
190
201
|
|
|
191
|
-
With `
|
|
202
|
+
With `createSubFolder = false`:
|
|
192
203
|
|
|
193
204
|
```plaintext
|
|
194
205
|
- project
|
package/cmd.js
CHANGED
|
@@ -1,83 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
const _1 = require(".");
|
|
9
|
-
massarg_1.default()
|
|
10
|
-
.main(scaffold_1.default)
|
|
11
|
-
.option({
|
|
12
|
-
name: "name",
|
|
13
|
-
aliases: ["n"],
|
|
14
|
-
isDefault: true,
|
|
15
|
-
description: "Name to be passed to the generated files. {{name}} and {{Name}} inside contents and file names will be replaced accordingly.",
|
|
16
|
-
})
|
|
17
|
-
.option({
|
|
18
|
-
name: "output",
|
|
19
|
-
aliases: ["o"],
|
|
20
|
-
description: "Path to output to. If --create-sub-folder is enabled, the subfolder will be created inside this path.",
|
|
21
|
-
})
|
|
22
|
-
.option({
|
|
23
|
-
name: "templates",
|
|
24
|
-
aliases: ["t"],
|
|
25
|
-
description: "Template files to use as input. You may provide multiple files, each of which can be a relative or absolute path, " +
|
|
26
|
-
"or a glob pattern for multiple file matching easily.",
|
|
27
|
-
defaultValue: [],
|
|
28
|
-
array: true,
|
|
29
|
-
})
|
|
30
|
-
.option({
|
|
31
|
-
aliases: ["w"],
|
|
32
|
-
name: "overwrite",
|
|
33
|
-
description: "Enable to override output files, even if they already exist.",
|
|
34
|
-
defaultValue: false,
|
|
35
|
-
boolean: true,
|
|
36
|
-
})
|
|
37
|
-
.option({
|
|
38
|
-
aliases: ["d"],
|
|
39
|
-
name: "data",
|
|
40
|
-
description: "Add custom data to the templates. By default, only your app name is included.",
|
|
41
|
-
parse: (v) => JSON.parse(v),
|
|
42
|
-
})
|
|
43
|
-
.option({
|
|
44
|
-
aliases: ["s"],
|
|
45
|
-
name: "create-sub-folder",
|
|
46
|
-
description: "Create subfolder with the input name",
|
|
47
|
-
defaultValue: false,
|
|
48
|
-
boolean: true,
|
|
49
|
-
})
|
|
50
|
-
.option({
|
|
51
|
-
aliases: ["q"],
|
|
52
|
-
name: "quiet",
|
|
53
|
-
description: "Suppress output logs (Same as --verbose 0)",
|
|
54
|
-
defaultValue: false,
|
|
55
|
-
boolean: true,
|
|
56
|
-
})
|
|
57
|
-
.option({
|
|
58
|
-
aliases: ["v"],
|
|
59
|
-
name: "verbose",
|
|
60
|
-
description: "Determine amount of logs to display. The values are: 0 (none) | 1 (debug) | 2 (info) | 3 (warn) | 4 (error). The provided level will display messages of the same level or higher.",
|
|
61
|
-
defaultValue: _1.LogLevel.Info,
|
|
62
|
-
parse: Number,
|
|
63
|
-
})
|
|
64
|
-
.option({
|
|
65
|
-
aliases: ["dr"],
|
|
66
|
-
name: "dry-run",
|
|
67
|
-
description: "Don't emit files. This is good for testing your scaffolds and making sure they " +
|
|
68
|
-
"don't fail, without having to write actual file contents or create directories.",
|
|
69
|
-
defaultValue: false,
|
|
70
|
-
boolean: true,
|
|
71
|
-
})
|
|
72
|
-
// .example({
|
|
73
|
-
// input: `yarn cmd -t examples/test-input/Component -o examples/test-output -d '{"property":"myProp","value":"10"}'`,
|
|
74
|
-
// description: "Usage",
|
|
75
|
-
// output: "",
|
|
76
|
-
// })
|
|
77
|
-
.help({
|
|
78
|
-
binName: "simple-scaffold",
|
|
79
|
-
useGlobalColumns: true,
|
|
80
|
-
usageExample: "[options]",
|
|
81
|
-
})
|
|
82
|
-
.parse();
|
|
3
|
+
const cmd_util_1 = require("./cmd_util");
|
|
4
|
+
cmd_util_1.parseCliArgs();
|
|
83
5
|
//# sourceMappingURL=cmd.js.map
|
package/cmd.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cmd.js","sourceRoot":"","sources":["../src/cmd.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cmd.js","sourceRoot":"","sources":["../src/cmd.ts"],"names":[],"mappings":";;AAAA,yCAAyC;AACzC,uBAAY,EAAE,CAAA"}
|
package/cmd_util.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function parseCliArgs(args?: string[]): void;
|
package/cmd_util.js
ADDED
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.parseCliArgs = void 0;
|
|
7
|
+
const massarg_1 = __importDefault(require("massarg"));
|
|
8
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
9
|
+
const types_1 = require("./types");
|
|
10
|
+
const scaffold_1 = require("./scaffold");
|
|
11
|
+
function parseCliArgs(args = process.argv.slice(2)) {
|
|
12
|
+
return (massarg_1.default()
|
|
13
|
+
.main(scaffold_1.Scaffold)
|
|
14
|
+
.option({
|
|
15
|
+
name: "name",
|
|
16
|
+
aliases: ["n"],
|
|
17
|
+
isDefault: true,
|
|
18
|
+
description: "Name to be passed to the generated files. {{name}} and {{Name}} inside contents and file names will be replaced accordingly.",
|
|
19
|
+
})
|
|
20
|
+
.option({
|
|
21
|
+
name: "output",
|
|
22
|
+
aliases: ["o"],
|
|
23
|
+
description: "Path to output to. If --create-sub-folder is enabled, the subfolder will be created inside this path.",
|
|
24
|
+
})
|
|
25
|
+
.option({
|
|
26
|
+
name: "templates",
|
|
27
|
+
aliases: ["t"],
|
|
28
|
+
description: "Template files to use as input. You may provide multiple files, each of which can be a relative or absolute path, " +
|
|
29
|
+
"or a glob pattern for multiple file matching easily.",
|
|
30
|
+
defaultValue: [],
|
|
31
|
+
array: true,
|
|
32
|
+
})
|
|
33
|
+
.option({
|
|
34
|
+
aliases: ["w"],
|
|
35
|
+
name: "overwrite",
|
|
36
|
+
description: "Enable to override output files, even if they already exist.",
|
|
37
|
+
defaultValue: false,
|
|
38
|
+
boolean: true,
|
|
39
|
+
})
|
|
40
|
+
.option({
|
|
41
|
+
aliases: ["d"],
|
|
42
|
+
name: "data",
|
|
43
|
+
description: "Add custom data to the templates. By default, only your app name is included.",
|
|
44
|
+
parse: (v) => JSON.parse(v),
|
|
45
|
+
})
|
|
46
|
+
.option({
|
|
47
|
+
aliases: ["s"],
|
|
48
|
+
name: "create-sub-folder",
|
|
49
|
+
description: "Create subfolder with the input name",
|
|
50
|
+
defaultValue: false,
|
|
51
|
+
boolean: true,
|
|
52
|
+
})
|
|
53
|
+
.option({
|
|
54
|
+
aliases: ["q"],
|
|
55
|
+
name: "quiet",
|
|
56
|
+
description: "Suppress output logs (Same as --verbose 0)",
|
|
57
|
+
defaultValue: false,
|
|
58
|
+
boolean: true,
|
|
59
|
+
})
|
|
60
|
+
.option({
|
|
61
|
+
aliases: ["v"],
|
|
62
|
+
name: "verbose",
|
|
63
|
+
description: `Determine amount of logs to display. The values are: ${chalk_1.default.bold `0 (none) | 1 (debug) | 2 (info) | 3 (warn) | 4 (error)`}. The provided level will display messages of the same level or higher.`,
|
|
64
|
+
defaultValue: types_1.LogLevel.Info,
|
|
65
|
+
parse: Number,
|
|
66
|
+
})
|
|
67
|
+
.option({
|
|
68
|
+
aliases: ["dr"],
|
|
69
|
+
name: "dry-run",
|
|
70
|
+
description: "Don't emit files. This is good for testing your scaffolds and making sure they " +
|
|
71
|
+
"don't fail, without having to write actual file contents or create directories.",
|
|
72
|
+
defaultValue: false,
|
|
73
|
+
boolean: true,
|
|
74
|
+
})
|
|
75
|
+
// .example({
|
|
76
|
+
// input: `yarn cmd -t examples/test-input/Component -o examples/test-output -d '{"property":"myProp","value":"10"}'`,
|
|
77
|
+
// description: "Usage",
|
|
78
|
+
// output: "",
|
|
79
|
+
// })
|
|
80
|
+
.help({
|
|
81
|
+
binName: "simple-scaffold",
|
|
82
|
+
useGlobalColumns: true,
|
|
83
|
+
usageExample: "[options]",
|
|
84
|
+
header: "Create structured files based on templates.",
|
|
85
|
+
footer: `Copyright © Chen Asraf 2021\nNPM: ${chalk_1.default.underline `https://npmjs.com/package/massarg`}\nGitHub: ${chalk_1.default.underline `https://github.com/chenasraf/massarg`}`,
|
|
86
|
+
})
|
|
87
|
+
.parse(args));
|
|
88
|
+
}
|
|
89
|
+
exports.parseCliArgs = parseCliArgs;
|
|
90
|
+
//# sourceMappingURL=cmd_util.js.map
|
package/cmd_util.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cmd_util.js","sourceRoot":"","sources":["../src/cmd_util.ts"],"names":[],"mappings":";;;;;;AAAA,sDAA6B;AAC7B,kDAAyB;AACzB,mCAAqD;AACrD,yCAAqC;AAErC,SAAgB,YAAY,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACvD,OAAO,CACL,iBAAO,EAA2D;SAC/D,IAAI,CAAC,mBAAQ,CAAC;SACd,MAAM,CAAC;QACN,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,CAAC,GAAG,CAAC;QACd,SAAS,EAAE,IAAI;QACf,WAAW,EACT,8HAA8H;KACjI,CAAC;SACD,MAAM,CAAC;QACN,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,CAAC,GAAG,CAAC;QACd,WAAW,EACT,uGAAuG;KAC1G,CAAC;SACD,MAAM,CAAC;QACN,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,CAAC,GAAG,CAAC;QACd,WAAW,EACT,oHAAoH;YACpH,sDAAsD;QACxD,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,IAAI;KACZ,CAAC;SACD,MAAM,CAAC;QACN,OAAO,EAAE,CAAC,GAAG,CAAC;QACd,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,8DAA8D;QAC3E,YAAY,EAAE,KAAK;QACnB,OAAO,EAAE,IAAI;KACd,CAAC;SACD,MAAM,CAAC;QACN,OAAO,EAAE,CAAC,GAAG,CAAC;QACd,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,+EAA+E;QAC5F,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;KAC5B,CAAC;SACD,MAAM,CAAC;QACN,OAAO,EAAE,CAAC,GAAG,CAAC;QACd,IAAI,EAAE,mBAAmB;QACzB,WAAW,EAAE,sCAAsC;QACnD,YAAY,EAAE,KAAK;QACnB,OAAO,EAAE,IAAI;KACd,CAAC;SACD,MAAM,CAAC;QACN,OAAO,EAAE,CAAC,GAAG,CAAC;QACd,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,4CAA4C;QACzD,YAAY,EAAE,KAAK;QACnB,OAAO,EAAE,IAAI;KACd,CAAC;SACD,MAAM,CAAC;QACN,OAAO,EAAE,CAAC,GAAG,CAAC;QACd,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,wDAAwD,eAAK,CAAC,IAAI,CAAA,wDAAwD,yEAAyE;QAChN,YAAY,EAAE,gBAAQ,CAAC,IAAI;QAC3B,KAAK,EAAE,MAAM;KACd,CAAC;SACD,MAAM,CAAC;QACN,OAAO,EAAE,CAAC,IAAI,CAAC;QACf,IAAI,EAAE,SAAS;QACf,WAAW,EACT,iFAAiF;YACjF,iFAAiF;QACnF,YAAY,EAAE,KAAK;QACnB,OAAO,EAAE,IAAI;KACd,CAAC;QACF,aAAa;QACb,wHAAwH;QACxH,0BAA0B;QAC1B,gBAAgB;QAChB,KAAK;SACJ,IAAI,CAAC;QACJ,OAAO,EAAE,iBAAiB;QAC1B,gBAAgB,EAAE,IAAI;QACtB,YAAY,EAAE,WAAW;QACzB,MAAM,EAAE,6CAA6C;QACrD,MAAM,EAAE,qCAAqC,eAAK,CAAC,SAAS,CAAA,mCAAmC,aAAa,eAAK,CAAC,SAAS,CAAA,sCAAsC,EAAE;KACpK,CAAC;SACD,KAAK,CAAC,IAAI,CAAC,CACf,CAAA;AACH,CAAC;AAnFD,oCAmFC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "simple-scaffold",
|
|
3
|
-
"version": "1.0.0-alpha.
|
|
3
|
+
"version": "1.0.0-alpha.8",
|
|
4
4
|
"description": "Create files based on templates",
|
|
5
5
|
"repository": "https://github.com/chenasraf/simple-scaffold.git",
|
|
6
6
|
"author": "Chen Asraf <inbox@casraf.com>",
|
|
@@ -20,10 +20,11 @@
|
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
22
|
"args": "^5.0.1",
|
|
23
|
+
"chalk": "^4.1.2",
|
|
23
24
|
"glob": "^7.1.3",
|
|
24
25
|
"handlebars": "^4.7.7",
|
|
25
26
|
"lodash": "^4.17.21",
|
|
26
|
-
"massarg": "^0.
|
|
27
|
+
"massarg": "^1.0.3",
|
|
27
28
|
"util.promisify": "^1.1.1"
|
|
28
29
|
},
|
|
29
30
|
"devDependencies": {
|
package/utils.js
CHANGED
|
@@ -33,7 +33,7 @@ function handleErr(err) {
|
|
|
33
33
|
exports.handleErr = handleErr;
|
|
34
34
|
function log(options, level, ...obj) {
|
|
35
35
|
var _a;
|
|
36
|
-
if (options.quiet || ((_a = options.verbose) !== null && _a !== void 0 ? _a : types_1.LogLevel.Info) > level) {
|
|
36
|
+
if (options.quiet || options.verbose === types_1.LogLevel.None || ((_a = options.verbose) !== null && _a !== void 0 ? _a : types_1.LogLevel.Info) > level) {
|
|
37
37
|
return;
|
|
38
38
|
}
|
|
39
39
|
const levelColor = {
|
package/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAuB;AACvB,yCAAgC;AAChC,mCAAgF;AAChF,iEAAwC;AACxC,iEAAwC;AACxC,iEAAwC;AACxC,iEAAwC;AACxC,4DAAmC;AACnC,2BAA2C;AAC3C,kDAAyB;AACzB,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,aAAU,CAAA;AAE1C,MAAM,OAAO,GAAG;IACd,SAAS,EAAT,mBAAS;IACT,SAAS,EAAT,mBAAS;IACT,SAAS,EAAT,mBAAS;IACT,SAAS,EAAT,mBAAS;IACT,UAAU,EAAE,mBAAS;IACrB,UAAU;CACX,CAAA;AAED,KAAK,MAAM,UAAU,IAAI,OAAO,EAAE;IAChC,oBAAU,CAAC,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,UAAkC,CAAC,CAAC,CAAA;CACnF;AAED,SAAgB,SAAS,CAAC,GAAiC;IACzD,IAAI,GAAG;QAAE,MAAM,GAAG,CAAA;AACpB,CAAC;AAFD,8BAEC;AAED,SAAgB,GAAG,CAAC,OAAuB,EAAE,KAAe,EAAE,GAAG,GAAU;;IACzE,IAAI,OAAO,CAAC,KAAK,IAAI,CAAC,MAAA,OAAO,CAAC,OAAO,mCAAI,gBAAQ,CAAC,IAAI,CAAC,GAAG,KAAK,EAAE;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|