{"version":3,"file":"checkbox-groups.vue2.mjs","sources":["../../../../../packages/components/checkbox/src/checkbox-groups.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as __MACROS_defineComponent } from \"vue\";\nexport default /*#__PURE__*/ __MACROS_defineComponent({\n  name: 'ElCheckboxGroups'\n});\n</script>\n<template>\n  <div :class=\"ns.b()\">\n    <ElCheckGroupsItem v-for=\"group of groups\" :group=\"group\" />\n  </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { useNamespace } from '@element-ultra/hooks'\nimport { provide, ref, watch } from 'vue'\nimport { checkboxGroupsProps, checkboxGroupsEmits } from './checkbox-groups'\nimport ElCheckGroupsItem from './checkbox-groups-item.vue'\nimport { checkboxGroupsKey } from './token'\n\n\n\nconst props = defineProps(checkboxGroupsProps)\nconst emit = defineEmits(checkboxGroupsEmits)\n\nconst ns = useNamespace('checkbox-groups')\nlet checkedSet = ref(new Set<string | number>())\n// TODO watchExcludeEvent()\nlet changedByEvent = false\n\nconst emitChange = (checked: boolean, value: string) => {\n  changedByEvent = true\n  emit('update:modelValue', Array.from(checkedSet.value))\n  emit('checked-change', checked, value)\n}\n\nwatch(\n  () => props.modelValue,\n  value => {\n    if (changedByEvent) {\n      changedByEvent = false\n      return\n    }\n    checkedSet.value = new Set(value)\n  },\n  { immediate: true }\n)\n\nprovide(checkboxGroupsKey, {\n  checkedSet,\n  ns,\n  emitChange\n})\n</script>\n"],"names":["__MACROS_defineComponent"],"mappings":";;;;;;;AAEA,MAA6B,cAAAA,eAAyB,CAAA;AAAA,EACpD,IAAM,EAAA,kBAAA;AACR,CAAC,CAAA,CAAA;;;;;;;AAoBD,IAAM,MAAA,EAAA,GAAK,aAAa,iBAAiB,CAAA,CAAA;AACzC,IAAA,IAAI,UAAa,GAAA,GAAA,iBAAQ,IAAA,GAAA,EAAsB,CAAA,CAAA;AAE/C,IAAA,IAAI,cAAiB,GAAA,KAAA,CAAA;AAErB,IAAM,MAAA,UAAA,GAAa,CAAC,OAAA,EAAkB,KAAkB,KAAA;AACtD,MAAiB,cAAA,GAAA,IAAA,CAAA;AACjB,MAAA,IAAA,CAAK,mBAAqB,EAAA,KAAA,CAAM,IAAK,CAAA,UAAA,CAAW,KAAK,CAAC,CAAA,CAAA;AACtD,MAAK,IAAA,CAAA,gBAAA,EAAkB,SAAS,KAAK,CAAA,CAAA;AAAA,KACvC,CAAA;AAEA,IAAA,KAAA;AAAA,MACE,MAAM,KAAM,CAAA,UAAA;AAAA,MACZ,CAAS,KAAA,KAAA;AACP,QAAA,IAAI,cAAgB,EAAA;AAClB,UAAiB,cAAA,GAAA,KAAA,CAAA;AACjB,UAAA,OAAA;AAAA,SACF;AACA,QAAW,UAAA,CAAA,KAAA,GAAQ,IAAI,GAAA,CAAI,KAAK,CAAA,CAAA;AAAA,OAClC;AAAA,MACA,EAAE,WAAW,IAAK,EAAA;AAAA,KACpB,CAAA;AAEA,IAAA,OAAA,CAAQ,iBAAmB,EAAA;AAAA,MACzB,UAAA;AAAA,MACA,EAAA;AAAA,MACA,UAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;"}