create-pkgbld 1.1.4 → 1.1.5
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/LICENSE +1 -1
- package/dist/index.cjs +24 -34
- package/dist/index.mjs +1 -1
- package/package.json +17 -25
- package/dist/index.js +0 -182
package/LICENSE
CHANGED
package/dist/index.cjs
CHANGED
|
@@ -8,26 +8,16 @@ var gitConfig = require('parse-git-config');
|
|
|
8
8
|
var minimist = require('minimist');
|
|
9
9
|
var degit = require('degit');
|
|
10
10
|
|
|
11
|
-
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
12
|
-
|
|
13
|
-
var prompts__default = /*#__PURE__*/_interopDefaultLegacy(prompts);
|
|
14
|
-
var path__default = /*#__PURE__*/_interopDefaultLegacy(path);
|
|
15
|
-
var fs__default = /*#__PURE__*/_interopDefaultLegacy(fs);
|
|
16
|
-
var userName__default = /*#__PURE__*/_interopDefaultLegacy(userName);
|
|
17
|
-
var gitConfig__default = /*#__PURE__*/_interopDefaultLegacy(gitConfig);
|
|
18
|
-
var minimist__default = /*#__PURE__*/_interopDefaultLegacy(minimist);
|
|
19
|
-
var degit__default = /*#__PURE__*/_interopDefaultLegacy(degit);
|
|
20
|
-
|
|
21
11
|
async function execute() {
|
|
22
12
|
var _a, _b;
|
|
23
13
|
var _c;
|
|
24
|
-
const myPkg = await readPackage(
|
|
14
|
+
const myPkg = await readPackage(path.resolve(__dirname, '..'));
|
|
25
15
|
console.log('create-pkgbld ' + myPkg.pkg.version);
|
|
26
|
-
const parsedArgs =
|
|
16
|
+
const parsedArgs = minimist(process.argv.slice(2));
|
|
27
17
|
const packageName = parsedArgs._[0];
|
|
28
18
|
const dir = packageName !== null && packageName !== void 0 ? packageName : '.';
|
|
29
19
|
let cancelled = false;
|
|
30
|
-
const chooseAction = await
|
|
20
|
+
const chooseAction = await prompts({
|
|
31
21
|
type: 'select',
|
|
32
22
|
name: 'action',
|
|
33
23
|
message: 'What do you need to do?',
|
|
@@ -45,10 +35,10 @@ async function execute() {
|
|
|
45
35
|
readme: ''
|
|
46
36
|
};
|
|
47
37
|
if (chooseAction.action === 'subpackage') {
|
|
48
|
-
rootPkg = await readPackage(
|
|
38
|
+
rootPkg = await readPackage(path.resolve(dir, packageName ? '..' : '.'));
|
|
49
39
|
}
|
|
50
40
|
const template = chooseAction.action === 'root' ? 'kshutkin/monorepo-root' : 'kshutkin/monorepo-package';
|
|
51
|
-
const emitter =
|
|
41
|
+
const emitter = degit(template, {
|
|
52
42
|
cache: false,
|
|
53
43
|
force: true,
|
|
54
44
|
verbose: true,
|
|
@@ -57,9 +47,9 @@ async function execute() {
|
|
|
57
47
|
console.log(info.message);
|
|
58
48
|
});
|
|
59
49
|
await emitter.clone(dir);
|
|
60
|
-
const basePackageName = (packageName &&
|
|
50
|
+
const basePackageName = (packageName && path.basename(packageName)) || path.basename(process.cwd());
|
|
61
51
|
if (chooseAction.action === 'root') {
|
|
62
|
-
const response = await
|
|
52
|
+
const response = await prompts([{
|
|
63
53
|
type: 'text',
|
|
64
54
|
name: 'name',
|
|
65
55
|
message: 'package name',
|
|
@@ -77,16 +67,16 @@ async function execute() {
|
|
|
77
67
|
if (cancelled) {
|
|
78
68
|
process.exit(-1);
|
|
79
69
|
}
|
|
80
|
-
const fileName =
|
|
81
|
-
let actionsTemplate = (await
|
|
70
|
+
const fileName = path.join(dir, '.github/workflows/main.yml');
|
|
71
|
+
let actionsTemplate = (await fs.readFile(fileName)).toString();
|
|
82
72
|
actionsTemplate = actionsTemplate.replace('scope: # @echo scope', response.scope ? `scope: '@${response.scope}'` : '');
|
|
83
|
-
await
|
|
84
|
-
const readmeFileName =
|
|
73
|
+
await fs.writeFile(fileName, actionsTemplate);
|
|
74
|
+
const readmeFileName = path.join(dir, 'README.md');
|
|
85
75
|
const readme = `# ${response.name}\n${response.description}\n\n## Packages`;
|
|
86
|
-
await
|
|
76
|
+
await fs.writeFile(readmeFileName, readme);
|
|
87
77
|
}
|
|
88
78
|
if (chooseAction.action === 'subpackage') {
|
|
89
|
-
const response = await
|
|
79
|
+
const response = await prompts([{
|
|
90
80
|
type: 'text',
|
|
91
81
|
name: 'name',
|
|
92
82
|
message: 'package name',
|
|
@@ -110,7 +100,7 @@ async function execute() {
|
|
|
110
100
|
type: 'text',
|
|
111
101
|
name: 'author',
|
|
112
102
|
message: 'author',
|
|
113
|
-
initial: (_a =
|
|
103
|
+
initial: (_a = userName()) !== null && _a !== void 0 ? _a : ''
|
|
114
104
|
}], { onCancel });
|
|
115
105
|
if (cancelled) {
|
|
116
106
|
process.exit(-1);
|
|
@@ -121,7 +111,7 @@ async function execute() {
|
|
|
121
111
|
bugs: undefined
|
|
122
112
|
};
|
|
123
113
|
try {
|
|
124
|
-
const gitCfg = await
|
|
114
|
+
const gitCfg = await gitConfig();
|
|
125
115
|
if (gitCfg) {
|
|
126
116
|
const url = gitCfg['remote "origin"'].url;
|
|
127
117
|
gitInfo.homepage = url.replace('.git', `/blob/main/${basePackageName}/README.md`);
|
|
@@ -144,7 +134,7 @@ async function execute() {
|
|
|
144
134
|
(_b = (_c = rootPkg.pkg).workspaces) !== null && _b !== void 0 ? _b : (_c.workspaces = []);
|
|
145
135
|
rootPkg.pkg.workspaces.push(basePackageName);
|
|
146
136
|
rootPkg.readme += `\n- [${basePackageName}](./${basePackageName}/README.md)`;
|
|
147
|
-
await writePackage(
|
|
137
|
+
await writePackage(path.resolve(dir, '..'), rootPkg);
|
|
148
138
|
}
|
|
149
139
|
function onCancel() {
|
|
150
140
|
cancelled = true;
|
|
@@ -152,11 +142,11 @@ async function execute() {
|
|
|
152
142
|
}
|
|
153
143
|
execute();
|
|
154
144
|
async function readPackage(dir) {
|
|
155
|
-
const packageFileName =
|
|
156
|
-
const readmeFileName =
|
|
145
|
+
const packageFileName = path.resolve(dir, 'package.json');
|
|
146
|
+
const readmeFileName = path.resolve(dir, 'README.md');
|
|
157
147
|
try {
|
|
158
|
-
const pkgFile = await
|
|
159
|
-
const readmeFile = await
|
|
148
|
+
const pkgFile = await fs.readFile(packageFileName);
|
|
149
|
+
const readmeFile = await fs.readFile(readmeFileName);
|
|
160
150
|
return {
|
|
161
151
|
pkg: JSON.parse(pkgFile.toString()),
|
|
162
152
|
readme: readmeFile.toString()
|
|
@@ -168,11 +158,11 @@ async function readPackage(dir) {
|
|
|
168
158
|
}
|
|
169
159
|
}
|
|
170
160
|
async function writePackage(dir, pkg) {
|
|
171
|
-
const packageFileName =
|
|
172
|
-
const readmeFileName =
|
|
161
|
+
const packageFileName = path.resolve(dir, 'package.json');
|
|
162
|
+
const readmeFileName = path.resolve(dir, 'README.md');
|
|
173
163
|
try {
|
|
174
|
-
await
|
|
175
|
-
await
|
|
164
|
+
await fs.writeFile(packageFileName, JSON.stringify(pkg.pkg, null, 2));
|
|
165
|
+
await fs.writeFile(readmeFileName, pkg.readme);
|
|
176
166
|
}
|
|
177
167
|
catch (e) {
|
|
178
168
|
console.error(e);
|
package/dist/index.mjs
CHANGED
|
@@ -33,7 +33,7 @@ async function execute() {
|
|
|
33
33
|
readme: ''
|
|
34
34
|
};
|
|
35
35
|
if (chooseAction.action === 'subpackage') {
|
|
36
|
-
rootPkg = await readPackage(path.resolve(dir, '..'));
|
|
36
|
+
rootPkg = await readPackage(path.resolve(dir, packageName ? '..' : '.'));
|
|
37
37
|
}
|
|
38
38
|
const template = chooseAction.action === 'root' ? 'kshutkin/monorepo-root' : 'kshutkin/monorepo-package';
|
|
39
39
|
const emitter = degit(template, {
|
package/package.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "1.1.
|
|
2
|
+
"version": "1.1.5",
|
|
3
3
|
"license": "MIT",
|
|
4
4
|
"name": "create-pkgbld",
|
|
5
5
|
"author": {
|
|
@@ -11,7 +11,8 @@
|
|
|
11
11
|
".": {
|
|
12
12
|
"require": "./dist/index.cjs",
|
|
13
13
|
"default": "./dist/index.mjs"
|
|
14
|
-
}
|
|
14
|
+
},
|
|
15
|
+
"./package.json": "./package.json"
|
|
15
16
|
},
|
|
16
17
|
"main": "./dist/index.cjs",
|
|
17
18
|
"module": "./dist/index.mjs",
|
|
@@ -19,41 +20,28 @@
|
|
|
19
20
|
"dist"
|
|
20
21
|
],
|
|
21
22
|
"engines": {
|
|
22
|
-
"node": ">=
|
|
23
|
+
"node": ">=16"
|
|
23
24
|
},
|
|
24
25
|
"repository": {
|
|
25
26
|
"type": "git",
|
|
26
|
-
"url": "git+https://github.com/kshutkin/
|
|
27
|
+
"url": "git+https://github.com/kshutkin/package-build.git"
|
|
27
28
|
},
|
|
28
29
|
"bugs": {
|
|
29
|
-
"url": "https://github.com/kshutkin/
|
|
30
|
+
"url": "https://github.com/kshutkin/package-build/issues"
|
|
30
31
|
},
|
|
31
|
-
"homepage": "https://github.com/kshutkin/
|
|
32
|
+
"homepage": "https://github.com/kshutkin/package-build/README.md",
|
|
32
33
|
"keywords": [
|
|
33
|
-
"pkgbld"
|
|
34
|
+
"pkgbld",
|
|
35
|
+
"create",
|
|
36
|
+
"init"
|
|
34
37
|
],
|
|
35
|
-
"scripts": {
|
|
36
|
-
"build": "pkgbld --formats=cjs,es && node binify.js",
|
|
37
|
-
"lint": "eslint ./src",
|
|
38
|
-
"semantic-release": "npx semantic-release"
|
|
39
|
-
},
|
|
40
38
|
"devDependencies": {
|
|
41
|
-
"@semantic-release/changelog": "6.0.1",
|
|
42
|
-
"@semantic-release/commit-analyzer": "9.0.1",
|
|
43
|
-
"@semantic-release/git": "10.0.1",
|
|
44
|
-
"@semantic-release/npm": "8.0.2",
|
|
45
|
-
"@semantic-release/release-notes-generator": "10.0.2",
|
|
46
39
|
"@types/degit": "2.8.3",
|
|
47
40
|
"@types/git-user-name": "2.0.1",
|
|
48
|
-
"@types/lodash": "4.14.178",
|
|
49
41
|
"@types/parse-git-config": "3.0.1",
|
|
50
42
|
"@types/prompts": "2.0.14",
|
|
51
|
-
"@
|
|
52
|
-
"
|
|
53
|
-
"conventional-changelog-angular": "5.0.13",
|
|
54
|
-
"eslint": "8.5.0",
|
|
55
|
-
"pkgbld": "1.1.0",
|
|
56
|
-
"semantic-release": "18.0.0"
|
|
43
|
+
"@types/minimist": "1.2.2",
|
|
44
|
+
"pkgbld": "1.14.0"
|
|
57
45
|
},
|
|
58
46
|
"dependencies": {
|
|
59
47
|
"degit": "2.8.4",
|
|
@@ -61,5 +49,9 @@
|
|
|
61
49
|
"minimist": "1.2.7",
|
|
62
50
|
"parse-git-config": "3.0.0",
|
|
63
51
|
"prompts": "2.4.2"
|
|
52
|
+
},
|
|
53
|
+
"scripts": {
|
|
54
|
+
"build": "node ../pkgbld/dist/index.js --formats=cjs,es",
|
|
55
|
+
"lint": "eslint ./src"
|
|
64
56
|
}
|
|
65
|
-
}
|
|
57
|
+
}
|
package/dist/index.js
DELETED
|
@@ -1,182 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
'use strict';
|
|
3
|
-
|
|
4
|
-
var prompts = require('prompts');
|
|
5
|
-
var path = require('path');
|
|
6
|
-
var fs = require('fs/promises');
|
|
7
|
-
var userName = require('git-user-name');
|
|
8
|
-
var gitConfig = require('parse-git-config');
|
|
9
|
-
var minimist = require('minimist');
|
|
10
|
-
var degit = require('degit');
|
|
11
|
-
|
|
12
|
-
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
13
|
-
|
|
14
|
-
var prompts__default = /*#__PURE__*/_interopDefaultLegacy(prompts);
|
|
15
|
-
var path__default = /*#__PURE__*/_interopDefaultLegacy(path);
|
|
16
|
-
var fs__default = /*#__PURE__*/_interopDefaultLegacy(fs);
|
|
17
|
-
var userName__default = /*#__PURE__*/_interopDefaultLegacy(userName);
|
|
18
|
-
var gitConfig__default = /*#__PURE__*/_interopDefaultLegacy(gitConfig);
|
|
19
|
-
var minimist__default = /*#__PURE__*/_interopDefaultLegacy(minimist);
|
|
20
|
-
var degit__default = /*#__PURE__*/_interopDefaultLegacy(degit);
|
|
21
|
-
|
|
22
|
-
async function execute() {
|
|
23
|
-
var _a, _b;
|
|
24
|
-
var _c;
|
|
25
|
-
const myPkg = await readPackage(path__default["default"].resolve(__dirname, '..'));
|
|
26
|
-
console.log('create-pkgbld ' + myPkg.pkg.version);
|
|
27
|
-
const parsedArgs = minimist__default["default"](process.argv.slice(2));
|
|
28
|
-
const packageName = parsedArgs._[0];
|
|
29
|
-
const dir = packageName !== null && packageName !== void 0 ? packageName : '.';
|
|
30
|
-
let cancelled = false;
|
|
31
|
-
const chooseAction = await prompts__default["default"]({
|
|
32
|
-
type: 'select',
|
|
33
|
-
name: 'action',
|
|
34
|
-
message: 'What do you need to do?',
|
|
35
|
-
choices: [
|
|
36
|
-
{ title: 'Create Monorepo Root', value: 'root' },
|
|
37
|
-
{ title: 'Create a Subpackage', value: 'subpackage' }
|
|
38
|
-
],
|
|
39
|
-
initial: 1
|
|
40
|
-
}, { onCancel });
|
|
41
|
-
if (cancelled) {
|
|
42
|
-
process.exit(-1);
|
|
43
|
-
}
|
|
44
|
-
let rootPkg = {
|
|
45
|
-
pkg: {},
|
|
46
|
-
readme: ''
|
|
47
|
-
};
|
|
48
|
-
if (chooseAction.action === 'subpackage') {
|
|
49
|
-
rootPkg = await readPackage(path__default["default"].resolve(dir, '..'));
|
|
50
|
-
}
|
|
51
|
-
const template = chooseAction.action === 'root' ? 'kshutkin/monorepo-root' : 'kshutkin/monorepo-package';
|
|
52
|
-
const emitter = degit__default["default"](template, {
|
|
53
|
-
cache: false,
|
|
54
|
-
force: true,
|
|
55
|
-
verbose: true,
|
|
56
|
-
});
|
|
57
|
-
emitter.on('info', (info) => {
|
|
58
|
-
console.log(info.message);
|
|
59
|
-
});
|
|
60
|
-
await emitter.clone(dir);
|
|
61
|
-
const basePackageName = (packageName && path__default["default"].basename(packageName)) || path__default["default"].basename(process.cwd());
|
|
62
|
-
if (chooseAction.action === 'root') {
|
|
63
|
-
const response = await prompts__default["default"]([{
|
|
64
|
-
type: 'text',
|
|
65
|
-
name: 'name',
|
|
66
|
-
message: 'package name',
|
|
67
|
-
initial: basePackageName
|
|
68
|
-
}, {
|
|
69
|
-
type: 'text',
|
|
70
|
-
name: 'scope',
|
|
71
|
-
message: 'scope (without @ or empty)'
|
|
72
|
-
}, {
|
|
73
|
-
type: 'text',
|
|
74
|
-
name: 'description',
|
|
75
|
-
message: 'description',
|
|
76
|
-
initial: ''
|
|
77
|
-
}], { onCancel });
|
|
78
|
-
if (cancelled) {
|
|
79
|
-
process.exit(-1);
|
|
80
|
-
}
|
|
81
|
-
const fileName = path__default["default"].join(dir, '.github/workflows/main.yml');
|
|
82
|
-
let actionsTemplate = (await fs__default["default"].readFile(fileName)).toString();
|
|
83
|
-
actionsTemplate = actionsTemplate.replace('scope: # @echo scope', response.scope ? `scope: '@${response.scope}'` : '');
|
|
84
|
-
await fs__default["default"].writeFile(fileName, actionsTemplate);
|
|
85
|
-
const readmeFileName = path__default["default"].join(dir, 'README.md');
|
|
86
|
-
const readme = `# ${response.name}\n${response.description}\n\n## Packages`;
|
|
87
|
-
await fs__default["default"].writeFile(readmeFileName, readme);
|
|
88
|
-
}
|
|
89
|
-
if (chooseAction.action === 'subpackage') {
|
|
90
|
-
const response = await prompts__default["default"]([{
|
|
91
|
-
type: 'text',
|
|
92
|
-
name: 'name',
|
|
93
|
-
message: 'package name',
|
|
94
|
-
initial: basePackageName
|
|
95
|
-
}, {
|
|
96
|
-
type: 'text',
|
|
97
|
-
name: 'version',
|
|
98
|
-
message: 'version',
|
|
99
|
-
initial: '1.0.0'
|
|
100
|
-
}, {
|
|
101
|
-
type: 'text',
|
|
102
|
-
name: 'description',
|
|
103
|
-
message: 'description',
|
|
104
|
-
initial: ''
|
|
105
|
-
}, {
|
|
106
|
-
type: 'text',
|
|
107
|
-
name: 'license',
|
|
108
|
-
message: 'license',
|
|
109
|
-
initial: 'MIT'
|
|
110
|
-
}, {
|
|
111
|
-
type: 'text',
|
|
112
|
-
name: 'author',
|
|
113
|
-
message: 'author',
|
|
114
|
-
initial: (_a = userName__default["default"]()) !== null && _a !== void 0 ? _a : ''
|
|
115
|
-
}], { onCancel });
|
|
116
|
-
if (cancelled) {
|
|
117
|
-
process.exit(-1);
|
|
118
|
-
}
|
|
119
|
-
const gitInfo = {
|
|
120
|
-
homepage: '',
|
|
121
|
-
repository: undefined,
|
|
122
|
-
bugs: undefined
|
|
123
|
-
};
|
|
124
|
-
try {
|
|
125
|
-
const gitCfg = await gitConfig__default["default"]();
|
|
126
|
-
if (gitCfg) {
|
|
127
|
-
const url = gitCfg['remote "origin"'].url;
|
|
128
|
-
gitInfo.homepage = url.replace('.git', `/blob/main/${basePackageName}/README.md`);
|
|
129
|
-
gitInfo.repository = {
|
|
130
|
-
type: 'git',
|
|
131
|
-
url: `git+${url}`
|
|
132
|
-
};
|
|
133
|
-
gitInfo.bugs = {
|
|
134
|
-
url: url.replace('.git', '/issues')
|
|
135
|
-
};
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
catch (e) {
|
|
139
|
-
/* ignore */
|
|
140
|
-
}
|
|
141
|
-
const pkg = await readPackage(dir);
|
|
142
|
-
Object.assign(pkg.pkg, response, gitInfo);
|
|
143
|
-
pkg.readme = `# ${response.name}`;
|
|
144
|
-
await writePackage(dir, pkg);
|
|
145
|
-
(_b = (_c = rootPkg.pkg).workspaces) !== null && _b !== void 0 ? _b : (_c.workspaces = []);
|
|
146
|
-
rootPkg.pkg.workspaces.push(basePackageName);
|
|
147
|
-
rootPkg.readme += `\n- [${basePackageName}](./${basePackageName}/README.md)`;
|
|
148
|
-
await writePackage(path__default["default"].resolve(dir, '..'), rootPkg);
|
|
149
|
-
}
|
|
150
|
-
function onCancel() {
|
|
151
|
-
cancelled = true;
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
execute();
|
|
155
|
-
async function readPackage(dir) {
|
|
156
|
-
const packageFileName = path__default["default"].resolve(dir, 'package.json');
|
|
157
|
-
const readmeFileName = path__default["default"].resolve(dir, 'README.md');
|
|
158
|
-
try {
|
|
159
|
-
const pkgFile = await fs__default["default"].readFile(packageFileName);
|
|
160
|
-
const readmeFile = await fs__default["default"].readFile(readmeFileName);
|
|
161
|
-
return {
|
|
162
|
-
pkg: JSON.parse(pkgFile.toString()),
|
|
163
|
-
readme: readmeFile.toString()
|
|
164
|
-
};
|
|
165
|
-
}
|
|
166
|
-
catch (e) {
|
|
167
|
-
console.error(e);
|
|
168
|
-
process.exit(-1);
|
|
169
|
-
}
|
|
170
|
-
}
|
|
171
|
-
async function writePackage(dir, pkg) {
|
|
172
|
-
const packageFileName = path__default["default"].resolve(dir, 'package.json');
|
|
173
|
-
const readmeFileName = path__default["default"].resolve(dir, 'README.md');
|
|
174
|
-
try {
|
|
175
|
-
await fs__default["default"].writeFile(packageFileName, JSON.stringify(pkg.pkg, null, 2));
|
|
176
|
-
await fs__default["default"].writeFile(readmeFileName, pkg.readme);
|
|
177
|
-
}
|
|
178
|
-
catch (e) {
|
|
179
|
-
console.error(e);
|
|
180
|
-
process.exit(-1);
|
|
181
|
-
}
|
|
182
|
-
}
|