YearHeader.js 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. "use strict";
  2. var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
  3. Object.defineProperty(exports, "__esModule", {
  4. value: true
  5. });
  6. exports.default = void 0;
  7. var _vue = require("vue");
  8. var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
  9. var _Header = _interopRequireDefault(require("../Header"));
  10. var _ = require(".");
  11. var _PanelContext = require("../../PanelContext");
  12. var _useMergeProps = _interopRequireDefault(require("../../hooks/useMergeProps"));
  13. function YearHeader(_props) {
  14. const props = (0, _useMergeProps.default)(_props);
  15. const {
  16. prefixCls,
  17. generateConfig,
  18. viewDate,
  19. onPrevDecade,
  20. onNextDecade,
  21. onDecadeClick
  22. } = props;
  23. const {
  24. hideHeader
  25. } = (0, _PanelContext.useInjectPanel)();
  26. if (hideHeader.value) {
  27. return null;
  28. }
  29. const headerPrefixCls = `${prefixCls}-header`;
  30. const yearNumber = generateConfig.getYear(viewDate);
  31. const startYear = Math.floor(yearNumber / _.YEAR_DECADE_COUNT) * _.YEAR_DECADE_COUNT;
  32. const endYear = startYear + _.YEAR_DECADE_COUNT - 1;
  33. return (0, _vue.createVNode)(_Header.default, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, props), {}, {
  34. "prefixCls": headerPrefixCls,
  35. "onSuperPrev": onPrevDecade,
  36. "onSuperNext": onNextDecade
  37. }), {
  38. default: () => [(0, _vue.createVNode)("button", {
  39. "type": "button",
  40. "onClick": onDecadeClick,
  41. "class": `${prefixCls}-decade-btn`
  42. }, [startYear, (0, _vue.createTextVNode)("-"), endYear])]
  43. });
  44. }
  45. YearHeader.displayName = 'YearHeader';
  46. YearHeader.inheritAttrs = false;
  47. var _default = exports.default = YearHeader;