UNPKG

vegan-ipsum

Version:

Generates passages of vegan-themed placeholder text suitable for use in web pages, graphics, and more. Works in the browser, NodeJS, and React Native.

56 lines (55 loc) 8.69 kB
#!/usr/bin/env node "use strict"; var _commander = require("commander"); var _ = require(".."); var _formats = require("../constants/formats"); var _regex = require("../constants/regex"); var _cli = require("./constants/cli"); var _util = require("./util"); /** * CLI program for generating vegan ipsum text. * * - Arguments: * - `count`: The number of units to generate (e.g., words, sentences, or paragraphs). * - `units`: The type of units to generate (e.g., "words", "sentences", or "paragraphs"). * * - Options: * - `-c, --copy`: Copies the generated text to the clipboard. * - `-f, --format <format>`: Specifies the format of the output (e.g., "plain" or "html"). */ _commander.program.version((0, _util.getVersion)()).usage(_cli.USAGE).description(_cli.DESCRIPTION).argument("count", "The number of units").argument("units", "Words, sentences, or paragraphs").option("-c --copy", "Copy").addOption(new _commander.Option("-f --format <format>", "Format").choices(_formats.FORMATS)["default"](_formats.FORMAT_PLAIN)).action( /** * Action handler for the CLI program. * * @param {string} num - The number of units to generate (default: "1"). * @param {"words" | "word" | "sentences" | "sentence" | "paragraphs" | "paragraph" | undefined} units - The type of units to generate (default: "sentence"). */ function () { var num = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "1"; var units = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "sentences"; if (_regex.REGEX.UNITS.test(units) === false) { console.error("".concat(units, " is not valid. Choose from paragraph(s), sentence(s), or word(s).")); process.exit(1); } var count = parseInt(num, 10); if (!count || count < 1) { console.error("".concat(count, " is not valid. Choose a number greater than 1.")); process.exit(1); } var output = (0, _.veganIpsum)({ count: count, format: _commander.program.getOptionValue("format"), units: units }); console.log(output); if (_commander.program.getOptionValue("copy") === true) { (0, _util.copyToClipboard)(output).then(function () { console.log(""); console.log("✓ copied"); })["catch"](function (err) { console.log(err.message); }); } }); _commander.program.parse(process.argv); //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29tbWFuZGVyIiwicmVxdWlyZSIsIl8iLCJfZm9ybWF0cyIsIl9yZWdleCIsIl9jbGkiLCJfdXRpbCIsInByb2dyYW0iLCJ2ZXJzaW9uIiwiZ2V0VmVyc2lvbiIsInVzYWdlIiwiVVNBR0UiLCJkZXNjcmlwdGlvbiIsIkRFU0NSSVBUSU9OIiwiYXJndW1lbnQiLCJvcHRpb24iLCJhZGRPcHRpb24iLCJPcHRpb24iLCJjaG9pY2VzIiwiRk9STUFUUyIsIkZPUk1BVF9QTEFJTiIsImFjdGlvbiIsIm51bSIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsInVuaXRzIiwiUkVHRVgiLCJVTklUUyIsInRlc3QiLCJjb25zb2xlIiwiZXJyb3IiLCJjb25jYXQiLCJwcm9jZXNzIiwiZXhpdCIsImNvdW50IiwicGFyc2VJbnQiLCJvdXRwdXQiLCJ2ZWdhbklwc3VtIiwiZm9ybWF0IiwiZ2V0T3B0aW9uVmFsdWUiLCJsb2ciLCJjb3B5VG9DbGlwYm9hcmQiLCJ0aGVuIiwiZXJyIiwibWVzc2FnZSIsInBhcnNlIiwiYXJndiJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9iaW4vdmVnYW4taXBzdW0uYmluLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9wdGlvbiwgcHJvZ3JhbSB9IGZyb20gXCJjb21tYW5kZXJcIjtcblxuaW1wb3J0IHsgdmVnYW5JcHN1bSB9IGZyb20gXCIuLlwiO1xuaW1wb3J0IHsgRk9STUFUUywgRk9STUFUX1BMQUlOIH0gZnJvbSBcIi4uL2NvbnN0YW50cy9mb3JtYXRzXCI7XG5pbXBvcnQgeyBSRUdFWCB9IGZyb20gXCIuLi9jb25zdGFudHMvcmVnZXhcIjtcblxuaW1wb3J0IHsgREVTQ1JJUFRJT04sIFVTQUdFIH0gZnJvbSBcIi4vY29uc3RhbnRzL2NsaVwiO1xuaW1wb3J0IHsgY29weVRvQ2xpcGJvYXJkLCBnZXRWZXJzaW9uIH0gZnJvbSBcIi4vdXRpbFwiO1xuXG4vKipcbiAqIENMSSBwcm9ncmFtIGZvciBnZW5lcmF0aW5nIHZlZ2FuIGlwc3VtIHRleHQuXG4gKlxuICogLSBBcmd1bWVudHM6XG4gKiAgIC0gYGNvdW50YDogVGhlIG51bWJlciBvZiB1bml0cyB0byBnZW5lcmF0ZSAoZS5nLiwgd29yZHMsIHNlbnRlbmNlcywgb3IgcGFyYWdyYXBocykuXG4gKiAgIC0gYHVuaXRzYDogVGhlIHR5cGUgb2YgdW5pdHMgdG8gZ2VuZXJhdGUgKGUuZy4sIFwid29yZHNcIiwgXCJzZW50ZW5jZXNcIiwgb3IgXCJwYXJhZ3JhcGhzXCIpLlxuICpcbiAqIC0gT3B0aW9uczpcbiAqICAgLSBgLWMsIC0tY29weWA6IENvcGllcyB0aGUgZ2VuZXJhdGVkIHRleHQgdG8gdGhlIGNsaXBib2FyZC5cbiAqICAgLSBgLWYsIC0tZm9ybWF0IDxmb3JtYXQ+YDogU3BlY2lmaWVzIHRoZSBmb3JtYXQgb2YgdGhlIG91dHB1dCAoZS5nLiwgXCJwbGFpblwiIG9yIFwiaHRtbFwiKS5cbiAqL1xucHJvZ3JhbVxuICAudmVyc2lvbihnZXRWZXJzaW9uKCkpXG4gIC51c2FnZShVU0FHRSlcbiAgLmRlc2NyaXB0aW9uKERFU0NSSVBUSU9OKVxuICAuYXJndW1lbnQoXCJjb3VudFwiLCBcIlRoZSBudW1iZXIgb2YgdW5pdHNcIilcbiAgLmFyZ3VtZW50KFwidW5pdHNcIiwgXCJXb3Jkcywgc2VudGVuY2VzLCBvciBwYXJhZ3JhcGhzXCIpXG4gIC5vcHRpb24oXCItYyAtLWNvcHlcIiwgXCJDb3B5XCIpXG4gIC5hZGRPcHRpb24obmV3IE9wdGlvbihcIi1mIC0tZm9ybWF0IDxmb3JtYXQ+XCIsIFwiRm9ybWF0XCIpLmNob2ljZXMoRk9STUFUUykuZGVmYXVsdChGT1JNQVRfUExBSU4pKVxuICAuYWN0aW9uKFxuICAgIC8qKlxuICAgICAqIEFjdGlvbiBoYW5kbGVyIGZvciB0aGUgQ0xJIHByb2dyYW0uXG4gICAgICpcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gbnVtIC0gVGhlIG51bWJlciBvZiB1bml0cyB0byBnZW5lcmF0ZSAoZGVmYXVsdDogXCIxXCIpLlxuICAgICAqIEBwYXJhbSB7XCJ3b3Jkc1wiIHwgXCJ3b3JkXCIgfCBcInNlbnRlbmNlc1wiIHwgXCJzZW50ZW5jZVwiIHwgXCJwYXJhZ3JhcGhzXCIgfCBcInBhcmFncmFwaFwiIHwgdW5kZWZpbmVkfSB1bml0cyAtIFRoZSB0eXBlIG9mIHVuaXRzIHRvIGdlbmVyYXRlIChkZWZhdWx0OiBcInNlbnRlbmNlXCIpLlxuICAgICAqL1xuICAgIChudW06IHN0cmluZyA9IFwiMVwiLCB1bml0czogXCJ3b3Jkc1wiIHwgXCJzZW50ZW5jZXNcIiB8IFwicGFyYWdyYXBoc1wiIHwgdW5kZWZpbmVkID0gXCJzZW50ZW5jZXNcIikgPT4ge1xuICAgICAgaWYgKFJFR0VYLlVOSVRTLnRlc3QodW5pdHMpID09PSBmYWxzZSkge1xuICAgICAgICBjb25zb2xlLmVycm9yKGAke3VuaXRzfSBpcyBub3QgdmFsaWQuIENob29zZSBmcm9tIHBhcmFncmFwaChzKSwgc2VudGVuY2UocyksIG9yIHdvcmQocykuYCk7XG4gICAgICAgIHByb2Nlc3MuZXhpdCgxKTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgY291bnQgPSBwYXJzZUludChudW0sIDEwKTtcbiAgICAgIGlmICghY291bnQgfHwgY291bnQgPCAxKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoYCR7Y291bnR9IGlzIG5vdCB2YWxpZC4gQ2hvb3NlIGEgbnVtYmVyIGdyZWF0ZXIgdGhhbiAxLmApO1xuICAgICAgICBwcm9jZXNzLmV4aXQoMSk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IG91dHB1dCA9IHZlZ2FuSXBzdW0oe1xuICAgICAgICBjb3VudCxcbiAgICAgICAgZm9ybWF0OiBwcm9ncmFtLmdldE9wdGlvblZhbHVlKFwiZm9ybWF0XCIpLFxuICAgICAgICB1bml0cyxcbiAgICAgIH0pO1xuXG4gICAgICBjb25zb2xlLmxvZyhvdXRwdXQpO1xuXG4gICAgICBpZiAocHJvZ3JhbS5nZXRPcHRpb25WYWx1ZShcImNvcHlcIikgPT09IHRydWUpIHtcbiAgICAgICAgY29weVRvQ2xpcGJvYXJkKG91dHB1dClcbiAgICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcIlwiKTtcblxuICAgICAgICAgICAgY29uc29sZS5sb2coXCLinJMgY29waWVkXCIpO1xuICAgICAgICAgIH0pXG4gICAgICAgICAgLmNhdGNoKChlcnIpID0+IHtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGVyci5tZXNzYWdlKTtcbiAgICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gICk7XG5cbnByb2dyYW0ucGFyc2UocHJvY2Vzcy5hcmd2KTtcbiJdLCJtYXBwaW5ncyI6Ijs7QUFBQSxJQUFBQSxVQUFBLEdBQUFDLE9BQUE7QUFFQSxJQUFBQyxDQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxRQUFBLEdBQUFGLE9BQUE7QUFDQSxJQUFBRyxNQUFBLEdBQUFILE9BQUE7QUFFQSxJQUFBSSxJQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxLQUFBLEdBQUFMLE9BQUE7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0FNLGtCQUFPLENBQ0pDLE9BQU8sQ0FBQyxJQUFBQyxnQkFBVSxFQUFDLENBQUMsQ0FBQyxDQUNyQkMsS0FBSyxDQUFDQyxVQUFLLENBQUMsQ0FDWkMsV0FBVyxDQUFDQyxnQkFBVyxDQUFDLENBQ3hCQyxRQUFRLENBQUMsT0FBTyxFQUFFLHFCQUFxQixDQUFDLENBQ3hDQSxRQUFRLENBQUMsT0FBTyxFQUFFLGlDQUFpQyxDQUFDLENBQ3BEQyxNQUFNLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxDQUMzQkMsU0FBUyxDQUFDLElBQUlDLGlCQUFNLENBQUMsc0JBQXNCLEVBQUUsUUFBUSxDQUFDLENBQUNDLE9BQU8sQ0FBQ0MsZ0JBQU8sQ0FBQyxXQUFRLENBQUNDLHFCQUFZLENBQUMsQ0FBQyxDQUM5RkMsTUFBTTtBQUNMO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNJLFlBQThGO0VBQUEsSUFBN0ZDLEdBQVcsR0FBQUMsU0FBQSxDQUFBQyxNQUFBLFFBQUFELFNBQUEsUUFBQUUsU0FBQSxHQUFBRixTQUFBLE1BQUcsR0FBRztFQUFBLElBQUVHLEtBQXVELEdBQUFILFNBQUEsQ0FBQUMsTUFBQSxRQUFBRCxTQUFBLFFBQUFFLFNBQUEsR0FBQUYsU0FBQSxNQUFHLFdBQVc7RUFDdkYsSUFBSUksWUFBSyxDQUFDQyxLQUFLLENBQUNDLElBQUksQ0FBQ0gsS0FBSyxDQUFDLEtBQUssS0FBSyxFQUFFO0lBQ3JDSSxPQUFPLENBQUNDLEtBQUssSUFBQUMsTUFBQSxDQUFJTixLQUFLLHNFQUFtRSxDQUFDO0lBQzFGTyxPQUFPLENBQUNDLElBQUksQ0FBQyxDQUFDLENBQUM7RUFDakI7RUFFQSxJQUFNQyxLQUFLLEdBQUdDLFFBQVEsQ0FBQ2QsR0FBRyxFQUFFLEVBQUUsQ0FBQztFQUMvQixJQUFJLENBQUNhLEtBQUssSUFBSUEsS0FBSyxHQUFHLENBQUMsRUFBRTtJQUN2QkwsT0FBTyxDQUFDQyxLQUFLLElBQUFDLE1BQUEsQ0FBSUcsS0FBSyxtREFBZ0QsQ0FBQztJQUN2RUYsT0FBTyxDQUFDQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0VBQ2pCO0VBRUEsSUFBTUcsTUFBTSxHQUFHLElBQUFDLFlBQVUsRUFBQztJQUN4QkgsS0FBSyxFQUFMQSxLQUFLO0lBQ0xJLE1BQU0sRUFBRWhDLGtCQUFPLENBQUNpQyxjQUFjLENBQUMsUUFBUSxDQUFDO0lBQ3hDZCxLQUFLLEVBQUxBO0VBQ0YsQ0FBQyxDQUFDO0VBRUZJLE9BQU8sQ0FBQ1csR0FBRyxDQUFDSixNQUFNLENBQUM7RUFFbkIsSUFBSTlCLGtCQUFPLENBQUNpQyxjQUFjLENBQUMsTUFBTSxDQUFDLEtBQUssSUFBSSxFQUFFO0lBQzNDLElBQUFFLHFCQUFlLEVBQUNMLE1BQU0sQ0FBQyxDQUNwQk0sSUFBSSxDQUFDLFlBQU07TUFDVmIsT0FBTyxDQUFDVyxHQUFHLENBQUMsRUFBRSxDQUFDO01BRWZYLE9BQU8sQ0FBQ1csR0FBRyxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDLENBQUMsU0FDSSxDQUFDLFVBQUNHLEdBQUcsRUFBSztNQUNkZCxPQUFPLENBQUNXLEdBQUcsQ0FBQ0csR0FBRyxDQUFDQyxPQUFPLENBQUM7SUFDMUIsQ0FBQyxDQUFDO0VBQ047QUFDRixDQUNGLENBQUM7QUFFSHRDLGtCQUFPLENBQUN1QyxLQUFLLENBQUNiLE9BQU8sQ0FBQ2MsSUFBSSxDQUFDIiwiaWdub3JlTGlzdCI6W119