forked from danibram/time-tracker-cli
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathautocomplete.js
More file actions
36 lines (25 loc) · 963 Bytes
/
Copy pathautocomplete.js
File metadata and controls
36 lines (25 loc) · 963 Bytes
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
import omelette from 'omelette'
import { configElements } from './core/constants'
const autocomplete = function(config){
const complete = omelette("timer <cmd> <key>")
let allTaskKeys = function() {
this.reply(Object.keys(config.all.tasks));
}
complete.on("cmd", function() {
this.reply(["start", "pause", "unpause", "finish", "description", "add", "subtract", "report", "log", "export", "delete", "configuration", "configure"])
});
complete.on("key", function(cmd) {
let keyTasks = ['start', 'pause', 'unpause', 'finish', 'log', 'description', 'add', 'remove']
if (keyTasks.indexOf(cmd) > -1){
this.reply(Object.keys(config.all.tasks));
}
if (cmd === 'configure' ){
this.reply(configElements);
}
});
complete.init();
if (~process.argv.indexOf('--setupCLI')) {
complete.setupShellInitFile();
}
}
export default autocomplete