rsuite 5.59.0 → 5.59.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 (181) hide show
  1. package/AvatarGroup/styles/index.css +2 -0
  2. package/AvatarGroup/styles/index.less +2 -0
  3. package/CHANGELOG.md +26 -0
  4. package/CheckPicker/styles/index.css +2 -0
  5. package/CheckTree/styles/index.css +2 -0
  6. package/CheckTreePicker/styles/index.css +2 -0
  7. package/Checkbox/styles/index.css +2 -0
  8. package/Checkbox/styles/index.less +2 -0
  9. package/DateRangePicker/styles/index.css +27 -0
  10. package/DateRangePicker/styles/index.less +27 -0
  11. package/MultiCascadeTree/styles/index.css +2 -0
  12. package/MultiCascader/styles/index.css +2 -0
  13. package/Placeholder/styles/index.css +42 -6
  14. package/Placeholder/styles/index.less +18 -9
  15. package/Placeholder/styles/mixin.less +7 -0
  16. package/Sidenav/styles/index.css +3 -0
  17. package/Sidenav/styles/index.less +4 -0
  18. package/TagInput/styles/index.css +2 -0
  19. package/TagPicker/styles/index.css +2 -0
  20. package/cjs/@types/common.d.ts +1 -1
  21. package/cjs/Avatar/Avatar.js +16 -8
  22. package/cjs/Avatar/useImage.js +0 -1
  23. package/cjs/AvatarGroup/AvatarGroup.d.ts +1 -0
  24. package/cjs/AvatarGroup/AvatarGroup.js +12 -12
  25. package/cjs/Calendar/CalendarContainer.js +4 -4
  26. package/cjs/Checkbox/Checkbox.js +1 -1
  27. package/cjs/DatePicker/DatePicker.d.ts +3 -38
  28. package/cjs/DatePicker/DatePicker.js +86 -137
  29. package/cjs/DatePicker/PredefinedRanges.d.ts +1 -1
  30. package/cjs/DatePicker/PredefinedRanges.js +3 -3
  31. package/cjs/DatePicker/Toolbar.d.ts +1 -1
  32. package/cjs/DatePicker/Toolbar.js +13 -12
  33. package/cjs/DatePicker/hooks/useFocus.d.ts +13 -0
  34. package/cjs/DatePicker/hooks/useFocus.js +96 -0
  35. package/cjs/DatePicker/hooks/useMonthView.d.ts +10 -0
  36. package/cjs/DatePicker/hooks/useMonthView.js +28 -0
  37. package/cjs/DatePicker/index.d.ts +2 -1
  38. package/cjs/DatePicker/types.d.ts +37 -0
  39. package/cjs/DatePicker/utils.d.ts +9 -0
  40. package/cjs/DatePicker/utils.js +20 -2
  41. package/cjs/DateRangePicker/DateRangePicker.d.ts +15 -3
  42. package/cjs/DateRangePicker/DateRangePicker.js +58 -68
  43. package/cjs/DateRangePicker/DateRangePickerContext.d.ts +4 -1
  44. package/cjs/DateRangePicker/DateRangePickerContext.js +4 -4
  45. package/cjs/DateRangePicker/Header.d.ts +11 -0
  46. package/cjs/DateRangePicker/Header.js +65 -0
  47. package/cjs/DateRangePicker/disabledDateUtils.d.ts +1 -1
  48. package/cjs/DateRangePicker/disabledDateUtils.js +1 -1
  49. package/cjs/DateRangePicker/index.js +5 -0
  50. package/cjs/Form/Form.d.ts +56 -39
  51. package/cjs/Form/Form.js +70 -208
  52. package/cjs/Form/FormContext.d.ts +13 -10
  53. package/cjs/Form/FormContext.js +11 -5
  54. package/cjs/Form/{useFormClassNames.d.ts → hooks/useFormClassNames.d.ts} +2 -2
  55. package/cjs/Form/{useFormClassNames.js → hooks/useFormClassNames.js} +2 -2
  56. package/cjs/Form/hooks/useFormRef.d.ts +55 -0
  57. package/cjs/Form/hooks/useFormRef.js +45 -0
  58. package/cjs/Form/hooks/useFormValidate.d.ts +19 -0
  59. package/cjs/Form/hooks/useFormValidate.js +157 -0
  60. package/cjs/Form/hooks/useFormValue.d.ts +7 -0
  61. package/cjs/Form/hooks/useFormValue.js +42 -0
  62. package/cjs/Form/{useSchemaModel.js → hooks/useSchemaModel.js} +5 -0
  63. package/cjs/Form/index.d.ts +3 -2
  64. package/cjs/Form/index.js +3 -9
  65. package/cjs/FormControl/FormControl.d.ts +1 -1
  66. package/cjs/FormControl/FormControl.js +51 -69
  67. package/cjs/FormControl/hooks/useField.d.ts +18 -0
  68. package/cjs/FormControl/hooks/useField.js +54 -0
  69. package/cjs/FormControl/hooks/useRegisterModel.d.ts +3 -0
  70. package/cjs/FormControl/hooks/useRegisterModel.js +22 -0
  71. package/cjs/FormControl/utils.d.ts +1 -0
  72. package/cjs/FormControl/utils.js +8 -0
  73. package/cjs/FormControlLabel/FormControlLabel.js +12 -9
  74. package/cjs/FormErrorMessage/FormErrorMessage.js +2 -5
  75. package/cjs/FormGroup/FormGroup.d.ts +18 -4
  76. package/cjs/FormGroup/FormGroup.js +28 -2
  77. package/cjs/FormGroup/index.d.ts +1 -0
  78. package/cjs/FormGroup/index.js +4 -3
  79. package/cjs/FormHelpText/FormHelpText.d.ts +2 -1
  80. package/cjs/FormHelpText/FormHelpText.js +16 -9
  81. package/cjs/Input/Input.js +4 -5
  82. package/cjs/Placeholder/PlaceholderGraph.d.ts +13 -1
  83. package/cjs/Placeholder/PlaceholderGrid.d.ts +27 -1
  84. package/cjs/Placeholder/PlaceholderGrid.js +10 -13
  85. package/cjs/Placeholder/PlaceholderParagraph.d.ts +24 -1
  86. package/cjs/Placeholder/PlaceholderParagraph.js +13 -9
  87. package/cjs/utils/dateUtils.d.ts +72 -10
  88. package/cjs/utils/dateUtils.js +88 -29
  89. package/dist/rsuite-no-reset-rtl.css +76 -6
  90. package/dist/rsuite-no-reset-rtl.min.css +1 -1
  91. package/dist/rsuite-no-reset-rtl.min.css.map +1 -1
  92. package/dist/rsuite-no-reset.css +76 -6
  93. package/dist/rsuite-no-reset.min.css +1 -1
  94. package/dist/rsuite-no-reset.min.css.map +1 -1
  95. package/dist/rsuite-rtl.css +76 -6
  96. package/dist/rsuite-rtl.min.css +1 -1
  97. package/dist/rsuite-rtl.min.css.map +1 -1
  98. package/dist/rsuite.css +76 -6
  99. package/dist/rsuite.js +221 -57
  100. package/dist/rsuite.js.map +1 -1
  101. package/dist/rsuite.min.css +1 -1
  102. package/dist/rsuite.min.css.map +1 -1
  103. package/dist/rsuite.min.js +1 -1
  104. package/dist/rsuite.min.js.LICENSE.txt +35 -0
  105. package/dist/rsuite.min.js.map +1 -1
  106. package/esm/@types/common.d.ts +1 -1
  107. package/esm/Avatar/Avatar.js +12 -4
  108. package/esm/Avatar/useImage.js +0 -1
  109. package/esm/AvatarGroup/AvatarGroup.d.ts +1 -0
  110. package/esm/AvatarGroup/AvatarGroup.js +12 -12
  111. package/esm/Calendar/CalendarContainer.js +5 -5
  112. package/esm/Checkbox/Checkbox.js +1 -1
  113. package/esm/DatePicker/DatePicker.d.ts +3 -38
  114. package/esm/DatePicker/DatePicker.js +88 -139
  115. package/esm/DatePicker/PredefinedRanges.d.ts +1 -1
  116. package/esm/DatePicker/PredefinedRanges.js +3 -3
  117. package/esm/DatePicker/Toolbar.d.ts +1 -1
  118. package/esm/DatePicker/Toolbar.js +13 -12
  119. package/esm/DatePicker/hooks/useFocus.d.ts +13 -0
  120. package/esm/DatePicker/hooks/useFocus.js +90 -0
  121. package/esm/DatePicker/hooks/useMonthView.d.ts +10 -0
  122. package/esm/DatePicker/hooks/useMonthView.js +22 -0
  123. package/esm/DatePicker/index.d.ts +2 -1
  124. package/esm/DatePicker/types.d.ts +37 -0
  125. package/esm/DatePicker/utils.d.ts +9 -0
  126. package/esm/DatePicker/utils.js +18 -2
  127. package/esm/DateRangePicker/DateRangePicker.d.ts +15 -3
  128. package/esm/DateRangePicker/DateRangePicker.js +61 -71
  129. package/esm/DateRangePicker/DateRangePickerContext.d.ts +4 -1
  130. package/esm/DateRangePicker/DateRangePickerContext.js +2 -2
  131. package/esm/DateRangePicker/Header.d.ts +11 -0
  132. package/esm/DateRangePicker/Header.js +59 -0
  133. package/esm/DateRangePicker/disabledDateUtils.d.ts +1 -1
  134. package/esm/DateRangePicker/disabledDateUtils.js +1 -1
  135. package/esm/DateRangePicker/index.js +4 -0
  136. package/esm/Form/Form.d.ts +56 -39
  137. package/esm/Form/Form.js +68 -205
  138. package/esm/Form/FormContext.d.ts +13 -10
  139. package/esm/Form/FormContext.js +6 -2
  140. package/esm/Form/{useFormClassNames.d.ts → hooks/useFormClassNames.d.ts} +2 -2
  141. package/esm/Form/{useFormClassNames.js → hooks/useFormClassNames.js} +2 -2
  142. package/esm/Form/hooks/useFormRef.d.ts +55 -0
  143. package/esm/Form/hooks/useFormRef.js +40 -0
  144. package/esm/Form/hooks/useFormValidate.d.ts +19 -0
  145. package/esm/Form/hooks/useFormValidate.js +152 -0
  146. package/esm/Form/hooks/useFormValue.d.ts +7 -0
  147. package/esm/Form/hooks/useFormValue.js +37 -0
  148. package/esm/Form/{useSchemaModel.js → hooks/useSchemaModel.js} +5 -0
  149. package/esm/Form/index.d.ts +3 -2
  150. package/esm/Form/index.js +1 -1
  151. package/esm/FormControl/FormControl.d.ts +1 -1
  152. package/esm/FormControl/FormControl.js +49 -67
  153. package/esm/FormControl/hooks/useField.d.ts +18 -0
  154. package/esm/FormControl/hooks/useField.js +48 -0
  155. package/esm/FormControl/hooks/useRegisterModel.d.ts +3 -0
  156. package/esm/FormControl/hooks/useRegisterModel.js +17 -0
  157. package/esm/FormControl/utils.d.ts +1 -0
  158. package/esm/FormControl/utils.js +4 -0
  159. package/esm/FormControlLabel/FormControlLabel.js +12 -8
  160. package/esm/FormErrorMessage/FormErrorMessage.js +2 -5
  161. package/esm/FormGroup/FormGroup.d.ts +18 -4
  162. package/esm/FormGroup/FormGroup.js +27 -1
  163. package/esm/FormGroup/index.d.ts +1 -0
  164. package/esm/FormGroup/index.js +1 -0
  165. package/esm/FormHelpText/FormHelpText.d.ts +2 -1
  166. package/esm/FormHelpText/FormHelpText.js +17 -9
  167. package/esm/Input/Input.js +4 -5
  168. package/esm/Placeholder/PlaceholderGraph.d.ts +13 -1
  169. package/esm/Placeholder/PlaceholderGrid.d.ts +27 -1
  170. package/esm/Placeholder/PlaceholderGrid.js +10 -13
  171. package/esm/Placeholder/PlaceholderParagraph.d.ts +24 -1
  172. package/esm/Placeholder/PlaceholderParagraph.js +12 -8
  173. package/esm/utils/dateUtils.d.ts +72 -10
  174. package/esm/utils/dateUtils.js +86 -28
  175. package/package.json +2 -2
  176. package/cjs/FormControl/useRegisterModel.d.ts +0 -4
  177. package/cjs/FormControl/useRegisterModel.js +0 -18
  178. package/esm/FormControl/useRegisterModel.d.ts +0 -4
  179. package/esm/FormControl/useRegisterModel.js +0 -13
  180. /package/cjs/Form/{useSchemaModel.d.ts → hooks/useSchemaModel.d.ts} +0 -0
  181. /package/esm/Form/{useSchemaModel.d.ts → hooks/useSchemaModel.d.ts} +0 -0
@@ -12,8 +12,6 @@ var _react = _interopRequireWildcard(require("react"));
12
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
13
13
  var _mapValues = _interopRequireDefault(require("lodash/mapValues"));
14
14
  var _pick = _interopRequireDefault(require("lodash/pick"));
15
- var _delay = _interopRequireDefault(require("lodash/delay"));
16
- var _omit = _interopRequireDefault(require("lodash/omit"));
17
15
  var _Calendar = _interopRequireDefault(require("@rsuite/icons/legacy/Calendar"));
18
16
  var _ClockO = _interopRequireDefault(require("@rsuite/icons/legacy/ClockO"));
19
17
  var _CalendarContainer = _interopRequireDefault(require("../Calendar/CalendarContainer"));
@@ -28,9 +26,9 @@ var _Picker = require("../internals/Picker");
28
26
  var _OverlayTrigger = require("../internals/Overlay/OverlayTrigger");
29
27
  var _DateInput = _interopRequireDefault(require("../DateInput"));
30
28
  var _InputGroup = _interopRequireDefault(require("../InputGroup"));
31
- var _propTypes2 = require("../internals/propTypes");
32
- var _utils2 = require("../Calendar/utils");
33
- var _utils3 = require("./utils");
29
+ var _utils2 = require("./utils");
30
+ var _useMonthView2 = _interopRequireDefault(require("./hooks/useMonthView"));
31
+ var _useFocus2 = _interopRequireDefault(require("./hooks/useFocus"));
34
32
  var _templateObject;
35
33
  /**
36
34
  * A date picker allows users to select a date from a calendar.
@@ -79,10 +77,6 @@ var DatePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
79
77
  style = props.style,
80
78
  size = props.size,
81
79
  caretAsProp = props.caretAs,
82
- DEPRECATED_disabledDate = props.disabledDate,
83
- DEPRECATED_disabledHours = props.disabledHours,
84
- DEPRECATED_disabledMinutes = props.disabledMinutes,
85
- DEPRECATED_disabledSeconds = props.disabledSeconds,
86
80
  shouldDisableDate = props.shouldDisableDate,
87
81
  shouldDisableHour = props.shouldDisableHour,
88
82
  shouldDisableMinute = props.shouldDisableMinute,
@@ -100,7 +94,11 @@ var DatePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
100
94
  onToggleTimeDropdown = props.onToggleTimeDropdown,
101
95
  onShortcutClick = props.onShortcutClick,
102
96
  renderCell = props.renderCell,
103
- restProps = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "className", "classPrefix", "calendarDefaultDate", "cleanable", "editable", "defaultValue", "disabled", "readOnly", "plaintext", "format", "id", "isoWeek", "limitEndYear", "limitStartYear", "locale", "loading", "label", "menuClassName", "menuStyle", "appearance", "placement", "oneTap", "placeholder", "ranges", "value", "showMeridian", "showWeekNumbers", "style", "size", "caretAs", "disabledDate", "disabledHours", "disabledMinutes", "disabledSeconds", "shouldDisableDate", "shouldDisableHour", "shouldDisableMinute", "shouldDisableSecond", "onChange", "onChangeCalendarDate", "onClean", "onEntered", "onExited", "onNextMonth", "onOk", "onPrevMonth", "onSelect", "onToggleMonthDropdown", "onToggleTimeDropdown", "onShortcutClick", "renderCell"]);
97
+ DEPRECATED_disabledDate = props.disabledDate,
98
+ DEPRECATED_disabledHours = props.disabledHours,
99
+ DEPRECATED_disabledMinutes = props.disabledMinutes,
100
+ DEPRECATED_disabledSeconds = props.disabledSeconds,
101
+ restProps = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "className", "classPrefix", "calendarDefaultDate", "cleanable", "editable", "defaultValue", "disabled", "readOnly", "plaintext", "format", "id", "isoWeek", "limitEndYear", "limitStartYear", "locale", "loading", "label", "menuClassName", "menuStyle", "appearance", "placement", "oneTap", "placeholder", "ranges", "value", "showMeridian", "showWeekNumbers", "style", "size", "caretAs", "shouldDisableDate", "shouldDisableHour", "shouldDisableMinute", "shouldDisableSecond", "onChange", "onChangeCalendarDate", "onClean", "onEntered", "onExited", "onNextMonth", "onOk", "onPrevMonth", "onSelect", "onToggleMonthDropdown", "onToggleTimeDropdown", "onShortcutClick", "renderCell", "disabledDate", "disabledHours", "disabledMinutes", "disabledSeconds"]);
104
102
  var id = (0, _utils.useUniqueId)('rs-', idProp);
105
103
  var _usePickerRef = (0, _Picker.usePickerRef)(ref),
106
104
  trigger = _usePickerRef.trigger,
@@ -108,8 +106,7 @@ var DatePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
108
106
  target = _usePickerRef.target,
109
107
  overlay = _usePickerRef.overlay;
110
108
  var _useCustom = (0, _utils.useCustom)('DatePicker', overrideLocale),
111
- locale = _useCustom.locale,
112
- formatDate = _useCustom.formatDate;
109
+ locale = _useCustom.locale;
113
110
  var _useClassNames = (0, _utils.useClassNames)(classPrefix),
114
111
  merge = _useClassNames.merge,
115
112
  prefix = _useClassNames.prefix;
@@ -120,11 +117,26 @@ var DatePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
120
117
  calendarDate = _useCalendarDate.calendarDate,
121
118
  setCalendarDate = _useCalendarDate.setCalendarDate,
122
119
  resetCalendarDate = _useCalendarDate.resetCalendarDate;
123
- var _useState = (0, _react.useState)(false),
124
- showMonthDropdown = _useState[0],
125
- setShowMonthDropdown = _useState[1]; // Show only the calendar month panel. formatStr = 'yyyy-MM'
120
+ var _useMonthView = (0, _useMonthView2.default)({
121
+ onToggleMonthDropdown: onToggleMonthDropdown
122
+ }),
123
+ setMonthView = _useMonthView.setMonthView,
124
+ monthView = _useMonthView.monthView,
125
+ toggleMonthView = _useMonthView.toggleMonthView; // Show only the calendar month panel. formatStr = 'yyyy-MM'
126
126
  var onlyShowMonth = (0, _dateUtils.shouldRenderMonth)(formatStr) && !(0, _dateUtils.shouldRenderDate)(formatStr);
127
- var showMonth = onlyShowMonth || showMonthDropdown;
127
+ var showMonth = onlyShowMonth || monthView;
128
+ var _useFocus = (0, _useFocus2.default)({
129
+ target: target,
130
+ showMonth: showMonth,
131
+ id: id,
132
+ locale: locale
133
+ }),
134
+ focusInput = _useFocus.focusInput,
135
+ focusSelectedDate = _useFocus.focusSelectedDate,
136
+ onKeyFocusEvent = _useFocus.onKeyFocusEvent;
137
+ /**
138
+ * Check whether the date is disabled.
139
+ */
128
140
  var isDateDisabled = function isDateDisabled(date) {
129
141
  if (typeof shouldDisableDate === 'function') {
130
142
  return shouldDisableDate(date);
@@ -134,6 +146,34 @@ var DatePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
134
146
  }
135
147
  return false;
136
148
  };
149
+
150
+ /**
151
+ * Check whether the time is within the time range of the shortcut option in the toolbar.
152
+ */
153
+ var isDatetimeDisabled = function isDatetimeDisabled(date) {
154
+ return (isDateDisabled === null || isDateDisabled === void 0 ? void 0 : isDateDisabled(date)) || (0, _dateUtils.disableTime)(props, date);
155
+ };
156
+
157
+ /**
158
+ * Check whether the month is disabled.
159
+ * If any day in the month is disabled, the entire month is disabled
160
+ */
161
+ var isMonthDisabled = function isMonthDisabled(date) {
162
+ return (0, _MonthDropdown.isEveryDateInMonth)(date.getFullYear(), date.getMonth(), isDateDisabled);
163
+ };
164
+
165
+ /**
166
+ * Whether "OK" button is disabled
167
+ *
168
+ * - If format is date, disable ok button if selected date is disabled
169
+ * - If format is month, disable ok button if all dates in the month of selected date are disabled
170
+ */
171
+ var isOkButtonDisabled = function isOkButtonDisabled(selectedDate) {
172
+ if ((0, _dateUtils.shouldRenderMonth)(formatStr) && !(0, _dateUtils.shouldRenderDate)(formatStr)) {
173
+ return isMonthDisabled(selectedDate);
174
+ }
175
+ return isDatetimeDisabled(selectedDate);
176
+ };
137
177
  var isErrorValue = function isErrorValue(value) {
138
178
  if (!(0, _dateUtils.isValid)(value)) {
139
179
  return true;
@@ -176,6 +216,10 @@ var DatePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
176
216
  setCalendarDate(nextPageTime);
177
217
  handleDateChange(nextPageTime);
178
218
  });
219
+
220
+ /**
221
+ * Close the calendar panel.
222
+ */
179
223
  var handleClose = (0, _utils.useEventCallback)(function () {
180
224
  var _trigger$current, _trigger$current$clos;
181
225
  (_trigger$current = trigger.current) === null || _trigger$current === void 0 ? void 0 : (_trigger$current$clos = _trigger$current.close) === null || _trigger$current$clos === void 0 ? void 0 : _trigger$current$clos.call(_trigger$current);
@@ -190,11 +234,11 @@ var DatePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
190
234
  var nextDate = (0, _dateUtils.setHours)(calendarDate, nextHours);
191
235
  handleChangeTime(nextDate);
192
236
  });
193
- var updateValue = function updateValue(event, nextPageDate, closeOverlay) {
237
+ var updateValue = function updateValue(event, date, closeOverlay) {
194
238
  if (closeOverlay === void 0) {
195
239
  closeOverlay = true;
196
240
  }
197
- var nextValue = typeof nextPageDate !== 'undefined' ? nextPageDate : calendarDate;
241
+ var nextValue = typeof date !== 'undefined' ? date : calendarDate;
198
242
  setCalendarDate(nextValue || new Date());
199
243
  setValue(nextValue);
200
244
  if (nextValue !== value) {
@@ -217,55 +261,13 @@ var DatePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
217
261
  onShortcutClick === null || onShortcutClick === void 0 ? void 0 : onShortcutClick(range, event);
218
262
  });
219
263
 
220
- /**
221
- * Get the corresponding container based on date selection and month selection
222
- */
223
- var getOverlayContainer = function getOverlayContainer() {
224
- return showMonth ? document.getElementById(id + "-calendar-month-dropdown") : document.getElementById(id + "-calendar-table");
225
- };
226
-
227
- /**
228
- * Check whether the date is focusable
229
- */
230
- var checkFocusable = function checkFocusable(date) {
231
- var formatStr = showMonth ? locale.formattedMonthPattern : locale.formattedDayPattern;
232
- var ariaLabel = (0, _utils2.getAriaLabel)(date, formatStr, formatDate);
233
- var container = getOverlayContainer();
234
- var dateElement = container === null || container === void 0 ? void 0 : container.querySelector("[aria-label=\"" + ariaLabel + "\"]");
235
- if ((dateElement === null || dateElement === void 0 ? void 0 : dateElement.getAttribute('aria-disabled')) === 'true') {
236
- return false;
237
- }
238
- return true;
239
- };
240
-
241
- /**
242
- * Focus on the currently selected date element
243
- */
244
- var focusSelectedDate = function focusSelectedDate() {
245
- (0, _delay.default)(function () {
246
- var container = getOverlayContainer();
247
- var selectedElement = container === null || container === void 0 ? void 0 : container.querySelector('[aria-selected="true"]');
248
- selectedElement === null || selectedElement === void 0 ? void 0 : selectedElement.focus();
249
- }, 1);
250
- };
251
-
252
- /**
253
- * Focus on the input element
254
- */
255
- var focusTargetInput = (0, _utils.useEventCallback)(function () {
256
- (0, _delay.default)(function () {
257
- var _target$current;
258
- return (_target$current = target.current) === null || _target$current === void 0 ? void 0 : _target$current.focus();
259
- }, 1);
260
- });
261
-
262
264
  /**
263
265
  * The callback triggered after clicking the OK button.
264
266
  */
265
267
  var handleOK = (0, _utils.useEventCallback)(function (event) {
266
268
  updateValue(event);
267
269
  onOk === null || onOk === void 0 ? void 0 : onOk(calendarDate, event);
268
- focusTargetInput();
270
+ focusInput();
269
271
  });
270
272
 
271
273
  /**
@@ -273,46 +275,20 @@ var DatePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
273
275
  */
274
276
 
275
277
  var handleClean = (0, _utils.useEventCallback)(function (event) {
278
+ event === null || event === void 0 ? void 0 : event.stopPropagation();
276
279
  updateValue(event, null);
277
280
  resetCalendarDate(null);
278
281
  onClean === null || onClean === void 0 ? void 0 : onClean(event);
279
- event.stopPropagation();
280
282
  });
281
283
  var handlePickerPopupKeyDown = (0, _utils.useEventCallback)(function (event) {
282
- var delta = 0;
283
- var step = showMonth ? 6 : 7;
284
- var changeDateFunc = showMonth ? _dateUtils.addMonths : _dateUtils.addDays;
285
- (0, _Picker.onMenuKeyDown)(event, {
286
- down: function down() {
287
- delta = step;
288
- },
289
- up: function up() {
290
- delta = -step;
291
- },
292
- right: function right() {
293
- delta = 1;
294
- },
295
- left: function left() {
296
- delta = -1;
297
- },
298
- enter: function enter() {
299
- handleOK(event);
300
- }
284
+ onKeyFocusEvent(event, {
285
+ date: calendarDate,
286
+ callback: setCalendarDate
301
287
  });
302
- var nextDate = changeDateFunc(calendarDate, delta);
303
- if (checkFocusable(nextDate)) {
304
- setCalendarDate(nextDate);
305
- focusSelectedDate();
288
+ if (event.key === 'Enter') {
289
+ handleOK(event);
306
290
  }
307
291
  });
308
-
309
- /**
310
- * The callback triggered after the month selection box is opened or closed.
311
- */
312
- var handleToggleMonthDropdown = (0, _utils.useEventCallback)(function (toggle) {
313
- onToggleMonthDropdown === null || onToggleMonthDropdown === void 0 ? void 0 : onToggleMonthDropdown(toggle);
314
- setShowMonthDropdown(toggle);
315
- });
316
292
  var handleClick = (0, _utils.useEventCallback)(function () {
317
293
  if (editable) {
318
294
  return;
@@ -336,7 +312,7 @@ var DatePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
336
312
  handleDateChange(nextValue);
337
313
  if (oneTap && updatableValue) {
338
314
  updateValue(event, nextValue);
339
- focusTargetInput();
315
+ focusInput();
340
316
  }
341
317
  });
342
318
 
@@ -349,7 +325,7 @@ var DatePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
349
325
  focusSelectedDate();
350
326
  if (oneTap && onlyShowMonth) {
351
327
  updateValue(event, nextPageDate);
352
- focusTargetInput();
328
+ focusInput();
353
329
  }
354
330
  });
355
331
 
@@ -372,7 +348,7 @@ var DatePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
372
348
  if (open) {
373
349
  if ((0, _dateUtils.isValid)(calendarDate) && !isDateDisabled(calendarDate)) {
374
350
  updateValue(event);
375
- focusTargetInput();
351
+ focusInput();
376
352
  }
377
353
  } else {
378
354
  var _trigger$current3;
@@ -381,36 +357,13 @@ var DatePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
381
357
  }
382
358
  });
383
359
  });
384
-
385
- // Check whether the time is within the time range of the shortcut option in the toolbar.
386
- var disabledToolbarHandle = function disabledToolbarHandle(date) {
387
- var _DEPRECATED_disabledD;
388
- var allowDate = (_DEPRECATED_disabledD = DEPRECATED_disabledDate === null || DEPRECATED_disabledDate === void 0 ? void 0 : DEPRECATED_disabledDate(date)) !== null && _DEPRECATED_disabledD !== void 0 ? _DEPRECATED_disabledD : false;
389
- var allowTime = (0, _dateUtils.disabledTime)(props, date);
390
- return allowDate || allowTime;
391
- };
392
-
393
- /**
394
- * Whether "OK" button is disabled
395
- *
396
- * - If format is date, disable ok button if selected date is disabled
397
- * - If format is month, disable ok button if all dates in the month of selected date are disabled
398
- */
399
- var isOKButtonDisabled = function isOKButtonDisabled(selectedDate) {
400
- if ((0, _dateUtils.shouldRenderMonth)(formatStr) && !(0, _dateUtils.shouldRenderDate)(formatStr)) {
401
- return (0, _MonthDropdown.isEveryDateInMonth)(selectedDate.getFullYear(), selectedDate.getMonth(), disabledToolbarHandle);
402
- }
403
- return disabledToolbarHandle(selectedDate);
404
- };
405
- var calendarProps = (0, _react.useMemo)(function () {
406
- return (0, _mapValues.default)((0, _pick.default)(props, _dateUtils.calendarOnlyProps), function (disabledOrHiddenTimeFunc) {
407
- return function (next, date) {
408
- var _disabledOrHiddenTime;
409
- return (_disabledOrHiddenTime = disabledOrHiddenTimeFunc === null || disabledOrHiddenTimeFunc === void 0 ? void 0 : disabledOrHiddenTimeFunc(next, date)) !== null && _disabledOrHiddenTime !== void 0 ? _disabledOrHiddenTime : false;
410
- };
411
- });
412
- }, [props]);
413
- var _splitRanges = (0, _utils3.splitRanges)(ranges),
360
+ var calendarProps = (0, _mapValues.default)((0, _pick.default)(props, _dateUtils.calendarOnlyProps), function (func) {
361
+ return function (next, date) {
362
+ var _func;
363
+ return (_func = func === null || func === void 0 ? void 0 : func(next, date)) !== null && _func !== void 0 ? _func : false;
364
+ };
365
+ });
366
+ var _splitRanges = (0, _utils2.splitRanges)(ranges),
414
367
  sideRanges = _splitRanges.sideRanges,
415
368
  bottomRanges = _splitRanges.bottomRanges;
416
369
  var renderCalendarOverlay = function renderCalendarOverlay(positionProps, speakerRef) {
@@ -440,7 +393,7 @@ var DatePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
440
393
  ranges: sideRanges,
441
394
  calendarDate: calendarDate,
442
395
  locale: locale,
443
- disabledShortcut: disabledToolbarHandle,
396
+ disableShortcut: isDatetimeDisabled,
444
397
  onShortcutClick: handleShortcutPageDate
445
398
  }), /*#__PURE__*/_react.default.createElement(_Stack.default.Item, null, /*#__PURE__*/_react.default.createElement(_CalendarContainer.default, (0, _extends2.default)({}, calendarProps, {
446
399
  targetId: id,
@@ -460,7 +413,7 @@ var DatePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
460
413
  onMoveForward: handleMoveForward,
461
414
  onMoveBackward: handleMoveBackward,
462
415
  onSelect: handleSelect,
463
- onToggleMonthDropdown: handleToggleMonthDropdown,
416
+ onToggleMonthDropdown: toggleMonthView,
464
417
  onToggleTimeDropdown: onToggleTimeDropdown,
465
418
  onChangeMonth: handleChangeMonth,
466
419
  onChangeTime: handleChangeTime,
@@ -469,8 +422,8 @@ var DatePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
469
422
  locale: locale,
470
423
  ranges: bottomRanges,
471
424
  calendarDate: calendarDate,
472
- disabledOkBtn: isOKButtonDisabled,
473
- disabledShortcut: disabledToolbarHandle,
425
+ disableOkBtn: isOkButtonDisabled,
426
+ disableShortcut: isDatetimeDisabled,
474
427
  onShortcutClick: handleShortcutPageDate,
475
428
  onOk: handleOK,
476
429
  hideOkBtn: oneTap
@@ -499,7 +452,7 @@ var DatePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
499
452
  if (cause !== _OverlayTrigger.OverlayCloseCause.ImperativeHandle) {
500
453
  resetCalendarDate();
501
454
  }
502
- setShowMonthDropdown(false);
455
+ setMonthView(false);
503
456
  (_props$onClose = props.onClose) === null || _props$onClose === void 0 ? void 0 : _props$onClose.call(props);
504
457
  });
505
458
  var showCleanButton = cleanable && hasValue && !readOnly;
@@ -527,7 +480,7 @@ var DatePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
527
480
  value: value,
528
481
  format: formatStr,
529
482
  plaintext: plaintext
530
- }) : /*#__PURE__*/_react.default.createElement(_InputGroup.default, (0, _extends2.default)({}, (0, _omit.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys, _dateUtils.calendarOnlyProps)), {
483
+ }) : /*#__PURE__*/_react.default.createElement(_InputGroup.default, (0, _extends2.default)({}, (0, _utils2.getRestProps)(rest, usedClassNamePropKeys), {
531
484
  inside: true,
532
485
  size: size,
533
486
  onClick: handleClick
@@ -557,13 +510,9 @@ var DatePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
557
510
  }))));
558
511
  });
559
512
  DatePicker.displayName = 'DatePicker';
560
- DatePicker.propTypes = (0, _extends2.default)({}, _Picker.pickerPropTypes, {
513
+ DatePicker.propTypes = (0, _extends2.default)({}, _Picker.pickerPropTypes, _utils2.deprecatedPropTypes, {
561
514
  calendarDefaultDate: _propTypes.default.instanceOf(Date),
562
515
  defaultValue: _propTypes.default.instanceOf(Date),
563
- disabledDate: (0, _propTypes2.deprecatePropTypeNew)(_propTypes.default.func, 'Use "shouldDisableDate" property instead.'),
564
- disabledHours: (0, _propTypes2.deprecatePropTypeNew)(_propTypes.default.func, 'Use "shouldDisableHour" property instead.'),
565
- disabledMinutes: (0, _propTypes2.deprecatePropTypeNew)(_propTypes.default.func, 'Use "shouldDisableMinute" property instead.'),
566
- disabledSeconds: (0, _propTypes2.deprecatePropTypeNew)(_propTypes.default.func, 'Use "shouldDisableSecond" property instead.'),
567
516
  shouldDisableDate: _propTypes.default.func,
568
517
  shouldDisableHour: _propTypes.default.func,
569
518
  shouldDisableMinute: _propTypes.default.func,
@@ -6,7 +6,7 @@ export interface PredefinedRangesProps<T = any, Shortcut = T> extends StackProps
6
6
  ranges?: RangeType<Shortcut>[];
7
7
  calendarDate: T;
8
8
  locale: CalendarLocale;
9
- disabledShortcut?: (value: T) => boolean;
9
+ disableShortcut?: (value: T) => boolean;
10
10
  onShortcutClick?: (range: InnerRange<Shortcut>, closeOverlay: boolean, event: React.MouseEvent) => void;
11
11
  }
12
12
  declare const PredefinedRanges: React.ForwardRefExoticComponent<PredefinedRangesProps<any, any> & React.RefAttributes<HTMLDivElement>>;
@@ -14,12 +14,12 @@ var _utils = require("../utils");
14
14
  var _utils2 = require("./utils");
15
15
  var PredefinedRanges = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
16
16
  var className = props.className,
17
- disabledShortcut = props.disabledShortcut,
17
+ disableShortcut = props.disableShortcut,
18
18
  onShortcutClick = props.onShortcutClick,
19
19
  calendarDate = props.calendarDate,
20
20
  rangesProp = props.ranges,
21
21
  locale = props.locale,
22
- rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["className", "disabledShortcut", "onShortcutClick", "calendarDate", "ranges", "locale"]);
22
+ rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["className", "disableShortcut", "onShortcutClick", "calendarDate", "ranges", "locale"]);
23
23
  var _useState = (0, _react.useState)((0, _utils2.getRanges)(props)),
24
24
  ranges = _useState[0],
25
25
  setRanges = _useState[1];
@@ -47,7 +47,7 @@ var PredefinedRanges = /*#__PURE__*/_react.default.forwardRef(function (props, r
47
47
  closeOverlay = range.closeOverlay,
48
48
  label = range.label,
49
49
  rest = (0, _objectWithoutPropertiesLoose2.default)(range, ["value", "closeOverlay", "label"]);
50
- var disabled = disabledShortcut === null || disabledShortcut === void 0 ? void 0 : disabledShortcut(value);
50
+ var disabled = disableShortcut === null || disableShortcut === void 0 ? void 0 : disableShortcut(value);
51
51
  var handleClickShortcut = function handleClickShortcut(event) {
52
52
  if (disabled) {
53
53
  return;
@@ -3,7 +3,7 @@ import { PredefinedRangesProps } from './PredefinedRanges';
3
3
  export type { RangeType } from './types';
4
4
  export interface ToolbarProps<T = any, Shortcut = T> extends PredefinedRangesProps<T, Shortcut> {
5
5
  hideOkBtn?: boolean;
6
- disabledOkBtn?: (value: T) => boolean;
6
+ disableOkBtn?: (value: T) => boolean;
7
7
  onOk?: (event: React.MouseEvent) => void;
8
8
  }
9
9
  declare type ToolbarComponent = React.ForwardRefExoticComponent<ToolbarProps> & {
@@ -11,12 +11,12 @@ var _Button = _interopRequireDefault(require("../Button"));
11
11
  var _utils = require("../utils");
12
12
  var _PredefinedRanges = _interopRequireDefault(require("./PredefinedRanges"));
13
13
  var _Stack = _interopRequireDefault(require("../Stack"));
14
- var SubmitButton = function SubmitButton(_ref) {
15
- var disabledOkBtn = _ref.disabledOkBtn,
14
+ var OkButton = function OkButton(_ref) {
15
+ var disableOkBtn = _ref.disableOkBtn,
16
16
  calendarDate = _ref.calendarDate,
17
17
  onOk = _ref.onOk,
18
18
  children = _ref.children;
19
- var disabled = disabledOkBtn === null || disabledOkBtn === void 0 ? void 0 : disabledOkBtn(calendarDate);
19
+ var disabled = disableOkBtn === null || disableOkBtn === void 0 ? void 0 : disableOkBtn(calendarDate);
20
20
  return /*#__PURE__*/_react.default.createElement(_Button.default, {
21
21
  appearance: "primary",
22
22
  size: "sm",
@@ -32,15 +32,15 @@ var Toolbar = /*#__PURE__*/_react.default.forwardRef(function Toolbar(props, ref
32
32
  var className = props.className,
33
33
  _props$classPrefix = props.classPrefix,
34
34
  classPrefix = _props$classPrefix === void 0 ? 'picker-toolbar' : _props$classPrefix,
35
- disabledOkBtn = props.disabledOkBtn,
36
- disabledShortcut = props.disabledShortcut,
37
- hideOkBtn = props.hideOkBtn,
38
- onOk = props.onOk,
39
- onShortcutClick = props.onShortcutClick,
40
35
  calendarDate = props.calendarDate,
41
36
  ranges = props.ranges,
42
37
  locale = props.locale,
43
- rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["className", "classPrefix", "disabledOkBtn", "disabledShortcut", "hideOkBtn", "onOk", "onShortcutClick", "calendarDate", "ranges", "locale"]);
38
+ hideOkBtn = props.hideOkBtn,
39
+ disableOkBtn = props.disableOkBtn,
40
+ disableShortcut = props.disableShortcut,
41
+ onOk = props.onOk,
42
+ onShortcutClick = props.onShortcutClick,
43
+ rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["className", "classPrefix", "calendarDate", "ranges", "locale", "hideOkBtn", "disableOkBtn", "disableShortcut", "onOk", "onShortcutClick"]);
44
44
  var _useClassNames = (0, _utils.useClassNames)(classPrefix),
45
45
  merge = _useClassNames.merge,
46
46
  prefix = _useClassNames.prefix,
@@ -60,16 +60,17 @@ var Toolbar = /*#__PURE__*/_react.default.forwardRef(function Toolbar(props, ref
60
60
  ranges: ranges,
61
61
  calendarDate: calendarDate,
62
62
  locale: locale,
63
- disabledShortcut: disabledShortcut,
63
+ disableShortcut: disableShortcut,
64
64
  onShortcutClick: onShortcutClick,
65
65
  "data-testid": "daterange-predefined-bottom"
66
66
  }), /*#__PURE__*/_react.default.createElement("div", {
67
67
  className: prefix('right')
68
- }, !hideOkBtn && /*#__PURE__*/_react.default.createElement(SubmitButton, {
69
- disabledOkBtn: disabledOkBtn,
68
+ }, !hideOkBtn && /*#__PURE__*/_react.default.createElement(OkButton, {
69
+ disableOkBtn: disableOkBtn,
70
70
  calendarDate: calendarDate,
71
71
  onOk: onOk
72
72
  }, locale === null || locale === void 0 ? void 0 : locale.ok)));
73
73
  });
74
+ Toolbar.displayName = 'Toolbar';
74
75
  var _default = Toolbar;
75
76
  exports.default = _default;
@@ -0,0 +1,13 @@
1
+ import { RefObject } from 'react';
2
+ interface UseFocusProps {
3
+ target: RefObject<HTMLElement>;
4
+ showMonth: boolean;
5
+ id: string;
6
+ locale: any;
7
+ }
8
+ declare function useFocus(props: UseFocusProps): {
9
+ focusInput: (...args: any[]) => any;
10
+ focusSelectedDate: () => void;
11
+ onKeyFocusEvent: (...args: any[]) => any;
12
+ };
13
+ export default useFocus;
@@ -0,0 +1,96 @@
1
+ 'use client';
2
+ "use strict";
3
+
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ exports.__esModule = true;
6
+ exports.default = void 0;
7
+ var _delay = _interopRequireDefault(require("lodash/delay"));
8
+ var _addMonths = _interopRequireDefault(require("date-fns/addMonths"));
9
+ var _addDays = _interopRequireDefault(require("date-fns/addDays"));
10
+ var _useEventCallback = _interopRequireDefault(require("../../utils/useEventCallback"));
11
+ var _utils = require("../../Calendar/utils");
12
+ var _utils2 = require("../../utils");
13
+ var _utils3 = require("../../internals/Picker/utils");
14
+ function useFocus(props) {
15
+ var target = props.target,
16
+ showMonth = props.showMonth,
17
+ id = props.id,
18
+ localeProp = props.locale;
19
+ var _useCustom = (0, _utils2.useCustom)('DatePicker', localeProp),
20
+ locale = _useCustom.locale,
21
+ formatDate = _useCustom.formatDate;
22
+ /**
23
+ * Get the corresponding container based on date selection and month selection
24
+ */
25
+ var getOverlayContainer = function getOverlayContainer() {
26
+ return showMonth ? document.getElementById(id + "-calendar-month-dropdown") : document.getElementById(id + "-calendar-table");
27
+ };
28
+
29
+ /**
30
+ * Check whether the date is focusable
31
+ */
32
+ var checkFocusable = function checkFocusable(date) {
33
+ var formatStr = showMonth ? locale.formattedMonthPattern : locale.formattedDayPattern;
34
+ var ariaLabel = (0, _utils.getAriaLabel)(date, formatStr, formatDate);
35
+ var container = getOverlayContainer();
36
+ var dateElement = container === null || container === void 0 ? void 0 : container.querySelector("[aria-label=\"" + ariaLabel + "\"]");
37
+ if ((dateElement === null || dateElement === void 0 ? void 0 : dateElement.getAttribute('aria-disabled')) === 'true') {
38
+ return false;
39
+ }
40
+ return true;
41
+ };
42
+
43
+ /**
44
+ * Focus on the currently selected date element
45
+ */
46
+ var focusSelectedDate = function focusSelectedDate() {
47
+ (0, _delay.default)(function () {
48
+ var container = getOverlayContainer();
49
+ var selectedElement = container === null || container === void 0 ? void 0 : container.querySelector('[aria-selected="true"]');
50
+ selectedElement === null || selectedElement === void 0 ? void 0 : selectedElement.focus();
51
+ }, 1);
52
+ };
53
+
54
+ /**
55
+ * Focus on the input element
56
+ */
57
+ var focusInput = (0, _useEventCallback.default)(function () {
58
+ (0, _delay.default)(function () {
59
+ var _target$current;
60
+ return (_target$current = target.current) === null || _target$current === void 0 ? void 0 : _target$current.focus();
61
+ }, 1);
62
+ });
63
+ var onKeyFocusEvent = (0, _useEventCallback.default)(function (event, options) {
64
+ var date = options.date,
65
+ callback = options.callback;
66
+ var delta = 0;
67
+ var step = showMonth ? 6 : 7;
68
+ var changeDateFunc = showMonth ? _addMonths.default : _addDays.default;
69
+ (0, _utils3.onMenuKeyDown)(event, {
70
+ down: function down() {
71
+ delta = step;
72
+ },
73
+ up: function up() {
74
+ delta = -step;
75
+ },
76
+ right: function right() {
77
+ delta = 1;
78
+ },
79
+ left: function left() {
80
+ delta = -1;
81
+ }
82
+ });
83
+ var nextDate = changeDateFunc(date, delta);
84
+ if (checkFocusable(nextDate)) {
85
+ callback(nextDate);
86
+ focusSelectedDate();
87
+ }
88
+ });
89
+ return {
90
+ focusInput: focusInput,
91
+ focusSelectedDate: focusSelectedDate,
92
+ onKeyFocusEvent: onKeyFocusEvent
93
+ };
94
+ }
95
+ var _default = useFocus;
96
+ exports.default = _default;
@@ -0,0 +1,10 @@
1
+ /// <reference types="react" />
2
+ interface UseMonthViewProps {
3
+ onToggleMonthDropdown?: (toggle: boolean) => void;
4
+ }
5
+ declare function useMonthView(props: UseMonthViewProps): {
6
+ monthView: boolean;
7
+ setMonthView: import("react").Dispatch<import("react").SetStateAction<boolean>>;
8
+ toggleMonthView: (...args: any[]) => any;
9
+ };
10
+ export default useMonthView;
@@ -0,0 +1,28 @@
1
+ 'use client';
2
+ "use strict";
3
+
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ exports.__esModule = true;
6
+ exports.default = void 0;
7
+ var _react = require("react");
8
+ var _useEventCallback = _interopRequireDefault(require("../../utils/useEventCallback"));
9
+ function useMonthView(props) {
10
+ var onToggleMonthDropdown = props.onToggleMonthDropdown;
11
+ var _useState = (0, _react.useState)(false),
12
+ monthView = _useState[0],
13
+ setMonthView = _useState[1];
14
+ /**
15
+ * The callback triggered after the month selection box is opened or closed.
16
+ */
17
+ var toggleMonthView = (0, _useEventCallback.default)(function (show) {
18
+ onToggleMonthDropdown === null || onToggleMonthDropdown === void 0 ? void 0 : onToggleMonthDropdown(show);
19
+ setMonthView(show);
20
+ });
21
+ return {
22
+ monthView: monthView,
23
+ setMonthView: setMonthView,
24
+ toggleMonthView: toggleMonthView
25
+ };
26
+ }
27
+ var _default = useMonthView;
28
+ exports.default = _default;
@@ -1,3 +1,4 @@
1
1
  import DatePicker from './DatePicker';
2
- export type { DatePickerProps, RangeType } from './DatePicker';
2
+ export type { RangeType } from './types';
3
+ export type { DatePickerProps } from './DatePicker';
3
4
  export default DatePicker;