@elliemae/ds-form-date-time-picker 3.15.0 → 3.16.0-next.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 (402) hide show
  1. package/dist/cjs/ControlledDateTimePicker.js +7 -7
  2. package/dist/cjs/ControlledDateTimePicker.js.map +2 -2
  3. package/dist/cjs/ControlledDateTimePickerCTX.js.map +1 -1
  4. package/dist/cjs/config/useChangeHandlers.js +4 -4
  5. package/dist/cjs/config/useChangeHandlers.js.map +2 -2
  6. package/dist/cjs/config/useControlledDateTimePicker.js +13 -13
  7. package/dist/cjs/config/useControlledDateTimePicker.js.map +2 -2
  8. package/dist/cjs/config/useFocusTracker.js.map +1 -1
  9. package/dist/cjs/config/useGetDestructuredValues.js +3 -3
  10. package/dist/cjs/config/useGetDestructuredValues.js.map +1 -1
  11. package/dist/cjs/config/useGetFlags.js +8 -8
  12. package/dist/cjs/config/useGetFlags.js.map +2 -2
  13. package/dist/cjs/config/useGetPropsBasedOnType.js +1 -1
  14. package/dist/cjs/config/useGetPropsBasedOnType.js.map +1 -1
  15. package/dist/cjs/config/useGetPropsWithDefault.js +3 -3
  16. package/dist/cjs/config/useGetPropsWithDefault.js.map +2 -2
  17. package/dist/cjs/config/useGetReferences.js.map +1 -1
  18. package/dist/cjs/config/useGlobalKeyHandlers.js +3 -3
  19. package/dist/cjs/config/useGlobalKeyHandlers.js.map +1 -1
  20. package/dist/cjs/config/useRelevantValueFromProps.js +2 -2
  21. package/dist/cjs/config/useRelevantValueFromProps.js.map +1 -1
  22. package/dist/cjs/config/useValidateProps.js +3 -3
  23. package/dist/cjs/config/useValidateProps.js.map +1 -1
  24. package/dist/cjs/index.js +9 -9
  25. package/dist/cjs/index.js.map +1 -1
  26. package/dist/cjs/package.json +7 -0
  27. package/dist/cjs/parts/ClearButton/ClearButton.js +12 -6
  28. package/dist/cjs/parts/ClearButton/ClearButton.js.map +3 -3
  29. package/dist/cjs/parts/ClearButton/useClearButton.js +1 -1
  30. package/dist/cjs/parts/ClearButton/useClearButton.js.map +1 -1
  31. package/dist/cjs/parts/ControlledDateTimePickerContent.js +15 -8
  32. package/dist/cjs/parts/ControlledDateTimePickerContent.js.map +3 -3
  33. package/dist/cjs/parts/DateInputs/DDInput.js +6 -4
  34. package/dist/cjs/parts/DateInputs/DDInput.js.map +2 -2
  35. package/dist/cjs/parts/DateInputs/DateInputs.js +30 -12
  36. package/dist/cjs/parts/DateInputs/DateInputs.js.map +3 -3
  37. package/dist/cjs/parts/DateInputs/MMInput.js +6 -4
  38. package/dist/cjs/parts/DateInputs/MMInput.js.map +2 -2
  39. package/dist/cjs/parts/DateInputs/YYYYInput.js +6 -4
  40. package/dist/cjs/parts/DateInputs/YYYYInput.js.map +2 -2
  41. package/dist/cjs/parts/DateInputs/useDateInputs.js +5 -5
  42. package/dist/cjs/parts/DateInputs/useDateInputs.js.map +2 -2
  43. package/dist/cjs/parts/Pickers/Calendar/Calendar.js +5 -5
  44. package/dist/cjs/parts/Pickers/Calendar/Calendar.js.map +2 -2
  45. package/dist/cjs/parts/Pickers/Calendar/CalendarBody.js +3 -3
  46. package/dist/cjs/parts/Pickers/Calendar/CalendarBody.js.map +1 -1
  47. package/dist/cjs/parts/Pickers/Calendar/CalendarContent.js +15 -7
  48. package/dist/cjs/parts/Pickers/Calendar/CalendarContent.js.map +3 -3
  49. package/dist/cjs/parts/Pickers/Calendar/CalendarContext.js.map +1 -1
  50. package/dist/cjs/parts/Pickers/Calendar/CalendarDaysList.js +2 -2
  51. package/dist/cjs/parts/Pickers/Calendar/CalendarDaysList.js.map +1 -1
  52. package/dist/cjs/parts/Pickers/Calendar/CalendarFooter.js +19 -5
  53. package/dist/cjs/parts/Pickers/Calendar/CalendarFooter.js.map +3 -3
  54. package/dist/cjs/parts/Pickers/Calendar/CalendarHead.js +40 -7
  55. package/dist/cjs/parts/Pickers/Calendar/CalendarHead.js.map +2 -2
  56. package/dist/cjs/parts/Pickers/Calendar/CalendarIconTrigger.js +20 -6
  57. package/dist/cjs/parts/Pickers/Calendar/CalendarIconTrigger.js.map +3 -3
  58. package/dist/cjs/parts/Pickers/Calendar/CalendarMonthDays.js +3 -3
  59. package/dist/cjs/parts/Pickers/Calendar/CalendarMonthDays.js.map +2 -2
  60. package/dist/cjs/parts/Pickers/Calendar/CalendarWeekDays.js +1 -1
  61. package/dist/cjs/parts/Pickers/Calendar/CalendarWeekDays.js.map +1 -1
  62. package/dist/cjs/parts/Pickers/Calendar/CalendarWrapper.js +12 -6
  63. package/dist/cjs/parts/Pickers/Calendar/CalendarWrapper.js.map +3 -3
  64. package/dist/cjs/parts/Pickers/Calendar/Day.js +11 -7
  65. package/dist/cjs/parts/Pickers/Calendar/Day.js.map +2 -2
  66. package/dist/cjs/parts/Pickers/Calendar/Styleds.js +1 -1
  67. package/dist/cjs/parts/Pickers/Calendar/Styleds.js.map +1 -1
  68. package/dist/cjs/parts/Pickers/Calendar/useConfigCalendarCTX.js +5 -5
  69. package/dist/cjs/parts/Pickers/Calendar/useConfigCalendarCTX.js.map +1 -1
  70. package/dist/cjs/parts/Pickers/Calendar/useCurrentDisplayedMonthYearLogic.js +2 -2
  71. package/dist/cjs/parts/Pickers/Calendar/useCurrentDisplayedMonthYearLogic.js.map +1 -1
  72. package/dist/cjs/parts/Pickers/Calendar/useFocusLogic.js +2 -2
  73. package/dist/cjs/parts/Pickers/Calendar/useFocusLogic.js.map +1 -1
  74. package/dist/cjs/parts/Pickers/Calendar/useKeyboardHandlers.js +2 -2
  75. package/dist/cjs/parts/Pickers/Calendar/useKeyboardHandlers.js.map +1 -1
  76. package/dist/cjs/parts/Pickers/Calendar/usePopperTriggerLogic.js +1 -1
  77. package/dist/cjs/parts/Pickers/Calendar/usePopperTriggerLogic.js.map +1 -1
  78. package/dist/cjs/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheel.js +6 -6
  79. package/dist/cjs/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheel.js.map +1 -1
  80. package/dist/cjs/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelContent.js +13 -7
  81. package/dist/cjs/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelContent.js.map +3 -3
  82. package/dist/cjs/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelContext.js.map +1 -1
  83. package/dist/cjs/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelFooter.js +11 -4
  84. package/dist/cjs/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelFooter.js.map +3 -3
  85. package/dist/cjs/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelIconTrigger.js +13 -4
  86. package/dist/cjs/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelIconTrigger.js.map +3 -3
  87. package/dist/cjs/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelWrapper.js +12 -4
  88. package/dist/cjs/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelWrapper.js.map +3 -3
  89. package/dist/cjs/parts/Pickers/CalendarWithTimeWheel/Styleds.js +2 -2
  90. package/dist/cjs/parts/Pickers/CalendarWithTimeWheel/Styleds.js.map +1 -1
  91. package/dist/cjs/parts/Pickers/CalendarWithTimeWheel/useConfigCalendarWithTimeWheelCTX.js +4 -4
  92. package/dist/cjs/parts/Pickers/CalendarWithTimeWheel/useConfigCalendarWithTimeWheelCTX.js.map +1 -1
  93. package/dist/cjs/parts/Pickers/PickersIcons.js +5 -5
  94. package/dist/cjs/parts/Pickers/PickersIcons.js.map +1 -1
  95. package/dist/cjs/parts/Pickers/TimeWheel/HoursList.js +28 -7
  96. package/dist/cjs/parts/Pickers/TimeWheel/HoursList.js.map +3 -3
  97. package/dist/cjs/parts/Pickers/TimeWheel/MeridiemList.js +28 -6
  98. package/dist/cjs/parts/Pickers/TimeWheel/MeridiemList.js.map +3 -3
  99. package/dist/cjs/parts/Pickers/TimeWheel/MinutesList.js +28 -7
  100. package/dist/cjs/parts/Pickers/TimeWheel/MinutesList.js.map +3 -3
  101. package/dist/cjs/parts/Pickers/TimeWheel/Styleds.js +1 -1
  102. package/dist/cjs/parts/Pickers/TimeWheel/Styleds.js.map +1 -1
  103. package/dist/cjs/parts/Pickers/TimeWheel/TimeWheel.js +5 -5
  104. package/dist/cjs/parts/Pickers/TimeWheel/TimeWheel.js.map +1 -1
  105. package/dist/cjs/parts/Pickers/TimeWheel/TimeWheelContent.js +26 -9
  106. package/dist/cjs/parts/Pickers/TimeWheel/TimeWheelContent.js.map +2 -2
  107. package/dist/cjs/parts/Pickers/TimeWheel/TimeWheelContext.js.map +1 -1
  108. package/dist/cjs/parts/Pickers/TimeWheel/TimeWheelFooter.js +19 -5
  109. package/dist/cjs/parts/Pickers/TimeWheel/TimeWheelFooter.js.map +3 -3
  110. package/dist/cjs/parts/Pickers/TimeWheel/TimeWheelIconTrigger.js +20 -6
  111. package/dist/cjs/parts/Pickers/TimeWheel/TimeWheelIconTrigger.js.map +3 -3
  112. package/dist/cjs/parts/Pickers/TimeWheel/TimeWheelWrapper.js +12 -6
  113. package/dist/cjs/parts/Pickers/TimeWheel/TimeWheelWrapper.js.map +3 -3
  114. package/dist/cjs/parts/Pickers/TimeWheel/useConfigTimePickerCTX.js +3 -3
  115. package/dist/cjs/parts/Pickers/TimeWheel/useConfigTimePickerCTX.js.map +1 -1
  116. package/dist/cjs/parts/Pickers/TimeWheel/useCurrentDisplayedWheelsLogic.js +4 -4
  117. package/dist/cjs/parts/Pickers/TimeWheel/useCurrentDisplayedWheelsLogic.js.map +1 -1
  118. package/dist/cjs/parts/Pickers/TimeWheel/useKeyboardHandlers.js +1 -1
  119. package/dist/cjs/parts/Pickers/TimeWheel/useKeyboardHandlers.js.map +1 -1
  120. package/dist/cjs/parts/Pickers/TimeWheel/usePopperTriggerLogic.js +1 -1
  121. package/dist/cjs/parts/Pickers/TimeWheel/usePopperTriggerLogic.js.map +1 -1
  122. package/dist/cjs/parts/Styleds.js +1 -1
  123. package/dist/cjs/parts/Styleds.js.map +1 -1
  124. package/dist/cjs/parts/TimeInputs/HHInput.js +6 -4
  125. package/dist/cjs/parts/TimeInputs/HHInput.js.map +2 -2
  126. package/dist/cjs/parts/TimeInputs/MeridiemInput.js +6 -4
  127. package/dist/cjs/parts/TimeInputs/MeridiemInput.js.map +2 -2
  128. package/dist/cjs/parts/TimeInputs/MinutesInput.js +6 -4
  129. package/dist/cjs/parts/TimeInputs/MinutesInput.js.map +2 -2
  130. package/dist/cjs/parts/TimeInputs/TimeInputs.js +30 -12
  131. package/dist/cjs/parts/TimeInputs/TimeInputs.js.map +3 -3
  132. package/dist/cjs/parts/TimeInputs/useTimeInputs.js +2 -2
  133. package/dist/cjs/parts/TimeInputs/useTimeInputs.js.map +1 -1
  134. package/dist/cjs/propTypes.js +28 -26
  135. package/dist/cjs/propTypes.js.map +2 -2
  136. package/dist/cjs/sharedTypes.js.map +1 -1
  137. package/dist/cjs/tests/custom-props/customProps.js +233 -0
  138. package/dist/cjs/tests/custom-props/customProps.js.map +7 -0
  139. package/dist/cjs/utils/dateHelpers.js +3 -3
  140. package/dist/cjs/utils/dateHelpers.js.map +1 -1
  141. package/dist/cjs/utils/dateTimeHelpers.js +2 -2
  142. package/dist/cjs/utils/dateTimeHelpers.js.map +1 -1
  143. package/dist/cjs/utils/hooks/useGetDayFromDateString.js +2 -2
  144. package/dist/cjs/utils/hooks/useGetDayFromDateString.js.map +1 -1
  145. package/dist/cjs/utils/hooks/useGetMonthYearFromDateStringOrEmptyStartingMonth.js +2 -2
  146. package/dist/cjs/utils/hooks/useGetMonthYearFromDateStringOrEmptyStartingMonth.js.map +1 -1
  147. package/dist/cjs/utils/hooks/useGetStartingFocusedDay.js +5 -5
  148. package/dist/cjs/utils/hooks/useGetStartingFocusedDay.js.map +1 -1
  149. package/dist/cjs/utils/stringHelpers.js +2 -2
  150. package/dist/cjs/utils/stringHelpers.js.map +1 -1
  151. package/dist/cjs/utils/timeHelpers.js +1 -1
  152. package/dist/cjs/utils/timeHelpers.js.map +1 -1
  153. package/dist/cjs/utils/typeGuards.js.map +1 -1
  154. package/dist/esm/ControlledDateTimePicker.js +6 -6
  155. package/dist/esm/ControlledDateTimePicker.js.map +1 -1
  156. package/dist/esm/ControlledDateTimePickerCTX.js.map +1 -1
  157. package/dist/esm/config/useChangeHandlers.js +4 -4
  158. package/dist/esm/config/useChangeHandlers.js.map +2 -2
  159. package/dist/esm/config/useControlledDateTimePicker.js +11 -11
  160. package/dist/esm/config/useControlledDateTimePicker.js.map +1 -1
  161. package/dist/esm/config/useFocusTracker.js.map +1 -1
  162. package/dist/esm/config/useGetDestructuredValues.js +3 -3
  163. package/dist/esm/config/useGetDestructuredValues.js.map +1 -1
  164. package/dist/esm/config/useGetFlags.js +8 -8
  165. package/dist/esm/config/useGetFlags.js.map +2 -2
  166. package/dist/esm/config/useGetPropsBasedOnType.js +1 -1
  167. package/dist/esm/config/useGetPropsBasedOnType.js.map +1 -1
  168. package/dist/esm/config/useGetPropsWithDefault.js +2 -2
  169. package/dist/esm/config/useGetPropsWithDefault.js.map +1 -1
  170. package/dist/esm/config/useGetReferences.js.map +1 -1
  171. package/dist/esm/config/useGlobalKeyHandlers.js +3 -3
  172. package/dist/esm/config/useGlobalKeyHandlers.js.map +1 -1
  173. package/dist/esm/config/useRelevantValueFromProps.js +2 -2
  174. package/dist/esm/config/useRelevantValueFromProps.js.map +1 -1
  175. package/dist/esm/config/useValidateProps.js +3 -3
  176. package/dist/esm/config/useValidateProps.js.map +1 -1
  177. package/dist/esm/index.js +9 -9
  178. package/dist/esm/index.js.map +1 -1
  179. package/dist/esm/package.json +7 -0
  180. package/dist/esm/parts/ClearButton/ClearButton.js +12 -6
  181. package/dist/esm/parts/ClearButton/ClearButton.js.map +3 -3
  182. package/dist/esm/parts/ClearButton/useClearButton.js +1 -1
  183. package/dist/esm/parts/ClearButton/useClearButton.js.map +1 -1
  184. package/dist/esm/parts/ControlledDateTimePickerContent.js +15 -8
  185. package/dist/esm/parts/ControlledDateTimePickerContent.js.map +3 -3
  186. package/dist/esm/parts/DateInputs/DDInput.js +6 -4
  187. package/dist/esm/parts/DateInputs/DDInput.js.map +2 -2
  188. package/dist/esm/parts/DateInputs/DateInputs.js +30 -12
  189. package/dist/esm/parts/DateInputs/DateInputs.js.map +3 -3
  190. package/dist/esm/parts/DateInputs/MMInput.js +6 -4
  191. package/dist/esm/parts/DateInputs/MMInput.js.map +2 -2
  192. package/dist/esm/parts/DateInputs/YYYYInput.js +6 -4
  193. package/dist/esm/parts/DateInputs/YYYYInput.js.map +2 -2
  194. package/dist/esm/parts/DateInputs/useDateInputs.js +5 -5
  195. package/dist/esm/parts/DateInputs/useDateInputs.js.map +2 -2
  196. package/dist/esm/parts/Pickers/Calendar/Calendar.js +5 -5
  197. package/dist/esm/parts/Pickers/Calendar/Calendar.js.map +2 -2
  198. package/dist/esm/parts/Pickers/Calendar/CalendarBody.js +3 -3
  199. package/dist/esm/parts/Pickers/Calendar/CalendarBody.js.map +1 -1
  200. package/dist/esm/parts/Pickers/Calendar/CalendarContent.js +15 -7
  201. package/dist/esm/parts/Pickers/Calendar/CalendarContent.js.map +3 -3
  202. package/dist/esm/parts/Pickers/Calendar/CalendarContext.js.map +1 -1
  203. package/dist/esm/parts/Pickers/Calendar/CalendarDaysList.js +2 -2
  204. package/dist/esm/parts/Pickers/Calendar/CalendarDaysList.js.map +1 -1
  205. package/dist/esm/parts/Pickers/Calendar/CalendarFooter.js +19 -5
  206. package/dist/esm/parts/Pickers/Calendar/CalendarFooter.js.map +3 -3
  207. package/dist/esm/parts/Pickers/Calendar/CalendarHead.js +40 -7
  208. package/dist/esm/parts/Pickers/Calendar/CalendarHead.js.map +2 -2
  209. package/dist/esm/parts/Pickers/Calendar/CalendarIconTrigger.js +20 -6
  210. package/dist/esm/parts/Pickers/Calendar/CalendarIconTrigger.js.map +3 -3
  211. package/dist/esm/parts/Pickers/Calendar/CalendarMonthDays.js +3 -3
  212. package/dist/esm/parts/Pickers/Calendar/CalendarMonthDays.js.map +2 -2
  213. package/dist/esm/parts/Pickers/Calendar/CalendarWeekDays.js +1 -1
  214. package/dist/esm/parts/Pickers/Calendar/CalendarWeekDays.js.map +1 -1
  215. package/dist/esm/parts/Pickers/Calendar/CalendarWrapper.js +12 -6
  216. package/dist/esm/parts/Pickers/Calendar/CalendarWrapper.js.map +3 -3
  217. package/dist/esm/parts/Pickers/Calendar/Day.js +11 -7
  218. package/dist/esm/parts/Pickers/Calendar/Day.js.map +2 -2
  219. package/dist/esm/parts/Pickers/Calendar/Styleds.js +1 -1
  220. package/dist/esm/parts/Pickers/Calendar/Styleds.js.map +1 -1
  221. package/dist/esm/parts/Pickers/Calendar/useConfigCalendarCTX.js +5 -5
  222. package/dist/esm/parts/Pickers/Calendar/useConfigCalendarCTX.js.map +1 -1
  223. package/dist/esm/parts/Pickers/Calendar/useCurrentDisplayedMonthYearLogic.js +2 -2
  224. package/dist/esm/parts/Pickers/Calendar/useCurrentDisplayedMonthYearLogic.js.map +1 -1
  225. package/dist/esm/parts/Pickers/Calendar/useFocusLogic.js +2 -2
  226. package/dist/esm/parts/Pickers/Calendar/useFocusLogic.js.map +1 -1
  227. package/dist/esm/parts/Pickers/Calendar/useKeyboardHandlers.js +2 -2
  228. package/dist/esm/parts/Pickers/Calendar/useKeyboardHandlers.js.map +1 -1
  229. package/dist/esm/parts/Pickers/Calendar/usePopperTriggerLogic.js +1 -1
  230. package/dist/esm/parts/Pickers/Calendar/usePopperTriggerLogic.js.map +1 -1
  231. package/dist/esm/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheel.js +6 -6
  232. package/dist/esm/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheel.js.map +1 -1
  233. package/dist/esm/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelContent.js +13 -7
  234. package/dist/esm/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelContent.js.map +3 -3
  235. package/dist/esm/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelContext.js.map +1 -1
  236. package/dist/esm/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelFooter.js +11 -4
  237. package/dist/esm/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelFooter.js.map +3 -3
  238. package/dist/esm/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelIconTrigger.js +13 -4
  239. package/dist/esm/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelIconTrigger.js.map +3 -3
  240. package/dist/esm/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelWrapper.js +12 -4
  241. package/dist/esm/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelWrapper.js.map +3 -3
  242. package/dist/esm/parts/Pickers/CalendarWithTimeWheel/Styleds.js +2 -2
  243. package/dist/esm/parts/Pickers/CalendarWithTimeWheel/Styleds.js.map +1 -1
  244. package/dist/esm/parts/Pickers/CalendarWithTimeWheel/useConfigCalendarWithTimeWheelCTX.js +4 -4
  245. package/dist/esm/parts/Pickers/CalendarWithTimeWheel/useConfigCalendarWithTimeWheelCTX.js.map +1 -1
  246. package/dist/esm/parts/Pickers/PickersIcons.js +5 -5
  247. package/dist/esm/parts/Pickers/PickersIcons.js.map +1 -1
  248. package/dist/esm/parts/Pickers/TimeWheel/HoursList.js +28 -7
  249. package/dist/esm/parts/Pickers/TimeWheel/HoursList.js.map +3 -3
  250. package/dist/esm/parts/Pickers/TimeWheel/MeridiemList.js +28 -6
  251. package/dist/esm/parts/Pickers/TimeWheel/MeridiemList.js.map +3 -3
  252. package/dist/esm/parts/Pickers/TimeWheel/MinutesList.js +28 -7
  253. package/dist/esm/parts/Pickers/TimeWheel/MinutesList.js.map +3 -3
  254. package/dist/esm/parts/Pickers/TimeWheel/Styleds.js +1 -1
  255. package/dist/esm/parts/Pickers/TimeWheel/Styleds.js.map +1 -1
  256. package/dist/esm/parts/Pickers/TimeWheel/TimeWheel.js +5 -5
  257. package/dist/esm/parts/Pickers/TimeWheel/TimeWheel.js.map +1 -1
  258. package/dist/esm/parts/Pickers/TimeWheel/TimeWheelContent.js +26 -9
  259. package/dist/esm/parts/Pickers/TimeWheel/TimeWheelContent.js.map +2 -2
  260. package/dist/esm/parts/Pickers/TimeWheel/TimeWheelContext.js.map +1 -1
  261. package/dist/esm/parts/Pickers/TimeWheel/TimeWheelFooter.js +19 -5
  262. package/dist/esm/parts/Pickers/TimeWheel/TimeWheelFooter.js.map +3 -3
  263. package/dist/esm/parts/Pickers/TimeWheel/TimeWheelIconTrigger.js +20 -6
  264. package/dist/esm/parts/Pickers/TimeWheel/TimeWheelIconTrigger.js.map +3 -3
  265. package/dist/esm/parts/Pickers/TimeWheel/TimeWheelWrapper.js +12 -6
  266. package/dist/esm/parts/Pickers/TimeWheel/TimeWheelWrapper.js.map +3 -3
  267. package/dist/esm/parts/Pickers/TimeWheel/useConfigTimePickerCTX.js +3 -3
  268. package/dist/esm/parts/Pickers/TimeWheel/useConfigTimePickerCTX.js.map +1 -1
  269. package/dist/esm/parts/Pickers/TimeWheel/useCurrentDisplayedWheelsLogic.js +4 -4
  270. package/dist/esm/parts/Pickers/TimeWheel/useCurrentDisplayedWheelsLogic.js.map +1 -1
  271. package/dist/esm/parts/Pickers/TimeWheel/useKeyboardHandlers.js +1 -1
  272. package/dist/esm/parts/Pickers/TimeWheel/useKeyboardHandlers.js.map +1 -1
  273. package/dist/esm/parts/Pickers/TimeWheel/usePopperTriggerLogic.js +1 -1
  274. package/dist/esm/parts/Pickers/TimeWheel/usePopperTriggerLogic.js.map +1 -1
  275. package/dist/esm/parts/Styleds.js +1 -1
  276. package/dist/esm/parts/Styleds.js.map +1 -1
  277. package/dist/esm/parts/TimeInputs/HHInput.js +6 -4
  278. package/dist/esm/parts/TimeInputs/HHInput.js.map +2 -2
  279. package/dist/esm/parts/TimeInputs/MeridiemInput.js +6 -4
  280. package/dist/esm/parts/TimeInputs/MeridiemInput.js.map +2 -2
  281. package/dist/esm/parts/TimeInputs/MinutesInput.js +6 -4
  282. package/dist/esm/parts/TimeInputs/MinutesInput.js.map +2 -2
  283. package/dist/esm/parts/TimeInputs/TimeInputs.js +30 -12
  284. package/dist/esm/parts/TimeInputs/TimeInputs.js.map +3 -3
  285. package/dist/esm/parts/TimeInputs/useTimeInputs.js +2 -2
  286. package/dist/esm/parts/TimeInputs/useTimeInputs.js.map +1 -1
  287. package/dist/esm/propTypes.js +9 -2
  288. package/dist/esm/propTypes.js.map +2 -2
  289. package/dist/esm/tests/custom-props/customProps.js +207 -0
  290. package/dist/esm/tests/custom-props/customProps.js.map +7 -0
  291. package/dist/esm/utils/dateHelpers.js +3 -3
  292. package/dist/esm/utils/dateHelpers.js.map +1 -1
  293. package/dist/esm/utils/dateTimeHelpers.js +2 -2
  294. package/dist/esm/utils/dateTimeHelpers.js.map +1 -1
  295. package/dist/esm/utils/hooks/useGetDayFromDateString.js +2 -2
  296. package/dist/esm/utils/hooks/useGetDayFromDateString.js.map +1 -1
  297. package/dist/esm/utils/hooks/useGetMonthYearFromDateStringOrEmptyStartingMonth.js +2 -2
  298. package/dist/esm/utils/hooks/useGetMonthYearFromDateStringOrEmptyStartingMonth.js.map +1 -1
  299. package/dist/esm/utils/hooks/useGetStartingFocusedDay.js +5 -5
  300. package/dist/esm/utils/hooks/useGetStartingFocusedDay.js.map +1 -1
  301. package/dist/esm/utils/stringHelpers.js +2 -2
  302. package/dist/esm/utils/stringHelpers.js.map +1 -1
  303. package/dist/esm/utils/timeHelpers.js +1 -1
  304. package/dist/esm/utils/timeHelpers.js.map +1 -1
  305. package/dist/esm/utils/typeGuards.js.map +1 -1
  306. package/package.json +10 -9
  307. package/dist/types/ControlledDateTimePicker.d.ts +0 -7
  308. package/dist/types/ControlledDateTimePickerCTX.d.ts +0 -5
  309. package/dist/types/ControlledDateTimePickerDatatestid.d.ts +0 -63
  310. package/dist/types/ControlledDateTimePickerTypes.d.ts +0 -20
  311. package/dist/types/config/useChangeHandlers.d.ts +0 -27
  312. package/dist/types/config/useControlledDateTimePicker.d.ts +0 -16
  313. package/dist/types/config/useFocusTracker.d.ts +0 -38
  314. package/dist/types/config/useGetDestructuredValues.d.ts +0 -30
  315. package/dist/types/config/useGetFlags.d.ts +0 -30
  316. package/dist/types/config/useGetPropsBasedOnType.d.ts +0 -28
  317. package/dist/types/config/useGetPropsWithDefault.d.ts +0 -2
  318. package/dist/types/config/useGetReferences.d.ts +0 -33
  319. package/dist/types/config/useGlobalKeyHandlers.d.ts +0 -18
  320. package/dist/types/config/useRelevantValueFromProps.d.ts +0 -10
  321. package/dist/types/config/useValidateProps.d.ts +0 -2
  322. package/dist/types/exported-related/theming.d.ts +0 -37
  323. package/dist/types/index.d.ts +0 -9
  324. package/dist/types/parts/ClearButton/ClearButton.d.ts +0 -1
  325. package/dist/types/parts/ClearButton/useClearButton.d.ts +0 -11
  326. package/dist/types/parts/ControlledDateTimePickerContent.d.ts +0 -1
  327. package/dist/types/parts/DateInputs/DDInput.d.ts +0 -16
  328. package/dist/types/parts/DateInputs/DateInputs.d.ts +0 -1
  329. package/dist/types/parts/DateInputs/MMInput.d.ts +0 -18
  330. package/dist/types/parts/DateInputs/YYYYInput.d.ts +0 -16
  331. package/dist/types/parts/DateInputs/useDateInputs.d.ts +0 -2
  332. package/dist/types/parts/Pickers/Calendar/Calendar.d.ts +0 -4
  333. package/dist/types/parts/Pickers/Calendar/CalendarBody.d.ts +0 -6
  334. package/dist/types/parts/Pickers/Calendar/CalendarContent.d.ts +0 -3
  335. package/dist/types/parts/Pickers/Calendar/CalendarContext.d.ts +0 -6
  336. package/dist/types/parts/Pickers/Calendar/CalendarDaysList.d.ts +0 -9
  337. package/dist/types/parts/Pickers/Calendar/CalendarFooter.d.ts +0 -2
  338. package/dist/types/parts/Pickers/Calendar/CalendarHead.d.ts +0 -1
  339. package/dist/types/parts/Pickers/Calendar/CalendarIconTrigger.d.ts +0 -1
  340. package/dist/types/parts/Pickers/Calendar/CalendarMonthDays.d.ts +0 -1
  341. package/dist/types/parts/Pickers/Calendar/CalendarWeekDays.d.ts +0 -2
  342. package/dist/types/parts/Pickers/Calendar/CalendarWrapper.d.ts +0 -1
  343. package/dist/types/parts/Pickers/Calendar/Day.d.ts +0 -8
  344. package/dist/types/parts/Pickers/Calendar/Styleds.d.ts +0 -21
  345. package/dist/types/parts/Pickers/Calendar/useConfigCalendarCTX.d.ts +0 -14
  346. package/dist/types/parts/Pickers/Calendar/useCurrentDisplayedMonthYearLogic.d.ts +0 -15
  347. package/dist/types/parts/Pickers/Calendar/useFocusLogic.d.ts +0 -14
  348. package/dist/types/parts/Pickers/Calendar/useKeyboardHandlers.d.ts +0 -19
  349. package/dist/types/parts/Pickers/Calendar/usePopperTriggerLogic.d.ts +0 -16
  350. package/dist/types/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheel.d.ts +0 -1
  351. package/dist/types/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelContent.d.ts +0 -1
  352. package/dist/types/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelContext.d.ts +0 -6
  353. package/dist/types/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelFooter.d.ts +0 -2
  354. package/dist/types/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelIconTrigger.d.ts +0 -1
  355. package/dist/types/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelWrapper.d.ts +0 -1
  356. package/dist/types/parts/Pickers/CalendarWithTimeWheel/Styleds.d.ts +0 -7
  357. package/dist/types/parts/Pickers/CalendarWithTimeWheel/useConfigCalendarWithTimeWheelCTX.d.ts +0 -14
  358. package/dist/types/parts/Pickers/PickersIcons.d.ts +0 -1
  359. package/dist/types/parts/Pickers/TimeWheel/HoursList.d.ts +0 -1
  360. package/dist/types/parts/Pickers/TimeWheel/MeridiemList.d.ts +0 -2
  361. package/dist/types/parts/Pickers/TimeWheel/MinutesList.d.ts +0 -2
  362. package/dist/types/parts/Pickers/TimeWheel/TimeWheel.d.ts +0 -4
  363. package/dist/types/parts/Pickers/TimeWheel/TimeWheelContent.d.ts +0 -2
  364. package/dist/types/parts/Pickers/TimeWheel/TimeWheelContext.d.ts +0 -6
  365. package/dist/types/parts/Pickers/TimeWheel/TimeWheelFooter.d.ts +0 -2
  366. package/dist/types/parts/Pickers/TimeWheel/TimeWheelIconTrigger.d.ts +0 -1
  367. package/dist/types/parts/Pickers/TimeWheel/TimeWheelWrapper.d.ts +0 -1
  368. package/dist/types/parts/Pickers/TimeWheel/useConfigTimePickerCTX.d.ts +0 -5
  369. package/dist/types/parts/Pickers/TimeWheel/useCurrentDisplayedWheelsLogic.d.ts +0 -17
  370. package/dist/types/parts/Pickers/TimeWheel/useKeyboardHandlers.d.ts +0 -13
  371. package/dist/types/parts/Pickers/TimeWheel/usePopperTriggerLogic.d.ts +0 -12
  372. package/dist/types/parts/Styleds.d.ts +0 -13
  373. package/dist/types/parts/TimeInputs/HHInput.d.ts +0 -17
  374. package/dist/types/parts/TimeInputs/MeridiemInput.d.ts +0 -16
  375. package/dist/types/parts/TimeInputs/MinutesInput.d.ts +0 -16
  376. package/dist/types/parts/TimeInputs/TimeInputs.d.ts +0 -1
  377. package/dist/types/parts/TimeInputs/useTimeInputs.d.ts +0 -22
  378. package/dist/types/parts/config.d.ts +0 -5
  379. package/dist/types/propTypes.d.ts +0 -97
  380. package/dist/types/sharedTypes.d.ts +0 -95
  381. package/dist/types/tests/date-time-picker.auto-advance.test.d.ts +0 -1
  382. package/dist/types/tests/date-time-picker.clear-button.test.d.ts +0 -1
  383. package/dist/types/tests/date-time-picker.keyboard-focus.test.d.ts +0 -1
  384. package/dist/types/tests/date-time-picker.keyboard.data-entry-typing.test.d.ts +0 -1
  385. package/dist/types/tests/date-time-picker.keyboard.fill-with-now.test.d.ts +0 -1
  386. package/dist/types/tests/date-time-picker.keyboard.regressive-backspace.test.d.ts +0 -1
  387. package/dist/types/tests/date-time-picker.keyboard.shortcut-clear.test.d.ts +0 -1
  388. package/dist/types/tests/date-time-picker.manual-delete-values.test.d.ts +0 -1
  389. package/dist/types/tests/date-time-picker.onChange-meta-info.test.d.ts +0 -1
  390. package/dist/types/tests/date-time-picker.types-button.test.d.ts +0 -1
  391. package/dist/types/tests/date-time-picker.types-dom.test.d.ts +0 -1
  392. package/dist/types/utils/constants.d.ts +0 -38
  393. package/dist/types/utils/dateHelpers.d.ts +0 -40
  394. package/dist/types/utils/dateTimeHelpers.d.ts +0 -8
  395. package/dist/types/utils/hooks/useGetDayFromDateString.d.ts +0 -1
  396. package/dist/types/utils/hooks/useGetMonthYearFromDateStringOrEmptyStartingMonth.d.ts +0 -5
  397. package/dist/types/utils/hooks/useGetStartingFocusedDay.d.ts +0 -8
  398. package/dist/types/utils/hooks/useOnClickOutside.d.ts +0 -1
  399. package/dist/types/utils/numberHelpers.d.ts +0 -1
  400. package/dist/types/utils/stringHelpers.d.ts +0 -36
  401. package/dist/types/utils/timeHelpers.d.ts +0 -2
  402. package/dist/types/utils/typeGuards.d.ts +0 -4
@@ -1,8 +1,8 @@
1
1
  import * as React from "react";
2
2
  import { styled } from "@elliemae/ds-system";
3
3
  import { DSButtonV2 } from "@elliemae/ds-button";
4
- import { CalendarContent } from "../Calendar/CalendarContent";
5
- import { DSControlledDateTimePickerName, DSControlledDateTimePickerSlots } from "../../../exported-related/theming";
4
+ import { CalendarContent } from "../Calendar/CalendarContent.js";
5
+ import { DSControlledDateTimePickerName, DSControlledDateTimePickerSlots } from "../../../exported-related/theming.js";
6
6
  const StyledIconTriggerButton = styled(DSButtonV2, {
7
7
  name: DSControlledDateTimePickerName,
8
8
  slot: DSControlledDateTimePickerSlots.PICKER_ICONS.CALENDAR_TIMEWHEEL
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/parts/Pickers/CalendarWithTimeWheel/Styleds.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { styled } from '@elliemae/ds-system';\nimport { DSButtonV2 } from '@elliemae/ds-button';\nimport { CalendarContent } from '../Calendar/CalendarContent';\nimport { DSControlledDateTimePickerName, DSControlledDateTimePickerSlots } from '../../../exported-related/theming';\n\nexport const StyledIconTriggerButton = styled(DSButtonV2, {\n name: DSControlledDateTimePickerName,\n slot: DSControlledDateTimePickerSlots.PICKER_ICONS.CALENDAR_TIMEWHEEL,\n})`\n color: ${({ theme }) => theme.colors.brand['600']};\n width: 26px;\n height: 26px;\n`;\n\nexport const StyledCalendarWithTimeWheelWrapper = styled.div`\n background: ${({ theme }) => theme.colors.neutral['000']};\n display: grid;\n grid-template-columns: 260px 192px;\n grid-template-rows: 1fr;\n column-gap: 0;\n\n & > div:last-of-type {\n box-shadow: -1px 0 0 0 ${({ theme }) => theme.colors.neutral[200]};\n }\n`;\n\nexport const StyledCalendar = styled(CalendarContent)`\n box-shadow: none;\n`;\n\nexport const CalendarWithTimeWheelFooterMessage = styled('footer', {\n name: DSControlledDateTimePickerName,\n slot: DSControlledDateTimePickerSlots.FOOTERS.CALENDAR_TIMEWHEEL,\n})`\n border-top: solid 1px ${({ theme }) => theme.colors.neutral[300]};\n margin: 0 ${({ theme }) => theme.space.xxs2};\n padding: ${({ theme }) => theme.space.xxs2} 0;\n color: ${({ theme }) => theme.colors.danger[900]};\n font-style: italic;\n font-weight: ${({ theme }) => theme.fontWeights.thin};\n font-size: ${({ theme }) => theme.fontSizes.microText[200]};\n text-align: right;\n grid-column: 1/3;\n background-color: white;\n`;\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { styled } from '@elliemae/ds-system';\nimport { DSButtonV2 } from '@elliemae/ds-button';\nimport { CalendarContent } from '../Calendar/CalendarContent.js';\nimport { DSControlledDateTimePickerName, DSControlledDateTimePickerSlots } from '../../../exported-related/theming.js';\n\nexport const StyledIconTriggerButton = styled(DSButtonV2, {\n name: DSControlledDateTimePickerName,\n slot: DSControlledDateTimePickerSlots.PICKER_ICONS.CALENDAR_TIMEWHEEL,\n})`\n color: ${({ theme }) => theme.colors.brand['600']};\n width: 26px;\n height: 26px;\n`;\n\nexport const StyledCalendarWithTimeWheelWrapper = styled.div`\n background: ${({ theme }) => theme.colors.neutral['000']};\n display: grid;\n grid-template-columns: 260px 192px;\n grid-template-rows: 1fr;\n column-gap: 0;\n\n & > div:last-of-type {\n box-shadow: -1px 0 0 0 ${({ theme }) => theme.colors.neutral[200]};\n }\n`;\n\nexport const StyledCalendar = styled(CalendarContent)`\n box-shadow: none;\n`;\n\nexport const CalendarWithTimeWheelFooterMessage = styled('footer', {\n name: DSControlledDateTimePickerName,\n slot: DSControlledDateTimePickerSlots.FOOTERS.CALENDAR_TIMEWHEEL,\n})`\n border-top: solid 1px ${({ theme }) => theme.colors.neutral[300]};\n margin: 0 ${({ theme }) => theme.space.xxs2};\n padding: ${({ theme }) => theme.space.xxs2} 0;\n color: ${({ theme }) => theme.colors.danger[900]};\n font-style: italic;\n font-weight: ${({ theme }) => theme.fontWeights.thin};\n font-size: ${({ theme }) => theme.fontSizes.microText[200]};\n text-align: right;\n grid-column: 1/3;\n background-color: white;\n`;\n"],
5
5
  "mappings": "AAAA,YAAY,WAAW;ACAvB,SAAS,cAAc;AACvB,SAAS,kBAAkB;AAC3B,SAAS,uBAAuB;AAChC,SAAS,gCAAgC,uCAAuC;AAEzE,MAAM,0BAA0B,OAAO,YAAY;AAAA,EACxD,MAAM;AAAA,EACN,MAAM,gCAAgC,aAAa;AACrD,CAAC;AAAA,WACU,CAAC,EAAE,MAAM,MAAM,MAAM,OAAO,MAAM;AAAA;AAAA;AAAA;AAKtC,MAAM,qCAAqC,OAAO;AAAA,gBACzC,CAAC,EAAE,MAAM,MAAM,MAAM,OAAO,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,6BAOvB,CAAC,EAAE,MAAM,MAAM,MAAM,OAAO,QAAQ;AAAA;AAAA;AAI1D,MAAM,iBAAiB,OAAO,eAAe;AAAA;AAAA;AAI7C,MAAM,qCAAqC,OAAO,UAAU;AAAA,EACjE,MAAM;AAAA,EACN,MAAM,gCAAgC,QAAQ;AAChD,CAAC;AAAA,0BACyB,CAAC,EAAE,MAAM,MAAM,MAAM,OAAO,QAAQ;AAAA,cAChD,CAAC,EAAE,MAAM,MAAM,MAAM,MAAM;AAAA,aAC5B,CAAC,EAAE,MAAM,MAAM,MAAM,MAAM;AAAA,WAC7B,CAAC,EAAE,MAAM,MAAM,MAAM,OAAO,OAAO;AAAA;AAAA,iBAE7B,CAAC,EAAE,MAAM,MAAM,MAAM,YAAY;AAAA,eACnC,CAAC,EAAE,MAAM,MAAM,MAAM,UAAU,UAAU;AAAA;AAAA;AAAA;AAAA;",
6
6
  "names": []
7
7
  }
@@ -1,9 +1,9 @@
1
1
  import * as React from "react";
2
2
  import { useMemo, useState, useCallback, useContext } from "react";
3
- import { CONTROLLED_DATE_TIME_PICKER_TYPES } from "../../../ControlledDateTimePickerTypes";
4
- import { ControlledDateTimePickerContext } from "../../../ControlledDateTimePickerCTX";
5
- import { CalendarContext } from "../Calendar/CalendarContext";
6
- import { TimeWheelContext } from "../TimeWheel/TimeWheelContext";
3
+ import { CONTROLLED_DATE_TIME_PICKER_TYPES } from "../../../ControlledDateTimePickerTypes.js";
4
+ import { ControlledDateTimePickerContext } from "../../../ControlledDateTimePickerCTX.js";
5
+ import { CalendarContext } from "../Calendar/CalendarContext.js";
6
+ import { TimeWheelContext } from "../TimeWheel/TimeWheelContext.js";
7
7
  const useConfigCalendarWithTimeWheelCTX = () => {
8
8
  const {
9
9
  pickerButtonRef,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/parts/Pickers/CalendarWithTimeWheel/useConfigCalendarWithTimeWheelCTX.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-statements */\n/* eslint-disable max-lines */\nimport type React from 'react';\nimport { useMemo, useState, useCallback, useContext } from 'react';\nimport { CONTROLLED_DATE_TIME_PICKER_TYPES } from '../../../ControlledDateTimePickerTypes';\nimport { ControlledDateTimePickerContext } from '../../../ControlledDateTimePickerCTX';\nimport { CalendarContext } from '../Calendar/CalendarContext';\nimport { TimeWheelContext } from '../TimeWheel/TimeWheelContext';\nimport type { DSControlledDateTimePickerInternalsT } from '../../../sharedTypes';\nexport interface CalendarWithTimeWheelContextT {\n referenceElement: HTMLButtonElement | null;\n ariaCurrentValueForInputs: string;\n showCalendarWithTimeWheel: boolean;\n closeCalendar: () => void;\n handleToggleCalendarWithTimeWheel: (e: React.MouseEvent<HTMLButtonElement>) => void;\n handleSetTriggerRef: (instance: HTMLButtonElement) => void;\n handleMenuWrapperKeyDown: (e: React.KeyboardEvent<HTMLElement>) => void;\n handlePickerIconKeyDown: (e: React.KeyboardEvent<HTMLButtonElement>) => void;\n isControllerOnly: boolean;\n disabled: boolean;\n}\nexport const useConfigCalendarWithTimeWheelCTX = (): CalendarWithTimeWheelContextT => {\n const {\n pickerButtonRef,\n props: { type, onPickerOpen, onPickerClose, disabled },\n withAnyInputs,\n isWithTimeInputs,\n ariaCurrentValueForInputs,\n trackFocusFirstSegment,\n trackFocusMeridiemInput,\n trackFocusYearInput,\n trackFocusPicker,\n latestInteractionRegion,\n currFocusDescriber,\n } = useContext(ControlledDateTimePickerContext);\n const { handleToggleCalendar } = useContext(CalendarContext);\n const { handleToggleTimePicker } = useContext(TimeWheelContext);\n const [showCalendarWithTimeWheel, setShowCalendarWithTimeWheel] = useState(false);\n const onHomeKeyDown = useCallback(() => {\n trackFocusFirstSegment();\n }, [trackFocusFirstSegment]);\n const handlePickerIconKeyDown: DSControlledDateTimePickerInternalsT.OnKeyDown<HTMLButtonElement> = useCallback(\n (e) => {\n const { key } = e;\n if (['Home', 'End'].includes(key)) e.preventDefault();\n if (['Home', 'End'].includes(key)) e.stopPropagation();\n if (key === 'Home') onHomeKeyDown();\n if (key === 'Backspace' && withAnyInputs) {\n if (isWithTimeInputs) trackFocusMeridiemInput();\n else trackFocusYearInput();\n }\n },\n [isWithTimeInputs, onHomeKeyDown, trackFocusMeridiemInput, trackFocusYearInput, withAnyInputs],\n );\n const [referenceElement, setReferenceElement] = useState<HTMLButtonElement | null>(null);\n const openCalendar = useCallback(() => {\n setShowCalendarWithTimeWheel(true);\n onPickerOpen();\n setTimeout(() => handleToggleCalendar());\n setTimeout(() => handleToggleTimePicker());\n }, [handleToggleCalendar, handleToggleTimePicker, onPickerOpen]);\n const closeCalendar = useCallback(() => {\n setShowCalendarWithTimeWheel(false);\n onPickerClose();\n setTimeout(() => handleToggleCalendar());\n setTimeout(() => handleToggleTimePicker());\n }, [handleToggleCalendar, handleToggleTimePicker, onPickerClose]);\n\n const handleToggleCalendarWithTimeWheel = useCallback(() => {\n if (!showCalendarWithTimeWheel) openCalendar();\n else closeCalendar();\n }, [closeCalendar, openCalendar, showCalendarWithTimeWheel]);\n\n const handleSetTriggerRef = useCallback(\n (newRef: HTMLButtonElement) => {\n pickerButtonRef.current = newRef;\n setReferenceElement(newRef);\n if (latestInteractionRegion === 'picker-icon' && currFocusDescriber === 'datetime-picker-icon') newRef?.focus();\n },\n [currFocusDescriber, latestInteractionRegion, pickerButtonRef],\n );\n const handleMenuWrapperKeyDown = useCallback(\n (e: React.KeyboardEvent<HTMLElement>) => {\n const { key } = e;\n if (key === 'Escape') {\n closeCalendar();\n trackFocusPicker();\n }\n },\n [closeCalendar, trackFocusPicker],\n );\n\n const isControllerOnly = useMemo(() => type === CONTROLLED_DATE_TIME_PICKER_TYPES.DATE_TIME.CONTROLLER_ONLY, [type]);\n\n return useMemo(\n () => ({\n referenceElement,\n showCalendarWithTimeWheel,\n closeCalendar,\n handleToggleCalendarWithTimeWheel,\n handleSetTriggerRef,\n handleMenuWrapperKeyDown,\n handlePickerIconKeyDown,\n isControllerOnly,\n disabled,\n ariaCurrentValueForInputs,\n }),\n [\n referenceElement,\n showCalendarWithTimeWheel,\n closeCalendar,\n handleToggleCalendarWithTimeWheel,\n handleSetTriggerRef,\n handleMenuWrapperKeyDown,\n handlePickerIconKeyDown,\n isControllerOnly,\n disabled,\n ariaCurrentValueForInputs,\n ],\n );\n};\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-statements */\n/* eslint-disable max-lines */\nimport type React from 'react';\nimport { useMemo, useState, useCallback, useContext } from 'react';\nimport { CONTROLLED_DATE_TIME_PICKER_TYPES } from '../../../ControlledDateTimePickerTypes.js';\nimport { ControlledDateTimePickerContext } from '../../../ControlledDateTimePickerCTX.js';\nimport { CalendarContext } from '../Calendar/CalendarContext.js';\nimport { TimeWheelContext } from '../TimeWheel/TimeWheelContext.js';\nimport type { DSControlledDateTimePickerInternalsT } from '../../../sharedTypes.js';\nexport interface CalendarWithTimeWheelContextT {\n referenceElement: HTMLButtonElement | null;\n ariaCurrentValueForInputs: string;\n showCalendarWithTimeWheel: boolean;\n closeCalendar: () => void;\n handleToggleCalendarWithTimeWheel: (e: React.MouseEvent<HTMLButtonElement>) => void;\n handleSetTriggerRef: (instance: HTMLButtonElement) => void;\n handleMenuWrapperKeyDown: (e: React.KeyboardEvent<HTMLElement>) => void;\n handlePickerIconKeyDown: (e: React.KeyboardEvent<HTMLButtonElement>) => void;\n isControllerOnly: boolean;\n disabled: boolean;\n}\nexport const useConfigCalendarWithTimeWheelCTX = (): CalendarWithTimeWheelContextT => {\n const {\n pickerButtonRef,\n props: { type, onPickerOpen, onPickerClose, disabled },\n withAnyInputs,\n isWithTimeInputs,\n ariaCurrentValueForInputs,\n trackFocusFirstSegment,\n trackFocusMeridiemInput,\n trackFocusYearInput,\n trackFocusPicker,\n latestInteractionRegion,\n currFocusDescriber,\n } = useContext(ControlledDateTimePickerContext);\n const { handleToggleCalendar } = useContext(CalendarContext);\n const { handleToggleTimePicker } = useContext(TimeWheelContext);\n const [showCalendarWithTimeWheel, setShowCalendarWithTimeWheel] = useState(false);\n const onHomeKeyDown = useCallback(() => {\n trackFocusFirstSegment();\n }, [trackFocusFirstSegment]);\n const handlePickerIconKeyDown: DSControlledDateTimePickerInternalsT.OnKeyDown<HTMLButtonElement> = useCallback(\n (e) => {\n const { key } = e;\n if (['Home', 'End'].includes(key)) e.preventDefault();\n if (['Home', 'End'].includes(key)) e.stopPropagation();\n if (key === 'Home') onHomeKeyDown();\n if (key === 'Backspace' && withAnyInputs) {\n if (isWithTimeInputs) trackFocusMeridiemInput();\n else trackFocusYearInput();\n }\n },\n [isWithTimeInputs, onHomeKeyDown, trackFocusMeridiemInput, trackFocusYearInput, withAnyInputs],\n );\n const [referenceElement, setReferenceElement] = useState<HTMLButtonElement | null>(null);\n const openCalendar = useCallback(() => {\n setShowCalendarWithTimeWheel(true);\n onPickerOpen();\n setTimeout(() => handleToggleCalendar());\n setTimeout(() => handleToggleTimePicker());\n }, [handleToggleCalendar, handleToggleTimePicker, onPickerOpen]);\n const closeCalendar = useCallback(() => {\n setShowCalendarWithTimeWheel(false);\n onPickerClose();\n setTimeout(() => handleToggleCalendar());\n setTimeout(() => handleToggleTimePicker());\n }, [handleToggleCalendar, handleToggleTimePicker, onPickerClose]);\n\n const handleToggleCalendarWithTimeWheel = useCallback(() => {\n if (!showCalendarWithTimeWheel) openCalendar();\n else closeCalendar();\n }, [closeCalendar, openCalendar, showCalendarWithTimeWheel]);\n\n const handleSetTriggerRef = useCallback(\n (newRef: HTMLButtonElement) => {\n pickerButtonRef.current = newRef;\n setReferenceElement(newRef);\n if (latestInteractionRegion === 'picker-icon' && currFocusDescriber === 'datetime-picker-icon') newRef?.focus();\n },\n [currFocusDescriber, latestInteractionRegion, pickerButtonRef],\n );\n const handleMenuWrapperKeyDown = useCallback(\n (e: React.KeyboardEvent<HTMLElement>) => {\n const { key } = e;\n if (key === 'Escape') {\n closeCalendar();\n trackFocusPicker();\n }\n },\n [closeCalendar, trackFocusPicker],\n );\n\n const isControllerOnly = useMemo(() => type === CONTROLLED_DATE_TIME_PICKER_TYPES.DATE_TIME.CONTROLLER_ONLY, [type]);\n\n return useMemo(\n () => ({\n referenceElement,\n showCalendarWithTimeWheel,\n closeCalendar,\n handleToggleCalendarWithTimeWheel,\n handleSetTriggerRef,\n handleMenuWrapperKeyDown,\n handlePickerIconKeyDown,\n isControllerOnly,\n disabled,\n ariaCurrentValueForInputs,\n }),\n [\n referenceElement,\n showCalendarWithTimeWheel,\n closeCalendar,\n handleToggleCalendarWithTimeWheel,\n handleSetTriggerRef,\n handleMenuWrapperKeyDown,\n handlePickerIconKeyDown,\n isControllerOnly,\n disabled,\n ariaCurrentValueForInputs,\n ],\n );\n};\n"],
5
5
  "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -1,11 +1,11 @@
1
1
  import * as React from "react";
2
2
  import { jsx, jsxs } from "react/jsx-runtime";
3
3
  import React2 from "react";
4
- import { ControlledDateTimePickerContext } from "../../ControlledDateTimePickerCTX";
5
- import { StyledPickersIconsWrapperGrid } from "../Styleds";
6
- import { CalendarWithTimeWheel } from "./CalendarWithTimeWheel/CalendarWithTimeWheel";
7
- import { Calendar } from "./Calendar/Calendar";
8
- import { TimeWheel } from "./TimeWheel/TimeWheel";
4
+ import { ControlledDateTimePickerContext } from "../../ControlledDateTimePickerCTX.js";
5
+ import { StyledPickersIconsWrapperGrid } from "../Styleds.js";
6
+ import { CalendarWithTimeWheel } from "./CalendarWithTimeWheel/CalendarWithTimeWheel.js";
7
+ import { Calendar } from "./Calendar/Calendar.js";
8
+ import { TimeWheel } from "./TimeWheel/TimeWheel.js";
9
9
  const PickersIcons = () => {
10
10
  const {
11
11
  hideDatePicker,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/Pickers/PickersIcons.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { ControlledDateTimePickerContext } from '../../ControlledDateTimePickerCTX';\nimport { StyledPickersIconsWrapperGrid } from '../Styleds';\nimport { CalendarWithTimeWheel } from './CalendarWithTimeWheel/CalendarWithTimeWheel';\nimport { Calendar } from './Calendar/Calendar';\nimport { TimeWheel } from './TimeWheel/TimeWheel';\n\nexport const PickersIcons = (): JSX.Element => {\n const {\n hideDatePicker,\n hideTimePicker,\n hideDateTimePicker,\n isControllerOnly,\n props: { hasError },\n } = React.useContext(ControlledDateTimePickerContext);\n\n return (\n <StyledPickersIconsWrapperGrid hasError={hasError} isControllerOnly={isControllerOnly}>\n {!hideDatePicker && hideTimePicker && hideDateTimePicker ? <Calendar /> : null}\n {hideDatePicker && !hideTimePicker && hideDateTimePicker ? <TimeWheel /> : null}\n {hideDatePicker && hideTimePicker && !hideDateTimePicker ? <CalendarWithTimeWheel /> : null}\n </StyledPickersIconsWrapperGrid>\n );\n};\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { ControlledDateTimePickerContext } from '../../ControlledDateTimePickerCTX.js';\nimport { StyledPickersIconsWrapperGrid } from '../Styleds.js';\nimport { CalendarWithTimeWheel } from './CalendarWithTimeWheel/CalendarWithTimeWheel.js';\nimport { Calendar } from './Calendar/Calendar.js';\nimport { TimeWheel } from './TimeWheel/TimeWheel.js';\n\nexport const PickersIcons = (): JSX.Element => {\n const {\n hideDatePicker,\n hideTimePicker,\n hideDateTimePicker,\n isControllerOnly,\n props: { hasError },\n } = React.useContext(ControlledDateTimePickerContext);\n\n return (\n <StyledPickersIconsWrapperGrid hasError={hasError} isControllerOnly={isControllerOnly}>\n {!hideDatePicker && hideTimePicker && hideDateTimePicker ? <Calendar /> : null}\n {hideDatePicker && !hideTimePicker && hideDateTimePicker ? <TimeWheel /> : null}\n {hideDatePicker && hideTimePicker && !hideDateTimePicker ? <CalendarWithTimeWheel /> : null}\n </StyledPickersIconsWrapperGrid>\n );\n};\n"],
5
5
  "mappings": "AAAA,YAAY,WAAW;ACiBnB,SAC6D,KAD7D;AAjBJ,OAAOA,YAAW;AAClB,SAAS,uCAAuC;AAChD,SAAS,qCAAqC;AAC9C,SAAS,6BAA6B;AACtC,SAAS,gBAAgB;AACzB,SAAS,iBAAiB;AAEnB,MAAM,eAAe,MAAmB;AAC7C,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,OAAO,EAAE,SAAS;AAAA,EACpB,IAAIA,OAAM,WAAW,+BAA+B;AAEpD,SACE,qBAAC,iCAA8B,UAAoB,kBAChD;AAAA,KAAC,kBAAkB,kBAAkB,qBAAqB,oBAAC,YAAS,IAAK;AAAA,IACzE,kBAAkB,CAAC,kBAAkB,qBAAqB,oBAAC,aAAU,IAAK;AAAA,IAC1E,kBAAkB,kBAAkB,CAAC,qBAAqB,oBAAC,yBAAsB,IAAK;AAAA,KACzF;AAEJ;",
6
6
  "names": ["React"]
7
7
  }
@@ -1,12 +1,13 @@
1
1
  import * as React from "react";
2
2
  import { jsx, jsxs } from "react/jsx-runtime";
3
- import { useContext, useCallback } from "react";
3
+ import React2, { useContext, useCallback } from "react";
4
+ import { getPropsPerDatatestid } from "@elliemae/ds-props-helpers";
4
5
  import { ChevronSmallUp, ChevronSmallDown } from "@elliemae/ds-icons";
5
- import { ControlledDateTimePickerDatatestid } from "../../../ControlledDateTimePickerDatatestid";
6
- import { ControlledDateTimePickerContext } from "../../../ControlledDateTimePickerCTX";
7
- import { convertToPositiveNumberIfPossible } from "../../../utils/numberHelpers";
8
- import { StyledWheelList, StyledWheelListItem, StyledTimeBtn, StyledWheelChangeTimeBtn } from "./Styleds";
9
- import { TimeWheelContext } from "./TimeWheelContext";
6
+ import { ControlledDateTimePickerDatatestid } from "../../../ControlledDateTimePickerDatatestid.js";
7
+ import { ControlledDateTimePickerContext } from "../../../ControlledDateTimePickerCTX.js";
8
+ import { convertToPositiveNumberIfPossible } from "../../../utils/numberHelpers.js";
9
+ import { StyledWheelList, StyledWheelListItem, StyledTimeBtn, StyledWheelChangeTimeBtn } from "./Styleds.js";
10
+ import { TimeWheelContext } from "./TimeWheelContext.js";
10
11
  const HoursList = () => {
11
12
  const {
12
13
  currHourNum,
@@ -26,8 +27,25 @@ const HoursList = () => {
26
27
  autoFocusHourTimeWheel,
27
28
  hours,
28
29
  latestInteractionRegion,
29
- currFocusDescriber
30
+ currFocusDescriber,
31
+ props
30
32
  } = useContext(ControlledDateTimePickerContext);
33
+ const ariaAndDataPropsPrevHour = React2.useMemo(
34
+ () => getPropsPerDatatestid(props[ControlledDateTimePickerDatatestid.TIMEWHEEL.PREV_HOUR]),
35
+ [props]
36
+ );
37
+ const ariaAndDataPropsNextHour = React2.useMemo(
38
+ () => getPropsPerDatatestid(props[ControlledDateTimePickerDatatestid.TIMEWHEEL.NEXT_HOUR]),
39
+ [props]
40
+ );
41
+ const ariaAndDataPropsCurrHour = React2.useMemo(
42
+ () => getPropsPerDatatestid(props[ControlledDateTimePickerDatatestid.TIMEWHEEL.CURRENT_HOUR]),
43
+ [props]
44
+ );
45
+ const ariaAndDataPropsHour = React2.useMemo(
46
+ () => getPropsPerDatatestid(props[ControlledDateTimePickerDatatestid.TIMEWHEEL.HOUR]),
47
+ [props]
48
+ );
31
49
  const handleCurrYearRef = useCallback(
32
50
  (ButtonDomNode) => {
33
51
  setTimeout(() => {
@@ -48,6 +66,7 @@ const HoursList = () => {
48
66
  onClick: handlePrevHour,
49
67
  innerRef: prevHourBtnRef,
50
68
  "data-testid": ControlledDateTimePickerDatatestid.TIMEWHEEL.PREV_HOUR,
69
+ ...ariaAndDataPropsPrevHour,
51
70
  tabIndex: -1,
52
71
  type: "button",
53
72
  children: /* @__PURE__ */ jsx(ChevronSmallUp, { color: ["brand-primary", "700"] })
@@ -90,6 +109,7 @@ const HoursList = () => {
90
109
  "aria-valuetext": `${hourString} hours`,
91
110
  type: "button",
92
111
  ...btnProps,
112
+ ...isCurrentListItem ? ariaAndDataPropsCurrHour : ariaAndDataPropsHour,
93
113
  children: hourString
94
114
  }
95
115
  ) }, key);
@@ -104,6 +124,7 @@ const HoursList = () => {
104
124
  innerRef: nextHourBtnRef,
105
125
  tabIndex: -1,
106
126
  "data-testid": ControlledDateTimePickerDatatestid.TIMEWHEEL.NEXT_HOUR,
127
+ ...ariaAndDataPropsNextHour,
107
128
  type: "button",
108
129
  children: /* @__PURE__ */ jsx(ChevronSmallDown, { color: ["brand-primary", "700"] })
109
130
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/parts/Pickers/TimeWheel/HoursList.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable complexity */\nimport React, { useContext, useCallback } from 'react';\nimport { ChevronSmallUp, ChevronSmallDown } from '@elliemae/ds-icons';\nimport { ControlledDateTimePickerDatatestid } from '../../../ControlledDateTimePickerDatatestid';\nimport { ControlledDateTimePickerContext } from '../../../ControlledDateTimePickerCTX';\nimport { convertToPositiveNumberIfPossible } from '../../../utils/numberHelpers';\nimport { StyledWheelList, StyledWheelListItem, StyledTimeBtn, StyledWheelChangeTimeBtn } from './Styleds';\nimport { TimeWheelContext } from './TimeWheelContext';\n\nexport const HoursList = (): JSX.Element => {\n const {\n currHourNum,\n currMinuteNum,\n currMeridiem,\n visibleHours,\n handlePrevHour,\n handleNextHour,\n handleTimeWheelBtnChangeHours,\n handleCurrHourOnKeyDown,\n } = useContext(TimeWheelContext);\n const {\n prevHourBtnRef,\n currHourBtnRef,\n nextHourBtnRef,\n getIsDisabledTime,\n autoFocusHourTimeWheel,\n hours,\n latestInteractionRegion,\n currFocusDescriber,\n } = useContext(ControlledDateTimePickerContext);\n const handleCurrYearRef = useCallback(\n (ButtonDomNode: HTMLButtonElement) => {\n setTimeout(() => {\n currHourBtnRef.current = ButtonDomNode;\n if (latestInteractionRegion === 'timewheel' && currFocusDescriber === 'timewheel-curr-hour')\n ButtonDomNode?.focus?.();\n });\n },\n [currFocusDescriber, latestInteractionRegion, currHourBtnRef],\n );\n return (\n <StyledWheelList>\n <StyledWheelListItem>\n <StyledWheelChangeTimeBtn\n aria-label=\"subtract one hour\"\n buttonType=\"raw\"\n size=\"m\"\n onClick={handlePrevHour}\n innerRef={prevHourBtnRef}\n data-testid={ControlledDateTimePickerDatatestid.TIMEWHEEL.PREV_HOUR}\n tabIndex={-1}\n type=\"button\"\n >\n <ChevronSmallUp color={['brand-primary', '700']} />\n </StyledWheelChangeTimeBtn>\n </StyledWheelListItem>\n {visibleHours.map((hourString) => {\n const key = `timewheel-hour-${hourString || ''}`;\n if (!hourString) return <StyledWheelListItem key={key} />;\n const currHourTimeString = `${hourString}:${currMinuteNum} ${currMeridiem}`;\n\n const isEmptyCurrValueCurrentListItem = !hours && convertToPositiveNumberIfPossible(hourString) === currHourNum;\n const isCurrentListItem = isEmptyCurrValueCurrentListItem || hours === hourString;\n const isDisabled = getIsDisabledTime(currHourTimeString);\n const tabIndex = isCurrentListItem ? 0 : -1;\n const btnProps = {\n onKeyDown: isCurrentListItem ? handleCurrHourOnKeyDown : undefined,\n innerRef: isCurrentListItem ? handleCurrYearRef : undefined,\n };\n const styleProps = {\n isCurrentListItem,\n isDisabled,\n };\n return (\n <StyledWheelListItem isCurrentListItem={isCurrentListItem} key={key}>\n <StyledTimeBtn\n {...styleProps}\n autoFocus={autoFocusHourTimeWheel && isCurrentListItem}\n data-testid={ControlledDateTimePickerDatatestid.TIMEWHEEL[isCurrentListItem ? 'CURRENT_HOUR' : 'HOUR']}\n selected={hours.length === 2 && convertToPositiveNumberIfPossible(hourString) === currHourNum}\n aria-label={`${hourString} hours`}\n aria-disabled={isDisabled}\n buttonType=\"raw\"\n size=\"m\"\n onClick={(e: React.MouseEvent<HTMLButtonElement>) => handleTimeWheelBtnChangeHours(hourString, e)}\n tabIndex={tabIndex}\n role=\"spinbutton\"\n aria-valuemax={12}\n aria-valuemin={1}\n aria-valuenow={currHourNum}\n aria-valuetext={`${hourString} hours`}\n type=\"button\"\n {...btnProps}\n >\n {hourString}\n </StyledTimeBtn>\n </StyledWheelListItem>\n );\n })}\n <StyledWheelListItem>\n <StyledWheelChangeTimeBtn\n aria-label=\"add one hour\"\n buttonType=\"raw\"\n size=\"m\"\n onClick={handleNextHour}\n innerRef={nextHourBtnRef}\n tabIndex={-1}\n data-testid={ControlledDateTimePickerDatatestid.TIMEWHEEL.NEXT_HOUR}\n type=\"button\"\n >\n <ChevronSmallDown color={['brand-primary', '700']} />\n </StyledWheelChangeTimeBtn>\n </StyledWheelListItem>\n </StyledWheelList>\n );\n};\n"],
5
- "mappings": "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",
6
- "names": []
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable complexity */\nimport React, { useContext, useCallback } from 'react';\nimport { getPropsPerDatatestid } from '@elliemae/ds-props-helpers';\nimport { ChevronSmallUp, ChevronSmallDown } from '@elliemae/ds-icons';\nimport { ControlledDateTimePickerDatatestid } from '../../../ControlledDateTimePickerDatatestid.js';\nimport { ControlledDateTimePickerContext } from '../../../ControlledDateTimePickerCTX.js';\nimport { convertToPositiveNumberIfPossible } from '../../../utils/numberHelpers.js';\nimport { StyledWheelList, StyledWheelListItem, StyledTimeBtn, StyledWheelChangeTimeBtn } from './Styleds.js';\nimport { TimeWheelContext } from './TimeWheelContext.js';\n\nexport const HoursList = (): JSX.Element => {\n const {\n currHourNum,\n currMinuteNum,\n currMeridiem,\n visibleHours,\n handlePrevHour,\n handleNextHour,\n handleTimeWheelBtnChangeHours,\n handleCurrHourOnKeyDown,\n } = useContext(TimeWheelContext);\n const {\n prevHourBtnRef,\n currHourBtnRef,\n nextHourBtnRef,\n getIsDisabledTime,\n autoFocusHourTimeWheel,\n hours,\n latestInteractionRegion,\n currFocusDescriber,\n props,\n } = useContext(ControlledDateTimePickerContext);\n const ariaAndDataPropsPrevHour = React.useMemo(\n () => getPropsPerDatatestid(props[ControlledDateTimePickerDatatestid.TIMEWHEEL.PREV_HOUR]),\n [props],\n );\n const ariaAndDataPropsNextHour = React.useMemo(\n () => getPropsPerDatatestid(props[ControlledDateTimePickerDatatestid.TIMEWHEEL.NEXT_HOUR]),\n [props],\n );\n const ariaAndDataPropsCurrHour = React.useMemo(\n () => getPropsPerDatatestid(props[ControlledDateTimePickerDatatestid.TIMEWHEEL.CURRENT_HOUR]),\n [props],\n );\n const ariaAndDataPropsHour = React.useMemo(\n () => getPropsPerDatatestid(props[ControlledDateTimePickerDatatestid.TIMEWHEEL.HOUR]),\n [props],\n );\n const handleCurrYearRef = useCallback(\n (ButtonDomNode: HTMLButtonElement) => {\n setTimeout(() => {\n currHourBtnRef.current = ButtonDomNode;\n if (latestInteractionRegion === 'timewheel' && currFocusDescriber === 'timewheel-curr-hour')\n ButtonDomNode?.focus?.();\n });\n },\n [currFocusDescriber, latestInteractionRegion, currHourBtnRef],\n );\n return (\n <StyledWheelList>\n <StyledWheelListItem>\n <StyledWheelChangeTimeBtn\n aria-label=\"subtract one hour\"\n buttonType=\"raw\"\n size=\"m\"\n onClick={handlePrevHour}\n innerRef={prevHourBtnRef}\n data-testid={ControlledDateTimePickerDatatestid.TIMEWHEEL.PREV_HOUR}\n {...ariaAndDataPropsPrevHour}\n tabIndex={-1}\n type=\"button\"\n >\n <ChevronSmallUp color={['brand-primary', '700']} />\n </StyledWheelChangeTimeBtn>\n </StyledWheelListItem>\n {visibleHours.map((hourString) => {\n const key = `timewheel-hour-${hourString || ''}`;\n if (!hourString) return <StyledWheelListItem key={key} />;\n const currHourTimeString = `${hourString}:${currMinuteNum} ${currMeridiem}`;\n\n const isEmptyCurrValueCurrentListItem = !hours && convertToPositiveNumberIfPossible(hourString) === currHourNum;\n const isCurrentListItem = isEmptyCurrValueCurrentListItem || hours === hourString;\n const isDisabled = getIsDisabledTime(currHourTimeString);\n const tabIndex = isCurrentListItem ? 0 : -1;\n const btnProps = {\n onKeyDown: isCurrentListItem ? handleCurrHourOnKeyDown : undefined,\n innerRef: isCurrentListItem ? handleCurrYearRef : undefined,\n };\n const styleProps = {\n isCurrentListItem,\n isDisabled,\n };\n return (\n <StyledWheelListItem isCurrentListItem={isCurrentListItem} key={key}>\n <StyledTimeBtn\n {...styleProps}\n autoFocus={autoFocusHourTimeWheel && isCurrentListItem}\n data-testid={ControlledDateTimePickerDatatestid.TIMEWHEEL[isCurrentListItem ? 'CURRENT_HOUR' : 'HOUR']}\n selected={hours.length === 2 && convertToPositiveNumberIfPossible(hourString) === currHourNum}\n aria-label={`${hourString} hours`}\n aria-disabled={isDisabled}\n buttonType=\"raw\"\n size=\"m\"\n onClick={(e: React.MouseEvent<HTMLButtonElement>) => handleTimeWheelBtnChangeHours(hourString, e)}\n tabIndex={tabIndex}\n role=\"spinbutton\"\n aria-valuemax={12}\n aria-valuemin={1}\n aria-valuenow={currHourNum}\n aria-valuetext={`${hourString} hours`}\n type=\"button\"\n {...btnProps}\n {...(isCurrentListItem ? ariaAndDataPropsCurrHour : ariaAndDataPropsHour)}\n >\n {hourString}\n </StyledTimeBtn>\n </StyledWheelListItem>\n );\n })}\n <StyledWheelListItem>\n <StyledWheelChangeTimeBtn\n aria-label=\"add one hour\"\n buttonType=\"raw\"\n size=\"m\"\n onClick={handleNextHour}\n innerRef={nextHourBtnRef}\n tabIndex={-1}\n data-testid={ControlledDateTimePickerDatatestid.TIMEWHEEL.NEXT_HOUR}\n {...ariaAndDataPropsNextHour}\n type=\"button\"\n >\n <ChevronSmallDown color={['brand-primary', '700']} />\n </StyledWheelChangeTimeBtn>\n </StyledWheelListItem>\n </StyledWheelList>\n );\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["React"]
7
7
  }
@@ -1,11 +1,12 @@
1
1
  import * as React from "react";
2
2
  import { jsx, jsxs } from "react/jsx-runtime";
3
- import { useContext, useCallback } from "react";
3
+ import React2, { useContext, useCallback } from "react";
4
4
  import { ChevronSmallUp, ChevronSmallDown } from "@elliemae/ds-icons";
5
- import { ControlledDateTimePickerDatatestid } from "../../../ControlledDateTimePickerDatatestid";
6
- import { ControlledDateTimePickerContext } from "../../../ControlledDateTimePickerCTX";
7
- import { StyledWheelList, StyledWheelListItem, StyledTimeBtn, StyledWheelChangeTimeBtn } from "./Styleds";
8
- import { TimeWheelContext } from "./TimeWheelContext";
5
+ import { getPropsPerDatatestid } from "@elliemae/ds-props-helpers";
6
+ import { ControlledDateTimePickerDatatestid } from "../../../ControlledDateTimePickerDatatestid.js";
7
+ import { ControlledDateTimePickerContext } from "../../../ControlledDateTimePickerCTX.js";
8
+ import { StyledWheelList, StyledWheelListItem, StyledTimeBtn, StyledWheelChangeTimeBtn } from "./Styleds.js";
9
+ import { TimeWheelContext } from "./TimeWheelContext.js";
9
10
  const MeridiemList = () => {
10
11
  const { currMeridiem, handleTimeWheelBtnChangeMeridiem, handleCurrMeridiemOnKeyDown } = useContext(TimeWheelContext);
11
12
  const {
@@ -16,8 +17,25 @@ const MeridiemList = () => {
16
17
  hours,
17
18
  minutes,
18
19
  latestInteractionRegion,
19
- currFocusDescriber
20
+ currFocusDescriber,
21
+ props
20
22
  } = useContext(ControlledDateTimePickerContext);
23
+ const ariaAndDataPropsPrevMeridiem = React2.useMemo(
24
+ () => getPropsPerDatatestid(props[ControlledDateTimePickerDatatestid.TIMEWHEEL.PREV_MERIDIEM]),
25
+ [props]
26
+ );
27
+ const ariaAndDataPropsNextMeridiem = React2.useMemo(
28
+ () => getPropsPerDatatestid(props[ControlledDateTimePickerDatatestid.TIMEWHEEL.NEXT_MERIDIEM]),
29
+ [props]
30
+ );
31
+ const ariaAndDataPropsCurrMeridiem = React2.useMemo(
32
+ () => getPropsPerDatatestid(props[ControlledDateTimePickerDatatestid.TIMEWHEEL.CURRENT_MERIDIEM]),
33
+ [props]
34
+ );
35
+ const ariaAndDataPropsMeridiem = React2.useMemo(
36
+ () => getPropsPerDatatestid(props[ControlledDateTimePickerDatatestid.TIMEWHEEL.MERIDIEM]),
37
+ [props]
38
+ );
21
39
  const isAmCurrent = !currMeridiem || currMeridiem === "AM";
22
40
  const isPmCurrent = currMeridiem === "PM";
23
41
  const hourMinuteString = `${hours || "01"}:${minutes || "00"}`;
@@ -53,6 +71,7 @@ const MeridiemList = () => {
53
71
  innerRef: prevMeridiemBtnRef,
54
72
  tabIndex: -1,
55
73
  type: "button",
74
+ ...ariaAndDataPropsPrevMeridiem,
56
75
  children: /* @__PURE__ */ jsx(ChevronSmallUp, { color: ["brand-primary", "700"] })
57
76
  }
58
77
  ) }),
@@ -77,6 +96,7 @@ const MeridiemList = () => {
77
96
  "aria-valuenow": isPmCurrent ? 1 : 0,
78
97
  "aria-valuetext": isAmCurrent ? "ante meridiem" : "post meridiem",
79
98
  type: "button",
99
+ ...isAmCurrent ? ariaAndDataPropsCurrMeridiem : ariaAndDataPropsMeridiem,
80
100
  children: "AM"
81
101
  }
82
102
  ) }),
@@ -100,6 +120,7 @@ const MeridiemList = () => {
100
120
  "aria-valuenow": isPmCurrent ? 1 : 0,
101
121
  "aria-valuetext": isAmCurrent ? "ante meridiem" : "post meridiem",
102
122
  type: "button",
123
+ ...isPmCurrent ? ariaAndDataPropsCurrMeridiem : ariaAndDataPropsMeridiem,
103
124
  children: "PM"
104
125
  }
105
126
  ) }),
@@ -117,6 +138,7 @@ const MeridiemList = () => {
117
138
  innerRef: nextMeridiemBtnRef,
118
139
  tabIndex: -1,
119
140
  type: "button",
141
+ ...ariaAndDataPropsNextMeridiem,
120
142
  children: /* @__PURE__ */ jsx(ChevronSmallDown, { color: ["brand-primary", "700"] })
121
143
  }
122
144
  ) })
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/parts/Pickers/TimeWheel/MeridiemList.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable complexity */\nimport React, { useContext, useCallback } from 'react';\nimport { ChevronSmallUp, ChevronSmallDown } from '@elliemae/ds-icons';\nimport { ControlledDateTimePickerDatatestid } from '../../../ControlledDateTimePickerDatatestid';\nimport { ControlledDateTimePickerContext } from '../../../ControlledDateTimePickerCTX';\nimport { StyledWheelList, StyledWheelListItem, StyledTimeBtn, StyledWheelChangeTimeBtn } from './Styleds';\nimport { TimeWheelContext } from './TimeWheelContext';\n\nexport const MeridiemList = (): JSX.Element => {\n const { currMeridiem, handleTimeWheelBtnChangeMeridiem, handleCurrMeridiemOnKeyDown } = useContext(TimeWheelContext);\n const {\n prevMeridiemBtnRef,\n currMeridiemBtnRef,\n nextMeridiemBtnRef,\n getIsDisabledTime,\n hours,\n minutes,\n latestInteractionRegion,\n currFocusDescriber,\n } = useContext(ControlledDateTimePickerContext);\n const isAmCurrent = !currMeridiem || currMeridiem === 'AM';\n const isPmCurrent = currMeridiem === 'PM';\n const hourMinuteString = `${hours || '01'}:${minutes || '00'}`;\n const amTimeString = `${hourMinuteString} AM`;\n const pmTimeString = `${hourMinuteString} PM`;\n const isDisabledAm = getIsDisabledTime(amTimeString);\n const isDisabledPm = getIsDisabledTime(pmTimeString);\n const styledPropsPrevMeridiem = { isDisabled: isDisabledAm };\n const styledPropsCurrentAmMeridiem = { isCurrentListItem: isAmCurrent, isDisabled: isDisabledAm };\n const styledPropsCurrentPmMeridiem = { isCurrentListItem: isPmCurrent, isDisabled: isDisabledPm };\n const styledPropsNextMeridiem = { isDisabled: isDisabledPm };\n const handleCurrMeridiemRef = useCallback(\n (ButtonDomNode: HTMLButtonElement) => {\n setTimeout(() => {\n currMeridiemBtnRef.current = ButtonDomNode;\n if (latestInteractionRegion === 'timewheel' && currFocusDescriber === 'timewheel-curr-meridiem')\n ButtonDomNode?.focus?.();\n });\n },\n [currFocusDescriber, latestInteractionRegion, currMeridiemBtnRef],\n );\n return (\n <StyledWheelList>\n <StyledWheelListItem>\n <StyledWheelChangeTimeBtn\n {...styledPropsPrevMeridiem}\n aria-label=\"set am meridiem\"\n aria-disabled={isDisabledAm}\n data-testid={ControlledDateTimePickerDatatestid.TIMEWHEEL.PREV_MERIDIEM}\n buttonType=\"raw\"\n size=\"m\"\n onClick={(e: React.MouseEvent<HTMLButtonElement>) => handleTimeWheelBtnChangeMeridiem('AM', e)}\n innerRef={prevMeridiemBtnRef}\n tabIndex={-1}\n type=\"button\"\n >\n <ChevronSmallUp color={['brand-primary', '700']} />\n </StyledWheelChangeTimeBtn>\n </StyledWheelListItem>\n {currMeridiem === 'AM' || currMeridiem === '' ? <StyledWheelListItem /> : null}\n <StyledWheelListItem isCurrentListItem={isAmCurrent}>\n <StyledTimeBtn\n {...styledPropsCurrentAmMeridiem}\n data-testid={ControlledDateTimePickerDatatestid.TIMEWHEEL[isAmCurrent ? 'CURRENT_MERIDIEM' : 'MERIDIEM']}\n selected={currMeridiem === 'AM'}\n aria-label={`AM ${isAmCurrent ? 'selected' : ''}`}\n aria-disabled={isDisabledAm}\n buttonType=\"raw\"\n size=\"m\"\n onClick={(e: React.MouseEvent<HTMLButtonElement>) => handleTimeWheelBtnChangeMeridiem('AM', e)}\n onKeyDown={isAmCurrent ? handleCurrMeridiemOnKeyDown : undefined}\n innerRef={isAmCurrent ? handleCurrMeridiemRef : undefined}\n tabIndex={isAmCurrent ? 0 : -1}\n role=\"spinbutton\"\n aria-valuemax={1}\n aria-valuemin={0}\n aria-valuenow={isPmCurrent ? 1 : 0}\n aria-valuetext={isAmCurrent ? 'ante meridiem' : 'post meridiem'}\n type=\"button\"\n >\n AM\n </StyledTimeBtn>\n </StyledWheelListItem>\n <StyledWheelListItem isCurrentListItem={isPmCurrent}>\n <StyledTimeBtn\n {...styledPropsCurrentPmMeridiem}\n data-testid={ControlledDateTimePickerDatatestid.TIMEWHEEL[isPmCurrent ? 'CURRENT_MERIDIEM' : 'MERIDIEM']}\n selected={currMeridiem === 'PM'}\n aria-label={`PM ${isPmCurrent ? 'selected' : ''}`}\n aria-disabled={isDisabledPm}\n buttonType=\"raw\"\n size=\"m\"\n onClick={(e: React.MouseEvent<HTMLButtonElement>) => handleTimeWheelBtnChangeMeridiem('PM', e)}\n onKeyDown={isPmCurrent ? handleCurrMeridiemOnKeyDown : undefined}\n innerRef={isPmCurrent ? handleCurrMeridiemRef : undefined}\n tabIndex={isPmCurrent ? 0 : -1}\n role=\"spinbutton\"\n aria-valuemax={1}\n aria-valuemin={0}\n aria-valuenow={isPmCurrent ? 1 : 0}\n aria-valuetext={isAmCurrent ? 'ante meridiem' : 'post meridiem'}\n type=\"button\"\n >\n PM\n </StyledTimeBtn>\n </StyledWheelListItem>\n {currMeridiem === 'PM' ? <StyledWheelListItem /> : null}\n <StyledWheelListItem>\n <StyledWheelChangeTimeBtn\n {...styledPropsNextMeridiem}\n aria-label=\"set pm meridiem\"\n aria-disabled={isDisabledPm}\n data-testid={ControlledDateTimePickerDatatestid.TIMEWHEEL.NEXT_MERIDIEM}\n buttonType=\"raw\"\n size=\"m\"\n onClick={(e: React.MouseEvent<HTMLButtonElement>) => handleTimeWheelBtnChangeMeridiem('PM', e)}\n innerRef={nextMeridiemBtnRef}\n tabIndex={-1}\n type=\"button\"\n >\n <ChevronSmallDown color={['brand-primary', '700']} />\n </StyledWheelChangeTimeBtn>\n </StyledWheelListItem>\n </StyledWheelList>\n );\n};\n\nexport default MeridiemList;\n"],
5
- "mappings": "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",
6
- "names": []
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable complexity */\nimport React, { useContext, useCallback } from 'react';\nimport { ChevronSmallUp, ChevronSmallDown } from '@elliemae/ds-icons';\nimport { getPropsPerDatatestid } from '@elliemae/ds-props-helpers';\nimport { ControlledDateTimePickerDatatestid } from '../../../ControlledDateTimePickerDatatestid.js';\nimport { ControlledDateTimePickerContext } from '../../../ControlledDateTimePickerCTX.js';\nimport { StyledWheelList, StyledWheelListItem, StyledTimeBtn, StyledWheelChangeTimeBtn } from './Styleds.js';\nimport { TimeWheelContext } from './TimeWheelContext.js';\n\nexport const MeridiemList = (): JSX.Element => {\n const { currMeridiem, handleTimeWheelBtnChangeMeridiem, handleCurrMeridiemOnKeyDown } = useContext(TimeWheelContext);\n const {\n prevMeridiemBtnRef,\n currMeridiemBtnRef,\n nextMeridiemBtnRef,\n getIsDisabledTime,\n hours,\n minutes,\n latestInteractionRegion,\n currFocusDescriber,\n props,\n } = useContext(ControlledDateTimePickerContext);\n const ariaAndDataPropsPrevMeridiem = React.useMemo(\n () => getPropsPerDatatestid(props[ControlledDateTimePickerDatatestid.TIMEWHEEL.PREV_MERIDIEM]),\n [props],\n );\n const ariaAndDataPropsNextMeridiem = React.useMemo(\n () => getPropsPerDatatestid(props[ControlledDateTimePickerDatatestid.TIMEWHEEL.NEXT_MERIDIEM]),\n [props],\n );\n const ariaAndDataPropsCurrMeridiem = React.useMemo(\n () => getPropsPerDatatestid(props[ControlledDateTimePickerDatatestid.TIMEWHEEL.CURRENT_MERIDIEM]),\n [props],\n );\n const ariaAndDataPropsMeridiem = React.useMemo(\n () => getPropsPerDatatestid(props[ControlledDateTimePickerDatatestid.TIMEWHEEL.MERIDIEM]),\n [props],\n );\n const isAmCurrent = !currMeridiem || currMeridiem === 'AM';\n const isPmCurrent = currMeridiem === 'PM';\n const hourMinuteString = `${hours || '01'}:${minutes || '00'}`;\n const amTimeString = `${hourMinuteString} AM`;\n const pmTimeString = `${hourMinuteString} PM`;\n const isDisabledAm = getIsDisabledTime(amTimeString);\n const isDisabledPm = getIsDisabledTime(pmTimeString);\n const styledPropsPrevMeridiem = { isDisabled: isDisabledAm };\n const styledPropsCurrentAmMeridiem = { isCurrentListItem: isAmCurrent, isDisabled: isDisabledAm };\n const styledPropsCurrentPmMeridiem = { isCurrentListItem: isPmCurrent, isDisabled: isDisabledPm };\n const styledPropsNextMeridiem = { isDisabled: isDisabledPm };\n const handleCurrMeridiemRef = useCallback(\n (ButtonDomNode: HTMLButtonElement) => {\n setTimeout(() => {\n currMeridiemBtnRef.current = ButtonDomNode;\n if (latestInteractionRegion === 'timewheel' && currFocusDescriber === 'timewheel-curr-meridiem')\n ButtonDomNode?.focus?.();\n });\n },\n [currFocusDescriber, latestInteractionRegion, currMeridiemBtnRef],\n );\n return (\n <StyledWheelList>\n <StyledWheelListItem>\n <StyledWheelChangeTimeBtn\n {...styledPropsPrevMeridiem}\n aria-label=\"set am meridiem\"\n aria-disabled={isDisabledAm}\n data-testid={ControlledDateTimePickerDatatestid.TIMEWHEEL.PREV_MERIDIEM}\n buttonType=\"raw\"\n size=\"m\"\n onClick={(e: React.MouseEvent<HTMLButtonElement>) => handleTimeWheelBtnChangeMeridiem('AM', e)}\n innerRef={prevMeridiemBtnRef}\n tabIndex={-1}\n type=\"button\"\n {...ariaAndDataPropsPrevMeridiem}\n >\n <ChevronSmallUp color={['brand-primary', '700']} />\n </StyledWheelChangeTimeBtn>\n </StyledWheelListItem>\n {currMeridiem === 'AM' || currMeridiem === '' ? <StyledWheelListItem /> : null}\n <StyledWheelListItem isCurrentListItem={isAmCurrent}>\n <StyledTimeBtn\n {...styledPropsCurrentAmMeridiem}\n data-testid={ControlledDateTimePickerDatatestid.TIMEWHEEL[isAmCurrent ? 'CURRENT_MERIDIEM' : 'MERIDIEM']}\n selected={currMeridiem === 'AM'}\n aria-label={`AM ${isAmCurrent ? 'selected' : ''}`}\n aria-disabled={isDisabledAm}\n buttonType=\"raw\"\n size=\"m\"\n onClick={(e: React.MouseEvent<HTMLButtonElement>) => handleTimeWheelBtnChangeMeridiem('AM', e)}\n onKeyDown={isAmCurrent ? handleCurrMeridiemOnKeyDown : undefined}\n innerRef={isAmCurrent ? handleCurrMeridiemRef : undefined}\n tabIndex={isAmCurrent ? 0 : -1}\n role=\"spinbutton\"\n aria-valuemax={1}\n aria-valuemin={0}\n aria-valuenow={isPmCurrent ? 1 : 0}\n aria-valuetext={isAmCurrent ? 'ante meridiem' : 'post meridiem'}\n type=\"button\"\n {...(isAmCurrent ? ariaAndDataPropsCurrMeridiem : ariaAndDataPropsMeridiem)}\n >\n AM\n </StyledTimeBtn>\n </StyledWheelListItem>\n <StyledWheelListItem isCurrentListItem={isPmCurrent}>\n <StyledTimeBtn\n {...styledPropsCurrentPmMeridiem}\n data-testid={ControlledDateTimePickerDatatestid.TIMEWHEEL[isPmCurrent ? 'CURRENT_MERIDIEM' : 'MERIDIEM']}\n selected={currMeridiem === 'PM'}\n aria-label={`PM ${isPmCurrent ? 'selected' : ''}`}\n aria-disabled={isDisabledPm}\n buttonType=\"raw\"\n size=\"m\"\n onClick={(e: React.MouseEvent<HTMLButtonElement>) => handleTimeWheelBtnChangeMeridiem('PM', e)}\n onKeyDown={isPmCurrent ? handleCurrMeridiemOnKeyDown : undefined}\n innerRef={isPmCurrent ? handleCurrMeridiemRef : undefined}\n tabIndex={isPmCurrent ? 0 : -1}\n role=\"spinbutton\"\n aria-valuemax={1}\n aria-valuemin={0}\n aria-valuenow={isPmCurrent ? 1 : 0}\n aria-valuetext={isAmCurrent ? 'ante meridiem' : 'post meridiem'}\n type=\"button\"\n {...(isPmCurrent ? ariaAndDataPropsCurrMeridiem : ariaAndDataPropsMeridiem)}\n >\n PM\n </StyledTimeBtn>\n </StyledWheelListItem>\n {currMeridiem === 'PM' ? <StyledWheelListItem /> : null}\n <StyledWheelListItem>\n <StyledWheelChangeTimeBtn\n {...styledPropsNextMeridiem}\n aria-label=\"set pm meridiem\"\n aria-disabled={isDisabledPm}\n data-testid={ControlledDateTimePickerDatatestid.TIMEWHEEL.NEXT_MERIDIEM}\n buttonType=\"raw\"\n size=\"m\"\n onClick={(e: React.MouseEvent<HTMLButtonElement>) => handleTimeWheelBtnChangeMeridiem('PM', e)}\n innerRef={nextMeridiemBtnRef}\n tabIndex={-1}\n type=\"button\"\n {...ariaAndDataPropsNextMeridiem}\n >\n <ChevronSmallDown color={['brand-primary', '700']} />\n </StyledWheelChangeTimeBtn>\n </StyledWheelListItem>\n </StyledWheelList>\n );\n};\n\nexport default MeridiemList;\n"],
5
+ "mappings": "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",
6
+ "names": ["React"]
7
7
  }
@@ -1,12 +1,13 @@
1
1
  import * as React from "react";
2
2
  import { jsx, jsxs } from "react/jsx-runtime";
3
- import { useContext, useCallback } from "react";
3
+ import React2, { useContext, useCallback } from "react";
4
+ import { getPropsPerDatatestid } from "@elliemae/ds-props-helpers";
4
5
  import { ChevronSmallUp, ChevronSmallDown } from "@elliemae/ds-icons";
5
- import { ControlledDateTimePickerDatatestid } from "../../../ControlledDateTimePickerDatatestid";
6
- import { ControlledDateTimePickerContext } from "../../../ControlledDateTimePickerCTX";
7
- import { convertToPositiveNumberIfPossible } from "../../../utils/numberHelpers";
8
- import { StyledWheelList, StyledWheelListItem, StyledTimeBtn, StyledWheelChangeTimeBtn } from "./Styleds";
9
- import { TimeWheelContext } from "./TimeWheelContext";
6
+ import { ControlledDateTimePickerDatatestid } from "../../../ControlledDateTimePickerDatatestid.js";
7
+ import { ControlledDateTimePickerContext } from "../../../ControlledDateTimePickerCTX.js";
8
+ import { convertToPositiveNumberIfPossible } from "../../../utils/numberHelpers.js";
9
+ import { StyledWheelList, StyledWheelListItem, StyledTimeBtn, StyledWheelChangeTimeBtn } from "./Styleds.js";
10
+ import { TimeWheelContext } from "./TimeWheelContext.js";
10
11
  const MinutesList = () => {
11
12
  const {
12
13
  currHourNum,
@@ -25,8 +26,25 @@ const MinutesList = () => {
25
26
  getIsDisabledTime,
26
27
  minutes,
27
28
  currFocusDescriber,
28
- latestInteractionRegion
29
+ latestInteractionRegion,
30
+ props
29
31
  } = useContext(ControlledDateTimePickerContext);
32
+ const ariaAndDataPropsPrevMinute = React2.useMemo(
33
+ () => getPropsPerDatatestid(props[ControlledDateTimePickerDatatestid.TIMEWHEEL.PREV_MINUTE]),
34
+ [props]
35
+ );
36
+ const ariaAndDataPropsNextMinute = React2.useMemo(
37
+ () => getPropsPerDatatestid(props[ControlledDateTimePickerDatatestid.TIMEWHEEL.NEXT_MINUTE]),
38
+ [props]
39
+ );
40
+ const ariaAndDataPropsCurrMinute = React2.useMemo(
41
+ () => getPropsPerDatatestid(props[ControlledDateTimePickerDatatestid.TIMEWHEEL.CURRENT_MINUTE]),
42
+ [props]
43
+ );
44
+ const ariaAndDataPropsMinute = React2.useMemo(
45
+ () => getPropsPerDatatestid(props[ControlledDateTimePickerDatatestid.TIMEWHEEL.MINUTE]),
46
+ [props]
47
+ );
30
48
  const handleCurrMeridiemRef = useCallback(
31
49
  (ButtonDomNode) => {
32
50
  setTimeout(() => {
@@ -49,6 +67,7 @@ const MinutesList = () => {
49
67
  tabIndex: -1,
50
68
  "data-testid": ControlledDateTimePickerDatatestid.TIMEWHEEL.PREV_MINUTE,
51
69
  type: "button",
70
+ ...ariaAndDataPropsPrevMinute,
52
71
  children: /* @__PURE__ */ jsx(ChevronSmallUp, { color: ["brand-primary", "700"] })
53
72
  }
54
73
  ) }),
@@ -90,6 +109,7 @@ const MinutesList = () => {
90
109
  "aria-valuetext": `${minutesString} minutes`,
91
110
  type: "button",
92
111
  ...btnProps,
112
+ ...isCurrentListItem ? ariaAndDataPropsCurrMinute : ariaAndDataPropsMinute,
93
113
  children: minutesString
94
114
  }
95
115
  )
@@ -108,6 +128,7 @@ const MinutesList = () => {
108
128
  "data-testid": ControlledDateTimePickerDatatestid.TIMEWHEEL.NEXT_MINUTE,
109
129
  tabIndex: -1,
110
130
  type: "button",
131
+ ...ariaAndDataPropsNextMinute,
111
132
  children: /* @__PURE__ */ jsx(ChevronSmallDown, { color: ["brand-primary", "700"] })
112
133
  }
113
134
  ) })
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/parts/Pickers/TimeWheel/MinutesList.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable complexity */\nimport React, { useContext, useCallback } from 'react';\nimport { ChevronSmallUp, ChevronSmallDown } from '@elliemae/ds-icons';\nimport { ControlledDateTimePickerDatatestid } from '../../../ControlledDateTimePickerDatatestid';\nimport { ControlledDateTimePickerContext } from '../../../ControlledDateTimePickerCTX';\nimport { convertToPositiveNumberIfPossible } from '../../../utils/numberHelpers';\nimport { StyledWheelList, StyledWheelListItem, StyledTimeBtn, StyledWheelChangeTimeBtn } from './Styleds';\nimport { TimeWheelContext } from './TimeWheelContext';\n\nexport const MinutesList = (): JSX.Element => {\n const {\n currHourNum,\n currMinuteNum,\n currMeridiem,\n visibleMinutes,\n handlePrevMinute,\n handleNextMinute,\n handleTimeWheelBtnChangeMinutes,\n handleCurrMinutesOnKeyDown,\n } = useContext(TimeWheelContext);\n const {\n prevMinutesBtnRef,\n currMinutesBtnRef,\n nextMinutesBtnRef,\n getIsDisabledTime,\n minutes,\n currFocusDescriber,\n latestInteractionRegion,\n } = useContext(ControlledDateTimePickerContext);\n const handleCurrMeridiemRef = useCallback(\n (ButtonDomNode: HTMLButtonElement) => {\n setTimeout(() => {\n currMinutesBtnRef.current = ButtonDomNode;\n if (latestInteractionRegion === 'timewheel' && currFocusDescriber === 'timewheel-curr-minute')\n ButtonDomNode?.focus?.();\n });\n },\n [currFocusDescriber, latestInteractionRegion, currMinutesBtnRef],\n );\n return (\n <StyledWheelList>\n <StyledWheelListItem>\n <StyledWheelChangeTimeBtn\n aria-label=\"subtract one minute\"\n buttonType=\"raw\"\n size=\"m\"\n onClick={handlePrevMinute}\n innerRef={prevMinutesBtnRef}\n tabIndex={-1}\n data-testid={ControlledDateTimePickerDatatestid.TIMEWHEEL.PREV_MINUTE}\n type=\"button\"\n >\n <ChevronSmallUp color={['brand-primary', '700']} />\n </StyledWheelChangeTimeBtn>\n </StyledWheelListItem>\n {visibleMinutes.map((minutesString) => {\n const key = `timewheel-minutes-${minutesString || ''}`;\n if (!minutesString) return <StyledWheelListItem key={key} />;\n const currMinutesTimeString = `${currHourNum}:${minutesString} ${currMeridiem}`;\n const isEmptyCurrValueCurrentListItem =\n !minutes && convertToPositiveNumberIfPossible(minutesString) === currMinuteNum;\n const isCurrentListItem = isEmptyCurrValueCurrentListItem || minutes === minutesString;\n const isDisabled = getIsDisabledTime(currMinutesTimeString);\n\n const tabIndex = isCurrentListItem ? 0 : -1;\n const btnProps = {\n onKeyDown: isCurrentListItem ? handleCurrMinutesOnKeyDown : undefined,\n innerRef: isCurrentListItem ? handleCurrMeridiemRef : undefined,\n };\n const styledProps = { isCurrentListItem, isDisabled };\n return (\n <StyledWheelListItem\n key={key}\n isCurrentListItem={isCurrentListItem}\n selected={convertToPositiveNumberIfPossible(minutesString) === currMinuteNum}\n >\n <StyledTimeBtn\n {...styledProps}\n data-testid={\n ControlledDateTimePickerDatatestid.TIMEWHEEL[isCurrentListItem ? 'CURRENT_MINUTE' : 'MINUTE']\n }\n selected={minutes.length === 2 && convertToPositiveNumberIfPossible(minutesString) === currMinuteNum}\n aria-label={`${minutesString} minutes`}\n aria-disabled={isDisabled}\n buttonType=\"raw\"\n size=\"m\"\n onClick={(e: React.MouseEvent<HTMLButtonElement>) => handleTimeWheelBtnChangeMinutes(minutesString, e)}\n tabIndex={tabIndex}\n role=\"spinbutton\"\n aria-valuemax={59}\n aria-valuemin={0}\n aria-valuenow={currMinuteNum}\n aria-valuetext={`${minutesString} minutes`}\n type=\"button\"\n {...btnProps}\n >\n {minutesString}\n </StyledTimeBtn>\n </StyledWheelListItem>\n );\n })}\n <StyledWheelListItem>\n <StyledWheelChangeTimeBtn\n aria-label=\"add one minute\"\n buttonType=\"raw\"\n size=\"m\"\n onClick={handleNextMinute}\n innerRef={nextMinutesBtnRef}\n data-testid={ControlledDateTimePickerDatatestid.TIMEWHEEL.NEXT_MINUTE}\n tabIndex={-1}\n type=\"button\"\n >\n <ChevronSmallDown color={['brand-primary', '700']} />\n </StyledWheelChangeTimeBtn>\n </StyledWheelListItem>\n </StyledWheelList>\n );\n};\n\nexport default MinutesList;\n"],
5
- "mappings": "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",
6
- "names": []
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable complexity */\nimport React, { useContext, useCallback } from 'react';\nimport { getPropsPerDatatestid } from '@elliemae/ds-props-helpers';\nimport { ChevronSmallUp, ChevronSmallDown } from '@elliemae/ds-icons';\nimport { ControlledDateTimePickerDatatestid } from '../../../ControlledDateTimePickerDatatestid.js';\nimport { ControlledDateTimePickerContext } from '../../../ControlledDateTimePickerCTX.js';\nimport { convertToPositiveNumberIfPossible } from '../../../utils/numberHelpers.js';\nimport { StyledWheelList, StyledWheelListItem, StyledTimeBtn, StyledWheelChangeTimeBtn } from './Styleds.js';\nimport { TimeWheelContext } from './TimeWheelContext.js';\n\nexport const MinutesList = (): JSX.Element => {\n const {\n currHourNum,\n currMinuteNum,\n currMeridiem,\n visibleMinutes,\n handlePrevMinute,\n handleNextMinute,\n handleTimeWheelBtnChangeMinutes,\n handleCurrMinutesOnKeyDown,\n } = useContext(TimeWheelContext);\n const {\n prevMinutesBtnRef,\n currMinutesBtnRef,\n nextMinutesBtnRef,\n getIsDisabledTime,\n minutes,\n currFocusDescriber,\n latestInteractionRegion,\n props,\n } = useContext(ControlledDateTimePickerContext);\n const ariaAndDataPropsPrevMinute = React.useMemo(\n () => getPropsPerDatatestid(props[ControlledDateTimePickerDatatestid.TIMEWHEEL.PREV_MINUTE]),\n [props],\n );\n const ariaAndDataPropsNextMinute = React.useMemo(\n () => getPropsPerDatatestid(props[ControlledDateTimePickerDatatestid.TIMEWHEEL.NEXT_MINUTE]),\n [props],\n );\n const ariaAndDataPropsCurrMinute = React.useMemo(\n () => getPropsPerDatatestid(props[ControlledDateTimePickerDatatestid.TIMEWHEEL.CURRENT_MINUTE]),\n [props],\n );\n const ariaAndDataPropsMinute = React.useMemo(\n () => getPropsPerDatatestid(props[ControlledDateTimePickerDatatestid.TIMEWHEEL.MINUTE]),\n [props],\n );\n\n const handleCurrMeridiemRef = useCallback(\n (ButtonDomNode: HTMLButtonElement) => {\n setTimeout(() => {\n currMinutesBtnRef.current = ButtonDomNode;\n if (latestInteractionRegion === 'timewheel' && currFocusDescriber === 'timewheel-curr-minute')\n ButtonDomNode?.focus?.();\n });\n },\n [currFocusDescriber, latestInteractionRegion, currMinutesBtnRef],\n );\n return (\n <StyledWheelList>\n <StyledWheelListItem>\n <StyledWheelChangeTimeBtn\n aria-label=\"subtract one minute\"\n buttonType=\"raw\"\n size=\"m\"\n onClick={handlePrevMinute}\n innerRef={prevMinutesBtnRef}\n tabIndex={-1}\n data-testid={ControlledDateTimePickerDatatestid.TIMEWHEEL.PREV_MINUTE}\n type=\"button\"\n {...ariaAndDataPropsPrevMinute}\n >\n <ChevronSmallUp color={['brand-primary', '700']} />\n </StyledWheelChangeTimeBtn>\n </StyledWheelListItem>\n {visibleMinutes.map((minutesString) => {\n const key = `timewheel-minutes-${minutesString || ''}`;\n if (!minutesString) return <StyledWheelListItem key={key} />;\n const currMinutesTimeString = `${currHourNum}:${minutesString} ${currMeridiem}`;\n const isEmptyCurrValueCurrentListItem =\n !minutes && convertToPositiveNumberIfPossible(minutesString) === currMinuteNum;\n const isCurrentListItem = isEmptyCurrValueCurrentListItem || minutes === minutesString;\n const isDisabled = getIsDisabledTime(currMinutesTimeString);\n\n const tabIndex = isCurrentListItem ? 0 : -1;\n const btnProps = {\n onKeyDown: isCurrentListItem ? handleCurrMinutesOnKeyDown : undefined,\n innerRef: isCurrentListItem ? handleCurrMeridiemRef : undefined,\n };\n const styledProps = { isCurrentListItem, isDisabled };\n return (\n <StyledWheelListItem\n key={key}\n isCurrentListItem={isCurrentListItem}\n selected={convertToPositiveNumberIfPossible(minutesString) === currMinuteNum}\n >\n <StyledTimeBtn\n {...styledProps}\n data-testid={\n ControlledDateTimePickerDatatestid.TIMEWHEEL[isCurrentListItem ? 'CURRENT_MINUTE' : 'MINUTE']\n }\n selected={minutes.length === 2 && convertToPositiveNumberIfPossible(minutesString) === currMinuteNum}\n aria-label={`${minutesString} minutes`}\n aria-disabled={isDisabled}\n buttonType=\"raw\"\n size=\"m\"\n onClick={(e: React.MouseEvent<HTMLButtonElement>) => handleTimeWheelBtnChangeMinutes(minutesString, e)}\n tabIndex={tabIndex}\n role=\"spinbutton\"\n aria-valuemax={59}\n aria-valuemin={0}\n aria-valuenow={currMinuteNum}\n aria-valuetext={`${minutesString} minutes`}\n type=\"button\"\n {...btnProps}\n {...(isCurrentListItem ? ariaAndDataPropsCurrMinute : ariaAndDataPropsMinute)}\n >\n {minutesString}\n </StyledTimeBtn>\n </StyledWheelListItem>\n );\n })}\n <StyledWheelListItem>\n <StyledWheelChangeTimeBtn\n aria-label=\"add one minute\"\n buttonType=\"raw\"\n size=\"m\"\n onClick={handleNextMinute}\n innerRef={nextMinutesBtnRef}\n data-testid={ControlledDateTimePickerDatatestid.TIMEWHEEL.NEXT_MINUTE}\n tabIndex={-1}\n type=\"button\"\n {...ariaAndDataPropsNextMinute}\n >\n <ChevronSmallDown color={['brand-primary', '700']} />\n </StyledWheelChangeTimeBtn>\n </StyledWheelListItem>\n </StyledWheelList>\n );\n};\n\nexport default MinutesList;\n"],
5
+ "mappings": "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",
6
+ "names": ["React"]
7
7
  }
@@ -2,7 +2,7 @@ import * as React from "react";
2
2
  import { css, styled } from "@elliemae/ds-system";
3
3
  import { Grid } from "@elliemae/ds-grid";
4
4
  import { DSButtonV2 } from "@elliemae/ds-button";
5
- import { DSControlledDateTimePickerName, DSControlledDateTimePickerSlots } from "../../../exported-related/theming";
5
+ import { DSControlledDateTimePickerName, DSControlledDateTimePickerSlots } from "../../../exported-related/theming.js";
6
6
  const focusBorder = css`
7
7
  &:after {
8
8
  position: absolute;
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/parts/Pickers/TimeWheel/Styleds.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-lines */\n/* eslint-disable @typescript-eslint/indent */\nimport { css, styled } from '@elliemae/ds-system';\nimport { Grid } from '@elliemae/ds-grid';\nimport { DSButtonV2 } from '@elliemae/ds-button';\nimport { DSControlledDateTimePickerName, DSControlledDateTimePickerSlots } from '../../../exported-related/theming';\n\ninterface StyledWheelListItemPropsT {\n isCurrentListItem?: boolean;\n selected?: boolean;\n}\n\ninterface StyledTimePickerContainerT {\n showShadow?: boolean;\n isControllerOnly: boolean;\n}\n\nconst focusBorder = css`\n &:after {\n position: absolute;\n content: '';\n top: -2px;\n left: -2px;\n width: calc(100% + 4px);\n height: calc(100% + 4px);\n border-radius: 50%;\n border: 2px solid ${({ theme, isDisabled }) => (isDisabled ? theme.colors.danger[900] : theme.colors.brand[700])};\n }\n`;\n\nconst diagonalLine = css`\n &:before {\n position: absolute;\n content: '';\n top: 48%;\n left: -1px;\n height: 1px;\n width: calc(100% + 2px);\n transform: rotate(45deg);\n background-color: ${({ theme, isCurrentListItem, selected }) => {\n if (selected) return theme.colors.neutral['000'];\n if (isCurrentListItem) return theme.colors.danger[900];\n return theme.colors.neutral[500];\n }};\n }\n`;\n\nconst fontColorPerStatus = css`\n ${({ theme, isDisabled, isCurrentListItem, selected }) => {\n if (selected) return theme.colors.neutral['000'];\n if (isDisabled && isCurrentListItem) return theme.colors.danger[900];\n if (isDisabled) return theme.colors.neutral[500];\n if (isCurrentListItem) return theme.colors.brand[600];\n return theme.colors.neutral[800];\n }};\n`;\n\nconst hoverBgPerStatus = css`\n ${({ theme, selected, isDisabled }) => {\n if (isDisabled && selected) return theme.colors.danger[900];\n if (selected) return theme.colors.brand[700];\n return theme.colors.neutral['000'];\n }}\n`;\n\nexport const StyledIconTriggerButton = styled(DSButtonV2, {\n name: DSControlledDateTimePickerName,\n slot: DSControlledDateTimePickerSlots.PICKER_ICONS.TIMEWHEEL,\n})`\n color: ${({ theme }) => theme.colors.brand['600']};\n width: 26px;\n height: 26px;\n`;\n\nexport const StyledWheelList = styled.div`\n width: 100%;\n height: 100%;\n margin: auto;\n padding: 0;\n position: relative;\n display: flex;\n flex-direction: column;\n align-items: center;\n &:focus-within {\n &:before {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n border-radius: 2px;\n border: 2px solid ${({ theme }) => theme.colors.brand[700]};\n box-shadow: 0 0 2px ${({ theme }) => theme.colors.brand[700]};\n }\n }\n`;\n\nexport const StyledTimePickerContainer = styled.div<StyledTimePickerContainerT>`\n display: grid;\n position: relative;\n grid-template-columns: 192px;\n grid-template-rows: 36px 30px auto;\n grid-template-areas:\n 'TimePickerHead'\n 'TimePickerWheelsLegend'\n 'VerticalWheelWrapper';\n`;\n\nexport const StyledTimePickerHead = styled(Grid, {\n name: DSControlledDateTimePickerName,\n slot: DSControlledDateTimePickerSlots.TIMEWHEEL.HEADER_LABEL,\n})`\n width: 100%;\n grid-area: TimePickerHead;\n justify-content: center;\n align-items: center;\n background: ${({ theme }) => theme.colors.neutral['050']};\n`;\n\nexport const StyledTimePickerWheelsLegend = styled.div`\n width: 100%;\n height: 100;\n grid-area: TimePickerWheelsLegend;\n display: grid;\n grid-template-columns: ${({ theme }) => theme.space.xl} ${({ theme }) => theme.space.xl} ${({ theme }) =>\n theme.space.xl};\n align-items: center;\n justify-content: center;\n text-align: center;\n background: ${({ theme }) => theme.colors.neutral['050']};\n`;\n\nexport const StyledTimePickerWheelWrapper = styled.div`\n width: 100%;\n background: ${({ theme }) => theme.colors.neutral['000']};\n grid-area: VerticalWheelWrapper;\n display: grid;\n grid-template-columns: ${({ theme }) => theme.space.xl} ${({ theme }) => theme.space.xl} ${({ theme }) =>\n theme.space.xl};\n grid-template-rows: 100%;\n & ul:not(:last-child) {\n position: relative;\n &:after {\n content: '';\n position: absolute;\n left: 100%;\n top: 5%;\n height: 90%;\n width: 1px;\n background: ${({ theme }) => theme.colors.neutral[200]};\n }\n }\n`;\n\nexport const StyledTimeBtn = styled(DSButtonV2, {\n name: DSControlledDateTimePickerName,\n slot: DSControlledDateTimePickerSlots.TIMEWHEEL.TIME_BUTTON,\n})`\n position: relative;\n height: ${({ theme }) => theme.space.s};\n width: ${({ theme }) => theme.space.s};\n border-radius: 50%;\n\n &:hover {\n background-color: ${hoverBgPerStatus};\n }\n\n color: ${fontColorPerStatus};\n\n ${({ selected, isCurrentListItem }) => (isCurrentListItem && !selected ? focusBorder : ``)}\n\n ${({ isDisabled }) =>\n isDisabled\n ? css`\n cursor: not-allowed;\n ${diagonalLine};\n `\n : ``}\n\n ${({ theme, selected, isDisabled }) =>\n selected\n ? css`\n font-weight: ${theme.fontWeights.semibold};\n background-color ${isDisabled ? theme.colors.danger[900] : theme.colors.brand[700]};\n `\n : ``};\n`;\n\nexport const StyledWheelListItem = styled.div<StyledWheelListItemPropsT>`\n margin: auto;\n width: 36px;\n height: 36px;\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n`;\n\nexport const StyledWheelChangeTimeBtn = styled(DSButtonV2, {\n name: DSControlledDateTimePickerName,\n slot: DSControlledDateTimePickerSlots.TIMEWHEEL.TIME_CHANGE_BUTTON,\n})`\n height: ${({ theme }) => theme.space.s};\n width: ${({ theme }) => theme.space.s};\n min-width: ${({ theme }) => theme.space.s};\n border-radius: 50%;\n`;\n\nexport const TimeWheelFooterMessage = styled('footer', {\n name: DSControlledDateTimePickerName,\n slot: DSControlledDateTimePickerSlots.FOOTERS.TIMEWHEEL,\n})`\n border-top: solid 1px ${({ theme }) => theme.colors.neutral[300]};\n margin: 0 ${({ theme }) => theme.space.xxs2};\n padding: ${({ theme }) => theme.space.xxs2} 0;\n color: ${({ theme }) => theme.colors.danger[900]};\n font-style: italic;\n font-weight: ${({ theme }) => theme.fontWeights.thin};\n font-size: ${({ theme }) => theme.fontSizes.microText[200]};\n text-align: right;\n background-color: white;\n`;\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-lines */\n/* eslint-disable @typescript-eslint/indent */\nimport { css, styled } from '@elliemae/ds-system';\nimport { Grid } from '@elliemae/ds-grid';\nimport { DSButtonV2 } from '@elliemae/ds-button';\nimport { DSControlledDateTimePickerName, DSControlledDateTimePickerSlots } from '../../../exported-related/theming.js';\n\ninterface StyledWheelListItemPropsT {\n isCurrentListItem?: boolean;\n selected?: boolean;\n}\n\ninterface StyledTimePickerContainerT {\n showShadow?: boolean;\n isControllerOnly: boolean;\n}\n\nconst focusBorder = css`\n &:after {\n position: absolute;\n content: '';\n top: -2px;\n left: -2px;\n width: calc(100% + 4px);\n height: calc(100% + 4px);\n border-radius: 50%;\n border: 2px solid ${({ theme, isDisabled }) => (isDisabled ? theme.colors.danger[900] : theme.colors.brand[700])};\n }\n`;\n\nconst diagonalLine = css`\n &:before {\n position: absolute;\n content: '';\n top: 48%;\n left: -1px;\n height: 1px;\n width: calc(100% + 2px);\n transform: rotate(45deg);\n background-color: ${({ theme, isCurrentListItem, selected }) => {\n if (selected) return theme.colors.neutral['000'];\n if (isCurrentListItem) return theme.colors.danger[900];\n return theme.colors.neutral[500];\n }};\n }\n`;\n\nconst fontColorPerStatus = css`\n ${({ theme, isDisabled, isCurrentListItem, selected }) => {\n if (selected) return theme.colors.neutral['000'];\n if (isDisabled && isCurrentListItem) return theme.colors.danger[900];\n if (isDisabled) return theme.colors.neutral[500];\n if (isCurrentListItem) return theme.colors.brand[600];\n return theme.colors.neutral[800];\n }};\n`;\n\nconst hoverBgPerStatus = css`\n ${({ theme, selected, isDisabled }) => {\n if (isDisabled && selected) return theme.colors.danger[900];\n if (selected) return theme.colors.brand[700];\n return theme.colors.neutral['000'];\n }}\n`;\n\nexport const StyledIconTriggerButton = styled(DSButtonV2, {\n name: DSControlledDateTimePickerName,\n slot: DSControlledDateTimePickerSlots.PICKER_ICONS.TIMEWHEEL,\n})`\n color: ${({ theme }) => theme.colors.brand['600']};\n width: 26px;\n height: 26px;\n`;\n\nexport const StyledWheelList = styled.div`\n width: 100%;\n height: 100%;\n margin: auto;\n padding: 0;\n position: relative;\n display: flex;\n flex-direction: column;\n align-items: center;\n &:focus-within {\n &:before {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n border-radius: 2px;\n border: 2px solid ${({ theme }) => theme.colors.brand[700]};\n box-shadow: 0 0 2px ${({ theme }) => theme.colors.brand[700]};\n }\n }\n`;\n\nexport const StyledTimePickerContainer = styled.div<StyledTimePickerContainerT>`\n display: grid;\n position: relative;\n grid-template-columns: 192px;\n grid-template-rows: 36px 30px auto;\n grid-template-areas:\n 'TimePickerHead'\n 'TimePickerWheelsLegend'\n 'VerticalWheelWrapper';\n`;\n\nexport const StyledTimePickerHead = styled(Grid, {\n name: DSControlledDateTimePickerName,\n slot: DSControlledDateTimePickerSlots.TIMEWHEEL.HEADER_LABEL,\n})`\n width: 100%;\n grid-area: TimePickerHead;\n justify-content: center;\n align-items: center;\n background: ${({ theme }) => theme.colors.neutral['050']};\n`;\n\nexport const StyledTimePickerWheelsLegend = styled.div`\n width: 100%;\n height: 100;\n grid-area: TimePickerWheelsLegend;\n display: grid;\n grid-template-columns: ${({ theme }) => theme.space.xl} ${({ theme }) => theme.space.xl} ${({ theme }) =>\n theme.space.xl};\n align-items: center;\n justify-content: center;\n text-align: center;\n background: ${({ theme }) => theme.colors.neutral['050']};\n`;\n\nexport const StyledTimePickerWheelWrapper = styled.div`\n width: 100%;\n background: ${({ theme }) => theme.colors.neutral['000']};\n grid-area: VerticalWheelWrapper;\n display: grid;\n grid-template-columns: ${({ theme }) => theme.space.xl} ${({ theme }) => theme.space.xl} ${({ theme }) =>\n theme.space.xl};\n grid-template-rows: 100%;\n & ul:not(:last-child) {\n position: relative;\n &:after {\n content: '';\n position: absolute;\n left: 100%;\n top: 5%;\n height: 90%;\n width: 1px;\n background: ${({ theme }) => theme.colors.neutral[200]};\n }\n }\n`;\n\nexport const StyledTimeBtn = styled(DSButtonV2, {\n name: DSControlledDateTimePickerName,\n slot: DSControlledDateTimePickerSlots.TIMEWHEEL.TIME_BUTTON,\n})`\n position: relative;\n height: ${({ theme }) => theme.space.s};\n width: ${({ theme }) => theme.space.s};\n border-radius: 50%;\n\n &:hover {\n background-color: ${hoverBgPerStatus};\n }\n\n color: ${fontColorPerStatus};\n\n ${({ selected, isCurrentListItem }) => (isCurrentListItem && !selected ? focusBorder : ``)}\n\n ${({ isDisabled }) =>\n isDisabled\n ? css`\n cursor: not-allowed;\n ${diagonalLine};\n `\n : ``}\n\n ${({ theme, selected, isDisabled }) =>\n selected\n ? css`\n font-weight: ${theme.fontWeights.semibold};\n background-color ${isDisabled ? theme.colors.danger[900] : theme.colors.brand[700]};\n `\n : ``};\n`;\n\nexport const StyledWheelListItem = styled.div<StyledWheelListItemPropsT>`\n margin: auto;\n width: 36px;\n height: 36px;\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n`;\n\nexport const StyledWheelChangeTimeBtn = styled(DSButtonV2, {\n name: DSControlledDateTimePickerName,\n slot: DSControlledDateTimePickerSlots.TIMEWHEEL.TIME_CHANGE_BUTTON,\n})`\n height: ${({ theme }) => theme.space.s};\n width: ${({ theme }) => theme.space.s};\n min-width: ${({ theme }) => theme.space.s};\n border-radius: 50%;\n`;\n\nexport const TimeWheelFooterMessage = styled('footer', {\n name: DSControlledDateTimePickerName,\n slot: DSControlledDateTimePickerSlots.FOOTERS.TIMEWHEEL,\n})`\n border-top: solid 1px ${({ theme }) => theme.colors.neutral[300]};\n margin: 0 ${({ theme }) => theme.space.xxs2};\n padding: ${({ theme }) => theme.space.xxs2} 0;\n color: ${({ theme }) => theme.colors.danger[900]};\n font-style: italic;\n font-weight: ${({ theme }) => theme.fontWeights.thin};\n font-size: ${({ theme }) => theme.fontSizes.microText[200]};\n text-align: right;\n background-color: white;\n`;\n"],
5
5
  "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -1,11 +1,11 @@
1
1
  import * as React from "react";
2
2
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
3
3
  import { useContext } from "react";
4
- import { TimeWheelIconTrigger } from "./TimeWheelIconTrigger";
5
- import { TimeWheelWrapper } from "./TimeWheelWrapper";
6
- import { TimeWheelContext } from "./TimeWheelContext";
7
- import { useConfigTimePickerCTX } from "./useConfigTimePickerCTX";
8
- import { ControlledDateTimePickerContext } from "../../../ControlledDateTimePickerCTX";
4
+ import { TimeWheelIconTrigger } from "./TimeWheelIconTrigger.js";
5
+ import { TimeWheelWrapper } from "./TimeWheelWrapper.js";
6
+ import { TimeWheelContext } from "./TimeWheelContext.js";
7
+ import { useConfigTimePickerCTX } from "./useConfigTimePickerCTX.js";
8
+ import { ControlledDateTimePickerContext } from "../../../ControlledDateTimePickerCTX.js";
9
9
  const WrappedTimeWheelContext = ({ children }) => {
10
10
  const ctx = useConfigTimePickerCTX();
11
11
  return /* @__PURE__ */ jsx(TimeWheelContext.Provider, { value: ctx, children });
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/parts/Pickers/TimeWheel/TimeWheel.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-len */\nimport React, { useContext } from 'react';\nimport { TimeWheelIconTrigger } from './TimeWheelIconTrigger';\nimport { TimeWheelWrapper } from './TimeWheelWrapper';\nimport { TimeWheelContext } from './TimeWheelContext';\nimport { useConfigTimePickerCTX } from './useConfigTimePickerCTX';\nimport { ControlledDateTimePickerContext } from '../../../ControlledDateTimePickerCTX';\n\n// the Context is Reused in CalendarWithTimeWheel\nexport const WrappedTimeWheelContext = ({ children }: { children: JSX.Element }) => {\n const ctx = useConfigTimePickerCTX();\n return <TimeWheelContext.Provider value={ctx}>{children}</TimeWheelContext.Provider>;\n};\n\nconst TimeWheelContent = () => {\n const { showTimePicker, handleMenuWrapperKeyDown } = useContext(TimeWheelContext);\n const { isControllerOnly } = useContext(ControlledDateTimePickerContext);\n\n return (\n <>\n {isControllerOnly ? null : <TimeWheelIconTrigger />}\n {isControllerOnly || showTimePicker ? (\n <>\n {/* The <div> element is catching the \"Escape\" key to close the calendar, there is no valid aria role for this */}\n {/* https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/master/docs/rules/no-static-element-interactions.md#case-the-event-handler-is-only-being-used-to-capture-bubbled-events */}\n {/* eslint-disable-next-line jsx-a11y/no-static-element-interactions */}\n <div onKeyDown={handleMenuWrapperKeyDown}>\n <TimeWheelWrapper />\n </div>\n </>\n ) : null}\n </>\n );\n};\n// we wrap in context in a separate statement so we can use the useContext and be sure it's correctly initialized\nexport const TimeWheel = (): JSX.Element => (\n <WrappedTimeWheelContext>\n <TimeWheelContent />\n </WrappedTimeWheelContext>\n);\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-len */\nimport React, { useContext } from 'react';\nimport { TimeWheelIconTrigger } from './TimeWheelIconTrigger.js';\nimport { TimeWheelWrapper } from './TimeWheelWrapper.js';\nimport { TimeWheelContext } from './TimeWheelContext.js';\nimport { useConfigTimePickerCTX } from './useConfigTimePickerCTX.js';\nimport { ControlledDateTimePickerContext } from '../../../ControlledDateTimePickerCTX.js';\n\n// the Context is Reused in CalendarWithTimeWheel\nexport const WrappedTimeWheelContext = ({ children }: { children: JSX.Element }) => {\n const ctx = useConfigTimePickerCTX();\n return <TimeWheelContext.Provider value={ctx}>{children}</TimeWheelContext.Provider>;\n};\n\nconst TimeWheelContent = () => {\n const { showTimePicker, handleMenuWrapperKeyDown } = useContext(TimeWheelContext);\n const { isControllerOnly } = useContext(ControlledDateTimePickerContext);\n\n return (\n <>\n {isControllerOnly ? null : <TimeWheelIconTrigger />}\n {isControllerOnly || showTimePicker ? (\n <>\n {/* The <div> element is catching the \"Escape\" key to close the calendar, there is no valid aria role for this */}\n {/* https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/master/docs/rules/no-static-element-interactions.md#case-the-event-handler-is-only-being-used-to-capture-bubbled-events */}\n {/* eslint-disable-next-line jsx-a11y/no-static-element-interactions */}\n <div onKeyDown={handleMenuWrapperKeyDown}>\n <TimeWheelWrapper />\n </div>\n </>\n ) : null}\n </>\n );\n};\n// we wrap in context in a separate statement so we can use the useContext and be sure it's correctly initialized\nexport const TimeWheel = (): JSX.Element => (\n <WrappedTimeWheelContext>\n <TimeWheelContent />\n </WrappedTimeWheelContext>\n);\n"],
5
5
  "mappings": "AAAA,YAAY,WAAW;ACWd,SAWD,UAXC,KAQL,YARK;AAVT,SAAgB,kBAAkB;AAClC,SAAS,4BAA4B;AACrC,SAAS,wBAAwB;AACjC,SAAS,wBAAwB;AACjC,SAAS,8BAA8B;AACvC,SAAS,uCAAuC;AAGzC,MAAM,0BAA0B,CAAC,EAAE,SAAS,MAAiC;AAClF,QAAM,MAAM,uBAAuB;AACnC,SAAO,oBAAC,iBAAiB,UAAjB,EAA0B,OAAO,KAAM,UAAS;AAC1D;AAEA,MAAM,mBAAmB,MAAM;AAC7B,QAAM,EAAE,gBAAgB,yBAAyB,IAAI,WAAW,gBAAgB;AAChF,QAAM,EAAE,iBAAiB,IAAI,WAAW,+BAA+B;AAEvE,SACE,iCACG;AAAA,uBAAmB,OAAO,oBAAC,wBAAqB;AAAA,IAChD,oBAAoB,iBACnB,gCAIE,8BAAC,SAAI,WAAW,0BACd,8BAAC,oBAAiB,GACpB,GACF,IACE;AAAA,KACN;AAEJ;AAEO,MAAM,YAAY,MACvB,oBAAC,2BACC,8BAAC,oBAAiB,GACpB;",
6
6
  "names": []
7
7
  }