element-plus
Version:
A Component Library for Vue 3
1 lines • 3.74 kB
Source Map (JSON)
{"version":3,"file":"checkbox-group2.mjs","sources":["../../../../../../packages/components/checkbox/src/checkbox-group.vue"],"sourcesContent":["<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n h,\n nextTick,\n provide,\n renderSlot,\n toRefs,\n watch,\n} from 'vue'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { debugWarn } from '@element-plus/utils'\nimport { useNamespace, useSize } from '@element-plus/hooks'\nimport {\n useCheckboxGroup,\n useCheckboxGroupId,\n useCheckboxGroupProps,\n} from './checkbox'\n\nexport default defineComponent({\n name: 'ElCheckboxGroup',\n\n props: useCheckboxGroupProps,\n\n emits: [UPDATE_MODEL_EVENT, 'change'],\n\n setup(props, { emit, slots }) {\n const { elFormItem } = useCheckboxGroup()\n const { groupId, isLabeledByFormItem } = useCheckboxGroupId(props, {\n elFormItem,\n })\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').catch((err) => debugWarn(err))\n }\n )\n return () => {\n return h(\n props.tag,\n {\n id: groupId.value,\n class: ns.b('group'),\n role: 'group',\n 'aria-label': !isLabeledByFormItem.value\n ? props.label || 'checkbox-group'\n : undefined,\n 'aria-labelledby': isLabeledByFormItem.value\n ? elFormItem.labelId\n : undefined,\n },\n [renderSlot(slots, 'default')]\n )\n }\n },\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;AAoBA,MAAK,YAAa,eAAa,CAAA;AAAA,EAC7B,IAAM,EAAA,iBAAA;AAAA,EAEN,KAAO,EAAA,qBAAA;AAAA,EAEP,KAAA,EAAO,CAAC,kBAAA,EAAoB,QAAQ,CAAA;AAAA,EAEpC,KAAM,CAAA,KAAA,EAAO,EAAE,IAAA,EAAM,KAAS,EAAA,EAAA;AAC5B,IAAM,MAAA,EAAE,eAAe,gBAAiB,EAAA,CAAA;AACxC,IAAA,MAAM,EAAE,OAAA,EAAS,mBAAwB,EAAA,GAAA,kBAAA,CAAmB,KAAO,EAAA;AAAA,MACjE,UAAA;AAAA,KACD,CAAA,CAAA;AACD,IAAA,MAAM,oBAAoB,OAAQ,EAAA,CAAA;AAClC,IAAM,MAAA,EAAA,GAAK,aAAa,UAAU,CAAA,CAAA;AAElC,IAAM,MAAA,WAAA,GAAc,CAAC,KAAU,KAAA;AAC7B,MAAA,IAAA,CAAK,oBAAoB,KAAK,CAAA,CAAA;AAC9B,MAAA,QAAA,CAAS,MAAM;AACb,QAAA,IAAA,CAAK,UAAU,KAAK,CAAA,CAAA;AAAA,OACrB,CAAA,CAAA;AAAA,KACH,CAAA;AAEA,IAAA,MAAM,aAAa,QAAS,CAAA;AAAA,MAC1B,GAAM,GAAA;AACJ,QAAA,OAAO,KAAM,CAAA,UAAA,CAAA;AAAA,OACf;AAAA,MACA,IAAI,GAAK,EAAA;AACP,QAAA,WAAA,CAAY,GAAG,CAAA,CAAA;AAAA,OACjB;AAAA,KACD,CAAA,CAAA;AAED,IAAA,OAAA,CAAQ,eAAiB,EAAA;AAAA,MACvB,IAAM,EAAA,iBAAA;AAAA,MACN,UAAA;AAAA,MAAA,GACG,OAAO,KAAK,CAAA;AAAA,MACf,iBAAA;AAAA,MACA,WAAA;AAAA,KACD,CAAA,CAAA;AAED,IACE,KAAA,CAAA,MAAM,KAAM,CAAA,UAAA,EACZ,MAAM;AACJ,MAAW,IAAA,EAAA,CAAA;AAAkD,MAEjE,CAAA,EAAA,GAAA,UAAA,CAAA,QAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,UAAA,EAAA,QAAA,CAAA,CAAA,KAAA,CAAA,CAAA,GAAA,KAAA,SAAA,CAAA,GAAA,CAAA,CAAA,CAAA;AACA,KAAA,CAAA,CAAA;AACE,IAAO,OAAA;AAEL,MAAA,OACc,CAAA,CAAA,KAAA,CAAA,GAAA,EAAA;AAAA,QACZ,EAAA,EAAA,OAAU,CAAE,KAAO;AAAA,QACnB,KAAM,EAAA,EAAA,CAAA,CAAA,CAAA,OAAA,CAAA;AAAA,QACN;AAEI,QACJ,YAAmB,EAAA,CAAA,mBAAA,CAAA,KACf,GAAA,KAAA,CAAA,KAAA,IAAW,gBACX,GAAA,KAAA,CAAA;AAAA,yBAEa,EAAA,mBACrB,CAAA,KAAA,GAAA,UAAA,CAAA,OAAA,GAAA,KAAA,CAAA;AAAA,OACF,EAAA,CAAA,UAAA,CAAA,KAAA,EAAA,SAAA,CAAA,CAAA,CAAA,CAAA;AAAA,KACF,CAAA;AACF,GAAC;;;;;;"}