UNPKG

element-plus

Version:

A Component Library for Vue 3

1 lines 3.28 kB
{"version":3,"file":"checkbox-group.mjs","sources":["../../../../../../packages/components/checkbox/src/checkbox-group.vue"],"sourcesContent":["<script lang=\"ts\">\nimport {\n defineComponent,\n computed,\n watch,\n provide,\n nextTick,\n toRefs,\n h,\n renderSlot,\n} from 'vue'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { isValidComponentSize } from '@element-plus/utils'\nimport { useSize, useNamespace } from '@element-plus/hooks'\nimport { useCheckboxGroup } from './useCheckbox'\n\nimport type { PropType } from 'vue'\nimport type { ComponentSize } from '@element-plus/constants'\n\nexport default defineComponent({\n name: 'ElCheckboxGroup',\n\n props: {\n modelValue: {\n type: Array,\n default: () => [],\n },\n disabled: Boolean,\n min: {\n type: Number,\n default: undefined,\n },\n max: {\n type: Number,\n default: undefined,\n },\n size: {\n type: String as PropType<ComponentSize>,\n validator: isValidComponentSize,\n },\n fill: {\n type: String,\n default: undefined,\n },\n textColor: {\n type: String,\n default: undefined,\n },\n tag: {\n type: String,\n default: 'div',\n },\n },\n\n emits: [UPDATE_MODEL_EVENT, 'change'],\n\n setup(props, { emit, slots }) {\n const { elFormItem } = useCheckboxGroup()\n const checkboxGroupSize = useSize()\n const ns = useNamespace('checkbox')\n\n const changeEvent = (value) => {\n emit(UPDATE_MODEL_EVENT, value)\n nextTick(() => {\n emit('change', value)\n })\n }\n\n const modelValue = computed({\n get() {\n return props.modelValue\n },\n set(val) {\n changeEvent(val)\n },\n })\n\n provide('CheckboxGroup', {\n name: 'ElCheckboxGroup',\n modelValue,\n ...toRefs(props),\n checkboxGroupSize,\n changeEvent,\n })\n\n watch(\n () => props.modelValue,\n () => {\n elFormItem.validate?.('change')\n }\n )\n return () => {\n return h(\n props.tag,\n {\n class: ns.b('group'),\n role: 'group',\n 'aria-label': 'checkbox-group',\n },\n [renderSlot(slots, 'default')]\n )\n }\n },\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;MAmBK,YAAa,gBAAa;AAAA,EAC7B,MAAM;AAAA,EAEN,OAAO;AAAA,IACL,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS,MAAM;AAAA;AAAA,IAEjB,UAAU;AAAA,IACV,KAAK;AAAA,MACH,MAAM;AAAA,MACN,SAAS;AAAA;AAAA,IAEX,KAAK;AAAA,MACH,MAAM;AAAA,MACN,SAAS;AAAA;AAAA,IAEX,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,WAAW;AAAA;AAAA,IAEb,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA;AAAA,IAEX,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA;AAAA,IAEX,KAAK;AAAA,MACH,MAAM;AAAA,MACN,SAAS;AAAA;AAAA;AAAA,EAIb,OAAO,CAAC,oBAAoB;AAAA,EAE5B,MAAM,OAAO,EAAE,MAAM,SAAS;AAC5B,UAAM,EAAE,eAAe;AACvB,UAAM,oBAAoB;AAC1B,UAAM,KAAK,aAAa;AAExB,UAAM,cAAc,CAAC,UAAU;AAC7B,WAAK,oBAAoB;AACzB,eAAS,MAAM;AACb,aAAK,UAAU;AAAA;AAAA;AAInB,UAAM,aAAa,SAAS;AAAA,MAC1B,MAAM;AACJ,eAAO,MAAM;AAAA;AAAA,MAEf,IAAI,KAAK;AACP,oBAAY;AAAA;AAAA;AAIhB,YAAQ,iBAAiB;AAAA,MACvB,MAAM;AAAA,MACN;AAAA,SACG,OAAO;AAAA,MACV;AAAA,MACA;AAAA;AAGF,UACE,MAAM,MAAM,YACZ,MAAM;AACJ;AAAsB;AAG1B;AACE;AAEE,eACS,KAAK;AAAA,QACZ;AAAM,QACN;AAAc;AAEG;AAAA;AAAA;;;;;"}