|
|
-{"version":3,"file":"index-82d2c624.js","sources":["../../../../packages/components/src/svg-icon/index.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { CSSProperties } from 'vue'\nimport { computed, useAttrs, unref } from 'vue'\n\nconst attrs = useAttrs()\n\nconst props = defineProps({\n prefix: {\n type: String,\n default: 'icon',\n },\n icon: {\n type: String,\n required: true,\n },\n size: {\n type: [Number, String],\n default: 16,\n },\n infinite: {\n type: Boolean,\n default: false,\n },\n})\n\nconst symbolId = computed(() => `#${props.prefix}-${props.icon}`)\n\nconst classes = computed(() => {\n const cls = ['svg-icon', unref(attrs).class]\n props.infinite && cls.push('svg-icon__infinite')\n return cls\n})\n\nconst svgStyle = computed((): CSSProperties => {\n const { size } = props\n const _size = `${`${size}`.replace('px', '')}px`\n return {\n width: _size,\n height: _size,\n }\n})\n</script>\n\n<template>\n <svg :class=\"classes\" :style=\"svgStyle\">\n <use :xlink:href=\"symbolId\" />\n </svg>\n</template>\n\n<style scoped>\n.svg-icon {\n display: inline-block;\n overflow: hidden;\n vertical-align: -0.15em;\n fill: currentColor;\n}\n.svg-icon__infinite {\n animation: loadingCircle 1s infinite linear;\n}\n</style>\n"],"names":["attrs","useAttrs","props","__props","symbolId","computed","classes","cls","unref","svgStyle","size","_size"],"mappings":"sTAIA,MAAAA,EAAAC,IAEAC,EAAAC,EAmBAC,EAAAC,EAAA,IAAA,IAAAH,EAAA,UAAAA,EAAA,MAAA,EAEAI,EAAAD,EAAA,IAAA,CACE,MAAAE,EAAA,CAAA,WAAAC,EAAAR,CAAA,EAAA,KAAA,EACA,OAAAE,EAAA,UAAAK,EAAA,KAAA,oBAAA,EACAA,CAAO,CAAA,EAGTE,EAAAJ,EAAA,IAAA,CACE,KAAA,CAAA,KAAAK,CAAA,EAAAR,EACAS,EAAA,GAAA,GAAAD,IAAA,QAAA,KAAA,EAAA,MACA,MAAA,CAAO,MAAAC,EACE,OAAAA,CACC,CACV,CAAA"}
|
|
|
+{"version":3,"file":"index-522d5380.js","sources":["../../../../packages/components/src/svg-icon/index.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { CSSProperties } from 'vue'\nimport { computed, useAttrs, unref } from 'vue'\n\nconst attrs = useAttrs()\n\nconst props = defineProps({\n prefix: {\n type: String,\n default: 'icon',\n },\n icon: {\n type: String,\n required: true,\n },\n size: {\n type: [Number, String],\n default: 16,\n },\n infinite: {\n type: Boolean,\n default: false,\n },\n})\n\nconst symbolId = computed(() => `#${props.prefix}-${props.icon}`)\n\nconst classes = computed(() => {\n const cls = ['svg-icon', unref(attrs).class]\n props.infinite && cls.push('svg-icon__infinite')\n return cls\n})\n\nconst svgStyle = computed((): CSSProperties => {\n const { size } = props\n const _size = `${`${size}`.replace('px', '')}px`\n return {\n width: _size,\n height: _size,\n }\n})\n</script>\n\n<template>\n <svg :class=\"classes\" :style=\"svgStyle\">\n <use :xlink:href=\"symbolId\" />\n </svg>\n</template>\n\n<style scoped>\n.svg-icon {\n display: inline-block;\n overflow: hidden;\n vertical-align: -0.15em;\n fill: currentColor;\n}\n.svg-icon__infinite {\n animation: loadingCircle 1s infinite linear;\n}\n</style>\n"],"names":["attrs","useAttrs","props","__props","symbolId","computed","classes","cls","unref","svgStyle","size","_size"],"mappings":"sTAIA,MAAAA,EAAAC,IAEAC,EAAAC,EAmBAC,EAAAC,EAAA,IAAA,IAAAH,EAAA,UAAAA,EAAA,MAAA,EAEAI,EAAAD,EAAA,IAAA,CACE,MAAAE,EAAA,CAAA,WAAAC,EAAAR,CAAA,EAAA,KAAA,EACA,OAAAE,EAAA,UAAAK,EAAA,KAAA,oBAAA,EACAA,CAAO,CAAA,EAGTE,EAAAJ,EAAA,IAAA,CACE,KAAA,CAAA,KAAAK,CAAA,EAAAR,EACAS,EAAA,GAAA,GAAAD,IAAA,QAAA,KAAA,EAAA,MACA,MAAA,CAAO,MAAAC,EACE,OAAAA,CACC,CACV,CAAA"}
|