{"version":3,"file":"icon2.mjs","names":[],"sources":["../../../../../../packages/components/icon/src/icon.vue"],"sourcesContent":["<template>\n  <i :class=\"ns.b()\" :style=\"style\" v-bind=\"$attrs\">\n    <slot />\n  </i>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport { addUnit } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { CSSProperties } from 'vue'\nimport type { IconProps } from './icon'\n\ndefineOptions({\n  name: 'ElIcon',\n  inheritAttrs: false,\n})\nconst props = withDefaults(defineProps<IconProps>(), {\n  size: undefined,\n})\nconst ns = useNamespace('icon')\n\nconst style = computed<CSSProperties>(() => {\n  const { size, color } = props\n  const fontSize = addUnit(size)\n  if (!fontSize && !color) return {}\n\n  return {\n    fontSize,\n    '--color': color,\n  }\n})\n</script>\n"],"mappings":""}