{"version":3,"file":"use-checkbox-event.mjs","sources":["../../../../../../packages/components/radio/src/composables/use-checkbox-event.js"],"sourcesContent":["import { computed, getCurrentInstance } from \"vue\"\nimport { types } from \"@ui-library/utils\"\nexport function useCheckboxEvent({ props, model, checkboxGroupKey, isDisabled, isGroup, isLoading }){\n  const { emit } = getCurrentInstance()\n  /**\n   * change\n   */\n  const changeEvent =  (e) => {\n    emit('change', e.target.checked, e)\n  }\n  /**\n   * beforeChange\n   */\n  const beforeChange = computed(() => isGroup ? checkboxGroupKey?.beforeChange?.value : props.beforeChange)\n  /**\n   * 是否beforeChagen\n   */\n  const isBeforeChange = computed(() => types().isFunction(beforeChange.value))\n  /**\n   * click\n   */\n  const clickEvent = (e) => {\n    if(isBeforeChange.value || isDisabled.value || isLoading.value) {\n      const ev = e || window.event\n      ev.preventDefault();\n      if(isBeforeChange.value && !isDisabled.value && !isLoading.value) {\n        isLoading.value = true\n        beforeChange.value().then(() => {\n          updateData()\n          isLoading.value = false\n        }).catch(() => {\n          isLoading.value = false\n        })\n      }\n      return \n    }\n    updateData()\n  }\n\n  /**\n   * 数据处理\n   */\n  const updateData = () => {\n    model.value = props.value\n    // if(isGroup){\n    //   console.log('model.value', model.value)\n    //   const index = model.value.findIndex(v => v === props.value)\n    //   (index !== -1) ? model.value.splice(index, 1) : model.value.push(props.value)\n    // }else{\n    //   model.value = !model.value\n    // }\n  }\n  \n\n  return {\n    changeEvent,\n    clickEvent\n  }\n}"],"names":[],"mappings":";;;;AAEgB,SAAA,gBAAA,CAAiB,EAAE,KAAO,EAAA,KAAA,EAAO,kBAAkB,UAAY,EAAA,OAAA,EAAS,WAAY,EAAA;AAClG,EAAM,MAAA,EAAE,IAAK,EAAA,GAAI,kBAAmB,EAAA,CAAA;AAIpC,EAAM,MAAA,WAAA,GAAe,CAAC,CAAM,KAAA;AAC1B,IAAA,IAAA,CAAK,QAAU,EAAA,CAAA,CAAE,MAAO,CAAA,OAAA,EAAS,CAAC,CAAA,CAAA;AAAA,GACpC,CAAA;AAIA,EAAM,MAAA,YAAA,GAAe,SAAS,MAAM,OAAA,GAAU,kBAAkB,YAAc,EAAA,KAAA,GAAQ,MAAM,YAAY,CAAA,CAAA;AAIxG,EAAM,MAAA,cAAA,GAAiB,SAAS,MAAM,KAAA,GAAQ,UAAW,CAAA,YAAA,CAAa,KAAK,CAAC,CAAA,CAAA;AAI5E,EAAM,MAAA,UAAA,GAAa,CAAC,CAAM,KAAA;AACxB,IAAA,IAAG,cAAe,CAAA,KAAA,IAAS,UAAW,CAAA,KAAA,IAAS,UAAU,KAAO,EAAA;AAC9D,MAAM,MAAA,EAAA,GAAK,KAAK,MAAO,CAAA,KAAA,CAAA;AACvB,MAAA,EAAA,CAAG,cAAe,EAAA,CAAA;AAClB,MAAA,IAAG,eAAe,KAAS,IAAA,CAAC,WAAW,KAAS,IAAA,CAAC,UAAU,KAAO,EAAA;AAChE,QAAA,SAAA,CAAU,KAAQ,GAAA,IAAA,CAAA;AAClB,QAAa,YAAA,CAAA,KAAA,EAAQ,CAAA,IAAA,CAAK,MAAM;AAC9B,UAAW,UAAA,EAAA,CAAA;AACX,UAAA,SAAA,CAAU,KAAQ,GAAA,KAAA,CAAA;AAAA,SACnB,CAAE,CAAA,KAAA,CAAM,MAAM;AACb,UAAA,SAAA,CAAU,KAAQ,GAAA,KAAA,CAAA;AAAA,SACnB,CAAA,CAAA;AAAA,OACH;AACA,MAAA,OAAA;AAAA,KACF;AACA,IAAW,UAAA,EAAA,CAAA;AAAA,GACb,CAAA;AAKA,EAAA,MAAM,aAAa,MAAM;AACvB,IAAA,KAAA,CAAM,QAAQ,KAAM,CAAA,KAAA,CAAA;AAAA,GAQtB,CAAA;AAGA,EAAO,OAAA;AAAA,IACL,WAAA;AAAA,IACA,UAAA;AAAA,GACF,CAAA;AACF;;;;"}