UNPKG

element-plus

Version:

A Component Library for Vue 3

33 lines (31 loc) 1.45 kB
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); const require_runtime = require('../../../../_virtual/_rolldown/runtime.js'); const require_error = require('../../../../utils/error.js'); let vue = require("vue"); //#region ../../packages/components/slider/src/composables/use-marks.ts const useMarks = (props) => { const markList = (0, vue.computed)(() => { if (!props.marks) return []; return Object.keys(props.marks).map(Number.parseFloat).sort((a, b) => a - b).filter((point) => point <= props.max && point >= props.min).map((point) => ({ point, position: (point - props.min) * 100 / (props.max - props.min), mark: props.marks[point] })); }); (0, vue.watchEffect)(() => { if (props.step === "mark" && !props.marks) require_error.debugWarn("ElSlider", "marks prop must be provided when step is mark"); if (props.marks) { const keys = Object.keys(props.marks); const validPoints = markList.value.map((m) => m.point); const invalidKeys = keys.filter((key) => { const parsed = Number.parseFloat(key); return Number.isNaN(parsed) || !validPoints.includes(parsed); }); if (invalidKeys.length > 0) require_error.debugWarn("ElSlider", `Some marks keys are invalid (not a number or out of [min, max]): [${invalidKeys.map((k) => `'${k}'`).join(", ")}] and will be ignored.`); } }); return markList; }; //#endregion exports.useMarks = useMarks; //# sourceMappingURL=use-marks.js.map