{"version":3,"file":"badge.vue.mjs","sources":["../../../../../../packages/components/badge/src/badge.vue"],"sourcesContent":["<script lang=\"ts\">\n  import { computed, defineComponent } from 'vue'\n  import { getComponentNamespace, getNamespace } from '../../../utils/global-config'\n  import { isNumber } from '../../../utils/is'\n  import { badgeProps } from './props'\n\n  export default defineComponent({\n    name: getComponentNamespace('Badge'),\n    props: badgeProps,\n    setup(props) {\n      const ns = getNamespace('badge')\n\n      const contentCls = computed(() => [\n        `${ns}__content`,\n        props.effect && `is-${props.effect}`,\n        props.type && `${ns}--${props.type}`,\n        props.isDot && 'is-dot'\n      ])\n\n      const content = computed<string>(() => {\n        if (props.isDot) return ''\n        const value = props.value\n        const max = props.max\n        if (isNumber(value) && isNumber(max)) {\n          return value > max ? `${max}+` : `${value}`\n        }\n        return `${value}`\n      })\n\n      return {\n        ns,\n        contentCls,\n        content\n      }\n    }\n  })\n</script>\n\n<template>\n  <div :class=\"[ns]\">\n    <slot></slot>\n    <span v-show=\"!hidden && (content || isDot)\" :class=\"contentCls\">\n      {{ content }}\n    </span>\n  </div>\n</template>\n"],"names":["_normalizeClass","contentCls","content"],"mappings":";;;;SAuCa,YAAK,IAAA,EAAA,MAAA,EAAA,MAAA,EAAA,MAAA,EAAA,OAAA,QAAA,EAAA;;;;MACd,KAAa,EAAAA,cAAA,CAAA,CAAA,IAAA,CAAA,EAAA,CAAA,CAAA;AAAA,KAAA;AAAA;iBACsC,IAAEC,CAAAA,MAAAA,EAAAA,SAAAA,CAAAA;AAAAA,MAAAA,cAAAA,CAAAA,kBAAAA;AAAAA,QACzC,MAAA;AAAA,QAAA;AAAA,UAAA,KAAA,EAAAD,cADS,CAAA,IAAA,CAAKE,UAAO,CAAA;AAAA,SAAA;AAAA;;;;;;;;;;;;;;;"}