element-plus
Version:
A Component Library for Vue 3
1 lines • 4.55 kB
Source Map (JSON)
{"version":3,"file":"statistic.mjs","sources":["../../../../../../packages/components/statistic/src/statistic.vue"],"sourcesContent":["<template>\n <div :class=\"ns.b()\">\n <div v-if=\"$slots.title || title\" :class=\"ns.e('head')\">\n <slot name=\"title\">\n {{ title }}\n </slot>\n </div>\n <div :class=\"ns.e('content')\">\n <div v-if=\"$slots.prefix || prefix\" :class=\"ns.e('prefix')\">\n <slot name=\"prefix\">\n <span>{{ prefix }}</span>\n </slot>\n </div>\n <span :class=\"ns.e('number')\" :style=\"valueStyle\">\n {{ displayValue }}\n </span>\n <div v-if=\"$slots.suffix || suffix\" :class=\"ns.e('suffix')\">\n <slot name=\"suffix\">\n <span>{{ suffix }}</span>\n </slot>\n </div>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\nimport { isFunction, isNumber } from '@element-plus/utils'\nimport { statisticProps } from './statistic'\n\ndefineOptions({\n name: 'ElStatistic',\n})\n\nconst props = defineProps(statisticProps)\nconst ns = useNamespace('statistic')\n\nconst displayValue = computed(() => {\n const { value, formatter, precision, decimalSeparator, groupSeparator } =\n props\n\n if (isFunction(formatter)) return formatter(value)\n\n // https://github.com/element-plus/element-plus/issues/17784\n if (!isNumber(value) || Number.isNaN(value)) return value\n\n let [integer, decimal = ''] = String(value).split('.')\n decimal = decimal\n .padEnd(precision, '0')\n .slice(0, precision > 0 ? precision : 0)\n integer = integer.replace(/\\B(?=(\\d{3})+(?!\\d))/g, groupSeparator)\n return [integer, decimal].join(decimal ? decimalSeparator : '')\n})\n\ndefineExpose({\n /**\n * @description current display value\n */\n displayValue,\n})\n</script>\n"],"names":["_openBlock","_createElementBlock","_normalizeClass","_unref","$slots","title","_renderSlot","_createTextVNode","_createElementVNode","prefix","_toDisplayString","_normalizeStyle","valueStyle","suffix"],"mappings":";;;;;;;;;;;;;;AAmCA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACR,IAAA,MAAA,EAAA,GAAK,aAAa,WAAW,CAAA,CAAA;AAE7B,IAAA,MAAA,YAAA,GAAe,SAAS,MAAM;AAClC,MAAA,MAAM,EAAE,KAAO,EAAA,SAAA,EAAW,SAAW,EAAA,gBAAA,EAAkB,gBACrD,GAAA,KAAA,CAAA;AAEF,MAAA,IAAI,WAAW,SAAS,CAAA;AAAG,QAAA,OAAO,UAAU,KAAK,CAAA,CAAA;AAG7C,MAAA,IAAA,CAAC,QAAS,CAAA,KAAK,CAAK,IAAA,MAAA,CAAO,MAAM,KAAK,CAAA;AAAU,QAAA,OAAA,KAAA,CAAA;AAEhD,MAAA,IAAA,CAAC,SAAS,OAAU,GAAA,EAAE,IAAI,MAAO,CAAA,KAAK,CAAE,CAAA,KAAA,CAAM,GAAG,CAAA,CAAA;AAC3C,MAAA,OAAA,GAAA,OAAA,CACP,MAAO,CAAA,SAAA,EAAW,GAAG,CAAA,CACrB,MAAM,CAAG,EAAA,SAAA,GAAY,CAAI,GAAA,SAAA,GAAY,CAAC,CAAA,CAAA;AAC/B,MAAA,OAAA,GAAA,OAAA,CAAQ,OAAQ,CAAA,uBAAA,EAAyB,cAAc,CAAA,CAAA;AACjE,MAAA,OAAO,CAAC,OAAS,EAAA,OAAO,EAAE,IAAK,CAAA,OAAA,GAAU,mBAAmB,EAAE,CAAA,CAAA;AAAA,KAC/D,CAAA,CAAA;AAEY,IAAA,QAAA,CAAA;AAAA,MAIX,YAAA;AAAA,KACD,CAAA,CAAA;;AA3DC,MAAA,OAAAA,WAAA,EAAAC,kBAAA;AAAA,QAqBM,KAAA;AAAA,QAAA;AAAA,UArBA,OAAKC,cAAE,CAAAC,KAAA,CAAA,EAAA,CAAA,CAAG,GAAC,CAAA;AAAA,SAAA;AAAA;UACJC,KAAAA,MAAO,CAAA,KAAA,IAASC,IAA3B,CAAA,KAAA,IAAAL,WAAA,EAAAC,kBAAA;AAAA,YAIM,KAAA;AAAA,YAAA;AAAA,cAAA,GAAA,EAAA,CAAA;AAAA,cAJ6B,OAAKC,cAAE,CAAAC,KAAA,IAAG,CAAA,CAAA,CAAC,MAAA,CAAA,CAAA;AAAA,aAAA;AAAA;cAC5CG,WAEO,0BAFP,MAEO;AAAA,gBAAAC,eAAA;AAAA,kCADFF,KAAK,KAAA,CAAA;AAAA,kBAAA,CAAA;AAAA,iBAAA;AAAA,eAAA,CAAA;AAAA;;;UAGZG,kBAAA;AAAA,YAcM,KAAA;AAAA,YAAA;AAAA,cAdA,OAAKN,cAAE,CAAAC,KAAA,CAAA,EAAA,CAAG,CAAA,CAAA,CAAC,SAAA,CAAA,CAAA;AAAA,aAAA;AAAA;cACJC,KAAAA,MAAO,CAAA,MAAA,IAAUK,IAA5B,CAAA,MAAA,IAAAT,WAAA,EAAAC,kBAAA;AAAA,gBAIM,KAAA;AAAA,gBAAA;AAAA,kBAAA,GAAA,EAAA,CAAA;AAAA,kBAJ+B,OAAKC,cAAE,CAAAC,KAAA,IAAG,CAAA,CAAA,CAAC,QAAA,CAAA,CAAA;AAAA,iBAAA;AAAA;kBAC9CG,WAEO,2BAFP,MAEO;AAAA,oBADLE,kBAAA;AAAA,sBAAyB,MAAA;AAAA,sBAAA,IAAA;AAAA,sBAAAE,eAAA,CAAhBD,KAAM,MAAA,CAAA;AAAA,sBAAA,CAAA;AAAA,qBAAA;AAAA,mBAAA,CAAA;AAAA;;;cAGnBD,kBAAA;AAAA,gBAEO,MAAA;AAAA,gBAAA;AAAA,kBAFA,OAAKN,cAAE,CAAAC,KAAA,CAAA,EAAA,CAAG,CAAA,CAAA,CAAC,QAAA,CAAA,CAAA;AAAA,kBAAa,KAAA,EAAKQ,cAAEC,CAAAA,IAAAA,CAAU,UAAA,CAAA;AAAA,iBAAA;AAAA,gCAC3C,aAAY,KAAA,CAAA;AAAA,gBAAA,CAAA;AAAA,eAAA;AAAA,cAENR,KAAAA,MAAO,CAAA,MAAA,IAAUS,IAA5B,CAAA,MAAA,IAAAb,WAAA,EAAAC,kBAAA;AAAA,gBAIM,KAAA;AAAA,gBAAA;AAAA,kBAAA,GAAA,EAAA,CAAA;AAAA,kBAJ+B,OAAKC,cAAE,CAAAC,KAAA,IAAG,CAAA,CAAA,CAAC,QAAA,CAAA,CAAA;AAAA,iBAAA;AAAA;kBAC9CG,WAEO,2BAFP,MAEO;AAAA,oBADLE,kBAAA;AAAA,sBAAyB,MAAA;AAAA,sBAAA,IAAA;AAAA,sBAAAE,eAAA,CAAhBG,KAAM,MAAA,CAAA;AAAA,sBAAA,CAAA;AAAA,qBAAA;AAAA,mBAAA,CAAA;AAAA;;;;;;;;;;;;;;;;"}