avil13-co 2.1.5 → 2.2.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/ask.d.ts +1 -0
- package/dist/ask.js +10 -3
- package/dist/cli-commands/index.d.ts +3 -2
- package/dist/cli-commands/index.js +12 -6
- package/dist/commands/merge-branch.d.ts +1 -0
- package/dist/commands/merge-branch.js +16 -0
- package/package.json +3 -2
- package/src/__tests__/ask.spec.ts +30 -0
- package/src/ask.ts +10 -3
- package/src/cli-commands/index.ts +16 -9
- package/src/commands/merge-branch.ts +16 -0
package/dist/ask.d.ts
CHANGED
package/dist/ask.js
CHANGED
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.checkItem = exports.ask = void 0;
|
|
6
|
+
exports.sortOrder = exports.checkItem = exports.ask = void 0;
|
|
7
7
|
const inquirer_1 = __importDefault(require("inquirer"));
|
|
8
8
|
inquirer_1.default.registerPrompt('autocomplete', require('inquirer-autocomplete-prompt'));
|
|
9
9
|
const specSymbols = {
|
|
@@ -35,11 +35,18 @@ function checkItem(item, filterString) {
|
|
|
35
35
|
}
|
|
36
36
|
exports.checkItem = checkItem;
|
|
37
37
|
function sortOrder(searchString, name1, name2) {
|
|
38
|
-
if (
|
|
38
|
+
if (!name1.includes(searchString)) {
|
|
39
|
+
return 1;
|
|
40
|
+
}
|
|
41
|
+
if (!name2.includes(searchString)) {
|
|
39
42
|
return -1;
|
|
40
43
|
}
|
|
41
|
-
|
|
44
|
+
if ((name2.indexOf(searchString) < name1.indexOf(searchString))) {
|
|
45
|
+
return 1;
|
|
46
|
+
}
|
|
47
|
+
return -1;
|
|
42
48
|
}
|
|
49
|
+
exports.sortOrder = sortOrder;
|
|
43
50
|
function getRegExp(filterString) {
|
|
44
51
|
return new RegExp(filterString.split('').map(s => s.trim()).filter(Boolean).join('.*').replace('.*.*', '.*'), 'gi');
|
|
45
52
|
}
|
|
@@ -2,8 +2,9 @@ export declare enum Commands {
|
|
|
2
2
|
Unknown = 0,
|
|
3
3
|
Help = 1,
|
|
4
4
|
DeleteBranch = 2,
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
MergeBranch = 4,
|
|
6
|
+
ShowMerged = 8,
|
|
7
|
+
ShowUnMerged = 16
|
|
7
8
|
}
|
|
8
9
|
export declare const getWishOfUser: (firstArg?: string | undefined) => Commands;
|
|
9
10
|
export declare const getHelp: () => string;
|
|
@@ -7,8 +7,9 @@ var Commands;
|
|
|
7
7
|
Commands[Commands["Unknown"] = 0] = "Unknown";
|
|
8
8
|
Commands[Commands["Help"] = 1] = "Help";
|
|
9
9
|
Commands[Commands["DeleteBranch"] = 2] = "DeleteBranch";
|
|
10
|
-
Commands[Commands["
|
|
11
|
-
Commands[Commands["
|
|
10
|
+
Commands[Commands["MergeBranch"] = 4] = "MergeBranch";
|
|
11
|
+
Commands[Commands["ShowMerged"] = 8] = "ShowMerged";
|
|
12
|
+
Commands[Commands["ShowUnMerged"] = 16] = "ShowUnMerged";
|
|
12
13
|
})(Commands = exports.Commands || (exports.Commands = {}));
|
|
13
14
|
;
|
|
14
15
|
const getWishOfUser = (firstArg) => {
|
|
@@ -16,11 +17,13 @@ const getWishOfUser = (firstArg) => {
|
|
|
16
17
|
switch (true) {
|
|
17
18
|
case ['help', '-h', '--h', '--help'].includes(arg):
|
|
18
19
|
return Commands.Help;
|
|
20
|
+
case ['-M', 'merge'].includes(arg):
|
|
21
|
+
return Commands.MergeBranch;
|
|
19
22
|
case ['-D', 'rm'].includes(arg):
|
|
20
23
|
return Commands.DeleteBranch;
|
|
21
|
-
case ['
|
|
24
|
+
case ['-sm', '--show-merged'].includes(arg):
|
|
22
25
|
return Commands.ShowMerged;
|
|
23
|
-
case ['un', '--no-merged'].includes(arg):
|
|
26
|
+
case ['-un', '--no-merged'].includes(arg):
|
|
24
27
|
return Commands.ShowUnMerged;
|
|
25
28
|
default:
|
|
26
29
|
return Commands.Unknown;
|
|
@@ -36,10 +39,13 @@ OPTIONS:
|
|
|
36
39
|
help, -h, --h, --help
|
|
37
40
|
Showing this message
|
|
38
41
|
|
|
39
|
-
|
|
42
|
+
-M, merge
|
|
43
|
+
Merge branch
|
|
44
|
+
|
|
45
|
+
-sm, --show-merged
|
|
40
46
|
Showing merged branches
|
|
41
47
|
|
|
42
|
-
|
|
48
|
+
-un, --no-merged
|
|
43
49
|
Showing not merged branches
|
|
44
50
|
|
|
45
51
|
-D, rm
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function mergeBranch(branchName: string): Promise<void>;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.mergeBranch = void 0;
|
|
4
|
+
const exec_1 = require("./exec");
|
|
5
|
+
const color_1 = require("../color");
|
|
6
|
+
//
|
|
7
|
+
async function mergeBranch(branchName) {
|
|
8
|
+
if (!branchName) {
|
|
9
|
+
throw new Error('No branch...');
|
|
10
|
+
}
|
|
11
|
+
const checkoutCommand = `git merge ${branchName}`;
|
|
12
|
+
console.log(' ' + color_1.clc.green('git merge', branchName) + '\n');
|
|
13
|
+
const checkoutCommandResult = await (0, exec_1.exec)(checkoutCommand);
|
|
14
|
+
console.log(checkoutCommandResult);
|
|
15
|
+
}
|
|
16
|
+
exports.mergeBranch = mergeBranch;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "avil13-co",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.2.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"public": true,
|
|
@@ -44,6 +44,7 @@
|
|
|
44
44
|
"@types/inquirer": "^8.2.1",
|
|
45
45
|
"@types/node": "^17.0.23",
|
|
46
46
|
"ts-node": "^10.7.0",
|
|
47
|
-
"typescript": "^4.6.3"
|
|
47
|
+
"typescript": "^4.6.3",
|
|
48
|
+
"vitest": "^0.10.0"
|
|
48
49
|
}
|
|
49
50
|
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { expect, it } from 'vitest';
|
|
2
|
+
import { sortOrder } from '../ask';
|
|
3
|
+
|
|
4
|
+
it('should ', () => {
|
|
5
|
+
const list = [
|
|
6
|
+
'chore/EDODEV-10449-act-master',
|
|
7
|
+
'chore/release-to-master',
|
|
8
|
+
'master',
|
|
9
|
+
'feature/EDODEV-8692-migration-to-edox-vue-components',
|
|
10
|
+
'feature/EDODEV-9416-sms-paste',
|
|
11
|
+
'hotfix/EDO-14065-logout-in-main-site',
|
|
12
|
+
'chore/EDODEV-remove-e-card-style',
|
|
13
|
+
];
|
|
14
|
+
const etalon = [
|
|
15
|
+
'master',
|
|
16
|
+
'chore/release-to-master',
|
|
17
|
+
'chore/EDODEV-10449-act-master',
|
|
18
|
+
'feature/EDODEV-8692-migration-to-edox-vue-components',
|
|
19
|
+
'feature/EDODEV-9416-sms-paste',
|
|
20
|
+
'hotfix/EDO-14065-logout-in-main-site',
|
|
21
|
+
'chore/EDODEV-remove-e-card-style',
|
|
22
|
+
];
|
|
23
|
+
|
|
24
|
+
const sortString = 'maste';
|
|
25
|
+
|
|
26
|
+
const sortedList = list.sort((a, b) => sortOrder(sortString, a, b));
|
|
27
|
+
|
|
28
|
+
expect(sortedList).toEqual(etalon);
|
|
29
|
+
});
|
|
30
|
+
|
package/src/ask.ts
CHANGED
|
@@ -38,12 +38,19 @@ export function checkItem(item: string, filterString: string): boolean {
|
|
|
38
38
|
return reg.test(item);
|
|
39
39
|
}
|
|
40
40
|
|
|
41
|
-
function sortOrder(searchString: string, name1: string, name2: string): -1 | 1 {
|
|
42
|
-
if (
|
|
41
|
+
export function sortOrder(searchString: string, name1: string, name2: string): -1 | 1 {
|
|
42
|
+
if (!name1.includes(searchString)) {
|
|
43
|
+
return 1;
|
|
44
|
+
}
|
|
45
|
+
if (!name2.includes(searchString)) {
|
|
43
46
|
return -1;
|
|
44
47
|
}
|
|
45
48
|
|
|
46
|
-
|
|
49
|
+
if ((name2.indexOf(searchString) < name1.indexOf(searchString))) {
|
|
50
|
+
return 1;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
return -1;
|
|
47
54
|
}
|
|
48
55
|
|
|
49
56
|
|
|
@@ -3,11 +3,12 @@ import { clc } from '../color';
|
|
|
3
3
|
const args = process.argv.slice(2);
|
|
4
4
|
|
|
5
5
|
export enum Commands {
|
|
6
|
-
Unknown,
|
|
7
|
-
Help,
|
|
8
|
-
DeleteBranch,
|
|
9
|
-
|
|
10
|
-
|
|
6
|
+
Unknown = 0,
|
|
7
|
+
Help = 1,
|
|
8
|
+
DeleteBranch = 2,
|
|
9
|
+
MergeBranch = 4,
|
|
10
|
+
ShowMerged = 8,
|
|
11
|
+
ShowUnMerged = 16,
|
|
11
12
|
};
|
|
12
13
|
|
|
13
14
|
export const getWishOfUser = (firstArg?: string): Commands => {
|
|
@@ -17,13 +18,16 @@ export const getWishOfUser = (firstArg?: string): Commands => {
|
|
|
17
18
|
case ['help', '-h', '--h', '--help'].includes(arg):
|
|
18
19
|
return Commands.Help;
|
|
19
20
|
|
|
21
|
+
case ['-M', 'merge'].includes(arg):
|
|
22
|
+
return Commands.MergeBranch;
|
|
23
|
+
|
|
20
24
|
case ['-D', 'rm'].includes(arg):
|
|
21
25
|
return Commands.DeleteBranch;
|
|
22
26
|
|
|
23
|
-
case ['
|
|
27
|
+
case ['-sm', '--show-merged'].includes(arg):
|
|
24
28
|
return Commands.ShowMerged;
|
|
25
29
|
|
|
26
|
-
case ['un', '--no-merged'].includes(arg):
|
|
30
|
+
case ['-un', '--no-merged'].includes(arg):
|
|
27
31
|
return Commands.ShowUnMerged;
|
|
28
32
|
|
|
29
33
|
default:
|
|
@@ -41,10 +45,13 @@ OPTIONS:
|
|
|
41
45
|
help, -h, --h, --help
|
|
42
46
|
Showing this message
|
|
43
47
|
|
|
44
|
-
|
|
48
|
+
-M, merge
|
|
49
|
+
Merge branch
|
|
50
|
+
|
|
51
|
+
-sm, --show-merged
|
|
45
52
|
Showing merged branches
|
|
46
53
|
|
|
47
|
-
|
|
54
|
+
-un, --no-merged
|
|
48
55
|
Showing not merged branches
|
|
49
56
|
|
|
50
57
|
-D, rm
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { exec } from './exec';
|
|
2
|
+
import { clc } from '../color';
|
|
3
|
+
|
|
4
|
+
//
|
|
5
|
+
export async function mergeBranch(branchName: string) {
|
|
6
|
+
if (!branchName) {
|
|
7
|
+
throw new Error('No branch...');
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
const checkoutCommand = `git merge ${branchName}`;
|
|
11
|
+
|
|
12
|
+
console.log(' ' + clc.green('git merge', branchName) + '\n');
|
|
13
|
+
|
|
14
|
+
const checkoutCommandResult = await exec(checkoutCommand);
|
|
15
|
+
console.log(checkoutCommandResult);
|
|
16
|
+
}
|