<template>
  <view class="zui-icon" :class="classRender" :style="styleRender">
    <view v-if="info || dot" class="zui-info" :class="dot ? 'dot' : ''">{{ dot ? '' : info }}</view>
  </view>
</template>

<script>
export default {
  name: 'zui-icon',
  props: {
    name: {
      type: String,
      default: '',
    },
    fontFamily: {
      type: String,
      default: 'iconfont',
    },
    classPrefix: {
      type: String,
      default: 'icon-'
    },
    size: String,
    color: String,
    info: [Number, String],
    dot: Boolean,
  },
  computed: {
    classRender: function() {
      var fontFamily = this.fontFamily || '';
      var iconClass = this.classPrefix + this.name;
      return [fontFamily, iconClass];
    },
    styleRender: function() {
			return `${this.size ? `font-size: ${this.size};` : ''} ${this.color ? `color: ${this.color}` : ''};`;
    },
  },
}
</script>

<style lang="scss">
@import "./index.scss";
</style>