song-ui-u
Version:
vue3 + js的PC前端组件库
1 lines • 3.09 kB
Source Map (JSON)
{"version":3,"file":"use-checkbox-event.cjs","sources":["../../../../../../packages/components/checkbox/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) => emit('change', e.target.checked, e)\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 }\n }\n\n /**\n * 数据处理\n */\n const updateData = () => {\n if(isGroup){\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":["getCurrentInstance","computed","types"],"mappings":";;;;;;AAEgB,SAAA,gBAAA,CAAiB,EAAE,KAAO,EAAA,KAAA,EAAO,kBAAkB,UAAY,EAAA,OAAA,EAAS,WAAY,EAAA;AAClG,EAAM,MAAA,EAAE,IAAK,EAAA,GAAIA,sBAAmB,EAAA,CAAA;AAIpC,EAAM,MAAA,WAAA,GAAe,CAAC,CAAM,KAAA,IAAA,CAAK,UAAU,CAAE,CAAA,MAAA,CAAO,SAAS,CAAC,CAAA,CAAA;AAI9D,EAAM,MAAA,YAAA,GAAeC,aAAS,MAAM,OAAA,GAAU,kBAAkB,YAAc,EAAA,KAAA,GAAQ,MAAM,YAAY,CAAA,CAAA;AAIxG,EAAM,MAAA,cAAA,GAAiBA,aAAS,MAAMC,WAAA,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;AAAA,KACF;AAAA,GACF,CAAA;AAKA,EAAA,MAAM,aAAa,MAAM;AACvB,IAAA,IAAG,OAAQ,EAAA;AACT,MAAM,MAAA,KAAA,GAAQ,MAAM,KAAM,CAAA,SAAA,CAAU,OAAK,CAAM,KAAA,KAAA,CAAM,KAAK,CAAA,CACzD,KAAU,KAAA,CAAA,CAAE,IAAI,KAAM,CAAA,KAAA,CAAM,OAAO,KAAO,EAAA,CAAC,IAAI,KAAM,CAAA,KAAA,CAAM,IAAK,CAAA,KAAA,CAAM,KAAK,CAAA,CAAA;AAAA,KACzE,MAAA;AACH,MAAM,KAAA,CAAA,KAAA,GAAQ,CAAC,KAAM,CAAA,KAAA,CAAA;AAAA,KACvB;AAAA,GACF,CAAA;AAGA,EAAO,OAAA;AAAA,IACL,WAAA;AAAA,IACA,UAAA;AAAA,GACF,CAAA;AACF;;;;"}