1 line
5.2 KiB
Plaintext
1 line
5.2 KiB
Plaintext
{"version":3,"file":"checkbox-group2.mjs","sources":["../../../../../../packages/components/checkbox/src/checkbox-group.vue"],"sourcesContent":["<template>\n <component\n :is=\"tag\"\n :id=\"groupId\"\n :class=\"ns.b('group')\"\n role=\"group\"\n :aria-label=\"\n !isLabeledByFormItem ? ariaLabel || 'checkbox-group' : undefined\n \"\n :aria-labelledby=\"isLabeledByFormItem ? formItem?.labelId : undefined\"\n >\n <slot>\n <component\n :is=\"optionComponent\"\n v-for=\"(item, index) in options\"\n :key=\"index\"\n v-bind=\"getOptionProps(item)\"\n />\n </slot>\n </component>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, nextTick, provide, toRefs, watch } from 'vue'\nimport { isEqual, omit, pick } from 'lodash-unified'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { debugWarn } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport {\n useFormDisabled,\n useFormItem,\n useFormItemInputId,\n} from '@element-plus/components/form'\nimport {\n checkboxDefaultProps,\n checkboxGroupEmits,\n checkboxGroupProps,\n} from './checkbox-group'\nimport { checkboxGroupContextKey } from './constants'\nimport ElCheckbox from './checkbox.vue'\nimport ElCheckboxButton from './checkbox-button.vue'\n\nimport type { CheckboxGroupValueType } from './checkbox-group'\n\ndefineOptions({\n name: 'ElCheckboxGroup',\n})\n\nconst props = defineProps(checkboxGroupProps)\nconst emit = defineEmits(checkboxGroupEmits)\nconst ns = useNamespace('checkbox')\n\nconst checkboxDisabled = useFormDisabled()\nconst { formItem } = useFormItem()\nconst { inputId: groupId, isLabeledByFormItem } = useFormItemInputId(props, {\n formItemContext: formItem,\n})\n\nconst changeEvent = async (value: CheckboxGroupValueType) => {\n emit(UPDATE_MODEL_EVENT, value)\n await nextTick()\n emit(CHANGE_EVENT, value)\n}\n\nconst modelValue = computed({\n get() {\n return props.modelValue\n },\n set(val: CheckboxGroupValueType) {\n changeEvent(val)\n },\n})\n\nconst aliasProps = computed(() => ({\n ...checkboxDefaultProps,\n ...props.props,\n}))\nconst getOptionProps = (option: Record<string, any>) => {\n const { label, value, disabled } = aliasProps.value\n const base = {\n label: option[label],\n value: option[value],\n disabled: option[disabled],\n }\n return { ...omit(option, [label, value, disabled]), ...base }\n}\n\nconst optionComponent = computed(() =>\n props.type === 'button' ? ElCheckboxButton : ElCheckbox\n)\n\nprovide(checkboxGroupContextKey, {\n ...pick(toRefs(props), [\n 'size',\n 'min',\n 'max',\n 'validateEvent',\n 'fill',\n 'textColor',\n ]),\n disabled: checkboxDisabled,\n modelValue,\n changeEvent,\n})\n\nwatch(\n () => props.modelValue,\n (newVal, oldValue) => {\n if (props.validateEvent && !isEqual(newVal, oldValue)) {\n formItem?.validate('change').catch((err) => debugWarn(err))\n }\n }\n)\n</script>\n"],"names":["ElCheckboxButton","ElCheckbox","_openBlock","_createBlock","_resolveDynamicComponent","_unref","_normalizeClass"],"mappings":"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"} |