UNPKG

@technobuddha/library

Version:
38 lines 2.96 kB
import { empty, space } from "../unicode.js"; import { numbering } from "./numbering.js"; /** * Convert a number into text (the cardinal number) * * @remarks There is no limit to the numbers that can be expressed, however Javascript/Typescript can only represent numbers * up to uncentillions (1e308). * * @param input - The number * @param options - see {@link CardinalOptions} * @returns The number spelled out * * @group Math * @category Numbers */ export function cardinal(input, options = {}) { const numberingOptions = { output: { integer: ((options?.output === 'alphabetic' || options?.output === 'numeric' || options?.output === 'hybrid') ? options.output : options.output?.integer) ?? 'alphabetic', fraction: (options?.output === 'alphabetic' || options?.output === 'numeric' ? options.output : options?.output === 'hybrid' ? 'alphabetic' : options.output?.fraction) ?? 'alphabetic', }, and: options?.and ?? empty, hyphen: options?.hyphen ?? space, tolerance: options?.tolerance ?? 0.01, denominators: options?.denominators ?? 'common', precision: options?.precision ?? 6, ordinal: options?.ordinal ?? false, shift: options?.shift ?? false, }; return numbering(input, numberingOptions); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZGluYWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbnVtYmVyaW5nL2NhcmRpbmFsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTdDLE9BQU8sRUFBa0IsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUF5RDNEOzs7Ozs7Ozs7Ozs7R0FZRztBQUNILE1BQU0sVUFBVSxRQUFRLENBQUMsS0FBYSxFQUFFLFVBQTJCLEVBQUU7SUFDbkUsTUFBTSxnQkFBZ0IsR0FBYztRQUNsQyxNQUFNLEVBQUU7WUFDTixPQUFPLEVBQ0wsQ0FBQyxDQUNDLE9BQU8sRUFBRSxNQUFNLEtBQUssWUFBWTtnQkFDaEMsT0FBTyxFQUFFLE1BQU0sS0FBSyxTQUFTO2dCQUM3QixPQUFPLEVBQUUsTUFBTSxLQUFLLFFBQVEsQ0FDN0IsQ0FBQyxDQUFDO2dCQUNELE9BQU8sQ0FBQyxNQUFNO2dCQUNoQixDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsSUFBSSxZQUFZO1lBQzVDLFFBQVEsRUFDTixDQUFDLE9BQU8sRUFBRSxNQUFNLEtBQUssWUFBWSxJQUFJLE9BQU8sRUFBRSxNQUFNLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTTtnQkFDbkYsQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxZQUFZO29CQUM3QyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsSUFBSSxZQUFZO1NBQzlDO1FBQ0QsR0FBRyxFQUFFLE9BQU8sRUFBRSxHQUFHLElBQUksS0FBSztRQUMxQixNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sSUFBSSxLQUFLO1FBQ2hDLFNBQVMsRUFBRSxPQUFPLEVBQUUsU0FBUyxJQUFJLElBQUk7UUFDckMsWUFBWSxFQUFFLE9BQU8sRUFBRSxZQUFZLElBQUksUUFBUTtRQUMvQyxTQUFTLEVBQUUsT0FBTyxFQUFFLFNBQVMsSUFBSSxDQUFDO1FBQ2xDLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxJQUFJLEtBQUs7UUFDbEMsS0FBSyxFQUFFLE9BQU8sRUFBRSxLQUFLLElBQUksS0FBSztLQUMvQixDQUFDO0lBRUYsT0FBTyxTQUFTLENBQUMsS0FBSyxFQUFFLGdCQUFnQixDQUFDLENBQUM7QUFDNUMsQ0FBQyJ9