| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 | 
							- import { isDef, createNamespace } from '../utils';
 
- import { isNumeric } from '../utils/validate/number';
 
- var _createNamespace = createNamespace('badge'),
 
-     createComponent = _createNamespace[0],
 
-     bem = _createNamespace[1];
 
- export default createComponent({
 
-   props: {
 
-     dot: Boolean,
 
-     max: [Number, String],
 
-     color: String,
 
-     content: [Number, String],
 
-     tag: {
 
-       type: String,
 
-       default: 'div'
 
-     }
 
-   },
 
-   methods: {
 
-     hasContent: function hasContent() {
 
-       return !!(this.$scopedSlots.content || isDef(this.content) && this.content !== '');
 
-     },
 
-     renderContent: function renderContent() {
 
-       var dot = this.dot,
 
-           max = this.max,
 
-           content = this.content;
 
-       if (!dot && this.hasContent()) {
 
-         if (this.$scopedSlots.content) {
 
-           return this.$scopedSlots.content();
 
-         }
 
-         if (isDef(max) && isNumeric(content) && +content > max) {
 
-           return max + "+";
 
-         }
 
-         return content;
 
-       }
 
-     },
 
-     renderBadge: function renderBadge() {
 
-       var h = this.$createElement;
 
-       if (this.hasContent() || this.dot) {
 
-         return h("div", {
 
-           "class": bem({
 
-             dot: this.dot,
 
-             fixed: !!this.$scopedSlots.default
 
-           }),
 
-           "style": {
 
-             background: this.color
 
-           }
 
-         }, [this.renderContent()]);
 
-       }
 
-     }
 
-   },
 
-   render: function render() {
 
-     var h = arguments[0];
 
-     if (this.$scopedSlots.default) {
 
-       var tag = this.tag;
 
-       return h(tag, {
 
-         "class": bem('wrapper')
 
-       }, [this.$scopedSlots.default(), this.renderBadge()]);
 
-     }
 
-     return this.renderBadge();
 
-   }
 
- });
 
 
  |