{"version":3,"file":"icon2.mjs","sources":["../../../../../../packages/components/icon/src/icon.vue"],"sourcesContent":["<template>\n  <i :class=\"ns.b()\" :style=\"style\">\n    <slot />\n  </i>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport { addUnit, getVsColor, isUndefined } from '@vuesax-alpha/utils'\nimport { useNamespace } from '@vuesax-alpha/hooks'\nimport { iconProps } from './icon'\nimport type { CSSProperties } from 'vue'\n\ndefineOptions({\n  name: 'VsIcon',\n})\n\nconst props = defineProps(iconProps)\nconst ns = useNamespace('icon')\n\nconst style = computed<CSSProperties>(() => {\n  const { size, color } = props\n  if (!size && !color) return {}\n\n  return {\n    ...ns.cssVar({\n      color: getVsColor(color),\n    }),\n    color: `rgb(${ns.cssVarName('color')})`,\n    fontSize: isUndefined(size) ? undefined : addUnit(size),\n  }\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;mCAac,CAAA;AAAA,EACZ,IAAM,EAAA,QAAA;AACR,CAAA,CAAA,CAAA;;;;;;AAGM,IAAA,MAAA,EAAA,GAAK,aAAa,MAAM,CAAA,CAAA;AAExB,IAAA,MAAA,KAAA,GAAQ,SAAwB,MAAM;AACpC,MAAA,MAAA,EAAE,IAAM,EAAA,KAAA,EAAU,GAAA,KAAA,CAAA;AACxB,MAAI,IAAA,CAAC,QAAQ,CAAC,KAAA;eAAc,EAAC,CAAA;AAEtB,MAAA,OAAA;AAAA,QACL,GAAG,GAAG,MAAO,CAAA;AAAA,UACX,KAAA,EAAO,WAAW,KAAK,CAAA;AAAA,SACxB,CAAA;AAAA,QACD,KAAO,EAAA,CAAA,IAAA,EAAO,EAAG,CAAA,UAAA,CAAW,OAAO,CAAA,CAAA,CAAA,CAAA;AAAA,QACnC,UAAU,WAAY,CAAA,IAAI,CAAI,GAAA,KAAA,CAAA,GAAY,QAAQ,IAAI,CAAA;AAAA,OACxD,CAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;"}