UNPKG

@zohodesk/components

Version:

In this Package, we Provide Some Basic Components to Build Web App

56 lines (53 loc) 1.66 kB
import { compileClassNames } from '@zohodesk/utils'; import { letterspacingMapping, lineheightMapping } from "../utils"; export default function cssJSLogic(_ref) { let { props, style } = _ref; let { $flag_reset, $flag_dotted, $ui_size, $ui_lineClamp, $ui_lineHeight, $ui_display, $ui_weight, $ui_typeFace, $ui_textAlign, $ui_letterSpacing, $ui_transform, $ui_decoration, $ui_className, $ui_wordBreak, $ui_wordWrap, $ui_whiteSpace } = props; if ($ui_letterSpacing) { $ui_letterSpacing = letterspacingMapping[$ui_letterSpacing]; } if ($ui_lineHeight) { $ui_lineHeight = lineheightMapping[$ui_lineHeight]; } let typographyClass = compileClassNames({ [style.reset]: $flag_reset, [style.dotted]: $flag_dotted, [style[`size${$ui_size}`]]: !!$ui_size, [style[`lineclamp_${$ui_lineClamp}`]]: !!$ui_lineClamp, [style[`lineheight_${$ui_lineHeight}`]]: !!$ui_lineHeight, [style[`display_${$ui_display}`]]: !!$ui_display, [style[`font_${$ui_weight}`]]: !!$ui_weight, [style[`fontStyles_${$ui_typeFace}`]]: !!$ui_typeFace, [style[`textalign_${$ui_textAlign}`]]: !!$ui_textAlign, [style[`letterspacing_${$ui_letterSpacing}`]]: !!$ui_letterSpacing, [style[`transform_${$ui_transform}`]]: !!$ui_transform, [style[`decoration_${$ui_decoration}`]]: !!$ui_decoration, [$ui_className]: !!$ui_className, [style[`wordBreak_${$ui_wordBreak}`]]: !!$ui_wordBreak, [style[`wordWrap_${$ui_wordWrap}`]]: !!$ui_wordWrap, [style[`whiteSpace_${$ui_whiteSpace}`]]: !!$ui_whiteSpace }); return { typographyClass }; }