{"version":3,"file":"useSelect.mjs","sources":["../../../../../../packages/components/cig-select/src/useSelect.ts"],"sourcesContent":["import { computed, reactive, ref } from 'vue'\nimport { ElMessage } from '@park-ui/components/message'\n\nexport function useCigSelect(ctx: any, props: any, t: any, states: any) {\n  const customVal = ref({\n    custom: '',\n  })\n  const customRule: any = {\n    custom: [\n      {\n        required: true,\n        message: t('el.form.placeholder.input'),\n        trigger: 'blur',\n      },\n    ],\n  }\n  const editOption = ref(false)\n  const delOption = ref(false)\n  const createdOption = reactive({\n    leftContent: '',\n    rightContent: '',\n  })\n  // 表单ref\n  const selectForm = ref()\n  // options is no data\n  const optionSize = computed(() => states.options.size)\n  function createOption() {\n    customVal.value.custom = ''\n    if (delOption.value) delOption.value = false\n    if (props.customContent) {\n      return ctx.emit('create-options')\n    }\n    if (!editOption.value) editOption.value = true\n  }\n  function deleteOption() {\n    if (optionSize.value === 0) {\n      return ElMessage({\n        message: t('el.select.noData'),\n        type: 'warning',\n      })\n    }\n    if (!delOption.value) delOption.value = true\n    if (editOption.value) editOption.value = false\n  }\n  // delete\n  function onSelectOptionDelete(vm: any, byClick: boolean) {\n    // 是否选中\n    const isCheck = props.multiple\n      ? props.modelValue.includes(vm.value)\n      : vm.value === props.modelValue\n    // 触发emit\n    realSelectionDelete(isCheck, vm, byClick)\n  }\n  function realSelectionDelete(isCheck: boolean, vm: any, byClick: boolean) {\n    ctx.emit('delete-options', vm.value, isCheck, byClick)\n  }\n  function onConfirm() {\n    selectForm.value.validate((isValid: boolean) => {\n      if (isValid) {\n        ctx.emit('create-options', customVal.value.custom)\n        editOption.value = false\n      }\n    })\n  }\n  function onCancel() {\n    customVal.value.custom = '' // 清空输入\n    editOption.value = false // 隐藏输入框\n  }\n\n  return {\n    customVal,\n    customRule,\n    editOption,\n    delOption,\n    createdOption,\n    selectForm,\n    createOption,\n    deleteOption,\n    onSelectOptionDelete,\n    onConfirm,\n    onCancel,\n  }\n}\n"],"names":[],"mappings":";;;AAEO,SAAS,YAAY,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE;AACpD,EAAE,MAAM,SAAS,GAAG,GAAG,CAAC;AACxB,IAAI,MAAM,EAAE,EAAE;AACd,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,UAAU,GAAG;AACrB,IAAI,MAAM,EAAE;AACZ,MAAM;AACN,QAAQ,QAAQ,EAAE,IAAI;AACtB,QAAQ,OAAO,EAAE,CAAC,CAAC,2BAA2B,CAAC;AAC/C,QAAQ,OAAO,EAAE,MAAM;AACvB,OAAO;AACP,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;AAChC,EAAE,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;AAC/B,EAAE,MAAM,aAAa,GAAG,QAAQ,CAAC;AACjC,IAAI,WAAW,EAAE,EAAE;AACnB,IAAI,YAAY,EAAE,EAAE;AACpB,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC;AAC3B,EAAE,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AACzD,EAAE,SAAS,YAAY,GAAG;AAC1B,IAAI,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC;AAChC,IAAI,IAAI,SAAS,CAAC,KAAK;AACvB,MAAM,SAAS,CAAC,KAAK,GAAG,KAAK,CAAC;AAC9B,IAAI,IAAI,KAAK,CAAC,aAAa,EAAE;AAC7B,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;AACxC,KAAK;AACL,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK;AACzB,MAAM,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC;AAC9B,GAAG;AACH,EAAE,SAAS,YAAY,GAAG;AAC1B,IAAI,IAAI,UAAU,CAAC,KAAK,KAAK,CAAC,EAAE;AAChC,MAAM,OAAO,SAAS,CAAC;AACvB,QAAQ,OAAO,EAAE,CAAC,CAAC,kBAAkB,CAAC;AACtC,QAAQ,IAAI,EAAE,SAAS;AACvB,OAAO,CAAC,CAAC;AACT,KAAK;AACL,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK;AACxB,MAAM,SAAS,CAAC,KAAK,GAAG,IAAI,CAAC;AAC7B,IAAI,IAAI,UAAU,CAAC,KAAK;AACxB,MAAM,UAAU,CAAC,KAAK,GAAG,KAAK,CAAC;AAC/B,GAAG;AACH,EAAE,SAAS,oBAAoB,CAAC,EAAE,EAAE,OAAO,EAAE;AAC7C,IAAI,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,KAAK,KAAK,CAAC,UAAU,CAAC;AACzG,IAAI,mBAAmB,CAAC,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;AAC9C,GAAG;AACH,EAAE,SAAS,mBAAmB,CAAC,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE;AACrD,IAAI,GAAG,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAC3D,GAAG;AACH,EAAE,SAAS,SAAS,GAAG;AACvB,IAAI,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,OAAO,KAAK;AAC3C,MAAM,IAAI,OAAO,EAAE;AACnB,QAAQ,GAAG,CAAC,IAAI,CAAC,gBAAgB,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;AAC3D,QAAQ,UAAU,CAAC,KAAK,GAAG,KAAK,CAAC;AACjC,OAAO;AACP,KAAK,CAAC,CAAC;AACP,GAAG;AACH,EAAE,SAAS,QAAQ,GAAG;AACtB,IAAI,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC;AAChC,IAAI,UAAU,CAAC,KAAK,GAAG,KAAK,CAAC;AAC7B,GAAG;AACH,EAAE,OAAO;AACT,IAAI,SAAS;AACb,IAAI,UAAU;AACd,IAAI,UAAU;AACd,IAAI,SAAS;AACb,IAAI,aAAa;AACjB,IAAI,UAAU;AACd,IAAI,YAAY;AAChB,IAAI,YAAY;AAChB,IAAI,oBAAoB;AACxB,IAAI,SAAS;AACb,IAAI,QAAQ;AACZ,GAAG,CAAC;AACJ;;;;"}