@ucloud-fe/react-components 1.3.27 → 1.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (88) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/icon.min.js +1 -1
  3. package/dist/main.min.js +4 -4
  4. package/lib/components/AutoComplete/AutoComplete.js +7 -4
  5. package/lib/components/Badge/Bubble.d.ts +2 -0
  6. package/lib/components/Box/Box.d.ts +1 -0
  7. package/lib/components/Calendar/Calendar.d.ts +6 -1
  8. package/lib/components/Calendar/Calendar.js +12 -4
  9. package/lib/components/Calendar/Cell.d.ts +8 -0
  10. package/lib/components/Calendar/Cell.js +55 -0
  11. package/lib/components/Calendar/HeaderButton.d.ts +8 -0
  12. package/lib/components/Calendar/HeaderButton.js +75 -0
  13. package/lib/components/Calendar/HeaderSwitcher.d.ts +2 -1
  14. package/lib/components/Calendar/Month.js +10 -4
  15. package/lib/components/Calendar/TwoSide.d.ts +4 -0
  16. package/lib/components/Calendar/TwoSide.js +155 -0
  17. package/lib/components/Calendar/index.d.ts +3 -0
  18. package/lib/components/Calendar/index.js +9 -0
  19. package/lib/components/Calendar/locale/en_US.js +2 -1
  20. package/lib/components/Calendar/locale/zh_CN.d.ts +1 -0
  21. package/lib/components/Calendar/locale/zh_CN.js +3 -2
  22. package/lib/components/Calendar/style/index.d.ts +13 -0
  23. package/lib/components/Calendar/style/index.js +29 -7
  24. package/lib/components/Calendar/utils.d.ts +1 -1
  25. package/lib/components/Calendar/utils.js +5 -5
  26. package/lib/components/DatePicker/DatePicker.d.ts +1 -1
  27. package/lib/components/DatePicker/DatePicker.js +5 -7
  28. package/lib/components/DatePicker/Footer.d.ts +5 -2
  29. package/lib/components/DatePicker/Footer.js +31 -55
  30. package/lib/components/DatePicker/Month.js +4 -6
  31. package/lib/components/DatePicker/Range.d.ts +2 -2
  32. package/lib/components/DatePicker/Range.js +179 -71
  33. package/lib/components/DatePicker/locale/en_US.js +2 -1
  34. package/lib/components/DatePicker/locale/zh_CN.d.ts +1 -0
  35. package/lib/components/DatePicker/locale/zh_CN.js +2 -1
  36. package/lib/components/DatePicker/style/index.d.ts +24 -5
  37. package/lib/components/DatePicker/style/index.js +102 -34
  38. package/lib/components/DatePicker/usePicker.js +90 -31
  39. package/lib/components/DatePicker/useRangePicker.d.ts +16 -0
  40. package/lib/components/DatePicker/{RangePicker.js → useRangePicker.js} +44 -80
  41. package/lib/components/DatePicker/utils.d.ts +1 -1
  42. package/lib/components/Form/ControllerContext.d.ts +1 -1
  43. package/lib/components/Input/Input.js +4 -2
  44. package/lib/components/Input/Search.js +1 -1
  45. package/lib/components/Input/style/index.d.ts +2 -1
  46. package/lib/components/Input/style/index.js +6 -4
  47. package/lib/components/Loading/Loading.d.ts +1 -0
  48. package/lib/components/NumberInput/NumberInput.d.ts +12 -0
  49. package/lib/components/NumberInput/NumberInput.js +1 -1
  50. package/lib/components/Pagination/Options.js +1 -1
  51. package/lib/components/Popover/Popover.d.ts +7 -0
  52. package/lib/components/Popover/style/index.d.ts +1 -0
  53. package/lib/components/Select/style/index.d.ts +6 -6
  54. package/lib/components/SvgIcon/SvgIcon.d.ts +1 -0
  55. package/lib/components/SvgIcon/SvgIcon.js +6 -0
  56. package/lib/components/SvgIcon/SvgIconWrap.d.ts +1 -0
  57. package/lib/components/SvgIcon/icons/DoubleArrowLeft.d.ts +3 -0
  58. package/lib/components/SvgIcon/icons/DoubleArrowLeft.js +27 -0
  59. package/lib/components/SvgIcon/icons/DoubleArrowRight.d.ts +3 -0
  60. package/lib/components/SvgIcon/icons/DoubleArrowRight.js +26 -0
  61. package/lib/components/Tabs/Tabs.js +1 -1
  62. package/lib/components/Tabs/style/index.d.ts +1 -1
  63. package/lib/components/Tag/Group.d.ts +1 -0
  64. package/lib/components/Tag/Icon.d.ts +1 -0
  65. package/lib/components/Tag/Tag.d.ts +1 -0
  66. package/lib/components/Textarea/Textarea.d.ts +1 -0
  67. package/lib/components/ThemeProvider/ThemeProvider.d.ts +6 -0
  68. package/lib/components/ThemeProvider/dark.js +6 -249
  69. package/lib/components/ThemeProvider/designTokens.d.ts +267 -258
  70. package/lib/components/ThemeProvider/designTokens.js +460 -185
  71. package/lib/components/ThemeProvider/designTokensDark.d.ts +267 -0
  72. package/lib/components/ThemeProvider/designTokensDark.js +540 -0
  73. package/lib/components/ThemeProvider/theme.d.ts +1 -1
  74. package/lib/components/ThemeProvider/theme.js +3 -3
  75. package/lib/components/TimePicker/TimePicker.d.ts +1 -1
  76. package/lib/components/TimePicker/TimePicker.js +11 -13
  77. package/lib/components/TimePicker/style/index.d.ts +3 -1
  78. package/lib/components/TimePicker/style/index.js +11 -21
  79. package/lib/hooks/usePopoverConfig.d.ts +4 -4
  80. package/lib/libs/rc-align/index.d.ts +4 -0
  81. package/lib/libs/rc-table/Table.d.ts +5 -0
  82. package/lib/libs/rc-table/TableCell.d.ts +1 -0
  83. package/lib/utils/KeyCode.d.ts +15 -0
  84. package/lib/{interfaces → utils}/KeyCode.js +0 -0
  85. package/package.json +3 -4
  86. package/lib/components/DatePicker/RangePicker.d.ts +0 -17
  87. package/lib/interfaces/KeyCode.d.ts +0 -15
  88. package/lib/style/color.js +0 -23
@@ -29,7 +29,7 @@ var _useUncontrolled3 = _interopRequireDefault(require("../../hooks/useUncontrol
29
29
 
30
30
  var _usePopoverConfig = _interopRequireDefault(require("../../hooks/usePopoverConfig"));
31
31
 
32
- var _KeyCode = _interopRequireDefault(require("../../interfaces/KeyCode"));
32
+ var _KeyCode = _interopRequireDefault(require("../../utils/KeyCode"));
33
33
 
34
34
  var _Popup = _interopRequireDefault(require("./Popup"));
35
35
 
@@ -80,17 +80,19 @@ var AutoComplete = function AutoComplete(_ref) {
80
80
  onChange(e.target.value);
81
81
  setVisible(true);
82
82
  }.bind(this), [onChange]);
83
- var onKeyPress = (0, _react.useCallback)(function (e) {
83
+ var onKeyDown = (0, _react.useCallback)(function (e) {
84
84
  (0, _newArrowCheck2.default)(this, _this2);
85
85
  var intercept = true;
86
86
 
87
87
  switch (e.keyCode) {
88
88
  case _KeyCode.default.ARROW_UP:
89
89
  list && list.current && list.current.moveUp();
90
+ setVisible(true);
90
91
  break;
91
92
 
92
93
  case _KeyCode.default.ARROW_DOWN:
93
94
  list && list.current && list.current.moveDown();
95
+ setVisible(true);
94
96
  break;
95
97
 
96
98
  case _KeyCode.default.ENTER:
@@ -127,7 +129,8 @@ var AutoComplete = function AutoComplete(_ref) {
127
129
  options: options,
128
130
  handleSearch: handleSearch,
129
131
  onChange: onSelect,
130
- loading: loading
132
+ loading: loading // ref={list}
133
+
131
134
  }),
132
135
  trigger: [],
133
136
  showAction: ['click', 'focus'],
@@ -140,7 +143,7 @@ var AutoComplete = function AutoComplete(_ref) {
140
143
  onChange: onInputChange,
141
144
  onFocus: onFocus,
142
145
  onBlur: onBlur,
143
- onKeyPress: onKeyPress,
146
+ onKeyDown: onKeyDown,
144
147
  disabled: disabled,
145
148
  prefix: prefix,
146
149
  suffix: loading && /*#__PURE__*/_react.default.createElement(_SvgIcon.default, {
@@ -33,6 +33,8 @@ export class Bubble extends React.PureComponent<any, any, any> {
33
33
  };
34
34
  constructor(props: any);
35
35
  constructor(props: any, context: any);
36
+ componentDidMount(): void;
37
+ render(): JSX.Element;
36
38
  }
37
39
  export namespace Bubble {
38
40
  export { StyleType };
@@ -37,6 +37,7 @@ declare class Box extends React.PureComponent<any, any, any> {
37
37
  };
38
38
  constructor(props: any);
39
39
  constructor(props: any, context: any);
40
+ render(): JSX.Element;
40
41
  }
41
42
  declare namespace Box {
42
43
  export { Spacing };
@@ -1,11 +1,13 @@
1
1
  import React from 'react';
2
2
  import { Moment } from 'moment';
3
- import { TDate } from '@z-r/calendar/types/interface';
3
+ import { TDate } from '@z-r/calendar';
4
4
  import { Rules } from './utils';
5
5
  import LOCALE from './locale/zh_CN';
6
6
  export interface CalendarProps {
7
7
  /** 当前值,受控 */
8
8
  value?: TDate | null;
9
+ /** 范围值 */
10
+ rangeValue?: [TDate | null, TDate | null];
9
11
  /** 默认值,非受控 */
10
12
  defaultValue?: TDate | null;
11
13
  /**
@@ -14,6 +16,9 @@ export interface CalendarProps {
14
16
  onSelect?: (t: Moment) => void;
15
17
  /** 选中变化回调 */
16
18
  onChange?: (t: Moment) => void;
19
+ current?: TDate;
20
+ defaultCurrent?: TDate;
21
+ onCurrentChange?: (v: TDate) => void;
17
22
  /** 自定义规则 */
18
23
  rules?: Rules;
19
24
  /** 自定义样式 */
@@ -31,6 +31,10 @@ var _zh_CN = _interopRequireDefault(require("./locale/zh_CN"));
31
31
 
32
32
  var _Month = _interopRequireDefault(require("./Month"));
33
33
 
34
+ var _Cell = _interopRequireDefault(require("./Cell"));
35
+
36
+ var _HeaderButton = _interopRequireDefault(require("./HeaderButton"));
37
+
34
38
  var _this2 = void 0;
35
39
 
36
40
  var _excluded = ["onSelect", "onChange", "rules", "locale"],
@@ -54,9 +58,9 @@ var DateCalendar = /*#__PURE__*/_react.default.memo(function DateCalendar(_ref)
54
58
  }.bind(this), [rules]);
55
59
  var handleChange = (0, _react.useCallback)(function (v) {
56
60
  (0, _newArrowCheck2.default)(this, _this);
57
- v = (0, _utils.getValidDate)(v, rules);
58
- onChange && onChange(v);
59
- onSelect && onSelect(v);
61
+ var validDate = (0, _utils.getValidDate)(v, rules);
62
+ onChange && onChange(validDate);
63
+ onSelect && onSelect(validDate);
60
64
  }.bind(this), [onChange, onSelect, rules]);
61
65
  var locale = (0, _useLocale.default)(_zh_CN.default, 'Calendar', _locale);
62
66
  var calendarLocale = (0, _react.useMemo)(function () {
@@ -77,8 +81,11 @@ var DateCalendar = /*#__PURE__*/_react.default.memo(function DateCalendar(_ref)
77
81
  disabledRule: disabledRule,
78
82
  onChange: handleChange,
79
83
  locale: calendarLocale,
84
+ monthBeforeYear: locale.monthBeforeYear,
80
85
  components: {
81
- HeaderSwitcher: renderHeaderSwitcher
86
+ HeaderSwitcher: renderHeaderSwitcher,
87
+ Cell: _Cell.default,
88
+ HeaderButton: _HeaderButton.default
82
89
  }
83
90
  }, rest));
84
91
  });
@@ -93,6 +100,7 @@ var Calendar = function Calendar(_ref2) {
93
100
  Calendar.propTypes = {
94
101
  onSelect: _propTypes.default.func,
95
102
  onChange: _propTypes.default.func,
103
+ onCurrentChange: _propTypes.default.func,
96
104
  customStyle: _propTypes.default.shape({
97
105
  boxShadow: _propTypes.default.bool
98
106
  }),
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ import { Mode } from '@z-r/calendar';
3
+ declare const _default: React.MemoExoticComponent<({ children, mode, className, value, disabled, ...rest }: React.HTMLAttributes<HTMLDivElement> & {
4
+ mode: Mode;
5
+ disabled?: boolean | undefined;
6
+ value?: import("@z-r/calendar").DateCellValue | import("@z-r/calendar").YearCellValue | import("@z-r/calendar").MonthCellValue | import("@z-r/calendar").DecadeCellValue | undefined;
7
+ }) => JSX.Element>;
8
+ export default _default;
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+
12
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
+
14
+ var _newArrowCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/newArrowCheck"));
15
+
16
+ var _react = _interopRequireDefault(require("react"));
17
+
18
+ var _classnames = _interopRequireDefault(require("classnames"));
19
+
20
+ var _useLocale = _interopRequireDefault(require("../../components/LocaleProvider/useLocale"));
21
+
22
+ var _zh_CN = _interopRequireDefault(require("./locale/zh_CN"));
23
+
24
+ var _style = require("./style");
25
+
26
+ var _excluded = ["children", "mode", "className", "value", "disabled"];
27
+
28
+ var _this = void 0;
29
+
30
+ var Cell = function Cell(_ref) {
31
+ (0, _newArrowCheck2.default)(this, _this);
32
+ var children = _ref.children,
33
+ mode = _ref.mode,
34
+ className = _ref.className,
35
+ value = _ref.value,
36
+ disabled = _ref.disabled,
37
+ rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
38
+ var locale = (0, _useLocale.default)(_zh_CN.default, 'Calendar');
39
+ return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({}, rest, {
40
+ className: (0, _classnames.default)(className, _style.prefixCls + "-cell-".concat(mode)),
41
+ title: disabled ? locale.disabledTip : ''
42
+ }), /*#__PURE__*/_react.default.createElement("span", {
43
+ className: _style.cellContentPrevSpaceCls
44
+ }), /*#__PURE__*/_react.default.createElement("span", {
45
+ className: _style.cellContentCls
46
+ }, /*#__PURE__*/_react.default.createElement("div", {
47
+ className: _style.cellContentSquareCls
48
+ }, children)), /*#__PURE__*/_react.default.createElement("span", {
49
+ className: _style.cellContentNextSpaceCls
50
+ }));
51
+ }.bind(void 0);
52
+
53
+ var _default = /*#__PURE__*/_react.default.memo(Cell);
54
+
55
+ exports.default = _default;
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ import { HeaderButtonType, Mode } from '@z-r/calendar';
3
+ import { Override } from '../../type';
4
+ declare const _default: React.MemoExoticComponent<({ type, mode, ...rest }: Override<React.HTMLAttributes<HTMLSpanElement>, {
5
+ type: HeaderButtonType;
6
+ mode: Mode;
7
+ }>) => JSX.Element>;
8
+ export default _default;
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports.default = void 0;
11
+
12
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
+
14
+ var _newArrowCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/newArrowCheck"));
15
+
16
+ var _react = _interopRequireWildcard(require("react"));
17
+
18
+ var _SvgIcon = _interopRequireDefault(require("../../components/SvgIcon"));
19
+
20
+ var _style = require("./style");
21
+
22
+ var _excluded = ["type", "mode"];
23
+
24
+ var _this = void 0;
25
+
26
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
27
+
28
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && 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; }
29
+
30
+ var HeaderButton = function HeaderButton(_ref) {
31
+ var _this2 = this;
32
+
33
+ (0, _newArrowCheck2.default)(this, _this);
34
+ var type = _ref.type,
35
+ mode = _ref.mode,
36
+ rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
37
+ var display = (0, _react.useMemo)(function () {
38
+ (0, _newArrowCheck2.default)(this, _this2);
39
+
40
+ switch (type) {
41
+ case 'prevMonth':
42
+ return /*#__PURE__*/_react.default.createElement(_SvgIcon.default, {
43
+ type: "arrow-left",
44
+ className: _style.iconCls
45
+ });
46
+
47
+ case 'nextMonth':
48
+ return /*#__PURE__*/_react.default.createElement(_SvgIcon.default, {
49
+ type: "arrow-right",
50
+ className: _style.iconCls
51
+ });
52
+
53
+ case 'prevYear':
54
+ case 'prevDecade':
55
+ case 'prevCentury':
56
+ return /*#__PURE__*/_react.default.createElement(_SvgIcon.default, {
57
+ type: "double-arrow-left",
58
+ className: _style.iconCls
59
+ });
60
+
61
+ case 'nextYear':
62
+ case 'nextDecade':
63
+ case 'nextCentury':
64
+ return /*#__PURE__*/_react.default.createElement(_SvgIcon.default, {
65
+ type: "double-arrow-right",
66
+ className: _style.iconCls
67
+ });
68
+ }
69
+ }.bind(this), [type]);
70
+ return /*#__PURE__*/_react.default.createElement("div", rest, display);
71
+ }.bind(void 0);
72
+
73
+ var _default = /*#__PURE__*/(0, _react.memo)(HeaderButton);
74
+
75
+ exports.default = _default;
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { HeaderSwitcherType, Mode } from '@z-r/calendar/types/interface';
2
+ import { HeaderSwitcherType, Mode } from '@z-r/calendar';
3
3
  import { Override } from '../../type';
4
4
  declare const _default: React.MemoExoticComponent<({ type, value, locale, ...rest }: Override<React.HTMLAttributes<HTMLSpanElement>, {
5
5
  type: HeaderSwitcherType;
@@ -11,6 +11,7 @@ declare const _default: React.MemoExoticComponent<({ type, value, locale, ...res
11
11
  monthBeforeYear: boolean;
12
12
  months: string[];
13
13
  weekdays: string[];
14
+ disabledTip: string;
14
15
  };
15
16
  }>) => JSX.Element>;
16
17
  export default _default;
@@ -27,6 +27,10 @@ var _HeaderSwitcher = _interopRequireDefault(require("./HeaderSwitcher"));
27
27
 
28
28
  var _zh_CN = _interopRequireDefault(require("./locale/zh_CN"));
29
29
 
30
+ var _Cell = _interopRequireDefault(require("./Cell"));
31
+
32
+ var _HeaderButton = _interopRequireDefault(require("./HeaderButton"));
33
+
30
34
  var _excluded = ["onSelect", "onChange", "rules", "locale"];
31
35
 
32
36
  var _this = void 0;
@@ -53,9 +57,9 @@ var Month = function Month(_ref) {
53
57
  }.bind(this), [rules]);
54
58
  var handleChange = (0, _react.useCallback)(function (v) {
55
59
  (0, _newArrowCheck2.default)(this, _this2);
56
- v = (0, _utils.getValidDate)(v, rules);
57
- onChange && onChange(v);
58
- onSelect && onSelect(v);
60
+ var validDate = (0, _utils.getValidDate)(v, rules);
61
+ onChange && onChange(validDate);
62
+ onSelect && onSelect(validDate);
59
63
  }.bind(this), [onChange, onSelect, rules]);
60
64
  var locale = (0, _useLocale.default)(_zh_CN.default, 'Calendar', _locale);
61
65
  var calendarLocale = (0, _react.useMemo)(function () {
@@ -77,7 +81,9 @@ var Month = function Month(_ref) {
77
81
  onChange: handleChange,
78
82
  locale: calendarLocale,
79
83
  components: {
80
- HeaderSwitcher: renderHeaderSwitcher
84
+ HeaderSwitcher: renderHeaderSwitcher,
85
+ Cell: _Cell.default,
86
+ HeaderButton: _HeaderButton.default
81
87
  }
82
88
  }, rest));
83
89
  }.bind(void 0);
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { CalendarProps } from './Calendar';
3
+ declare const _default: React.MemoExoticComponent<React.NamedExoticComponent<CalendarProps & Omit<React.HTMLAttributes<HTMLDivElement>, keyof CalendarProps>>>;
4
+ export default _default;
@@ -0,0 +1,155 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports.default = void 0;
11
+
12
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
+
14
+ var _newArrowCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/newArrowCheck"));
15
+
16
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
+
18
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
19
+
20
+ var _react = _interopRequireWildcard(require("react"));
21
+
22
+ var _moment = _interopRequireDefault(require("moment"));
23
+
24
+ var _useLocale = _interopRequireDefault(require("../../components/LocaleProvider/useLocale"));
25
+
26
+ var _useUncontrolled3 = _interopRequireDefault(require("../../hooks/useUncontrolled"));
27
+
28
+ var _utils = require("./utils");
29
+
30
+ var _style = require("./style");
31
+
32
+ var _HeaderSwitcher = _interopRequireDefault(require("./HeaderSwitcher"));
33
+
34
+ var _zh_CN = _interopRequireDefault(require("./locale/zh_CN"));
35
+
36
+ var _Cell = _interopRequireDefault(require("./Cell"));
37
+
38
+ var _HeaderButton = _interopRequireDefault(require("./HeaderButton"));
39
+
40
+ var _excluded = ["onSelect", "onChange", "rules", "locale", "current", "defaultCurrent", "onCurrentChange"];
41
+
42
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
43
+
44
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && 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; }
45
+
46
+ var TwoSide = /*#__PURE__*/_react.default.memo(function TwoSide(_ref) {
47
+ var _this = this;
48
+
49
+ var onSelect = _ref.onSelect,
50
+ onChange = _ref.onChange,
51
+ rules = _ref.rules,
52
+ _locale = _ref.locale,
53
+ _current = _ref.current,
54
+ _defaultCurrent = _ref.defaultCurrent,
55
+ _onCurrentChange = _ref.onCurrentChange,
56
+ rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
57
+
58
+ var _useUncontrolled = (0, _useUncontrolled3.default)(_current, _defaultCurrent || rest.value || rest.defaultValue || new Date(), _onCurrentChange),
59
+ _useUncontrolled2 = (0, _slicedToArray2.default)(_useUncontrolled, 2),
60
+ current = _useUncontrolled2[0],
61
+ setCurrent = _useUncontrolled2[1];
62
+
63
+ var _useState = (0, _react.useState)(true),
64
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
65
+ firstDisplay = _useState2[0],
66
+ setFirstDisplay = _useState2[1];
67
+
68
+ var _useState3 = (0, _react.useState)(true),
69
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
70
+ secondDisplay = _useState4[0],
71
+ setSecondDisplay = _useState4[1];
72
+
73
+ var handleFirstModeChange = (0, _react.useCallback)(function (mode) {
74
+ (0, _newArrowCheck2.default)(this, _this);
75
+ setSecondDisplay(mode === 'date');
76
+ }.bind(this), []);
77
+ var handleSecondModeChange = (0, _react.useCallback)(function (mode) {
78
+ (0, _newArrowCheck2.default)(this, _this);
79
+ setFirstDisplay(mode === 'date');
80
+ }.bind(this), []);
81
+ var handleSecondCurrentChange = (0, _react.useCallback)(function (d) {
82
+ (0, _newArrowCheck2.default)(this, _this);
83
+ setCurrent((0, _moment.default)(d).add({
84
+ month: -1
85
+ }));
86
+ }.bind(this), [setCurrent]);
87
+ var disabledRule = (0, _react.useMemo)(function () {
88
+ (0, _newArrowCheck2.default)(this, _this);
89
+ return (0, _utils.getDisabledRule)(rules);
90
+ }.bind(this), [rules]);
91
+ var handleChange = (0, _react.useCallback)(function (v) {
92
+ (0, _newArrowCheck2.default)(this, _this);
93
+ var validDate = (0, _utils.getValidDate)(v, rules);
94
+ onChange && onChange(validDate);
95
+ }.bind(this), [onChange, rules]);
96
+ var locale = (0, _useLocale.default)(_zh_CN.default, 'Calendar', _locale);
97
+ var calendarLocale = (0, _react.useMemo)(function () {
98
+ (0, _newArrowCheck2.default)(this, _this);
99
+ return {
100
+ months: locale.months,
101
+ weekdays: locale.weekdays
102
+ };
103
+ }.bind(this), [locale.months, locale.weekdays]);
104
+ var renderHeaderSwitcher = (0, _react.useCallback)(function (props) {
105
+ (0, _newArrowCheck2.default)(this, _this);
106
+ return /*#__PURE__*/_react.default.createElement(_HeaderSwitcher.default, (0, _extends2.default)({}, props, {
107
+ locale: locale
108
+ }));
109
+ }.bind(this), [locale]);
110
+ return /*#__PURE__*/_react.default.createElement(_style.STwoSide, {
111
+ className: !firstDisplay || !secondDisplay ? _style.twoSideSingleCls : ''
112
+ }, /*#__PURE__*/_react.default.createElement(_style.SCalendar, (0, _extends2.default)({
113
+ prefixCls: _style.prefixCls,
114
+ disabledRule: disabledRule,
115
+ onChange: handleChange,
116
+ locale: calendarLocale,
117
+ monthBeforeYear: locale.monthBeforeYear,
118
+ components: {
119
+ HeaderSwitcher: renderHeaderSwitcher,
120
+ Cell: _Cell.default,
121
+ HeaderButton: _HeaderButton.default
122
+ },
123
+ current: current,
124
+ onCurrentChange: setCurrent,
125
+ onModeChange: handleFirstModeChange,
126
+ customStyle: {
127
+ boxShadow: false
128
+ },
129
+ hidden: !firstDisplay
130
+ }, rest)), /*#__PURE__*/_react.default.createElement(_style.SCalendar, (0, _extends2.default)({
131
+ prefixCls: _style.prefixCls,
132
+ disabledRule: disabledRule,
133
+ onChange: handleChange,
134
+ locale: calendarLocale,
135
+ monthBeforeYear: locale.monthBeforeYear,
136
+ components: {
137
+ HeaderSwitcher: renderHeaderSwitcher,
138
+ Cell: _Cell.default,
139
+ HeaderButton: _HeaderButton.default
140
+ },
141
+ current: (0, _moment.default)(+current).add({
142
+ month: 1
143
+ }),
144
+ onCurrentChange: handleSecondCurrentChange,
145
+ onModeChange: handleSecondModeChange,
146
+ customStyle: {
147
+ boxShadow: false
148
+ },
149
+ hidden: !secondDisplay
150
+ }, rest)));
151
+ });
152
+
153
+ var _default = /*#__PURE__*/(0, _react.memo)(TwoSide);
154
+
155
+ exports.default = _default;
@@ -1,7 +1,10 @@
1
1
  import Calendar from './Calendar';
2
2
  import Month from './Month';
3
+ import TwoSide from './TwoSide';
3
4
  declare type TExportCalendar = typeof Calendar & {
4
5
  Month: typeof Month;
6
+ TwoSide: typeof TwoSide;
5
7
  };
6
8
  declare const ExportCalendar: TExportCalendar;
7
9
  export default ExportCalendar;
10
+ export { TwoSide };
@@ -5,13 +5,22 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
+ Object.defineProperty(exports, "TwoSide", {
9
+ enumerable: true,
10
+ get: function get() {
11
+ return _TwoSide.default;
12
+ }
13
+ });
8
14
  exports.default = void 0;
9
15
 
10
16
  var _Calendar = _interopRequireDefault(require("./Calendar"));
11
17
 
12
18
  var _Month = _interopRequireDefault(require("./Month"));
13
19
 
20
+ var _TwoSide = _interopRequireDefault(require("./TwoSide"));
21
+
14
22
  var ExportCalendar = _Calendar.default;
15
23
  ExportCalendar.Month = _Month.default;
24
+ ExportCalendar.TwoSide = _TwoSide.default;
16
25
  var _default = ExportCalendar;
17
26
  exports.default = _default;
@@ -24,6 +24,7 @@ var _default = {
24
24
  year: '',
25
25
  monthBeforeYear: true,
26
26
  months: months,
27
- weekdays: weekdays
27
+ weekdays: weekdays,
28
+ disabledTip: 'Invalid date'
28
29
  };
29
30
  exports.default = _default;
@@ -4,6 +4,7 @@ declare namespace _default {
4
4
  export const monthBeforeYear: boolean;
5
5
  export { months };
6
6
  export { weekdays };
7
+ export const disabledTip: string;
7
8
  }
8
9
  export default _default;
9
10
  declare const months: string[];
@@ -11,7 +11,7 @@ var _newArrowCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/new
11
11
 
12
12
  var _this = void 0;
13
13
 
14
- var months = '一_二_三_四_五_六_七_八_九_十_十一_十二'.split('_').map(function (v) {
14
+ var months = '1_2_3_4_5_6_7_8_9_10_11_12'.split('_').map(function (v) {
15
15
  (0, _newArrowCheck2.default)(this, _this);
16
16
  return "".concat(v, "\u6708");
17
17
  }.bind(void 0));
@@ -21,6 +21,7 @@ var _default = {
21
21
  year: '年',
22
22
  monthBeforeYear: false,
23
23
  months: months,
24
- weekdays: weekdays
24
+ weekdays: weekdays,
25
+ disabledTip: '当前日期不可选'
25
26
  };
26
27
  exports.default = _default;
@@ -2,11 +2,24 @@
2
2
  import { Theme } from '../../../style';
3
3
  export declare const prefixCls: string;
4
4
  export declare const tableCls: string;
5
+ export declare const cellContentCls: string;
6
+ export declare const cellContentSquareCls: string;
7
+ export declare const cellContentPrevSpaceCls: string;
8
+ export declare const cellContentNextSpaceCls: string;
9
+ export declare const twoSideSingleCls: string;
10
+ export declare const iconCls: string;
5
11
  export declare const calendarMixin: (props: {
6
12
  theme: Theme;
7
13
  customStyle?: {
8
14
  boxShadow?: boolean | undefined;
9
15
  } | undefined;
10
16
  }) => import("@emotion/utils").SerializedStyles;
17
+ export declare const STwoSide: import("react").ForwardRefExoticComponent<{
18
+ customStyle?: {
19
+ boxShadow: boolean;
20
+ } | undefined;
21
+ } & import("react").HTMLAttributes<HTMLElement> & {
22
+ theme?: Theme | undefined;
23
+ } & import("react").RefAttributes<HTMLElement>>;
11
24
  export declare const SCalendar: import("react").ForwardRefExoticComponent<Pick<any, string | number | symbol> & import("react").RefAttributes<HTMLElement>>;
12
25
  export declare const SMonthCalendar: import("react").ForwardRefExoticComponent<Pick<any, string | number | symbol> & import("react").RefAttributes<HTMLElement>>;