UNPKG

tdesign-vue-next

Version:
102 lines (98 loc) 3.41 kB
/** * tdesign v1.20.2 * (c) 2026 tdesign * @license MIT */ import { computed } from 'vue'; import { isArray, isFunction } from 'lodash-es'; import { g as getRangeBounds, m as monthHasAnyAllowed, y as yearHasAnyAllowed, l as decadeHasAnyAllowed, n as computePaginationDisabled } from '../../_chunks/dep-93996aed.mjs'; import '../../_chunks/dep-ea5fbe21.mjs'; import '../../_chunks/dep-26d65784.mjs'; import '../../_chunks/dep-98dac781.mjs'; import '../../_chunks/dep-f038e2b4.mjs'; import '../../_chunks/dep-f1da7269.mjs'; import '../../_chunks/dep-57027bda.mjs'; import '../../_chunks/dep-51cb07f0.mjs'; import '../../_chunks/dep-b8f28b6e.mjs'; import '../../_chunks/dep-6eb7ecfc.mjs'; import '../../_chunks/dep-73946420.mjs'; import '../../_chunks/dep-5b369203.mjs'; function useSelectRange(props) { var rangeBounds = computed(function () { return getRangeBounds(props.range); }); var monthAllowed = function monthAllowed(year, month) { return monthHasAnyAllowed(props.range, year, month); }; var yearAllowed = function yearAllowed(year) { return yearHasAnyAllowed(props.range, year); }; var decadeAllowed = function decadeAllowed(decadeEndYear) { return decadeHasAnyAllowed(props.range, decadeEndYear); }; var paginationDisabled = computed(function () { var _props$month; return computePaginationDisabled(props.range, props.mode, props.year.value, (_props$month = props.month) === null || _props$month === void 0 ? void 0 : _props$month.value); }); var canLoadMoreTop = function canLoadMoreTop(firstValue) { var min = rangeBounds.value.min; if (isArray(props.range)) { if (!min) return true; var minYear = min.getFullYear(); if (props.mode === "year") { var minDecadeEnd = Math.floor(minYear / 10) * 10 + 9; return firstValue > minDecadeEnd; } return firstValue > minYear; } if (isFunction(props.range)) { if (props.mode === "year") { for (var i = firstValue - 10; i >= firstValue - 50; i -= 10) { if (decadeAllowed(i)) return true; } return false; } for (var _i = firstValue - 1; _i > firstValue - 10; _i--) { if (yearAllowed(_i)) return true; } return false; } return true; }; var canLoadMoreBottom = function canLoadMoreBottom(lastValue) { var max = rangeBounds.value.max; if (isArray(props.range)) { if (!max) return true; var maxYear = max.getFullYear(); if (props.mode === "year") { var maxDecadeEnd = Math.floor(maxYear / 10) * 10 + 9; return lastValue < maxDecadeEnd; } return lastValue < maxYear; } if (isFunction(props.range)) { if (props.mode === "year") { for (var i = lastValue + 10; i <= lastValue + 50; i += 10) { if (decadeAllowed(i)) return true; } return false; } for (var _i2 = lastValue + 1; _i2 <= lastValue + 10; _i2++) { if (yearAllowed(_i2)) return true; } return false; } return true; }; return { rangeBounds: rangeBounds, monthHasAnyAllowed: monthAllowed, yearHasAnyAllowed: yearAllowed, decadeHasAnyAllowed: decadeAllowed, paginationDisabled: paginationDisabled, canLoadMoreTop: canLoadMoreTop, canLoadMoreBottom: canLoadMoreBottom }; } export { useSelectRange }; //# sourceMappingURL=useSelectRange.mjs.map