@elliemae/ds-controlled-form 2.4.1-rc.5 → 2.4.1-rc.9

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 (200) hide show
  1. package/cjs/date-time-picker/ControlledDateTimePickerCTX.js +1 -114
  2. package/cjs/date-time-picker/ControlledDateTimePickerDatatestid.js +0 -2
  3. package/cjs/date-time-picker/config/useChangeHandlers.js +264 -0
  4. package/cjs/date-time-picker/config/useControlledDateTimePicker.js +37 -420
  5. package/cjs/date-time-picker/config/useGetDestructuredValues.js +25 -68
  6. package/cjs/date-time-picker/config/useGetFlags.js +173 -0
  7. package/cjs/date-time-picker/config/useGetPropsBasedOnType.js +101 -0
  8. package/cjs/date-time-picker/config/useGetPropsWithDefault.js +2 -3
  9. package/cjs/date-time-picker/config/useGetReferences.js +86 -0
  10. package/cjs/date-time-picker/config/useGlobalKeyHandlers.js +106 -0
  11. package/cjs/date-time-picker/config/useRelevantValueFromProps.js +39 -0
  12. package/cjs/date-time-picker/config/useValidateProps.js +47 -42
  13. package/cjs/date-time-picker/parts/ClearButton/ClearButton.js +20 -8
  14. package/cjs/date-time-picker/parts/ControlledDateTimePickerContent.js +14 -12
  15. package/cjs/date-time-picker/parts/DateInputs/useDateInputs.js +5 -5
  16. package/cjs/date-time-picker/parts/Pickers/Calendar/Calendar.js +11 -13
  17. package/cjs/date-time-picker/parts/Pickers/Calendar/CalendarContent.js +4 -1
  18. package/cjs/date-time-picker/parts/Pickers/Calendar/CalendarContext.js +1 -49
  19. package/cjs/date-time-picker/parts/Pickers/Calendar/CalendarDaysList.js +4 -4
  20. package/cjs/date-time-picker/parts/Pickers/Calendar/CalendarHead.js +10 -7
  21. package/cjs/date-time-picker/parts/Pickers/Calendar/CalendarIconTrigger.js +8 -4
  22. package/cjs/date-time-picker/parts/Pickers/Calendar/CalendarMonthDays.js +5 -2
  23. package/cjs/date-time-picker/parts/Pickers/Calendar/CalendarWrapper.js +5 -2
  24. package/cjs/date-time-picker/parts/Pickers/Calendar/Day.js +18 -18
  25. package/cjs/date-time-picker/parts/Pickers/Calendar/useConfigCalendarCTX.js +24 -122
  26. package/cjs/date-time-picker/parts/Pickers/Calendar/useCurrentDisplayedMonthYearLogic.js +32 -4
  27. package/cjs/date-time-picker/parts/Pickers/Calendar/useFocusLogic.js +10 -6
  28. package/cjs/date-time-picker/parts/Pickers/Calendar/useKeyboardHandlers.js +30 -14
  29. package/cjs/date-time-picker/parts/Pickers/Calendar/usePopperTriggerLogic.js +7 -4
  30. package/cjs/date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheel.js +7 -3
  31. package/cjs/date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelContext.js +1 -16
  32. package/cjs/date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelIconTrigger.js +0 -1
  33. package/cjs/date-time-picker/parts/Pickers/CalendarWithTimeWheel/useConfigCalendarWithTimeWheelCTX.js +10 -10
  34. package/cjs/date-time-picker/parts/Pickers/TimeWheel/HoursList.js +18 -13
  35. package/cjs/date-time-picker/parts/Pickers/TimeWheel/MeridiemList.js +60 -33
  36. package/cjs/date-time-picker/parts/Pickers/TimeWheel/MinutesList.js +18 -13
  37. package/cjs/date-time-picker/parts/Pickers/TimeWheel/TimeWheel.js +11 -13
  38. package/cjs/date-time-picker/parts/Pickers/TimeWheel/TimeWheelContent.js +5 -2
  39. package/cjs/date-time-picker/parts/Pickers/TimeWheel/TimeWheelContext.js +1 -65
  40. package/cjs/date-time-picker/parts/Pickers/TimeWheel/TimeWheelIconTrigger.js +8 -3
  41. package/cjs/date-time-picker/parts/Pickers/TimeWheel/TimeWheelWrapper.js +5 -2
  42. package/cjs/date-time-picker/parts/Pickers/TimeWheel/useConfigTimePickerCTX.js +18 -116
  43. package/cjs/date-time-picker/parts/Pickers/TimeWheel/useCurrentDisplayedWheelsLogic.js +52 -94
  44. package/cjs/date-time-picker/parts/Pickers/TimeWheel/useKeyboardHandlers.js +4 -1
  45. package/cjs/date-time-picker/parts/Pickers/TimeWheel/usePopperTriggerLogic.js +1 -1
  46. package/cjs/date-time-picker/parts/TimeInputs/HHInput.js +1 -3
  47. package/cjs/date-time-picker/parts/TimeInputs/MeridiemInput.js +1 -1
  48. package/cjs/date-time-picker/parts/TimeInputs/TimeInputs.js +3 -7
  49. package/cjs/date-time-picker/parts/TimeInputs/useTimeInputs.js +3 -6
  50. package/cjs/date-time-picker/propTypes.js +56 -23
  51. package/cjs/date-time-picker/sharedTypes.js +2 -0
  52. package/cjs/date-time-picker/utils/dateHelpers.js +56 -56
  53. package/cjs/date-time-picker/utils/hooks/useGetMonthYearFromDateStringOrEmptyStartingMonth.js +2 -5
  54. package/cjs/date-time-picker/utils/hooks/useGetStartingFocusedDay.js +50 -47
  55. package/cjs/date-time-picker/utils/hooks/useOnClickOutside.js +1 -2
  56. package/cjs/date-time-picker/utils/stringHelpers.js +8 -14
  57. package/cjs/date-time-picker/utils/typeGuards.js +14 -0
  58. package/cjs/index.js +4 -0
  59. package/cjs/mask-hook/hooks/index.js +4 -0
  60. package/cjs/mask-hook/hooks/useNumberMask.js +2 -0
  61. package/cjs/mask-hook/hooks/usePhoneMask.js +2 -0
  62. package/cjs/mask-hook/hooks/useRegExpMask.js +122 -0
  63. package/cjs/mask-hook/hooks/useSSNMask.js +2 -0
  64. package/cjs/mask-hook/hooks/useZipCodeMask.js +2 -0
  65. package/cjs/mask-hook/index.js +4 -0
  66. package/cjs/mask-hook/react-desc-prop-types.js +9 -0
  67. package/cjs/mask-hook/utils/addSpecialCharacters.js +3 -4
  68. package/cjs/mask-hook/utils/flatStringArray.js +18 -0
  69. package/cjs/mask-hook/utils/index.js +2 -0
  70. package/esm/date-time-picker/ControlledDateTimePickerCTX.js +3 -115
  71. package/esm/date-time-picker/ControlledDateTimePickerDatatestid.js +0 -2
  72. package/esm/date-time-picker/config/useChangeHandlers.js +256 -0
  73. package/esm/date-time-picker/config/useControlledDateTimePicker.js +38 -421
  74. package/esm/date-time-picker/config/useGetDestructuredValues.js +21 -68
  75. package/esm/date-time-picker/config/useGetFlags.js +165 -0
  76. package/esm/date-time-picker/config/useGetPropsBasedOnType.js +97 -0
  77. package/esm/date-time-picker/config/useGetPropsWithDefault.js +1 -2
  78. package/esm/date-time-picker/config/useGetReferences.js +82 -0
  79. package/esm/date-time-picker/config/useGlobalKeyHandlers.js +98 -0
  80. package/esm/date-time-picker/config/useRelevantValueFromProps.js +35 -0
  81. package/esm/date-time-picker/config/useValidateProps.js +47 -42
  82. package/esm/date-time-picker/parts/ClearButton/ClearButton.js +20 -9
  83. package/esm/date-time-picker/parts/ControlledDateTimePickerContent.js +14 -12
  84. package/esm/date-time-picker/parts/DateInputs/useDateInputs.js +5 -5
  85. package/esm/date-time-picker/parts/Pickers/Calendar/Calendar.js +11 -13
  86. package/esm/date-time-picker/parts/Pickers/Calendar/CalendarContent.js +4 -1
  87. package/esm/date-time-picker/parts/Pickers/Calendar/CalendarContext.js +2 -50
  88. package/esm/date-time-picker/parts/Pickers/Calendar/CalendarDaysList.js +4 -4
  89. package/esm/date-time-picker/parts/Pickers/Calendar/CalendarHead.js +10 -7
  90. package/esm/date-time-picker/parts/Pickers/Calendar/CalendarIconTrigger.js +9 -5
  91. package/esm/date-time-picker/parts/Pickers/Calendar/CalendarMonthDays.js +5 -2
  92. package/esm/date-time-picker/parts/Pickers/Calendar/CalendarWrapper.js +5 -2
  93. package/esm/date-time-picker/parts/Pickers/Calendar/Day.js +18 -18
  94. package/esm/date-time-picker/parts/Pickers/Calendar/useConfigCalendarCTX.js +23 -125
  95. package/esm/date-time-picker/parts/Pickers/Calendar/useCurrentDisplayedMonthYearLogic.js +33 -5
  96. package/esm/date-time-picker/parts/Pickers/Calendar/useFocusLogic.js +10 -6
  97. package/esm/date-time-picker/parts/Pickers/Calendar/useKeyboardHandlers.js +30 -14
  98. package/esm/date-time-picker/parts/Pickers/Calendar/usePopperTriggerLogic.js +7 -4
  99. package/esm/date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheel.js +9 -5
  100. package/esm/date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelContext.js +1 -16
  101. package/esm/date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelIconTrigger.js +1 -2
  102. package/esm/date-time-picker/parts/Pickers/CalendarWithTimeWheel/useConfigCalendarWithTimeWheelCTX.js +10 -10
  103. package/esm/date-time-picker/parts/Pickers/TimeWheel/HoursList.js +18 -13
  104. package/esm/date-time-picker/parts/Pickers/TimeWheel/MeridiemList.js +59 -33
  105. package/esm/date-time-picker/parts/Pickers/TimeWheel/MinutesList.js +18 -13
  106. package/esm/date-time-picker/parts/Pickers/TimeWheel/TimeWheel.js +11 -13
  107. package/esm/date-time-picker/parts/Pickers/TimeWheel/TimeWheelContent.js +5 -2
  108. package/esm/date-time-picker/parts/Pickers/TimeWheel/TimeWheelContext.js +2 -66
  109. package/esm/date-time-picker/parts/Pickers/TimeWheel/TimeWheelIconTrigger.js +8 -3
  110. package/esm/date-time-picker/parts/Pickers/TimeWheel/TimeWheelWrapper.js +5 -2
  111. package/esm/date-time-picker/parts/Pickers/TimeWheel/useConfigTimePickerCTX.js +15 -117
  112. package/esm/date-time-picker/parts/Pickers/TimeWheel/useCurrentDisplayedWheelsLogic.js +54 -96
  113. package/esm/date-time-picker/parts/Pickers/TimeWheel/useKeyboardHandlers.js +4 -1
  114. package/esm/date-time-picker/parts/Pickers/TimeWheel/usePopperTriggerLogic.js +1 -1
  115. package/esm/date-time-picker/parts/TimeInputs/HHInput.js +1 -3
  116. package/esm/date-time-picker/parts/TimeInputs/MeridiemInput.js +1 -1
  117. package/esm/date-time-picker/parts/TimeInputs/TimeInputs.js +3 -7
  118. package/esm/date-time-picker/parts/TimeInputs/useTimeInputs.js +3 -6
  119. package/esm/date-time-picker/propTypes.js +49 -17
  120. package/esm/date-time-picker/sharedTypes.js +1 -0
  121. package/esm/date-time-picker/utils/dateHelpers.js +57 -57
  122. package/esm/date-time-picker/utils/hooks/useGetMonthYearFromDateStringOrEmptyStartingMonth.js +2 -5
  123. package/esm/date-time-picker/utils/hooks/useGetStartingFocusedDay.js +46 -47
  124. package/esm/date-time-picker/utils/hooks/useOnClickOutside.js +1 -2
  125. package/esm/date-time-picker/utils/stringHelpers.js +8 -14
  126. package/esm/date-time-picker/utils/typeGuards.js +8 -0
  127. package/esm/index.js +1 -0
  128. package/esm/mask-hook/hooks/index.js +1 -0
  129. package/esm/mask-hook/hooks/useNumberMask.js +2 -0
  130. package/esm/mask-hook/hooks/usePhoneMask.js +2 -0
  131. package/esm/mask-hook/hooks/useRegExpMask.js +116 -0
  132. package/esm/mask-hook/hooks/useSSNMask.js +2 -0
  133. package/esm/mask-hook/hooks/useZipCodeMask.js +2 -0
  134. package/esm/mask-hook/index.js +1 -0
  135. package/esm/mask-hook/react-desc-prop-types.js +8 -1
  136. package/esm/mask-hook/utils/addSpecialCharacters.js +3 -4
  137. package/esm/mask-hook/utils/flatStringArray.js +14 -0
  138. package/esm/mask-hook/utils/index.js +1 -0
  139. package/package.json +55 -15
  140. package/types/date-time-picker/ControlledDateTimePicker.d.ts +25 -80
  141. package/types/date-time-picker/ControlledDateTimePickerCTX.d.ts +1 -2
  142. package/types/date-time-picker/ControlledDateTimePickerDatatestid.d.ts +46 -46
  143. package/types/date-time-picker/ControlledDateTimePickerTypes.d.ts +15 -15
  144. package/types/date-time-picker/config/useChangeHandlers.d.ts +25 -0
  145. package/types/date-time-picker/config/useControlledDateTimePicker.d.ts +18 -2
  146. package/types/date-time-picker/config/useGetDestructuredValues.d.ts +30 -4
  147. package/types/date-time-picker/config/useGetFlags.d.ts +27 -0
  148. package/types/date-time-picker/config/useGetPropsBasedOnType.d.ts +28 -0
  149. package/types/date-time-picker/config/useGetPropsWithDefault.d.ts +2 -2
  150. package/types/date-time-picker/config/useGetReferences.d.ts +39 -0
  151. package/types/date-time-picker/config/useGlobalKeyHandlers.d.ts +16 -0
  152. package/types/date-time-picker/config/useRelevantValueFromProps.d.ts +10 -0
  153. package/types/date-time-picker/config/useValidateProps.d.ts +2 -2
  154. package/types/date-time-picker/parts/ClearButton/useClearButton.d.ts +6 -6
  155. package/types/date-time-picker/parts/DateInputs/DDInput.d.ts +6 -6
  156. package/types/date-time-picker/parts/DateInputs/MMInput.d.ts +6 -6
  157. package/types/date-time-picker/parts/DateInputs/YYYYInput.d.ts +6 -6
  158. package/types/date-time-picker/parts/DateInputs/useDateInputs.d.ts +2 -2
  159. package/types/date-time-picker/parts/Pickers/Calendar/Calendar.d.ts +4 -2
  160. package/types/date-time-picker/parts/Pickers/Calendar/CalendarContext.d.ts +3 -63
  161. package/types/date-time-picker/parts/Pickers/Calendar/CalendarDaysList.d.ts +4 -4
  162. package/types/date-time-picker/parts/Pickers/Calendar/CalendarFooter.d.ts +2 -2
  163. package/types/date-time-picker/parts/Pickers/Calendar/Day.d.ts +2 -2
  164. package/types/date-time-picker/parts/Pickers/Calendar/useCurrentDisplayedMonthYearLogic.d.ts +15 -2
  165. package/types/date-time-picker/parts/Pickers/Calendar/useFocusLogic.d.ts +12 -5
  166. package/types/date-time-picker/parts/Pickers/Calendar/useKeyboardHandlers.d.ts +17 -11
  167. package/types/date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelContext.d.ts +1 -16
  168. package/types/date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelFooter.d.ts +2 -2
  169. package/types/date-time-picker/parts/Pickers/CalendarWithTimeWheel/useConfigCalendarWithTimeWheelCTX.d.ts +15 -1
  170. package/types/date-time-picker/parts/Pickers/TimeWheel/TimeWheel.d.ts +4 -2
  171. package/types/date-time-picker/parts/Pickers/TimeWheel/TimeWheelContext.d.ts +3 -62
  172. package/types/date-time-picker/parts/Pickers/TimeWheel/TimeWheelFooter.d.ts +2 -2
  173. package/types/date-time-picker/parts/Pickers/TimeWheel/useConfigTimePickerCTX.d.ts +4 -1
  174. package/types/date-time-picker/parts/Pickers/TimeWheel/useCurrentDisplayedWheelsLogic.d.ts +16 -5
  175. package/types/date-time-picker/parts/Pickers/TimeWheel/useKeyboardHandlers.d.ts +18 -3
  176. package/types/date-time-picker/parts/TimeInputs/HHInput.d.ts +6 -6
  177. package/types/date-time-picker/parts/TimeInputs/MeridiemInput.d.ts +6 -6
  178. package/types/date-time-picker/parts/TimeInputs/MinutesInput.d.ts +6 -6
  179. package/types/date-time-picker/parts/TimeInputs/useTimeInputs.d.ts +22 -2
  180. package/types/date-time-picker/parts/config.d.ts +3 -3
  181. package/types/date-time-picker/sharedTypes.d.ts +94 -0
  182. package/types/date-time-picker/utils/constants.d.ts +33 -33
  183. package/types/date-time-picker/utils/dateHelpers.d.ts +15 -14
  184. package/types/date-time-picker/utils/dateTimeHelpers.d.ts +3 -3
  185. package/types/date-time-picker/utils/hooks/useGetDayFromDateString.d.ts +1 -1
  186. package/types/date-time-picker/utils/hooks/useGetMonthYearFromDateStringOrEmptyStartingMonth.d.ts +2 -2
  187. package/types/date-time-picker/utils/hooks/useGetStartingFocusedDay.d.ts +6 -6
  188. package/types/date-time-picker/utils/hooks/useOnClickOutside.d.ts +1 -1
  189. package/types/date-time-picker/utils/timeHelpers.d.ts +2 -2
  190. package/types/date-time-picker/utils/typeGuards.d.ts +4 -0
  191. package/types/mask-hook/hooks/index.d.ts +1 -0
  192. package/types/mask-hook/hooks/useRegExpMask.d.ts +4 -0
  193. package/types/mask-hook/react-desc-prop-types.d.ts +6 -1
  194. package/types/mask-hook/tests/useRegExpMask.test.d.ts +1 -0
  195. package/types/mask-hook/utils/flatStringArray.d.ts +1 -0
  196. package/types/mask-hook/utils/index.d.ts +1 -0
  197. package/types/date-time-picker/parts/Pickers/Calendar/useConfigCalendarCTX.d.ts +0 -2
  198. package/types/date-time-picker/parts/Pickers/Calendar/usePopperTriggerLogic.d.ts +0 -12
  199. package/types/date-time-picker/parts/Pickers/TimeWheel/usePopperTriggerLogic.d.ts +0 -2
  200. package/types/date-time-picker/propTypes.d.ts +0 -81
@@ -1,2 +1,18 @@
1
- import type { DateTimePickerPropsT, ControlledDateTimePickerContextT } from '../index.d';
2
- export declare const useControlledDateTimePicker: (props: Partial<DateTimePickerPropsT>) => ControlledDateTimePickerContextT;
1
+ import React from 'react';
2
+ import { useGetFlags } from './useGetFlags';
3
+ import { useGetReferences } from './useGetReferences';
4
+ import { useRelevantValueFromProps } from './useRelevantValueFromProps';
5
+ import { useGetPropsBasedOnType } from './useGetPropsBasedOnType';
6
+ import { useGetDestructuredValues } from './useGetDestructuredValues';
7
+ import { useChangeHandlers } from './useChangeHandlers';
8
+ import { useGlobalKeyHandlers } from './useGlobalKeyHandlers';
9
+ import type { DSControlledDateTimePickerT } from '../propTypes';
10
+ export declare type LatestInteractionRegion = 'calendar-days' | 'calendar-head' | 'timewheel' | 'date-inputs' | 'time-inputs' | 'clear-btn' | '';
11
+ export declare type ControlledDateTimePickerContextT = ReturnType<typeof useGetFlags> & ReturnType<typeof useGetReferences> & ReturnType<typeof useGetPropsBasedOnType> & ReturnType<typeof useRelevantValueFromProps> & ReturnType<typeof useGetDestructuredValues> & ReturnType<typeof useChangeHandlers> & ReturnType<typeof useGlobalKeyHandlers> & {
12
+ props: DSControlledDateTimePickerT.InternalProps;
13
+ ariaCurrentValueForInputs: string;
14
+ dataAttrs: Record<string, string>;
15
+ latestInteractionRegion: LatestInteractionRegion;
16
+ setLatestInteractionRegion: React.Dispatch<React.SetStateAction<LatestInteractionRegion>>;
17
+ };
18
+ export declare const useControlledDateTimePicker: (props: DSControlledDateTimePickerT.Props) => ControlledDateTimePickerContextT;
@@ -1,4 +1,30 @@
1
- import type { useGetDestructuredDateValuesAT, useGetDestructuredDateValuesRT, useGetDestructuredTimeValuesAT, useGetDestructuredTimeValuesRT, useGetDestructuredValuesAT, useGetDestructuredValuesRT } from '../index.d';
2
- export declare const useGetDestructuredDateValues: ({ date, dateTime, isDateTimeSelector, }: useGetDestructuredDateValuesAT) => useGetDestructuredDateValuesRT;
3
- export declare const useGetDestructuredTimeValues: ({ time, dateTime, isDateTimeSelector, }: useGetDestructuredTimeValuesAT) => useGetDestructuredTimeValuesRT;
4
- export declare const useGetDestructuredValues: ({ date, time, dateTime, isDateTimeSelector, }: useGetDestructuredValuesAT) => useGetDestructuredValuesRT;
1
+ import { useGetFlags } from './useGetFlags';
2
+ import { useGetPropsBasedOnType } from './useGetPropsBasedOnType';
3
+ declare type UseGetDestructuredDateValues = (config: ReturnType<typeof useGetPropsBasedOnType> & ReturnType<typeof useGetFlags>) => {
4
+ month: string;
5
+ day: string;
6
+ year: string;
7
+ monthNum: number;
8
+ dayNum: number;
9
+ yearNum: number;
10
+ announcedMonth: string;
11
+ announcedDay: string;
12
+ announcedYear: string;
13
+ announcedDateValues: string;
14
+ };
15
+ export declare const useGetDestructuredDateValues: UseGetDestructuredDateValues;
16
+ declare type UseGetDestructuredTimeValues = (config: ReturnType<typeof useGetPropsBasedOnType> & ReturnType<typeof useGetFlags>) => {
17
+ hours: string;
18
+ minutes: string;
19
+ meridiem: string;
20
+ hoursNum: number;
21
+ minutesNum: number;
22
+ announcedHours: string;
23
+ announcedMinutes: string;
24
+ announcedMeridiem: string;
25
+ announcedTimeValues: string;
26
+ };
27
+ export declare const useGetDestructuredTimeValues: UseGetDestructuredTimeValues;
28
+ declare type UseGetDestructuredValues = (config: ReturnType<typeof useGetPropsBasedOnType> & ReturnType<typeof useGetFlags>) => ReturnType<typeof useGetDestructuredDateValues> & ReturnType<typeof useGetDestructuredTimeValues>;
29
+ export declare const useGetDestructuredValues: UseGetDestructuredValues;
30
+ export {};
@@ -0,0 +1,27 @@
1
+ import type { DSControlledDateTimePickerT } from '../propTypes';
2
+ export declare const useGetFlags: (props: DSControlledDateTimePickerT.InternalProps) => {
3
+ hideDatePicker: boolean;
4
+ hideTimePicker: boolean;
5
+ isDateSelector: boolean;
6
+ isTimeSelector: boolean;
7
+ isDateTimeSelector: boolean;
8
+ isWithDateInputsOnly: boolean;
9
+ isWithTimeInputsOnly: boolean;
10
+ autoFocusHourInput: boolean;
11
+ autoFocusHourTimeWheel: boolean;
12
+ hideDate: boolean;
13
+ hideTime: boolean;
14
+ hideDateTimePicker: boolean;
15
+ isControllerOnly: boolean;
16
+ isWithTimeWheelToo: boolean;
17
+ isWithCalendarToo: boolean;
18
+ withAnyInputs: boolean;
19
+ withAnyPicker: boolean;
20
+ withClearBtn: boolean;
21
+ isWithDateInputs: boolean;
22
+ isWithTimeInputs: boolean;
23
+ autoFocusMonthInput: boolean;
24
+ autoFocusPrevMonthArrow: boolean;
25
+ shouldPreserveClearableSpace: boolean;
26
+ withAnyRightController: boolean;
27
+ };
@@ -0,0 +1,28 @@
1
+ import type { DSControlledDateTimePickerT } from '../propTypes';
2
+ export declare const useGetPropsBasedOnType: (propsWithDefaults: DSControlledDateTimePickerT.InternalProps) => {
3
+ getIsDisabledDay: any;
4
+ getIsOutOfRangeDay: any;
5
+ getIsStartRangeDay: any;
6
+ getIsDayInRange: any;
7
+ getIsEndRangeDay: any;
8
+ appOnDateChange: DSControlledDateTimePickerT.OnDateChange;
9
+ appOnMonthChange: DSControlledDateTimePickerT.OnInternalInputsChange;
10
+ appOnDayChange: DSControlledDateTimePickerT.OnInternalInputsChange;
11
+ appOnYearChange: DSControlledDateTimePickerT.OnInternalInputsChange;
12
+ appDate: string;
13
+ getIsDisabledTime: any;
14
+ appOnTimeChange: DSControlledDateTimePickerT.OnTimeChange;
15
+ appOnHourChange: DSControlledDateTimePickerT.OnInternalInputsChange;
16
+ appOnMinuteChange: DSControlledDateTimePickerT.OnInternalInputsChange;
17
+ appOnMeridiemChange: DSControlledDateTimePickerT.OnInternalInputsChange;
18
+ appTime: string;
19
+ appDateTime: string;
20
+ appOnDateTimeChange: DSControlledDateTimePickerT.OnDateTimeChange;
21
+ emptyPickerStartingMonth: string;
22
+ onCalendarOpenFocusedDay: string | undefined;
23
+ minutesInterval: number;
24
+ onTimeWheelOpenStartingTime: string;
25
+ isDate: boolean;
26
+ isTime: boolean;
27
+ isDateTime: boolean;
28
+ };
@@ -1,2 +1,2 @@
1
- import { PropsWithDefaultsT } from '../index.d';
2
- export declare const useGetDatePickerWithDefaultsProps: (props: Partial<PropsWithDefaultsT>) => PropsWithDefaultsT;
1
+ import { DSControlledDateTimePickerT } from '../propTypes';
2
+ export declare const useGetDatePickerWithDefaultsProps: (props: DSControlledDateTimePickerT.Props) => DSControlledDateTimePickerT.InternalProps;
@@ -0,0 +1,39 @@
1
+ /// <reference types="react" />
2
+ import { useGetFlags } from './useGetFlags';
3
+ export declare const useGetReferences: ({ isWithDateInputs, isWithTimeInputs, withAnyPicker, withClearBtn, }: ReturnType<typeof useGetFlags>) => {
4
+ monthInputRef: import("react").RefObject<HTMLInputElement>;
5
+ dayInputRef: import("react").RefObject<HTMLInputElement>;
6
+ yearInputRef: import("react").RefObject<HTMLInputElement>;
7
+ hourInputRef: import("react").RefObject<HTMLInputElement>;
8
+ minutesInputRef: import("react").RefObject<HTMLInputElement>;
9
+ meridiemInputRef: import("react").RefObject<HTMLInputElement>;
10
+ clearButtonRef: import("react").RefObject<HTMLButtonElement>;
11
+ pickerButtonRef: import("react").RefObject<HTMLButtonElement>;
12
+ prevYearBtnRef: import("react").RefObject<HTMLButtonElement>;
13
+ prevMonthBtnRef: import("react").RefObject<HTMLButtonElement>;
14
+ nextMonthBtnRef: import("react").RefObject<HTMLButtonElement>;
15
+ nextYearBtnRef: import("react").RefObject<HTMLButtonElement>;
16
+ calendarDaysWrapperRef: import("react").RefObject<HTMLDivElement>;
17
+ prevHourBtnRef: import("react").RefObject<HTMLButtonElement>;
18
+ currHourBtnRef: import("react").RefObject<HTMLButtonElement>;
19
+ nextHourBtnRef: import("react").RefObject<HTMLButtonElement>;
20
+ prevMinutesBtnRef: import("react").RefObject<HTMLButtonElement>;
21
+ currMinutesBtnRef: import("react").RefObject<HTMLButtonElement>;
22
+ nextMinutesBtnRef: import("react").RefObject<HTMLButtonElement>;
23
+ prevMeridiemBtnRef: import("react").RefObject<HTMLButtonElement>;
24
+ currMeridiemBtnRef: import("react").RefObject<HTMLButtonElement>;
25
+ nextMeridiemBtnRef: import("react").RefObject<HTMLButtonElement>;
26
+ firstSegmentRef: import("react").RefObject<HTMLInputElement | HTMLButtonElement>;
27
+ lastSegmentRef: import("react").RefObject<HTMLInputElement | HTMLButtonElement>;
28
+ firstFragmentRefUpdateDeps: {
29
+ isWithDateInputs: boolean;
30
+ isWithTimeInputs: boolean;
31
+ withAnyPicker: boolean;
32
+ };
33
+ lastFragmentRefUpdateDeps: {
34
+ withAnyPicker: boolean;
35
+ withClearBtn: boolean;
36
+ isWithTimeInputs: boolean;
37
+ isWithDateInputs: boolean;
38
+ };
39
+ };
@@ -0,0 +1,16 @@
1
+ import { useChangeHandlers } from './useChangeHandlers';
2
+ import { useGetPropsBasedOnType } from './useGetPropsBasedOnType';
3
+ import { useGetReferences } from './useGetReferences';
4
+ import { useGetFlags } from './useGetFlags';
5
+ import type { DSControlledDateTimePickerT } from '../propTypes';
6
+ interface Config {
7
+ propsBasedOnType: ReturnType<typeof useGetPropsBasedOnType>;
8
+ changeHandlers: ReturnType<typeof useChangeHandlers>;
9
+ DOMRefs: ReturnType<typeof useGetReferences>;
10
+ flags: ReturnType<typeof useGetFlags>;
11
+ }
12
+ export declare const useGlobalKeyHandlers: ({ propsBasedOnType, changeHandlers, DOMRefs, flags }: Config) => {
13
+ onFillWithCurrentDateKeys: (e: React.KeyboardEvent<HTMLInputElement | HTMLButtonElement>, metaInfo?: Partial<DSControlledDateTimePickerT.InternalInputsChangeMetaInfo>) => void;
14
+ onGlobalKeyDown: (e: React.KeyboardEvent<HTMLInputElement | HTMLButtonElement>) => void;
15
+ };
16
+ export {};
@@ -0,0 +1,10 @@
1
+ /// <reference types="react" />
2
+ import type { DSControlledDateTimePickerT } from '../propTypes';
3
+ export declare const useRelevantValueFromProps: (props: DSControlledDateTimePickerT.InternalProps) => {
4
+ dateStringFromProps: string;
5
+ timeStringFromProps: string;
6
+ tempDateString: string;
7
+ setTempDateString: import("react").Dispatch<import("react").SetStateAction<string>>;
8
+ tempTimeString: string;
9
+ setTimeString: import("react").Dispatch<import("react").SetStateAction<string>>;
10
+ };
@@ -1,2 +1,2 @@
1
- import { PropsWithDefaultsT } from '../index.d';
2
- export declare const useValidateProps: (props: Partial<PropsWithDefaultsT>) => void;
1
+ import { DSControlledDateTimePickerT } from '../propTypes';
2
+ export declare const useValidateProps: (props: DSControlledDateTimePickerT.Props) => void;
@@ -1,11 +1,11 @@
1
1
  /// <reference types="react" />
2
- import type { onClearClickT, onKeyDownT } from '../../index.d';
3
- interface useOnClearClickRT {
4
- onClearClick: onClearClickT;
5
- onClearButtonKeyDown: onKeyDownT<HTMLButtonElement>;
6
- clearButtonRef: React.MutableRefObject<HTMLButtonElement>;
2
+ import type { DSControlledDateTimePickerInternalsT } from '../../sharedTypes';
3
+ interface UseOnClearClickR {
4
+ onClearClick: DSControlledDateTimePickerInternalsT.OnDSBtnClick;
5
+ onClearButtonKeyDown: DSControlledDateTimePickerInternalsT.OnKeyDown<HTMLButtonElement>;
6
+ clearButtonRef: React.MutableRefObject<HTMLButtonElement | null>;
7
7
  withAnyPicker: boolean;
8
8
  withClearBtn: boolean;
9
9
  }
10
- export declare const useClearButton: () => useOnClearClickRT;
10
+ export declare const useClearButton: () => UseOnClearClickR;
11
11
  export {};
@@ -1,15 +1,15 @@
1
1
  import React from 'react';
2
- import type { onChangeFuncT, onBlurFuncT, onFocusFuncT, onKeyDownT } from '../../index.d';
2
+ import type { DSControlledDateTimePickerInternalsT } from '../../sharedTypes';
3
3
  interface DDInputsPropsT {
4
- onChange: onChangeFuncT;
5
- onBlur: onBlurFuncT;
6
- onFocus: onFocusFuncT;
7
- onKeyDown: onKeyDownT;
4
+ onChange: DSControlledDateTimePickerInternalsT.OnChangeFunc;
5
+ onBlur: DSControlledDateTimePickerInternalsT.OnBlurFunc;
6
+ onFocus: DSControlledDateTimePickerInternalsT.OnFocusFunc;
7
+ onKeyDown: DSControlledDateTimePickerInternalsT.OnKeyDown;
8
8
  value: string;
9
9
  disabled: boolean;
10
10
  placeholder: string;
11
11
  ariaCurrentValueForInputs: string;
12
- contextRef: React.RefObject<HTMLInputElement>;
12
+ contextRef: React.MutableRefObject<HTMLInputElement | null>;
13
13
  }
14
14
  export declare const DDInput: React.MemoExoticComponent<({ onChange, onBlur, onFocus, onKeyDown, value, disabled, contextRef, placeholder, ariaCurrentValueForInputs, }: DDInputsPropsT) => JSX.Element>;
15
15
  export {};
@@ -1,14 +1,14 @@
1
1
  import React from 'react';
2
- import type { onChangeFuncT, onBlurFuncT, onFocusFuncT, onKeyDownT } from '../../index.d';
2
+ import type { DSControlledDateTimePickerInternalsT } from '../../sharedTypes';
3
3
  interface MMInputsPropsT {
4
- onChange: onChangeFuncT;
5
- onBlur: onBlurFuncT;
6
- onFocus: onFocusFuncT;
7
- onKeyDown: onKeyDownT;
4
+ onChange: DSControlledDateTimePickerInternalsT.OnChangeFunc;
5
+ onBlur: DSControlledDateTimePickerInternalsT.OnBlurFunc;
6
+ onFocus: DSControlledDateTimePickerInternalsT.OnFocusFunc;
7
+ onKeyDown: DSControlledDateTimePickerInternalsT.OnKeyDown;
8
8
  autoFocusMonthInput: boolean;
9
9
  value: string;
10
10
  disabled: boolean;
11
- contextRef: React.RefObject<HTMLInputElement>;
11
+ contextRef: React.MutableRefObject<HTMLInputElement | null>;
12
12
  placeholder: string;
13
13
  ariaCurrentValueForInputs: string;
14
14
  }
@@ -1,13 +1,13 @@
1
1
  import React from 'react';
2
- import type { onChangeFuncT, onBlurFuncT, onFocusFuncT, onKeyDownT } from '../../index.d';
2
+ import type { DSControlledDateTimePickerInternalsT } from '../../sharedTypes';
3
3
  interface YYYYInputsPropsT {
4
- onChange: onChangeFuncT;
5
- onBlur: onBlurFuncT;
6
- onFocus: onFocusFuncT;
7
- onKeyDown: onKeyDownT;
4
+ onChange: DSControlledDateTimePickerInternalsT.OnChangeFunc;
5
+ onBlur: DSControlledDateTimePickerInternalsT.OnBlurFunc;
6
+ onFocus: DSControlledDateTimePickerInternalsT.OnFocusFunc;
7
+ onKeyDown: DSControlledDateTimePickerInternalsT.OnKeyDown;
8
8
  value: string;
9
9
  disabled: boolean;
10
- contextRef: React.RefObject<HTMLInputElement>;
10
+ contextRef: React.MutableRefObject<HTMLInputElement | null>;
11
11
  placeholder: string;
12
12
  ariaCurrentValueForInputs: string;
13
13
  }
@@ -1,2 +1,2 @@
1
- import type { useDateInputsRT } from '../../index.d';
2
- export declare const useDateInputs: () => useDateInputsRT;
1
+ import type { DSControlledDateTimePickerInternalsT } from '../../sharedTypes';
2
+ export declare const useDateInputs: () => DSControlledDateTimePickerInternalsT.UseDateInputsR;
@@ -1,3 +1,5 @@
1
- import React from 'react';
2
- export declare const WrapWithCalendarContext: (Component: React.ComponentType) => () => JSX.Element;
1
+ /// <reference types="react" />
2
+ export declare const WrappedCalendarContext: ({ children }: {
3
+ children: JSX.Element;
4
+ }) => JSX.Element;
3
5
  export declare const Calendar: () => JSX.Element;
@@ -1,66 +1,6 @@
1
- import React from 'react';
2
- import type { DateMonth, metaMonthDayT, onFocusFuncT } from '../../../index.d';
3
- export declare type handleDayOnKeyDownT = (e: React.KeyboardEvent, day: metaMonthDayT) => void;
4
- export interface KeyboardHandlersT {
5
- handleDayOnKeyDown: handleDayOnKeyDownT;
6
- handlePrevYearKeyDown: (e: React.KeyboardEvent) => void;
7
- handlePrevMonthKeyDown: (e: React.KeyboardEvent) => void;
8
- handleNextMonthKeyDown: (e: React.KeyboardEvent) => void;
9
- handleNextYearKeyDown: (e: React.KeyboardEvent) => void;
10
- handlePickerIconKeyDown: (e: React.KeyboardEvent<HTMLButtonElement>) => void;
11
- }
12
- export interface FocusLogicT {
13
- focusedDay?: metaMonthDayT;
14
- tryToFocusCurrentlyDataIsFocusedDay: () => void;
15
- resetFocusedDayToStartDate: () => void;
16
- handleFocusMetaDay: (metaDayToFocus: metaMonthDayT) => void;
17
- handleFocusMetaDayByDay: (day: Date) => void;
18
- }
19
- export interface HeaderButtonsRefsT {
20
- prevYearBtnRef: React.RefObject<HTMLButtonElement>;
21
- prevMonthBtnRef: React.RefObject<HTMLButtonElement>;
22
- nextMonthBtnRef: React.RefObject<HTMLButtonElement>;
23
- nextYearBtnRef: React.RefObject<HTMLButtonElement>;
24
- calendarDaysWrapperRef: React.RefObject<HTMLDivElement>;
25
- }
26
- export interface PopperTriggerLogicT {
27
- closeCalendar: () => void;
28
- setPopperElement: React.Dispatch<React.SetStateAction<HTMLDivElement>>;
29
- setArrowElement: React.Dispatch<React.SetStateAction<HTMLDivElement>>;
30
- usePopperHelpers?: {
31
- attributes: Record<string, unknown>;
32
- styles: Record<string, React.CSSProperties>;
33
- };
34
- handleToggleCalendar: (e?: React.MouseEvent<HTMLButtonElement>) => void;
35
- handleSetTriggerRef: (instance: HTMLButtonElement) => void;
36
- handleMenuWrapperKeyDown: (e?: React.KeyboardEvent<HTMLElement>) => void;
37
- }
38
- export interface useCurrentDisplayedMonthYearLogicT {
39
- currentMonth?: DateMonth;
40
- currentYear?: number;
41
- daysArray: metaMonthDayT[];
42
- invisibleFirstDay?: metaMonthDayT;
43
- daysMatrixByWeekday?: metaMonthDayT[][];
44
- invisibleLastDay?: metaMonthDayT;
45
- handlePrevMonth: () => void;
46
- handlePrevYear: () => void;
47
- handleNextMonth: () => void;
48
- handleNextYear: () => void;
49
- }
50
- export interface CalendarContextT extends KeyboardHandlersT, HeaderButtonsRefsT, FocusLogicT, PopperTriggerLogicT, useCurrentDisplayedMonthYearLogicT {
51
- ariaCurrentValueForInputs: string;
52
- showCalendar: boolean;
53
- setShowCalendar: React.Dispatch<React.SetStateAction<boolean>>;
54
- isControllerOnly: boolean;
55
- isWithTimeWheelToo: boolean;
56
- autoFocusPrevMonthArrow: boolean;
57
- disabled: boolean;
58
- onPrevYearFocus: onFocusFuncT;
59
- onPrevMonthFocus: onFocusFuncT;
60
- onNextMonthFocus: onFocusFuncT;
61
- onNextYearFocus: onFocusFuncT;
62
- }
1
+ /// <reference types="react" />
2
+ import type { CalendarContextT } from './useConfigCalendarCTX';
63
3
  export declare const defaultCalendarContext: CalendarContextT;
64
4
  /** Context for cross component communication */
65
- export declare const CalendarContext: React.Context<CalendarContextT>;
5
+ export declare const CalendarContext: import("react").Context<CalendarContextT>;
66
6
  export default CalendarContext;
@@ -1,9 +1,9 @@
1
1
  import React from 'react';
2
- import type { metaMonthDayT } from '../../../index.d';
2
+ import type { DSControlledDateTimePickerInternalsT } from '../../../sharedTypes';
3
3
  export declare const CalendarDaysList: React.MemoExoticComponent<({ invisibleFirstDay, daysMatrixByWeekday, invisibleLastDay, innerRef }: CalendarDaysListPropsT) => JSX.Element>;
4
4
  export interface CalendarDaysListPropsT {
5
- invisibleFirstDay: metaMonthDayT;
6
- daysMatrixByWeekday: metaMonthDayT[][];
7
- invisibleLastDay: metaMonthDayT;
5
+ invisibleFirstDay?: DSControlledDateTimePickerInternalsT.MetaMonthDay;
6
+ daysMatrixByWeekday: DSControlledDateTimePickerInternalsT.MetaMonthDay[][];
7
+ invisibleLastDay?: DSControlledDateTimePickerInternalsT.MetaMonthDay;
8
8
  innerRef: React.RefObject<HTMLDivElement>;
9
9
  }
@@ -1,2 +1,2 @@
1
- /// <reference types="react" />
2
- export declare const CalendarFooter: () => JSX.Element;
1
+ import React from 'react';
2
+ export declare const CalendarFooter: React.ComponentType;
@@ -1,7 +1,7 @@
1
1
  /// <reference types="react" />
2
- import type { metaMonthDayT } from '../../../index.d';
2
+ import type { DSControlledDateTimePickerInternalsT } from '../../../sharedTypes';
3
3
  interface CalendarDayPropsT {
4
- metaDay: metaMonthDayT;
4
+ metaDay: DSControlledDateTimePickerInternalsT.MetaMonthDay;
5
5
  colIndex?: number;
6
6
  isInvisible?: boolean;
7
7
  }
@@ -1,2 +1,15 @@
1
- import type { useCurrentDisplayedMonthYearLogicT } from './CalendarContext';
2
- export declare const useCurrentDisplayedMonthYearLogic: () => useCurrentDisplayedMonthYearLogicT;
1
+ import type { DSControlledDateTimePickerInternalsT } from '../../../sharedTypes';
2
+ interface UseCurrentDisplayedMonthYearLogicT {
3
+ currentMonth: DSControlledDateTimePickerInternalsT.DateMonth;
4
+ currentYear: number;
5
+ daysArray: DSControlledDateTimePickerInternalsT.MetaMonthDay[];
6
+ invisibleFirstDay?: DSControlledDateTimePickerInternalsT.MetaMonthDay;
7
+ daysMatrixByWeekday: DSControlledDateTimePickerInternalsT.MetaMonthDay[][];
8
+ invisibleLastDay?: DSControlledDateTimePickerInternalsT.MetaMonthDay;
9
+ handlePrevMonth: () => void;
10
+ handlePrevYear: () => void;
11
+ handleNextMonth: () => void;
12
+ handleNextYear: () => void;
13
+ }
14
+ export declare const useCurrentDisplayedMonthYearLogic: () => UseCurrentDisplayedMonthYearLogicT;
15
+ export {};
@@ -1,8 +1,15 @@
1
- import type { metaMonthDayT } from '../../../index.d';
2
- import type { FocusLogicT } from './CalendarContext';
3
- interface useFocusLogicArgsT {
4
- daysArray: metaMonthDayT[];
1
+ import { useCurrentDisplayedMonthYearLogic } from './useCurrentDisplayedMonthYearLogic';
2
+ import type { DSControlledDateTimePickerInternalsT } from '../../../sharedTypes';
3
+ interface UseFocusLogicArgsT {
4
+ currentDisplayedMonthLogic: ReturnType<typeof useCurrentDisplayedMonthYearLogic>;
5
5
  showCalendar: boolean;
6
6
  }
7
- export declare const useFocusLogic: ({ daysArray, showCalendar }: useFocusLogicArgsT) => FocusLogicT;
7
+ interface FocusLogicT {
8
+ focusedDay?: DSControlledDateTimePickerInternalsT.MetaMonthDay;
9
+ tryToFocusCurrentlyDataIsFocusedDay: () => void;
10
+ resetFocusedDayToStartDate: () => void;
11
+ handleFocusMetaDay: (metaDayToFocus: DSControlledDateTimePickerInternalsT.MetaMonthDay) => void;
12
+ handleFocusMetaDayByDay: (day: Date) => void;
13
+ }
14
+ export declare const useFocusLogic: ({ currentDisplayedMonthLogic, showCalendar }: UseFocusLogicArgsT) => FocusLogicT;
8
15
  export {};
@@ -1,13 +1,19 @@
1
- import type { metaMonthDayT } from '../../../index.d';
2
- import type { KeyboardHandlersT, HeaderButtonsRefsT } from './CalendarContext';
3
- interface useKeyboardHandlersArgsT extends Partial<HeaderButtonsRefsT> {
4
- focusedDay: metaMonthDayT;
5
- daysArray: metaMonthDayT[];
6
- handlePrevMonth: () => void;
7
- handleNextMonth: () => void;
8
- handleFocusMetaDay: (metaDayToFocus: metaMonthDayT) => void;
9
- handleFocusMetaDayByDay: (dayToFocus: Date) => void;
10
- tryToFocusCurrentlyDataIsFocusedDay: () => void;
1
+ /// <reference types="react" />
2
+ import type { DSControlledDateTimePickerInternalsT } from '../../../sharedTypes';
3
+ import { useFocusLogic } from './useFocusLogic';
4
+ import { useCurrentDisplayedMonthYearLogic } from './useCurrentDisplayedMonthYearLogic';
5
+ interface UseKeyboardHandlersArgsT {
6
+ currentDisplayedMonthLogic: ReturnType<typeof useCurrentDisplayedMonthYearLogic>;
7
+ focusLogic: ReturnType<typeof useFocusLogic>;
11
8
  }
12
- export declare const useKeyboardHandlers: ({ focusedDay, daysArray, handlePrevMonth, handleNextMonth, handleFocusMetaDay, handleFocusMetaDayByDay, tryToFocusCurrentlyDataIsFocusedDay, }: useKeyboardHandlersArgsT) => KeyboardHandlersT;
9
+ declare type HandleDayOnKeyDownT = (e: React.KeyboardEvent, day: DSControlledDateTimePickerInternalsT.MetaMonthDay) => void;
10
+ interface KeyboardHandlersT {
11
+ handleDayOnKeyDown: HandleDayOnKeyDownT;
12
+ handlePrevYearKeyDown: (e: React.KeyboardEvent) => void;
13
+ handlePrevMonthKeyDown: (e: React.KeyboardEvent) => void;
14
+ handleNextMonthKeyDown: (e: React.KeyboardEvent) => void;
15
+ handleNextYearKeyDown: (e: React.KeyboardEvent) => void;
16
+ handlePickerIconKeyDown: (e: React.KeyboardEvent<HTMLButtonElement>) => void;
17
+ }
18
+ export declare const useKeyboardHandlers: ({ currentDisplayedMonthLogic, focusLogic, }: UseKeyboardHandlersArgsT) => KeyboardHandlersT;
13
19
  export {};
@@ -1,20 +1,5 @@
1
1
  /// <reference types="react" />
2
- export interface CalendarWithTimeWheelContextT {
3
- ariaCurrentValueForInputs: string;
4
- showCalendarWithTimeWheel: boolean;
5
- setPopperElement: (instance: HTMLDivElement) => void;
6
- setArrowElement: (instance: HTMLDivElement) => void;
7
- usePopperHelpers: {
8
- attributes: Record<string, unknown>;
9
- styles: Record<string, React.CSSProperties>;
10
- };
11
- handleToggleCalendarWithTimeWheel: (e: React.MouseEvent<HTMLButtonElement>) => void;
12
- handleSetTriggerRef: (instance: HTMLButtonElement) => void;
13
- handleMenuWrapperKeyDown: (e?: React.KeyboardEvent<HTMLElement>) => void;
14
- handlePickerIconKeyDown: (e?: React.KeyboardEvent<HTMLButtonElement>) => void;
15
- isControllerOnly: boolean;
16
- disabled: boolean;
17
- }
2
+ import type { CalendarWithTimeWheelContextT } from './useConfigCalendarWithTimeWheelCTX';
18
3
  export declare const defaultCalendarWithTimeWheelContext: CalendarWithTimeWheelContextT;
19
4
  /** Context for cross component communication */
20
5
  export declare const CalendarWithTimeWheelContext: import("react").Context<CalendarWithTimeWheelContextT>;
@@ -1,2 +1,2 @@
1
- /// <reference types="react" />
2
- export declare const CalendarWithTimeWheelFooter: () => JSX.Element;
1
+ import React from 'react';
2
+ export declare const CalendarWithTimeWheelFooter: React.ComponentType;
@@ -1,2 +1,16 @@
1
- import type { CalendarWithTimeWheelContextT } from './CalendarWithTimeWheelContext';
1
+ import React from 'react';
2
+ import { usePopper } from 'react-popper';
3
+ export interface CalendarWithTimeWheelContextT {
4
+ ariaCurrentValueForInputs: string;
5
+ showCalendarWithTimeWheel: boolean;
6
+ setPopperElement: (instance: HTMLDivElement) => void;
7
+ setArrowElement: (instance: HTMLDivElement) => void;
8
+ usePopperHelpers: ReturnType<typeof usePopper>;
9
+ handleToggleCalendarWithTimeWheel: (e: React.MouseEvent<HTMLButtonElement>) => void;
10
+ handleSetTriggerRef: (instance: HTMLButtonElement) => void;
11
+ handleMenuWrapperKeyDown: (e: React.KeyboardEvent<HTMLElement>) => void;
12
+ handlePickerIconKeyDown: (e: React.KeyboardEvent<HTMLButtonElement>) => void;
13
+ isControllerOnly: boolean;
14
+ disabled: boolean;
15
+ }
2
16
  export declare const useConfigCalendarWithTimeWheelCTX: () => CalendarWithTimeWheelContextT;
@@ -1,3 +1,5 @@
1
- import React from 'react';
2
- export declare const WrapWithTimeWheelContext: (Component: React.ComponentType) => () => JSX.Element;
1
+ /// <reference types="react" />
2
+ export declare const WrappedTimeWheelContext: ({ children }: {
3
+ children: JSX.Element;
4
+ }) => JSX.Element;
3
5
  export declare const TimeWheel: () => JSX.Element;
@@ -1,65 +1,6 @@
1
- import React from 'react';
2
- export interface WheelsButtonsRefsT {
3
- prevHourBtnRef: React.RefObject<HTMLButtonElement>;
4
- currHourBtnRef: React.RefObject<HTMLButtonElement>;
5
- nextHourBtnRef: React.RefObject<HTMLButtonElement>;
6
- prevMinutesBtnRef: React.RefObject<HTMLButtonElement>;
7
- currMinutesBtnRef: React.RefObject<HTMLButtonElement>;
8
- nextMinutesBtnRef: React.RefObject<HTMLButtonElement>;
9
- prevMeridiemBtnRef: React.RefObject<HTMLButtonElement>;
10
- currMeridiemBtnRef: React.RefObject<HTMLButtonElement>;
11
- nextMeridiemBtnRef: React.RefObject<HTMLButtonElement>;
12
- }
13
- export interface KeyboardHandlersT {
14
- handlePrevHourBtnOnKeyDown: (e: React.KeyboardEvent) => void;
15
- handleCurrHourOnKeyDown: (e: React.KeyboardEvent) => void;
16
- handleNextHourBtnOnKeyDown: (e: React.KeyboardEvent) => void;
17
- handlePrevMinuteBtnOnKeyDown: (e: React.KeyboardEvent) => void;
18
- handleCurrMinutesOnKeyDown: (e: React.KeyboardEvent) => void;
19
- handleNextMinuteBtnOnKeyDown: (e: React.KeyboardEvent) => void;
20
- handlePrevMeridiemBtnOnKeyDown: (e: React.KeyboardEvent) => void;
21
- handleCurrMeridiemOnKeyDown: (e: React.KeyboardEvent) => void;
22
- handleNextMeridiemBtnOnKeyDown: (e: React.KeyboardEvent) => void;
23
- handlePickerIconKeyDown: (e: React.KeyboardEvent<HTMLButtonElement>) => void;
24
- }
25
- export interface PopperTriggerLogicT {
26
- showTimePicker: boolean;
27
- setShowTimePicker: React.Dispatch<React.SetStateAction<boolean>>;
28
- setPopperElement: React.Dispatch<React.SetStateAction<HTMLDivElement>>;
29
- setArrowElement: React.Dispatch<React.SetStateAction<HTMLDivElement>>;
30
- usePopperHelpers: {
31
- attributes: Record<string, unknown>;
32
- styles: Record<string, React.CSSProperties>;
33
- };
34
- handleToggleTimePicker: (e?: React.MouseEvent<HTMLButtonElement>) => void;
35
- handleSetTriggerRef: (instance: HTMLButtonElement) => void;
36
- handleMenuWrapperKeyDown: (e?: React.KeyboardEvent<HTMLElement>) => void;
37
- }
38
- export interface useCurrentDisplayedWheelsLogicT {
39
- currHourNum: number;
40
- hours: string;
41
- visibleHours: string[];
42
- handlePrevHour: (e: React.MouseEvent) => void;
43
- handleNextHour: (e: React.MouseEvent) => void;
44
- handleTimeWheelBtnChangeHours: (newVal: string, e: React.MouseEvent<HTMLButtonElement>) => void;
45
- currMinuteNum: number;
46
- minutes: string;
47
- visibleMinutes: string[];
48
- handlePrevMinute: (e: React.MouseEvent) => void;
49
- handleNextMinute: (e: React.MouseEvent) => void;
50
- handleTimeWheelBtnChangeMinutes: (newVal: string, e: React.MouseEvent<HTMLButtonElement>) => void;
51
- meridiem: string;
52
- handleTimeWheelBtnChangeMeridiem: (newMeridiem: string, e: React.MouseEvent) => void;
53
- }
54
- export interface TimeWheelContextT extends PopperTriggerLogicT, useCurrentDisplayedWheelsLogicT, KeyboardHandlersT, WheelsButtonsRefsT {
55
- ariaCurrentValueForInputs: string;
56
- tempTimeString: string;
57
- isControllerOnly: boolean;
58
- autoFocusHourTimeWheel: boolean;
59
- disabled: boolean;
60
- getIsDisabledTime: (val: string) => boolean;
61
- }
1
+ /// <reference types="react" />
2
+ import type { TimeWheelContextT } from './useConfigTimePickerCTX';
62
3
  export declare const defaultTimePickerContext: TimeWheelContextT;
63
4
  /** Context for cross component communication */
64
- export declare const TimeWheelContext: React.Context<TimeWheelContextT>;
5
+ export declare const TimeWheelContext: import("react").Context<TimeWheelContextT>;
65
6
  export default TimeWheelContext;
@@ -1,2 +1,2 @@
1
- /// <reference types="react" />
2
- export declare const TimeWheelFooter: () => JSX.Element;
1
+ import React from 'react';
2
+ export declare const TimeWheelFooter: React.ComponentType;
@@ -1,2 +1,5 @@
1
- import { TimeWheelContextT } from './TimeWheelContext';
1
+ import { usePopperTriggerLogic } from './usePopperTriggerLogic';
2
+ import { useCurrentDisplayedWheelsLogic } from './useCurrentDisplayedWheelsLogic';
3
+ import { useKeyboardHandlers } from './useKeyboardHandlers';
4
+ export declare type TimeWheelContextT = ReturnType<typeof useCurrentDisplayedWheelsLogic> & ReturnType<typeof usePopperTriggerLogic> & ReturnType<typeof useKeyboardHandlers>;
2
5
  export declare const useConfigTimePickerCTX: () => TimeWheelContextT;