UNPKG

@decaf-ts/utils

Version:

module management utils for decaf-ts

54 lines (53 loc) 1.95 kB
import { Logger } from "@decaf-ts/logging"; /** * @description Prints a styled banner to the console. * @summary Generates and prints a colorful ASCII art banner with a random slogan. * @param {Logger} [logger] - Optional logger for verbose output. * @memberOf module:utils * @function printBanner * @mermaid * sequenceDiagram * participant printBanner * participant getSlogan * participant padEnd * participant console * printBanner->>getSlogan: Call getSlogan() * getSlogan-->>printBanner: Return random slogan * printBanner->>printBanner: Create banner ASCII art * printBanner->>printBanner: Split banner into lines * printBanner->>printBanner: Calculate max line length * printBanner->>padEnd: Call padEnd with slogan * padEnd-->>printBanner: Return padded slogan line * loop For each banner line * printBanner->>style: Call style(line) * style-->>printBanner: Return styled line * printBanner->>console: Log styled line * end */ export declare function printBanner(logger?: Logger): void; /** * @description Retrieves a slogan from the predefined list. * @summary Fetches a random slogan or a specific one by index from the slogans list. * @param {number} [i] - Optional index to retrieve a specific slogan. * @return {string} The selected slogan. * @function getSlogan * @memberOf module:utils * @mermaid * sequenceDiagram * participant getSlogan * participant Math.random * participant slogans * alt i is undefined * getSlogan->>Math.random: Generate random index * Math.random-->>getSlogan: Return random index * else i is defined * Note over getSlogan: Use provided index * end * getSlogan->>slogans: Access slogan at index * slogans-->>getSlogan: Return slogan * alt Error occurs * getSlogan->>getSlogan: Throw error * end * getSlogan-->>Caller: Return slogan */ export declare function getSlogan(i?: number): string;