@elliemae/ds-controlled-form 2.4.2-rc.1 → 2.4.2-rc.13

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 (272) hide show
  1. package/cjs/autocomplete/config/useAutocomplete.js +0 -1
  2. package/cjs/autocomplete/parts/A11yFocusedOption.js +46 -0
  3. package/cjs/autocomplete/parts/container/Container.js +36 -24
  4. package/cjs/autocomplete/parts/container/styled.js +2 -2
  5. package/cjs/autocomplete/parts/container/useKeyboardNavigation.js +2 -2
  6. package/cjs/autocomplete/parts/menu-list/MenuList.js +6 -6
  7. package/cjs/autocomplete/parts/menu-list/styled.js +2 -2
  8. package/cjs/autocomplete/parts/menu-list/useItemRenderer.js +1 -1
  9. package/cjs/autocomplete/parts/styled.js +2 -0
  10. package/cjs/autocomplete/utils/listHelper.js +1 -1
  11. package/cjs/checkbox/ControlledCheckbox.js +1 -1
  12. package/cjs/checkbox/config/useValidateProps.js +6 -3
  13. package/cjs/checkbox/react-desc-prop-types.js +2 -1
  14. package/cjs/checkbox/styles.js +73 -27
  15. package/cjs/checkbox/utils/styleHelpers.js +20 -2
  16. package/cjs/combobox/ComboBoxCTX.js +6 -3
  17. package/cjs/combobox/config/useComboBox.js +16 -6
  18. package/cjs/combobox/config/useCorrectOptions.js +1 -2
  19. package/cjs/combobox/parts/A11yFocusedOption.js +14 -6
  20. package/cjs/combobox/parts/A11ySelectedValues.js +2 -4
  21. package/cjs/combobox/parts/DropdownIndicator.js +15 -7
  22. package/cjs/combobox/parts/container/Container.js +11 -14
  23. package/cjs/combobox/parts/container/styled.js +11 -10
  24. package/cjs/combobox/parts/controls/Controls.js +19 -27
  25. package/cjs/combobox/parts/controls/styled.js +54 -22
  26. package/cjs/combobox/parts/controls/useOnPillsNavigation.js +7 -15
  27. package/cjs/combobox/parts/controls-input/ControlsInput.js +2 -2
  28. package/cjs/combobox/parts/controls-input/styled.js +41 -11
  29. package/cjs/combobox/parts/controls-input/useControlsInput.js +4 -7
  30. package/cjs/combobox/parts/controls-input/useKeyboardNavigation.js +19 -28
  31. package/cjs/combobox/parts/controls-input/useMaskedOnChange.js +7 -7
  32. package/cjs/combobox/parts/dropdown-indicator/DropdownIndicator.js +2 -2
  33. package/cjs/combobox/parts/header-list/HeaderList.js +1 -1
  34. package/cjs/combobox/parts/header-list/styled.js +39 -10
  35. package/cjs/combobox/parts/header-list/useHeaderListHandlers.js +7 -14
  36. package/cjs/combobox/parts/menu-list/MenuList.js +8 -6
  37. package/cjs/combobox/parts/menu-list/styled.js +38 -20
  38. package/cjs/combobox/parts/menu-list/useItemRenderer.js +18 -17
  39. package/cjs/combobox/parts/multi-selected-values-container/MultiSelectedValuesContainer.js +1 -1
  40. package/cjs/combobox/parts/multi-selected-values-container/RemovableSelectedValuePill.js +1 -3
  41. package/cjs/combobox/parts/multi-selected-values-container/useGroupPills.js +1 -2
  42. package/cjs/combobox/parts/styled.js +6 -7
  43. package/cjs/combobox/react-desc-prop-types.js +3 -2
  44. package/cjs/combobox/sharedTypes.js +2 -2
  45. package/cjs/combobox/utils/listHelper.js +14 -9
  46. package/cjs/date-range-picker/config/useRangePickerLogic.js +4 -8
  47. package/cjs/date-range-picker/parts/ControlledDateRangeCalendar.js +0 -2
  48. package/cjs/date-range-picker/parts/ControlledDateRangeFromDate.js +0 -2
  49. package/cjs/date-range-picker/parts/ControlledDateRangeToDate.js +0 -2
  50. package/cjs/date-time-picker/config/useChangeHandlers.js +11 -15
  51. package/cjs/date-time-picker/config/useControlledDateTimePicker.js +14 -10
  52. package/cjs/date-time-picker/config/useFocusTracker.js +136 -0
  53. package/cjs/date-time-picker/config/useGetDestructuredValues.js +6 -6
  54. package/cjs/date-time-picker/config/useGetPropsBasedOnType.js +1 -1
  55. package/cjs/date-time-picker/config/useGetReferences.js +39 -18
  56. package/cjs/date-time-picker/config/useGlobalKeyHandlers.js +8 -12
  57. package/cjs/date-time-picker/config/useRelevantValueFromProps.js +1 -1
  58. package/cjs/date-time-picker/config/useValidateProps.js +42 -11
  59. package/cjs/date-time-picker/parts/ClearButton/ClearButton.js +10 -2
  60. package/cjs/date-time-picker/parts/ClearButton/useClearButton.js +12 -25
  61. package/cjs/date-time-picker/parts/ControlledDateTimePickerContent.js +4 -7
  62. package/cjs/date-time-picker/parts/DateInputs/DDInput.js +8 -6
  63. package/cjs/date-time-picker/parts/DateInputs/DateInputs.js +9 -4
  64. package/cjs/date-time-picker/parts/DateInputs/MMInput.js +8 -6
  65. package/cjs/date-time-picker/parts/DateInputs/YYYYInput.js +8 -6
  66. package/cjs/date-time-picker/parts/DateInputs/useDateInputs.js +84 -113
  67. package/cjs/date-time-picker/parts/Pickers/Calendar/CalendarDaysList.js +4 -4
  68. package/cjs/date-time-picker/parts/Pickers/Calendar/CalendarHead.js +25 -7
  69. package/cjs/date-time-picker/parts/Pickers/Calendar/CalendarIconTrigger.js +1 -1
  70. package/cjs/date-time-picker/parts/Pickers/Calendar/Day.js +21 -17
  71. package/cjs/date-time-picker/parts/Pickers/Calendar/Styleds.js +44 -15
  72. package/cjs/date-time-picker/parts/Pickers/Calendar/useConfigCalendarCTX.js +13 -14
  73. package/cjs/date-time-picker/parts/Pickers/Calendar/useCurrentDisplayedMonthYearLogic.js +2 -1
  74. package/cjs/date-time-picker/parts/Pickers/Calendar/useFocusLogic.js +2 -39
  75. package/cjs/date-time-picker/parts/Pickers/Calendar/useKeyboardHandlers.js +40 -73
  76. package/cjs/date-time-picker/parts/Pickers/Calendar/usePopperTriggerLogic.js +18 -29
  77. package/cjs/date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelIconTrigger.js +2 -1
  78. package/cjs/date-time-picker/parts/Pickers/CalendarWithTimeWheel/useConfigCalendarWithTimeWheelCTX.js +19 -27
  79. package/cjs/date-time-picker/parts/Pickers/TimeWheel/HoursList.js +15 -11
  80. package/cjs/date-time-picker/parts/Pickers/TimeWheel/MeridiemList.js +17 -13
  81. package/cjs/date-time-picker/parts/Pickers/TimeWheel/MinutesList.js +15 -11
  82. package/cjs/date-time-picker/parts/Pickers/TimeWheel/SecondsList.js +2 -2
  83. package/cjs/date-time-picker/parts/Pickers/TimeWheel/Styleds.js +47 -15
  84. package/cjs/date-time-picker/parts/Pickers/TimeWheel/TimeWheelContent.js +1 -1
  85. package/cjs/date-time-picker/parts/Pickers/TimeWheel/TimeWheelIconTrigger.js +1 -1
  86. package/cjs/date-time-picker/parts/Pickers/TimeWheel/useCurrentDisplayedWheelsLogic.js +3 -3
  87. package/cjs/date-time-picker/parts/Pickers/TimeWheel/useKeyboardHandlers.js +36 -230
  88. package/cjs/date-time-picker/parts/Pickers/TimeWheel/usePopperTriggerLogic.js +12 -17
  89. package/cjs/date-time-picker/parts/Styleds.js +12 -6
  90. package/cjs/date-time-picker/parts/TimeInputs/HHInput.js +7 -3
  91. package/cjs/date-time-picker/parts/TimeInputs/MeridiemInput.js +8 -7
  92. package/cjs/date-time-picker/parts/TimeInputs/MinutesInput.js +8 -6
  93. package/cjs/date-time-picker/parts/TimeInputs/TimeInputs.js +11 -6
  94. package/cjs/date-time-picker/parts/TimeInputs/useTimeInputs.js +55 -97
  95. package/cjs/date-time-picker/utils/constants.js +0 -12
  96. package/cjs/date-time-picker/utils/dateHelpers.js +17 -34
  97. package/cjs/date-time-picker/utils/hooks/useGetStartingFocusedDay.js +38 -36
  98. package/cjs/date-time-picker/utils/hooks/useOnClickOutside.js +1 -3
  99. package/cjs/date-time-picker/utils/stringHelpers.js +5 -11
  100. package/cjs/input-group/InputGroup.js +8 -7
  101. package/cjs/input-group/exported-related/data-test-ids.js +12 -0
  102. package/cjs/input-group/exported-related/index.js +12 -0
  103. package/cjs/input-group/exported-related/theming.js +13 -0
  104. package/cjs/input-group/styled.js +90 -23
  105. package/cjs/large-text-input/DSControlledLargeTextInput.js +1 -1
  106. package/cjs/large-text-input/styles.js +27 -13
  107. package/cjs/mask-hook/hooks/useNumberMask.js +1 -5
  108. package/cjs/mask-hook/hooks/usePhoneMask.js +1 -4
  109. package/cjs/mask-hook/hooks/useRegExpMask.js +4 -7
  110. package/cjs/mask-hook/hooks/useSSNMask.js +1 -4
  111. package/cjs/mask-hook/hooks/useZipCodeMask.js +1 -4
  112. package/cjs/mask-hook/utils/addSpecialCharacters.js +0 -1
  113. package/cjs/mask-hook/utils/flatStringArray.js +0 -1
  114. package/cjs/text-input/config/useInputText.js +0 -1
  115. package/cjs/text-input/styled/borders.js +18 -11
  116. package/cjs/text-input/styled/components.js +49 -10
  117. package/cjs/toggle/ControlledToggle.js +2 -3
  118. package/cjs/toggle/styles.js +7 -5
  119. package/esm/autocomplete/config/useAutocomplete.js +0 -1
  120. package/esm/autocomplete/parts/A11yFocusedOption.js +36 -0
  121. package/esm/autocomplete/parts/container/Container.js +39 -27
  122. package/esm/autocomplete/parts/container/styled.js +2 -2
  123. package/esm/autocomplete/parts/container/useKeyboardNavigation.js +2 -2
  124. package/esm/autocomplete/parts/menu-list/MenuList.js +7 -7
  125. package/esm/autocomplete/parts/menu-list/styled.js +2 -2
  126. package/esm/autocomplete/parts/menu-list/useItemRenderer.js +1 -1
  127. package/esm/autocomplete/parts/styled.js +1 -0
  128. package/esm/autocomplete/utils/listHelper.js +1 -1
  129. package/esm/checkbox/ControlledCheckbox.js +2 -2
  130. package/esm/checkbox/config/useValidateProps.js +6 -3
  131. package/esm/checkbox/react-desc-prop-types.js +2 -1
  132. package/esm/checkbox/styles.js +73 -24
  133. package/esm/checkbox/utils/styleHelpers.js +20 -2
  134. package/esm/combobox/ComboBoxCTX.js +6 -3
  135. package/esm/combobox/config/useComboBox.js +16 -6
  136. package/esm/combobox/config/useCorrectOptions.js +1 -2
  137. package/esm/combobox/parts/A11yFocusedOption.js +15 -7
  138. package/esm/combobox/parts/A11ySelectedValues.js +2 -4
  139. package/esm/combobox/parts/DropdownIndicator.js +15 -6
  140. package/esm/combobox/parts/container/Container.js +11 -14
  141. package/esm/combobox/parts/container/styled.js +11 -6
  142. package/esm/combobox/parts/controls/Controls.js +19 -27
  143. package/esm/combobox/parts/controls/styled.js +54 -18
  144. package/esm/combobox/parts/controls/useOnPillsNavigation.js +7 -15
  145. package/esm/combobox/parts/controls-input/ControlsInput.js +2 -2
  146. package/esm/combobox/parts/controls-input/styled.js +41 -7
  147. package/esm/combobox/parts/controls-input/useControlsInput.js +4 -7
  148. package/esm/combobox/parts/controls-input/useKeyboardNavigation.js +20 -29
  149. package/esm/combobox/parts/controls-input/useMaskedOnChange.js +7 -7
  150. package/esm/combobox/parts/dropdown-indicator/DropdownIndicator.js +2 -2
  151. package/esm/combobox/parts/header-list/HeaderList.js +1 -1
  152. package/esm/combobox/parts/header-list/styled.js +40 -7
  153. package/esm/combobox/parts/header-list/useHeaderListHandlers.js +7 -14
  154. package/esm/combobox/parts/menu-list/MenuList.js +8 -6
  155. package/esm/combobox/parts/menu-list/styled.js +38 -17
  156. package/esm/combobox/parts/menu-list/useItemRenderer.js +20 -19
  157. package/esm/combobox/parts/multi-selected-values-container/MultiSelectedValuesContainer.js +1 -1
  158. package/esm/combobox/parts/multi-selected-values-container/RemovableSelectedValuePill.js +1 -3
  159. package/esm/combobox/parts/multi-selected-values-container/useGroupPills.js +1 -2
  160. package/esm/combobox/parts/styled.js +6 -3
  161. package/esm/combobox/react-desc-prop-types.js +3 -2
  162. package/esm/combobox/sharedTypes.js +2 -2
  163. package/esm/combobox/utils/listHelper.js +14 -10
  164. package/esm/date-range-picker/config/useRangePickerLogic.js +3 -7
  165. package/esm/date-range-picker/parts/ControlledDateRangeCalendar.js +0 -2
  166. package/esm/date-range-picker/parts/ControlledDateRangeFromDate.js +0 -2
  167. package/esm/date-range-picker/parts/ControlledDateRangeToDate.js +0 -2
  168. package/esm/date-time-picker/config/useChangeHandlers.js +11 -15
  169. package/esm/date-time-picker/config/useControlledDateTimePicker.js +14 -10
  170. package/esm/date-time-picker/config/useFocusTracker.js +132 -0
  171. package/esm/date-time-picker/config/useGetDestructuredValues.js +6 -6
  172. package/esm/date-time-picker/config/useGetPropsBasedOnType.js +1 -1
  173. package/esm/date-time-picker/config/useGetReferences.js +40 -19
  174. package/esm/date-time-picker/config/useGlobalKeyHandlers.js +8 -12
  175. package/esm/date-time-picker/config/useRelevantValueFromProps.js +1 -1
  176. package/esm/date-time-picker/config/useValidateProps.js +42 -11
  177. package/esm/date-time-picker/parts/ClearButton/ClearButton.js +10 -2
  178. package/esm/date-time-picker/parts/ClearButton/useClearButton.js +12 -25
  179. package/esm/date-time-picker/parts/ControlledDateTimePickerContent.js +4 -7
  180. package/esm/date-time-picker/parts/DateInputs/DDInput.js +8 -6
  181. package/esm/date-time-picker/parts/DateInputs/DateInputs.js +9 -4
  182. package/esm/date-time-picker/parts/DateInputs/MMInput.js +8 -6
  183. package/esm/date-time-picker/parts/DateInputs/YYYYInput.js +8 -6
  184. package/esm/date-time-picker/parts/DateInputs/useDateInputs.js +85 -114
  185. package/esm/date-time-picker/parts/Pickers/Calendar/CalendarDaysList.js +4 -4
  186. package/esm/date-time-picker/parts/Pickers/Calendar/CalendarHead.js +26 -8
  187. package/esm/date-time-picker/parts/Pickers/Calendar/CalendarIconTrigger.js +1 -1
  188. package/esm/date-time-picker/parts/Pickers/Calendar/Day.js +21 -17
  189. package/esm/date-time-picker/parts/Pickers/Calendar/Styleds.js +44 -14
  190. package/esm/date-time-picker/parts/Pickers/Calendar/useConfigCalendarCTX.js +12 -13
  191. package/esm/date-time-picker/parts/Pickers/Calendar/useCurrentDisplayedMonthYearLogic.js +2 -1
  192. package/esm/date-time-picker/parts/Pickers/Calendar/useFocusLogic.js +3 -40
  193. package/esm/date-time-picker/parts/Pickers/Calendar/useKeyboardHandlers.js +40 -73
  194. package/esm/date-time-picker/parts/Pickers/Calendar/usePopperTriggerLogic.js +18 -29
  195. package/esm/date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelIconTrigger.js +2 -1
  196. package/esm/date-time-picker/parts/Pickers/CalendarWithTimeWheel/useConfigCalendarWithTimeWheelCTX.js +19 -27
  197. package/esm/date-time-picker/parts/Pickers/TimeWheel/HoursList.js +16 -12
  198. package/esm/date-time-picker/parts/Pickers/TimeWheel/MeridiemList.js +18 -14
  199. package/esm/date-time-picker/parts/Pickers/TimeWheel/MinutesList.js +16 -12
  200. package/esm/date-time-picker/parts/Pickers/TimeWheel/SecondsList.js +2 -2
  201. package/esm/date-time-picker/parts/Pickers/TimeWheel/Styleds.js +47 -14
  202. package/esm/date-time-picker/parts/Pickers/TimeWheel/TimeWheelContent.js +1 -1
  203. package/esm/date-time-picker/parts/Pickers/TimeWheel/TimeWheelIconTrigger.js +1 -1
  204. package/esm/date-time-picker/parts/Pickers/TimeWheel/useCurrentDisplayedWheelsLogic.js +3 -3
  205. package/esm/date-time-picker/parts/Pickers/TimeWheel/useKeyboardHandlers.js +36 -230
  206. package/esm/date-time-picker/parts/Pickers/TimeWheel/usePopperTriggerLogic.js +12 -17
  207. package/esm/date-time-picker/parts/Styleds.js +12 -6
  208. package/esm/date-time-picker/parts/TimeInputs/HHInput.js +7 -3
  209. package/esm/date-time-picker/parts/TimeInputs/MeridiemInput.js +8 -7
  210. package/esm/date-time-picker/parts/TimeInputs/MinutesInput.js +8 -6
  211. package/esm/date-time-picker/parts/TimeInputs/TimeInputs.js +11 -6
  212. package/esm/date-time-picker/parts/TimeInputs/useTimeInputs.js +55 -97
  213. package/esm/date-time-picker/utils/constants.js +1 -7
  214. package/esm/date-time-picker/utils/dateHelpers.js +17 -34
  215. package/esm/date-time-picker/utils/hooks/useGetStartingFocusedDay.js +38 -36
  216. package/esm/date-time-picker/utils/hooks/useOnClickOutside.js +1 -3
  217. package/esm/date-time-picker/utils/stringHelpers.js +5 -11
  218. package/esm/input-group/InputGroup.js +5 -4
  219. package/esm/input-group/exported-related/data-test-ids.js +8 -0
  220. package/esm/input-group/exported-related/index.js +2 -0
  221. package/esm/input-group/exported-related/theming.js +8 -0
  222. package/esm/input-group/styled.js +89 -18
  223. package/esm/large-text-input/DSControlledLargeTextInput.js +1 -1
  224. package/esm/large-text-input/styles.js +27 -9
  225. package/esm/mask-hook/hooks/useNumberMask.js +1 -5
  226. package/esm/mask-hook/hooks/usePhoneMask.js +1 -4
  227. package/esm/mask-hook/hooks/useRegExpMask.js +4 -7
  228. package/esm/mask-hook/hooks/useSSNMask.js +1 -4
  229. package/esm/mask-hook/hooks/useZipCodeMask.js +1 -4
  230. package/esm/mask-hook/utils/addSpecialCharacters.js +0 -1
  231. package/esm/mask-hook/utils/flatStringArray.js +0 -1
  232. package/esm/text-input/config/useInputText.js +0 -1
  233. package/esm/text-input/styled/borders.js +18 -7
  234. package/esm/text-input/styled/components.js +49 -6
  235. package/esm/toggle/ControlledToggle.js +0 -1
  236. package/esm/toggle/styles.js +7 -5
  237. package/package.json +39 -15
  238. package/types/autocomplete/parts/A11yFocusedOption.d.ts +5 -0
  239. package/types/autocomplete/parts/container/styled.d.ts +1 -1
  240. package/types/autocomplete/parts/styled.d.ts +0 -0
  241. package/types/autocomplete/utils/listHelper.d.ts +5 -5
  242. package/types/checkbox/react-desc-prop-types.d.ts +1 -1
  243. package/types/checkbox/styles.d.ts +1 -0
  244. package/types/combobox/parts/menu-list/styled.d.ts +1 -0
  245. package/types/combobox/react-desc-prop-types.d.ts +8 -6
  246. package/types/combobox/sharedTypes.d.ts +3 -2
  247. package/types/combobox/utils/listHelper.d.ts +1 -0
  248. package/types/date-time-picker/config/useChangeHandlers.d.ts +3 -1
  249. package/types/date-time-picker/config/useControlledDateTimePicker.d.ts +2 -5
  250. package/types/date-time-picker/config/useFocusTracker.d.ts +38 -0
  251. package/types/date-time-picker/config/useGetPropsBasedOnType.d.ts +6 -6
  252. package/types/date-time-picker/config/useGetReferences.d.ts +30 -36
  253. package/types/date-time-picker/config/useGlobalKeyHandlers.d.ts +3 -1
  254. package/types/date-time-picker/parts/DateInputs/DDInput.d.ts +2 -1
  255. package/types/date-time-picker/parts/DateInputs/MMInput.d.ts +2 -1
  256. package/types/date-time-picker/parts/DateInputs/YYYYInput.d.ts +2 -1
  257. package/types/date-time-picker/parts/Pickers/Calendar/useConfigCalendarCTX.d.ts +14 -0
  258. package/types/date-time-picker/parts/Pickers/Calendar/useFocusLogic.d.ts +1 -2
  259. package/types/date-time-picker/parts/Pickers/Calendar/usePopperTriggerLogic.d.ts +19 -0
  260. package/types/date-time-picker/parts/Pickers/TimeWheel/useKeyboardHandlers.d.ts +0 -6
  261. package/types/date-time-picker/parts/Pickers/TimeWheel/usePopperTriggerLogic.d.ts +14 -0
  262. package/types/date-time-picker/parts/TimeInputs/HHInput.d.ts +2 -1
  263. package/types/date-time-picker/parts/TimeInputs/MeridiemInput.d.ts +2 -1
  264. package/types/date-time-picker/parts/TimeInputs/MinutesInput.d.ts +2 -1
  265. package/types/date-time-picker/propTypes.d.ts +117 -0
  266. package/types/date-time-picker/sharedTypes.d.ts +1 -1
  267. package/types/date-time-picker/utils/constants.d.ts +0 -6
  268. package/types/input-group/exported-related/data-test-ids.d.ts +6 -0
  269. package/types/input-group/exported-related/index.d.ts +2 -0
  270. package/types/input-group/exported-related/theming.d.ts +6 -0
  271. package/types/input-group/styled.d.ts +4 -7
  272. package/types/text-input/config/useInputText.d.ts +4 -4
@@ -3,3 +3,4 @@ export declare const StyledCheckBox: any;
3
3
  export declare const StyledInput: any;
4
4
  export declare const StyledInputMixed: any;
5
5
  export declare const StyledLabel: any;
6
+ export declare const StyledWrapLabel: any;
@@ -2,4 +2,5 @@ export declare const StyledListWrapper: any;
2
2
  export declare const StyledList: any;
3
3
  export declare const StyledVirtualListWrapper: any;
4
4
  export declare const StyledCreatableLabel: any;
5
+ export declare const StyledCreatableValue: any;
5
6
  export declare const StyledNoResultsWrapper: any;
@@ -31,11 +31,10 @@ export declare namespace DSComboboxT {
31
31
  menuMaxHeight?: number;
32
32
  placeholder?: string;
33
33
  autoFocus?: boolean;
34
- filteredOptions: OptionTypes[];
34
+ isMenuOpen?: boolean;
35
+ onMenuChange?: (state: boolean, reason: string, e: Event) => void;
35
36
  onCreate?: (label: string) => void;
36
- onFilter?: (newOptions: OptionTypes[], inputValue: string) => void;
37
- onMenuOpen?: () => void;
38
- onMenuClose?: () => void;
37
+ onFilter?: (newOptions: OptionTypes[], inputValue?: string) => void;
39
38
  onCancel?: () => void;
40
39
  onBlur?: () => void;
41
40
  onSelectAll?: (suggestedValue: OptionTypes[] | [], event: React.MouseEvent | React.KeyboardEvent) => null;
@@ -49,11 +48,13 @@ export declare namespace DSComboboxT {
49
48
  interface DefaultProps {
50
49
  startPlacementPreference: string;
51
50
  placementOrderPreference: string[];
51
+ filteredOptions: OptionTypes[];
52
52
  hasError: boolean;
53
53
  inline: boolean;
54
54
  withoutPortal: boolean;
55
55
  zIndex: number;
56
56
  disabled: boolean;
57
+ noOptionsMessage: string;
57
58
  innerRef: React.RefObject<HTMLInputElement>;
58
59
  useMask: DSMaskT.Hook | typeof noop;
59
60
  }
@@ -70,12 +71,13 @@ export declare const ComboboxPropTypes: {
70
71
  disabled: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
71
72
  autoFocus: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
72
73
  hasError: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
74
+ noOptionsMessage: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
75
+ closeMenuOnScroll: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
73
76
  onChange: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
74
77
  onFilter: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
75
78
  onCreate: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
76
79
  onCancel: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
77
- onMenuOpen: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
78
- onMenuClose: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
80
+ onMenuChange: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
79
81
  inputMinWidth: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
80
82
  menuMinWidth: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
81
83
  menuMaxHeight: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
@@ -1,11 +1,11 @@
1
- /// <reference types="react" />
1
+ import React from 'react';
2
2
  import { useVirtual } from 'react-virtual';
3
3
  import { DSComboboxT } from './react-desc-prop-types';
4
4
  export declare namespace DSComboboxInternalsT {
5
5
  interface ComboBoxContextT {
6
6
  props: DSComboboxT.InternalProps;
7
7
  virtualListHelpers?: ReturnType<typeof useVirtual>;
8
- showPopover: boolean;
8
+ menuState: boolean;
9
9
  setShowPopover: React.Dispatch<React.SetStateAction<boolean>>;
10
10
  referenceElement: HTMLElement | null;
11
11
  setReferenceElement: React.Dispatch<React.SetStateAction<HTMLElement | null>>;
@@ -25,6 +25,7 @@ export declare namespace DSComboboxInternalsT {
25
25
  setFocusOptionIdx: React.Dispatch<React.SetStateAction<string>>;
26
26
  showSelectedOptions: boolean;
27
27
  setShowSelectedOptions: React.Dispatch<React.SetStateAction<boolean>>;
28
+ setMenuState: (newState: boolean, reason?: string, e?: React.KeyboardEvent | React.MouseEvent | React.ChangeEvent<HTMLInputElement>) => void;
28
29
  }
29
30
  }
30
31
  export declare const isSeparator: (el: DSComboboxT.OptionTypes | undefined) => el is DSComboboxT.ItemSeparatorOptions;
@@ -11,3 +11,4 @@ export declare const getSuggestedValueOnChange: (selectedOption: DSComboboxT.Ite
11
11
  export declare const filterOptions: (inputValue: string, options: DSComboboxT.OptionTypes[]) => DSComboboxT.OptionTypes[];
12
12
  export declare const selectedValuesWithSections: (optionsToParse: DSComboboxT.OptionTypes[], multiSelectedValue: DSComboboxT.ItemOption[]) => DSComboboxT.OptionTypes[];
13
13
  export declare const getFilteredOptionsSelected: (filteredOption: DSComboboxT.OptionTypes[], selectedValues: DSComboboxT.ItemOption[]) => DSComboboxT.OptionTypes[];
14
+ export declare const scrollIfNeeded: (elem: HTMLElement, options?: ScrollIntoViewOptions | undefined) => void;
@@ -2,6 +2,7 @@ import { useRelevantValueFromProps } from './useRelevantValueFromProps';
2
2
  import { useGetDestructuredValues } from './useGetDestructuredValues';
3
3
  import { useGetPropsBasedOnType } from './useGetPropsBasedOnType';
4
4
  import { useGetReferences } from './useGetReferences';
5
+ import { useFocusTracker } from './useFocusTracker';
5
6
  import type { DSControlledDateTimePickerT } from '../propTypes';
6
7
  import type { DSControlledDateTimePickerInternalsT } from '../sharedTypes';
7
8
  interface Config {
@@ -9,8 +10,9 @@ interface Config {
9
10
  destructuredValues: ReturnType<typeof useGetDestructuredValues>;
10
11
  propsBasedOnType: ReturnType<typeof useGetPropsBasedOnType>;
11
12
  DOMRefs: ReturnType<typeof useGetReferences>;
13
+ focusTrackers: ReturnType<typeof useFocusTracker>;
12
14
  }
13
- export declare const useChangeHandlers: ({ relevantValues, destructuredValues, propsBasedOnType, DOMRefs }: Config) => {
15
+ export declare const useChangeHandlers: ({ relevantValues, destructuredValues, propsBasedOnType, focusTrackers }: Config) => {
14
16
  handleChangeComposedDateTimeString: (newDateString: string, newTimeString: string, metaInfo: DSControlledDateTimePickerT.InternalInputsChangeMetaInfo) => void;
15
17
  handleChangeComposedDateString: (newDateString: string, metaInfo: Partial<DSControlledDateTimePickerT.InternalInputsChangeMetaInfo>) => void;
16
18
  handleChangeComposedTimeString: (newTimeString: string, metaInfo: Partial<DSControlledDateTimePickerT.InternalInputsChangeMetaInfo>) => void;
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import { useFocusTracker } from './useFocusTracker';
2
2
  import { useGetFlags } from './useGetFlags';
3
3
  import { useGetReferences } from './useGetReferences';
4
4
  import { useRelevantValueFromProps } from './useRelevantValueFromProps';
@@ -7,12 +7,9 @@ import { useGetDestructuredValues } from './useGetDestructuredValues';
7
7
  import { useChangeHandlers } from './useChangeHandlers';
8
8
  import { useGlobalKeyHandlers } from './useGlobalKeyHandlers';
9
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> & {
10
+ export declare type ControlledDateTimePickerContextT = ReturnType<typeof useGetFlags> & ReturnType<typeof useFocusTracker> & ReturnType<typeof useGetReferences> & ReturnType<typeof useGetPropsBasedOnType> & ReturnType<typeof useRelevantValueFromProps> & ReturnType<typeof useGetDestructuredValues> & ReturnType<typeof useChangeHandlers> & ReturnType<typeof useGlobalKeyHandlers> & {
12
11
  props: DSControlledDateTimePickerT.InternalProps;
13
12
  ariaCurrentValueForInputs: string;
14
13
  dataAttrs: Record<string, string>;
15
- latestInteractionRegion: LatestInteractionRegion;
16
- setLatestInteractionRegion: React.Dispatch<React.SetStateAction<LatestInteractionRegion>>;
17
14
  };
18
15
  export declare const useControlledDateTimePicker: (props: DSControlledDateTimePickerT.Props) => ControlledDateTimePickerContextT;
@@ -0,0 +1,38 @@
1
+ /// <reference types="react" />
2
+ import { useGetReferences } from './useGetReferences';
3
+ import { useGetFlags } from './useGetFlags';
4
+ declare type LatestInteractionRegion = 'calendar-days' | 'calendar-head' | 'timewheel' | 'date-inputs' | 'time-inputs' | 'clear-btn' | 'picker-icon' | '';
5
+ declare type CurrFocusDescriber = 'first-segment' | 'month-input' | 'day-input' | 'year-input' | 'hour-input' | 'minute-input' | 'meridiem-input' | 'last-segment' | 'clear-btn' | 'date-picker-icon' | 'time-picker-icon' | 'datetime-picker-icon' | 'calendar-prev-month' | 'calendar-next-month' | 'calendar-prev-year' | 'calendar-next-year' | 'calendar-metafocused-day' | 'timewheel-curr-hour' | 'timewheel-curr-minute' | 'timewheel-curr-meridiem' | '';
6
+ interface Config {
7
+ DOMRefs: ReturnType<typeof useGetReferences>;
8
+ flags: ReturnType<typeof useGetFlags>;
9
+ }
10
+ export declare const useFocusTracker: ({ DOMRefs, flags }: Config) => {
11
+ latestInteractionRegion: LatestInteractionRegion;
12
+ setLatestInteractionRegion: import("react").Dispatch<import("react").SetStateAction<LatestInteractionRegion>>;
13
+ currFocusDescriber: CurrFocusDescriber;
14
+ setCurrFocusDescriber: import("react").Dispatch<import("react").SetStateAction<CurrFocusDescriber>>;
15
+ trackFocusResetter: () => void;
16
+ trackFocusMonthInput: () => void;
17
+ trackFocusDayInput: () => void;
18
+ trackFocusYearInput: () => void;
19
+ trackFocusHourInput: () => void;
20
+ trackFocusMinuteInput: () => void;
21
+ trackFocusMeridiemInput: () => void;
22
+ trackFocusClearBtn: () => void;
23
+ trackFocusDatePickerIcon: () => void;
24
+ trackFocusTimePickerIcon: () => void;
25
+ trackFocusDatetimePickerIcon: () => void;
26
+ trackFocusCalendarPrevMonth: () => void;
27
+ trackFocusCalendarNextMonth: () => void;
28
+ trackFocusCalendarPrevYear: () => void;
29
+ trackFocusCalendarNextYear: () => void;
30
+ trackFocusCalendarMetafocusedDay: () => void;
31
+ trackFocusTimewheelCurrHour: () => void;
32
+ trackFocusTimewheelCurrMinute: () => void;
33
+ trackFocusTimewheelCurrMeridiem: () => void;
34
+ trackFocusPicker: () => void;
35
+ trackFocusFirstSegment: () => void;
36
+ trackFocusLastSegment: () => void;
37
+ };
38
+ export {};
@@ -1,16 +1,16 @@
1
1
  import type { DSControlledDateTimePickerT } from '../propTypes';
2
2
  export declare const useGetPropsBasedOnType: (propsWithDefaults: DSControlledDateTimePickerT.InternalProps) => {
3
- getIsDisabledDay: any;
4
- getIsOutOfRangeDay: any;
5
- getIsStartRangeDay: any;
6
- getIsDayInRange: any;
7
- getIsEndRangeDay: any;
3
+ getIsDisabledDay: BooleanGetter<string>;
4
+ getIsOutOfRangeDay: BooleanGetter<string>;
5
+ getIsStartRangeDay: BooleanGetter<string> | (() => void);
6
+ getIsDayInRange: BooleanGetter<string> | (() => void);
7
+ getIsEndRangeDay: BooleanGetter<string> | (() => void);
8
8
  appOnDateChange: DSControlledDateTimePickerT.OnDateChange;
9
9
  appOnMonthChange: DSControlledDateTimePickerT.OnInternalInputsChange;
10
10
  appOnDayChange: DSControlledDateTimePickerT.OnInternalInputsChange;
11
11
  appOnYearChange: DSControlledDateTimePickerT.OnInternalInputsChange;
12
12
  appDate: string;
13
- getIsDisabledTime: any;
13
+ getIsDisabledTime: BooleanGetter<string>;
14
14
  appOnTimeChange: DSControlledDateTimePickerT.OnTimeChange;
15
15
  appOnHourChange: DSControlledDateTimePickerT.OnInternalInputsChange;
16
16
  appOnMinuteChange: DSControlledDateTimePickerT.OnInternalInputsChange;
@@ -1,39 +1,33 @@
1
1
  /// <reference types="react" />
2
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
- };
3
+ declare type FirstSegment = 'month-input' | 'hour-input' | 'date-picker-icon' | 'time-picker-icon' | 'datetime-picker-icon' | '';
4
+ declare type LastSegment = 'year-input' | 'meridiem-input' | 'clear-btn' | 'date-picker-icon' | 'time-picker-icon' | 'datetime-picker-icon' | '';
5
+ export declare const useGetReferences: ({ isWithDateInputs, isWithTimeInputs, isDateSelector, isTimeSelector, isDateTimeSelector, withAnyPicker, withClearBtn, }: ReturnType<typeof useGetFlags>) => {
6
+ monthInputRef: import("react").MutableRefObject<HTMLInputElement>;
7
+ dayInputRef: import("react").MutableRefObject<HTMLInputElement>;
8
+ yearInputRef: import("react").MutableRefObject<HTMLInputElement>;
9
+ hourInputRef: import("react").MutableRefObject<HTMLInputElement>;
10
+ minutesInputRef: import("react").MutableRefObject<HTMLInputElement>;
11
+ meridiemInputRef: import("react").MutableRefObject<HTMLInputElement>;
12
+ clearButtonRef: import("react").MutableRefObject<HTMLButtonElement>;
13
+ pickerButtonRef: import("react").MutableRefObject<HTMLButtonElement>;
14
+ prevYearBtnRef: import("react").MutableRefObject<HTMLButtonElement>;
15
+ prevMonthBtnRef: import("react").MutableRefObject<HTMLButtonElement>;
16
+ nextMonthBtnRef: import("react").MutableRefObject<HTMLButtonElement>;
17
+ nextYearBtnRef: import("react").MutableRefObject<HTMLButtonElement>;
18
+ calendarDaysWrapperRef: import("react").MutableRefObject<HTMLDivElement>;
19
+ prevHourBtnRef: import("react").MutableRefObject<HTMLButtonElement>;
20
+ currHourBtnRef: import("react").MutableRefObject<HTMLButtonElement>;
21
+ nextHourBtnRef: import("react").MutableRefObject<HTMLButtonElement>;
22
+ prevMinutesBtnRef: import("react").MutableRefObject<HTMLButtonElement>;
23
+ currMinutesBtnRef: import("react").MutableRefObject<HTMLButtonElement>;
24
+ nextMinutesBtnRef: import("react").MutableRefObject<HTMLButtonElement>;
25
+ prevMeridiemBtnRef: import("react").MutableRefObject<HTMLButtonElement>;
26
+ currMeridiemBtnRef: import("react").MutableRefObject<HTMLButtonElement>;
27
+ nextMeridiemBtnRef: import("react").MutableRefObject<HTMLButtonElement>;
28
+ firstSegmentRef: import("react").MutableRefObject<HTMLInputElement | HTMLButtonElement>;
29
+ lastSegmentRef: import("react").MutableRefObject<HTMLInputElement | HTMLButtonElement>;
30
+ firstSegment: FirstSegment;
31
+ lastSegment: LastSegment;
39
32
  };
33
+ export {};
@@ -2,14 +2,16 @@ import { useChangeHandlers } from './useChangeHandlers';
2
2
  import { useGetPropsBasedOnType } from './useGetPropsBasedOnType';
3
3
  import { useGetReferences } from './useGetReferences';
4
4
  import { useGetFlags } from './useGetFlags';
5
+ import { useFocusTracker } from './useFocusTracker';
5
6
  import type { DSControlledDateTimePickerT } from '../propTypes';
6
7
  interface Config {
7
8
  propsBasedOnType: ReturnType<typeof useGetPropsBasedOnType>;
8
9
  changeHandlers: ReturnType<typeof useChangeHandlers>;
9
10
  DOMRefs: ReturnType<typeof useGetReferences>;
10
11
  flags: ReturnType<typeof useGetFlags>;
12
+ focusTrackers: ReturnType<typeof useFocusTracker>;
11
13
  }
12
- export declare const useGlobalKeyHandlers: ({ propsBasedOnType, changeHandlers, DOMRefs, flags }: Config) => {
14
+ export declare const useGlobalKeyHandlers: ({ propsBasedOnType, changeHandlers, flags, focusTrackers }: Config) => {
13
15
  onFillWithCurrentDateKeys: (e: React.KeyboardEvent<HTMLInputElement | HTMLButtonElement>, metaInfo?: Partial<DSControlledDateTimePickerT.InternalInputsChangeMetaInfo>) => void;
14
16
  onGlobalKeyDown: (e: React.KeyboardEvent<HTMLInputElement | HTMLButtonElement>) => void;
15
17
  };
@@ -10,6 +10,7 @@ interface DDInputsPropsT {
10
10
  placeholder: string;
11
11
  ariaCurrentValueForInputs: string;
12
12
  contextRef: React.MutableRefObject<HTMLInputElement | null>;
13
+ isFocused: boolean;
13
14
  }
14
- export declare const DDInput: React.MemoExoticComponent<({ onChange, onBlur, onFocus, onKeyDown, value, disabled, contextRef, placeholder, ariaCurrentValueForInputs, }: DDInputsPropsT) => JSX.Element>;
15
+ export declare const DDInput: React.MemoExoticComponent<({ onChange, onBlur, onFocus, onKeyDown, value, disabled, contextRef, placeholder, ariaCurrentValueForInputs, isFocused, }: DDInputsPropsT) => JSX.Element>;
15
16
  export {};
@@ -11,6 +11,7 @@ interface MMInputsPropsT {
11
11
  contextRef: React.MutableRefObject<HTMLInputElement | null>;
12
12
  placeholder: string;
13
13
  ariaCurrentValueForInputs: string;
14
+ isFocused: boolean;
14
15
  }
15
- export declare const MMInput: React.MemoExoticComponent<({ onChange, onBlur, onFocus, onKeyDown, value, disabled, placeholder, contextRef, autoFocusMonthInput, ariaCurrentValueForInputs, }: MMInputsPropsT) => JSX.Element>;
16
+ export declare const MMInput: React.MemoExoticComponent<({ onChange, onBlur, onFocus, onKeyDown, value, disabled, placeholder, contextRef, autoFocusMonthInput, ariaCurrentValueForInputs, isFocused, }: MMInputsPropsT) => JSX.Element>;
16
17
  export {};
@@ -10,6 +10,7 @@ interface YYYYInputsPropsT {
10
10
  contextRef: React.MutableRefObject<HTMLInputElement | null>;
11
11
  placeholder: string;
12
12
  ariaCurrentValueForInputs: string;
13
+ isFocused: boolean;
13
14
  }
14
- export declare const YYYYInput: React.MemoExoticComponent<({ onChange, onBlur, onFocus, onKeyDown, value, disabled, placeholder, contextRef, ariaCurrentValueForInputs, }: YYYYInputsPropsT) => JSX.Element>;
15
+ export declare const YYYYInput: React.MemoExoticComponent<({ onChange, onBlur, onFocus, onKeyDown, value, disabled, placeholder, contextRef, ariaCurrentValueForInputs, isFocused, }: YYYYInputsPropsT) => JSX.Element>;
15
16
  export {};
@@ -0,0 +1,14 @@
1
+ /// <reference types="react" />
2
+ import { useCurrentDisplayedMonthYearLogic } from './useCurrentDisplayedMonthYearLogic';
3
+ import { useFocusLogic } from './useFocusLogic';
4
+ import { usePopperTriggerLogic } from './usePopperTriggerLogic';
5
+ import { useKeyboardHandlers } from './useKeyboardHandlers';
6
+ export declare type CalendarContextT = ReturnType<typeof useCurrentDisplayedMonthYearLogic> & ReturnType<typeof useFocusLogic> & ReturnType<typeof usePopperTriggerLogic> & ReturnType<typeof useKeyboardHandlers> & {
7
+ showCalendar: boolean;
8
+ setShowCalendar: StateSetter<boolean>;
9
+ onPrevYearFocus: React.FocusEventHandler;
10
+ onPrevMonthFocus: React.FocusEventHandler;
11
+ onNextMonthFocus: React.FocusEventHandler;
12
+ onNextYearFocus: React.FocusEventHandler;
13
+ };
14
+ export declare const useConfigCalendarCTX: () => CalendarContextT;
@@ -6,10 +6,9 @@ interface UseFocusLogicArgsT {
6
6
  }
7
7
  interface FocusLogicT {
8
8
  focusedDay?: DSControlledDateTimePickerInternalsT.MetaMonthDay;
9
- tryToFocusCurrentlyDataIsFocusedDay: () => void;
10
9
  resetFocusedDayToStartDate: () => void;
11
10
  handleFocusMetaDay: (metaDayToFocus: DSControlledDateTimePickerInternalsT.MetaMonthDay) => void;
12
11
  handleFocusMetaDayByDay: (day: Date) => void;
13
12
  }
14
- export declare const useFocusLogic: ({ currentDisplayedMonthLogic, showCalendar }: UseFocusLogicArgsT) => FocusLogicT;
13
+ export declare const useFocusLogic: ({ currentDisplayedMonthLogic }: UseFocusLogicArgsT) => FocusLogicT;
15
14
  export {};
@@ -0,0 +1,19 @@
1
+ import React from 'react';
2
+ import { usePopper } from 'react-popper';
3
+ import { useFocusLogic } from './useFocusLogic';
4
+ interface UsePopperTriggerLogic {
5
+ focusLogic: ReturnType<typeof useFocusLogic>;
6
+ showCalendar: boolean;
7
+ setShowCalendar: StateSetter<boolean>;
8
+ }
9
+ interface PopperTriggerLogicT {
10
+ closeCalendar: () => void;
11
+ setPopperElement: StateSetter<HTMLDivElement | null>;
12
+ setArrowElement: StateSetter<HTMLDivElement | null>;
13
+ usePopperHelpers: ReturnType<typeof usePopper>;
14
+ handleToggleCalendar: () => void;
15
+ handleSetTriggerRef: (instance: HTMLButtonElement) => void;
16
+ handleMenuWrapperKeyDown: (e: React.KeyboardEvent<HTMLElement>) => void;
17
+ }
18
+ export declare const usePopperTriggerLogic: ({ focusLogic, showCalendar, setShowCalendar, }: UsePopperTriggerLogic) => PopperTriggerLogicT;
19
+ export {};
@@ -4,15 +4,9 @@ interface UseKeyboardHandlersArgs {
4
4
  currentDisplayedTimeWheelLogic: ReturnType<typeof useCurrentDisplayedWheelsLogic>;
5
5
  }
6
6
  interface KeyboardHandlersT {
7
- handlePrevHourBtnOnKeyDown: (e: React.KeyboardEvent) => void;
8
7
  handleCurrHourOnKeyDown: (e: React.KeyboardEvent) => void;
9
- handleNextHourBtnOnKeyDown: (e: React.KeyboardEvent) => void;
10
- handlePrevMinuteBtnOnKeyDown: (e: React.KeyboardEvent) => void;
11
8
  handleCurrMinutesOnKeyDown: (e: React.KeyboardEvent) => void;
12
- handleNextMinuteBtnOnKeyDown: (e: React.KeyboardEvent) => void;
13
- handlePrevMeridiemBtnOnKeyDown: (e: React.KeyboardEvent) => void;
14
9
  handleCurrMeridiemOnKeyDown: (e: React.KeyboardEvent) => void;
15
- handleNextMeridiemBtnOnKeyDown: (e: React.KeyboardEvent) => void;
16
10
  handlePickerIconKeyDown: (e: React.KeyboardEvent<HTMLButtonElement>) => void;
17
11
  }
18
12
  export declare const useKeyboardHandlers: ({ currentDisplayedTimeWheelLogic }: UseKeyboardHandlersArgs) => KeyboardHandlersT;
@@ -0,0 +1,14 @@
1
+ /// <reference types="react" />
2
+ import { usePopper } from 'react-popper';
3
+ interface PopperTriggerLogicT {
4
+ showTimePicker: boolean;
5
+ setShowTimePicker: StateSetter<boolean>;
6
+ setPopperElement: StateSetter<HTMLDivElement>;
7
+ setArrowElement: StateSetter<HTMLDivElement>;
8
+ usePopperHelpers: ReturnType<typeof usePopper>;
9
+ handleToggleTimePicker: () => void;
10
+ handleSetTriggerRef: (instance: HTMLButtonElement) => void;
11
+ handleMenuWrapperKeyDown: (e: React.KeyboardEvent<HTMLElement>) => void;
12
+ }
13
+ export declare const usePopperTriggerLogic: () => PopperTriggerLogicT;
14
+ export {};
@@ -11,6 +11,7 @@ interface HHInputsPropsT {
11
11
  placeholder: string;
12
12
  ariaCurrentValueForInputs: string;
13
13
  autoFocusHourInput: boolean;
14
+ isFocused: boolean;
14
15
  }
15
- export declare const HHInput: React.MemoExoticComponent<({ onChange, onBlur, onFocus, onKeyDown, value, disabled, placeholder, ariaCurrentValueForInputs, contextRef, autoFocusHourInput, }: HHInputsPropsT) => JSX.Element>;
16
+ export declare const HHInput: React.MemoExoticComponent<({ onChange, onBlur, onFocus, onKeyDown, value, disabled, placeholder, ariaCurrentValueForInputs, contextRef, autoFocusHourInput, isFocused, }: HHInputsPropsT) => JSX.Element>;
16
17
  export {};
@@ -10,6 +10,7 @@ interface MeridiemInputsPropsT {
10
10
  contextRef: React.MutableRefObject<HTMLInputElement | null>;
11
11
  placeholder: string;
12
12
  ariaCurrentValueForInputs: string;
13
+ isFocused: boolean;
13
14
  }
14
- export declare const MeridiemInput: React.MemoExoticComponent<({ onChange, onBlur, onFocus, onKeyDown, value, disabled, placeholder, ariaCurrentValueForInputs, contextRef, }: MeridiemInputsPropsT) => JSX.Element>;
15
+ export declare const MeridiemInput: React.MemoExoticComponent<({ onChange, onBlur, onFocus, onKeyDown, value, disabled, placeholder, ariaCurrentValueForInputs, contextRef, isFocused, }: MeridiemInputsPropsT) => JSX.Element>;
15
16
  export {};
@@ -10,6 +10,7 @@ interface MinutesInputsPropsT {
10
10
  contextRef: React.MutableRefObject<HTMLInputElement | null>;
11
11
  placeholder: string;
12
12
  ariaCurrentValueForInputs: string;
13
+ isFocused: boolean;
13
14
  }
14
- export declare const MinutesInput: React.MemoExoticComponent<({ onChange, onBlur, onFocus, onKeyDown, value, disabled, placeholder, ariaCurrentValueForInputs, contextRef, }: MinutesInputsPropsT) => JSX.Element>;
15
+ export declare const MinutesInput: React.MemoExoticComponent<({ onChange, onBlur, onFocus, onKeyDown, value, disabled, placeholder, ariaCurrentValueForInputs, contextRef, isFocused, }: MinutesInputsPropsT) => JSX.Element>;
15
16
  export {};
@@ -0,0 +1,117 @@
1
+ import React from 'react';
2
+ export declare namespace DSControlledDateTimePickerT {
3
+ type OnInternalValuesChangeEvent = React.ChangeEvent<HTMLInputElement> | React.KeyboardEvent<HTMLInputElement> | React.KeyboardEvent<HTMLButtonElement> | React.KeyboardEvent | React.MouseEvent<HTMLInputElement> | React.MouseEvent<HTMLButtonElement>;
4
+ type ControlTypes = 'full-date-time' | 'date-time-inputs' | 'date-time-picker' | 'date-time-picker-controller-only' | 'full-date' | 'date-inputs' | 'date-picker' | 'date-picker-controller-only' | 'full-time' | 'time-inputs' | 'time-picker' | 'time-picker-controller-only';
5
+ interface InternalInputsChangeMetaInfo {
6
+ isAutomaticFillTrigger?: boolean;
7
+ isDayPresentInMonth?: boolean;
8
+ isOutOfRangeDay?: boolean;
9
+ isDisabledDay?: boolean;
10
+ isDisabledTime?: boolean;
11
+ suggestedErrorMsg?: string;
12
+ newDateTimeString?: string;
13
+ newDateString?: string;
14
+ newTimeString?: string;
15
+ }
16
+ type OnDateChange = (val: string, metaInfo: InternalInputsChangeMetaInfo) => void;
17
+ type OnTimeChange = (val: string, metaInfo: InternalInputsChangeMetaInfo) => void;
18
+ type OnDateTimeChange = (val: string, metaInfo: InternalInputsChangeMetaInfo) => void;
19
+ type OnInternalInputsChange = (val: string, e: OnInternalValuesChangeEvent, metaInfo?: InternalInputsChangeMetaInfo) => void;
20
+ interface DefaultDateProps {
21
+ onMonthChange: OnInternalInputsChange;
22
+ onDayChange: OnInternalInputsChange;
23
+ onYearChange: OnInternalInputsChange;
24
+ onPickerOpen: NoopishFunc;
25
+ onPickerClose: NoopishFunc;
26
+ getIsDisabledDay: BooleanGetter<string>;
27
+ getIsOutOfRangeDay: BooleanGetter<string>;
28
+ getIsStartRangeDay: BooleanGetter<string>;
29
+ getIsDayInRange: BooleanGetter<string>;
30
+ getIsEndRangeDay: BooleanGetter<string>;
31
+ isClearable: boolean;
32
+ disabled: boolean;
33
+ hasError: boolean;
34
+ autoFocus: boolean;
35
+ preventCloseOnSelection: boolean;
36
+ }
37
+ interface OptionalDatePickerProps {
38
+ emptyPickerStartingMonth?: string;
39
+ onCalendarOpenFocusedDay?: string;
40
+ pickerFooterMsg?: string;
41
+ }
42
+ interface RequiredDatePickerProps {
43
+ type: 'full-date' | 'date-inputs' | 'date-picker' | 'date-picker-controller-only';
44
+ date: string;
45
+ onDateChange: OnDateChange;
46
+ }
47
+ type DatePickerProps = OptionalDatePickerProps & Partial<DefaultDateProps> & RequiredDatePickerProps;
48
+ type InternalDatePickerProps = OptionalDatePickerProps & DefaultDateProps & RequiredDatePickerProps;
49
+ interface DefaultTimeProps {
50
+ onHourChange: OnInternalInputsChange;
51
+ onMinuteChange: OnInternalInputsChange;
52
+ onMeridiemChange: OnInternalInputsChange;
53
+ onPickerOpen: NoopishFunc;
54
+ onPickerClose: NoopishFunc;
55
+ getIsDisabledTime: BooleanGetter<string>;
56
+ minutesInterval: number;
57
+ isClearable: boolean;
58
+ disabled: boolean;
59
+ hasError: boolean;
60
+ autoFocus: boolean;
61
+ preventCloseOnSelection: boolean;
62
+ }
63
+ interface OptionalTimePickerProps {
64
+ pickerFooterMsg?: string;
65
+ onTimeWheelOpenStartingTime?: string;
66
+ }
67
+ interface RequiredTimePickerProps {
68
+ type: 'full-time' | 'time-inputs' | 'time-picker' | 'time-picker-controller-only';
69
+ time: string;
70
+ onTimeChange: OnTimeChange;
71
+ }
72
+ type TimePickerProps = OptionalTimePickerProps & Partial<DefaultTimeProps> & RequiredTimePickerProps;
73
+ type InternalTimePickerProps = OptionalTimePickerProps & DefaultTimeProps & RequiredTimePickerProps;
74
+ type DefaultDateTimeProps = DefaultTimeProps & DefaultDateProps & {
75
+ onDateChange: OnDateChange;
76
+ onTimeChange: OnTimeChange;
77
+ };
78
+ type OptionalDateTimeProps = OptionalTimePickerProps & OptionalDatePickerProps;
79
+ interface RequiredDateTimeProps {
80
+ type: 'full-date-time' | 'date-time-inputs' | 'date-time-picker' | 'date-time-picker-controller-only';
81
+ dateTime: string;
82
+ onDateTimeChange: OnDateTimeChange;
83
+ }
84
+ type DateTimePickerProps = Partial<DefaultDateTimeProps> & OptionalDateTimeProps & RequiredDateTimeProps;
85
+ type InternalDateTimePickerProps = DefaultDateTimeProps & OptionalDateTimeProps & RequiredDateTimeProps;
86
+ type DefaultProps = DefaultDateTimeProps & {
87
+ type: 'full-date-time';
88
+ };
89
+ type Props = DateTimePickerProps | DatePickerProps | TimePickerProps;
90
+ type InternalProps = InternalDateTimePickerProps | InternalDatePickerProps | InternalTimePickerProps;
91
+ }
92
+ export declare const defaultProps: DSControlledDateTimePickerT.DefaultProps;
93
+ export declare const propTypes: {
94
+ type: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
95
+ disabled: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
96
+ isClearable: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
97
+ dateTime: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
98
+ date: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
99
+ time: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
100
+ onDateChange: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
101
+ onTimeChange: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
102
+ onDateTimeChange: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
103
+ onMonthChange: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
104
+ onDayChange: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
105
+ onYearChange: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
106
+ onHourChange: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
107
+ onMinuteChange: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
108
+ onMeridiemChange: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
109
+ getIsDisabledDay: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
110
+ getIsOutOfRangeDay: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
111
+ getIsDisabledTime: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
112
+ emptyPickerStartingMonth: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
113
+ onCalendarOpenFocusedDay: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
114
+ onTimeWheelOpenStartingTime: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
115
+ minutesInterval: import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
116
+ 'data-testid': import("@elliemae/ds-props-helpers/types/propTypes/types").ReactDescT;
117
+ };
@@ -10,7 +10,7 @@ export declare namespace DSControlledDateTimePickerInternalsT {
10
10
  isNextMonthDay: boolean;
11
11
  isCurrMonthDay: boolean;
12
12
  isHidden: boolean;
13
- dayBtnRef: React.RefObject<HTMLButtonElement>;
13
+ dayBtnRef: React.MutableRefObject<HTMLButtonElement>;
14
14
  }
15
15
  type OnKeyDown<HTMLT = HTMLInputElement> = (e: React.KeyboardEvent<HTMLT>) => void;
16
16
  type OnChangeFunc = (e: React.ChangeEvent<HTMLInputElement>) => void;
@@ -33,12 +33,6 @@ export declare const announcableCardinalDays: {
33
33
  readonly 30: "thirtieth";
34
34
  readonly 31: "thirty first";
35
35
  };
36
- export declare const homeEndAllArrowKeys: string[];
37
- export declare const homeEndKeys: string[];
38
- export declare const homeEndArrowUpDownDashSlashesKeys: string[];
39
- export declare const homeEndArrowUpDownSpaceKeys: string[];
40
- export declare const homeEndArrowUpDownSemiKeys: string[];
41
- export declare const homeEndArrowUpDownKeys: string[];
42
36
  export declare const defaultMetaInfo: {
43
37
  isAutomaticFillTrigger: boolean;
44
38
  };
@@ -0,0 +1,6 @@
1
+ export declare const InputGroupDataTestIds: {
2
+ CONTAINER: string;
3
+ LEFTADDON: string;
4
+ RIGHTADDON: string;
5
+ INPUTCONTAINER: string;
6
+ };
@@ -0,0 +1,2 @@
1
+ export * from './data-test-ids';
2
+ export * from './theming';
@@ -0,0 +1,6 @@
1
+ export declare const DSInputGroupName = "ds-input-group";
2
+ export declare const DSInputGroupSlots: {
3
+ CONTAINER: string;
4
+ LEFT_ADDON: string;
5
+ RIGHT_ADDON: string;
6
+ };
@@ -1,7 +1,4 @@
1
- /// <reference types="react" />
2
- export declare const StyledContainer: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("@elliemae/ds-grid/types/react-desc-prop-types").DSGridT.Props & import("react").RefAttributes<HTMLDivElement>>, import("styled-components").DefaultTheme, {
3
- cols: string[];
4
- }, never>;
5
- export declare const StyledLeftAddon: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
6
- export declare const StyledRightAddon: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
7
- export declare const StyledInput: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
1
+ export declare const StyledContainer: any;
2
+ export declare const StyledLeftAddon: any;
3
+ export declare const StyledRightAddon: any;
4
+ export declare const StyledInput: any;