UNPKG

kaomoji

Version:

Random kaomoji generator with 314 kaomojis across 4 categories.

109 lines (103 loc) 3.69 kB
#!/usr/bin/env node 'use strict'; var commander = require('commander'); var prompts = require('@clack/prompts'); var index = require('./index.cjs.js'); function _interopNamespaceDefault(e) { var n = Object.create(null); if (e) { Object.keys(e).forEach(function (k) { if (k !== 'default') { var d = Object.getOwnPropertyDescriptor(e, k); Object.defineProperty(n, k, d.get ? d : { enumerable: true, get: function () { return e[k]; } }); } }); } n.default = e; return Object.freeze(n); } var prompts__namespace = /*#__PURE__*/_interopNamespaceDefault(prompts); function _instanceof(left, right) { if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) { return !!right[Symbol.hasInstance](left); } else { return left instanceof right; } } function __awaiter(thisArg, _arguments, P, generator) { function adopt(value) { return _instanceof(value, P) ? value : new P(function(resolve) { resolve(value); }); } return new (P || (P = Promise))(function(resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); } typeof SuppressedError === "function" ? SuppressedError : function _SuppressedError(error, suppressed, message) { var e = new Error(message); return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e; }; const categories = { happy: index.happy, sad: index.sad, congrats: index.congrats, thanks: index.thanks }; const categoryNames = Object.keys(categories); function runInteractive() { return __awaiter(this, void 0, void 0, function*() { prompts__namespace.intro('kaomoji \(^o^)/'); const category = yield prompts__namespace.select({ message: 'Pick a category', options: categoryNames.map((name)=>({ value: name, label: name })) }); if (prompts__namespace.isCancel(category)) { prompts__namespace.cancel('Bye!'); process.exit(0); } const result = categories[category](); prompts__namespace.outro(result); }); } const program = new commander.Command(); program.name('kaomoji').description('Random kaomoji generator \(^o^)/').version('0.0.1').argument('[category]', `Category: ${categoryNames.join(', ')}`).option('-a, --all', 'Print all kaomojis in the category').action((category, options)=>__awaiter(void 0, void 0, void 0, function*() { if (!category) { yield runInteractive(); return; } if (!categoryNames.includes(category)) { console.error(`Unknown category: "${category}". Available: ${categoryNames.join(', ')}`); process.exit(1); } const fn = categories[category]; if (options === null || options === void 0 ? void 0 : options.all) { fn.all.forEach((k)=>console.log(k)); } else { console.log(fn()); } })); program.parse();