@elliemae/ds-controlled-form 2.0.0-next.7 → 2.0.0-rc.10

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 (199) hide show
  1. package/cjs/controlled-checkbox/ControlledCheckbox.js +11 -4
  2. package/cjs/controlled-checkbox/config/useValidateProps.js +2 -2
  3. package/cjs/controlled-checkbox/propTypes.js +5 -4
  4. package/cjs/controlled-checkbox/styles.js +84 -48
  5. package/cjs/controlled-checkbox/utils/setMultipleRefs.js +4 -0
  6. package/cjs/controlled-checkbox/utils/styleHelpers.js +13 -7
  7. package/cjs/controlled-date-range-picker/ControlledDateRangePickerDatatestid.js +1 -18
  8. package/cjs/controlled-date-range-picker/config/useControlledDateRangePicker.js +19 -3
  9. package/cjs/controlled-date-range-picker/config/useRangePickerLogic.js +20 -12
  10. package/cjs/controlled-date-range-picker/parts/ControlledDateRangeCalendar.js +7 -0
  11. package/cjs/controlled-date-range-picker/parts/ControlledDateRangeContent.js +29 -8
  12. package/cjs/controlled-date-range-picker/parts/ControlledDateRangeFromDate.js +7 -0
  13. package/cjs/controlled-date-range-picker/parts/ControlledDateRangeToDate.js +7 -0
  14. package/cjs/controlled-date-time-picker/ControlledDateTimePickerCTX.js +12 -1
  15. package/cjs/controlled-date-time-picker/ControlledDateTimePickerDatatestid.js +5 -0
  16. package/cjs/controlled-date-time-picker/config/useControlledDateTimePicker.js +154 -13
  17. package/cjs/controlled-date-time-picker/config/useGetDestructuredValues.js +19 -16
  18. package/cjs/controlled-date-time-picker/parts/ClearButton/ClearButton.js +5 -6
  19. package/cjs/controlled-date-time-picker/parts/ClearButton/useClearButton.js +15 -3
  20. package/cjs/controlled-date-time-picker/parts/ControlledDateTimePickerContent.js +35 -14
  21. package/cjs/controlled-date-time-picker/parts/DateInputs/DDInput.js +15 -11
  22. package/cjs/controlled-date-time-picker/parts/DateInputs/DateInputs.js +8 -4
  23. package/cjs/controlled-date-time-picker/parts/DateInputs/MMInput.js +16 -12
  24. package/cjs/controlled-date-time-picker/parts/DateInputs/YYYYInput.js +15 -11
  25. package/cjs/controlled-date-time-picker/parts/DateInputs/useDateInputs.js +101 -33
  26. package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/Calendar.js +4 -3
  27. package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarBody.js +10 -7
  28. package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarContent.js +4 -3
  29. package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarContext.js +1 -0
  30. package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarDaysList.js +33 -28
  31. package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarHead.js +10 -17
  32. package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarIconTrigger.js +10 -11
  33. package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarWrapper.js +5 -0
  34. package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/Day.js +20 -10
  35. package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/Styleds.js +326 -117
  36. package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/useConfigCalendarCTX.js +8 -43
  37. package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/useFocusLogic.js +47 -21
  38. package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/useKeyboardHandlers.js +59 -58
  39. package/cjs/controlled-date-time-picker/parts/Pickers/Calendar/usePopperTriggerLogic.js +25 -13
  40. package/cjs/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelContext.js +2 -1
  41. package/cjs/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelIconTrigger.js +10 -11
  42. package/cjs/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelWrapper.js +5 -0
  43. package/cjs/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/Styleds.js +55 -25
  44. package/cjs/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/useConfigCalendarWithTimeWheelCTX.js +18 -7
  45. package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/HoursList.js +7 -0
  46. package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/MeridiemList.js +1 -0
  47. package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/MinutesList.js +7 -0
  48. package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/SecondsList.js +11 -7
  49. package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/Styleds.js +201 -80
  50. package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheel.js +4 -3
  51. package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelContent.js +4 -3
  52. package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelContext.js +2 -1
  53. package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelIconTrigger.js +10 -11
  54. package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelWrapper.js +5 -0
  55. package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/useConfigTimePickerCTX.js +6 -61
  56. package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/useCurrentDisplayedWheelsLogic.js +8 -5
  57. package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/useKeyboardHandlers.js +64 -141
  58. package/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/usePopperTriggerLogic.js +11 -7
  59. package/cjs/controlled-date-time-picker/parts/Styleds.js +70 -26
  60. package/cjs/controlled-date-time-picker/parts/TimeInputs/HHInput.js +16 -12
  61. package/cjs/controlled-date-time-picker/parts/TimeInputs/MeridiemInput.js +15 -11
  62. package/cjs/controlled-date-time-picker/parts/TimeInputs/MinutesInput.js +15 -11
  63. package/cjs/controlled-date-time-picker/parts/TimeInputs/TimeInputs.js +8 -5
  64. package/cjs/controlled-date-time-picker/parts/TimeInputs/useTimeInputs.js +95 -173
  65. package/cjs/controlled-date-time-picker/propTypes.js +1 -0
  66. package/cjs/controlled-date-time-picker/utils/constants.js +16 -0
  67. package/cjs/controlled-date-time-picker/utils/dateHelpers.js +34 -16
  68. package/cjs/controlled-date-time-picker/utils/dateTimeHelpers.js +5 -0
  69. package/cjs/controlled-date-time-picker/utils/stringHelpers.js +23 -14
  70. package/cjs/controlled-date-time-picker/utils/timeHelpers.js +2 -1
  71. package/cjs/controlled-toggle/ControlledToggle.js +21 -15
  72. package/cjs/controlled-toggle/styles.js +138 -69
  73. package/cjs/controlled-toggle/utils/addTooltipOnReadOnly.js +2 -2
  74. package/cjs/controlled-toggle/utils/styleHelpers.js +15 -9
  75. package/esm/controlled-checkbox/ControlledCheckbox.js +11 -4
  76. package/esm/controlled-checkbox/config/useValidateProps.js +2 -2
  77. package/esm/controlled-checkbox/propTypes.js +5 -4
  78. package/esm/controlled-checkbox/styles.js +84 -48
  79. package/esm/controlled-checkbox/utils/setMultipleRefs.js +4 -0
  80. package/esm/controlled-checkbox/utils/styleHelpers.js +13 -7
  81. package/esm/controlled-date-range-picker/ControlledDateRangePickerDatatestid.js +1 -18
  82. package/esm/controlled-date-range-picker/config/useControlledDateRangePicker.js +15 -3
  83. package/esm/controlled-date-range-picker/config/useRangePickerLogic.js +20 -12
  84. package/esm/controlled-date-range-picker/parts/ControlledDateRangeCalendar.js +7 -0
  85. package/esm/controlled-date-range-picker/parts/ControlledDateRangeContent.js +28 -8
  86. package/esm/controlled-date-range-picker/parts/ControlledDateRangeFromDate.js +7 -0
  87. package/esm/controlled-date-range-picker/parts/ControlledDateRangeToDate.js +7 -0
  88. package/esm/controlled-date-time-picker/ControlledDateTimePickerCTX.js +12 -1
  89. package/esm/controlled-date-time-picker/ControlledDateTimePickerDatatestid.js +5 -0
  90. package/esm/controlled-date-time-picker/config/useControlledDateTimePicker.js +156 -15
  91. package/esm/controlled-date-time-picker/config/useGetDestructuredValues.js +19 -16
  92. package/esm/controlled-date-time-picker/parts/ClearButton/ClearButton.js +1 -1
  93. package/esm/controlled-date-time-picker/parts/ClearButton/useClearButton.js +15 -3
  94. package/esm/controlled-date-time-picker/parts/ControlledDateTimePickerContent.js +34 -14
  95. package/esm/controlled-date-time-picker/parts/DateInputs/DDInput.js +15 -11
  96. package/esm/controlled-date-time-picker/parts/DateInputs/DateInputs.js +8 -4
  97. package/esm/controlled-date-time-picker/parts/DateInputs/MMInput.js +16 -12
  98. package/esm/controlled-date-time-picker/parts/DateInputs/YYYYInput.js +15 -11
  99. package/esm/controlled-date-time-picker/parts/DateInputs/useDateInputs.js +101 -33
  100. package/esm/controlled-date-time-picker/parts/Pickers/Calendar/Calendar.js +4 -3
  101. package/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarBody.js +10 -7
  102. package/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarContent.js +4 -3
  103. package/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarContext.js +1 -0
  104. package/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarDaysList.js +33 -28
  105. package/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarHead.js +1 -4
  106. package/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarIconTrigger.js +7 -7
  107. package/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarWrapper.js +5 -0
  108. package/esm/controlled-date-time-picker/parts/Pickers/Calendar/Day.js +20 -10
  109. package/esm/controlled-date-time-picker/parts/Pickers/Calendar/Styleds.js +321 -113
  110. package/esm/controlled-date-time-picker/parts/Pickers/Calendar/useConfigCalendarCTX.js +8 -43
  111. package/esm/controlled-date-time-picker/parts/Pickers/Calendar/useFocusLogic.js +48 -22
  112. package/esm/controlled-date-time-picker/parts/Pickers/Calendar/useKeyboardHandlers.js +60 -59
  113. package/esm/controlled-date-time-picker/parts/Pickers/Calendar/usePopperTriggerLogic.js +26 -14
  114. package/esm/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelContext.js +2 -1
  115. package/esm/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelIconTrigger.js +7 -7
  116. package/esm/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelWrapper.js +5 -0
  117. package/esm/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/Styleds.js +53 -23
  118. package/esm/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/useConfigCalendarWithTimeWheelCTX.js +18 -7
  119. package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/HoursList.js +7 -0
  120. package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/MeridiemList.js +1 -0
  121. package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/MinutesList.js +7 -0
  122. package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/SecondsList.js +9 -3
  123. package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/Styleds.js +196 -76
  124. package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheel.js +4 -3
  125. package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelContent.js +4 -3
  126. package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelContext.js +2 -1
  127. package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelIconTrigger.js +7 -7
  128. package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelWrapper.js +5 -0
  129. package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/useConfigTimePickerCTX.js +6 -61
  130. package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/useCurrentDisplayedWheelsLogic.js +8 -5
  131. package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/useKeyboardHandlers.js +65 -142
  132. package/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/usePopperTriggerLogic.js +12 -8
  133. package/esm/controlled-date-time-picker/parts/Styleds.js +68 -24
  134. package/esm/controlled-date-time-picker/parts/TimeInputs/HHInput.js +16 -12
  135. package/esm/controlled-date-time-picker/parts/TimeInputs/MeridiemInput.js +15 -11
  136. package/esm/controlled-date-time-picker/parts/TimeInputs/MinutesInput.js +15 -11
  137. package/esm/controlled-date-time-picker/parts/TimeInputs/TimeInputs.js +8 -5
  138. package/esm/controlled-date-time-picker/parts/TimeInputs/useTimeInputs.js +96 -170
  139. package/esm/controlled-date-time-picker/propTypes.js +1 -0
  140. package/esm/controlled-date-time-picker/utils/constants.js +10 -1
  141. package/esm/controlled-date-time-picker/utils/dateHelpers.js +34 -17
  142. package/esm/controlled-date-time-picker/utils/dateTimeHelpers.js +5 -0
  143. package/esm/controlled-date-time-picker/utils/stringHelpers.js +23 -14
  144. package/esm/controlled-date-time-picker/utils/timeHelpers.js +2 -1
  145. package/esm/controlled-toggle/ControlledToggle.js +21 -15
  146. package/esm/controlled-toggle/styles.js +138 -69
  147. package/esm/controlled-toggle/utils/addTooltipOnReadOnly.js +1 -1
  148. package/esm/controlled-toggle/utils/styleHelpers.js +15 -9
  149. package/package.json +21 -12
  150. package/types/controlled-checkbox/ControlledCheckbox.d.ts +60 -9
  151. package/types/controlled-checkbox/config/useValidateProps.d.ts +1 -1
  152. package/types/controlled-checkbox/index.d.d.ts +1 -0
  153. package/types/controlled-checkbox/propTypes.d.ts +55 -8
  154. package/types/controlled-checkbox/styles.d.ts +4 -4
  155. package/types/controlled-checkbox/tests/DSControlledCheckbox.keyboard.test.d.ts +1 -0
  156. package/types/controlled-checkbox/tests/DSControlledCheckbox.test.d.ts +1 -0
  157. package/types/controlled-checkbox/tests/DSControllledCheckbox.events.test.d.ts +1 -0
  158. package/types/controlled-date-range-picker/ControlledDateRangePicker.d.ts +12 -2
  159. package/types/controlled-date-range-picker/ControlledDateRangePickerDatatestid.d.ts +1 -18
  160. package/types/controlled-date-range-picker/propTypes.d.ts +7 -1
  161. package/types/controlled-date-range-picker/tests/date-range-picker.auto-advance.test.d.ts +1 -0
  162. package/types/controlled-date-range-picker/tests/date-range-picker.classes.test.d.ts +1 -0
  163. package/types/controlled-date-range-picker/tests/date-range-picker.clear-button.test.d.ts +1 -0
  164. package/types/controlled-date-range-picker/tests/date-range-picker.keyboard-focus.test.d.ts +1 -0
  165. package/types/controlled-date-range-picker/tests/date-range-picker.manual-delete-values.test.d.ts +1 -0
  166. package/types/controlled-date-range-picker/tests/date-range-picker.types-dom.test.d.ts +1 -0
  167. package/types/controlled-date-time-picker/ControlledDateTimePicker.d.ts +81 -21
  168. package/types/controlled-date-time-picker/ControlledDateTimePickerDatatestid.d.ts +3 -0
  169. package/types/controlled-date-time-picker/parts/DateInputs/DDInput.d.ts +2 -1
  170. package/types/controlled-date-time-picker/parts/DateInputs/MMInput.d.ts +2 -1
  171. package/types/controlled-date-time-picker/parts/DateInputs/YYYYInput.d.ts +2 -1
  172. package/types/controlled-date-time-picker/parts/Pickers/Calendar/CalendarContext.d.ts +2 -1
  173. package/types/controlled-date-time-picker/parts/Pickers/Calendar/Styleds.d.ts +10 -70
  174. package/types/controlled-date-time-picker/parts/Pickers/Calendar/useFocusLogic.d.ts +1 -3
  175. package/types/controlled-date-time-picker/parts/Pickers/Calendar/useKeyboardHandlers.d.ts +2 -17
  176. package/types/controlled-date-time-picker/parts/Pickers/Calendar/usePopperTriggerLogic.d.ts +3 -6
  177. package/types/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelContext.d.ts +1 -0
  178. package/types/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/Styleds.d.ts +4 -24
  179. package/types/controlled-date-time-picker/parts/Pickers/TimeWheel/Styleds.d.ts +10 -70
  180. package/types/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelContext.d.ts +1 -0
  181. package/types/controlled-date-time-picker/parts/Pickers/TimeWheel/useKeyboardHandlers.d.ts +3 -12
  182. package/types/controlled-date-time-picker/parts/Pickers/TimeWheel/usePopperTriggerLogic.d.ts +1 -10
  183. package/types/controlled-date-time-picker/parts/Styleds.d.ts +10 -30
  184. package/types/controlled-date-time-picker/parts/TimeInputs/HHInput.d.ts +2 -1
  185. package/types/controlled-date-time-picker/parts/TimeInputs/MeridiemInput.d.ts +2 -1
  186. package/types/controlled-date-time-picker/parts/TimeInputs/MinutesInput.d.ts +2 -1
  187. package/types/controlled-date-time-picker/propTypes.d.ts +76 -20
  188. package/types/controlled-date-time-picker/tests/date-time-picker.keyboard.data-entry-typing.test.d.ts +1 -0
  189. package/types/controlled-date-time-picker/tests/date-time-picker.keyboard.fill-with-now.test.d.ts +1 -0
  190. package/types/controlled-date-time-picker/tests/date-time-picker.keyboard.regressive-backspace.test.d.ts +1 -0
  191. package/types/controlled-date-time-picker/tests/date-time-picker.keyboard.shortcut-clear.test.d.ts +1 -0
  192. package/types/controlled-date-time-picker/utils/constants.d.ts +9 -0
  193. package/types/controlled-date-time-picker/utils/dateHelpers.d.ts +1 -0
  194. package/types/controlled-toggle/ControlledToggle.d.ts +78 -13
  195. package/types/controlled-toggle/propTypes.d.ts +73 -12
  196. package/types/controlled-toggle/styles.d.ts +7 -7
  197. package/cjs/controlled-date-time-picker/parts/TimeInputs/SSInput.js +0 -53
  198. package/esm/controlled-date-time-picker/parts/TimeInputs/SSInput.js +0 -45
  199. package/types/controlled-date-time-picker/parts/TimeInputs/SSInput.d.ts +0 -13
@@ -4,7 +4,13 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
6
6
  require('core-js/modules/web.dom-collections.iterator.js');
7
+ require('core-js/modules/esnext.async-iterator.filter.js');
8
+ require('core-js/modules/esnext.iterator.constructor.js');
9
+ require('core-js/modules/esnext.iterator.filter.js');
10
+ require('core-js/modules/esnext.async-iterator.for-each.js');
11
+ require('core-js/modules/esnext.iterator.for-each.js');
7
12
  var React = require('react');
13
+ var dsPropsHelpers = require('@elliemae/ds-props-helpers');
8
14
  var useGetPropsWithDefault = require('./useGetPropsWithDefault.js');
9
15
  var useGetDestructuredValues = require('./useGetDestructuredValues.js');
10
16
  var ControlledDateTimePickerTypes = require('../ControlledDateTimePickerTypes.js');
@@ -12,6 +18,7 @@ var useValidateProps = require('./useValidateProps.js');
12
18
  var dateHelpers = require('../utils/dateHelpers.js');
13
19
  var timeHelpers = require('../utils/timeHelpers.js');
14
20
  var stringHelpers = require('../utils/stringHelpers.js');
21
+ var constants = require('../utils/constants.js');
15
22
 
16
23
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
17
24
 
@@ -29,8 +36,7 @@ const useControlledDateTimePicker = props => {
29
36
  const dayInputRef = React.useRef();
30
37
  const yearInputRef = React.useRef();
31
38
  const hourInputRef = React.useRef();
32
- const minutesInputRef = React.useRef(); // const secondsInputRef = useRef<HTMLInputElement>();
33
-
39
+ const minutesInputRef = React.useRef();
34
40
  const meridiemInputRef = React.useRef();
35
41
  const clearButtonRef = React.useRef();
36
42
  const pickerButtonRef = React.useRef();
@@ -44,14 +50,12 @@ const useControlledDateTimePicker = props => {
44
50
  const nextHourBtnRef = React.useRef();
45
51
  const prevMinutesBtnRef = React.useRef();
46
52
  const currMinutesBtnRef = React.useRef();
47
- const nextMinutesBtnRef = React.useRef(); // const prevSecondsBtnRef = useRef<HTMLButtonElement>();
48
- // const currSecondsBtnRef = useRef<HTMLButtonElement>();
49
- // const nextSecondsBtnRef = useRef<HTMLButtonElement>();
50
-
53
+ const nextMinutesBtnRef = React.useRef();
51
54
  const prevMeridiemBtnRef = React.useRef();
52
55
  const currMeridiemBtnRef = React.useRef();
53
56
  const nextMeridiemBtnRef = React.useRef();
54
57
  const propsWithDefaults = useGetPropsWithDefault.useGetDatePickerWithDefaultsProps(props);
58
+ const dataAttrs = dsPropsHelpers.getDataProps(props);
55
59
  const {
56
60
  type,
57
61
  getIsDisabledDay,
@@ -109,6 +113,10 @@ const useControlledDateTimePicker = props => {
109
113
  const shouldPreserveClearableSpace = isClearable && withAnyInputs;
110
114
  const withAnyRightController = withAnyPicker || withClearBtn || shouldPreserveClearableSpace;
111
115
  const [latestInteractionRegion, setLatestInteractionRegion] = React.useState('');
116
+ let firstSegmentRef = React.useRef();
117
+ if (isWithDateInputs) firstSegmentRef = monthInputRef;else if (isWithTimeInputs) firstSegmentRef = hourInputRef;else if (withAnyPicker) firstSegmentRef = pickerButtonRef;
118
+ let lastSegmentRef = React.useRef();
119
+ if (withAnyPicker) lastSegmentRef = pickerButtonRef;else if (withClearBtn) lastSegmentRef = clearButtonRef;else if (isWithTimeInputs) lastSegmentRef = meridiemInputRef;else if (isWithDateInputs) lastSegmentRef = yearInputRef;
112
120
  const {
113
121
  month,
114
122
  day,
@@ -136,11 +144,15 @@ const useControlledDateTimePicker = props => {
136
144
  isDateTimeSelector
137
145
  });
138
146
  const ariaCurrentValueForInputs = "current values: ".concat(isWithDateInputs ? "".concat(announcedDateValues) : '').concat(isDateTimeSelector ? ', ' : '').concat(isWithTimeInputs ? "".concat(announcedTimeValues) : '');
139
- const getDateMetaInfo = React.useCallback((newDateString = null, metaInfo = {}) => {
147
+ const getDateMetaInfo = React.useCallback(function () {
148
+ let newDateString = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
149
+ let metaInfo = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
140
150
  const finalDateString = newDateString || tempDateString;
141
151
  return _objectSpread(_objectSpread({}, metaInfo), dateHelpers.getValidationDateStringMetaInfo(finalDateString, getIsOutOfRangeDay, getIsDisabledDay));
142
152
  }, [tempDateString, getIsDisabledDay, getIsOutOfRangeDay]);
143
- const getTimeMetaInfo = React.useCallback((newTimeString = null, metaInfo = {}) => {
153
+ const getTimeMetaInfo = React.useCallback(function () {
154
+ let newTimeString = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
155
+ let metaInfo = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
144
156
  const finalTimeString = newTimeString || tempTimeString;
145
157
  return _objectSpread(_objectSpread({}, metaInfo), timeHelpers.getValidationTimeStringMetaInfo(finalTimeString, getIsDisabledTime));
146
158
  }, [tempTimeString, getIsDisabledTime]);
@@ -197,6 +209,99 @@ const useControlledDateTimePicker = props => {
197
209
  const appDateTimeString = stringHelpers.isEmptyDateTimeStringMask(newDateTimeString) ? '' : newDateTimeString;
198
210
  appOnDateTimeChange(appDateTimeString, newMetaInfo); // don't do this on useEffect to avoid complete chaos
199
211
  }, [appOnTimeChange, tempDateString, getTimeMetaInfo, getDateMetaInfo, appOnDateTimeChange]);
212
+ const handleChangeMonth = React.useCallback(function (newMonth, e) {
213
+ let metaInfo = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : constants.defaultMetaInfo;
214
+ const newDateString = stringHelpers.getFormattedDateString({
215
+ month: newMonth,
216
+ day,
217
+ year
218
+ });
219
+
220
+ const finalMetaInfo = _objectSpread(_objectSpread(_objectSpread({}, metaInfo), dateHelpers.getValidationDateStringMetaInfo(newDateString, getIsOutOfRangeDay, getIsDisabledDay)), {}, {
221
+ newDateString
222
+ });
223
+
224
+ appOnMonthChange(newMonth, e, finalMetaInfo);
225
+ handleChangeComposedDateString(newDateString, finalMetaInfo);
226
+ }, [day, year, getIsOutOfRangeDay, getIsDisabledDay, appOnMonthChange, handleChangeComposedDateString]);
227
+ const handleChangeDay = React.useCallback(function (newDay, e) {
228
+ let metaInfo = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : constants.defaultMetaInfo;
229
+ const newDateString = stringHelpers.getFormattedDateString({
230
+ month,
231
+ day: newDay,
232
+ year
233
+ });
234
+
235
+ const finalMetaInfo = _objectSpread(_objectSpread(_objectSpread({}, metaInfo), dateHelpers.getValidationDateStringMetaInfo(newDateString, getIsOutOfRangeDay, getIsDisabledDay)), {}, {
236
+ newDateString
237
+ });
238
+
239
+ appOnDayChange(newDay, e, finalMetaInfo);
240
+ handleChangeComposedDateString(newDateString, finalMetaInfo);
241
+ }, [month, year, getIsOutOfRangeDay, getIsDisabledDay, appOnDayChange, handleChangeComposedDateString]);
242
+ const handleChangeYear = React.useCallback(function (newYear, e) {
243
+ let metaInfo = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : constants.defaultMetaInfo;
244
+ const newDateString = stringHelpers.getFormattedDateString({
245
+ month,
246
+ day,
247
+ year: newYear
248
+ });
249
+
250
+ const finalMetaInfo = _objectSpread(_objectSpread(_objectSpread({}, metaInfo), dateHelpers.getValidationDateStringMetaInfo(newDateString, getIsOutOfRangeDay, getIsDisabledDay)), {}, {
251
+ newDateString
252
+ });
253
+
254
+ appOnYearChange(newYear, e, finalMetaInfo);
255
+ handleChangeComposedDateString(newDateString, finalMetaInfo);
256
+ }, [month, day, getIsOutOfRangeDay, getIsDisabledDay, appOnYearChange, handleChangeComposedDateString]);
257
+ const handleChangeHours = React.useCallback(function (newHours, e) {
258
+ let metaInfo = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : constants.defaultMetaInfo;
259
+ const newTimeString = stringHelpers.getFormattedTimeString({
260
+ hours: newHours,
261
+ minutes,
262
+ // seconds,
263
+ meridiem
264
+ });
265
+
266
+ const finalMetaInfo = _objectSpread(_objectSpread(_objectSpread({}, metaInfo), timeHelpers.getValidationTimeStringMetaInfo(newTimeString, getIsDisabledTime)), {}, {
267
+ newTimeString
268
+ });
269
+
270
+ appOnHourChange(newHours, e, finalMetaInfo);
271
+ handleChangeComposedTimeString(newTimeString, finalMetaInfo);
272
+ }, [minutes, meridiem, getIsDisabledTime, appOnHourChange, handleChangeComposedTimeString]);
273
+ const handleChangeMinutes = React.useCallback(function (newMinutes, e) {
274
+ let metaInfo = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : constants.defaultMetaInfo;
275
+ const newTimeString = stringHelpers.getFormattedTimeString({
276
+ hours,
277
+ minutes: newMinutes,
278
+ // seconds,
279
+ meridiem
280
+ });
281
+
282
+ const finalMetaInfo = _objectSpread(_objectSpread(_objectSpread({}, metaInfo), timeHelpers.getValidationTimeStringMetaInfo(newTimeString, getIsDisabledTime)), {}, {
283
+ newTimeString
284
+ });
285
+
286
+ appOnMinuteChange(newMinutes, e, finalMetaInfo);
287
+ handleChangeComposedTimeString(newTimeString, finalMetaInfo);
288
+ }, [hours, meridiem, getIsDisabledTime, appOnMinuteChange, handleChangeComposedTimeString]);
289
+ const handleChangeMeridiem = React.useCallback(function (newMeridiem, e) {
290
+ let metaInfo = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : constants.defaultMetaInfo;
291
+ const newTimeString = stringHelpers.getFormattedTimeString({
292
+ hours,
293
+ minutes,
294
+ // seconds,
295
+ meridiem: newMeridiem
296
+ });
297
+
298
+ const finalMetaInfo = _objectSpread(_objectSpread(_objectSpread({}, metaInfo), timeHelpers.getValidationTimeStringMetaInfo(newTimeString, getIsDisabledTime)), {}, {
299
+ newTimeString
300
+ });
301
+
302
+ appOnMeridiemChange(newMeridiem, e, finalMetaInfo);
303
+ handleChangeComposedTimeString(newTimeString, finalMetaInfo);
304
+ }, [hours, minutes, getIsDisabledTime, appOnMeridiemChange, handleChangeComposedTimeString]);
200
305
  const handleClearAll = React.useCallback(e => {
201
306
  const metaInfo = {
202
307
  isAutomaticFillTrigger: false,
@@ -229,16 +334,43 @@ const useControlledDateTimePicker = props => {
229
334
  if (isDateTimeSelector) handleChangeComposedDateTimeString('__/__/____', '__:__ __', metaInfo);
230
335
  if (isDateSelector) handleChangeComposedDateString('__/__/____', datePartsChangesMetainfo);
231
336
  if (isTimeSelector) handleChangeComposedTimeString('__:__ __', timePartsChangesMetainfo);
232
- setLatestInteractionRegion('clear-btn');
233
337
  }, [appOnDayChange, appOnHourChange, appOnMeridiemChange, appOnMinuteChange, appOnMonthChange, appOnYearChange, handleChangeComposedDateString, handleChangeComposedDateTimeString, handleChangeComposedTimeString, isDateSelector, isDateTimeSelector, isTimeSelector]);
338
+ const onFillWithCurrentDateKeys = React.useCallback(function () {
339
+ let metaInfo = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
340
+ isAutomaticFillTrigger: true
341
+ };
342
+ const now = new Date();
343
+ const nowDateString = dateHelpers.getDateStringFromDay(now);
344
+ const nowTimeString = dateHelpers.getTimeStringFromDay(now);
345
+
346
+ const finalMetaInfo = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, metaInfo), dateHelpers.getValidationDateStringMetaInfo(nowDateString, getIsOutOfRangeDay, getIsDisabledDay)), timeHelpers.getValidationTimeStringMetaInfo(nowTimeString, getIsDisabledTime)), {}, {
347
+ newDateString: nowDateString
348
+ });
349
+
350
+ handleChangeComposedDateTimeString(nowDateString, nowTimeString, finalMetaInfo);
351
+ }, [getIsDisabledDay, getIsDisabledTime, getIsOutOfRangeDay, handleChangeComposedDateTimeString]);
352
+ const onGlobalKeyDown = React.useCallback(e => {
353
+ const {
354
+ key,
355
+ ctrlKey,
356
+ metaKey
357
+ } = e;
358
+
359
+ if ((ctrlKey || metaKey) && key === ';') {
360
+ onFillWithCurrentDateKeys();
361
+ }
362
+
363
+ if ((ctrlKey || metaKey) && (key === 'Delete' || key === 'Backspace')) handleClearAll(e);
364
+ }, [handleClearAll, onFillWithCurrentDateKeys]);
234
365
  const ctx = React__default["default"].useMemo(() => ({
235
- props: propsWithDefaults,
366
+ props: _objectSpread(_objectSpread({}, propsWithDefaults), {}, {
367
+ dataAttrs
368
+ }),
236
369
  monthInputRef,
237
370
  dayInputRef,
238
371
  yearInputRef,
239
372
  hourInputRef,
240
373
  minutesInputRef,
241
- // secondsInputRef,
242
374
  meridiemInputRef,
243
375
  clearButtonRef,
244
376
  pickerButtonRef,
@@ -257,6 +389,8 @@ const useControlledDateTimePicker = props => {
257
389
  currMeridiemBtnRef,
258
390
  nextMeridiemBtnRef,
259
391
  dateStringFromProps,
392
+ firstSegmentRef,
393
+ lastSegmentRef,
260
394
  tempDateString,
261
395
  setTempDateString,
262
396
  tempTimeString,
@@ -264,6 +398,12 @@ const useControlledDateTimePicker = props => {
264
398
  handleChangeComposedDateTimeString,
265
399
  handleChangeComposedDateString,
266
400
  handleChangeComposedTimeString,
401
+ handleChangeMonth,
402
+ handleChangeDay,
403
+ handleChangeYear,
404
+ handleChangeHours,
405
+ handleChangeMinutes,
406
+ handleChangeMeridiem,
267
407
  handleClearAll,
268
408
  hideDate,
269
409
  hideTime,
@@ -310,8 +450,9 @@ const useControlledDateTimePicker = props => {
310
450
  announcedMinutes,
311
451
  announcedMeridiem,
312
452
  announcedTimeValues,
313
- ariaCurrentValueForInputs
314
- }), [propsWithDefaults, dateStringFromProps, tempDateString, tempTimeString, handleChangeComposedDateTimeString, handleChangeComposedDateString, handleChangeComposedTimeString, handleClearAll, hideDate, hideTime, hideDateTimePicker, hideDatePicker, hideTimePicker, isDateSelector, isTimeSelector, isDateTimeSelector, isControllerOnly, isWithTimeWheelToo, isWithCalendarToo, isWithDateInputs, isWithDateInputsOnly, isWithTimeInputs, isWithTimeInputsOnly, autoFocusMonthInput, autoFocusHourInput, autoFocusPrevMonthArrow, autoFocusHourTimeWheel, latestInteractionRegion, withAnyInputs, withAnyPicker, withClearBtn, withAnyRightController, shouldPreserveClearableSpace, month, day, year, monthNum, dayNum, yearNum, announcedMonth, announcedDay, announcedYear, announcedDateValues, hours, minutes, meridiem, hoursNum, minutesNum, announcedHours, announcedMinutes, announcedMeridiem, announcedTimeValues, ariaCurrentValueForInputs] // refs are mutable so we don't need to listen to them
453
+ ariaCurrentValueForInputs,
454
+ onGlobalKeyDown
455
+ }), [dataAttrs, propsWithDefaults, dateStringFromProps, tempDateString, tempTimeString, handleChangeComposedDateTimeString, handleChangeComposedDateString, handleChangeComposedTimeString, handleChangeMonth, handleChangeDay, handleChangeYear, handleChangeHours, handleChangeMinutes, handleChangeMeridiem, handleClearAll, hideDate, hideTime, hideDateTimePicker, hideDatePicker, hideTimePicker, isDateSelector, isTimeSelector, isDateTimeSelector, isControllerOnly, isWithTimeWheelToo, isWithCalendarToo, isWithDateInputs, isWithDateInputsOnly, isWithTimeInputs, isWithTimeInputsOnly, autoFocusMonthInput, autoFocusHourInput, autoFocusPrevMonthArrow, autoFocusHourTimeWheel, latestInteractionRegion, withAnyInputs, withAnyPicker, withClearBtn, withAnyRightController, shouldPreserveClearableSpace, month, day, year, monthNum, dayNum, yearNum, announcedMonth, announcedDay, announcedYear, announcedDateValues, hours, minutes, meridiem, hoursNum, minutesNum, announcedHours, announcedMinutes, announcedMeridiem, announcedTimeValues, ariaCurrentValueForInputs, onGlobalKeyDown] // refs are mutable so we don't need to listen to them
315
456
  );
316
457
  return ctx;
317
458
  };
@@ -12,11 +12,12 @@ var constants = require('../utils/constants.js');
12
12
  // our source of truth is either the date props or dateTime props
13
13
  // based on wheter it's a dateTime picker
14
14
  // or a date picker (it's date picker when hideTime is true)
15
- const useGetDestructuredDateValues = ({
16
- date,
17
- dateTime,
18
- isDateTimeSelector
19
- }) => {
15
+ const useGetDestructuredDateValues = _ref => {
16
+ let {
17
+ date,
18
+ dateTime,
19
+ isDateTimeSelector
20
+ } = _ref;
20
21
  const dateStringFromProps = isDateTimeSelector ? stringHelpers.dateTimeToDate(dateTime) : date;
21
22
  const deconstructedValues = stringHelpers.deconstructValuesFromDateString(dateStringFromProps);
22
23
  const {
@@ -48,11 +49,12 @@ const useGetDestructuredDateValues = ({
48
49
  // based on wheter it's a dateTime picker
49
50
  // or a time picker (it's time picker when hideDate is true)
50
51
 
51
- const useGetDestructuredTimeValues = ({
52
- time,
53
- dateTime,
54
- isDateTimeSelector
55
- }) => {
52
+ const useGetDestructuredTimeValues = _ref2 => {
53
+ let {
54
+ time,
55
+ dateTime,
56
+ isDateTimeSelector
57
+ } = _ref2;
56
58
  const timeStringFromProps = isDateTimeSelector ? stringHelpers.dateTimeToTime(dateTime) : time;
57
59
  const deconstructedValues = stringHelpers.deconstructTimeValues(timeStringFromProps);
58
60
  const {
@@ -81,12 +83,13 @@ const useGetDestructuredTimeValues = ({
81
83
  announcedTimeValues
82
84
  }), [hours, minutes, meridiem, hoursNum, minutesNum, announcedHours, announcedMinutes, announcedMeridiem, announcedTimeValues]);
83
85
  };
84
- const useGetDestructuredValues = ({
85
- date,
86
- time,
87
- dateTime,
88
- isDateTimeSelector
89
- }) => {
86
+ const useGetDestructuredValues = _ref3 => {
87
+ let {
88
+ date,
89
+ time,
90
+ dateTime,
91
+ isDateTimeSelector
92
+ } = _ref3;
90
93
  const {
91
94
  month,
92
95
  day,
@@ -4,9 +4,9 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var _jsx = require('@babel/runtime/helpers/jsx');
6
6
  require('react');
7
- var CloseMedium = require('@elliemae/ds-icons/CloseMedium');
7
+ var dsIcons = require('@elliemae/ds-icons');
8
8
  var dsIcon = require('@elliemae/ds-icon');
9
- var dsButton = require('@elliemae/ds-button');
9
+ var DSButton = require('@elliemae/ds-button');
10
10
  var Styleds = require('../Styleds.js');
11
11
  var ControlledDateTimePickerDatatestid = require('../../ControlledDateTimePickerDatatestid.js');
12
12
  var useClearButton = require('./useClearButton.js');
@@ -14,7 +14,6 @@ var useClearButton = require('./useClearButton.js');
14
14
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
15
15
 
16
16
  var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
17
- var CloseMedium__default = /*#__PURE__*/_interopDefaultLegacy(CloseMedium);
18
17
 
19
18
  const ClearButton = () => {
20
19
  const {
@@ -28,14 +27,14 @@ const ClearButton = () => {
28
27
  shouldDisplay: withClearBtn,
29
28
  "aria-label": "clear selected date",
30
29
  buttonType: "icon",
31
- size: dsButton.BUTTON_SIZES.M,
32
- variant: dsButton.BUTTON_VARIANT.DEFAULT,
30
+ size: DSButton.BUTTON_SIZES.M,
31
+ variant: DSButton.BUTTON_VARIANT.DEFAULT,
33
32
  "data-testid": ControlledDateTimePickerDatatestid.ControlledDateTimePickerDatatestid.CLEAR_BUTTON,
34
33
  innerRef: clearButtonRef,
35
34
  onClick: onClearClick,
36
35
  onKeyDown: onClearButtonKeyDown,
37
36
  withAnyPicker: withAnyPicker
38
- }, void 0, /*#__PURE__*/_jsx__default["default"](CloseMedium__default["default"], {
37
+ }, void 0, /*#__PURE__*/_jsx__default["default"](dsIcons.CloseMedium, {
39
38
  color: dsIcon.DSIconColors.PRIMARY
40
39
  }));
41
40
  };
@@ -13,10 +13,15 @@ const useClearButton = () => {
13
13
  withAnyPicker,
14
14
  withClearBtn,
15
15
  withAnyInputs,
16
+ isWithTimeInputs,
17
+ isWithDateInputs,
16
18
  isTimeSelector,
17
19
  hourInputRef,
18
20
  monthInputRef,
19
- pickerButtonRef
21
+ pickerButtonRef,
22
+ meridiemInputRef,
23
+ yearInputRef,
24
+ setLatestInteractionRegion
20
25
  } = React.useContext(ControlledDateTimePickerCTX.ControlledDateTimePickerContext);
21
26
  const focusFirstRegion = React.useCallback(() => {
22
27
  var _hourInputRef$current, _hourInputRef$current2, _monthInputRef$curren, _monthInputRef$curren2;
@@ -25,8 +30,9 @@ const useClearButton = () => {
25
30
  }, [withAnyInputs, isTimeSelector, hourInputRef, monthInputRef]);
26
31
  const onClearClick = React.useCallback(e => {
27
32
  handleClearAll(e);
33
+ setLatestInteractionRegion('clear-btn');
28
34
  focusFirstRegion();
29
- }, [focusFirstRegion, handleClearAll]);
35
+ }, [focusFirstRegion, handleClearAll, setLatestInteractionRegion]);
30
36
  const onHomeKeyDown = React.useCallback(() => {
31
37
  focusFirstRegion();
32
38
  }, [focusFirstRegion]);
@@ -45,7 +51,13 @@ const useClearButton = () => {
45
51
  if (stopPropagationKeys.includes(key)) e.stopPropagation();
46
52
  if (key === 'Home') onHomeKeyDown();
47
53
  if (key === 'End') onEndKeyDown();
48
- }, [onEndKeyDown, onHomeKeyDown]);
54
+
55
+ if (key === 'Backspace' && withAnyInputs) {
56
+ var _meridiemInputRef$cur, _meridiemInputRef$cur2, _yearInputRef$current, _yearInputRef$current2;
57
+
58
+ if (isWithTimeInputs) meridiemInputRef === null || meridiemInputRef === void 0 ? void 0 : (_meridiemInputRef$cur = meridiemInputRef.current) === null || _meridiemInputRef$cur === void 0 ? void 0 : (_meridiemInputRef$cur2 = _meridiemInputRef$cur.focus) === null || _meridiemInputRef$cur2 === void 0 ? void 0 : _meridiemInputRef$cur2.call(_meridiemInputRef$cur);else if (isWithDateInputs) yearInputRef === null || yearInputRef === void 0 ? void 0 : (_yearInputRef$current = yearInputRef.current) === null || _yearInputRef$current === void 0 ? void 0 : (_yearInputRef$current2 = _yearInputRef$current.focus) === null || _yearInputRef$current2 === void 0 ? void 0 : _yearInputRef$current2.call(_yearInputRef$current);
59
+ }
60
+ }, [isWithDateInputs, isWithTimeInputs, meridiemInputRef, onEndKeyDown, onHomeKeyDown, withAnyInputs, yearInputRef]);
49
61
  return React.useMemo(() => ({
50
62
  onClearClick,
51
63
  onClearButtonKeyDown,
@@ -2,6 +2,12 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
+ require('core-js/modules/esnext.async-iterator.filter.js');
6
+ require('core-js/modules/esnext.iterator.constructor.js');
7
+ require('core-js/modules/esnext.iterator.filter.js');
8
+ require('core-js/modules/esnext.async-iterator.for-each.js');
9
+ require('core-js/modules/esnext.iterator.for-each.js');
10
+ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
5
11
  var _jsx = require('@babel/runtime/helpers/jsx');
6
12
  var React = require('react');
7
13
  var dsGrid = require('@elliemae/ds-grid');
@@ -11,13 +17,19 @@ var DateInputs = require('./DateInputs/DateInputs.js');
11
17
  var TimeInputs = require('./TimeInputs/TimeInputs.js');
12
18
  var PickersIcons = require('./Pickers/PickersIcons.js');
13
19
  var ClearButton = require('./ClearButton/ClearButton.js');
20
+ var jsxRuntime = require('react/jsx-runtime');
14
21
 
15
22
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
16
23
 
24
+ var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
17
25
  var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
18
26
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
19
27
 
20
28
  var _DateInputs, _TimeInputs, _ClearButton, _PickersIcons;
29
+
30
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
31
+
32
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
21
33
  const ControlledDateTimePickerContent = () => {
22
34
  const {
23
35
  hideDate,
@@ -31,8 +43,11 @@ const ControlledDateTimePickerContent = () => {
31
43
  shouldPreserveClearableSpace,
32
44
  isControllerOnly,
33
45
  props: {
34
- hasError
35
- }
46
+ hasError,
47
+ dataAttrs,
48
+ disabled
49
+ },
50
+ onGlobalKeyDown
36
51
  } = React__default["default"].useContext(ControlledDateTimePickerCTX.ControlledDateTimePickerContext);
37
52
  const resetLatestInteraction = React__default["default"].useCallback(() => {
38
53
  setLatestInteractionRegion('');
@@ -44,18 +59,24 @@ const ControlledDateTimePickerContent = () => {
44
59
  const rightControlCols = [];
45
60
  if (shouldPreserveClearableSpace) rightControlCols.push('28px');
46
61
  if (withAnyPicker) rightControlCols.push('auto');
47
- return /*#__PURE__*/_jsx__default["default"](Styleds.StyledInputsWrapperGrid, {
48
- cols: mainCols,
49
- gutter: "xxs",
50
- pr: hideDatePicker && hideTimePicker && hideDateTimePicker ? '2px' : null,
51
- justPicker: hideDate && hideTime,
52
- withAnyPicker: withAnyPicker,
53
- onBlur: resetLatestInteraction,
54
- hasError: hasError,
55
- isControllerOnly: isControllerOnly
56
- }, void 0, hideDate ? null : _DateInputs || (_DateInputs = /*#__PURE__*/_jsx__default["default"](DateInputs.DateInputs, {})), hideTime ? null : _TimeInputs || (_TimeInputs = /*#__PURE__*/_jsx__default["default"](TimeInputs.TimeInputs, {})), withAnyRightController ? /*#__PURE__*/_jsx__default["default"](dsGrid.Grid, {
57
- cols: rightControlCols
58
- }, void 0, shouldPreserveClearableSpace ? _ClearButton || (_ClearButton = /*#__PURE__*/_jsx__default["default"](ClearButton.ClearButton, {})) : null, withAnyPicker ? _PickersIcons || (_PickersIcons = /*#__PURE__*/_jsx__default["default"](PickersIcons.PickersIcons, {})) : null) : null);
62
+ return /*#__PURE__*/jsxRuntime.jsx(jsxRuntime.Fragment, {
63
+ children: /*#__PURE__*/jsxRuntime.jsxs(Styleds.StyledInputsWrapperGrid, _objectSpread(_objectSpread({
64
+ cols: mainCols,
65
+ gutter: "xxs",
66
+ pr: hideDatePicker && hideTimePicker && hideDateTimePicker ? '2px' : null,
67
+ justPicker: hideDate && hideTime,
68
+ withAnyPicker: withAnyPicker,
69
+ onBlur: resetLatestInteraction,
70
+ onKeyDown: onGlobalKeyDown,
71
+ hasError: hasError,
72
+ isControllerOnly: isControllerOnly,
73
+ disabled: disabled
74
+ }, dataAttrs), {}, {
75
+ children: [hideDate ? null : _DateInputs || (_DateInputs = /*#__PURE__*/_jsx__default["default"](DateInputs.DateInputs, {})), hideTime ? null : _TimeInputs || (_TimeInputs = /*#__PURE__*/_jsx__default["default"](TimeInputs.TimeInputs, {})), withAnyRightController ? /*#__PURE__*/_jsx__default["default"](dsGrid.Grid, {
76
+ cols: rightControlCols
77
+ }, void 0, shouldPreserveClearableSpace ? _ClearButton || (_ClearButton = /*#__PURE__*/_jsx__default["default"](ClearButton.ClearButton, {})) : null, withAnyPicker ? _PickersIcons || (_PickersIcons = /*#__PURE__*/_jsx__default["default"](PickersIcons.PickersIcons, {})) : null) : null]
78
+ }))
79
+ });
59
80
  };
60
81
 
61
82
  exports.ControlledDateTimePickerContent = ControlledDateTimePickerContent;
@@ -19,16 +19,18 @@ const isInvalidDay = day => {
19
19
  return day.length > 2 || day === '00' || !numberOnly || Number.parseInt(day, 10) > 31;
20
20
  };
21
21
 
22
- const DDInput = /*#__PURE__*/React__default["default"].memo(({
23
- onChange,
24
- onBlur,
25
- onFocus,
26
- onKeyDown,
27
- value,
28
- contextRef,
29
- placeholder,
30
- ariaCurrentValueForInputs
31
- }) => {
22
+ const DDInput = /*#__PURE__*/React__default["default"].memo(_ref => {
23
+ let {
24
+ onChange,
25
+ onBlur,
26
+ onFocus,
27
+ onKeyDown,
28
+ value,
29
+ disabled,
30
+ contextRef,
31
+ placeholder,
32
+ ariaCurrentValueForInputs
33
+ } = _ref;
32
34
  const validateOnChange = React.useCallback(e => {
33
35
  var _e$target;
34
36
 
@@ -48,7 +50,9 @@ const DDInput = /*#__PURE__*/React__default["default"].memo(({
48
50
  ref: contextRef,
49
51
  placeholder: placeholder,
50
52
  "aria-label": "day input field, ".concat(ariaCurrentValueForInputs),
51
- "data-testid": ControlledDateTimePickerDatatestid.ControlledDateTimePickerDatatestid.DATE_INPUTS.DAY
53
+ "data-testid": ControlledDateTimePickerDatatestid.ControlledDateTimePickerDatatestid.DATE_INPUTS.DAY,
54
+ disabled: disabled,
55
+ "aria-disabled": disabled
52
56
  });
53
57
  });
54
58
 
@@ -35,7 +35,8 @@ const DateInputs = () => {
35
35
  onYearFocus,
36
36
  onMonthKeyDown,
37
37
  onDayKeyDown,
38
- onYearKeyDown
38
+ onYearKeyDown,
39
+ disabled
39
40
  } = useDateInputs.useDateInputs(); // we do this here so MMInput,DDInput,YYYYInput can be pure component memoized via React.memo
40
41
 
41
42
  const {
@@ -55,7 +56,8 @@ const DateInputs = () => {
55
56
  contextRef: monthInputRef,
56
57
  autoFocusMonthInput: autoFocusMonthInput,
57
58
  placeholder: "MM",
58
- ariaCurrentValueForInputs: ariaCurrentValueForInputs
59
+ ariaCurrentValueForInputs: ariaCurrentValueForInputs,
60
+ disabled: disabled
59
61
  })), _StyledSeparator || (_StyledSeparator = /*#__PURE__*/_jsx__default["default"](Styleds.StyledSeparator, {
60
62
  alignItems: "center"
61
63
  }, void 0, "/")), /*#__PURE__*/_jsx__default["default"](Styleds.StyledFocusWithIn, {}, void 0, /*#__PURE__*/_jsx__default["default"](DDInput.DDInput, {
@@ -66,7 +68,8 @@ const DateInputs = () => {
66
68
  value: day,
67
69
  contextRef: dayInputRef,
68
70
  placeholder: "DD",
69
- ariaCurrentValueForInputs: ariaCurrentValueForInputs
71
+ ariaCurrentValueForInputs: ariaCurrentValueForInputs,
72
+ disabled: disabled
70
73
  })), _StyledSeparator2 || (_StyledSeparator2 = /*#__PURE__*/_jsx__default["default"](Styleds.StyledSeparator, {
71
74
  alignItems: "center"
72
75
  }, void 0, "/")), /*#__PURE__*/_jsx__default["default"](Styleds.StyledFocusWithIn, {}, void 0, /*#__PURE__*/_jsx__default["default"](YYYYInput.YYYYInput, {
@@ -77,7 +80,8 @@ const DateInputs = () => {
77
80
  value: year,
78
81
  contextRef: yearInputRef,
79
82
  placeholder: "YYYY",
80
- ariaCurrentValueForInputs: ariaCurrentValueForInputs
83
+ ariaCurrentValueForInputs: ariaCurrentValueForInputs,
84
+ disabled: disabled
81
85
  })));
82
86
  };
83
87
 
@@ -19,17 +19,19 @@ const isInvalidMonth = month => {
19
19
  return month.length > 2 || month === '00' || !numberOnly || Number.parseInt(month, 10) > 12;
20
20
  };
21
21
 
22
- const MMInput = /*#__PURE__*/React__default["default"].memo(({
23
- onChange,
24
- onBlur,
25
- onFocus,
26
- onKeyDown,
27
- value,
28
- placeholder,
29
- contextRef,
30
- autoFocusMonthInput,
31
- ariaCurrentValueForInputs
32
- }) => {
22
+ const MMInput = /*#__PURE__*/React__default["default"].memo(_ref => {
23
+ let {
24
+ onChange,
25
+ onBlur,
26
+ onFocus,
27
+ onKeyDown,
28
+ value,
29
+ disabled,
30
+ placeholder,
31
+ contextRef,
32
+ autoFocusMonthInput,
33
+ ariaCurrentValueForInputs
34
+ } = _ref;
33
35
  const validateOnChange = React.useCallback(e => {
34
36
  var _e$target;
35
37
 
@@ -50,7 +52,9 @@ const MMInput = /*#__PURE__*/React__default["default"].memo(({
50
52
  ref: contextRef,
51
53
  placeholder: placeholder,
52
54
  "aria-label": "month input field, ".concat(ariaCurrentValueForInputs),
53
- "data-testid": ControlledDateTimePickerDatatestid.ControlledDateTimePickerDatatestid.DATE_INPUTS.MONTH
55
+ "data-testid": ControlledDateTimePickerDatatestid.ControlledDateTimePickerDatatestid.DATE_INPUTS.MONTH,
56
+ disabled: disabled,
57
+ "aria-disabled": disabled
54
58
  });
55
59
  });
56
60
 
@@ -19,16 +19,18 @@ const isInvalidYear = year => {
19
19
  return year.length > 4 || !numberOnly || Number.parseInt(year, 10) > 9999;
20
20
  };
21
21
 
22
- const YYYYInput = /*#__PURE__*/React__default["default"].memo(({
23
- onChange,
24
- onBlur,
25
- onFocus,
26
- onKeyDown,
27
- value,
28
- placeholder,
29
- contextRef,
30
- ariaCurrentValueForInputs
31
- }) => {
22
+ const YYYYInput = /*#__PURE__*/React__default["default"].memo(_ref => {
23
+ let {
24
+ onChange,
25
+ onBlur,
26
+ onFocus,
27
+ onKeyDown,
28
+ value,
29
+ disabled,
30
+ placeholder,
31
+ contextRef,
32
+ ariaCurrentValueForInputs
33
+ } = _ref;
32
34
  const validateOnChange = React.useCallback(e => {
33
35
  var _e$target;
34
36
 
@@ -48,7 +50,9 @@ const YYYYInput = /*#__PURE__*/React__default["default"].memo(({
48
50
  ref: contextRef,
49
51
  placeholder: placeholder,
50
52
  "aria-label": "year input field, ".concat(ariaCurrentValueForInputs),
51
- "data-testid": ControlledDateTimePickerDatatestid.ControlledDateTimePickerDatatestid.DATE_INPUTS.YEAR
53
+ "data-testid": ControlledDateTimePickerDatatestid.ControlledDateTimePickerDatatestid.DATE_INPUTS.YEAR,
54
+ disabled: disabled,
55
+ "aria-disabled": disabled
52
56
  });
53
57
  });
54
58