<template>
  <el-checkbox-group
		:id="id"
		v-model="model"
		v-bind="$attrs"
		v-on="$listeners"
		v-bind:disabled="isDisable"
		@change="handleChange"
	>
    <slot></slot>
  </el-checkbox-group>
</template>

<script>
import commonDepend from '~/mixin/commonDepend.js'
export default {
	inject: {
		root: {
			default: () => null
		}
	},
	mixins: [commonDepend],
  props: {
    value: {
      type: Array,
      default: []
    },
    disabled: {
      type: Boolean,
      default: false
    },
    id: {
      type: String,
      default: undefined
    },
    // 此对象为markset或者modifySet所在的对象,如果传了此对象可以标记当前对象下的字段为红色下划线
    markSetData: {
      type: Object,
      default: () => null
    },
		customModifykey: {
			type: String,
      default: null
		}
  },
  computed: {
    model: {
      get () {
        return this.value
      },
      set (newVal) {
        this.$emit('input', newVal)
      }
    },
    mode () {
      return this.$store.state.Status.mode
    },
    isDisable() {
			return this.mode === 'display' || this.disabled
		},
    highlight () {
      return this.$store.state.Status.highlights.indexOf(this.id) !== -1
    },
    highlightChanges () {
      return this.$store.state.Status.highlightChanges.indexOf(this.id) !== -1
    }
	},
	methods: {
		handleChange () {
			if (!this.customModifykey) {
				// 添加isModify属性
				this.changeModify()
			}
		},
	}
}
</script>

<style>
/* .el-checkbox-group.highlight {
  padding: 10px;
  margin: -10px;
  border: 1px solid red;
}
.el-checkbox-group.change-light {
  padding: 10px;
  margin: -10px;
  border: 1px solid #E6A23C;
} */
</style>