aboutsummaryrefslogtreecommitdiff
path: root/select.js
blob: bf4c4f7ca0b063c41edd059f49395b26a0192780 (plain)
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
const fzf = require("./fzf")
const info = require("./info")

;(async _ => {
	const criteria = await info.criteria()
	let stage = 0
	let crt, val, dou

	while (true) {
		try {
			switch (stage) {
				case 0:
					crt = await fzf.fzf(Object.keys(criteria).sort()); break
				case 1:
					val = await fzf.fzf(Object.keys(criteria[crt]).sort()); break
				case 2:
					dou = await fzf.doujin(Object.values(criteria[crt][val]).sort()); break
				default:
					return
			}

			stage++
		} catch {
			stage--
		}
	}
})()