UNPKG

element-plus

Version:

A Component Library for Vue 3

1 lines 4.11 kB
{"version":3,"file":"badge.mjs","sources":["../../../../../../packages/components/badge/src/badge.vue"],"sourcesContent":["<template>\n <div :class=\"ns.b()\">\n <slot />\n <transition :name=\"`${ns.namespace.value}-zoom-in-center`\">\n <sup\n v-show=\"!hidden && (content || isDot || $slots.content)\"\n :class=\"[\n ns.e('content'),\n ns.em('content', type),\n ns.is('fixed', !!$slots.default),\n ns.is('dot', isDot),\n ns.is('hide-zero', !showZero && value === 0),\n badgeClass,\n ]\"\n :style=\"style\"\n >\n <slot name=\"content\" :value=\"content\">\n {{ content }}\n </slot>\n </sup>\n </transition>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\nimport { addUnit, isNumber } from '@element-plus/utils'\nimport { badgeProps } from './badge'\n\nimport type { StyleValue } from 'vue'\n\ndefineOptions({\n name: 'ElBadge',\n})\n\nconst props = defineProps(badgeProps)\n\nconst ns = useNamespace('badge')\n\nconst content = computed<string>(() => {\n if (props.isDot) return ''\n if (isNumber(props.value) && isNumber(props.max)) {\n return props.max < props.value ? `${props.max}+` : `${props.value}`\n }\n return `${props.value}`\n})\n\nconst style = computed<StyleValue>(() => {\n return [\n {\n backgroundColor: props.color,\n marginRight: addUnit(-props.offset[0]),\n marginTop: addUnit(props.offset[1]),\n },\n props.badgeStyle ?? {},\n ]\n})\n\ndefineExpose({\n /** @description badge content */\n content,\n})\n</script>\n"],"names":["_openBlock","_createElementBlock","_normalizeClass","_unref","_renderSlot","_createVNode","_Transition","_withDirectives","_createElementVNode","type","$slots","isDot","showZero","value","badgeClass","_normalizeStyle","_createTextVNode","hidden"],"mappings":"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"}