Latest updates from IceHrmPro

This commit is contained in:
Thilina Pituwala
2020-05-20 18:47:29 +02:00
parent 60c92d7935
commit 7453a58aad
18012 changed files with 2089245 additions and 10173 deletions

View File

@@ -0,0 +1,21 @@
import * as React from 'react';
import { GenerateConfig } from '../../generate';
import { Locale } from '../../interface';
export declare type DateRender<DateType> = (currentDate: DateType, today: DateType) => React.ReactNode;
export interface DateBodyPassProps<DateType> {
dateRender?: DateRender<DateType>;
disabledDate?: (date: DateType) => boolean;
prefixColumn?: (date: DateType) => React.ReactNode;
rowClassName?: (date: DateType) => string;
}
export interface DateBodyProps<DateType> extends DateBodyPassProps<DateType> {
prefixCls: string;
generateConfig: GenerateConfig<DateType>;
value?: DateType | null;
viewDate: DateType;
locale: Locale;
rowCount: number;
onSelect: (value: DateType) => void;
}
declare function DateBody<DateType>(props: DateBodyProps<DateType>): JSX.Element;
export default DateBody;

View File

@@ -0,0 +1,97 @@
"use strict";
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var React = _interopRequireWildcard(require("react"));
var _dateUtil = require("../../utils/dateUtil");
var _RangeContext = _interopRequireDefault(require("../../RangeContext"));
var _useCellClassName = _interopRequireDefault(require("../../hooks/useCellClassName"));
var _PanelBody = _interopRequireDefault(require("../PanelBody"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function DateBody(props) {
var prefixCls = props.prefixCls,
generateConfig = props.generateConfig,
prefixColumn = props.prefixColumn,
locale = props.locale,
rowCount = props.rowCount,
viewDate = props.viewDate,
value = props.value,
dateRender = props.dateRender;
var _React$useContext = React.useContext(_RangeContext.default),
rangedValue = _React$useContext.rangedValue,
hoverRangedValue = _React$useContext.hoverRangedValue;
var baseDate = (0, _dateUtil.getWeekStartDate)(locale.locale, generateConfig, viewDate);
var cellPrefixCls = "".concat(prefixCls, "-cell");
var weekFirstDay = generateConfig.locale.getWeekFirstDay(locale.locale);
var today = generateConfig.getNow(); // ============================== Header ==============================
var headerCells = [];
var weekDaysLocale = locale.shortWeekDays || (generateConfig.locale.getShortWeekDays ? generateConfig.locale.getShortWeekDays(locale.locale) : []);
if (prefixColumn) {
headerCells.push(React.createElement("th", {
key: "empty"
}));
}
for (var i = 0; i < _dateUtil.WEEK_DAY_COUNT; i += 1) {
headerCells.push(React.createElement("th", {
key: i
}, weekDaysLocale[(i + weekFirstDay) % _dateUtil.WEEK_DAY_COUNT]));
} // =============================== Body ===============================
var getCellClassName = (0, _useCellClassName.default)({
cellPrefixCls: cellPrefixCls,
today: today,
value: value,
generateConfig: generateConfig,
rangedValue: prefixColumn ? null : rangedValue,
hoverRangedValue: prefixColumn ? null : hoverRangedValue,
isSameCell: function isSameCell(current, target) {
return (0, _dateUtil.isSameDate)(generateConfig, current, target);
},
isInView: function isInView(date) {
return (0, _dateUtil.isSameMonth)(generateConfig, date, viewDate);
},
offsetCell: function offsetCell(date, offset) {
return generateConfig.addDate(date, offset);
}
});
var getCellNode = dateRender ? function (date) {
return dateRender(date, today);
} : undefined;
return React.createElement(_PanelBody.default, Object.assign({}, props, {
rowNum: rowCount,
colNum: _dateUtil.WEEK_DAY_COUNT,
baseDate: baseDate,
getCellNode: getCellNode,
getCellText: generateConfig.getDate,
getCellClassName: getCellClassName,
getCellDate: generateConfig.addDate,
titleCell: function titleCell(date) {
return generateConfig.locale.format(locale.locale, date, 'YYYY-MM-DD');
},
headerCells: headerCells
}));
}
var _default = DateBody;
exports.default = _default;

View File

@@ -0,0 +1,18 @@
/// <reference types="react" />
import { Locale } from '../../interface';
import { GenerateConfig } from '../../generate';
export interface DateHeaderProps<DateType> {
prefixCls: string;
viewDate: DateType;
value?: DateType | null;
locale: Locale;
generateConfig: GenerateConfig<DateType>;
onPrevYear: () => void;
onNextYear: () => void;
onPrevMonth: () => void;
onNextMonth: () => void;
onYearClick: () => void;
onMonthClick: () => void;
}
declare function DateHeader<DateType>(props: DateHeaderProps<DateType>): JSX.Element;
export default DateHeader;

View File

@@ -0,0 +1,70 @@
"use strict";
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var React = _interopRequireWildcard(require("react"));
var _Header = _interopRequireDefault(require("../Header"));
var _PanelContext = _interopRequireDefault(require("../../PanelContext"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function DateHeader(props) {
var prefixCls = props.prefixCls,
generateConfig = props.generateConfig,
locale = props.locale,
viewDate = props.viewDate,
onNextMonth = props.onNextMonth,
onPrevMonth = props.onPrevMonth,
onNextYear = props.onNextYear,
onPrevYear = props.onPrevYear,
onYearClick = props.onYearClick,
onMonthClick = props.onMonthClick;
var _React$useContext = React.useContext(_PanelContext.default),
hideHeader = _React$useContext.hideHeader;
if (hideHeader) {
return null;
}
var headerPrefixCls = "".concat(prefixCls, "-header");
var monthsLocale = locale.shortMonths || (generateConfig.locale.getShortMonths ? generateConfig.locale.getShortMonths(locale.locale) : []);
var month = generateConfig.getMonth(viewDate); // =================== Month & Year ===================
var yearNode = React.createElement("button", {
type: "button",
key: "year",
onClick: onYearClick,
tabIndex: -1,
className: "".concat(prefixCls, "-year-btn")
}, generateConfig.locale.format(locale.locale, viewDate, locale.yearFormat));
var monthNode = React.createElement("button", {
type: "button",
key: "month",
onClick: onMonthClick,
tabIndex: -1,
className: "".concat(prefixCls, "-month-btn")
}, locale.monthFormat ? generateConfig.locale.format(locale.locale, viewDate, locale.monthFormat) : monthsLocale[month]);
var monthYearNodes = locale.monthBeforeYear ? [monthNode, yearNode] : [yearNode, monthNode];
return React.createElement(_Header.default, Object.assign({}, props, {
prefixCls: headerPrefixCls,
onSuperPrev: onPrevYear,
onPrev: onPrevMonth,
onNext: onNextMonth,
onSuperNext: onNextYear
}), monthYearNodes);
}
var _default = DateHeader;
exports.default = _default;

View File

@@ -0,0 +1,12 @@
/// <reference types="react" />
import { DateBodyPassProps, DateRender } from './DateBody';
import { PanelSharedProps } from '../../interface';
import { KeyboardConfig } from '../../utils/uiUtil';
export interface DatePanelProps<DateType> extends PanelSharedProps<DateType>, DateBodyPassProps<DateType> {
active?: boolean;
dateRender?: DateRender<DateType>;
panelName?: string;
keyboardConfig?: KeyboardConfig;
}
declare function DatePanel<DateType>(props: DatePanelProps<DateType>): JSX.Element;
export default DatePanel;

View File

@@ -0,0 +1,119 @@
"use strict";
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var React = _interopRequireWildcard(require("react"));
var _classnames = _interopRequireDefault(require("classnames"));
var _DateBody = _interopRequireDefault(require("./DateBody"));
var _DateHeader = _interopRequireDefault(require("./DateHeader"));
var _dateUtil = require("../../utils/dateUtil");
var _uiUtil = require("../../utils/uiUtil");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
var DATE_ROW_COUNT = 6;
function DatePanel(props) {
var prefixCls = props.prefixCls,
_props$panelName = props.panelName,
panelName = _props$panelName === void 0 ? 'date' : _props$panelName,
keyboardConfig = props.keyboardConfig,
active = props.active,
operationRef = props.operationRef,
generateConfig = props.generateConfig,
value = props.value,
viewDate = props.viewDate,
onViewDateChange = props.onViewDateChange,
onPanelChange = props.onPanelChange,
_onSelect = props.onSelect;
var panelPrefixCls = "".concat(prefixCls, "-").concat(panelName, "-panel"); // ======================= Keyboard =======================
operationRef.current = {
onKeyDown: function onKeyDown(event) {
return (0, _uiUtil.createKeyDownHandler)(event, _objectSpread({
onLeftRight: function onLeftRight(diff) {
_onSelect(generateConfig.addDate(value || viewDate, diff), 'key');
},
onCtrlLeftRight: function onCtrlLeftRight(diff) {
_onSelect(generateConfig.addYear(value || viewDate, diff), 'key');
},
onUpDown: function onUpDown(diff) {
_onSelect(generateConfig.addDate(value || viewDate, diff * _dateUtil.WEEK_DAY_COUNT), 'key');
},
onPageUpDown: function onPageUpDown(diff) {
_onSelect(generateConfig.addMonth(value || viewDate, diff), 'key');
}
}, keyboardConfig));
}
}; // ==================== View Operation ====================
var onYearChange = function onYearChange(diff) {
var newDate = generateConfig.addYear(viewDate, diff);
onViewDateChange(newDate);
onPanelChange(null, newDate);
};
var onMonthChange = function onMonthChange(diff) {
var newDate = generateConfig.addMonth(viewDate, diff);
onViewDateChange(newDate);
onPanelChange(null, newDate);
};
return React.createElement("div", {
className: (0, _classnames.default)(panelPrefixCls, _defineProperty({}, "".concat(panelPrefixCls, "-active"), active))
}, React.createElement(_DateHeader.default, Object.assign({}, props, {
prefixCls: prefixCls,
value: value,
viewDate: viewDate,
// View Operation
onPrevYear: function onPrevYear() {
onYearChange(-1);
},
onNextYear: function onNextYear() {
onYearChange(1);
},
onPrevMonth: function onPrevMonth() {
onMonthChange(-1);
},
onNextMonth: function onNextMonth() {
onMonthChange(1);
},
onMonthClick: function onMonthClick() {
onPanelChange('month', viewDate);
},
onYearClick: function onYearClick() {
onPanelChange('year', viewDate);
}
})), React.createElement(_DateBody.default, Object.assign({}, props, {
onSelect: function onSelect(date) {
return _onSelect(date, 'mouse');
},
prefixCls: prefixCls,
value: value,
viewDate: viewDate,
rowCount: DATE_ROW_COUNT
})));
}
var _default = DatePanel;
exports.default = _default;

View File

@@ -0,0 +1,11 @@
/// <reference types="react" />
import { DatePanelProps } from '../DatePanel';
import { SharedTimeProps } from '../TimePanel';
import { DisabledTime } from '../../interface';
export interface DatetimePanelProps<DateType> extends Omit<DatePanelProps<DateType>, 'disabledHours' | 'disabledMinutes' | 'disabledSeconds'> {
disabledTime?: DisabledTime<DateType>;
showTime?: boolean | SharedTimeProps<DateType>;
defaultValue?: DateType;
}
declare function DatetimePanel<DateType>(props: DatetimePanelProps<DateType>): JSX.Element;
export default DatetimePanel;

View File

@@ -0,0 +1,173 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var React = _interopRequireWildcard(require("react"));
var _classnames = _interopRequireDefault(require("classnames"));
var _KeyCode = _interopRequireDefault(require("rc-util/lib/KeyCode"));
var _DatePanel = _interopRequireDefault(require("../DatePanel"));
var _TimePanel = _interopRequireDefault(require("../TimePanel"));
var _miscUtil = require("../../utils/miscUtil");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(n); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
function setTime(generateConfig, date, defaultDate) {
if (!defaultDate) {
return date;
}
var newDate = date;
newDate = generateConfig.setHour(newDate, generateConfig.getHour(defaultDate));
newDate = generateConfig.setMinute(newDate, generateConfig.getMinute(defaultDate));
newDate = generateConfig.setSecond(newDate, generateConfig.getSecond(defaultDate));
return newDate;
}
var ACTIVE_PANEL = (0, _miscUtil.tuple)('date', 'time');
function DatetimePanel(props) {
var prefixCls = props.prefixCls,
operationRef = props.operationRef,
generateConfig = props.generateConfig,
value = props.value,
defaultValue = props.defaultValue,
disabledTime = props.disabledTime,
showTime = props.showTime,
onSelect = props.onSelect;
var panelPrefixCls = "".concat(prefixCls, "-datetime-panel");
var _React$useState = React.useState(null),
_React$useState2 = _slicedToArray(_React$useState, 2),
activePanel = _React$useState2[0],
setActivePanel = _React$useState2[1];
var dateOperationRef = React.useRef({});
var timeOperationRef = React.useRef({});
var timeProps = _typeof(showTime) === 'object' ? _objectSpread({}, showTime) : {}; // ======================= Keyboard =======================
function getNextActive(offset) {
var activeIndex = ACTIVE_PANEL.indexOf(activePanel) + offset;
var nextActivePanel = ACTIVE_PANEL[activeIndex] || null;
return nextActivePanel;
}
var onBlur = function onBlur(e) {
if (timeOperationRef.current.onBlur) {
timeOperationRef.current.onBlur(e);
}
setActivePanel(null);
};
operationRef.current = {
onKeyDown: function onKeyDown(event) {
// Switch active panel
if (event.which === _KeyCode.default.TAB) {
var nextActivePanel = getNextActive(event.shiftKey ? -1 : 1);
setActivePanel(nextActivePanel);
if (nextActivePanel) {
event.preventDefault();
}
return true;
} // Operate on current active panel
if (activePanel) {
var ref = activePanel === 'date' ? dateOperationRef : timeOperationRef;
if (ref.current && ref.current.onKeyDown) {
ref.current.onKeyDown(event);
}
return true;
} // Switch first active panel if operate without panel
if ([_KeyCode.default.LEFT, _KeyCode.default.RIGHT, _KeyCode.default.UP, _KeyCode.default.DOWN].includes(event.which)) {
setActivePanel('date');
return true;
}
return false;
},
onBlur: onBlur,
onClose: onBlur
}; // ======================== Events ========================
var onInternalSelect = function onInternalSelect(date, source) {
var selectedDate = date;
if (source === 'date' && !value && timeProps.defaultValue) {
// Date with time defaultValue
selectedDate = generateConfig.setHour(selectedDate, generateConfig.getHour(timeProps.defaultValue));
selectedDate = generateConfig.setMinute(selectedDate, generateConfig.getMinute(timeProps.defaultValue));
selectedDate = generateConfig.setSecond(selectedDate, generateConfig.getSecond(timeProps.defaultValue));
} else if (source === 'time' && !value && defaultValue) {
selectedDate = generateConfig.setYear(selectedDate, generateConfig.getYear(defaultValue));
selectedDate = generateConfig.setMonth(selectedDate, generateConfig.getMonth(defaultValue));
selectedDate = generateConfig.setDate(selectedDate, generateConfig.getDate(defaultValue));
}
if (onSelect) {
onSelect(selectedDate, 'mouse');
}
}; // ======================== Render ========================
var disabledTimes = disabledTime ? disabledTime(value || null) : {};
return React.createElement("div", {
className: (0, _classnames.default)(panelPrefixCls, _defineProperty({}, "".concat(panelPrefixCls, "-active"), activePanel))
}, React.createElement(_DatePanel.default, Object.assign({}, props, {
operationRef: dateOperationRef,
active: activePanel === 'date',
onSelect: function onSelect(date) {
onInternalSelect(setTime(generateConfig, date, showTime && _typeof(showTime) === 'object' ? showTime.defaultValue : null), 'date');
}
})), React.createElement(_TimePanel.default, Object.assign({}, props, {
format: undefined
}, timeProps, disabledTimes, {
defaultValue: undefined,
operationRef: timeOperationRef,
active: activePanel === 'time',
onSelect: function onSelect(date) {
onInternalSelect(date, 'time');
}
})));
}
var _default = DatetimePanel;
exports.default = _default;

View File

@@ -0,0 +1,12 @@
/// <reference types="react" />
import { GenerateConfig } from '../../generate';
export declare const DECADE_COL_COUNT = 3;
export interface YearBodyProps<DateType> {
prefixCls: string;
generateConfig: GenerateConfig<DateType>;
viewDate: DateType;
disabledDate?: (date: DateType) => boolean;
onSelect: (value: DateType) => void;
}
declare function DecadeBody<DateType>(props: YearBodyProps<DateType>): JSX.Element;
export default DecadeBody;

View File

@@ -0,0 +1,69 @@
"use strict";
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.DECADE_COL_COUNT = void 0;
var React = _interopRequireWildcard(require("react"));
var _ = require(".");
var _PanelBody = _interopRequireDefault(require("../PanelBody"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
var DECADE_COL_COUNT = 3;
exports.DECADE_COL_COUNT = DECADE_COL_COUNT;
var DECADE_ROW_COUNT = 4;
function DecadeBody(props) {
var DECADE_UNIT_DIFF_DES = _.DECADE_UNIT_DIFF - 1;
var prefixCls = props.prefixCls,
viewDate = props.viewDate,
generateConfig = props.generateConfig,
disabledDate = props.disabledDate;
var cellPrefixCls = "".concat(prefixCls, "-cell");
var yearNumber = generateConfig.getYear(viewDate);
var decadeYearNumber = Math.floor(yearNumber / _.DECADE_UNIT_DIFF) * _.DECADE_UNIT_DIFF;
var startDecadeYear = Math.floor(yearNumber / _.DECADE_DISTANCE_COUNT) * _.DECADE_DISTANCE_COUNT;
var endDecadeYear = startDecadeYear + _.DECADE_DISTANCE_COUNT - 1;
var baseDecadeYear = generateConfig.setYear(viewDate, startDecadeYear - Math.ceil((DECADE_COL_COUNT * DECADE_ROW_COUNT * _.DECADE_UNIT_DIFF - _.DECADE_DISTANCE_COUNT) / 2));
var getCellClassName = function getCellClassName(date) {
var _ref;
var disabled = disabledDate && disabledDate(date);
var startDecadeNumber = generateConfig.getYear(date);
var endDecadeNumber = startDecadeNumber + DECADE_UNIT_DIFF_DES;
return _ref = {}, _defineProperty(_ref, "".concat(cellPrefixCls, "-disabled"), disabled), _defineProperty(_ref, "".concat(cellPrefixCls, "-in-view"), startDecadeYear <= startDecadeNumber && endDecadeNumber <= endDecadeYear), _defineProperty(_ref, "".concat(cellPrefixCls, "-selected"), startDecadeNumber === decadeYearNumber), _ref;
};
return React.createElement(_PanelBody.default, Object.assign({}, props, {
rowNum: DECADE_ROW_COUNT,
colNum: DECADE_COL_COUNT,
baseDate: baseDecadeYear,
getCellText: function getCellText(date) {
var startDecadeNumber = generateConfig.getYear(date);
return "".concat(startDecadeNumber, "-").concat(startDecadeNumber + DECADE_UNIT_DIFF_DES);
},
getCellClassName: getCellClassName,
getCellDate: function getCellDate(date, offset) {
return generateConfig.addYear(date, offset * _.DECADE_UNIT_DIFF);
}
}));
}
var _default = DecadeBody;
exports.default = _default;

View File

@@ -0,0 +1,11 @@
/// <reference types="react" />
import { GenerateConfig } from '../../generate';
export interface YearHeaderProps<DateType> {
prefixCls: string;
viewDate: DateType;
generateConfig: GenerateConfig<DateType>;
onPrevDecades: () => void;
onNextDecades: () => void;
}
declare function DecadeHeader<DateType>(props: YearHeaderProps<DateType>): JSX.Element;
export default DecadeHeader;

View File

@@ -0,0 +1,52 @@
"use strict";
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var React = _interopRequireWildcard(require("react"));
var _Header = _interopRequireDefault(require("../Header"));
var _ = require(".");
var _PanelContext = _interopRequireDefault(require("../../PanelContext"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function DecadeHeader(props) {
var prefixCls = props.prefixCls,
generateConfig = props.generateConfig,
viewDate = props.viewDate,
onPrevDecades = props.onPrevDecades,
onNextDecades = props.onNextDecades;
var _React$useContext = React.useContext(_PanelContext.default),
hideHeader = _React$useContext.hideHeader;
if (hideHeader) {
return null;
}
var headerPrefixCls = "".concat(prefixCls, "-header");
var yearNumber = generateConfig.getYear(viewDate);
var startYear = Math.floor(yearNumber / _.DECADE_DISTANCE_COUNT) * _.DECADE_DISTANCE_COUNT;
var endYear = startYear + _.DECADE_DISTANCE_COUNT - 1;
return React.createElement(_Header.default, Object.assign({}, props, {
prefixCls: headerPrefixCls,
onSuperPrev: onPrevDecades,
onSuperNext: onNextDecades
}), startYear, "-", endYear);
}
var _default = DecadeHeader;
exports.default = _default;

View File

@@ -0,0 +1,7 @@
/// <reference types="react" />
import { PanelSharedProps } from '../../interface';
export declare type DecadePanelProps<DateType> = PanelSharedProps<DateType>;
export declare const DECADE_UNIT_DIFF = 10;
export declare const DECADE_DISTANCE_COUNT: number;
declare function DecadePanel<DateType>(props: DecadePanelProps<DateType>): JSX.Element;
export default DecadePanel;

View File

@@ -0,0 +1,86 @@
"use strict";
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.DECADE_DISTANCE_COUNT = exports.DECADE_UNIT_DIFF = void 0;
var React = _interopRequireWildcard(require("react"));
var _DecadeHeader = _interopRequireDefault(require("./DecadeHeader"));
var _DecadeBody = _interopRequireWildcard(require("./DecadeBody"));
var _uiUtil = require("../../utils/uiUtil");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
var DECADE_UNIT_DIFF = 10;
exports.DECADE_UNIT_DIFF = DECADE_UNIT_DIFF;
var DECADE_DISTANCE_COUNT = DECADE_UNIT_DIFF * 10;
exports.DECADE_DISTANCE_COUNT = DECADE_DISTANCE_COUNT;
function DecadePanel(props) {
var prefixCls = props.prefixCls,
onViewDateChange = props.onViewDateChange,
generateConfig = props.generateConfig,
viewDate = props.viewDate,
operationRef = props.operationRef,
onSelect = props.onSelect,
onPanelChange = props.onPanelChange;
var panelPrefixCls = "".concat(prefixCls, "-decade-panel"); // ======================= Keyboard =======================
operationRef.current = {
onKeyDown: function onKeyDown(event) {
return (0, _uiUtil.createKeyDownHandler)(event, {
onLeftRight: function onLeftRight(diff) {
onSelect(generateConfig.addYear(viewDate, diff * DECADE_UNIT_DIFF), 'key');
},
onCtrlLeftRight: function onCtrlLeftRight(diff) {
onSelect(generateConfig.addYear(viewDate, diff * DECADE_DISTANCE_COUNT), 'key');
},
onUpDown: function onUpDown(diff) {
onSelect(generateConfig.addYear(viewDate, diff * DECADE_UNIT_DIFF * _DecadeBody.DECADE_COL_COUNT), 'key');
},
onEnter: function onEnter() {
onPanelChange('year', viewDate);
}
});
}
}; // ==================== View Operation ====================
var onDecadesChange = function onDecadesChange(diff) {
var newDate = generateConfig.addYear(viewDate, diff * DECADE_DISTANCE_COUNT);
onViewDateChange(newDate);
onPanelChange(null, newDate);
};
var onInternalSelect = function onInternalSelect(date) {
onSelect(date, 'mouse');
onPanelChange('year', date);
};
return React.createElement("div", {
className: panelPrefixCls
}, React.createElement(_DecadeHeader.default, Object.assign({}, props, {
prefixCls: prefixCls,
onPrevDecades: function onPrevDecades() {
onDecadesChange(-1);
},
onNextDecades: function onNextDecades() {
onDecadesChange(1);
}
})), React.createElement(_DecadeBody.default, Object.assign({}, props, {
prefixCls: prefixCls,
onSelect: onInternalSelect
})));
}
var _default = DecadePanel;
exports.default = _default;

19
web/node_modules/rc-picker/lib/panels/Header.d.ts generated vendored Normal file
View File

@@ -0,0 +1,19 @@
import * as React from 'react';
export interface HeaderProps {
prefixCls: string;
prevIcon?: React.ReactNode;
nextIcon?: React.ReactNode;
superPrevIcon?: React.ReactNode;
superNextIcon?: React.ReactNode;
/** Last one step */
onPrev?: () => void;
/** Next one step */
onNext?: () => void;
/** Last multiple steps */
onSuperPrev?: () => void;
/** Next multiple steps */
onSuperNext?: () => void;
children?: React.ReactNode;
}
declare function Header({ prefixCls, prevIcon, nextIcon, superPrevIcon, superNextIcon, onSuperPrev, onSuperNext, onPrev, onNext, children, }: HeaderProps): JSX.Element;
export default Header;

76
web/node_modules/rc-picker/lib/panels/Header.js generated vendored Normal file
View File

@@ -0,0 +1,76 @@
"use strict";
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var React = _interopRequireWildcard(require("react"));
var _PanelContext = _interopRequireDefault(require("../PanelContext"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
var HIDDEN_STYLE = {
visibility: 'hidden'
};
function Header(_ref) {
var prefixCls = _ref.prefixCls,
_ref$prevIcon = _ref.prevIcon,
prevIcon = _ref$prevIcon === void 0 ? "\u2039" : _ref$prevIcon,
_ref$nextIcon = _ref.nextIcon,
nextIcon = _ref$nextIcon === void 0 ? "\u203A" : _ref$nextIcon,
_ref$superPrevIcon = _ref.superPrevIcon,
superPrevIcon = _ref$superPrevIcon === void 0 ? "\xAB" : _ref$superPrevIcon,
_ref$superNextIcon = _ref.superNextIcon,
superNextIcon = _ref$superNextIcon === void 0 ? "\xBB" : _ref$superNextIcon,
onSuperPrev = _ref.onSuperPrev,
onSuperNext = _ref.onSuperNext,
onPrev = _ref.onPrev,
onNext = _ref.onNext,
children = _ref.children;
var _React$useContext = React.useContext(_PanelContext.default),
hideNextBtn = _React$useContext.hideNextBtn,
hidePrevBtn = _React$useContext.hidePrevBtn;
return React.createElement("div", {
className: prefixCls
}, onSuperPrev && React.createElement("button", {
type: "button",
onClick: onSuperPrev,
tabIndex: -1,
className: "".concat(prefixCls, "-super-prev-btn"),
style: hidePrevBtn ? HIDDEN_STYLE : {}
}, superPrevIcon), onPrev && React.createElement("button", {
type: "button",
onClick: onPrev,
tabIndex: -1,
className: "".concat(prefixCls, "-prev-btn"),
style: hidePrevBtn ? HIDDEN_STYLE : {}
}, prevIcon), React.createElement("div", {
className: "".concat(prefixCls, "-view")
}, children), onNext && React.createElement("button", {
type: "button",
onClick: onNext,
tabIndex: -1,
className: "".concat(prefixCls, "-next-btn"),
style: hideNextBtn ? HIDDEN_STYLE : {}
}, nextIcon), onSuperNext && React.createElement("button", {
type: "button",
onClick: onSuperNext,
tabIndex: -1,
className: "".concat(prefixCls, "-super-next-btn"),
style: hideNextBtn ? HIDDEN_STYLE : {}
}, superNextIcon));
}
var _default = Header;
exports.default = _default;

View File

@@ -0,0 +1,17 @@
import * as React from 'react';
import { GenerateConfig } from '../../generate';
import { Locale } from '../../interface';
export declare const MONTH_COL_COUNT = 3;
export declare type MonthCellRender<DateType> = (currentDate: DateType, locale: Locale) => React.ReactNode;
export interface MonthBodyProps<DateType> {
prefixCls: string;
locale: Locale;
generateConfig: GenerateConfig<DateType>;
value?: DateType | null;
viewDate: DateType;
disabledDate?: (date: DateType) => boolean;
monthCellRender?: MonthCellRender<DateType>;
onSelect: (value: DateType) => void;
}
declare function MonthBody<DateType>(props: MonthBodyProps<DateType>): JSX.Element;
export default MonthBody;

View File

@@ -0,0 +1,81 @@
"use strict";
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.MONTH_COL_COUNT = void 0;
var React = _interopRequireWildcard(require("react"));
var _dateUtil = require("../../utils/dateUtil");
var _RangeContext = _interopRequireDefault(require("../../RangeContext"));
var _useCellClassName = _interopRequireDefault(require("../../hooks/useCellClassName"));
var _PanelBody = _interopRequireDefault(require("../PanelBody"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
var MONTH_COL_COUNT = 3;
exports.MONTH_COL_COUNT = MONTH_COL_COUNT;
var MONTH_ROW_COUNT = 4;
function MonthBody(props) {
var prefixCls = props.prefixCls,
locale = props.locale,
value = props.value,
viewDate = props.viewDate,
generateConfig = props.generateConfig,
monthCellRender = props.monthCellRender;
var _React$useContext = React.useContext(_RangeContext.default),
rangedValue = _React$useContext.rangedValue,
hoverRangedValue = _React$useContext.hoverRangedValue;
var cellPrefixCls = "".concat(prefixCls, "-cell");
var getCellClassName = (0, _useCellClassName.default)({
cellPrefixCls: cellPrefixCls,
value: value,
generateConfig: generateConfig,
rangedValue: rangedValue,
hoverRangedValue: hoverRangedValue,
isSameCell: function isSameCell(current, target) {
return (0, _dateUtil.isSameMonth)(generateConfig, current, target);
},
isInView: function isInView() {
return true;
},
offsetCell: function offsetCell(date, offset) {
return generateConfig.addMonth(date, offset);
}
});
var monthsLocale = locale.shortMonths || (generateConfig.locale.getShortMonths ? generateConfig.locale.getShortMonths(locale.locale) : []);
var baseMonth = generateConfig.setMonth(viewDate, 0);
var getCellNode = monthCellRender ? function (date) {
return monthCellRender(date, locale);
} : undefined;
return React.createElement(_PanelBody.default, Object.assign({}, props, {
rowNum: MONTH_ROW_COUNT,
colNum: MONTH_COL_COUNT,
baseDate: baseMonth,
getCellNode: getCellNode,
getCellText: function getCellText(date) {
return locale.monthFormat ? generateConfig.locale.format(locale.locale, date, locale.monthFormat) : monthsLocale[generateConfig.getMonth(date)];
},
getCellClassName: getCellClassName,
getCellDate: generateConfig.addMonth,
titleCell: function titleCell(date) {
return generateConfig.locale.format(locale.locale, date, 'YYYY-MM');
}
}));
}
var _default = MonthBody;
exports.default = _default;

View File

@@ -0,0 +1,14 @@
/// <reference types="react" />
import { Locale } from '../../interface';
import { GenerateConfig } from '../../generate';
export interface MonthHeaderProps<DateType> {
prefixCls: string;
viewDate: DateType;
locale: Locale;
generateConfig: GenerateConfig<DateType>;
onPrevYear: () => void;
onNextYear: () => void;
onYearClick: () => void;
}
declare function MonthHeader<DateType>(props: MonthHeaderProps<DateType>): JSX.Element;
export default MonthHeader;

View File

@@ -0,0 +1,52 @@
"use strict";
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var React = _interopRequireWildcard(require("react"));
var _Header = _interopRequireDefault(require("../Header"));
var _PanelContext = _interopRequireDefault(require("../../PanelContext"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function MonthHeader(props) {
var prefixCls = props.prefixCls,
generateConfig = props.generateConfig,
locale = props.locale,
viewDate = props.viewDate,
onNextYear = props.onNextYear,
onPrevYear = props.onPrevYear,
onYearClick = props.onYearClick;
var _React$useContext = React.useContext(_PanelContext.default),
hideHeader = _React$useContext.hideHeader;
if (hideHeader) {
return null;
}
var headerPrefixCls = "".concat(prefixCls, "-header");
return React.createElement(_Header.default, {
prefixCls: headerPrefixCls,
onSuperPrev: onPrevYear,
onSuperNext: onNextYear
}, React.createElement("button", {
type: "button",
key: "year",
onClick: onYearClick,
className: "".concat(prefixCls, "-year-btn")
}, generateConfig.locale.format(locale.locale, viewDate, locale.yearFormat)));
}
var _default = MonthHeader;
exports.default = _default;

View File

@@ -0,0 +1,8 @@
/// <reference types="react" />
import { MonthCellRender } from './MonthBody';
import { PanelSharedProps } from '../../interface';
export interface MonthPanelProps<DateType> extends PanelSharedProps<DateType> {
monthCellContentRender?: MonthCellRender<DateType>;
}
declare function MonthPanel<DateType>(props: MonthPanelProps<DateType>): JSX.Element;
export default MonthPanel;

View File

@@ -0,0 +1,84 @@
"use strict";
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var React = _interopRequireWildcard(require("react"));
var _MonthHeader = _interopRequireDefault(require("./MonthHeader"));
var _MonthBody = _interopRequireWildcard(require("./MonthBody"));
var _uiUtil = require("../../utils/uiUtil");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function MonthPanel(props) {
var prefixCls = props.prefixCls,
operationRef = props.operationRef,
onViewDateChange = props.onViewDateChange,
generateConfig = props.generateConfig,
value = props.value,
viewDate = props.viewDate,
onPanelChange = props.onPanelChange,
_onSelect = props.onSelect;
var panelPrefixCls = "".concat(prefixCls, "-month-panel"); // ======================= Keyboard =======================
operationRef.current = {
onKeyDown: function onKeyDown(event) {
return (0, _uiUtil.createKeyDownHandler)(event, {
onLeftRight: function onLeftRight(diff) {
_onSelect(generateConfig.addMonth(value || viewDate, diff), 'key');
},
onCtrlLeftRight: function onCtrlLeftRight(diff) {
_onSelect(generateConfig.addYear(value || viewDate, diff), 'key');
},
onUpDown: function onUpDown(diff) {
_onSelect(generateConfig.addMonth(value || viewDate, diff * _MonthBody.MONTH_COL_COUNT), 'key');
},
onEnter: function onEnter() {
onPanelChange('date', value || viewDate);
}
});
}
}; // ==================== View Operation ====================
var onYearChange = function onYearChange(diff) {
var newDate = generateConfig.addYear(viewDate, diff);
onViewDateChange(newDate);
onPanelChange(null, newDate);
};
return React.createElement("div", {
className: panelPrefixCls
}, React.createElement(_MonthHeader.default, Object.assign({}, props, {
prefixCls: prefixCls,
onPrevYear: function onPrevYear() {
onYearChange(-1);
},
onNextYear: function onNextYear() {
onYearChange(1);
},
onYearClick: function onYearClick() {
onPanelChange('year', viewDate);
}
})), React.createElement(_MonthBody.default, Object.assign({}, props, {
prefixCls: prefixCls,
onSelect: function onSelect(date) {
_onSelect(date, 'mouse');
onPanelChange('date', date);
}
})));
}
var _default = MonthPanel;
exports.default = _default;

18
web/node_modules/rc-picker/lib/panels/PanelBody.d.ts generated vendored Normal file
View File

@@ -0,0 +1,18 @@
import * as React from 'react';
export interface PanelBodyProps<DateType> {
prefixCls: string;
disabledDate?: (date: DateType) => boolean;
onSelect: (value: DateType) => void;
headerCells?: React.ReactNode;
rowNum: number;
colNum: number;
baseDate: DateType;
getCellClassName: (date: DateType) => Record<string, boolean | undefined>;
getCellDate: (date: DateType, offset: number) => DateType;
getCellText: (date: DateType) => React.ReactNode;
getCellNode?: (date: DateType) => React.ReactNode;
titleCell?: (date: DateType) => string;
prefixColumn?: (date: DateType) => React.ReactNode;
rowClassName?: (date: DateType) => string;
}
export default function PanelBody<DateType>({ prefixCls, disabledDate, onSelect, rowNum, colNum, prefixColumn, rowClassName, baseDate, getCellClassName, getCellText, getCellNode, getCellDate, titleCell, headerCells, }: PanelBodyProps<DateType>): JSX.Element;

108
web/node_modules/rc-picker/lib/panels/PanelBody.js generated vendored Normal file
View File

@@ -0,0 +1,108 @@
"use strict";
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = PanelBody;
var React = _interopRequireWildcard(require("react"));
var _classnames = _interopRequireDefault(require("classnames"));
var _PanelContext = _interopRequireDefault(require("../PanelContext"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
function PanelBody(_ref) {
var prefixCls = _ref.prefixCls,
disabledDate = _ref.disabledDate,
onSelect = _ref.onSelect,
rowNum = _ref.rowNum,
colNum = _ref.colNum,
prefixColumn = _ref.prefixColumn,
rowClassName = _ref.rowClassName,
baseDate = _ref.baseDate,
getCellClassName = _ref.getCellClassName,
getCellText = _ref.getCellText,
getCellNode = _ref.getCellNode,
getCellDate = _ref.getCellDate,
titleCell = _ref.titleCell,
headerCells = _ref.headerCells;
var _React$useContext = React.useContext(_PanelContext.default),
onDateMouseEnter = _React$useContext.onDateMouseEnter,
onDateMouseLeave = _React$useContext.onDateMouseLeave;
var cellPrefixCls = "".concat(prefixCls, "-cell"); // =============================== Body ===============================
var rows = [];
for (var i = 0; i < rowNum; i += 1) {
var row = [];
var rowStartDate = void 0;
var _loop = function _loop(j) {
var offset = i * colNum + j;
var currentDate = getCellDate(baseDate, offset);
var disabled = disabledDate && disabledDate(currentDate);
if (j === 0) {
rowStartDate = currentDate;
if (prefixColumn) {
row.push(prefixColumn(rowStartDate));
}
}
row.push(React.createElement("td", {
key: j,
title: titleCell && titleCell(currentDate),
className: (0, _classnames.default)(cellPrefixCls, _objectSpread(_defineProperty({}, "".concat(cellPrefixCls, "-disabled"), disabled), getCellClassName(currentDate))),
onClick: function onClick() {
if (!disabled) {
onSelect(currentDate);
}
},
onMouseEnter: function onMouseEnter() {
if (!disabled && onDateMouseEnter) {
onDateMouseEnter(currentDate);
}
},
onMouseLeave: function onMouseLeave() {
if (!disabled && onDateMouseLeave) {
onDateMouseLeave(currentDate);
}
}
}, getCellNode ? getCellNode(currentDate) : React.createElement("div", {
className: "".concat(cellPrefixCls, "-inner")
}, getCellText(currentDate))));
};
for (var j = 0; j < colNum; j += 1) {
_loop(j);
}
rows.push(React.createElement("tr", {
key: i,
className: rowClassName && rowClassName(rowStartDate)
}, row));
}
return React.createElement("div", {
className: "".concat(prefixCls, "-body")
}, React.createElement("table", {
className: "".concat(prefixCls, "-content")
}, headerCells && React.createElement("thead", null, React.createElement("tr", null, headerCells)), React.createElement("tbody", null, rows)));
}

View File

@@ -0,0 +1,15 @@
/// <reference types="react" />
import { GenerateConfig } from '../../generate';
import { Locale } from '../../interface';
export declare const QUARTER_COL_COUNT = 4;
export interface QuarterBodyProps<DateType> {
prefixCls: string;
locale: Locale;
generateConfig: GenerateConfig<DateType>;
value?: DateType | null;
viewDate: DateType;
disabledDate?: (date: DateType) => boolean;
onSelect: (value: DateType) => void;
}
declare function QuarterBody<DateType>(props: QuarterBodyProps<DateType>): JSX.Element;
export default QuarterBody;

View File

@@ -0,0 +1,77 @@
"use strict";
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.QUARTER_COL_COUNT = void 0;
var React = _interopRequireWildcard(require("react"));
var _dateUtil = require("../../utils/dateUtil");
var _RangeContext = _interopRequireDefault(require("../../RangeContext"));
var _useCellClassName = _interopRequireDefault(require("../../hooks/useCellClassName"));
var _PanelBody = _interopRequireDefault(require("../PanelBody"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
var QUARTER_COL_COUNT = 4;
exports.QUARTER_COL_COUNT = QUARTER_COL_COUNT;
var QUARTER_ROW_COUNT = 1;
function QuarterBody(props) {
var prefixCls = props.prefixCls,
locale = props.locale,
value = props.value,
viewDate = props.viewDate,
generateConfig = props.generateConfig;
var _React$useContext = React.useContext(_RangeContext.default),
rangedValue = _React$useContext.rangedValue,
hoverRangedValue = _React$useContext.hoverRangedValue;
var cellPrefixCls = "".concat(prefixCls, "-cell");
var getCellClassName = (0, _useCellClassName.default)({
cellPrefixCls: cellPrefixCls,
value: value,
generateConfig: generateConfig,
rangedValue: rangedValue,
hoverRangedValue: hoverRangedValue,
isSameCell: function isSameCell(current, target) {
return (0, _dateUtil.isSameQuarter)(generateConfig, current, target);
},
isInView: function isInView() {
return true;
},
offsetCell: function offsetCell(date, offset) {
return generateConfig.addMonth(date, offset * 3);
}
});
var baseQuarter = generateConfig.setDate(generateConfig.setMonth(viewDate, 0), 1);
return React.createElement(_PanelBody.default, Object.assign({}, props, {
rowNum: QUARTER_ROW_COUNT,
colNum: QUARTER_COL_COUNT,
baseDate: baseQuarter,
getCellText: function getCellText(date) {
return generateConfig.locale.format(locale.locale, date, locale.quarterFormat || '[Q]Q');
},
getCellClassName: getCellClassName,
getCellDate: function getCellDate(date, offset) {
return generateConfig.addMonth(date, offset * 3);
},
titleCell: function titleCell(date) {
return generateConfig.locale.format(locale.locale, date, 'YYYY-[Q]Q');
}
}));
}
var _default = QuarterBody;
exports.default = _default;

View File

@@ -0,0 +1,14 @@
/// <reference types="react" />
import { Locale } from '../../interface';
import { GenerateConfig } from '../../generate';
export interface QuarterHeaderProps<DateType> {
prefixCls: string;
viewDate: DateType;
locale: Locale;
generateConfig: GenerateConfig<DateType>;
onPrevYear: () => void;
onNextYear: () => void;
onYearClick: () => void;
}
declare function QuarterHeader<DateType>(props: QuarterHeaderProps<DateType>): JSX.Element;
export default QuarterHeader;

View File

@@ -0,0 +1,52 @@
"use strict";
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var React = _interopRequireWildcard(require("react"));
var _Header = _interopRequireDefault(require("../Header"));
var _PanelContext = _interopRequireDefault(require("../../PanelContext"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function QuarterHeader(props) {
var prefixCls = props.prefixCls,
generateConfig = props.generateConfig,
locale = props.locale,
viewDate = props.viewDate,
onNextYear = props.onNextYear,
onPrevYear = props.onPrevYear,
onYearClick = props.onYearClick;
var _React$useContext = React.useContext(_PanelContext.default),
hideHeader = _React$useContext.hideHeader;
if (hideHeader) {
return null;
}
var headerPrefixCls = "".concat(prefixCls, "-header");
return React.createElement(_Header.default, {
prefixCls: headerPrefixCls,
onSuperPrev: onPrevYear,
onSuperNext: onNextYear
}, React.createElement("button", {
type: "button",
key: "year",
onClick: onYearClick,
className: "".concat(prefixCls, "-year-btn")
}, generateConfig.locale.format(locale.locale, viewDate, locale.yearFormat)));
}
var _default = QuarterHeader;
exports.default = _default;

View File

@@ -0,0 +1,6 @@
/// <reference types="react" />
import { PanelSharedProps } from '../../interface';
export interface QuarterPanelProps<DateType> extends PanelSharedProps<DateType> {
}
declare function QuarterPanel<DateType>(props: QuarterPanelProps<DateType>): JSX.Element;
export default QuarterPanel;

View File

@@ -0,0 +1,79 @@
"use strict";
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var React = _interopRequireWildcard(require("react"));
var _QuarterHeader = _interopRequireDefault(require("./QuarterHeader"));
var _QuarterBody = _interopRequireDefault(require("./QuarterBody"));
var _uiUtil = require("../../utils/uiUtil");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function QuarterPanel(props) {
var prefixCls = props.prefixCls,
operationRef = props.operationRef,
onViewDateChange = props.onViewDateChange,
generateConfig = props.generateConfig,
value = props.value,
viewDate = props.viewDate,
onPanelChange = props.onPanelChange,
_onSelect = props.onSelect;
var panelPrefixCls = "".concat(prefixCls, "-quarter-panel"); // ======================= Keyboard =======================
operationRef.current = {
onKeyDown: function onKeyDown(event) {
return (0, _uiUtil.createKeyDownHandler)(event, {
onLeftRight: function onLeftRight(diff) {
_onSelect(generateConfig.addMonth(value || viewDate, diff * 3), 'key');
},
onCtrlLeftRight: function onCtrlLeftRight(diff) {
_onSelect(generateConfig.addYear(value || viewDate, diff), 'key');
},
onUpDown: function onUpDown(diff) {
_onSelect(generateConfig.addYear(value || viewDate, diff), 'key');
}
});
}
}; // ==================== View Operation ====================
var onYearChange = function onYearChange(diff) {
var newDate = generateConfig.addYear(viewDate, diff);
onViewDateChange(newDate);
onPanelChange(null, newDate);
};
return React.createElement("div", {
className: panelPrefixCls
}, React.createElement(_QuarterHeader.default, Object.assign({}, props, {
prefixCls: prefixCls,
onPrevYear: function onPrevYear() {
onYearChange(-1);
},
onNextYear: function onNextYear() {
onYearChange(1);
},
onYearClick: function onYearClick() {
onPanelChange('year', viewDate);
}
})), React.createElement(_QuarterBody.default, Object.assign({}, props, {
prefixCls: prefixCls,
onSelect: function onSelect(date) {
_onSelect(date, 'mouse');
}
})));
}
var _default = QuarterPanel;
exports.default = _default;

View File

@@ -0,0 +1,18 @@
import * as React from 'react';
import { GenerateConfig } from '../../generate';
import { Locale, OnSelect } from '../../interface';
import { SharedTimeProps } from '.';
export interface BodyOperationRef {
onUpDown: (diff: number) => void;
}
export interface TimeBodyProps<DateType> extends SharedTimeProps<DateType> {
prefixCls: string;
locale: Locale;
generateConfig: GenerateConfig<DateType>;
value?: DateType | null;
onSelect: OnSelect<DateType>;
activeColumnIndex: number;
operationRef: React.MutableRefObject<BodyOperationRef | undefined>;
}
declare function TimeBody<DateType>(props: TimeBodyProps<DateType>): JSX.Element;
export default TimeBody;

View File

@@ -0,0 +1,173 @@
"use strict";
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var React = _interopRequireWildcard(require("react"));
var _TimeUnitColumn = _interopRequireDefault(require("./TimeUnitColumn"));
var _miscUtil = require("../../utils/miscUtil");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function generateUnits(start, end, step, disabledUnits) {
var units = [];
for (var i = start; i <= end; i += step) {
units.push({
label: (0, _miscUtil.leftPad)(i, 2),
value: i,
disabled: (disabledUnits || []).includes(i)
});
}
return units;
}
function TimeBody(props) {
var generateConfig = props.generateConfig,
prefixCls = props.prefixCls,
operationRef = props.operationRef,
activeColumnIndex = props.activeColumnIndex,
value = props.value,
showHour = props.showHour,
showMinute = props.showMinute,
showSecond = props.showSecond,
use12Hours = props.use12Hours,
_props$hourStep = props.hourStep,
hourStep = _props$hourStep === void 0 ? 1 : _props$hourStep,
_props$minuteStep = props.minuteStep,
minuteStep = _props$minuteStep === void 0 ? 1 : _props$minuteStep,
_props$secondStep = props.secondStep,
secondStep = _props$secondStep === void 0 ? 1 : _props$secondStep,
disabledHours = props.disabledHours,
disabledMinutes = props.disabledMinutes,
disabledSeconds = props.disabledSeconds,
hideDisabledOptions = props.hideDisabledOptions,
onSelect = props.onSelect;
var columns = [];
var contentPrefixCls = "".concat(prefixCls, "-content");
var columnPrefixCls = "".concat(prefixCls, "-time-panel");
var isPM;
var hour = value ? generateConfig.getHour(value) : -1;
var minute = value ? generateConfig.getMinute(value) : -1;
var second = value ? generateConfig.getSecond(value) : -1;
var setTime = function setTime(isNewPM, newHour, newMinute, newSecond) {
var newDate = value || generateConfig.getNow();
var mergedHour = Math.max(0, newHour);
var mergedMinute = Math.max(0, newMinute);
var mergedSecond = Math.max(0, newSecond);
newDate = generateConfig.setSecond(newDate, mergedSecond);
newDate = generateConfig.setMinute(newDate, mergedMinute);
newDate = generateConfig.setHour(newDate, !use12Hours || !isNewPM ? mergedHour : mergedHour + 12);
return newDate;
}; // ========================= Unit =========================
var hours = generateUnits(0, use12Hours ? 11 : 23, hourStep, disabledHours && disabledHours()); // Should additional logic to handle 12 hours
if (use12Hours && hour !== -1) {
isPM = hour >= 12;
hour %= 12;
hours[0].label = '12';
}
var minutes = generateUnits(0, 59, minuteStep, disabledMinutes && disabledMinutes(hour));
var seconds = generateUnits(0, 59, secondStep, disabledSeconds && disabledSeconds(hour, minute)); // ====================== Operations ======================
operationRef.current = {
onUpDown: function onUpDown(diff) {
var column = columns[activeColumnIndex];
if (column) {
var valueIndex = column.units.findIndex(function (unit) {
return unit.value === column.value;
});
var unitLen = column.units.length;
for (var i = 1; i < unitLen; i += 1) {
var nextUnit = column.units[(valueIndex + diff * i + unitLen) % unitLen];
if (nextUnit.disabled !== true) {
column.onSelect(nextUnit.value);
break;
}
}
}
}
}; // ======================== Render ========================
function addColumnNode(condition, node, columnValue, units, onColumnSelect) {
if (condition !== false) {
columns.push({
node: React.cloneElement(node, {
prefixCls: columnPrefixCls,
value: columnValue,
active: activeColumnIndex === columns.length,
onSelect: onColumnSelect,
units: units,
hideDisabledOptions: hideDisabledOptions
}),
onSelect: onColumnSelect,
value: columnValue,
units: units
});
}
} // Hour
addColumnNode(showHour, React.createElement(_TimeUnitColumn.default, {
key: "hour"
}), hour, hours, function (num) {
onSelect(setTime(isPM, num, minute, second), 'mouse');
}); // Minute
addColumnNode(showMinute, React.createElement(_TimeUnitColumn.default, {
key: "minute"
}), minute, minutes, function (num) {
onSelect(setTime(isPM, hour, num, second), 'mouse');
}); // Second
addColumnNode(showSecond, React.createElement(_TimeUnitColumn.default, {
key: "second"
}), second, seconds, function (num) {
onSelect(setTime(isPM, hour, minute, num), 'mouse');
}); // 12 Hours
var PMIndex = -1;
if (typeof isPM === 'boolean') {
PMIndex = isPM ? 1 : 0;
}
addColumnNode(use12Hours === true, React.createElement(_TimeUnitColumn.default, {
key: "12hours"
}), PMIndex, [{
label: 'AM',
value: 0
}, {
label: 'PM',
value: 1
}], function (num) {
onSelect(setTime(!!num, hour, minute, second), 'mouse');
});
return React.createElement("div", {
className: contentPrefixCls
}, columns.map(function (_ref) {
var node = _ref.node;
return node;
}));
}
var _default = TimeBody;
exports.default = _default;

View File

@@ -0,0 +1,12 @@
/// <reference types="react" />
import { Locale } from '../../interface';
import { GenerateConfig } from '../../generate';
export interface TimeHeaderProps<DateType> {
prefixCls: string;
value?: DateType | null;
locale: Locale;
generateConfig: GenerateConfig<DateType>;
format: string;
}
declare function TimeHeader<DateType>(props: TimeHeaderProps<DateType>): JSX.Element;
export default TimeHeader;

View File

@@ -0,0 +1,42 @@
"use strict";
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var React = _interopRequireWildcard(require("react"));
var _Header = _interopRequireDefault(require("../Header"));
var _PanelContext = _interopRequireDefault(require("../../PanelContext"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function TimeHeader(props) {
var _React$useContext = React.useContext(_PanelContext.default),
hideHeader = _React$useContext.hideHeader;
if (hideHeader) {
return null;
}
var prefixCls = props.prefixCls,
generateConfig = props.generateConfig,
locale = props.locale,
value = props.value,
format = props.format;
var headerPrefixCls = "".concat(prefixCls, "-header");
return React.createElement(_Header.default, {
prefixCls: headerPrefixCls
}, value ? generateConfig.locale.format(locale.locale, value, format) : "\xA0");
}
var _default = TimeHeader;
exports.default = _default;

View File

@@ -0,0 +1,16 @@
import * as React from 'react';
export interface Unit {
label: React.ReactText;
value: number;
disabled?: boolean;
}
export interface TimeUnitColumnProps {
prefixCls?: string;
units?: Unit[];
value?: number;
active?: boolean;
hideDisabledOptions?: boolean;
onSelect?: (value: number) => void;
}
declare function TimeUnitColumn(props: TimeUnitColumnProps): JSX.Element;
export default TimeUnitColumn;

View File

@@ -0,0 +1,90 @@
"use strict";
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var React = _interopRequireWildcard(require("react"));
var _classnames = _interopRequireDefault(require("classnames"));
var _uiUtil = require("../../utils/uiUtil");
var _PanelContext = _interopRequireDefault(require("../../PanelContext"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
function TimeUnitColumn(props) {
var prefixCls = props.prefixCls,
units = props.units,
onSelect = props.onSelect,
value = props.value,
active = props.active,
hideDisabledOptions = props.hideDisabledOptions;
var cellPrefixCls = "".concat(prefixCls, "-cell");
var _React$useContext = React.useContext(_PanelContext.default),
open = _React$useContext.open;
var ulRef = React.useRef(null);
var liRefs = React.useRef(new Map()); // `useLayoutEffect` here to avoid blink by duration is 0
React.useLayoutEffect(function () {
var li = liRefs.current.get(value);
if (li && open !== false) {
(0, _uiUtil.scrollTo)(ulRef.current, li.offsetTop, 120);
}
}, [value]);
React.useLayoutEffect(function () {
if (open) {
var li = liRefs.current.get(value);
if (li) {
(0, _uiUtil.scrollTo)(ulRef.current, li.offsetTop, 0);
}
}
}, [open]);
return React.createElement("ul", {
className: (0, _classnames.default)("".concat(prefixCls, "-column"), _defineProperty({}, "".concat(prefixCls, "-column-active"), active)),
ref: ulRef,
style: {
position: 'relative'
}
}, units.map(function (unit) {
var _classNames2;
if (hideDisabledOptions && unit.disabled) {
return null;
}
return React.createElement("li", {
key: unit.value,
ref: function ref(element) {
liRefs.current.set(unit.value, element);
},
className: (0, _classnames.default)(cellPrefixCls, (_classNames2 = {}, _defineProperty(_classNames2, "".concat(cellPrefixCls, "-disabled"), unit.disabled), _defineProperty(_classNames2, "".concat(cellPrefixCls, "-selected"), value === unit.value), _classNames2)),
onClick: function onClick() {
if (unit.disabled) {
return;
}
onSelect(unit.value);
}
}, React.createElement("div", {
className: "".concat(cellPrefixCls, "-inner")
}, unit.label));
}));
}
var _default = TimeUnitColumn;
exports.default = _default;

View File

@@ -0,0 +1,20 @@
/// <reference types="react" />
import { PanelSharedProps, DisabledTimes } from '../../interface';
export interface SharedTimeProps<DateType> extends DisabledTimes {
format?: string;
showHour?: boolean;
showMinute?: boolean;
showSecond?: boolean;
use12Hours?: boolean;
hourStep?: number;
minuteStep?: number;
secondStep?: number;
hideDisabledOptions?: boolean;
defaultValue?: DateType;
}
export interface TimePanelProps<DateType> extends PanelSharedProps<DateType>, SharedTimeProps<DateType> {
format?: string;
active?: boolean;
}
declare function TimePanel<DateType>(props: TimePanelProps<DateType>): JSX.Element;
export default TimePanel;

View File

@@ -0,0 +1,105 @@
"use strict";
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var React = _interopRequireWildcard(require("react"));
var _classnames = _interopRequireDefault(require("classnames"));
var _TimeHeader = _interopRequireDefault(require("./TimeHeader"));
var _TimeBody = _interopRequireDefault(require("./TimeBody"));
var _uiUtil = require("../../utils/uiUtil");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(n); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
var countBoolean = function countBoolean(boolList) {
return boolList.filter(function (bool) {
return bool !== false;
}).length;
};
function TimePanel(props) {
var generateConfig = props.generateConfig,
_props$format = props.format,
format = _props$format === void 0 ? 'HH:mm:ss' : _props$format,
prefixCls = props.prefixCls,
active = props.active,
operationRef = props.operationRef,
showHour = props.showHour,
showMinute = props.showMinute,
showSecond = props.showSecond,
_props$use12Hours = props.use12Hours,
use12Hours = _props$use12Hours === void 0 ? false : _props$use12Hours,
onSelect = props.onSelect,
value = props.value;
var panelPrefixCls = "".concat(prefixCls, "-time-panel");
var bodyOperationRef = React.useRef(); // ======================= Keyboard =======================
var _React$useState = React.useState(-1),
_React$useState2 = _slicedToArray(_React$useState, 2),
activeColumnIndex = _React$useState2[0],
setActiveColumnIndex = _React$useState2[1];
var columnsCount = countBoolean([showHour, showMinute, showSecond, use12Hours]);
operationRef.current = {
onKeyDown: function onKeyDown(event) {
return (0, _uiUtil.createKeyDownHandler)(event, {
onLeftRight: function onLeftRight(diff) {
setActiveColumnIndex((activeColumnIndex + diff + columnsCount) % columnsCount);
},
onUpDown: function onUpDown(diff) {
if (activeColumnIndex === -1) {
setActiveColumnIndex(0);
} else if (bodyOperationRef.current) {
bodyOperationRef.current.onUpDown(diff);
}
},
onEnter: function onEnter() {
onSelect(value || generateConfig.getNow(), 'key');
setActiveColumnIndex(-1);
}
});
},
onBlur: function onBlur() {
setActiveColumnIndex(-1);
}
};
return React.createElement("div", {
className: (0, _classnames.default)(panelPrefixCls, _defineProperty({}, "".concat(panelPrefixCls, "-active"), active))
}, React.createElement(_TimeHeader.default, Object.assign({}, props, {
format: format,
prefixCls: prefixCls
})), React.createElement(_TimeBody.default, Object.assign({}, props, {
prefixCls: prefixCls,
activeColumnIndex: activeColumnIndex,
operationRef: bodyOperationRef
})));
}
var _default = TimePanel;
exports.default = _default;

View File

@@ -0,0 +1,5 @@
/// <reference types="react" />
import { PanelSharedProps } from '../../interface';
export declare type WeekPanelProps<DateType> = PanelSharedProps<DateType>;
declare function WeekPanel<DateType>(props: WeekPanelProps<DateType>): JSX.Element;
export default WeekPanel;

View File

@@ -0,0 +1,59 @@
"use strict";
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var React = _interopRequireWildcard(require("react"));
var _classnames = _interopRequireDefault(require("classnames"));
var _DatePanel = _interopRequireDefault(require("../DatePanel"));
var _dateUtil = require("../../utils/dateUtil");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
function WeekPanel(props) {
var prefixCls = props.prefixCls,
generateConfig = props.generateConfig,
locale = props.locale,
value = props.value; // Render additional column
var cellPrefixCls = "".concat(prefixCls, "-cell");
var prefixColumn = function prefixColumn(date) {
return React.createElement("td", {
key: "week",
className: (0, _classnames.default)(cellPrefixCls, "".concat(cellPrefixCls, "-week"))
}, generateConfig.locale.getWeek(locale.locale, date));
}; // Add row className
var rowPrefixCls = "".concat(prefixCls, "-week-panel-row");
var rowClassName = function rowClassName(date) {
return (0, _classnames.default)(rowPrefixCls, _defineProperty({}, "".concat(rowPrefixCls, "-selected"), (0, _dateUtil.isSameWeek)(generateConfig, locale.locale, value, date)));
};
return React.createElement(_DatePanel.default, Object.assign({}, props, {
panelName: "week",
prefixColumn: prefixColumn,
rowClassName: rowClassName,
keyboardConfig: {
onLeftRight: null
}
}));
}
var _default = WeekPanel;
exports.default = _default;

View File

@@ -0,0 +1,15 @@
/// <reference types="react" />
import { GenerateConfig } from '../../generate';
import { Locale, NullableDateType } from '../../interface';
export declare const YEAR_COL_COUNT = 3;
export interface YearBodyProps<DateType> {
prefixCls: string;
locale: Locale;
generateConfig: GenerateConfig<DateType>;
value?: NullableDateType<DateType>;
viewDate: DateType;
disabledDate?: (date: DateType) => boolean;
onSelect: (value: DateType) => void;
}
declare function YearBody<DateType>(props: YearBodyProps<DateType>): JSX.Element;
export default YearBody;

View File

@@ -0,0 +1,85 @@
"use strict";
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.YEAR_COL_COUNT = void 0;
var React = _interopRequireWildcard(require("react"));
var _ = require(".");
var _useCellClassName = _interopRequireDefault(require("../../hooks/useCellClassName"));
var _dateUtil = require("../../utils/dateUtil");
var _RangeContext = _interopRequireDefault(require("../../RangeContext"));
var _PanelBody = _interopRequireDefault(require("../PanelBody"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
var YEAR_COL_COUNT = 3;
exports.YEAR_COL_COUNT = YEAR_COL_COUNT;
var YEAR_ROW_COUNT = 4;
function YearBody(props) {
var prefixCls = props.prefixCls,
value = props.value,
viewDate = props.viewDate,
locale = props.locale,
generateConfig = props.generateConfig;
var _React$useContext = React.useContext(_RangeContext.default),
rangedValue = _React$useContext.rangedValue,
hoverRangedValue = _React$useContext.hoverRangedValue;
var yearPrefixCls = "".concat(prefixCls, "-cell"); // =============================== Year ===============================
var yearNumber = generateConfig.getYear(viewDate);
var startYear = Math.floor(yearNumber / _.YEAR_DECADE_COUNT) * _.YEAR_DECADE_COUNT;
var endYear = startYear + _.YEAR_DECADE_COUNT - 1;
var baseYear = generateConfig.setYear(viewDate, startYear - Math.ceil((YEAR_COL_COUNT * YEAR_ROW_COUNT - _.YEAR_DECADE_COUNT) / 2));
var isInView = function isInView(date) {
var currentYearNumber = generateConfig.getYear(date);
return startYear <= currentYearNumber && currentYearNumber <= endYear;
};
var getCellClassName = (0, _useCellClassName.default)({
cellPrefixCls: yearPrefixCls,
value: value,
generateConfig: generateConfig,
rangedValue: rangedValue,
hoverRangedValue: hoverRangedValue,
isSameCell: function isSameCell(current, target) {
return (0, _dateUtil.isSameYear)(generateConfig, current, target);
},
isInView: isInView,
offsetCell: function offsetCell(date, offset) {
return generateConfig.addYear(date, offset);
}
});
return React.createElement(_PanelBody.default, Object.assign({}, props, {
rowNum: YEAR_ROW_COUNT,
colNum: YEAR_COL_COUNT,
baseDate: baseYear,
getCellText: generateConfig.getYear,
getCellClassName: getCellClassName,
getCellDate: generateConfig.addYear,
titleCell: function titleCell(date) {
return generateConfig.locale.format(locale.locale, date, 'YYYY');
}
}));
}
var _default = YearBody;
exports.default = _default;

View File

@@ -0,0 +1,13 @@
/// <reference types="react" />
import { GenerateConfig } from '../../generate';
export interface YearHeaderProps<DateType> {
prefixCls: string;
viewDate: DateType;
value?: DateType | null;
generateConfig: GenerateConfig<DateType>;
onPrevDecade: () => void;
onNextDecade: () => void;
onDecadeClick: () => void;
}
declare function YearHeader<DateType>(props: YearHeaderProps<DateType>): JSX.Element;
export default YearHeader;

View File

@@ -0,0 +1,58 @@
"use strict";
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var React = _interopRequireWildcard(require("react"));
var _Header = _interopRequireDefault(require("../Header"));
var _ = require(".");
var _PanelContext = _interopRequireDefault(require("../../PanelContext"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function YearHeader(props) {
var prefixCls = props.prefixCls,
generateConfig = props.generateConfig,
viewDate = props.viewDate,
onPrevDecade = props.onPrevDecade,
onNextDecade = props.onNextDecade,
onDecadeClick = props.onDecadeClick;
var _React$useContext = React.useContext(_PanelContext.default),
hideHeader = _React$useContext.hideHeader;
if (hideHeader) {
return null;
}
var headerPrefixCls = "".concat(prefixCls, "-header");
var yearNumber = generateConfig.getYear(viewDate);
var startYear = Math.floor(yearNumber / _.YEAR_DECADE_COUNT) * _.YEAR_DECADE_COUNT;
var endYear = startYear + _.YEAR_DECADE_COUNT - 1;
return React.createElement(_Header.default, Object.assign({}, props, {
prefixCls: headerPrefixCls,
onSuperPrev: onPrevDecade,
onSuperNext: onNextDecade
}), React.createElement("button", {
type: "button",
key: "year",
onClick: onDecadeClick,
className: "".concat(prefixCls, "-decade-btn")
}, startYear, "-", endYear));
}
var _default = YearHeader;
exports.default = _default;

View File

@@ -0,0 +1,8 @@
/// <reference types="react" />
import { PanelSharedProps, PanelMode } from '../../interface';
export interface YearPanelProps<DateType> extends PanelSharedProps<DateType> {
sourceMode: PanelMode;
}
export declare const YEAR_DECADE_COUNT = 10;
declare function YearPanel<DateType>(props: YearPanelProps<DateType>): JSX.Element;
export default YearPanel;

View File

@@ -0,0 +1,88 @@
"use strict";
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.YEAR_DECADE_COUNT = void 0;
var React = _interopRequireWildcard(require("react"));
var _YearHeader = _interopRequireDefault(require("./YearHeader"));
var _YearBody = _interopRequireWildcard(require("./YearBody"));
var _uiUtil = require("../../utils/uiUtil");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
var YEAR_DECADE_COUNT = 10;
exports.YEAR_DECADE_COUNT = YEAR_DECADE_COUNT;
function YearPanel(props) {
var prefixCls = props.prefixCls,
operationRef = props.operationRef,
onViewDateChange = props.onViewDateChange,
generateConfig = props.generateConfig,
value = props.value,
viewDate = props.viewDate,
sourceMode = props.sourceMode,
_onSelect = props.onSelect,
onPanelChange = props.onPanelChange;
var panelPrefixCls = "".concat(prefixCls, "-year-panel"); // ======================= Keyboard =======================
operationRef.current = {
onKeyDown: function onKeyDown(event) {
return (0, _uiUtil.createKeyDownHandler)(event, {
onLeftRight: function onLeftRight(diff) {
_onSelect(generateConfig.addYear(value || viewDate, diff), 'key');
},
onCtrlLeftRight: function onCtrlLeftRight(diff) {
_onSelect(generateConfig.addYear(value || viewDate, diff * YEAR_DECADE_COUNT), 'key');
},
onUpDown: function onUpDown(diff) {
_onSelect(generateConfig.addYear(value || viewDate, diff * _YearBody.YEAR_COL_COUNT), 'key');
},
onEnter: function onEnter() {
onPanelChange(sourceMode === 'date' ? 'date' : 'month', value || viewDate);
}
});
}
}; // ==================== View Operation ====================
var onDecadeChange = function onDecadeChange(diff) {
var newDate = generateConfig.addYear(viewDate, diff * 10);
onViewDateChange(newDate);
onPanelChange(null, newDate);
};
return React.createElement("div", {
className: panelPrefixCls
}, React.createElement(_YearHeader.default, Object.assign({}, props, {
prefixCls: prefixCls,
onPrevDecade: function onPrevDecade() {
onDecadeChange(-1);
},
onNextDecade: function onNextDecade() {
onDecadeChange(1);
},
onDecadeClick: function onDecadeClick() {
onPanelChange('decade', viewDate);
}
})), React.createElement(_YearBody.default, Object.assign({}, props, {
prefixCls: prefixCls,
onSelect: function onSelect(date) {
onPanelChange(sourceMode === 'date' ? 'date' : 'month', date);
_onSelect(date, 'mouse');
}
})));
}
var _default = YearPanel;
exports.default = _default;