UNPKG

create-fomantic-icons

Version:

A simple CLI to generate the icon.variables and icon.html.eco files for FUI

36 lines (32 loc) 1.06 kB
// @ts-ignore import numWords from 'num-words'; export default class Converter { private static NUMERIC_ONLY = /^\d+$/; public static iconClassName(name: string): string { return name .toLowerCase() .replace(/-alt$/, '-alternate') .replace(/-alt-/, '-alternate-') .replace(/-h$/, '-horizontal') .replace(/-h-/, '-horizontal-') .replace(/-v$/, '-vertical') .replace(/-v-/, '-vertical-') .replace(/-alpha$/, '-alphabet') .replace(/-alpha-/, '-alphabet-') .replace(/-asc$/, '-ascending') .replace(/-asc-/, '-ascending-') .replace(/-desc$/, '-descending') .replace(/-desc-/, '-descending-') .replace(/-/g, '.') .replace(/\s/g, '.') .split('.') .map((entity: string) => (Converter.NUMERIC_ONLY.test(entity) ? numWords(parseInt(entity, 10)) : entity)) .join('.'); } public static iconName(name: string): string { return Converter.iconClassName(name) .replace(/\./g, ' '); } }