@git.zone/cli 1.19.9 → 1.20.0
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/dist_ts/00_commitinfo_data.js +1 -1
- package/dist_ts/mod_commit/index.js +56 -30
- package/package.json +1 -1
- package/readme.hints.md +36 -0
- package/ts/00_commitinfo_data.ts +1 -1
- package/ts/mod_commit/index.ts +57 -29
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export const commitinfo = {
|
|
5
5
|
name: '@git.zone/cli',
|
|
6
|
-
version: '1.
|
|
6
|
+
version: '1.20.0',
|
|
7
7
|
description: 'A comprehensive CLI tool for enhancing and managing local development workflows with gitzone utilities, focusing on project setup, version control, code formatting, and template management.'
|
|
8
8
|
};
|
|
9
9
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvMDBfY29tbWl0aW5mb19kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3hCLElBQUksRUFBRSxlQUFlO0lBQ3JCLE9BQU8sRUFBRSxRQUFRO0lBQ2pCLFdBQVcsRUFBRSwrTEFBK0w7Q0FDN00sQ0FBQSJ9
|
|
@@ -20,35 +20,61 @@ export const run = async (argvArg) => {
|
|
|
20
20
|
recommendedNextVersionScope: nextCommitObject.recommendedNextVersionScope,
|
|
21
21
|
recommendedNextVersionMessage: nextCommitObject.recommendedNextVersionMessage,
|
|
22
22
|
});
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
name:
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
23
|
+
let answerBucket;
|
|
24
|
+
// Check if -y or --yes flag is set to auto-accept recommendations
|
|
25
|
+
if (argvArg.y || argvArg.yes) {
|
|
26
|
+
// Auto-mode: create AnswerBucket programmatically
|
|
27
|
+
logger.log('info', '✓ Auto-accepting AI recommendations (--yes flag)');
|
|
28
|
+
answerBucket = new plugins.smartinteract.AnswerBucket();
|
|
29
|
+
answerBucket.addAnswer({
|
|
30
|
+
name: 'commitType',
|
|
31
|
+
value: nextCommitObject.recommendedNextVersionLevel,
|
|
32
|
+
});
|
|
33
|
+
answerBucket.addAnswer({
|
|
34
|
+
name: 'commitScope',
|
|
35
|
+
value: nextCommitObject.recommendedNextVersionScope,
|
|
36
|
+
});
|
|
37
|
+
answerBucket.addAnswer({
|
|
38
|
+
name: 'commitDescription',
|
|
39
|
+
value: nextCommitObject.recommendedNextVersionMessage,
|
|
40
|
+
});
|
|
41
|
+
answerBucket.addAnswer({
|
|
42
|
+
name: 'pushToOrigin',
|
|
43
|
+
value: !!(argvArg.p || argvArg.push), // Only push if -p flag also provided
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
// Interactive mode: prompt user for input
|
|
48
|
+
const commitInteract = new plugins.smartinteract.SmartInteract();
|
|
49
|
+
commitInteract.addQuestions([
|
|
50
|
+
{
|
|
51
|
+
type: 'list',
|
|
52
|
+
name: `commitType`,
|
|
53
|
+
message: `Choose TYPE of the commit:`,
|
|
54
|
+
choices: [`fix`, `feat`, `BREAKING CHANGE`],
|
|
55
|
+
default: nextCommitObject.recommendedNextVersionLevel,
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
type: 'input',
|
|
59
|
+
name: `commitScope`,
|
|
60
|
+
message: `What is the SCOPE of the commit:`,
|
|
61
|
+
default: nextCommitObject.recommendedNextVersionScope,
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
type: `input`,
|
|
65
|
+
name: `commitDescription`,
|
|
66
|
+
message: `What is the DESCRIPTION of the commit?`,
|
|
67
|
+
default: nextCommitObject.recommendedNextVersionMessage,
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
type: 'confirm',
|
|
71
|
+
name: `pushToOrigin`,
|
|
72
|
+
message: `Do you want to push this version now?`,
|
|
73
|
+
default: true,
|
|
74
|
+
},
|
|
75
|
+
]);
|
|
76
|
+
answerBucket = await commitInteract.runQueue();
|
|
77
|
+
}
|
|
52
78
|
const commitString = createCommitStringFromAnswerBucket(answerBucket);
|
|
53
79
|
const commitVersionType = (() => {
|
|
54
80
|
switch (answerBucket.getAnswerFor('commitType')) {
|
|
@@ -135,4 +161,4 @@ const createCommitStringFromAnswerBucket = (answerBucket) => {
|
|
|
135
161
|
const commitDescription = answerBucket.getAnswerFor('commitDescription');
|
|
136
162
|
return `${commitType}(${commitScope}): ${commitDescription}`;
|
|
137
163
|
};
|
|
138
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
164
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90cy9tb2RfY29tbWl0L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdFQUFnRTtBQUVoRSxPQUFPLEtBQUssT0FBTyxNQUFNLGtCQUFrQixDQUFDO0FBQzVDLE9BQU8sS0FBSyxLQUFLLE1BQU0sYUFBYSxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQyxPQUFPLEtBQUssT0FBTyxNQUFNLGtCQUFrQixDQUFDO0FBQzVDLE9BQU8sS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRWxDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsR0FBRyxLQUFLLEVBQUUsT0FBWSxFQUFFLEVBQUU7SUFDeEMsSUFBSSxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDbkIsTUFBTSxTQUFTLEdBQUcsTUFBTSxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQztRQUN6RCxNQUFNLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQsRUFBRSxDQUFDLFdBQVcsQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO0lBRXJELE1BQU0sS0FBSyxHQUFHLElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN4QyxNQUFNLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVwQixNQUFNLGdCQUFnQixHQUFHLE1BQU0sS0FBSyxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUV0RSxNQUFNLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUVuQixFQUFFLENBQUMsbUJBQW1CLENBQUM7UUFDckIsc0JBQXNCLEVBQUUsZ0JBQWdCLENBQUMsc0JBQXNCO1FBQy9ELDJCQUEyQixFQUFFLGdCQUFnQixDQUFDLDJCQUEyQjtRQUN6RSwyQkFBMkIsRUFBRSxnQkFBZ0IsQ0FBQywyQkFBMkI7UUFD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
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@git.zone/cli",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.20.0",
|
|
5
5
|
"description": "A comprehensive CLI tool for enhancing and managing local development workflows with gitzone utilities, focusing on project setup, version control, code formatting, and template management.",
|
|
6
6
|
"main": "dist_ts/index.ts",
|
|
7
7
|
"typings": "dist_ts/index.d.ts",
|
package/readme.hints.md
CHANGED
|
@@ -110,6 +110,21 @@ The commit module's version bumping has been refactored to eliminate npm command
|
|
|
110
110
|
- Same code path for all project types
|
|
111
111
|
- Reuses existing `calculateNewVersion()` function
|
|
112
112
|
|
|
113
|
+
### Auto-Accept Flag for Commits
|
|
114
|
+
|
|
115
|
+
The commit module now supports `-y/--yes` flag for non-interactive commits:
|
|
116
|
+
|
|
117
|
+
**Usage:**
|
|
118
|
+
- `gitzone commit -y` - Auto-accepts AI recommendations without prompts
|
|
119
|
+
- `gitzone commit -yp` - Auto-accepts and pushes to origin
|
|
120
|
+
- Separate `-p/--push` flag controls push behavior
|
|
121
|
+
|
|
122
|
+
**Implementation:**
|
|
123
|
+
- Creates AnswerBucket programmatically when `-y` flag detected
|
|
124
|
+
- Preserves all UI output for transparency
|
|
125
|
+
- Fully backward compatible with interactive mode
|
|
126
|
+
- CI/CD friendly for automated workflows
|
|
127
|
+
|
|
113
128
|
## Development Tips
|
|
114
129
|
|
|
115
130
|
- Always check readme.plan.md for ongoing improvement plans
|
|
@@ -157,6 +172,27 @@ The commit module's version bumping has been refactored to eliminate npm command
|
|
|
157
172
|
|
|
158
173
|
## CLI Usage
|
|
159
174
|
|
|
175
|
+
### Commit Commands
|
|
176
|
+
|
|
177
|
+
```bash
|
|
178
|
+
# Interactive commit (default)
|
|
179
|
+
gitzone commit
|
|
180
|
+
|
|
181
|
+
# Auto-accept AI recommendations (no prompts)
|
|
182
|
+
gitzone commit -y
|
|
183
|
+
gitzone commit --yes
|
|
184
|
+
|
|
185
|
+
# Auto-accept and push to origin
|
|
186
|
+
gitzone commit -yp
|
|
187
|
+
gitzone commit -y -p
|
|
188
|
+
gitzone commit --yes --push
|
|
189
|
+
|
|
190
|
+
# Run format before commit
|
|
191
|
+
gitzone commit --format
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
### Format Commands
|
|
195
|
+
|
|
160
196
|
```bash
|
|
161
197
|
# Basic format
|
|
162
198
|
gitzone format
|
package/ts/00_commitinfo_data.ts
CHANGED
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export const commitinfo = {
|
|
5
5
|
name: '@git.zone/cli',
|
|
6
|
-
version: '1.
|
|
6
|
+
version: '1.20.0',
|
|
7
7
|
description: 'A comprehensive CLI tool for enhancing and managing local development workflows with gitzone utilities, focusing on project setup, version control, code formatting, and template management.'
|
|
8
8
|
}
|
package/ts/mod_commit/index.ts
CHANGED
|
@@ -27,35 +27,63 @@ export const run = async (argvArg: any) => {
|
|
|
27
27
|
recommendedNextVersionScope: nextCommitObject.recommendedNextVersionScope,
|
|
28
28
|
recommendedNextVersionMessage: nextCommitObject.recommendedNextVersionMessage,
|
|
29
29
|
});
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
{
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
}
|
|
51
|
-
{
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
30
|
+
|
|
31
|
+
let answerBucket: plugins.smartinteract.AnswerBucket;
|
|
32
|
+
|
|
33
|
+
// Check if -y or --yes flag is set to auto-accept recommendations
|
|
34
|
+
if (argvArg.y || argvArg.yes) {
|
|
35
|
+
// Auto-mode: create AnswerBucket programmatically
|
|
36
|
+
logger.log('info', '✓ Auto-accepting AI recommendations (--yes flag)');
|
|
37
|
+
|
|
38
|
+
answerBucket = new plugins.smartinteract.AnswerBucket();
|
|
39
|
+
answerBucket.addAnswer({
|
|
40
|
+
name: 'commitType',
|
|
41
|
+
value: nextCommitObject.recommendedNextVersionLevel,
|
|
42
|
+
});
|
|
43
|
+
answerBucket.addAnswer({
|
|
44
|
+
name: 'commitScope',
|
|
45
|
+
value: nextCommitObject.recommendedNextVersionScope,
|
|
46
|
+
});
|
|
47
|
+
answerBucket.addAnswer({
|
|
48
|
+
name: 'commitDescription',
|
|
49
|
+
value: nextCommitObject.recommendedNextVersionMessage,
|
|
50
|
+
});
|
|
51
|
+
answerBucket.addAnswer({
|
|
52
|
+
name: 'pushToOrigin',
|
|
53
|
+
value: !!(argvArg.p || argvArg.push), // Only push if -p flag also provided
|
|
54
|
+
});
|
|
55
|
+
} else {
|
|
56
|
+
// Interactive mode: prompt user for input
|
|
57
|
+
const commitInteract = new plugins.smartinteract.SmartInteract();
|
|
58
|
+
commitInteract.addQuestions([
|
|
59
|
+
{
|
|
60
|
+
type: 'list',
|
|
61
|
+
name: `commitType`,
|
|
62
|
+
message: `Choose TYPE of the commit:`,
|
|
63
|
+
choices: [`fix`, `feat`, `BREAKING CHANGE`],
|
|
64
|
+
default: nextCommitObject.recommendedNextVersionLevel,
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
type: 'input',
|
|
68
|
+
name: `commitScope`,
|
|
69
|
+
message: `What is the SCOPE of the commit:`,
|
|
70
|
+
default: nextCommitObject.recommendedNextVersionScope,
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
type: `input`,
|
|
74
|
+
name: `commitDescription`,
|
|
75
|
+
message: `What is the DESCRIPTION of the commit?`,
|
|
76
|
+
default: nextCommitObject.recommendedNextVersionMessage,
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
type: 'confirm',
|
|
80
|
+
name: `pushToOrigin`,
|
|
81
|
+
message: `Do you want to push this version now?`,
|
|
82
|
+
default: true,
|
|
83
|
+
},
|
|
84
|
+
]);
|
|
85
|
+
answerBucket = await commitInteract.runQueue();
|
|
86
|
+
}
|
|
59
87
|
const commitString = createCommitStringFromAnswerBucket(answerBucket);
|
|
60
88
|
const commitVersionType = (() => {
|
|
61
89
|
switch (answerBucket.getAnswerFor('commitType')) {
|