{"version":3,"file":"checkbox-groups-item.vue2.mjs","sources":["../../../../../packages/components/checkbox/src/checkbox-groups-item.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n  name: 'ElCheckboxGroupsItem'\n});\n</script>\n<template>\n  <el-checkbox\n    :indeterminate=\"indeterminate\"\n    @change=\"handleUpdateModelValue\"\n    :checked=\"allChecked\"\n  >\n    {{ group.label }}\n  </el-checkbox>\n\n  <div :class=\"ns.e('items')\">\n    <el-checkbox\n      @change=\"handleItemChange($event, item.value)\"\n      v-for=\"item of group.items\"\n      :checked=\"checkedSet.has(item.value)\"\n      :value=\"item.value\"\n    >\n      {{ item.label ?? item.value }}\n    </el-checkbox>\n  </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport ElCheckbox from './checkbox.vue'\nimport { computed, inject } from 'vue'\nimport type { CheckboxGroupsProps } from './checkbox-groups'\nimport { checkboxGroupsKey } from './token'\n\n\n\nconst props = defineProps({\n  \"group\": { type: null, required: true,  }\n})\n\nconst { checkedSet, ns, emitChange } = inject(checkboxGroupsKey)!\n\nlet allChecked = computed(() => {\n  return props.group.items.every(item => checkedSet.value.has(item.value))\n})\n\nconst indeterminate = computed(() => {\n  return !allChecked.value && props.group.items.some(item => checkedSet.value.has(item.value))\n})\n\nconst handleUpdateModelValue = (checked: boolean) => {\n  const { items } = props.group\n  if (checked) {\n    items.forEach(item => checkedSet.value.add(item.value))\n  } else {\n    items.forEach(item => checkedSet.value.delete(item.value))\n  }\n}\n\nconst handleItemChange = (checked: boolean, value: string) => {\n  checkedSet.value[checked ? 'add' : 'delete'](value)\n  emitChange(checked, value)\n}\n</script>\n"],"names":["__MACROS_defineComponent"],"mappings":";;;;AAEA,MAA6B,cAAAA,eAAyB,CAAA;AAAA,EACpD,IAAM,EAAA,sBAAA;AACR,CAAC,CAAA,CAAA;;;;;;;;AAmCD,IAAA,MAAM,EAAE,UAAY,EAAA,EAAA,EAAI,UAAW,EAAA,GAAI,OAAO,iBAAiB,CAAA,CAAA;AAE/D,IAAI,IAAA,UAAA,GAAa,SAAS,MAAM;AAC9B,MAAO,OAAA,KAAA,CAAM,KAAM,CAAA,KAAA,CAAM,KAAM,CAAA,CAAA,IAAA,KAAQ,WAAW,KAAM,CAAA,GAAA,CAAI,IAAK,CAAA,KAAK,CAAC,CAAA,CAAA;AAAA,KACxE,CAAA,CAAA;AAED,IAAM,MAAA,aAAA,GAAgB,SAAS,MAAM;AACnC,MAAA,OAAO,CAAC,UAAA,CAAW,KAAS,IAAA,KAAA,CAAM,KAAM,CAAA,KAAA,CAAM,IAAK,CAAA,CAAA,IAAA,KAAQ,UAAW,CAAA,KAAA,CAAM,GAAI,CAAA,IAAA,CAAK,KAAK,CAAC,CAAA,CAAA;AAAA,KAC5F,CAAA,CAAA;AAED,IAAM,MAAA,sBAAA,GAAyB,CAAC,OAAqB,KAAA;AACnD,MAAM,MAAA,EAAE,KAAM,EAAA,GAAI,KAAM,CAAA,KAAA,CAAA;AACxB,MAAA,IAAI,OAAS,EAAA;AACX,QAAA,KAAA,CAAM,QAAQ,CAAQ,IAAA,KAAA,UAAA,CAAW,MAAM,GAAI,CAAA,IAAA,CAAK,KAAK,CAAC,CAAA,CAAA;AAAA,OACjD,MAAA;AACL,QAAA,KAAA,CAAM,QAAQ,CAAQ,IAAA,KAAA,UAAA,CAAW,MAAM,MAAO,CAAA,IAAA,CAAK,KAAK,CAAC,CAAA,CAAA;AAAA,OAC3D;AAAA,KACF,CAAA;AAEA,IAAM,MAAA,gBAAA,GAAmB,CAAC,OAAA,EAAkB,KAAkB,KAAA;AAC5D,MAAA,UAAA,CAAW,KAAM,CAAA,OAAA,GAAU,KAAQ,GAAA,QAAQ,EAAE,KAAK,CAAA,CAAA;AAClD,MAAA,UAAA,CAAW,SAAS,KAAK,CAAA,CAAA;AAAA,KAC3B,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}