{"version":3,"file":"Icon.cjs","sourceRoot":"","sources":["../../../src/components/Icon/Icon.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qFAAmE;AACnE,+CAAuC;AAEvC,iDAAkD;AAElD,mDAAgD;AAEhD,yDAA0D;AAEnD,MAAM,IAAI,GAAG,CAAC,EACnB,IAAI,GAAG,gBAAQ,CAAC,EAAE,EAClB,IAAI,EACJ,KAAK,GAAG,iBAAS,CAAC,WAAW,EAC7B,WAAW,EACX,KAAK,EACL,GAAG,KAAK,EACE,EAAE,EAAE;IACd,MAAM,EAAE,GAAG,IAAA,wCAAW,GAAE,CAAC;IACzB,MAAM,GAAG,GAAG,6BAAe,CAAC,IAAI,CAAC,CAAC;IAClC,MAAM,OAAO,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE;QAC3B,MAAM,gBAAgB,GAAG,IAAA,uCAAsB,EAAC;YAC9C,KAAK;YACL,IAAI;YACJ,WAAW;SACZ,CAAC,CAAC;QACH,OAAO,EAAE,CAAA,GAAG,gBAAgB,EAAE,CAAC;IACjC,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC;IAEnC,OAAO,CACL,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,EAAG,CAC5E,CAAC;AACJ,CAAC,CAAC;AAtBW,QAAA,IAAI,QAsBf","sourcesContent":["import { useTailwind } from '@metamask/design-system-twrnc-preset';\nimport React, { useMemo } from 'react';\n\nimport { IconColor, IconSize } from '../../types';\n\nimport { assetByIconName } from './Icon.assets';\nimport type { IconProps } from './Icon.types';\nimport { generateIconClassNames } from './Icon.utilities';\n\nexport const Icon = ({\n  size = IconSize.Md,\n  name,\n  color = IconColor.IconDefault,\n  twClassName,\n  style,\n  ...props\n}: IconProps) => {\n  const tw = useTailwind();\n  const SVG = assetByIconName[name];\n  const twStyle = useMemo(() => {\n    const mergedClassnames = generateIconClassNames({\n      color,\n      size,\n      twClassName,\n    });\n    return tw`${mergedClassnames}`;\n  }, [color, size, tw, twClassName]);\n\n  return (\n    <SVG name={name} fill=\"currentColor\" style={[twStyle, style]} {...props} />\n  );\n};\n"]}