UNPKG

tav-ui

Version:
72 lines (69 loc) 2.03 kB
import { ref, unref, computed } from 'vue'; function useSelectRecord(param) { const selectRecordRef = ref(unref(param.defaultValue).selectRecord); const selectRecord = computed(() => unref(selectRecordRef)); const selectRecordFibersRef = ref({ id: "", pid: "", fieldIndex: 0, idPathSplitResult: [] }); const selectRecordFibers = computed(() => unref(selectRecordFibersRef)); function setSelectRecord(selectRecord2) { setSelectRecordFibers(selectRecord2.idPath); selectRecordRef.value = { ...selectRecord2, fieldIndex: unref(selectRecordFibers).fieldIndex }; } function setSelectRecordFibers(selectRecordIdPath) { const idPath = unref(selectRecordIdPath); const fields = unref(param.fields); if (!idPath) { selectRecordFibersRef.value = { id: "", pid: "", fieldIndex: 0, idPathSplitResult: [] }; } else { const result = idPath.split("-"); if (result.length > fields.length) { console.warn("CascadePro handleOptions has error."); selectRecordFibersRef.value = { id: "", pid: "", fieldIndex: 0, idPathSplitResult: [] }; } if (result.length === 1) { if (result[0] === "") { selectRecordFibersRef.value = { id: "", pid: "", fieldIndex: 0, idPathSplitResult: [] }; } else { selectRecordFibersRef.value = { id: result[0], pid: "", fieldIndex: 0, idPathSplitResult: result }; } } else { selectRecordFibersRef.value = { id: result[result.length - 1], pid: result[result.length - 1 - 1], fieldIndex: result.length - 1, idPathSplitResult: result }; } } } return { selectRecord, setSelectRecord, selectRecordFibers }; } export { useSelectRecord }; //# sourceMappingURL=use-select-record2.mjs.map