-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.ts
94 lines (87 loc) · 2.39 KB
/
index.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
#!/usr/bin/env node
import * as Meow from 'meow';
import Gitta from './src/gitta';
import Cli from './src/utils/cli/cli';
import { Commands } from './src/utils/constants';
const meow = Meow(
`
Usage
$ gitta -[cehlrsuv]
Options
--${Commands.COMMIT}, -c An interactive prompt that handles committing your changes.
--${Commands.EDIT}, -e Edit stored emoji/prefix files.
--${Commands.HELP}, -h Display help message.
--${Commands.LIST}, -l List your configured gitta emojis/prefixes.
--${Commands.RECONFIG}, -r Reconfigure gitta settings.
--${Commands.SEARCH}, -s Search for emoji given keywords.
--${Commands.UPDATE}, -u Refresh list of emojis/prefixes (does not overwrite custom).
--${Commands.VERSION}, -v Display version of gitta.
Examples
gitta -l
`,
{
flags: {
[Commands.COMMIT]: {
type: 'boolean',
alias: 'c',
},
[Commands.RECONFIG]: {
type: 'boolean',
alias: 'r',
},
[Commands.LIST]: {
type: 'boolean',
alias: 'l',
},
[Commands.SEARCH]: {
type: 'boolean',
alias: 's',
},
[Commands.EDIT]: {
type: 'boolean',
alias: 'e',
},
[Commands.HELP]: {
type: 'boolean',
alias: 'h',
},
[Commands.UPDATE]: {
type: 'boolean',
alias: 'u',
},
[Commands.VERSION]: {
type: 'boolean',
alias: 'v',
},
},
}
);
const handlers = {
[Commands.COMMIT]: () => {
gitta.commit();
},
[Commands.RECONFIG]: () => {
gitta.reconfig();
},
[Commands.LIST]: () => {
gitta.list();
},
[Commands.SEARCH]: () => {
gitta.search();
},
[Commands.EDIT]: () => {
gitta.edit();
},
[Commands.HELP]: () => {
gitta.help(meow);
},
[Commands.UPDATE]: () => {
gitta.update();
},
[Commands.VERSION]: () => {
gitta.version();
},
};
const gitta = new Gitta();
const cli: Cli = new Cli(meow, handlers);
cli.executeCommandFromFlags();