zent
Version:
一套前端设计语言和基于React的实现
30 lines (29 loc) • 1.55 kB
JavaScript
import { __assign } from "tslib";
import { jsx as _jsx } from "react/jsx-runtime";
import { useMemo, useContext } from 'react';
import PanelContext from '../../context/PanelContext';
import PickerContext from '../../context/PickerContext';
import PanelCell from '../../components/PanelCell';
import getPanelCellsData from '../../utils/getPanelCellsData';
import { dateConfig } from '../../utils/dateUtils';
import { setMonth } from 'date-fns';
var COL_COUNT = 3;
var ROW_COUNT = 4;
var MonthPickerBody = function (_a) {
var defaultPanelDate = _a.defaultPanelDate, onSelected = _a.onSelected, selected = _a.selected, disabledPanelDate = _a.disabledPanelDate, _b = _a.row, row = _b === void 0 ? ROW_COUNT : _b, _c = _a.col, col = _c === void 0 ? COL_COUNT : _c;
var i18n = useContext(PickerContext).i18n;
var onHover = useContext(PanelContext).onHover;
var cells = useMemo(function () {
return getPanelCellsData({
selected: selected,
disabledPanelDate: disabledPanelDate,
defaultPanelDate: setMonth(defaultPanelDate, 0),
texts: i18n.panel.monthNames,
row: row,
col: col,
dateConfig: dateConfig.month,
});
}, [selected, row, col, defaultPanelDate, i18n, disabledPanelDate]);
return (_jsx("div", __assign({ className: "zent-datepicker-ym-panel-body", "data-zv": '10.0.18' }, { children: _jsx(PanelCell, { col: col, cells: cells, onSelected: onSelected, onHover: onHover }, void 0) }), void 0));
};
export default MonthPickerBody;