index.js 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  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 _QuarterHeader = _interopRequireDefault(require("./QuarterHeader"));
  10. var _QuarterBody = _interopRequireDefault(require("./QuarterBody"));
  11. var _uiUtil = require("../../utils/uiUtil");
  12. var _useMergeProps = _interopRequireDefault(require("../../hooks/useMergeProps"));
  13. function QuarterPanel(_props) {
  14. var props = (0, _useMergeProps.default)(_props);
  15. var prefixCls = props.prefixCls,
  16. operationRef = props.operationRef,
  17. onViewDateChange = props.onViewDateChange,
  18. generateConfig = props.generateConfig,
  19. value = props.value,
  20. viewDate = props.viewDate,
  21. onPanelChange = props.onPanelChange,
  22. _onSelect = props.onSelect;
  23. var panelPrefixCls = "".concat(prefixCls, "-quarter-panel");
  24. // ======================= Keyboard =======================
  25. operationRef.value = {
  26. onKeydown: function onKeydown(event) {
  27. return (0, _uiUtil.createKeydownHandler)(event, {
  28. onLeftRight: function onLeftRight(diff) {
  29. _onSelect(generateConfig.addMonth(value || viewDate, diff * 3), 'key');
  30. },
  31. onCtrlLeftRight: function onCtrlLeftRight(diff) {
  32. _onSelect(generateConfig.addYear(value || viewDate, diff), 'key');
  33. },
  34. onUpDown: function onUpDown(diff) {
  35. _onSelect(generateConfig.addYear(value || viewDate, diff), 'key');
  36. }
  37. });
  38. }
  39. };
  40. // ==================== View Operation ====================
  41. var onYearChange = function onYearChange(diff) {
  42. var newDate = generateConfig.addYear(viewDate, diff);
  43. onViewDateChange(newDate);
  44. onPanelChange(null, newDate);
  45. };
  46. return (0, _vue.createVNode)("div", {
  47. "class": panelPrefixCls
  48. }, [(0, _vue.createVNode)(_QuarterHeader.default, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, props), {}, {
  49. "prefixCls": prefixCls,
  50. "onPrevYear": function onPrevYear() {
  51. onYearChange(-1);
  52. },
  53. "onNextYear": function onNextYear() {
  54. onYearChange(1);
  55. },
  56. "onYearClick": function onYearClick() {
  57. onPanelChange('year', viewDate);
  58. }
  59. }), null), (0, _vue.createVNode)(_QuarterBody.default, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, props), {}, {
  60. "prefixCls": prefixCls,
  61. "onSelect": function onSelect(date) {
  62. _onSelect(date, 'mouse');
  63. }
  64. }), null)]);
  65. }
  66. QuarterPanel.displayName = 'QuarterPanel';
  67. QuarterPanel.inheritAttrs = false;
  68. var _default = QuarterPanel;
  69. exports.default = _default;