import { FaProps } from "../models/prop.model"; /** * Fontawesome class list. * Returns classes array by props. */ export const faClassList = (props: FaProps): string[] => { const classes = { "fa-spin": props.spin, "fa-pulse": props.pulse, "fa-fw": props.fixedWidth, "fa-border": props.border, "fa-li": props.listItem, "fa-inverse": props.inverse, "fa-layers-counter": props.counter, "fa-flip-horizontal": props.flip === "horizontal" || props.flip === "both", "fa-flip-vertical": props.flip === "vertical" || props.flip === "both", [`fa-${props.size}`]: props.size !== null, [`fa-rotate-${props.rotate}`]: props.rotate !== null, [`fa-pull-${props.pull}`]: props.pull !== null, }; return Object.keys(classes) .map((key) => (classes[key] ? key : null)) .filter((key) => key); }; export const faLayerClassList = (props: FaProps): string[] => { const classes = { "fa-fw": props.fixedWidth, [`fa-${props.size}`]: props.size !== null, }; return Object.keys(classes) .map((key) => (classes[key] ? key : null)) .filter((key) => key); };