UNPKG

@hitachivantara/uikit-react-icons

Version:

NEXT Design System icons packaged as a set of React components.

57 lines (56 loc) 1.47 kB
"use strict"; Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" }); const selectors = ["Checkbox", "RadioButton"]; const largerIcons = [ "Level0Good", "Level1", "Level2Average", "Level3Bad", "Level4", "Level5", "Canceled", "Running", "Pending" ]; const isSelector = (iconName) => selectors.some((el) => iconName.startsWith(el)); const isSort = (iconName) => iconName.startsWith("Sort"); const isSemantic = (iconName) => largerIcons.includes(iconName); const isXS = (iconName) => iconName.endsWith("XS"); const getCustomSize = (size, iconName) => isSemantic(iconName) ? size + 8 : size; const getSvgSize = (size) => { switch (size) { case "xs": case "XS": return 12; case "sm": case "S": case void 0: return 16; case "md": case "M": return 32; case "lg": case "L": return 96; case "xl": return 112; default: return size; } }; const getSizeStyles = (iconName, size = isXS(iconName) ? "XS" : "S") => { const baseSize = getSvgSize(size); const fontSize = getCustomSize(baseSize, iconName); if (fontSize === 16) return; const containerSize = baseSize + 2 * (baseSize === 12 ? 10 : 8); return { fontSize, /** icon container size. @private */ "--icsize": `${containerSize}px` }; }; exports.getSizeStyles = getSizeStyles; exports.isSelector = isSelector; exports.isSemantic = isSemantic; exports.isSort = isSort; exports.isXS = isXS;