-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcli.js
42 lines (32 loc) · 1.5 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
#!/usr/bin/env node
const { getmeaning, gen, kapital } = require("./src/models/function.js");
var petungan = require("@kalenderjawa/petungan")
const yargs = require("yargs");
const options = yargs
.usage("Usage: -t <tahun>")
.option("t", { alias: "tahun", describe: "Input angka tahun", type: "Number", demandOption: true })
.argv;
const tahun = options.tahun;
if(!tahun) throw new Error('[sengkalan.js] parameter tahun di butuhkan!')
if(isNaN(tahun)) throw new Error('[sengkalan.js] parameter tahun harus berupa angka!')
if(tahun < 1633) throw new Error('[sengkalan.js] parameter tahun harus lebih atau sama dengan dari 1633')
if(tahun > 4284) throw new Error('[sengkalan.js] parameter tahun harus kurang atau sama dengan dari 4284')
var gene = gen(tahun, false)
var jw = petungan.konversiTahunMasehiKeTahunJawa(tahun);
var genej = gen(jw, false)
var res = `📅 Tahun Masehi: ${tahun}
☀️ Surya Sengkala: ${gene.map( a => a.charAt(0).toUpperCase() + a.substr(1) ).join(" ")}
📜 Makna Surya Sengkala:`
var resjv = `📅 Tahun Jawa: ${jw}
🌙 Candra Sengkala: ${genej.map( a => a.charAt(0).toUpperCase() + a.substr(1) ).join(" ")}
📜 Makna Candra Sengkala:`
for(var i = 0; i < tahun.toString().length; i++) {
var makna_t = gene[i]
var makna_t_jv = genej[i]
var makna_v = getmeaning(gene[i], "id")
var makna_v_jv = getmeaning(genej[i], "id")
var a;
res = `${res}\n > ${kapital(makna_t)}: ${makna_v}`
resjv = `${resjv}\n > ${kapital(makna_t_jv)}: ${makna_v_jv}`
}
console.log(res + '\n\n' + resjv)