diff options
| author | Ruben Beltran del Rio <ruben@unlimited.pizza> | 2021-12-19 14:21:33 +0100 |
|---|---|---|
| committer | Ruben Beltran del Rio <ruben@unlimited.pizza> | 2021-12-19 14:21:33 +0100 |
| commit | 5d9f7190bd118fe4d44594d7a9584de98b527467 (patch) | |
| tree | c323938b4626290a227a652380af769d7f4c4518 /lib/rule_generator.js | |
| parent | 29f687276d9e9ef01ce70ebd210a01386ca581ae (diff) | |
Port to svelte
Diffstat (limited to 'lib/rule_generator.js')
| -rw-r--r-- | lib/rule_generator.js | 63 |
1 files changed, 0 insertions, 63 deletions
diff --git a/lib/rule_generator.js b/lib/rule_generator.js deleted file mode 100644 index 742c915..0000000 --- a/lib/rule_generator.js +++ /dev/null @@ -1,63 +0,0 @@ -const { readdir } = require('fs'); -const { join, resolve } = require('path'); - -const internals = { - - dates: [ - 'today', - 'tomorrow', - 'next friday', - 'next wednesday', - 'last thursday', - 'last tuesday', - 'the next day divisible by 7', - 'this afternoon', - 'next fiscal quarter', - ], - - rules: null, - currentIndex: 0, - - kRulesDirectory: resolve(__dirname, './rules'), - - async readRules() { - - const ruleFiles = await internals.readdir(internals.kRulesDirectory); - const rules = ruleFiles - .filter((file) => file.match(/.js$/)) - .map((file) => require(join(internals.kRulesDirectory, file))); - - internals.rules = rules.sort(() => Math.random() - 0.5) - }, - - readdir(path) { - return new Promise((resolve, reject) => { - - readdir(path, (err, files) => { - - if (err) { - return reject(err); - } - - return resolve(files); - }) - }); - } -} - -module.exports = { - async generate() { - - if (!internals.rules) { - await internals.readRules(); - } - - const rule = internals.rules[internals.currentIndex]; - const time = internals.dates[Math.floor(Math.random() * internals.dates.length)]; - internals.currentIndex = (internals.currentIndex + 1) % internals.rules.length - return { - rule: rule(), - time - } - } -} |