UNPKG

wetrade-design

Version:

一款多语言支持Vue3的UI框架

75 lines (74 loc) 2.62 kB
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2"; import { createTextVNode as _createTextVNode, createVNode as _createVNode } from "vue"; import Header from '../Header'; import { useInjectPanel } from '../../PanelContext'; import { formatValue } from '../../utils/dateUtil'; import useMergeProps from '../../hooks/useMergeProps'; function DateHeader(_props) { var props = useMergeProps(_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 _useInjectPanel = useInjectPanel(), hideHeader = _useInjectPanel.hideHeader; if (hideHeader.value) { return null; } var headerPrefixCls = "".concat(prefixCls, "-header"); // const monthsLocale: string[] = // locale.shortMonths || // (generateConfig.locale.getShortMonths // ? generateConfig.locale.getShortMonths(locale.locale) // : []); var month = generateConfig.getMonth(viewDate) + 1; // =================== Month & Year =================== var yearNode = _createVNode("button", { "type": "button", "key": "year", "onClick": onYearClick, "tabindex": -1, "class": "".concat(prefixCls, "-year-btn") }, [formatValue(viewDate, { locale: locale, format: locale.yearFormat, generateConfig: generateConfig })]); var monthNode = _createVNode("button", { "type": "button", "key": "month", "onClick": onMonthClick, "tabindex": -1, "class": "".concat(prefixCls, "-month-btn") }, [locale.monthFormat ? formatValue(viewDate, { locale: locale, format: locale.monthFormat, generateConfig: generateConfig }) : month < 10 ? "0".concat(month) : month // monthsLocale[month] ]); var splitNode = _createVNode("span", { "class": "".concat(prefixCls, "-header-split") }, [_createTextVNode("/")]); var monthYearNodes = locale.monthBeforeYear ? [monthNode, splitNode, yearNode] : [yearNode, splitNode, monthNode]; return _createVNode(Header, _objectSpread(_objectSpread({}, props), {}, { "prefixCls": headerPrefixCls, "onSuperPrev": onPrevYear, "onPrev": onPrevMonth, "onNext": onNextMonth, "onSuperNext": onNextYear }), { default: function _default() { return [monthYearNodes]; } }); } DateHeader.displayName = 'DateHeader'; DateHeader.inheritAttrs = false; export default DateHeader;