@mui/x-date-pickers 6.15.0 → 6.16.1

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 (509) hide show
  1. package/CHANGELOG.md +144 -0
  2. package/DateCalendar/DateCalendar.js +9 -3
  3. package/DateCalendar/DateCalendar.types.d.ts +1 -1
  4. package/DateCalendar/DayCalendar.d.ts +6 -5
  5. package/DateCalendar/DayCalendar.js +20 -8
  6. package/DateCalendar/PickersFadeTransitionGroup.js +6 -6
  7. package/DateCalendar/PickersSlideTransition.d.ts +0 -1
  8. package/DateCalendar/PickersSlideTransition.js +5 -5
  9. package/DateCalendar/dayCalendarClasses.d.ts +2 -0
  10. package/DateCalendar/dayCalendarClasses.js +1 -1
  11. package/DateField/DateField.js +32 -4
  12. package/DateField/DateField.types.d.ts +3 -2
  13. package/DatePicker/DatePicker.js +6 -2
  14. package/DateTimeField/DateTimeField.js +32 -4
  15. package/DateTimeField/DateTimeField.types.d.ts +3 -2
  16. package/DateTimePicker/DateTimePicker.js +6 -2
  17. package/DateTimePicker/DateTimePickerToolbar.js +1 -0
  18. package/DesktopDatePicker/DesktopDatePicker.js +6 -2
  19. package/DesktopDateTimePicker/DesktopDateTimePicker.js +6 -2
  20. package/MobileDatePicker/MobileDatePicker.js +6 -2
  21. package/MobileDateTimePicker/MobileDateTimePicker.js +6 -2
  22. package/MonthCalendar/MonthCalendar.js +4 -1
  23. package/StaticDatePicker/StaticDatePicker.js +6 -2
  24. package/StaticDateTimePicker/StaticDateTimePicker.js +6 -2
  25. package/TimeField/TimeField.js +29 -4
  26. package/TimeField/TimeField.types.d.ts +3 -2
  27. package/TimePicker/TimePickerToolbar.js +1 -0
  28. package/YearCalendar/PickersYear.js +1 -1
  29. package/YearCalendar/YearCalendar.js +6 -3
  30. package/hooks/index.d.ts +1 -0
  31. package/hooks/index.js +1 -0
  32. package/hooks/package.json +6 -0
  33. package/hooks/useClearableField.d.ts +25 -0
  34. package/hooks/useClearableField.js +79 -0
  35. package/icons/index.d.ts +6 -0
  36. package/icons/index.js +8 -1
  37. package/index.d.ts +1 -0
  38. package/index.js +3 -2
  39. package/internals/constants/dimensions.d.ts +2 -1
  40. package/internals/constants/dimensions.js +2 -1
  41. package/internals/hooks/useDesktopPicker/useDesktopPicker.js +3 -1
  42. package/internals/hooks/useDesktopPicker/useDesktopPicker.types.d.ts +3 -2
  43. package/internals/hooks/useField/index.d.ts +1 -1
  44. package/internals/hooks/useField/useField.js +27 -7
  45. package/internals/hooks/useField/useField.types.d.ts +37 -1
  46. package/internals/index.d.ts +1 -1
  47. package/internals/models/props/toolbar.d.ts +3 -0
  48. package/internals/models/validation.d.ts +3 -0
  49. package/internals/utils/date-utils.d.ts +1 -0
  50. package/internals/utils/date-utils.js +4 -0
  51. package/legacy/DateCalendar/DateCalendar.js +9 -3
  52. package/legacy/DateCalendar/DayCalendar.js +24 -11
  53. package/legacy/DateCalendar/PickersFadeTransitionGroup.js +6 -6
  54. package/legacy/DateCalendar/PickersSlideTransition.js +5 -5
  55. package/legacy/DateCalendar/dayCalendarClasses.js +1 -1
  56. package/legacy/DateField/DateField.js +30 -3
  57. package/legacy/DatePicker/DatePicker.js +6 -2
  58. package/legacy/DateTimeField/DateTimeField.js +30 -3
  59. package/legacy/DateTimePicker/DateTimePicker.js +6 -2
  60. package/legacy/DateTimePicker/DateTimePickerToolbar.js +1 -0
  61. package/legacy/DesktopDatePicker/DesktopDatePicker.js +6 -2
  62. package/legacy/DesktopDateTimePicker/DesktopDateTimePicker.js +6 -2
  63. package/legacy/MobileDatePicker/MobileDatePicker.js +6 -2
  64. package/legacy/MobileDateTimePicker/MobileDateTimePicker.js +6 -2
  65. package/legacy/MonthCalendar/MonthCalendar.js +4 -1
  66. package/legacy/StaticDatePicker/StaticDatePicker.js +6 -2
  67. package/legacy/StaticDateTimePicker/StaticDateTimePicker.js +6 -2
  68. package/legacy/TimeField/TimeField.js +27 -3
  69. package/legacy/TimePicker/TimePickerToolbar.js +1 -0
  70. package/legacy/YearCalendar/PickersYear.js +1 -1
  71. package/legacy/YearCalendar/YearCalendar.js +6 -4
  72. package/legacy/hooks/index.js +1 -0
  73. package/legacy/hooks/useClearableField.js +80 -0
  74. package/legacy/icons/index.js +8 -1
  75. package/legacy/index.js +3 -2
  76. package/legacy/internals/constants/dimensions.js +2 -1
  77. package/legacy/internals/hooks/useDesktopPicker/useDesktopPicker.js +3 -1
  78. package/legacy/internals/hooks/useField/useField.js +31 -8
  79. package/legacy/internals/utils/date-utils.js +6 -0
  80. package/legacy/locales/beBY.js +2 -0
  81. package/legacy/locales/caES.js +2 -0
  82. package/legacy/locales/csCZ.js +2 -0
  83. package/legacy/locales/daDK.js +2 -0
  84. package/legacy/locales/deDE.js +2 -0
  85. package/legacy/locales/elGR.js +2 -0
  86. package/legacy/locales/enUS.js +1 -0
  87. package/legacy/locales/esES.js +2 -0
  88. package/legacy/locales/faIR.js +2 -0
  89. package/legacy/locales/fiFI.js +2 -0
  90. package/legacy/locales/frFR.js +2 -0
  91. package/legacy/locales/heIL.js +2 -0
  92. package/legacy/locales/huHU.js +1 -0
  93. package/legacy/locales/isIS.js +2 -0
  94. package/legacy/locales/itIT.js +2 -0
  95. package/legacy/locales/jaJP.js +2 -0
  96. package/legacy/locales/koKR.js +2 -0
  97. package/legacy/locales/kzKZ.js +2 -0
  98. package/legacy/locales/nbNO.js +2 -0
  99. package/legacy/locales/nlNL.js +2 -0
  100. package/legacy/locales/plPL.js +2 -0
  101. package/legacy/locales/ptBR.js +2 -0
  102. package/legacy/locales/roRO.js +1 -0
  103. package/legacy/locales/ruRU.js +2 -0
  104. package/legacy/locales/skSK.js +2 -0
  105. package/legacy/locales/svSE.js +2 -0
  106. package/legacy/locales/trTR.js +2 -0
  107. package/legacy/locales/ukUA.js +2 -0
  108. package/legacy/locales/urPK.js +2 -0
  109. package/legacy/locales/viVN.js +2 -0
  110. package/legacy/locales/zhCN.js +2 -0
  111. package/legacy/locales/zhHK.js +2 -0
  112. package/locales/beBY.d.ts +1 -0
  113. package/locales/beBY.js +2 -0
  114. package/locales/caES.d.ts +1 -0
  115. package/locales/caES.js +2 -0
  116. package/locales/csCZ.d.ts +1 -0
  117. package/locales/csCZ.js +2 -0
  118. package/locales/daDK.d.ts +1 -0
  119. package/locales/daDK.js +2 -0
  120. package/locales/deDE.d.ts +1 -0
  121. package/locales/deDE.js +2 -0
  122. package/locales/elGR.d.ts +1 -0
  123. package/locales/elGR.js +2 -0
  124. package/locales/enUS.d.ts +1 -0
  125. package/locales/enUS.js +1 -0
  126. package/locales/esES.d.ts +1 -0
  127. package/locales/esES.js +2 -0
  128. package/locales/faIR.d.ts +1 -0
  129. package/locales/faIR.js +2 -0
  130. package/locales/fiFI.d.ts +1 -0
  131. package/locales/fiFI.js +2 -0
  132. package/locales/frFR.d.ts +1 -0
  133. package/locales/frFR.js +2 -0
  134. package/locales/heIL.d.ts +1 -0
  135. package/locales/heIL.js +2 -0
  136. package/locales/huHU.d.ts +1 -0
  137. package/locales/huHU.js +1 -0
  138. package/locales/isIS.d.ts +1 -0
  139. package/locales/isIS.js +2 -0
  140. package/locales/itIT.d.ts +1 -0
  141. package/locales/itIT.js +2 -0
  142. package/locales/jaJP.d.ts +1 -0
  143. package/locales/jaJP.js +2 -0
  144. package/locales/koKR.d.ts +1 -0
  145. package/locales/koKR.js +2 -0
  146. package/locales/kzKZ.d.ts +1 -0
  147. package/locales/kzKZ.js +2 -0
  148. package/locales/nbNO.d.ts +1 -0
  149. package/locales/nbNO.js +2 -0
  150. package/locales/nlNL.d.ts +1 -0
  151. package/locales/nlNL.js +2 -0
  152. package/locales/plPL.d.ts +1 -0
  153. package/locales/plPL.js +2 -0
  154. package/locales/ptBR.d.ts +1 -0
  155. package/locales/ptBR.js +2 -0
  156. package/locales/roRO.d.ts +1 -0
  157. package/locales/roRO.js +1 -0
  158. package/locales/ruRU.d.ts +1 -0
  159. package/locales/ruRU.js +2 -0
  160. package/locales/skSK.d.ts +1 -0
  161. package/locales/skSK.js +2 -0
  162. package/locales/svSE.d.ts +1 -0
  163. package/locales/svSE.js +2 -0
  164. package/locales/trTR.d.ts +1 -0
  165. package/locales/trTR.js +2 -0
  166. package/locales/ukUA.d.ts +1 -0
  167. package/locales/ukUA.js +2 -0
  168. package/locales/urPK.d.ts +1 -0
  169. package/locales/urPK.js +2 -0
  170. package/locales/utils/getPickersLocalization.d.ts +1 -0
  171. package/locales/utils/pickersLocaleTextApi.d.ts +1 -0
  172. package/locales/viVN.d.ts +1 -0
  173. package/locales/viVN.js +2 -0
  174. package/locales/zhCN.d.ts +1 -0
  175. package/locales/zhCN.js +2 -0
  176. package/locales/zhHK.d.ts +1 -0
  177. package/locales/zhHK.js +2 -0
  178. package/models/adapters.d.ts +1 -0
  179. package/models/fields.d.ts +2 -0
  180. package/modern/DateCalendar/DateCalendar.js +9 -3
  181. package/modern/DateCalendar/DayCalendar.js +27 -13
  182. package/modern/DateCalendar/PickersFadeTransitionGroup.js +6 -6
  183. package/modern/DateCalendar/PickersSlideTransition.js +5 -5
  184. package/modern/DateCalendar/dayCalendarClasses.js +1 -1
  185. package/modern/DateField/DateField.js +32 -4
  186. package/modern/DatePicker/DatePicker.js +6 -2
  187. package/modern/DateTimeField/DateTimeField.js +32 -4
  188. package/modern/DateTimePicker/DateTimePicker.js +6 -2
  189. package/modern/DateTimePicker/DateTimePickerToolbar.js +1 -0
  190. package/modern/DesktopDatePicker/DesktopDatePicker.js +6 -2
  191. package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +6 -2
  192. package/modern/MobileDatePicker/MobileDatePicker.js +6 -2
  193. package/modern/MobileDateTimePicker/MobileDateTimePicker.js +6 -2
  194. package/modern/MonthCalendar/MonthCalendar.js +4 -1
  195. package/modern/StaticDatePicker/StaticDatePicker.js +6 -2
  196. package/modern/StaticDateTimePicker/StaticDateTimePicker.js +6 -2
  197. package/modern/TimeField/TimeField.js +29 -4
  198. package/modern/TimePicker/TimePickerToolbar.js +1 -0
  199. package/modern/YearCalendar/PickersYear.js +1 -1
  200. package/modern/YearCalendar/YearCalendar.js +5 -3
  201. package/modern/hooks/index.js +1 -0
  202. package/modern/hooks/useClearableField.js +78 -0
  203. package/modern/icons/index.js +8 -1
  204. package/modern/index.js +3 -2
  205. package/modern/internals/constants/dimensions.js +2 -1
  206. package/modern/internals/hooks/useDesktopPicker/useDesktopPicker.js +3 -1
  207. package/modern/internals/hooks/useField/useField.js +26 -7
  208. package/modern/internals/utils/date-utils.js +4 -0
  209. package/modern/locales/beBY.js +2 -0
  210. package/modern/locales/caES.js +2 -0
  211. package/modern/locales/csCZ.js +2 -0
  212. package/modern/locales/daDK.js +2 -0
  213. package/modern/locales/deDE.js +2 -0
  214. package/modern/locales/elGR.js +2 -0
  215. package/modern/locales/enUS.js +1 -0
  216. package/modern/locales/esES.js +2 -0
  217. package/modern/locales/faIR.js +2 -0
  218. package/modern/locales/fiFI.js +2 -0
  219. package/modern/locales/frFR.js +2 -0
  220. package/modern/locales/heIL.js +2 -0
  221. package/modern/locales/huHU.js +1 -0
  222. package/modern/locales/isIS.js +2 -0
  223. package/modern/locales/itIT.js +2 -0
  224. package/modern/locales/jaJP.js +2 -0
  225. package/modern/locales/koKR.js +2 -0
  226. package/modern/locales/kzKZ.js +2 -0
  227. package/modern/locales/nbNO.js +2 -0
  228. package/modern/locales/nlNL.js +2 -0
  229. package/modern/locales/plPL.js +2 -0
  230. package/modern/locales/ptBR.js +2 -0
  231. package/modern/locales/roRO.js +1 -0
  232. package/modern/locales/ruRU.js +2 -0
  233. package/modern/locales/skSK.js +2 -0
  234. package/modern/locales/svSE.js +2 -0
  235. package/modern/locales/trTR.js +2 -0
  236. package/modern/locales/ukUA.js +2 -0
  237. package/modern/locales/urPK.js +2 -0
  238. package/modern/locales/viVN.js +2 -0
  239. package/modern/locales/zhCN.js +2 -0
  240. package/modern/locales/zhHK.js +2 -0
  241. package/node/DateCalendar/DateCalendar.js +10 -5
  242. package/node/DateCalendar/DayCalendar.js +26 -12
  243. package/node/DateCalendar/PickersFadeTransitionGroup.js +6 -6
  244. package/node/DateCalendar/PickersSlideTransition.js +5 -7
  245. package/node/DateCalendar/dateCalendarClasses.js +1 -2
  246. package/node/DateCalendar/dayCalendarClasses.js +1 -2
  247. package/node/DateCalendar/pickersFadeTransitionGroupClasses.js +1 -2
  248. package/node/DateCalendar/pickersSlideTransitionClasses.js +1 -2
  249. package/node/DateField/DateField.js +33 -6
  250. package/node/DatePicker/DatePicker.js +7 -4
  251. package/node/DatePicker/DatePickerToolbar.js +1 -2
  252. package/node/DatePicker/datePickerToolbarClasses.js +1 -2
  253. package/node/DateTimeField/DateTimeField.js +33 -6
  254. package/node/DateTimePicker/DateTimePicker.js +7 -4
  255. package/node/DateTimePicker/DateTimePickerTabs.js +1 -2
  256. package/node/DateTimePicker/DateTimePickerToolbar.js +1 -0
  257. package/node/DateTimePicker/dateTimePickerTabsClasses.js +1 -2
  258. package/node/DateTimePicker/dateTimePickerToolbarClasses.js +1 -2
  259. package/node/DayCalendarSkeleton/dayCalendarSkeletonClasses.js +1 -2
  260. package/node/DesktopDatePicker/DesktopDatePicker.js +7 -4
  261. package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +7 -4
  262. package/node/DesktopTimePicker/DesktopTimePicker.js +1 -2
  263. package/node/DigitalClock/DigitalClock.js +1 -2
  264. package/node/DigitalClock/digitalClockClasses.js +1 -2
  265. package/node/LocalizationProvider/LocalizationProvider.js +2 -4
  266. package/node/MobileDatePicker/MobileDatePicker.js +7 -4
  267. package/node/MobileDateTimePicker/MobileDateTimePicker.js +7 -4
  268. package/node/MobileTimePicker/MobileTimePicker.js +1 -2
  269. package/node/MonthCalendar/MonthCalendar.js +5 -3
  270. package/node/MonthCalendar/PickersMonth.js +2 -3
  271. package/node/MonthCalendar/monthCalendarClasses.js +1 -2
  272. package/node/MonthCalendar/pickersMonthClasses.js +1 -2
  273. package/node/MultiSectionDigitalClock/MultiSectionDigitalClock.js +1 -2
  274. package/node/MultiSectionDigitalClock/MultiSectionDigitalClockSection.js +2 -3
  275. package/node/MultiSectionDigitalClock/multiSectionDigitalClockClasses.js +1 -2
  276. package/node/MultiSectionDigitalClock/multiSectionDigitalClockSectionClasses.js +1 -2
  277. package/node/PickersCalendarHeader/PickersCalendarHeader.js +1 -2
  278. package/node/PickersCalendarHeader/pickersCalendarHeaderClasses.js +1 -2
  279. package/node/PickersDay/PickersDay.js +1 -2
  280. package/node/PickersDay/pickersDayClasses.js +1 -2
  281. package/node/PickersLayout/PickersLayout.js +3 -6
  282. package/node/PickersLayout/pickersLayoutClasses.js +1 -2
  283. package/node/PickersLayout/usePickerLayout.js +1 -2
  284. package/node/StaticDatePicker/StaticDatePicker.js +7 -4
  285. package/node/StaticDateTimePicker/StaticDateTimePicker.js +7 -4
  286. package/node/StaticTimePicker/StaticTimePicker.js +1 -2
  287. package/node/TimeClock/TimeClock.js +1 -2
  288. package/node/TimeClock/clockClasses.js +1 -2
  289. package/node/TimeClock/clockNumberClasses.js +1 -2
  290. package/node/TimeClock/clockPointerClasses.js +1 -2
  291. package/node/TimeClock/shared.js +2 -4
  292. package/node/TimeClock/timeClockClasses.js +1 -2
  293. package/node/TimeField/TimeField.js +30 -6
  294. package/node/TimePicker/TimePicker.js +1 -2
  295. package/node/TimePicker/TimePickerToolbar.js +1 -0
  296. package/node/TimePicker/timePickerToolbarClasses.js +1 -2
  297. package/node/YearCalendar/PickersYear.js +3 -4
  298. package/node/YearCalendar/YearCalendar.js +6 -5
  299. package/node/YearCalendar/pickersYearClasses.js +1 -2
  300. package/node/YearCalendar/yearCalendarClasses.js +1 -2
  301. package/node/hooks/index.js +12 -0
  302. package/node/hooks/useClearableField.js +87 -0
  303. package/node/icons/index.js +15 -15
  304. package/node/index.js +13 -1
  305. package/node/internals/components/DateTimeViewWrapper/DateTimeViewWrapper.js +2 -3
  306. package/node/internals/components/PickerViewRoot/PickerViewRoot.js +2 -3
  307. package/node/internals/components/PickersArrowSwitcher/PickersArrowSwitcher.js +2 -3
  308. package/node/internals/components/PickersArrowSwitcher/pickersArrowSwitcherClasses.js +1 -2
  309. package/node/internals/components/PickersToolbar.js +2 -3
  310. package/node/internals/components/PickersToolbarButton.js +2 -3
  311. package/node/internals/components/PickersToolbarText.js +2 -3
  312. package/node/internals/components/pickersPopperClasses.js +1 -2
  313. package/node/internals/components/pickersToolbarButtonClasses.js +1 -2
  314. package/node/internals/components/pickersToolbarClasses.js +1 -2
  315. package/node/internals/components/pickersToolbarTextClasses.js +1 -2
  316. package/node/internals/constants/dimensions.js +8 -13
  317. package/node/internals/hooks/useDefaultReduceAnimations.js +1 -2
  318. package/node/internals/hooks/useDesktopPicker/useDesktopPicker.js +3 -1
  319. package/node/internals/hooks/useField/useField.js +26 -7
  320. package/node/internals/utils/date-utils.js +7 -2
  321. package/node/internals/utils/getDefaultReferenceDate.js +1 -2
  322. package/node/internals/utils/utils.js +1 -2
  323. package/node/internals/utils/validation/extractValidationProps.js +3 -6
  324. package/node/internals/utils/valueManagers.js +3 -5
  325. package/node/locales/beBY.js +3 -2
  326. package/node/locales/caES.js +3 -2
  327. package/node/locales/csCZ.js +3 -2
  328. package/node/locales/daDK.js +3 -2
  329. package/node/locales/deDE.js +3 -2
  330. package/node/locales/elGR.js +3 -2
  331. package/node/locales/enUS.js +3 -4
  332. package/node/locales/esES.js +3 -2
  333. package/node/locales/faIR.js +3 -2
  334. package/node/locales/fiFI.js +3 -2
  335. package/node/locales/frFR.js +3 -2
  336. package/node/locales/heIL.js +3 -2
  337. package/node/locales/huHU.js +2 -2
  338. package/node/locales/isIS.js +3 -2
  339. package/node/locales/itIT.js +3 -2
  340. package/node/locales/jaJP.js +3 -2
  341. package/node/locales/koKR.js +3 -2
  342. package/node/locales/kzKZ.js +3 -2
  343. package/node/locales/nbNO.js +3 -2
  344. package/node/locales/nlNL.js +3 -2
  345. package/node/locales/plPL.js +3 -2
  346. package/node/locales/ptBR.js +3 -2
  347. package/node/locales/roRO.js +2 -2
  348. package/node/locales/ruRU.js +3 -2
  349. package/node/locales/skSK.js +3 -2
  350. package/node/locales/svSE.js +3 -2
  351. package/node/locales/trTR.js +3 -2
  352. package/node/locales/ukUA.js +3 -2
  353. package/node/locales/urPK.js +3 -2
  354. package/node/locales/viVN.js +3 -2
  355. package/node/locales/zhCN.js +3 -2
  356. package/node/locales/zhHK.js +3 -2
  357. package/package.json +5 -5
  358. package/legacy/tests/describe.types.js +0 -1
  359. package/legacy/tests/describeAdapters/describeAdapters.js +0 -29
  360. package/legacy/tests/describeAdapters/index.js +0 -1
  361. package/legacy/tests/describeGregorianAdapter/describeGregorianAdapter.js +0 -32
  362. package/legacy/tests/describeGregorianAdapter/describeGregorianAdapter.types.js +0 -1
  363. package/legacy/tests/describeGregorianAdapter/describeGregorianAdapter.utils.js +0 -2
  364. package/legacy/tests/describeGregorianAdapter/index.js +0 -2
  365. package/legacy/tests/describeGregorianAdapter/testCalculations.js +0 -707
  366. package/legacy/tests/describeGregorianAdapter/testFormat.js +0 -26
  367. package/legacy/tests/describeGregorianAdapter/testLocalization.js +0 -49
  368. package/legacy/tests/describeHijriAdapter/describeHijriAdapter.js +0 -21
  369. package/legacy/tests/describeHijriAdapter/describeHijriAdapter.types.js +0 -1
  370. package/legacy/tests/describeHijriAdapter/index.js +0 -1
  371. package/legacy/tests/describeHijriAdapter/testCalculations.js +0 -167
  372. package/legacy/tests/describeHijriAdapter/testLocalization.js +0 -20
  373. package/legacy/tests/describeJalaliAdapter/describeJalaliAdapter.js +0 -21
  374. package/legacy/tests/describeJalaliAdapter/describeJalaliAdapter.types.js +0 -1
  375. package/legacy/tests/describeJalaliAdapter/index.js +0 -1
  376. package/legacy/tests/describeJalaliAdapter/testCalculations.js +0 -236
  377. package/legacy/tests/describeJalaliAdapter/testLocalization.js +0 -20
  378. package/legacy/tests/describePicker/describePicker.js +0 -159
  379. package/legacy/tests/describePicker/describePicker.types.js +0 -1
  380. package/legacy/tests/describePicker/index.js +0 -1
  381. package/legacy/tests/describeValidation/describeValidation.js +0 -31
  382. package/legacy/tests/describeValidation/describeValidation.types.js +0 -1
  383. package/legacy/tests/describeValidation/index.js +0 -1
  384. package/legacy/tests/describeValidation/testDayViewValidation.js +0 -281
  385. package/legacy/tests/describeValidation/testMinutesViewValidation.js +0 -194
  386. package/legacy/tests/describeValidation/testMonthViewValidation.js +0 -136
  387. package/legacy/tests/describeValidation/testTextFieldValidation.js +0 -463
  388. package/legacy/tests/describeValidation/testYearViewValidation.js +0 -95
  389. package/legacy/tests/describeValue/describeValue.js +0 -57
  390. package/legacy/tests/describeValue/describeValue.types.js +0 -1
  391. package/legacy/tests/describeValue/index.js +0 -1
  392. package/legacy/tests/describeValue/testControlledUnControlled.js +0 -237
  393. package/legacy/tests/describeValue/testPickerActionBar.js +0 -250
  394. package/legacy/tests/describeValue/testPickerOpenCloseLifeCycle.js +0 -362
  395. package/legacy/tests/describeValue/testShortcuts.js +0 -119
  396. package/modern/tests/describe.types.js +0 -1
  397. package/modern/tests/describeAdapters/describeAdapters.js +0 -29
  398. package/modern/tests/describeAdapters/index.js +0 -1
  399. package/modern/tests/describeGregorianAdapter/describeGregorianAdapter.js +0 -29
  400. package/modern/tests/describeGregorianAdapter/describeGregorianAdapter.types.js +0 -1
  401. package/modern/tests/describeGregorianAdapter/describeGregorianAdapter.utils.js +0 -2
  402. package/modern/tests/describeGregorianAdapter/index.js +0 -2
  403. package/modern/tests/describeGregorianAdapter/testCalculations.js +0 -706
  404. package/modern/tests/describeGregorianAdapter/testFormat.js +0 -27
  405. package/modern/tests/describeGregorianAdapter/testLocalization.js +0 -50
  406. package/modern/tests/describeHijriAdapter/describeHijriAdapter.js +0 -21
  407. package/modern/tests/describeHijriAdapter/describeHijriAdapter.types.js +0 -1
  408. package/modern/tests/describeHijriAdapter/index.js +0 -1
  409. package/modern/tests/describeHijriAdapter/testCalculations.js +0 -164
  410. package/modern/tests/describeHijriAdapter/testLocalization.js +0 -21
  411. package/modern/tests/describeJalaliAdapter/describeJalaliAdapter.js +0 -21
  412. package/modern/tests/describeJalaliAdapter/describeJalaliAdapter.types.js +0 -1
  413. package/modern/tests/describeJalaliAdapter/index.js +0 -1
  414. package/modern/tests/describeJalaliAdapter/testCalculations.js +0 -237
  415. package/modern/tests/describeJalaliAdapter/testLocalization.js +0 -21
  416. package/modern/tests/describePicker/describePicker.js +0 -162
  417. package/modern/tests/describePicker/describePicker.types.js +0 -1
  418. package/modern/tests/describePicker/index.js +0 -1
  419. package/modern/tests/describeValidation/describeValidation.js +0 -31
  420. package/modern/tests/describeValidation/describeValidation.types.js +0 -1
  421. package/modern/tests/describeValidation/index.js +0 -1
  422. package/modern/tests/describeValidation/testDayViewValidation.js +0 -280
  423. package/modern/tests/describeValidation/testMinutesViewValidation.js +0 -193
  424. package/modern/tests/describeValidation/testMonthViewValidation.js +0 -137
  425. package/modern/tests/describeValidation/testTextFieldValidation.js +0 -470
  426. package/modern/tests/describeValidation/testYearViewValidation.js +0 -94
  427. package/modern/tests/describeValue/describeValue.js +0 -59
  428. package/modern/tests/describeValue/describeValue.types.js +0 -1
  429. package/modern/tests/describeValue/index.js +0 -1
  430. package/modern/tests/describeValue/testControlledUnControlled.js +0 -239
  431. package/modern/tests/describeValue/testPickerActionBar.js +0 -254
  432. package/modern/tests/describeValue/testPickerOpenCloseLifeCycle.js +0 -371
  433. package/modern/tests/describeValue/testShortcuts.js +0 -112
  434. package/node/tests/describe.types.js +0 -5
  435. package/node/tests/describeAdapters/describeAdapters.js +0 -37
  436. package/node/tests/describeAdapters/index.js +0 -12
  437. package/node/tests/describeGregorianAdapter/describeGregorianAdapter.js +0 -37
  438. package/node/tests/describeGregorianAdapter/describeGregorianAdapter.types.js +0 -5
  439. package/node/tests/describeGregorianAdapter/describeGregorianAdapter.utils.js +0 -10
  440. package/node/tests/describeGregorianAdapter/index.js +0 -19
  441. package/node/tests/describeGregorianAdapter/testCalculations.js +0 -711
  442. package/node/tests/describeGregorianAdapter/testFormat.js +0 -34
  443. package/node/tests/describeGregorianAdapter/testLocalization.js +0 -57
  444. package/node/tests/describeHijriAdapter/describeHijriAdapter.js +0 -29
  445. package/node/tests/describeHijriAdapter/describeHijriAdapter.types.js +0 -5
  446. package/node/tests/describeHijriAdapter/index.js +0 -12
  447. package/node/tests/describeHijriAdapter/testCalculations.js +0 -171
  448. package/node/tests/describeHijriAdapter/testLocalization.js +0 -28
  449. package/node/tests/describeJalaliAdapter/describeJalaliAdapter.js +0 -29
  450. package/node/tests/describeJalaliAdapter/describeJalaliAdapter.types.js +0 -5
  451. package/node/tests/describeJalaliAdapter/index.js +0 -12
  452. package/node/tests/describeJalaliAdapter/testCalculations.js +0 -244
  453. package/node/tests/describeJalaliAdapter/testLocalization.js +0 -28
  454. package/node/tests/describePicker/describePicker.js +0 -173
  455. package/node/tests/describePicker/describePicker.types.js +0 -5
  456. package/node/tests/describePicker/index.js +0 -12
  457. package/node/tests/describeValidation/describeValidation.js +0 -39
  458. package/node/tests/describeValidation/describeValidation.types.js +0 -5
  459. package/node/tests/describeValidation/index.js +0 -12
  460. package/node/tests/describeValidation/testDayViewValidation.js +0 -290
  461. package/node/tests/describeValidation/testMinutesViewValidation.js +0 -203
  462. package/node/tests/describeValidation/testMonthViewValidation.js +0 -147
  463. package/node/tests/describeValidation/testTextFieldValidation.js +0 -480
  464. package/node/tests/describeValidation/testYearViewValidation.js +0 -104
  465. package/node/tests/describeValue/describeValue.js +0 -69
  466. package/node/tests/describeValue/describeValue.types.js +0 -5
  467. package/node/tests/describeValue/index.js +0 -12
  468. package/node/tests/describeValue/testControlledUnControlled.js +0 -248
  469. package/node/tests/describeValue/testPickerActionBar.js +0 -264
  470. package/node/tests/describeValue/testPickerOpenCloseLifeCycle.js +0 -381
  471. package/node/tests/describeValue/testShortcuts.js +0 -122
  472. package/tests/describe.types.js +0 -1
  473. package/tests/describeAdapters/describeAdapters.js +0 -29
  474. package/tests/describeAdapters/index.js +0 -1
  475. package/tests/describeGregorianAdapter/describeGregorianAdapter.js +0 -30
  476. package/tests/describeGregorianAdapter/describeGregorianAdapter.types.js +0 -1
  477. package/tests/describeGregorianAdapter/describeGregorianAdapter.utils.js +0 -2
  478. package/tests/describeGregorianAdapter/index.js +0 -2
  479. package/tests/describeGregorianAdapter/testCalculations.js +0 -706
  480. package/tests/describeGregorianAdapter/testFormat.js +0 -27
  481. package/tests/describeGregorianAdapter/testLocalization.js +0 -50
  482. package/tests/describeHijriAdapter/describeHijriAdapter.js +0 -21
  483. package/tests/describeHijriAdapter/describeHijriAdapter.types.js +0 -1
  484. package/tests/describeHijriAdapter/index.js +0 -1
  485. package/tests/describeHijriAdapter/testCalculations.js +0 -164
  486. package/tests/describeHijriAdapter/testLocalization.js +0 -21
  487. package/tests/describeJalaliAdapter/describeJalaliAdapter.js +0 -21
  488. package/tests/describeJalaliAdapter/describeJalaliAdapter.types.js +0 -1
  489. package/tests/describeJalaliAdapter/index.js +0 -1
  490. package/tests/describeJalaliAdapter/testCalculations.js +0 -237
  491. package/tests/describeJalaliAdapter/testLocalization.js +0 -21
  492. package/tests/describePicker/describePicker.js +0 -162
  493. package/tests/describePicker/describePicker.types.js +0 -1
  494. package/tests/describePicker/index.js +0 -1
  495. package/tests/describeValidation/describeValidation.js +0 -31
  496. package/tests/describeValidation/describeValidation.types.js +0 -1
  497. package/tests/describeValidation/index.js +0 -1
  498. package/tests/describeValidation/testDayViewValidation.js +0 -280
  499. package/tests/describeValidation/testMinutesViewValidation.js +0 -193
  500. package/tests/describeValidation/testMonthViewValidation.js +0 -137
  501. package/tests/describeValidation/testTextFieldValidation.js +0 -470
  502. package/tests/describeValidation/testYearViewValidation.js +0 -94
  503. package/tests/describeValue/describeValue.js +0 -59
  504. package/tests/describeValue/describeValue.types.js +0 -1
  505. package/tests/describeValue/index.js +0 -1
  506. package/tests/describeValue/testControlledUnControlled.js +0 -239
  507. package/tests/describeValue/testPickerActionBar.js +0 -254
  508. package/tests/describeValue/testPickerOpenCloseLifeCycle.js +0 -371
  509. package/tests/describeValue/testShortcuts.js +0 -112
@@ -1,381 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.testPickerOpenCloseLifeCycle = void 0;
8
- var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
9
- var React = _interopRequireWildcard(require("react"));
10
- var _chai = require("chai");
11
- var _sinon = require("sinon");
12
- var _utils = require("@mui/monorepo/test/utils");
13
- var _pickers = require("test/utils/pickers");
14
- var _jsxRuntime = require("react/jsx-runtime");
15
- const _excluded = ["componentFamily", "render", "renderWithProps", "values", "setNewValue"];
16
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
17
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
18
- const testPickerOpenCloseLifeCycle = (ElementToTest, options) => {
19
- const {
20
- componentFamily,
21
- render,
22
- renderWithProps,
23
- values,
24
- setNewValue
25
- } = options,
26
- pickerParams = (0, _objectWithoutPropertiesLoose2.default)(options, _excluded);
27
- if (componentFamily !== 'picker') {
28
- return;
29
- }
30
- const viewWrapperRole = pickerParams.type === 'date-range' && pickerParams.variant === 'desktop' ? 'tooltip' : 'dialog';
31
- describe('Picker open / close lifecycle', () => {
32
- it('should not open on mount if `props.open` is false', () => {
33
- render( /*#__PURE__*/(0, _jsxRuntime.jsx)(ElementToTest, {}));
34
- (0, _chai.expect)(_utils.screen.queryByRole(viewWrapperRole)).to.equal(null);
35
- });
36
- it('should open on mount if `prop.open` is true', () => {
37
- render( /*#__PURE__*/(0, _jsxRuntime.jsx)(ElementToTest, {
38
- open: true
39
- }));
40
- (0, _chai.expect)(_utils.screen.queryByRole(viewWrapperRole)).toBeVisible();
41
- });
42
- it('should not open when `prop.disabled` is true ', () => {
43
- const onOpen = (0, _sinon.spy)();
44
- render( /*#__PURE__*/(0, _jsxRuntime.jsx)(ElementToTest, {
45
- disabled: true,
46
- onOpen: onOpen
47
- }));
48
- (0, _pickers.openPicker)(pickerParams);
49
- (0, _chai.expect)(onOpen.callCount).to.equal(0);
50
- });
51
- it('should not open when `prop.readOnly` is true ', () => {
52
- const onOpen = (0, _sinon.spy)();
53
- render( /*#__PURE__*/(0, _jsxRuntime.jsx)(ElementToTest, {
54
- readOnly: true,
55
- onOpen: onOpen
56
- }));
57
- (0, _pickers.openPicker)(pickerParams);
58
- (0, _chai.expect)(onOpen.callCount).to.equal(0);
59
- });
60
- it('should call onChange, onClose (if desktop) and onAccept (if desktop) when selecting a value', () => {
61
- const onChange = (0, _sinon.spy)();
62
- const onAccept = (0, _sinon.spy)();
63
- const onClose = (0, _sinon.spy)();
64
- const {
65
- selectSection
66
- } = renderWithProps({
67
- onChange,
68
- onAccept,
69
- onClose,
70
- defaultValue: values[0],
71
- open: true
72
- });
73
- (0, _chai.expect)(onChange.callCount).to.equal(0);
74
- (0, _chai.expect)(onAccept.callCount).to.equal(0);
75
- (0, _chai.expect)(onClose.callCount).to.equal(0);
76
-
77
- // Change the value
78
- let newValue = setNewValue(values[0], {
79
- isOpened: true,
80
- selectSection
81
- });
82
- (0, _chai.expect)(onChange.callCount).to.equal((0, _pickers.getExpectedOnChangeCount)(componentFamily, pickerParams));
83
- if (pickerParams.type === 'date-range') {
84
- newValue = setNewValue(newValue, {
85
- isOpened: true,
86
- setEndDate: true,
87
- selectSection
88
- });
89
- newValue.forEach((value, index) => {
90
- (0, _chai.expect)(onChange.lastCall.args[0][index]).toEqualDateTime(value);
91
- });
92
- } else {
93
- (0, _chai.expect)(onChange.lastCall.args[0]).toEqualDateTime(newValue);
94
- }
95
- (0, _chai.expect)(onAccept.callCount).to.equal(pickerParams.variant === 'mobile' ? 0 : 1);
96
- (0, _chai.expect)(onClose.callCount).to.equal(pickerParams.variant === 'mobile' ? 0 : 1);
97
- });
98
- it('should not select input content after closing on mobile', () => {
99
- if (pickerParams.variant !== 'mobile') {
100
- return;
101
- }
102
- const {
103
- selectSection
104
- } = renderWithProps({
105
- defaultValue: values[0]
106
- });
107
-
108
- // Change the value
109
- setNewValue(values[0], {
110
- selectSection
111
- });
112
- let textbox;
113
- if (pickerParams.type === 'date-range') {
114
- textbox = _utils.screen.getAllByRole('textbox')[0];
115
- } else {
116
- textbox = (0, _pickers.getTextbox)();
117
- }
118
- (0, _chai.expect)(textbox.scrollLeft).to.be.equal(0);
119
- });
120
- it('should call onChange, onClose and onAccept when selecting a value and `props.closeOnSelect` is true', () => {
121
- const onChange = (0, _sinon.spy)();
122
- const onAccept = (0, _sinon.spy)();
123
- const onClose = (0, _sinon.spy)();
124
- const {
125
- selectSection
126
- } = renderWithProps({
127
- onChange,
128
- onAccept,
129
- onClose,
130
- defaultValue: values[0],
131
- open: true,
132
- closeOnSelect: true
133
- });
134
- (0, _chai.expect)(onChange.callCount).to.equal(0);
135
- (0, _chai.expect)(onAccept.callCount).to.equal(0);
136
- (0, _chai.expect)(onClose.callCount).to.equal(0);
137
-
138
- // Change the value
139
- let newValue = setNewValue(values[0], {
140
- isOpened: true,
141
- selectSection
142
- });
143
- (0, _chai.expect)(onChange.callCount).to.equal((0, _pickers.getExpectedOnChangeCount)(componentFamily, pickerParams));
144
- if (pickerParams.type === 'date-range') {
145
- newValue = setNewValue(newValue, {
146
- isOpened: true,
147
- setEndDate: true,
148
- selectSection
149
- });
150
- newValue.forEach((value, index) => {
151
- (0, _chai.expect)(onChange.lastCall.args[0][index]).toEqualDateTime(value);
152
- });
153
- } else {
154
- (0, _chai.expect)(onChange.lastCall.args[0]).toEqualDateTime(newValue);
155
- }
156
- (0, _chai.expect)(onAccept.callCount).to.equal(1);
157
- (0, _chai.expect)(onClose.callCount).to.equal(1);
158
- });
159
- it('should not call onChange or onAccept when selecting the same value', () => {
160
- const onChange = (0, _sinon.spy)();
161
- const onAccept = (0, _sinon.spy)();
162
- const onClose = (0, _sinon.spy)();
163
- const {
164
- selectSection
165
- } = renderWithProps({
166
- onChange,
167
- onAccept,
168
- onClose,
169
- open: true,
170
- value: values[0],
171
- closeOnSelect: true
172
- });
173
-
174
- // Change the value (same value)
175
- setNewValue(values[0], {
176
- isOpened: true,
177
- applySameValue: true,
178
- selectSection
179
- });
180
- if (pickerParams.type === 'date-range') {
181
- setNewValue(values[0], {
182
- isOpened: true,
183
- applySameValue: true,
184
- setEndDate: true,
185
- selectSection
186
- });
187
- }
188
- (0, _chai.expect)(onChange.callCount).to.equal(0);
189
- (0, _chai.expect)(onAccept.callCount).to.equal(0);
190
- (0, _chai.expect)(onClose.callCount).to.equal(1);
191
- });
192
- it('should not call onClose or onAccept when selecting a date and `props.closeOnSelect` is false', () => {
193
- const onChange = (0, _sinon.spy)();
194
- const onAccept = (0, _sinon.spy)();
195
- const onClose = (0, _sinon.spy)();
196
- const {
197
- selectSection
198
- } = renderWithProps({
199
- onChange,
200
- onAccept,
201
- onClose,
202
- defaultValue: values[0],
203
- open: true,
204
- closeOnSelect: false
205
- });
206
-
207
- // Change the value
208
- let newValue = setNewValue(values[0], {
209
- isOpened: true,
210
- selectSection
211
- });
212
- const initialChangeCount = (0, _pickers.getExpectedOnChangeCount)(componentFamily, pickerParams);
213
- (0, _chai.expect)(onChange.callCount).to.equal(initialChangeCount);
214
- if (pickerParams.type === 'date-range') {
215
- newValue = setNewValue(newValue, {
216
- isOpened: true,
217
- setEndDate: true,
218
- selectSection
219
- });
220
- newValue.forEach((value, index) => {
221
- (0, _chai.expect)(onChange.lastCall.args[0][index]).toEqualDateTime(value);
222
- });
223
- } else {
224
- (0, _chai.expect)(onChange.lastCall.args[0]).toEqualDateTime(newValue);
225
- }
226
- (0, _chai.expect)(onAccept.callCount).to.equal(0);
227
- (0, _chai.expect)(onClose.callCount).to.equal(0);
228
-
229
- // Change the value
230
- let newValueBis = setNewValue(newValue, {
231
- isOpened: true,
232
- selectSection
233
- });
234
- if (pickerParams.type === 'date-range') {
235
- (0, _chai.expect)(onChange.callCount).to.equal(3);
236
- newValueBis = setNewValue(newValueBis, {
237
- isOpened: true,
238
- setEndDate: true,
239
- selectSection
240
- });
241
- newValueBis.forEach((value, index) => {
242
- (0, _chai.expect)(onChange.lastCall.args[0][index]).toEqualDateTime(value);
243
- });
244
- } else {
245
- (0, _chai.expect)(onChange.callCount).to.equal(initialChangeCount + (0, _pickers.getExpectedOnChangeCount)(componentFamily, pickerParams) - (
246
- // meridiem does not change this time in case of multi section digital clock
247
- pickerParams.type === 'time' || pickerParams.type === 'date-time' ? 1 : 0));
248
- (0, _chai.expect)(onChange.lastCall.args[0]).toEqualDateTime(newValueBis);
249
- }
250
- (0, _chai.expect)(onAccept.callCount).to.equal(0);
251
- (0, _chai.expect)(onClose.callCount).to.equal(0);
252
- });
253
- it('should call onClose and onAccept with the live value when pressing Escape', () => {
254
- const onChange = (0, _sinon.spy)();
255
- const onAccept = (0, _sinon.spy)();
256
- const onClose = (0, _sinon.spy)();
257
- const {
258
- selectSection
259
- } = renderWithProps({
260
- onChange,
261
- onAccept,
262
- onClose,
263
- defaultValue: values[0],
264
- open: true,
265
- closeOnSelect: false
266
- });
267
-
268
- // Change the value (already tested)
269
- const newValue = setNewValue(values[0], {
270
- isOpened: true,
271
- selectSection
272
- });
273
-
274
- // Dismiss the picker
275
- _utils.userEvent.keyPress(document.activeElement, {
276
- key: 'Escape'
277
- });
278
- (0, _chai.expect)(onChange.callCount).to.equal((0, _pickers.getExpectedOnChangeCount)(componentFamily, pickerParams));
279
- (0, _chai.expect)(onAccept.callCount).to.equal(1);
280
- if (pickerParams.type === 'date-range') {
281
- newValue.forEach((value, index) => {
282
- (0, _chai.expect)(onChange.lastCall.args[0][index]).toEqualDateTime(value);
283
- });
284
- } else {
285
- (0, _chai.expect)(onChange.lastCall.args[0]).toEqualDateTime(newValue);
286
- }
287
- (0, _chai.expect)(onClose.callCount).to.equal(1);
288
- });
289
- it('should call onClose when clicking outside of the picker without prior change', function test() {
290
- // TODO: Fix this test and enable it on mobile and date-range
291
- if (pickerParams.variant === 'mobile' || pickerParams.type === 'date-range') {
292
- this.skip();
293
- }
294
- const onChange = (0, _sinon.spy)();
295
- const onAccept = (0, _sinon.spy)();
296
- const onClose = (0, _sinon.spy)();
297
- render( /*#__PURE__*/(0, _jsxRuntime.jsx)(ElementToTest, {
298
- onChange: onChange,
299
- onAccept: onAccept,
300
- onClose: onClose,
301
- value: values[0],
302
- open: true,
303
- closeOnSelect: false
304
- }));
305
-
306
- // Dismiss the picker
307
- _utils.userEvent.mousePress(document.body);
308
- (0, _chai.expect)(onChange.callCount).to.equal(0);
309
- (0, _chai.expect)(onAccept.callCount).to.equal(0);
310
- (0, _chai.expect)(onClose.callCount).to.equal(1);
311
- });
312
- it('should call onClose and onAccept with the live value when clicking outside of the picker', function test() {
313
- // TODO: Fix this test and enable it on mobile and date-range
314
- if (pickerParams.variant === 'mobile' || pickerParams.type === 'date-range') {
315
- this.skip();
316
- }
317
- const onChange = (0, _sinon.spy)();
318
- const onAccept = (0, _sinon.spy)();
319
- const onClose = (0, _sinon.spy)();
320
- const {
321
- selectSection
322
- } = renderWithProps({
323
- onChange,
324
- onAccept,
325
- onClose,
326
- defaultValue: values[0],
327
- open: true,
328
- closeOnSelect: false
329
- });
330
-
331
- // Change the value (already tested)
332
- const newValue = setNewValue(values[0], {
333
- isOpened: true,
334
- selectSection
335
- });
336
-
337
- // Dismiss the picker
338
- _utils.userEvent.mousePress(document.body);
339
- (0, _chai.expect)(onChange.callCount).to.equal((0, _pickers.getExpectedOnChangeCount)(componentFamily, pickerParams));
340
- (0, _chai.expect)(onAccept.callCount).to.equal(1);
341
- (0, _chai.expect)(onAccept.lastCall.args[0]).toEqualDateTime(newValue);
342
- (0, _chai.expect)(onClose.callCount).to.equal(1);
343
- });
344
- it('should not call onClose or onAccept when clicking outside of the picker if not opened', () => {
345
- const onChange = (0, _sinon.spy)();
346
- const onAccept = (0, _sinon.spy)();
347
- const onClose = (0, _sinon.spy)();
348
- render( /*#__PURE__*/(0, _jsxRuntime.jsx)(ElementToTest, {
349
- onChange: onChange,
350
- onAccept: onAccept,
351
- onClose: onClose,
352
- closeOnSelect: false
353
- }));
354
-
355
- // Dismiss the picker
356
- _utils.userEvent.mousePress(document.body);
357
- (0, _chai.expect)(onChange.callCount).to.equal(0);
358
- (0, _chai.expect)(onAccept.callCount).to.equal(0);
359
- (0, _chai.expect)(onClose.callCount).to.equal(0);
360
- });
361
- it('should not call onClose or onAccept when pressing escape when picker is not opened', () => {
362
- const onChange = (0, _sinon.spy)();
363
- const onAccept = (0, _sinon.spy)();
364
- const onClose = (0, _sinon.spy)();
365
- render( /*#__PURE__*/(0, _jsxRuntime.jsx)(ElementToTest, {
366
- onChange: onChange,
367
- onAccept: onAccept,
368
- onClose: onClose
369
- }));
370
-
371
- // Dismiss the picker
372
- _utils.userEvent.keyPress(document.body, {
373
- key: 'Escape'
374
- });
375
- (0, _chai.expect)(onChange.callCount).to.equal(0);
376
- (0, _chai.expect)(onAccept.callCount).to.equal(0);
377
- (0, _chai.expect)(onClose.callCount).to.equal(0);
378
- });
379
- });
380
- };
381
- exports.testPickerOpenCloseLifeCycle = testPickerOpenCloseLifeCycle;
@@ -1,122 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.testShortcuts = void 0;
8
- var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
9
- var React = _interopRequireWildcard(require("react"));
10
- var _chai = require("chai");
11
- var _sinon = require("sinon");
12
- var _pickers = require("test/utils/pickers");
13
- var _utils = require("@mui/monorepo/test/utils");
14
- var _jsxRuntime = require("react/jsx-runtime");
15
- const _excluded = ["componentFamily", "render", "renderWithProps", "values", "emptyValue", "setNewValue"];
16
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
17
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
18
- const testShortcuts = (ElementToTest, options) => {
19
- const {
20
- componentFamily,
21
- render,
22
- values
23
- } = options,
24
- pickerParams = (0, _objectWithoutPropertiesLoose2.default)(options, _excluded);
25
- if (componentFamily !== 'picker') {
26
- return;
27
- }
28
- describe('Picker shortcuts', () => {
29
- it('should call onClose, onChange and onAccept when picking a shortcut without explicit changeImportance', () => {
30
- const onChange = (0, _sinon.spy)();
31
- const onAccept = (0, _sinon.spy)();
32
- const onClose = (0, _sinon.spy)();
33
- render( /*#__PURE__*/(0, _jsxRuntime.jsx)(ElementToTest, {
34
- onChange: onChange,
35
- onAccept: onAccept,
36
- onClose: onClose,
37
- defaultValue: values[0],
38
- open: true,
39
- closeOnSelect: true,
40
- slotProps: {
41
- shortcuts: {
42
- items: [{
43
- label: 'Test shortcut',
44
- getValue: () => values[1]
45
- }]
46
- }
47
- }
48
- }));
49
- const shortcut = _utils.screen.getByRole('button', {
50
- name: 'Test shortcut'
51
- });
52
- _utils.userEvent.mousePress(shortcut);
53
- (0, _chai.expect)(onChange.callCount).to.equal(1);
54
- (0, _pickers.expectPickerChangeHandlerValue)(pickerParams.type, onChange, values[1]);
55
- (0, _chai.expect)(onAccept.callCount).to.equal(1);
56
- (0, _pickers.expectPickerChangeHandlerValue)(pickerParams.type, onAccept, values[1]);
57
- (0, _chai.expect)(onClose.callCount).to.equal(1);
58
- });
59
- it('should call onClose and onChange when picking a shortcut with changeImportance="accept"', () => {
60
- const onChange = (0, _sinon.spy)();
61
- const onAccept = (0, _sinon.spy)();
62
- const onClose = (0, _sinon.spy)();
63
- render( /*#__PURE__*/(0, _jsxRuntime.jsx)(ElementToTest, {
64
- onChange: onChange,
65
- onAccept: onAccept,
66
- onClose: onClose,
67
- defaultValue: values[0],
68
- open: true,
69
- closeOnSelect: true,
70
- slotProps: {
71
- shortcuts: {
72
- items: [{
73
- label: 'Test shortcut',
74
- getValue: () => values[1]
75
- }],
76
- changeImportance: 'accept'
77
- }
78
- }
79
- }));
80
- const shortcut = _utils.screen.getByRole('button', {
81
- name: 'Test shortcut'
82
- });
83
- _utils.userEvent.mousePress(shortcut);
84
- (0, _chai.expect)(onChange.callCount).to.equal(1);
85
- (0, _pickers.expectPickerChangeHandlerValue)(pickerParams.type, onChange, values[1]);
86
- (0, _chai.expect)(onAccept.callCount).to.equal(1);
87
- (0, _pickers.expectPickerChangeHandlerValue)(pickerParams.type, onAccept, values[1]);
88
- (0, _chai.expect)(onClose.callCount).to.equal(1);
89
- });
90
- it('should call onClose and onChange when picking a shortcut with changeImportance="set"', () => {
91
- const onChange = (0, _sinon.spy)();
92
- const onAccept = (0, _sinon.spy)();
93
- const onClose = (0, _sinon.spy)();
94
- render( /*#__PURE__*/(0, _jsxRuntime.jsx)(ElementToTest, {
95
- onChange: onChange,
96
- onAccept: onAccept,
97
- onClose: onClose,
98
- defaultValue: values[0],
99
- open: true,
100
- closeOnSelect: true,
101
- slotProps: {
102
- shortcuts: {
103
- items: [{
104
- label: 'Test shortcut',
105
- getValue: () => values[1]
106
- }],
107
- changeImportance: 'set'
108
- }
109
- }
110
- }));
111
- const shortcut = _utils.screen.getByRole('button', {
112
- name: 'Test shortcut'
113
- });
114
- _utils.userEvent.mousePress(shortcut);
115
- (0, _chai.expect)(onChange.callCount).to.equal(1);
116
- (0, _pickers.expectPickerChangeHandlerValue)(pickerParams.type, onChange, values[1]);
117
- (0, _chai.expect)(onAccept.callCount).to.equal(0);
118
- (0, _chai.expect)(onClose.callCount).to.equal(0);
119
- });
120
- });
121
- };
122
- exports.testShortcuts = testShortcuts;
@@ -1 +0,0 @@
1
- export {};
@@ -1,29 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import moment from 'moment';
3
- import momentTZ from 'moment-timezone';
4
- import createDescribe from '@mui/monorepo/test/utils/createDescribe';
5
- import { buildFieldInteractions, createPickerRenderer } from 'test/utils/pickers';
6
- const ADAPTERS = ['dayjs', 'date-fns', 'luxon', 'moment'];
7
- function innerDescribeAdapters(title, FieldComponent, testRunner) {
8
- ADAPTERS.forEach(adapterName => {
9
- // TODO: Set locale moment before the 1st test run
10
- if (adapterName === 'moment') {
11
- moment.locale('en');
12
- }
13
- describe(`${title} - adapter: ${adapterName}`, () => {
14
- const pickerRendererResponse = createPickerRenderer({
15
- adapterName,
16
- clock: 'fake',
17
- clockConfig: new Date(2022, 5, 15),
18
- instance: adapterName === 'moment' ? momentTZ : undefined
19
- });
20
- const fieldInteractions = buildFieldInteractions({
21
- clock: pickerRendererResponse.clock,
22
- render: pickerRendererResponse.render,
23
- Component: FieldComponent
24
- });
25
- testRunner(_extends({}, pickerRendererResponse, fieldInteractions));
26
- });
27
- });
28
- }
29
- export const describeAdapters = createDescribe('Adapter specific tests', innerDescribeAdapters);
@@ -1 +0,0 @@
1
- export { describeAdapters } from './describeAdapters';
@@ -1,30 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import createDescribe from '@mui/monorepo/test/utils/createDescribe';
3
- import { testCalculations } from './testCalculations';
4
- import { testLocalization } from './testLocalization';
5
- import { testFormat } from './testFormat';
6
- function innerGregorianDescribeAdapter(Adapter, params) {
7
- var _params$prepareAdapte;
8
- const prepareAdapter = (_params$prepareAdapte = params.prepareAdapter) != null ? _params$prepareAdapte : e => e;
9
- const adapter = new Adapter();
10
- const adapterTZ = params.dateLibInstanceWithTimezoneSupport ? new Adapter({
11
- dateLibInstance: params.dateLibInstanceWithTimezoneSupport
12
- }) : new Adapter();
13
- const adapterFr = new Adapter({
14
- locale: params.frenchLocale,
15
- dateLibInstance: params.dateLibInstanceWithTimezoneSupport
16
- });
17
- prepareAdapter(adapter);
18
- prepareAdapter(adapterTZ);
19
- describe(adapter.lib, () => {
20
- const testSuitParams = _extends({}, params, {
21
- adapter,
22
- adapterTZ,
23
- adapterFr
24
- });
25
- testCalculations(testSuitParams);
26
- testLocalization(testSuitParams);
27
- testFormat(testSuitParams);
28
- });
29
- }
30
- export const describeGregorianAdapter = createDescribe('Adapter methods', innerGregorianDescribeAdapter);
@@ -1,2 +0,0 @@
1
- export const TEST_DATE_ISO_STRING = '2018-10-30T11:44:00.000Z';
2
- export const TEST_DATE_LOCALE_STRING = '2018-10-30';
@@ -1,2 +0,0 @@
1
- export { describeGregorianAdapter } from './describeGregorianAdapter';
2
- export { TEST_DATE_ISO_STRING } from './describeGregorianAdapter.utils';