@sharksv/hyper
Version:
A CLI to bootstrap new projects!
37 lines (36 loc) • 1.11 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const Clear_1 = require("./Clear");
const Clrs_1 = require("../Utils/Clrs");
/**
* 📟 Prints out an info header for Node.js CLIs
* @param {object} uOptions
* @example
* ```ts
* Info({
* title: '@projectName',
* tagLine: 'by ✨@author✨',
* description: 'A very useful description!',
* version: '1.0',
* clear: true,
* })
* ```
*/
function Info(uOptions) {
const { dim, bgGreen } = Clrs_1.default;
const defaultOptions = {
title: 'Hallo',
tagLine: 'by @Shorky',
description: 'An awesome description!',
version: 'v3-Mil',
clear: true
};
const options = Object.assign(Object.assign({}, defaultOptions), uOptions);
// prettier-ignore
const { title, tagLine, description, version, clear } = options;
/** @param {boolean} clear - Clear the terminal before printing */
clear && (0, Clear_1.default)();
/** @returns */
console.log(`\n${bgGreen(` ${title} `)} v${version} ${dim(tagLine)} \n${dim(description)}\n`);
}
exports.default = Info;