first commit
This commit is contained in:
50
node_modules/vant/es/date-picker/utils.mjs
generated
vendored
Normal file
50
node_modules/vant/es/date-picker/utils.mjs
generated
vendored
Normal file
@@ -0,0 +1,50 @@
|
||||
import { extend, padZero, makeArrayProp, clamp } from "../utils/index.mjs";
|
||||
import { pickerSharedProps } from "../picker/Picker.mjs";
|
||||
const sharedProps = extend({}, pickerSharedProps, {
|
||||
modelValue: makeArrayProp(),
|
||||
filter: Function,
|
||||
formatter: {
|
||||
type: Function,
|
||||
default: (type, option) => option
|
||||
}
|
||||
});
|
||||
const pickerInheritKeys = Object.keys(pickerSharedProps);
|
||||
function times(n, iteratee) {
|
||||
if (n < 0) {
|
||||
return [];
|
||||
}
|
||||
const result = Array(n);
|
||||
let index = -1;
|
||||
while (++index < n) {
|
||||
result[index] = iteratee(index);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
const getMonthEndDay = (year, month) => 32 - new Date(year, month - 1, 32).getDate();
|
||||
const genOptions = (min, max, type, formatter, filter, values) => {
|
||||
const options = times(max - min + 1, (index) => {
|
||||
const value = padZero(min + index);
|
||||
return formatter(type, {
|
||||
text: value,
|
||||
value
|
||||
});
|
||||
});
|
||||
return filter ? filter(type, options, values) : options;
|
||||
};
|
||||
const formatValueRange = (values, columns) => values.map((value, index) => {
|
||||
const column = columns[index];
|
||||
if (column.length) {
|
||||
const minValue = +column[0].value;
|
||||
const maxValue = +column[column.length - 1].value;
|
||||
return padZero(clamp(+value, minValue, maxValue));
|
||||
}
|
||||
return value;
|
||||
});
|
||||
export {
|
||||
formatValueRange,
|
||||
genOptions,
|
||||
getMonthEndDay,
|
||||
pickerInheritKeys,
|
||||
sharedProps,
|
||||
times
|
||||
};
|
||||
Reference in New Issue
Block a user