1
0
Fork 0
CompleteNodeJS/notes-app/app.js

71 lines
1.2 KiB
JavaScript

const chalk = require('chalk');
const yargs = require('yargs');
const notes = require('./notes.js');
// Customize yargs version
yargs.version('1.1.0');
// Create add command
yargs.command({
command: 'add',
describe: 'Add a new note',
builder: {
title: {
describe: 'Note title',
demandOption: true,
type: 'string'
},
body: {
describe: 'Note body',
demandOption: true,
type: 'string'
}
},
handler(argv) {
notes.addNote(argv.title, argv.body);
}
});
// Create remove command
yargs.command({
command: 'remove',
describe: 'Remove a note',
builder: {
title: {
describe: 'Note title',
demandOption: true,
type: 'string'
}
},
handler(argv) {
notes.removeNote(argv.title);
}
});
// Create list command
yargs.command({
command: 'list',
describe: 'List notes',
handler() {
notes.listNotes();
}
});
// Create read command
yargs.command({
command: 'read',
describe: 'Read a note',
builder: {
title: {
describe: 'Note title',
demandOption: true,
type: 'string'
}
},
handler(argv) {
notes.readNote(argv.title);
}
});
yargs.parse();