forked from Laboratoria/lim-2018-01-FE-markdown
-
Notifications
You must be signed in to change notification settings - Fork 0
/
cli.js
52 lines (40 loc) · 1.3 KB
/
cli.js
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
#!/usr/bin/env node
const program = require('commander');
const mdlinks = require('./index.js');
program
.version('0.1.0')
.arguments('<path>', 'change the working directory')
.option('-v, --validate', 'valida si existe links rotos')
.option('-s, --stats', 'verifica cuants links existen')
.action(mdlinks)
.parse(process.argv);
const options = {
validate: program.validate,
stats: program.stats
}
// program.parse(process.argv);
// const ruta= findUp(args)
const dirOrFile = program.args[0];
if (!dirOrFile) {
console.log('ingrese ruta')
console.log('ruta -v --validate')
console.log('ruta -s --stats')
console.log('ruta -s -v --validate--stats');
} else {
mdlinks(dirOrFile, options)
.then(arrlinks => {
if (options.validate && options.stats) {
console.log(`total:${arrlinks.total}\nunique:${arrlinks.unique}\nbroken:${arrlinks.broken}`)
} else if (options.validate) {
arrlinks.forEach(obj => {
console.log(`${obj.file} ${obj.href} ${obj.statusText} ${obj.status} ${obj.text}`)
});
} else if (options.stats) {
console.log(`total:${arrlinks.total}\nunique${arrlinks.unique}`)
} else {
arrlinks.forEach(obj => {
console.log(`${obj.file} ${obj.href} ${obj.text}`)
})
}
})
}