{"version":3,"file":"checkbox-group.vue.mjs","sources":["../../../../../../packages/components/checkbox/src/checkbox-group.vue"],"sourcesContent":["<script lang=\"ts\">\n  import { defineComponent, computed, provide, watch } from 'vue'\n  import { getNamespace, getComponentNamespace } from '../../../utils/global-config'\n  import { useFormItem } from '../../form/src/hooks/use-form-item'\n  import { NOOP } from '../../../shared/utils'\n  import { checkboxGroupContextKey } from './constant'\n\n  export default defineComponent({\n    name: getComponentNamespace('CheckboxGroup'),\n    props: {\n      // eslint-disable-next-line vue/require-default-prop\n      modelValue: Array,\n      validateEvent: {\n        type: Boolean,\n        default: true\n      }\n    },\n    emits: ['change', 'update:modelValue'],\n    setup(props, ctx) {\n      const modelValue = computed(() => props.modelValue)\n      const changeEvent = (val: any) => {\n        ctx.emit('update:modelValue', val)\n        ctx.emit('change', val)\n      }\n\n      const ns = getNamespace('checkbox-group')\n\n      const cls = computed(() => {\n        return [ns]\n      })\n\n      const { formItem } = useFormItem()\n\n      provide(checkboxGroupContextKey, {\n        modelValue,\n        changeEvent\n      })\n\n      watch(\n        () => props.modelValue,\n        () => {\n          if (props.validateEvent) {\n            formItem?.validate('change').catch(NOOP)\n          }\n        }\n      )\n\n      return {\n        cls\n      }\n    }\n  })\n</script>\n\n<template>\n  <div :class=\"cls\">\n    <slot></slot>\n  </div>\n</template>\n"],"names":["cls","_normalizeClass"],"mappings":";;;;AAuDa,SAAA,YAAA,IAAEA,EAAAA,MAAAA,EAAG,MAAA,EAAA,MAAA,EAAA,OAAA,QAAA,EAAA;;;;MACd,KAAA,EAAaC,cAAA,CAAA,IAAA,CAAA,GAAA,CAAA;AAAA,KAAA;AAAA;;;;;;;;;;;"}