UNPKG

@fruits-chain/react-native-xiaoshu

Version:
45 lines (43 loc) 1.69 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _isDate = _interopRequireDefault(require("lodash/isDate")); var _react = require("react"); var _helper = require("./helper.js"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } const useDateMinMax = (mode, min, max) => { const modes = (0, _react.useMemo)(() => (0, _helper.serializeMode)(mode.split('-')), [mode]); const [defaultMinDate, defaultMaxDate] = (0, _react.useMemo)(() => { const day = new Date(); const currentYear = day.getFullYear(); const _defaultMinDate = new Date(day.setFullYear(currentYear - 10)); const _defaultMaxDate = new Date(day.setFullYear(currentYear + 10)); // 根据类型修正数据 if (!modes.includes('s')) { _defaultMinDate.setSeconds(0); _defaultMaxDate.setSeconds(59); } if (!modes.includes('m')) { _defaultMinDate.setMinutes(0); _defaultMaxDate.setMinutes(59); } if (!modes.includes('h')) { _defaultMinDate.setHours(0); _defaultMaxDate.setHours(23); } if (!modes.includes('D')) { _defaultMinDate.setDate(1); _defaultMaxDate.setDate((0, _helper.getMonthDays)(_defaultMaxDate.getFullYear(), _defaultMaxDate.getMonth() + 1)); } if (!modes.includes('M')) { _defaultMinDate.setMonth(0); _defaultMaxDate.setMonth(11); } return [_defaultMinDate, _defaultMaxDate]; }, [modes]); return [(0, _isDate.default)(min) ? min : defaultMinDate, (0, _isDate.default)(max) ? max : defaultMaxDate]; }; var _default = exports.default = useDateMinMax; //# sourceMappingURL=useDateMinMax.js.map