@ozen-ui/kit 0.74.0 → 0.76.0

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 (228) hide show
  1. package/StepperVertical/package.json +5 -0
  2. package/__inner__/cjs/components/Autocomplete/helper.d.ts +1 -1
  3. package/__inner__/cjs/components/Autocomplete/types.d.ts +1 -1
  4. package/__inner__/cjs/components/Calendar/Calendar.js +26 -2
  5. package/__inner__/cjs/components/Calendar/CalendarContext.d.ts +8 -1
  6. package/__inner__/cjs/components/Calendar/CalendarContext.js +10 -1
  7. package/__inner__/cjs/components/Calendar/__tests__/utils.d.ts +11 -0
  8. package/__inner__/cjs/components/Calendar/__tests__/utils.js +58 -0
  9. package/__inner__/cjs/components/Calendar/components/CalendarGrid/CalendarGrid.js +4 -3
  10. package/__inner__/cjs/components/Calendar/components/CalendarItem/CalendarItem.js +25 -2
  11. package/__inner__/cjs/components/Calendar/components/CalendarItem/CalendarItemContext.d.ts +1 -0
  12. package/__inner__/cjs/components/Calendar/components/CalendarItem/CalendarItemContext.js +1 -0
  13. package/__inner__/cjs/components/Calendar/components/CalendarModeRange/CalendarModeRange.js +68 -13
  14. package/__inner__/cjs/components/Calendar/components/CalendarModeSingle/CalendarModeSingle.js +62 -16
  15. package/__inner__/cjs/components/Calendar/components/CalendarSwitcher/CalendarSwitcher.js +6 -7
  16. package/__inner__/cjs/components/Calendar/components/CalendarSwitcher/components/CalendarSwitcherText/CalendarSwitcherText.d.ts +3 -0
  17. package/__inner__/cjs/components/Calendar/components/CalendarSwitcher/components/CalendarSwitcherText/CalendarSwitcherText.js +13 -0
  18. package/__inner__/cjs/components/Calendar/components/CalendarSwitcher/components/CalendarSwitcherText/index.d.ts +2 -0
  19. package/__inner__/cjs/components/Calendar/components/CalendarSwitcher/components/CalendarSwitcherText/index.js +5 -0
  20. package/__inner__/cjs/components/Calendar/components/CalendarSwitcher/components/CalendarSwitcherText/types.d.ts +4 -0
  21. package/__inner__/cjs/components/Calendar/components/CalendarSwitcher/components/CalendarSwitcherText/types.js +2 -0
  22. package/__inner__/cjs/components/Calendar/components/CalendarSwitcher/components/index.d.ts +1 -0
  23. package/__inner__/cjs/components/Calendar/components/CalendarSwitcher/components/index.js +4 -0
  24. package/__inner__/cjs/components/Calendar/constants.d.ts +2 -0
  25. package/__inner__/cjs/components/Calendar/constants.js +7 -1
  26. package/__inner__/cjs/components/Calendar/index.d.ts +1 -0
  27. package/__inner__/cjs/components/Calendar/index.js +1 -0
  28. package/__inner__/cjs/components/Calendar/types.d.ts +13 -5
  29. package/__inner__/cjs/components/Calendar/utils.d.ts +10 -1
  30. package/__inner__/cjs/components/Calendar/utils.js +12 -1
  31. package/__inner__/cjs/components/DataList/types.d.ts +1 -1
  32. package/__inner__/cjs/components/DatePicker/components/DateInput/DateInput.js +4 -3
  33. package/__inner__/cjs/components/DatePicker/components/DateInput/types.d.ts +6 -2
  34. package/__inner__/cjs/components/DatePicker/components/DateInput/utils/dateInputMask/dateInputMask.d.ts +2 -1
  35. package/__inner__/cjs/components/DatePicker/components/DateInput/utils/dateInputMask/dateInputMask.js +67 -7
  36. package/__inner__/cjs/components/DatePicker/components/DatePickerModeDate/DatePickerModeDate.js +32 -20
  37. package/__inner__/cjs/components/DatePicker/components/DatePickerModeDateRange/DatePickerModeDateRange.js +74 -51
  38. package/__inner__/cjs/components/DatePicker/constants.d.ts +2 -0
  39. package/__inner__/cjs/components/DatePicker/constants.js +4 -1
  40. package/__inner__/cjs/components/DatePicker/types.d.ts +10 -6
  41. package/__inner__/cjs/components/DatePicker/types.js +3 -1
  42. package/__inner__/cjs/components/DatePicker/utils/formatDateToString/formatDateToString.d.ts +2 -1
  43. package/__inner__/cjs/components/DatePicker/utils/formatDateToString/formatDateToString.js +18 -5
  44. package/__inner__/cjs/components/DatePicker/utils/formatStringToDate/formatStringToDate.d.ts +2 -1
  45. package/__inner__/cjs/components/DatePicker/utils/formatStringToDate/formatStringToDate.js +6 -5
  46. package/__inner__/cjs/components/DatePicker/utils/getCommonCalendarProps/getCommonCalendarProps.js +2 -2
  47. package/__inner__/cjs/components/DatePicker/utils/index.d.ts +2 -0
  48. package/__inner__/cjs/components/DatePicker/utils/index.js +2 -0
  49. package/__inner__/cjs/components/DatePicker/utils/isValidDateString/isValidDateString.d.ts +2 -1
  50. package/__inner__/cjs/components/DatePicker/utils/isValidDateString/isValidDateString.js +9 -8
  51. package/__inner__/cjs/components/DatePicker/utils/maskPastedDate/index.d.ts +1 -0
  52. package/__inner__/cjs/components/DatePicker/utils/maskPastedDate/index.js +4 -0
  53. package/__inner__/cjs/components/DatePicker/utils/maskPastedDate/maskPastedDate.d.ts +6 -0
  54. package/__inner__/cjs/components/DatePicker/utils/maskPastedDate/maskPastedDate.js +43 -0
  55. package/__inner__/cjs/components/DatePicker/utils/parseDateString/index.d.ts +1 -0
  56. package/__inner__/cjs/components/DatePicker/utils/parseDateString/index.js +4 -0
  57. package/__inner__/cjs/components/DatePicker/utils/parseDateString/parseDateString.d.ts +6 -0
  58. package/__inner__/cjs/components/DatePicker/utils/parseDateString/parseDateString.js +66 -0
  59. package/__inner__/cjs/components/ListCardItem/hooks/useListCardItemRatio.js +10 -14
  60. package/__inner__/cjs/components/OzenProvider/providers/theme/tokens/color/b-business-dark/color-b-business-dark.css +1 -1
  61. package/__inner__/cjs/components/OzenProvider/providers/theme/tokens/color/b-business-default/color-b-business-default.css +1 -1
  62. package/__inner__/cjs/components/OzenProvider/providers/theme/tokens/color/ozen-dark/color-ozen-dark.css +1 -1
  63. package/__inner__/cjs/components/OzenProvider/providers/theme/tokens/color/ozen-default/color-ozen-default.css +1 -1
  64. package/__inner__/cjs/components/OzenProvider/providers/theme/tokens/color/vip-dark/color-vip-dark.css +1 -1
  65. package/__inner__/cjs/components/OzenProvider/providers/theme/tokens/color/vip-default/color-vip-default.css +1 -1
  66. package/__inner__/cjs/components/OzenProvider/providers/theme/tokens/shadow/ozen-default/shadow-ozen-default.css +1 -1
  67. package/__inner__/cjs/components/Select/Select.css +10 -1
  68. package/__inner__/cjs/components/Select/Select.d.ts +0 -1
  69. package/__inner__/cjs/components/Select/Select.js +40 -10
  70. package/__inner__/cjs/components/Select/SelectContext.d.ts +21 -0
  71. package/__inner__/cjs/components/Select/SelectContext.js +29 -0
  72. package/__inner__/cjs/components/Select/classNames.d.ts +1 -0
  73. package/__inner__/cjs/components/Select/classNames.js +5 -0
  74. package/__inner__/cjs/components/Select/components/SelectInput/SelectInput.js +14 -15
  75. package/__inner__/cjs/components/Select/components/SelectInput/types.d.ts +0 -22
  76. package/__inner__/cjs/components/Select/components/SelectInputContextConsumer/SelectInputContextConsumer.js +3 -3
  77. package/__inner__/cjs/components/Select/components/SelectInputRenderRight/SelectInputRenderRight.d.ts +2 -0
  78. package/__inner__/cjs/components/Select/components/SelectInputRenderRight/SelectInputRenderRight.js +42 -0
  79. package/__inner__/cjs/components/Select/components/SelectInputRenderRight/index.d.ts +1 -0
  80. package/__inner__/cjs/components/Select/components/SelectInputRenderRight/index.js +4 -0
  81. package/__inner__/cjs/components/Select/components/index.d.ts +1 -0
  82. package/__inner__/cjs/components/Select/components/index.js +1 -0
  83. package/__inner__/cjs/components/Select/constants.d.ts +3 -0
  84. package/__inner__/cjs/components/Select/constants.js +8 -1
  85. package/__inner__/cjs/components/Select/entities/index.d.ts +2 -0
  86. package/__inner__/cjs/components/Select/entities/index.js +5 -0
  87. package/__inner__/cjs/components/Select/entities/onClear.d.ts +2 -0
  88. package/__inner__/cjs/components/Select/entities/onClear.js +2 -0
  89. package/__inner__/cjs/components/Select/entities/render.d.ts +6 -0
  90. package/__inner__/cjs/components/Select/entities/render.js +4 -0
  91. package/__inner__/cjs/components/Select/index.d.ts +1 -0
  92. package/__inner__/cjs/components/Select/index.js +1 -0
  93. package/__inner__/cjs/components/Select/types.d.ts +30 -5
  94. package/__inner__/cjs/components/Select/types.js +3 -0
  95. package/__inner__/cjs/components/Stack/Stack.css +3 -0
  96. package/__inner__/cjs/components/Stack/Stack.js +2 -1
  97. package/__inner__/cjs/components/Stack/constants.d.ts +1 -0
  98. package/__inner__/cjs/components/Stack/constants.js +2 -1
  99. package/__inner__/cjs/components/Stack/types.d.ts +4 -0
  100. package/__inner__/cjs/components/Stack/types.js +2 -1
  101. package/__inner__/cjs/hooks/useDevEffect/index.d.ts +1 -0
  102. package/__inner__/cjs/hooks/useDevEffect/index.js +4 -0
  103. package/__inner__/cjs/hooks/useDevEffect/useDevEffect.d.ts +3 -0
  104. package/__inner__/cjs/hooks/useDevEffect/useDevEffect.js +13 -0
  105. package/__inner__/cjs/hooks/useIntersectionObserver/useIntersectionObserver.js +3 -2
  106. package/__inner__/cjs/locale/locale.js +48 -3
  107. package/__inner__/cjs/utils/array/createFilled/createFilledArray.d.ts +1 -1
  108. package/__inner__/cjs/utils/array/createFilled/createFilledArray.js +6 -1
  109. package/__inner__/cjs/utils/array/generatePermutations/generatePermutations.d.ts +1 -0
  110. package/__inner__/cjs/utils/array/generatePermutations/generatePermutations.js +47 -0
  111. package/__inner__/cjs/utils/array/generatePermutations/index.d.ts +1 -0
  112. package/__inner__/cjs/utils/array/generatePermutations/index.js +4 -0
  113. package/__inner__/cjs/utils/array/index.d.ts +1 -0
  114. package/__inner__/cjs/utils/array/index.js +1 -0
  115. package/__inner__/esm/components/Autocomplete/helper.d.ts +1 -1
  116. package/__inner__/esm/components/Autocomplete/types.d.ts +1 -1
  117. package/__inner__/esm/components/Calendar/Calendar.js +27 -3
  118. package/__inner__/esm/components/Calendar/CalendarContext.d.ts +8 -1
  119. package/__inner__/esm/components/Calendar/CalendarContext.js +10 -1
  120. package/__inner__/esm/components/Calendar/__tests__/utils.d.ts +11 -0
  121. package/__inner__/esm/components/Calendar/__tests__/utils.js +45 -0
  122. package/__inner__/esm/components/Calendar/components/CalendarGrid/CalendarGrid.js +4 -3
  123. package/__inner__/esm/components/Calendar/components/CalendarItem/CalendarItem.js +25 -2
  124. package/__inner__/esm/components/Calendar/components/CalendarItem/CalendarItemContext.d.ts +1 -0
  125. package/__inner__/esm/components/Calendar/components/CalendarItem/CalendarItemContext.js +1 -0
  126. package/__inner__/esm/components/Calendar/components/CalendarModeRange/CalendarModeRange.js +70 -15
  127. package/__inner__/esm/components/Calendar/components/CalendarModeSingle/CalendarModeSingle.js +64 -18
  128. package/__inner__/esm/components/Calendar/components/CalendarSwitcher/CalendarSwitcher.js +6 -7
  129. package/__inner__/esm/components/Calendar/components/CalendarSwitcher/components/CalendarSwitcherText/CalendarSwitcherText.d.ts +3 -0
  130. package/__inner__/esm/components/Calendar/components/CalendarSwitcher/components/CalendarSwitcherText/CalendarSwitcherText.js +9 -0
  131. package/__inner__/esm/components/Calendar/components/CalendarSwitcher/components/CalendarSwitcherText/index.d.ts +2 -0
  132. package/__inner__/esm/components/Calendar/components/CalendarSwitcher/components/CalendarSwitcherText/index.js +2 -0
  133. package/__inner__/esm/components/Calendar/components/CalendarSwitcher/components/CalendarSwitcherText/types.d.ts +4 -0
  134. package/__inner__/esm/components/Calendar/components/CalendarSwitcher/components/CalendarSwitcherText/types.js +1 -0
  135. package/__inner__/esm/components/Calendar/components/CalendarSwitcher/components/index.d.ts +1 -0
  136. package/__inner__/esm/components/Calendar/components/CalendarSwitcher/components/index.js +1 -0
  137. package/__inner__/esm/components/Calendar/constants.d.ts +2 -0
  138. package/__inner__/esm/components/Calendar/constants.js +6 -0
  139. package/__inner__/esm/components/Calendar/index.d.ts +1 -0
  140. package/__inner__/esm/components/Calendar/index.js +1 -0
  141. package/__inner__/esm/components/Calendar/types.d.ts +13 -5
  142. package/__inner__/esm/components/Calendar/utils.d.ts +10 -1
  143. package/__inner__/esm/components/Calendar/utils.js +9 -0
  144. package/__inner__/esm/components/DataList/types.d.ts +1 -1
  145. package/__inner__/esm/components/DatePicker/components/DateInput/DateInput.js +3 -2
  146. package/__inner__/esm/components/DatePicker/components/DateInput/types.d.ts +6 -2
  147. package/__inner__/esm/components/DatePicker/components/DateInput/utils/dateInputMask/dateInputMask.d.ts +2 -1
  148. package/__inner__/esm/components/DatePicker/components/DateInput/utils/dateInputMask/dateInputMask.js +67 -7
  149. package/__inner__/esm/components/DatePicker/components/DatePickerModeDate/DatePickerModeDate.js +33 -21
  150. package/__inner__/esm/components/DatePicker/components/DatePickerModeDateRange/DatePickerModeDateRange.js +68 -45
  151. package/__inner__/esm/components/DatePicker/constants.d.ts +2 -0
  152. package/__inner__/esm/components/DatePicker/constants.js +3 -0
  153. package/__inner__/esm/components/DatePicker/types.d.ts +10 -6
  154. package/__inner__/esm/components/DatePicker/types.js +2 -0
  155. package/__inner__/esm/components/DatePicker/utils/formatDateToString/formatDateToString.d.ts +2 -1
  156. package/__inner__/esm/components/DatePicker/utils/formatDateToString/formatDateToString.js +18 -5
  157. package/__inner__/esm/components/DatePicker/utils/formatStringToDate/formatStringToDate.d.ts +2 -1
  158. package/__inner__/esm/components/DatePicker/utils/formatStringToDate/formatStringToDate.js +6 -5
  159. package/__inner__/esm/components/DatePicker/utils/getCommonCalendarProps/getCommonCalendarProps.js +2 -2
  160. package/__inner__/esm/components/DatePicker/utils/index.d.ts +2 -0
  161. package/__inner__/esm/components/DatePicker/utils/index.js +2 -0
  162. package/__inner__/esm/components/DatePicker/utils/isValidDateString/isValidDateString.d.ts +2 -1
  163. package/__inner__/esm/components/DatePicker/utils/isValidDateString/isValidDateString.js +8 -7
  164. package/__inner__/esm/components/DatePicker/utils/maskPastedDate/index.d.ts +1 -0
  165. package/__inner__/esm/components/DatePicker/utils/maskPastedDate/index.js +1 -0
  166. package/__inner__/esm/components/DatePicker/utils/maskPastedDate/maskPastedDate.d.ts +6 -0
  167. package/__inner__/esm/components/DatePicker/utils/maskPastedDate/maskPastedDate.js +39 -0
  168. package/__inner__/esm/components/DatePicker/utils/parseDateString/index.d.ts +1 -0
  169. package/__inner__/esm/components/DatePicker/utils/parseDateString/index.js +1 -0
  170. package/__inner__/esm/components/DatePicker/utils/parseDateString/parseDateString.d.ts +6 -0
  171. package/__inner__/esm/components/DatePicker/utils/parseDateString/parseDateString.js +62 -0
  172. package/__inner__/esm/components/ListCardItem/hooks/useListCardItemRatio.js +10 -14
  173. package/__inner__/esm/components/OzenProvider/providers/theme/tokens/color/b-business-dark/color-b-business-dark.css +1 -1
  174. package/__inner__/esm/components/OzenProvider/providers/theme/tokens/color/b-business-default/color-b-business-default.css +1 -1
  175. package/__inner__/esm/components/OzenProvider/providers/theme/tokens/color/ozen-dark/color-ozen-dark.css +1 -1
  176. package/__inner__/esm/components/OzenProvider/providers/theme/tokens/color/ozen-default/color-ozen-default.css +1 -1
  177. package/__inner__/esm/components/OzenProvider/providers/theme/tokens/color/vip-dark/color-vip-dark.css +1 -1
  178. package/__inner__/esm/components/OzenProvider/providers/theme/tokens/color/vip-default/color-vip-default.css +1 -1
  179. package/__inner__/esm/components/OzenProvider/providers/theme/tokens/shadow/ozen-default/shadow-ozen-default.css +1 -1
  180. package/__inner__/esm/components/Select/Select.css +10 -1
  181. package/__inner__/esm/components/Select/Select.d.ts +0 -1
  182. package/__inner__/esm/components/Select/Select.js +40 -10
  183. package/__inner__/esm/components/Select/SelectContext.d.ts +21 -0
  184. package/__inner__/esm/components/Select/SelectContext.js +25 -0
  185. package/__inner__/esm/components/Select/classNames.d.ts +1 -0
  186. package/__inner__/esm/components/Select/classNames.js +2 -0
  187. package/__inner__/esm/components/Select/components/SelectInput/SelectInput.js +7 -8
  188. package/__inner__/esm/components/Select/components/SelectInput/types.d.ts +0 -22
  189. package/__inner__/esm/components/Select/components/SelectInputContextConsumer/SelectInputContextConsumer.js +1 -1
  190. package/__inner__/esm/components/Select/components/SelectInputRenderRight/SelectInputRenderRight.d.ts +2 -0
  191. package/__inner__/esm/components/Select/components/SelectInputRenderRight/SelectInputRenderRight.js +38 -0
  192. package/__inner__/esm/components/Select/components/SelectInputRenderRight/index.d.ts +1 -0
  193. package/__inner__/esm/components/Select/components/SelectInputRenderRight/index.js +1 -0
  194. package/__inner__/esm/components/Select/components/index.d.ts +1 -0
  195. package/__inner__/esm/components/Select/components/index.js +1 -0
  196. package/__inner__/esm/components/Select/constants.d.ts +3 -0
  197. package/__inner__/esm/components/Select/constants.js +7 -0
  198. package/__inner__/esm/components/Select/entities/index.d.ts +2 -0
  199. package/__inner__/esm/components/Select/entities/index.js +2 -0
  200. package/__inner__/esm/components/Select/entities/onClear.d.ts +2 -0
  201. package/__inner__/esm/components/Select/entities/onClear.js +1 -0
  202. package/__inner__/esm/components/Select/entities/render.d.ts +6 -0
  203. package/__inner__/esm/components/Select/entities/render.js +1 -0
  204. package/__inner__/esm/components/Select/index.d.ts +1 -0
  205. package/__inner__/esm/components/Select/index.js +1 -0
  206. package/__inner__/esm/components/Select/types.d.ts +30 -5
  207. package/__inner__/esm/components/Select/types.js +2 -1
  208. package/__inner__/esm/components/Stack/Stack.css +3 -0
  209. package/__inner__/esm/components/Stack/Stack.js +3 -2
  210. package/__inner__/esm/components/Stack/constants.d.ts +1 -0
  211. package/__inner__/esm/components/Stack/constants.js +1 -0
  212. package/__inner__/esm/components/Stack/types.d.ts +4 -0
  213. package/__inner__/esm/components/Stack/types.js +1 -0
  214. package/__inner__/esm/hooks/useDevEffect/index.d.ts +1 -0
  215. package/__inner__/esm/hooks/useDevEffect/index.js +1 -0
  216. package/__inner__/esm/hooks/useDevEffect/useDevEffect.d.ts +3 -0
  217. package/__inner__/esm/hooks/useDevEffect/useDevEffect.js +9 -0
  218. package/__inner__/esm/hooks/useIntersectionObserver/useIntersectionObserver.js +3 -2
  219. package/__inner__/esm/locale/locale.js +48 -3
  220. package/__inner__/esm/utils/array/createFilled/createFilledArray.d.ts +1 -1
  221. package/__inner__/esm/utils/array/createFilled/createFilledArray.js +6 -1
  222. package/__inner__/esm/utils/array/generatePermutations/generatePermutations.d.ts +1 -0
  223. package/__inner__/esm/utils/array/generatePermutations/generatePermutations.js +43 -0
  224. package/__inner__/esm/utils/array/generatePermutations/index.d.ts +1 -0
  225. package/__inner__/esm/utils/array/generatePermutations/index.js +1 -0
  226. package/__inner__/esm/utils/array/index.d.ts +1 -0
  227. package/__inner__/esm/utils/array/index.js +1 -0
  228. package/package.json +4 -4
@@ -1,2 +1,3 @@
1
1
  export * from './Calendar';
2
+ export * from './constants';
2
3
  export * from './types';
@@ -2,4 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  var tslib_1 = require("tslib");
4
4
  tslib_1.__exportStar(require("./Calendar"), exports);
5
+ tslib_1.__exportStar(require("./constants"), exports);
5
6
  tslib_1.__exportStar(require("./types"), exports);
@@ -1,6 +1,6 @@
1
1
  import type { MouseEvent, ReactElement, ReactNode } from 'react';
2
2
  import type { DPExcludeConfig, DPDayInteger } from '@rehookify/datepicker';
3
- import type { ExtendableComponentPropsWithRef } from '../../types/ExtendableComponentPropsWithRef';
3
+ import type { WithRequired, ExtendableComponentPropsWithRef } from '../../types';
4
4
  import type { WithDisplayName } from '../../types/react';
5
5
  import type { CALENDAR_DEFAULT_MODE } from './constants';
6
6
  export declare const calendarStepVariant: readonly ["days", "months", "years"];
@@ -18,6 +18,7 @@ export type CalendarPropRenderAdditionalControls<MODE extends CalendarModeVarian
18
18
  date?: MODE extends 'range' ? Date[] : Date;
19
19
  }) => ReactElement;
20
20
  export type CalendarPropCalendars = 1 | 2;
21
+ export type CalendarSteps = CalendarStepVariant[];
21
22
  /**
22
23
  * @deprecated
23
24
  * Use the `CalendarPropOnChange` type to replace it.
@@ -44,6 +45,9 @@ export type CalendarExclude = CalendarPropExclude;
44
45
  * */
45
46
  export type CalendarStartDay = CalendarPropStartDay;
46
47
  export type CalendarRenderAdditionalControls<MODE extends CalendarModeVariant> = CalendarPropRenderAdditionalControls<MODE>;
48
+ export type CalendarOnMonthClick = (event: MouseEvent<HTMLElement>, date: Date) => void;
49
+ export type CalendarOnDayClick = (event: MouseEvent<HTMLElement>, date: Date) => void;
50
+ export type CalendarOnYearClick = (event: MouseEvent<HTMLElement>, date: Date) => void;
47
51
  export type CalendarProps<MODE extends CalendarModeVariant = typeof CALENDAR_DEFAULT_MODE> = ExtendableComponentPropsWithRef<{
48
52
  /** Способ выбора даты:
49
53
  * - `single` — позволяет выбрать одну дату (показывает один календарь).
@@ -75,11 +79,11 @@ export type CalendarProps<MODE extends CalendarModeVariant = typeof CALENDAR_DEF
75
79
  /** Ограничение выбора дат по большей дате */
76
80
  maxDate?: Date;
77
81
  /** Обработчик нажатия на кнопку месяца */
78
- onMonthClick?(e: MouseEvent<HTMLElement>, date: Date): void;
82
+ onMonthClick?: CalendarOnMonthClick;
79
83
  /** Обработчик нажатия на кнопку дня */
80
- onDayClick?(e: MouseEvent<HTMLElement>, date: Date): void;
84
+ onDayClick?: CalendarOnDayClick;
81
85
  /** Обработчик нажатия на кнопку года */
82
- onYearClick?(e: MouseEvent<HTMLElement>, date: Date): void;
86
+ onYearClick?: CalendarOnYearClick;
83
87
  /** Дополнительные контролы — рендер функция */
84
88
  renderAdditionalControls?: CalendarPropRenderAdditionalControls<MODE>;
85
89
  /** Функция форматирования атрибута `aria-label` для кнопок переключения периодов */
@@ -89,6 +93,10 @@ export type CalendarProps<MODE extends CalendarModeVariant = typeof CALENDAR_DEF
89
93
  /** Количество отображаемых календарей в компоненте: один или два */
90
94
  calendars?: CalendarPropCalendars;
91
95
  children?: never;
96
+ /** Шаги календаря. Определяет порядок и наличие этапов выбора. */
97
+ steps?: CalendarSteps;
98
+ /** Изначальный шаг */
99
+ initialStep?: CalendarStepVariant;
92
100
  }, 'div'>;
93
101
  export type CalendarComponent = WithDisplayName<(<MODE extends CalendarModeVariant = typeof CALENDAR_DEFAULT_MODE>(props: CalendarProps<MODE>) => ReactNode)>;
94
- export type CalendarModeComponent<MODE extends CalendarModeVariant> = WithDisplayName<(props: Omit<CalendarProps<MODE>, 'mode'>) => ReactNode>;
102
+ export type CalendarModeComponent<MODE extends CalendarModeVariant> = WithDisplayName<(props: Omit<WithRequired<CalendarProps<MODE>, 'steps' | 'initialStep'>, 'mode'>) => ReactNode>;
@@ -1,3 +1,12 @@
1
- import type { CalendarProps } from './index';
1
+ import type { CalendarProps, CalendarSteps } from './index';
2
2
  export declare const cnCalendar: import("@bem-react/classname").ClassNameFormatter;
3
3
  export declare const getPeriodSwitchAriaLabel: CalendarProps['getPeriodSwitchAriaLabel'];
4
+ export declare const calculateStepsAvailability: (steps: CalendarSteps) => {
5
+ hasDaysStep: boolean;
6
+ hasMonthsStep: boolean;
7
+ hasYearsStep: boolean;
8
+ };
9
+ export declare const calculateStepsHelpers: (steps: CalendarSteps) => {
10
+ lastStep: "days" | "months" | "years";
11
+ firstStep: "days" | "months" | "years";
12
+ };
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getPeriodSwitchAriaLabel = exports.cnCalendar = void 0;
3
+ exports.calculateStepsHelpers = exports.calculateStepsAvailability = exports.getPeriodSwitchAriaLabel = exports.cnCalendar = void 0;
4
4
  var classname_1 = require("../../utils/classname");
5
5
  exports.cnCalendar = (0, classname_1.cn)('Calendar');
6
6
  var getPeriodSwitchAriaLabel = function (step) {
@@ -13,3 +13,14 @@ var getPeriodSwitchAriaLabel = function (step) {
13
13
  return ['Previous period', 'Next period'];
14
14
  };
15
15
  exports.getPeriodSwitchAriaLabel = getPeriodSwitchAriaLabel;
16
+ var calculateStepsAvailability = function (steps) { return ({
17
+ hasDaysStep: steps.includes('days'),
18
+ hasMonthsStep: steps.includes('months'),
19
+ hasYearsStep: steps.includes('years'),
20
+ }); };
21
+ exports.calculateStepsAvailability = calculateStepsAvailability;
22
+ var calculateStepsHelpers = function (steps) { return ({
23
+ lastStep: steps[steps.length - 1],
24
+ firstStep: steps[0],
25
+ }); };
26
+ exports.calculateStepsHelpers = calculateStepsHelpers;
@@ -12,7 +12,7 @@ export type DataListPayload<MULTIPLE extends boolean> = {
12
12
  name?: string;
13
13
  value: DataListSelected<MULTIPLE>;
14
14
  };
15
- export type DataListOnSelect<MULTIPLE extends boolean> = (event: SyntheticEvent | KeyboardEvent, payload: DataListPayload<MULTIPLE>) => void;
15
+ export type DataListOnSelect<MULTIPLE extends boolean> = (event: SyntheticEvent | KeyboardEvent | MouseEvent, payload: DataListPayload<MULTIPLE>) => void;
16
16
  export type DataListBaseProps<MULTIPLE extends boolean = false> = {
17
17
  /** Имя списка */
18
18
  name?: string;
@@ -4,10 +4,11 @@ exports.DateInput = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var react_1 = tslib_1.__importStar(require("react"));
6
6
  var useMultiRef_1 = require("../../../../hooks/useMultiRef");
7
+ var utils_1 = require("../../../../utils");
7
8
  var Input_1 = require("../../../Input");
8
- var utils_1 = require("./utils");
9
+ var utils_2 = require("./utils");
9
10
  exports.DateInput = (0, react_1.forwardRef)(function (_a, ref) {
10
- var valueProp = _a.value, defaultValue = _a.defaultValue, other = tslib_1.__rest(_a, ["value", "defaultValue"]);
11
- return (react_1.default.createElement(Input_1.Input, tslib_1.__assign({ value: (0, utils_1.dateInputMask)(valueProp), defaultValue: (0, utils_1.dateInputMask)(defaultValue) }, other, { ref: (0, useMultiRef_1.useMultiRef)([ref]) })));
11
+ var valueProp = _a.value, defaultValue = _a.defaultValue, steps = _a.steps, placeholder = _a.placeholder, other = tslib_1.__rest(_a, ["value", "defaultValue", "steps", "placeholder"]);
12
+ return (react_1.default.createElement(Input_1.Input, tslib_1.__assign({ value: (0, utils_2.dateInputMask)(valueProp, steps), defaultValue: (0, utils_2.dateInputMask)(defaultValue, steps) }, other, { placeholder: (0, utils_1.isFunction)(placeholder) ? placeholder(steps) : placeholder, ref: (0, useMultiRef_1.useMultiRef)([ref]) })));
12
13
  });
13
14
  exports.DateInput.displayName = 'DateInput';
@@ -1,9 +1,13 @@
1
1
  import type { ComponentRef } from 'react';
2
- import type { ExtendableComponentPropsWithRef } from '../../../../types/ExtendableComponentPropsWithRef';
2
+ import type { ExtendableComponentPropsWithRef } from '../../../../types';
3
+ import type { CalendarSteps } from '../../../Calendar';
3
4
  import type { FIELD_CONTROL_DEFAULT_TAG } from '../../../FieldControl';
4
5
  import type { InputProps } from '../../../Input';
6
+ import type { InputPropPlaceholder } from '../../types';
5
7
  export type DateInputRef = ComponentRef<typeof FIELD_CONTROL_DEFAULT_TAG>;
6
8
  export type DateInputProps = ExtendableComponentPropsWithRef<{
9
+ steps: CalendarSteps;
7
10
  value?: string;
8
11
  defaultValue?: string;
9
- } & Omit<InputProps, 'value' | 'defaultValue'>, typeof FIELD_CONTROL_DEFAULT_TAG>;
12
+ placeholder?: InputPropPlaceholder;
13
+ } & Omit<InputProps, 'value' | 'defaultValue' | 'placeholder'>, typeof FIELD_CONTROL_DEFAULT_TAG>;
@@ -1 +1,2 @@
1
- export declare const dateInputMask: (value: string | undefined) => string | undefined;
1
+ import type { CalendarSteps } from '../../../../../Calendar';
2
+ export declare const dateInputMask: (value: string | undefined, steps: CalendarSteps) => string | undefined;
@@ -1,18 +1,78 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.dateInputMask = void 0;
4
- var dateInputMask = function (value) {
4
+ var onlyOneDot = function (value) {
5
+ // Разрешить только первую точку, остальные убрать
6
+ var firstDotIndex = value.indexOf('.');
7
+ if (firstDotIndex === -1) {
8
+ return value;
9
+ }
10
+ // Сохраняем первую часть и одну точку
11
+ var beforeDot = value.slice(0, firstDotIndex + 1);
12
+ var afterDot = value.slice(firstDotIndex + 1).replace(/\./g, '');
13
+ return beforeDot + afterDot;
14
+ };
15
+ var dateInputMask = function (value, steps) {
5
16
  if (!value) {
6
17
  return value;
7
18
  }
19
+ var hasDaysStep = steps.includes('days');
20
+ var hasMonthsStep = steps.includes('months');
21
+ var hasYearsStep = steps.includes('years');
22
+ var maxLength = 0;
8
23
  var newValue = value.replace(/[^0-9.]/g, ''); // Запрещаем ввод, кроме цифр и точек
9
24
  newValue = newValue.replace(/\.\.+/g, '..'); // Удаляем лишние точки
10
- newValue = newValue.replace(/^(\d)\.$/g, '0$1.'); // Добавляем 0 в D.
11
- newValue = newValue.replace(/^(\d\d)(\d)$/g, '$1.$2'); // Добавляем точку в DD.M
12
- newValue = newValue.replace(/^(\d\d)\.(\d)\.$/g, '$1.0$2.'); // Добавляем 0 в DD.M.
13
- newValue = newValue.replace(/^(\d\d\.\d\d)(\d)$/g, '$1.$2'); // Добавляем точку в DD.MM.Y
14
- if (newValue.length > 10)
15
- newValue = newValue.slice(0, 10); // Ограничиваем длину
25
+ // DD
26
+ if (hasDaysStep && !hasMonthsStep && !hasYearsStep) {
27
+ maxLength = 2;
28
+ newValue = newValue.replace('.', '');
29
+ }
30
+ // MM
31
+ if (!hasDaysStep && hasMonthsStep && !hasYearsStep) {
32
+ maxLength = 2;
33
+ newValue = newValue.replace('.', '');
34
+ }
35
+ // YYYY
36
+ if (!hasDaysStep && !hasMonthsStep && hasYearsStep) {
37
+ maxLength = 4;
38
+ newValue = newValue.replace('.', '');
39
+ }
40
+ // DD.MM.YYYY
41
+ if (hasDaysStep && hasMonthsStep && hasYearsStep) {
42
+ newValue = newValue.replace(/^(\d)\.$/g, '0$1.'); // Добавляем 0 в D.
43
+ newValue = newValue.replace(/^(\d\d)(\d)$/g, '$1.$2'); // Добавляем точку в DD.M
44
+ newValue = newValue.replace(/^(\d\d)\.(\d)\.$/g, '$1.0$2.'); // Добавляем 0 в DD.M.
45
+ newValue = newValue.replace(/^(\d\d\.\d\d)(\d)$/g, '$1.$2'); // Добавляем точку в DD.MM.Y
46
+ // + 2, так как одно соединение в виде "."
47
+ maxLength = 8 + 2;
48
+ }
49
+ // DD.MM
50
+ if (hasDaysStep && hasMonthsStep && !hasYearsStep) {
51
+ newValue = newValue.replace(/^(\d)\.$/g, '0$1.'); // Добавляем 0 в D.
52
+ newValue = newValue.replace(/^(\d\d)(\d)$/g, '$1.$2'); // Добавляем точку в DD.M
53
+ newValue = onlyOneDot(newValue); // Разрешаем только одну точку
54
+ // + 1, так как одно соединение в виде "."
55
+ maxLength = 4 + 1;
56
+ }
57
+ // DD.YYYY
58
+ if (hasDaysStep && !hasMonthsStep && hasYearsStep) {
59
+ newValue = newValue.replace(/^(\d)\.$/g, '0$1.'); // Добавляем 0 в D.
60
+ newValue = newValue.replace(/^(\d\d)(\d)$/g, '$1.$2'); // Добавляем точку в DD.Y
61
+ newValue = onlyOneDot(newValue);
62
+ // + 1, так как одно соединение в виде "."
63
+ maxLength = 6 + 1;
64
+ }
65
+ // MM.YYYY
66
+ if (!hasDaysStep && hasMonthsStep && hasYearsStep) {
67
+ newValue = newValue.replace(/^(\d)\.$/g, '0$1.'); // Добавляем 0 в M.
68
+ newValue = newValue.replace(/^(\d\d)(\d)$/g, '$1.$2'); // Добавляем точку в MM.Y
69
+ newValue = onlyOneDot(newValue);
70
+ // + 1, так как одно соединение в виде "."
71
+ maxLength = 6 + 1;
72
+ }
73
+ if (newValue.length > maxLength) {
74
+ newValue = newValue.slice(0, maxLength); // Ограничиваем длину
75
+ }
16
76
  return newValue;
17
77
  };
18
78
  exports.dateInputMask = dateInputMask;
@@ -5,44 +5,47 @@ var tslib_1 = require("tslib");
5
5
  var react_1 = tslib_1.__importStar(require("react"));
6
6
  var useControlled_1 = require("../../../../hooks/useControlled");
7
7
  var useMultiRef_1 = require("../../../../hooks/useMultiRef");
8
+ var useStoredValue_1 = require("../../../../hooks/useStoredValue");
8
9
  var isKeys_1 = require("../../../../utils/isKeys");
9
10
  var Calendar_1 = require("../../../Calendar");
10
11
  var Popover_1 = require("../../../Popover");
12
+ var constants_1 = require("../../constants");
11
13
  var index_1 = require("../../index");
12
14
  var utils_1 = require("../../utils");
13
15
  var index_2 = require("../index");
14
16
  exports.DatePickerModeDate = (0, react_1.forwardRef)(function (props, ref) {
15
- var size = props.size, valueProp = props.value, label = props.label, defaultValue = props.defaultValue, openProp = props.open, onCloseProp = props.onClose, onOpenProp = props.onOpen, onInputChange = props.onInputChange, clearText = props.clearText, defaultOpen = props.defaultOpen, disabled = props.disabled, minDate = props.minDate, maxDate = props.maxDate, exclude = props.exclude, inputProps = props.inputProps, renderRight = props.renderRight, className = props.className, _a = props.calendars, calendars = _a === void 0 ? 1 : _a, disableClearButton = props.disableClearButton, onChange = props.onChange, onKeyDown = props.onKeyDown, autoFocus = props.autoFocus, disableCloseOnSelect = props.disableCloseOnSelect, popoverPropsProp = props.popoverProps, calendarPropsProp = props.calendarProps, onError = props.onError, other = tslib_1.__rest(props, ["size", "value", "label", "defaultValue", "open", "onClose", "onOpen", "onInputChange", "clearText", "defaultOpen", "disabled", "minDate", "maxDate", "exclude", "inputProps", "renderRight", "className", "calendars", "disableClearButton", "onChange", "onKeyDown", "autoFocus", "disableCloseOnSelect", "popoverProps", "calendarProps", "onError"]);
17
+ var size = props.size, valueProp = props.value, label = props.label, defaultValue = props.defaultValue, openProp = props.open, onCloseProp = props.onClose, onOpenProp = props.onOpen, onInputChange = props.onInputChange, clearText = props.clearText, defaultOpen = props.defaultOpen, disabled = props.disabled, minDate = props.minDate, maxDate = props.maxDate, exclude = props.exclude, inputProps = props.inputProps, renderRight = props.renderRight, className = props.className, _a = props.calendars, calendars = _a === void 0 ? 1 : _a, disableClearButton = props.disableClearButton, onChange = props.onChange, onKeyDown = props.onKeyDown, autoFocus = props.autoFocus, disableCloseOnSelect = props.disableCloseOnSelect, popoverPropsProp = props.popoverProps, calendarPropsProp = props.calendarProps, onError = props.onError, _b = props.steps, steps = _b === void 0 ? constants_1.DATE_PICKER_DEFAULT_STEPS : _b, _c = props.initialStep, initialStep = _c === void 0 ? constants_1.DATE_PICKER_DEFAULT_INITIAL_STEP : _c, other = tslib_1.__rest(props, ["size", "value", "label", "defaultValue", "open", "onClose", "onOpen", "onInputChange", "clearText", "defaultOpen", "disabled", "minDate", "maxDate", "exclude", "inputProps", "renderRight", "className", "calendars", "disableClearButton", "onChange", "onKeyDown", "autoFocus", "disableCloseOnSelect", "popoverProps", "calendarProps", "onError", "steps", "initialStep"]);
16
18
  var anchorRef = (0, react_1.useRef)(null);
17
19
  var calendarInnerRef = (0, react_1.useRef)(null);
18
20
  var calendarRef = (0, useMultiRef_1.useMultiRef)([calendarInnerRef, calendarPropsProp === null || calendarPropsProp === void 0 ? void 0 : calendarPropsProp.ref]);
19
21
  var lastValidDate = (0, react_1.useRef)('');
20
- var _b = tslib_1.__read((0, react_1.useState)(null), 2), offsetDate = _b[0], setOffsetDate = _b[1];
21
- var _c = tslib_1.__read((0, useControlled_1.useControlled)({
22
+ var _d = tslib_1.__read((0, react_1.useState)(null), 2), offsetDate = _d[0], setOffsetDate = _d[1];
23
+ var isWasPaste = (0, useStoredValue_1.useStoredValue)(false);
24
+ var _e = tslib_1.__read((0, useControlled_1.useControlled)({
22
25
  value: undefined,
23
26
  defaultValue: '',
24
27
  name: 'DatePicker',
25
28
  state: 'inputValue',
26
- }), 2), inputValue = _c[0], setInputValue = _c[1];
27
- var _d = tslib_1.__read((0, useControlled_1.useControlled)({
29
+ }), 2), inputValue = _e[0], setInputValue = _e[1];
30
+ var _f = tslib_1.__read((0, useControlled_1.useControlled)({
28
31
  value: openProp,
29
32
  defaultValue: defaultOpen,
30
33
  name: 'DatePicker',
31
34
  state: 'open',
32
- }), 2), open = _d[0], setOpen = _d[1];
33
- var _e = tslib_1.__read((0, useControlled_1.useControlled)({
35
+ }), 2), open = _f[0], setOpen = _f[1];
36
+ var _g = tslib_1.__read((0, useControlled_1.useControlled)({
34
37
  value: valueProp,
35
38
  defaultValue: defaultValue,
36
39
  name: 'DatePicker',
37
40
  state: 'value',
38
- }), 2), value = _e[0], setValue = _e[1];
41
+ }), 2), value = _g[0], setValue = _g[1];
39
42
  var popoverProps = (0, utils_1.getCommonPopoverProps)(tslib_1.__assign(tslib_1.__assign({}, props), { popoverProps: popoverPropsProp }));
40
43
  var calendarProps = (0, utils_1.getCommonCalendarProps)(tslib_1.__assign(tslib_1.__assign({}, props), { calendarProps: calendarPropsProp, ref: calendarRef }));
41
44
  var onOffsetDateChange = function (date) {
42
45
  setOffsetDate(date);
43
46
  };
44
47
  var callOnChange = function (value) {
45
- var formattedDate = (0, utils_1.formatStringToDate)(value);
48
+ var formattedDate = (0, utils_1.formatStringToDate)(value, steps);
46
49
  setValue(formattedDate);
47
50
  onChange === null || onChange === void 0 ? void 0 : onChange(formattedDate);
48
51
  lastValidDate.current = value;
@@ -50,9 +53,9 @@ exports.DatePickerModeDate = (0, react_1.forwardRef)(function (props, ref) {
50
53
  var changeInputValue = function (e, value) {
51
54
  setInputValue(value);
52
55
  onInputChange === null || onInputChange === void 0 ? void 0 : onInputChange(e, value);
53
- if ((0, utils_1.isValidDateString)(value)) {
56
+ if ((0, utils_1.isValidDateString)(value, steps)) {
54
57
  callOnChange(value);
55
- onOffsetDateChange((0, utils_1.formatStringToDate)(value));
58
+ onOffsetDateChange((0, utils_1.formatStringToDate)(value, steps));
56
59
  }
57
60
  };
58
61
  var handleExited = function () {
@@ -74,7 +77,7 @@ exports.DatePickerModeDate = (0, react_1.forwardRef)(function (props, ref) {
74
77
  }, [autoFocus]);
75
78
  /** Эффект — синхронизируем значение текстового поля со значением в списке */
76
79
  (0, react_1.useEffect)(function () {
77
- var formattedDate = (0, utils_1.formatDateToString)(value);
80
+ var formattedDate = (0, utils_1.formatDateToString)(value, steps);
78
81
  if (formattedDate !== inputValue) {
79
82
  setInputValue(formattedDate);
80
83
  onInputChange === null || onInputChange === void 0 ? void 0 : onInputChange(null, formattedDate);
@@ -130,7 +133,7 @@ exports.DatePickerModeDate = (0, react_1.forwardRef)(function (props, ref) {
130
133
  (_a = inputProps === null || inputProps === void 0 ? void 0 : inputProps.onBlur) === null || _a === void 0 ? void 0 : _a.call(inputProps, e);
131
134
  if (!inputValue)
132
135
  return;
133
- if (!(0, utils_1.isValidDateString)(inputValue))
136
+ if (!(0, utils_1.isValidDateString)(inputValue, steps))
134
137
  changeInputValue(null, lastValidDate.current);
135
138
  };
136
139
  /** Очистка поля */
@@ -138,22 +141,31 @@ exports.DatePickerModeDate = (0, react_1.forwardRef)(function (props, ref) {
138
141
  changeInputValue(null, '');
139
142
  };
140
143
  /** Событие ввода значения в текстовом поле */
141
- var handleChangeInput = function (e) {
144
+ var handleChangeInput = function (event) {
145
+ var _a;
146
+ var value = event.target.value.trim();
147
+ var preparedValue = isWasPaste.current
148
+ ? (0, utils_1.maskPastedDate)(value, steps)
149
+ : value;
150
+ changeInputValue(event, preparedValue);
151
+ (_a = inputProps === null || inputProps === void 0 ? void 0 : inputProps.onChange) === null || _a === void 0 ? void 0 : _a.call(inputProps, event);
152
+ isWasPaste.current = false;
153
+ };
154
+ var handlePasteInput = function (event) {
142
155
  var _a;
143
- var value = e.target.value;
144
- changeInputValue(e, value);
145
- (_a = inputProps === null || inputProps === void 0 ? void 0 : inputProps.onChange) === null || _a === void 0 ? void 0 : _a.call(inputProps, e);
156
+ isWasPaste.current = true;
157
+ (_a = inputProps === null || inputProps === void 0 ? void 0 : inputProps.onPaste) === null || _a === void 0 ? void 0 : _a.call(inputProps, event);
146
158
  };
147
159
  /** Событие выбора значения из календаря */
148
160
  var handleChangeCalendar = function (date) {
149
- var formattedDate = (0, utils_1.formatDateToString)(date);
161
+ var formattedDate = (0, utils_1.formatDateToString)(date, steps);
150
162
  changeInputValue(null, formattedDate);
151
163
  if (!disableCloseOnSelect)
152
164
  handleClose();
153
165
  };
154
166
  return (react_1.default.createElement(react_1.default.Fragment, null,
155
- react_1.default.createElement(index_2.DateInput, tslib_1.__assign({ size: size, disabled: disabled, label: label }, other, { className: (0, index_1.cnDatePicker)({ mode: 'date' }, className), renderRight: react_1.default.createElement(index_2.DatePickerRenderRight, { size: size, open: open, onClear: handleClear, clearText: clearText, hasValue: !!value, renderRight: renderRight, disableClearButton: disableClearButton }), value: inputValue, inputProps: tslib_1.__assign(tslib_1.__assign({ autoComplete: 'off' }, inputProps), { onBlur: handleBlur, onClick: handleClickOnInput, onChange: handleChangeInput }), bodyProps: { ref: anchorRef, 'aria-expanded': open }, onKeyDown: handleKeyDown, ref: ref })),
167
+ react_1.default.createElement(index_2.DateInput, tslib_1.__assign({ size: size, disabled: disabled, label: label }, other, { steps: steps, className: (0, index_1.cnDatePicker)({ mode: 'date' }, className), renderRight: react_1.default.createElement(index_2.DatePickerRenderRight, { size: size, open: open, onClear: handleClear, clearText: clearText, hasValue: !!value, renderRight: renderRight, disableClearButton: disableClearButton }), value: inputValue, inputProps: tslib_1.__assign(tslib_1.__assign({ autoComplete: 'off' }, inputProps), { onBlur: handleBlur, onClick: handleClickOnInput, onChange: handleChangeInput, onPaste: handlePasteInput }), bodyProps: { ref: anchorRef, 'aria-expanded': open }, onKeyDown: handleKeyDown, ref: ref })),
156
168
  react_1.default.createElement(Popover_1.Popover, tslib_1.__assign({ open: open, anchorRef: anchorRef, onClose: handleClose }, popoverProps, { disableEnforceFocus: !enableEnforceFocus, onExited: handleExited }),
157
- react_1.default.createElement(Calendar_1.Calendar, tslib_1.__assign({ calendars: calendars }, calendarProps, { mode: "single", value: value || null, offsetDate: offsetDate, onOffsetDateChange: onOffsetDateChange, onChange: handleChangeCalendar })))));
169
+ react_1.default.createElement(Calendar_1.Calendar, tslib_1.__assign({ calendars: calendars }, calendarProps, { steps: steps, initialStep: initialStep, mode: "single", value: value || null, offsetDate: offsetDate, onOffsetDateChange: onOffsetDateChange, onChange: handleChangeCalendar })))));
158
170
  });
159
171
  exports.DatePickerModeDate.displayName = 'DatePickerModeDate';