@mui/lab 5.0.0-alpha.100

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 (757) hide show
  1. package/AdapterDateFns/AdapterDateFns.d.ts +3 -0
  2. package/AdapterDateFns/AdapterDateFns.js +16 -0
  3. package/AdapterDateFns/index.d.ts +1 -0
  4. package/AdapterDateFns/index.js +1 -0
  5. package/AdapterDateFns/package.json +6 -0
  6. package/AdapterDayjs/AdapterDayjs.d.ts +3 -0
  7. package/AdapterDayjs/AdapterDayjs.js +16 -0
  8. package/AdapterDayjs/index.d.ts +1 -0
  9. package/AdapterDayjs/index.js +1 -0
  10. package/AdapterDayjs/package.json +6 -0
  11. package/AdapterLuxon/AdapterLuxon.d.ts +3 -0
  12. package/AdapterLuxon/AdapterLuxon.js +16 -0
  13. package/AdapterLuxon/index.d.ts +1 -0
  14. package/AdapterLuxon/index.js +1 -0
  15. package/AdapterLuxon/package.json +6 -0
  16. package/AdapterMoment/AdapterMoment.d.ts +3 -0
  17. package/AdapterMoment/AdapterMoment.js +16 -0
  18. package/AdapterMoment/index.d.ts +1 -0
  19. package/AdapterMoment/index.js +1 -0
  20. package/AdapterMoment/package.json +6 -0
  21. package/Alert/Alert.d.ts +2 -0
  22. package/Alert/Alert.js +19 -0
  23. package/Alert/index.d.ts +2 -0
  24. package/Alert/index.js +1 -0
  25. package/Alert/package.json +6 -0
  26. package/AlertTitle/AlertTitle.d.ts +2 -0
  27. package/AlertTitle/AlertTitle.js +19 -0
  28. package/AlertTitle/index.d.ts +2 -0
  29. package/AlertTitle/index.js +1 -0
  30. package/AlertTitle/package.json +6 -0
  31. package/Autocomplete/Autocomplete.d.ts +1 -0
  32. package/Autocomplete/Autocomplete.js +19 -0
  33. package/Autocomplete/index.d.ts +2 -0
  34. package/Autocomplete/index.js +1 -0
  35. package/Autocomplete/package.json +6 -0
  36. package/AvatarGroup/AvatarGroup.d.ts +2 -0
  37. package/AvatarGroup/AvatarGroup.js +19 -0
  38. package/AvatarGroup/index.d.ts +2 -0
  39. package/AvatarGroup/index.js +1 -0
  40. package/AvatarGroup/package.json +6 -0
  41. package/CHANGELOG.md +9458 -0
  42. package/CalendarPicker/CalendarPicker.d.ts +14 -0
  43. package/CalendarPicker/CalendarPicker.js +20 -0
  44. package/CalendarPicker/index.d.ts +2 -0
  45. package/CalendarPicker/index.js +2 -0
  46. package/CalendarPicker/package.json +6 -0
  47. package/CalendarPickerSkeleton/CalendarPickerSkeleton.d.ts +13 -0
  48. package/CalendarPickerSkeleton/CalendarPickerSkeleton.js +24 -0
  49. package/CalendarPickerSkeleton/index.d.ts +2 -0
  50. package/CalendarPickerSkeleton/index.js +2 -0
  51. package/CalendarPickerSkeleton/package.json +6 -0
  52. package/ClockPicker/ClockPicker.d.ts +14 -0
  53. package/ClockPicker/ClockPicker.js +20 -0
  54. package/ClockPicker/index.d.ts +2 -0
  55. package/ClockPicker/index.js +2 -0
  56. package/ClockPicker/package.json +6 -0
  57. package/DatePicker/DatePicker.d.ts +10 -0
  58. package/DatePicker/DatePicker.js +19 -0
  59. package/DatePicker/index.d.ts +2 -0
  60. package/DatePicker/index.js +2 -0
  61. package/DatePicker/package.json +6 -0
  62. package/DateRangePicker/DateRangePicker.d.ts +11 -0
  63. package/DateRangePicker/DateRangePicker.js +19 -0
  64. package/DateRangePicker/index.d.ts +2 -0
  65. package/DateRangePicker/index.js +2 -0
  66. package/DateRangePicker/package.json +6 -0
  67. package/DateRangePickerDay/DateRangePickerDay.d.ts +13 -0
  68. package/DateRangePickerDay/DateRangePickerDay.js +23 -0
  69. package/DateRangePickerDay/index.d.ts +2 -0
  70. package/DateRangePickerDay/index.js +2 -0
  71. package/DateRangePickerDay/package.json +6 -0
  72. package/DateTimePicker/DateTimePicker.d.ts +10 -0
  73. package/DateTimePicker/DateTimePicker.js +19 -0
  74. package/DateTimePicker/index.d.ts +2 -0
  75. package/DateTimePicker/index.js +2 -0
  76. package/DateTimePicker/package.json +6 -0
  77. package/DesktopDatePicker/DesktopDatePicker.d.ts +10 -0
  78. package/DesktopDatePicker/DesktopDatePicker.js +19 -0
  79. package/DesktopDatePicker/index.d.ts +2 -0
  80. package/DesktopDatePicker/index.js +2 -0
  81. package/DesktopDatePicker/package.json +6 -0
  82. package/DesktopDateRangePicker/DesktopDateRangePicker.d.ts +10 -0
  83. package/DesktopDateRangePicker/DesktopDateRangePicker.js +19 -0
  84. package/DesktopDateRangePicker/index.d.ts +2 -0
  85. package/DesktopDateRangePicker/index.js +2 -0
  86. package/DesktopDateRangePicker/package.json +6 -0
  87. package/DesktopDateTimePicker/DesktopDateTimePicker.d.ts +10 -0
  88. package/DesktopDateTimePicker/DesktopDateTimePicker.js +19 -0
  89. package/DesktopDateTimePicker/index.d.ts +2 -0
  90. package/DesktopDateTimePicker/index.js +2 -0
  91. package/DesktopDateTimePicker/package.json +6 -0
  92. package/DesktopTimePicker/DesktopTimePicker.d.ts +10 -0
  93. package/DesktopTimePicker/DesktopTimePicker.js +19 -0
  94. package/DesktopTimePicker/index.d.ts +2 -0
  95. package/DesktopTimePicker/index.js +2 -0
  96. package/DesktopTimePicker/package.json +6 -0
  97. package/LICENSE +21 -0
  98. package/LoadingButton/LoadingButton.d.ts +75 -0
  99. package/LoadingButton/LoadingButton.js +236 -0
  100. package/LoadingButton/index.d.ts +5 -0
  101. package/LoadingButton/index.js +3 -0
  102. package/LoadingButton/loadingButtonClasses.d.ts +22 -0
  103. package/LoadingButton/loadingButtonClasses.js +6 -0
  104. package/LoadingButton/package.json +6 -0
  105. package/LocalizationProvider/LocalizationProvider.d.ts +10 -0
  106. package/LocalizationProvider/LocalizationProvider.js +18 -0
  107. package/LocalizationProvider/index.d.ts +2 -0
  108. package/LocalizationProvider/index.js +2 -0
  109. package/LocalizationProvider/package.json +6 -0
  110. package/Masonry/Masonry.d.ts +62 -0
  111. package/Masonry/Masonry.js +347 -0
  112. package/Masonry/index.d.ts +5 -0
  113. package/Masonry/index.js +3 -0
  114. package/Masonry/masonryClasses.d.ts +8 -0
  115. package/Masonry/masonryClasses.js +6 -0
  116. package/Masonry/package.json +6 -0
  117. package/MobileDatePicker/MobileDatePicker.d.ts +10 -0
  118. package/MobileDatePicker/MobileDatePicker.js +19 -0
  119. package/MobileDatePicker/index.d.ts +2 -0
  120. package/MobileDatePicker/index.js +2 -0
  121. package/MobileDatePicker/package.json +6 -0
  122. package/MobileDateRangePicker/MobileDateRangePicker.d.ts +10 -0
  123. package/MobileDateRangePicker/MobileDateRangePicker.js +19 -0
  124. package/MobileDateRangePicker/index.d.ts +2 -0
  125. package/MobileDateRangePicker/index.js +2 -0
  126. package/MobileDateRangePicker/package.json +6 -0
  127. package/MobileDateTimePicker/MobileDateTimePicker.d.ts +10 -0
  128. package/MobileDateTimePicker/MobileDateTimePicker.js +19 -0
  129. package/MobileDateTimePicker/index.d.ts +2 -0
  130. package/MobileDateTimePicker/index.js +2 -0
  131. package/MobileDateTimePicker/package.json +6 -0
  132. package/MobileTimePicker/MobileTimePicker.d.ts +10 -0
  133. package/MobileTimePicker/MobileTimePicker.js +19 -0
  134. package/MobileTimePicker/index.d.ts +2 -0
  135. package/MobileTimePicker/index.js +2 -0
  136. package/MobileTimePicker/package.json +6 -0
  137. package/MonthPicker/MonthPicker.d.ts +13 -0
  138. package/MonthPicker/MonthPicker.js +24 -0
  139. package/MonthPicker/index.d.ts +2 -0
  140. package/MonthPicker/index.js +2 -0
  141. package/MonthPicker/package.json +6 -0
  142. package/Pagination/Pagination.d.ts +2 -0
  143. package/Pagination/Pagination.js +19 -0
  144. package/Pagination/index.d.ts +4 -0
  145. package/Pagination/index.js +2 -0
  146. package/Pagination/package.json +6 -0
  147. package/Pagination/usePagination.d.ts +2 -0
  148. package/Pagination/usePagination.js +1 -0
  149. package/PaginationItem/PaginationItem.d.ts +2 -0
  150. package/PaginationItem/PaginationItem.js +19 -0
  151. package/PaginationItem/index.d.ts +2 -0
  152. package/PaginationItem/index.js +1 -0
  153. package/PaginationItem/package.json +6 -0
  154. package/PickersDay/PickersDay.d.ts +13 -0
  155. package/PickersDay/PickersDay.js +24 -0
  156. package/PickersDay/index.d.ts +2 -0
  157. package/PickersDay/index.js +2 -0
  158. package/PickersDay/package.json +6 -0
  159. package/README.md +36 -0
  160. package/Rating/Rating.d.ts +2 -0
  161. package/Rating/Rating.js +19 -0
  162. package/Rating/index.d.ts +2 -0
  163. package/Rating/index.js +1 -0
  164. package/Rating/package.json +6 -0
  165. package/Skeleton/Skeleton.d.ts +2 -0
  166. package/Skeleton/Skeleton.js +19 -0
  167. package/Skeleton/index.d.ts +2 -0
  168. package/Skeleton/index.js +1 -0
  169. package/Skeleton/package.json +6 -0
  170. package/SpeedDial/SpeedDial.d.ts +2 -0
  171. package/SpeedDial/SpeedDial.js +19 -0
  172. package/SpeedDial/index.d.ts +2 -0
  173. package/SpeedDial/index.js +1 -0
  174. package/SpeedDial/package.json +6 -0
  175. package/SpeedDialAction/SpeedDialAction.d.ts +2 -0
  176. package/SpeedDialAction/SpeedDialAction.js +19 -0
  177. package/SpeedDialAction/index.d.ts +2 -0
  178. package/SpeedDialAction/index.js +1 -0
  179. package/SpeedDialAction/package.json +6 -0
  180. package/SpeedDialIcon/SpeedDialIcon.d.ts +2 -0
  181. package/SpeedDialIcon/SpeedDialIcon.js +19 -0
  182. package/SpeedDialIcon/index.d.ts +2 -0
  183. package/SpeedDialIcon/index.js +1 -0
  184. package/SpeedDialIcon/package.json +6 -0
  185. package/StaticDatePicker/StaticDatePicker.d.ts +10 -0
  186. package/StaticDatePicker/StaticDatePicker.js +19 -0
  187. package/StaticDatePicker/index.d.ts +2 -0
  188. package/StaticDatePicker/index.js +2 -0
  189. package/StaticDatePicker/package.json +6 -0
  190. package/StaticDateRangePicker/StaticDateRangePicker.d.ts +10 -0
  191. package/StaticDateRangePicker/StaticDateRangePicker.js +19 -0
  192. package/StaticDateRangePicker/index.d.ts +2 -0
  193. package/StaticDateRangePicker/index.js +2 -0
  194. package/StaticDateRangePicker/package.json +6 -0
  195. package/StaticDateTimePicker/StaticDateTimePicker.d.ts +10 -0
  196. package/StaticDateTimePicker/StaticDateTimePicker.js +19 -0
  197. package/StaticDateTimePicker/index.d.ts +2 -0
  198. package/StaticDateTimePicker/index.js +2 -0
  199. package/StaticDateTimePicker/package.json +6 -0
  200. package/StaticTimePicker/StaticTimePicker.d.ts +10 -0
  201. package/StaticTimePicker/StaticTimePicker.js +19 -0
  202. package/StaticTimePicker/index.d.ts +2 -0
  203. package/StaticTimePicker/index.js +2 -0
  204. package/StaticTimePicker/package.json +6 -0
  205. package/TabContext/TabContext.d.ts +31 -0
  206. package/TabContext/TabContext.js +85 -0
  207. package/TabContext/index.d.ts +2 -0
  208. package/TabContext/index.js +2 -0
  209. package/TabContext/package.json +6 -0
  210. package/TabList/TabList.d.ts +39 -0
  211. package/TabList/TabList.js +51 -0
  212. package/TabList/index.d.ts +2 -0
  213. package/TabList/index.js +1 -0
  214. package/TabList/package.json +6 -0
  215. package/TabPanel/TabPanel.d.ts +37 -0
  216. package/TabPanel/TabPanel.js +102 -0
  217. package/TabPanel/index.d.ts +5 -0
  218. package/TabPanel/index.js +3 -0
  219. package/TabPanel/package.json +6 -0
  220. package/TabPanel/tabPanelClasses.d.ts +8 -0
  221. package/TabPanel/tabPanelClasses.js +6 -0
  222. package/TimePicker/TimePicker.d.ts +10 -0
  223. package/TimePicker/TimePicker.js +19 -0
  224. package/TimePicker/index.d.ts +2 -0
  225. package/TimePicker/index.js +2 -0
  226. package/TimePicker/package.json +6 -0
  227. package/Timeline/Timeline.d.ts +59 -0
  228. package/Timeline/Timeline.js +125 -0
  229. package/Timeline/TimelineContext.d.ts +6 -0
  230. package/Timeline/TimelineContext.js +12 -0
  231. package/Timeline/index.d.ts +5 -0
  232. package/Timeline/index.js +3 -0
  233. package/Timeline/package.json +6 -0
  234. package/Timeline/timelineClasses.d.ts +3 -0
  235. package/Timeline/timelineClasses.js +6 -0
  236. package/TimelineConnector/TimelineConnector.d.ts +33 -0
  237. package/TimelineConnector/TimelineConnector.js +82 -0
  238. package/TimelineConnector/index.d.ts +5 -0
  239. package/TimelineConnector/index.js +3 -0
  240. package/TimelineConnector/package.json +6 -0
  241. package/TimelineConnector/timelineConnectorClasses.d.ts +8 -0
  242. package/TimelineConnector/timelineConnectorClasses.js +6 -0
  243. package/TimelineContent/TimelineContent.d.ts +33 -0
  244. package/TimelineContent/TimelineContent.js +99 -0
  245. package/TimelineContent/index.d.ts +5 -0
  246. package/TimelineContent/index.js +3 -0
  247. package/TimelineContent/package.json +6 -0
  248. package/TimelineContent/timelineContentClasses.d.ts +14 -0
  249. package/TimelineContent/timelineContentClasses.js +6 -0
  250. package/TimelineDot/TimelineDot.d.ts +50 -0
  251. package/TimelineDot/TimelineDot.js +131 -0
  252. package/TimelineDot/index.d.ts +5 -0
  253. package/TimelineDot/index.js +3 -0
  254. package/TimelineDot/package.json +6 -0
  255. package/TimelineDot/timelineDotClasses.d.ts +24 -0
  256. package/TimelineDot/timelineDotClasses.js +6 -0
  257. package/TimelineItem/TimelineItem.d.ts +36 -0
  258. package/TimelineItem/TimelineItem.js +135 -0
  259. package/TimelineItem/index.d.ts +5 -0
  260. package/TimelineItem/index.js +3 -0
  261. package/TimelineItem/package.json +6 -0
  262. package/TimelineItem/timelineItemClasses.d.ts +16 -0
  263. package/TimelineItem/timelineItemClasses.js +6 -0
  264. package/TimelineOppositeContent/TimelineOppositeContent.d.ts +37 -0
  265. package/TimelineOppositeContent/TimelineOppositeContent.js +101 -0
  266. package/TimelineOppositeContent/index.d.ts +5 -0
  267. package/TimelineOppositeContent/index.js +3 -0
  268. package/TimelineOppositeContent/package.json +6 -0
  269. package/TimelineOppositeContent/timelineOppositeContentClasses.d.ts +14 -0
  270. package/TimelineOppositeContent/timelineOppositeContentClasses.js +6 -0
  271. package/TimelineSeparator/TimelineSeparator.d.ts +33 -0
  272. package/TimelineSeparator/TimelineSeparator.js +79 -0
  273. package/TimelineSeparator/index.d.ts +5 -0
  274. package/TimelineSeparator/index.js +3 -0
  275. package/TimelineSeparator/package.json +6 -0
  276. package/TimelineSeparator/timelineSeparatorClasses.d.ts +8 -0
  277. package/TimelineSeparator/timelineSeparatorClasses.js +6 -0
  278. package/ToggleButton/ToggleButton.d.ts +2 -0
  279. package/ToggleButton/ToggleButton.js +19 -0
  280. package/ToggleButton/index.d.ts +2 -0
  281. package/ToggleButton/index.js +1 -0
  282. package/ToggleButton/package.json +6 -0
  283. package/ToggleButtonGroup/ToggleButtonGroup.d.ts +2 -0
  284. package/ToggleButtonGroup/ToggleButtonGroup.js +19 -0
  285. package/ToggleButtonGroup/index.d.ts +2 -0
  286. package/ToggleButtonGroup/index.js +1 -0
  287. package/ToggleButtonGroup/package.json +6 -0
  288. package/TreeItem/TreeItem.d.ts +87 -0
  289. package/TreeItem/TreeItem.js +423 -0
  290. package/TreeItem/TreeItemContent.d.ts +50 -0
  291. package/TreeItem/TreeItemContent.js +128 -0
  292. package/TreeItem/index.d.ts +7 -0
  293. package/TreeItem/index.js +4 -0
  294. package/TreeItem/package.json +6 -0
  295. package/TreeItem/treeItemClasses.d.ts +24 -0
  296. package/TreeItem/treeItemClasses.js +6 -0
  297. package/TreeItem/useTreeItem.d.ts +11 -0
  298. package/TreeItem/useTreeItem.js +74 -0
  299. package/TreeView/TreeView.d.ts +144 -0
  300. package/TreeView/TreeView.js +982 -0
  301. package/TreeView/TreeViewContext.js +12 -0
  302. package/TreeView/descendants.js +198 -0
  303. package/TreeView/index.d.ts +5 -0
  304. package/TreeView/index.js +3 -0
  305. package/TreeView/package.json +6 -0
  306. package/TreeView/treeViewClasses.d.ts +8 -0
  307. package/TreeView/treeViewClasses.js +6 -0
  308. package/YearPicker/YearPicker.d.ts +14 -0
  309. package/YearPicker/YearPicker.js +24 -0
  310. package/YearPicker/index.d.ts +2 -0
  311. package/YearPicker/index.js +2 -0
  312. package/YearPicker/package.json +6 -0
  313. package/index.d.ts +155 -0
  314. package/index.js +110 -0
  315. package/internal/svg-icons/ArrowDropDown.d.ts +7 -0
  316. package/internal/svg-icons/ArrowDropDown.js +10 -0
  317. package/internal/svg-icons/ArrowLeft.d.ts +7 -0
  318. package/internal/svg-icons/ArrowLeft.js +10 -0
  319. package/internal/svg-icons/ArrowRight.d.ts +7 -0
  320. package/internal/svg-icons/ArrowRight.js +10 -0
  321. package/internal/svg-icons/Calendar.d.ts +7 -0
  322. package/internal/svg-icons/Calendar.js +10 -0
  323. package/internal/svg-icons/Clock.d.ts +7 -0
  324. package/internal/svg-icons/Clock.js +15 -0
  325. package/internal/svg-icons/DateRange.d.ts +7 -0
  326. package/internal/svg-icons/DateRange.js +10 -0
  327. package/internal/svg-icons/Pen.d.ts +7 -0
  328. package/internal/svg-icons/Pen.js +10 -0
  329. package/internal/svg-icons/Time.d.ts +7 -0
  330. package/internal/svg-icons/Time.js +15 -0
  331. package/legacy/AdapterDateFns/AdapterDateFns.js +19 -0
  332. package/legacy/AdapterDateFns/index.js +1 -0
  333. package/legacy/AdapterDayjs/AdapterDayjs.js +19 -0
  334. package/legacy/AdapterDayjs/index.js +1 -0
  335. package/legacy/AdapterLuxon/AdapterLuxon.js +19 -0
  336. package/legacy/AdapterLuxon/index.js +1 -0
  337. package/legacy/AdapterMoment/AdapterMoment.js +19 -0
  338. package/legacy/AdapterMoment/index.js +1 -0
  339. package/legacy/Alert/Alert.js +19 -0
  340. package/legacy/Alert/index.js +1 -0
  341. package/legacy/AlertTitle/AlertTitle.js +19 -0
  342. package/legacy/AlertTitle/index.js +1 -0
  343. package/legacy/Autocomplete/Autocomplete.js +19 -0
  344. package/legacy/Autocomplete/index.js +1 -0
  345. package/legacy/AvatarGroup/AvatarGroup.js +19 -0
  346. package/legacy/AvatarGroup/index.js +1 -0
  347. package/legacy/CalendarPicker/CalendarPicker.js +20 -0
  348. package/legacy/CalendarPicker/index.js +2 -0
  349. package/legacy/CalendarPickerSkeleton/CalendarPickerSkeleton.js +24 -0
  350. package/legacy/CalendarPickerSkeleton/index.js +2 -0
  351. package/legacy/ClockPicker/ClockPicker.js +20 -0
  352. package/legacy/ClockPicker/index.js +2 -0
  353. package/legacy/DatePicker/DatePicker.js +19 -0
  354. package/legacy/DatePicker/index.js +2 -0
  355. package/legacy/DateRangePicker/DateRangePicker.js +19 -0
  356. package/legacy/DateRangePicker/index.js +2 -0
  357. package/legacy/DateRangePickerDay/DateRangePickerDay.js +23 -0
  358. package/legacy/DateRangePickerDay/index.js +2 -0
  359. package/legacy/DateTimePicker/DateTimePicker.js +19 -0
  360. package/legacy/DateTimePicker/index.js +2 -0
  361. package/legacy/DesktopDatePicker/DesktopDatePicker.js +19 -0
  362. package/legacy/DesktopDatePicker/index.js +2 -0
  363. package/legacy/DesktopDateRangePicker/DesktopDateRangePicker.js +19 -0
  364. package/legacy/DesktopDateRangePicker/index.js +2 -0
  365. package/legacy/DesktopDateTimePicker/DesktopDateTimePicker.js +19 -0
  366. package/legacy/DesktopDateTimePicker/index.js +2 -0
  367. package/legacy/DesktopTimePicker/DesktopTimePicker.js +19 -0
  368. package/legacy/DesktopTimePicker/index.js +2 -0
  369. package/legacy/LoadingButton/LoadingButton.js +229 -0
  370. package/legacy/LoadingButton/index.js +3 -0
  371. package/legacy/LoadingButton/loadingButtonClasses.js +6 -0
  372. package/legacy/LocalizationProvider/LocalizationProvider.js +18 -0
  373. package/legacy/LocalizationProvider/index.js +2 -0
  374. package/legacy/Masonry/Masonry.js +357 -0
  375. package/legacy/Masonry/index.js +3 -0
  376. package/legacy/Masonry/masonryClasses.js +6 -0
  377. package/legacy/MobileDatePicker/MobileDatePicker.js +19 -0
  378. package/legacy/MobileDatePicker/index.js +2 -0
  379. package/legacy/MobileDateRangePicker/MobileDateRangePicker.js +19 -0
  380. package/legacy/MobileDateRangePicker/index.js +2 -0
  381. package/legacy/MobileDateTimePicker/MobileDateTimePicker.js +19 -0
  382. package/legacy/MobileDateTimePicker/index.js +2 -0
  383. package/legacy/MobileTimePicker/MobileTimePicker.js +19 -0
  384. package/legacy/MobileTimePicker/index.js +2 -0
  385. package/legacy/MonthPicker/MonthPicker.js +24 -0
  386. package/legacy/MonthPicker/index.js +2 -0
  387. package/legacy/Pagination/Pagination.js +19 -0
  388. package/legacy/Pagination/index.js +2 -0
  389. package/legacy/Pagination/usePagination.js +1 -0
  390. package/legacy/PaginationItem/PaginationItem.js +19 -0
  391. package/legacy/PaginationItem/index.js +1 -0
  392. package/legacy/PickersDay/PickersDay.js +24 -0
  393. package/legacy/PickersDay/index.js +2 -0
  394. package/legacy/Rating/Rating.js +19 -0
  395. package/legacy/Rating/index.js +1 -0
  396. package/legacy/Skeleton/Skeleton.js +19 -0
  397. package/legacy/Skeleton/index.js +1 -0
  398. package/legacy/SpeedDial/SpeedDial.js +19 -0
  399. package/legacy/SpeedDial/index.js +1 -0
  400. package/legacy/SpeedDialAction/SpeedDialAction.js +19 -0
  401. package/legacy/SpeedDialAction/index.js +1 -0
  402. package/legacy/SpeedDialIcon/SpeedDialIcon.js +19 -0
  403. package/legacy/SpeedDialIcon/index.js +1 -0
  404. package/legacy/StaticDatePicker/StaticDatePicker.js +19 -0
  405. package/legacy/StaticDatePicker/index.js +2 -0
  406. package/legacy/StaticDateRangePicker/StaticDateRangePicker.js +19 -0
  407. package/legacy/StaticDateRangePicker/index.js +2 -0
  408. package/legacy/StaticDateTimePicker/StaticDateTimePicker.js +19 -0
  409. package/legacy/StaticDateTimePicker/index.js +2 -0
  410. package/legacy/StaticTimePicker/StaticTimePicker.js +19 -0
  411. package/legacy/StaticTimePicker/index.js +2 -0
  412. package/legacy/TabContext/TabContext.js +82 -0
  413. package/legacy/TabContext/index.js +2 -0
  414. package/legacy/TabList/TabList.js +48 -0
  415. package/legacy/TabList/index.js +1 -0
  416. package/legacy/TabPanel/TabPanel.js +100 -0
  417. package/legacy/TabPanel/index.js +3 -0
  418. package/legacy/TabPanel/tabPanelClasses.js +6 -0
  419. package/legacy/TimePicker/TimePicker.js +19 -0
  420. package/legacy/TimePicker/index.js +2 -0
  421. package/legacy/Timeline/Timeline.js +119 -0
  422. package/legacy/Timeline/TimelineContext.js +12 -0
  423. package/legacy/Timeline/index.js +3 -0
  424. package/legacy/Timeline/timelineClasses.js +6 -0
  425. package/legacy/TimelineConnector/TimelineConnector.js +78 -0
  426. package/legacy/TimelineConnector/index.js +3 -0
  427. package/legacy/TimelineConnector/timelineConnectorClasses.js +6 -0
  428. package/legacy/TimelineContent/TimelineContent.js +92 -0
  429. package/legacy/TimelineContent/index.js +3 -0
  430. package/legacy/TimelineContent/timelineContentClasses.js +6 -0
  431. package/legacy/TimelineDot/TimelineDot.js +127 -0
  432. package/legacy/TimelineDot/index.js +3 -0
  433. package/legacy/TimelineDot/timelineDotClasses.js +6 -0
  434. package/legacy/TimelineItem/TimelineItem.js +130 -0
  435. package/legacy/TimelineItem/index.js +3 -0
  436. package/legacy/TimelineItem/timelineItemClasses.js +6 -0
  437. package/legacy/TimelineOppositeContent/TimelineOppositeContent.js +94 -0
  438. package/legacy/TimelineOppositeContent/index.js +3 -0
  439. package/legacy/TimelineOppositeContent/timelineOppositeContentClasses.js +6 -0
  440. package/legacy/TimelineSeparator/TimelineSeparator.js +76 -0
  441. package/legacy/TimelineSeparator/index.js +3 -0
  442. package/legacy/TimelineSeparator/timelineSeparatorClasses.js +6 -0
  443. package/legacy/ToggleButton/ToggleButton.js +19 -0
  444. package/legacy/ToggleButton/index.js +1 -0
  445. package/legacy/ToggleButtonGroup/ToggleButtonGroup.js +19 -0
  446. package/legacy/ToggleButtonGroup/index.js +1 -0
  447. package/legacy/TreeItem/TreeItem.js +425 -0
  448. package/legacy/TreeItem/TreeItemContent.js +125 -0
  449. package/legacy/TreeItem/index.js +4 -0
  450. package/legacy/TreeItem/treeItemClasses.js +6 -0
  451. package/legacy/TreeItem/useTreeItem.js +74 -0
  452. package/legacy/TreeView/TreeView.js +1045 -0
  453. package/legacy/TreeView/TreeViewContext.js +12 -0
  454. package/legacy/TreeView/descendants.js +211 -0
  455. package/legacy/TreeView/index.js +3 -0
  456. package/legacy/TreeView/treeViewClasses.js +6 -0
  457. package/legacy/YearPicker/YearPicker.js +24 -0
  458. package/legacy/YearPicker/index.js +2 -0
  459. package/legacy/index.js +110 -0
  460. package/legacy/internal/svg-icons/ArrowDropDown.js +10 -0
  461. package/legacy/internal/svg-icons/ArrowLeft.js +10 -0
  462. package/legacy/internal/svg-icons/ArrowRight.js +10 -0
  463. package/legacy/internal/svg-icons/Calendar.js +10 -0
  464. package/legacy/internal/svg-icons/Clock.js +15 -0
  465. package/legacy/internal/svg-icons/DateRange.js +10 -0
  466. package/legacy/internal/svg-icons/Pen.js +10 -0
  467. package/legacy/internal/svg-icons/Time.js +15 -0
  468. package/legacy/themeAugmentation/index.js +1 -0
  469. package/legacy/useAutocomplete/index.js +1 -0
  470. package/modern/AdapterDateFns/AdapterDateFns.js +16 -0
  471. package/modern/AdapterDateFns/index.js +1 -0
  472. package/modern/AdapterDayjs/AdapterDayjs.js +16 -0
  473. package/modern/AdapterDayjs/index.js +1 -0
  474. package/modern/AdapterLuxon/AdapterLuxon.js +16 -0
  475. package/modern/AdapterLuxon/index.js +1 -0
  476. package/modern/AdapterMoment/AdapterMoment.js +16 -0
  477. package/modern/AdapterMoment/index.js +1 -0
  478. package/modern/Alert/Alert.js +19 -0
  479. package/modern/Alert/index.js +1 -0
  480. package/modern/AlertTitle/AlertTitle.js +19 -0
  481. package/modern/AlertTitle/index.js +1 -0
  482. package/modern/Autocomplete/Autocomplete.js +19 -0
  483. package/modern/Autocomplete/index.js +1 -0
  484. package/modern/AvatarGroup/AvatarGroup.js +19 -0
  485. package/modern/AvatarGroup/index.js +1 -0
  486. package/modern/CalendarPicker/CalendarPicker.js +20 -0
  487. package/modern/CalendarPicker/index.js +2 -0
  488. package/modern/CalendarPickerSkeleton/CalendarPickerSkeleton.js +24 -0
  489. package/modern/CalendarPickerSkeleton/index.js +2 -0
  490. package/modern/ClockPicker/ClockPicker.js +20 -0
  491. package/modern/ClockPicker/index.js +2 -0
  492. package/modern/DatePicker/DatePicker.js +19 -0
  493. package/modern/DatePicker/index.js +2 -0
  494. package/modern/DateRangePicker/DateRangePicker.js +19 -0
  495. package/modern/DateRangePicker/index.js +2 -0
  496. package/modern/DateRangePickerDay/DateRangePickerDay.js +23 -0
  497. package/modern/DateRangePickerDay/index.js +2 -0
  498. package/modern/DateTimePicker/DateTimePicker.js +19 -0
  499. package/modern/DateTimePicker/index.js +2 -0
  500. package/modern/DesktopDatePicker/DesktopDatePicker.js +19 -0
  501. package/modern/DesktopDatePicker/index.js +2 -0
  502. package/modern/DesktopDateRangePicker/DesktopDateRangePicker.js +19 -0
  503. package/modern/DesktopDateRangePicker/index.js +2 -0
  504. package/modern/DesktopDateTimePicker/DesktopDateTimePicker.js +19 -0
  505. package/modern/DesktopDateTimePicker/index.js +2 -0
  506. package/modern/DesktopTimePicker/DesktopTimePicker.js +19 -0
  507. package/modern/DesktopTimePicker/index.js +2 -0
  508. package/modern/LoadingButton/LoadingButton.js +237 -0
  509. package/modern/LoadingButton/index.js +3 -0
  510. package/modern/LoadingButton/loadingButtonClasses.js +6 -0
  511. package/modern/LocalizationProvider/LocalizationProvider.js +18 -0
  512. package/modern/LocalizationProvider/index.js +2 -0
  513. package/modern/Masonry/Masonry.js +347 -0
  514. package/modern/Masonry/index.js +3 -0
  515. package/modern/Masonry/masonryClasses.js +6 -0
  516. package/modern/MobileDatePicker/MobileDatePicker.js +19 -0
  517. package/modern/MobileDatePicker/index.js +2 -0
  518. package/modern/MobileDateRangePicker/MobileDateRangePicker.js +19 -0
  519. package/modern/MobileDateRangePicker/index.js +2 -0
  520. package/modern/MobileDateTimePicker/MobileDateTimePicker.js +19 -0
  521. package/modern/MobileDateTimePicker/index.js +2 -0
  522. package/modern/MobileTimePicker/MobileTimePicker.js +19 -0
  523. package/modern/MobileTimePicker/index.js +2 -0
  524. package/modern/MonthPicker/MonthPicker.js +24 -0
  525. package/modern/MonthPicker/index.js +2 -0
  526. package/modern/Pagination/Pagination.js +19 -0
  527. package/modern/Pagination/index.js +2 -0
  528. package/modern/Pagination/usePagination.js +1 -0
  529. package/modern/PaginationItem/PaginationItem.js +19 -0
  530. package/modern/PaginationItem/index.js +1 -0
  531. package/modern/PickersDay/PickersDay.js +24 -0
  532. package/modern/PickersDay/index.js +2 -0
  533. package/modern/Rating/Rating.js +19 -0
  534. package/modern/Rating/index.js +1 -0
  535. package/modern/Skeleton/Skeleton.js +19 -0
  536. package/modern/Skeleton/index.js +1 -0
  537. package/modern/SpeedDial/SpeedDial.js +19 -0
  538. package/modern/SpeedDial/index.js +1 -0
  539. package/modern/SpeedDialAction/SpeedDialAction.js +19 -0
  540. package/modern/SpeedDialAction/index.js +1 -0
  541. package/modern/SpeedDialIcon/SpeedDialIcon.js +19 -0
  542. package/modern/SpeedDialIcon/index.js +1 -0
  543. package/modern/StaticDatePicker/StaticDatePicker.js +19 -0
  544. package/modern/StaticDatePicker/index.js +2 -0
  545. package/modern/StaticDateRangePicker/StaticDateRangePicker.js +19 -0
  546. package/modern/StaticDateRangePicker/index.js +2 -0
  547. package/modern/StaticDateTimePicker/StaticDateTimePicker.js +19 -0
  548. package/modern/StaticDateTimePicker/index.js +2 -0
  549. package/modern/StaticTimePicker/StaticTimePicker.js +19 -0
  550. package/modern/StaticTimePicker/index.js +2 -0
  551. package/modern/TabContext/TabContext.js +85 -0
  552. package/modern/TabContext/index.js +2 -0
  553. package/modern/TabList/TabList.js +51 -0
  554. package/modern/TabList/index.js +1 -0
  555. package/modern/TabPanel/TabPanel.js +102 -0
  556. package/modern/TabPanel/index.js +3 -0
  557. package/modern/TabPanel/tabPanelClasses.js +6 -0
  558. package/modern/TimePicker/TimePicker.js +19 -0
  559. package/modern/TimePicker/index.js +2 -0
  560. package/modern/Timeline/Timeline.js +125 -0
  561. package/modern/Timeline/TimelineContext.js +12 -0
  562. package/modern/Timeline/index.js +3 -0
  563. package/modern/Timeline/timelineClasses.js +6 -0
  564. package/modern/TimelineConnector/TimelineConnector.js +82 -0
  565. package/modern/TimelineConnector/index.js +3 -0
  566. package/modern/TimelineConnector/timelineConnectorClasses.js +6 -0
  567. package/modern/TimelineContent/TimelineContent.js +99 -0
  568. package/modern/TimelineContent/index.js +3 -0
  569. package/modern/TimelineContent/timelineContentClasses.js +6 -0
  570. package/modern/TimelineDot/TimelineDot.js +131 -0
  571. package/modern/TimelineDot/index.js +3 -0
  572. package/modern/TimelineDot/timelineDotClasses.js +6 -0
  573. package/modern/TimelineItem/TimelineItem.js +135 -0
  574. package/modern/TimelineItem/index.js +3 -0
  575. package/modern/TimelineItem/timelineItemClasses.js +6 -0
  576. package/modern/TimelineOppositeContent/TimelineOppositeContent.js +101 -0
  577. package/modern/TimelineOppositeContent/index.js +3 -0
  578. package/modern/TimelineOppositeContent/timelineOppositeContentClasses.js +6 -0
  579. package/modern/TimelineSeparator/TimelineSeparator.js +79 -0
  580. package/modern/TimelineSeparator/index.js +3 -0
  581. package/modern/TimelineSeparator/timelineSeparatorClasses.js +6 -0
  582. package/modern/ToggleButton/ToggleButton.js +19 -0
  583. package/modern/ToggleButton/index.js +1 -0
  584. package/modern/ToggleButtonGroup/ToggleButtonGroup.js +19 -0
  585. package/modern/ToggleButtonGroup/index.js +1 -0
  586. package/modern/TreeItem/TreeItem.js +423 -0
  587. package/modern/TreeItem/TreeItemContent.js +128 -0
  588. package/modern/TreeItem/index.js +4 -0
  589. package/modern/TreeItem/treeItemClasses.js +6 -0
  590. package/modern/TreeItem/useTreeItem.js +74 -0
  591. package/modern/TreeView/TreeView.js +982 -0
  592. package/modern/TreeView/TreeViewContext.js +12 -0
  593. package/modern/TreeView/descendants.js +198 -0
  594. package/modern/TreeView/index.js +3 -0
  595. package/modern/TreeView/treeViewClasses.js +6 -0
  596. package/modern/YearPicker/YearPicker.js +24 -0
  597. package/modern/YearPicker/index.js +2 -0
  598. package/modern/index.js +110 -0
  599. package/modern/internal/svg-icons/ArrowDropDown.js +10 -0
  600. package/modern/internal/svg-icons/ArrowLeft.js +10 -0
  601. package/modern/internal/svg-icons/ArrowRight.js +10 -0
  602. package/modern/internal/svg-icons/Calendar.js +10 -0
  603. package/modern/internal/svg-icons/Clock.js +15 -0
  604. package/modern/internal/svg-icons/DateRange.js +10 -0
  605. package/modern/internal/svg-icons/Pen.js +10 -0
  606. package/modern/internal/svg-icons/Time.js +15 -0
  607. package/modern/themeAugmentation/index.js +1 -0
  608. package/modern/useAutocomplete/index.js +1 -0
  609. package/node/AdapterDateFns/AdapterDateFns.js +24 -0
  610. package/node/AdapterDateFns/index.js +15 -0
  611. package/node/AdapterDayjs/AdapterDayjs.js +24 -0
  612. package/node/AdapterDayjs/index.js +15 -0
  613. package/node/AdapterLuxon/AdapterLuxon.js +24 -0
  614. package/node/AdapterLuxon/index.js +15 -0
  615. package/node/AdapterMoment/AdapterMoment.js +24 -0
  616. package/node/AdapterMoment/index.js +15 -0
  617. package/node/Alert/Alert.js +38 -0
  618. package/node/Alert/index.js +15 -0
  619. package/node/AlertTitle/AlertTitle.js +38 -0
  620. package/node/AlertTitle/index.js +15 -0
  621. package/node/Autocomplete/Autocomplete.js +38 -0
  622. package/node/Autocomplete/index.js +15 -0
  623. package/node/AvatarGroup/AvatarGroup.js +38 -0
  624. package/node/AvatarGroup/index.js +15 -0
  625. package/node/CalendarPicker/CalendarPicker.js +34 -0
  626. package/node/CalendarPicker/index.js +30 -0
  627. package/node/CalendarPickerSkeleton/CalendarPickerSkeleton.js +41 -0
  628. package/node/CalendarPickerSkeleton/index.js +30 -0
  629. package/node/ClockPicker/ClockPicker.js +34 -0
  630. package/node/ClockPicker/index.js +30 -0
  631. package/node/DatePicker/DatePicker.js +32 -0
  632. package/node/DatePicker/index.js +30 -0
  633. package/node/DateRangePicker/DateRangePicker.js +32 -0
  634. package/node/DateRangePicker/index.js +30 -0
  635. package/node/DateRangePickerDay/DateRangePickerDay.js +39 -0
  636. package/node/DateRangePickerDay/index.js +30 -0
  637. package/node/DateTimePicker/DateTimePicker.js +32 -0
  638. package/node/DateTimePicker/index.js +30 -0
  639. package/node/DesktopDatePicker/DesktopDatePicker.js +32 -0
  640. package/node/DesktopDatePicker/index.js +30 -0
  641. package/node/DesktopDateRangePicker/DesktopDateRangePicker.js +32 -0
  642. package/node/DesktopDateRangePicker/index.js +30 -0
  643. package/node/DesktopDateTimePicker/DesktopDateTimePicker.js +32 -0
  644. package/node/DesktopDateTimePicker/index.js +30 -0
  645. package/node/DesktopTimePicker/DesktopTimePicker.js +32 -0
  646. package/node/DesktopTimePicker/index.js +30 -0
  647. package/node/LoadingButton/LoadingButton.js +257 -0
  648. package/node/LoadingButton/index.js +42 -0
  649. package/node/LoadingButton/loadingButtonClasses.js +17 -0
  650. package/node/LocalizationProvider/LocalizationProvider.js +31 -0
  651. package/node/LocalizationProvider/index.js +30 -0
  652. package/node/Masonry/Masonry.js +373 -0
  653. package/node/Masonry/index.js +42 -0
  654. package/node/Masonry/masonryClasses.js +17 -0
  655. package/node/MobileDatePicker/MobileDatePicker.js +32 -0
  656. package/node/MobileDatePicker/index.js +30 -0
  657. package/node/MobileDateRangePicker/MobileDateRangePicker.js +32 -0
  658. package/node/MobileDateRangePicker/index.js +30 -0
  659. package/node/MobileDateTimePicker/MobileDateTimePicker.js +32 -0
  660. package/node/MobileDateTimePicker/index.js +30 -0
  661. package/node/MobileTimePicker/MobileTimePicker.js +32 -0
  662. package/node/MobileTimePicker/index.js +30 -0
  663. package/node/MonthPicker/MonthPicker.js +41 -0
  664. package/node/MonthPicker/index.js +30 -0
  665. package/node/Pagination/Pagination.js +38 -0
  666. package/node/Pagination/index.js +23 -0
  667. package/node/Pagination/usePagination.js +15 -0
  668. package/node/PaginationItem/PaginationItem.js +38 -0
  669. package/node/PaginationItem/index.js +15 -0
  670. package/node/PickersDay/PickersDay.js +41 -0
  671. package/node/PickersDay/index.js +30 -0
  672. package/node/Rating/Rating.js +38 -0
  673. package/node/Rating/index.js +15 -0
  674. package/node/Skeleton/Skeleton.js +38 -0
  675. package/node/Skeleton/index.js +15 -0
  676. package/node/SpeedDial/SpeedDial.js +38 -0
  677. package/node/SpeedDial/index.js +15 -0
  678. package/node/SpeedDialAction/SpeedDialAction.js +38 -0
  679. package/node/SpeedDialAction/index.js +15 -0
  680. package/node/SpeedDialIcon/SpeedDialIcon.js +38 -0
  681. package/node/SpeedDialIcon/index.js +15 -0
  682. package/node/StaticDatePicker/StaticDatePicker.js +32 -0
  683. package/node/StaticDatePicker/index.js +30 -0
  684. package/node/StaticDateRangePicker/StaticDateRangePicker.js +32 -0
  685. package/node/StaticDateRangePicker/index.js +30 -0
  686. package/node/StaticDateTimePicker/StaticDateTimePicker.js +32 -0
  687. package/node/StaticDateTimePicker/index.js +30 -0
  688. package/node/StaticTimePicker/StaticTimePicker.js +32 -0
  689. package/node/StaticTimePicker/index.js +30 -0
  690. package/node/TabContext/TabContext.js +106 -0
  691. package/node/TabContext/index.js +30 -0
  692. package/node/TabList/TabList.js +72 -0
  693. package/node/TabList/index.js +15 -0
  694. package/node/TabPanel/TabPanel.js +123 -0
  695. package/node/TabPanel/index.js +42 -0
  696. package/node/TabPanel/tabPanelClasses.js +17 -0
  697. package/node/TimePicker/TimePicker.js +32 -0
  698. package/node/TimePicker/index.js +30 -0
  699. package/node/Timeline/Timeline.js +147 -0
  700. package/node/Timeline/TimelineContext.js +24 -0
  701. package/node/Timeline/index.js +42 -0
  702. package/node/Timeline/timelineClasses.js +17 -0
  703. package/node/TimelineConnector/TimelineConnector.js +103 -0
  704. package/node/TimelineConnector/index.js +42 -0
  705. package/node/TimelineConnector/timelineConnectorClasses.js +17 -0
  706. package/node/TimelineContent/TimelineContent.js +121 -0
  707. package/node/TimelineContent/index.js +42 -0
  708. package/node/TimelineContent/timelineContentClasses.js +17 -0
  709. package/node/TimelineDot/TimelineDot.js +152 -0
  710. package/node/TimelineDot/index.js +42 -0
  711. package/node/TimelineDot/timelineDotClasses.js +17 -0
  712. package/node/TimelineItem/TimelineItem.js +158 -0
  713. package/node/TimelineItem/index.js +42 -0
  714. package/node/TimelineItem/timelineItemClasses.js +17 -0
  715. package/node/TimelineOppositeContent/TimelineOppositeContent.js +123 -0
  716. package/node/TimelineOppositeContent/index.js +42 -0
  717. package/node/TimelineOppositeContent/timelineOppositeContentClasses.js +17 -0
  718. package/node/TimelineSeparator/TimelineSeparator.js +100 -0
  719. package/node/TimelineSeparator/index.js +42 -0
  720. package/node/TimelineSeparator/timelineSeparatorClasses.js +17 -0
  721. package/node/ToggleButton/ToggleButton.js +38 -0
  722. package/node/ToggleButton/index.js +15 -0
  723. package/node/ToggleButtonGroup/ToggleButtonGroup.js +38 -0
  724. package/node/ToggleButtonGroup/index.js +15 -0
  725. package/node/TreeItem/TreeItem.js +447 -0
  726. package/node/TreeItem/TreeItemContent.js +147 -0
  727. package/node/TreeItem/index.js +51 -0
  728. package/node/TreeItem/treeItemClasses.js +17 -0
  729. package/node/TreeItem/useTreeItem.js +89 -0
  730. package/node/TreeView/TreeView.js +1002 -0
  731. package/node/TreeView/TreeViewContext.js +24 -0
  732. package/node/TreeView/descendants.js +217 -0
  733. package/node/TreeView/index.js +42 -0
  734. package/node/TreeView/treeViewClasses.js +17 -0
  735. package/node/YearPicker/YearPicker.js +36 -0
  736. package/node/YearPicker/index.js +30 -0
  737. package/node/index.js +1098 -0
  738. package/node/internal/svg-icons/ArrowDropDown.js +25 -0
  739. package/node/internal/svg-icons/ArrowLeft.js +25 -0
  740. package/node/internal/svg-icons/ArrowRight.js +25 -0
  741. package/node/internal/svg-icons/Calendar.js +25 -0
  742. package/node/internal/svg-icons/Clock.js +29 -0
  743. package/node/internal/svg-icons/DateRange.js +25 -0
  744. package/node/internal/svg-icons/Pen.js +25 -0
  745. package/node/internal/svg-icons/Time.js +29 -0
  746. package/node/themeAugmentation/index.js +2 -0
  747. package/node/useAutocomplete/index.js +19 -0
  748. package/package.json +67 -0
  749. package/themeAugmentation/components.d.ts +78 -0
  750. package/themeAugmentation/index.d.ts +3 -0
  751. package/themeAugmentation/index.js +1 -0
  752. package/themeAugmentation/overrides.d.ts +35 -0
  753. package/themeAugmentation/package.json +6 -0
  754. package/themeAugmentation/props.d.ts +36 -0
  755. package/useAutocomplete/index.d.ts +1 -0
  756. package/useAutocomplete/index.js +1 -0
  757. package/useAutocomplete/package.json +6 -0
@@ -0,0 +1,1002 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+
12
+ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
13
+
14
+ var React = _interopRequireWildcard(require("react"));
15
+
16
+ var _clsx = _interopRequireDefault(require("clsx"));
17
+
18
+ var _propTypes = _interopRequireDefault(require("prop-types"));
19
+
20
+ var _styles = require("@mui/material/styles");
21
+
22
+ var _base = require("@mui/base");
23
+
24
+ var _utils = require("@mui/material/utils");
25
+
26
+ var _TreeViewContext = _interopRequireDefault(require("./TreeViewContext"));
27
+
28
+ var _descendants = require("./descendants");
29
+
30
+ var _treeViewClasses = require("./treeViewClasses");
31
+
32
+ var _jsxRuntime = require("react/jsx-runtime");
33
+
34
+ const _excluded = ["children", "className", "defaultCollapseIcon", "defaultEndIcon", "defaultExpanded", "defaultExpandIcon", "defaultParentIcon", "defaultSelected", "disabledItemsFocusable", "disableSelection", "expanded", "id", "multiSelect", "onBlur", "onFocus", "onKeyDown", "onNodeFocus", "onNodeSelect", "onNodeToggle", "selected"];
35
+
36
+ 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); }
37
+
38
+ 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; }
39
+
40
+ const useUtilityClasses = ownerState => {
41
+ const {
42
+ classes
43
+ } = ownerState;
44
+ const slots = {
45
+ root: ['root']
46
+ };
47
+ return (0, _base.unstable_composeClasses)(slots, _treeViewClasses.getTreeViewUtilityClass, classes);
48
+ };
49
+
50
+ const TreeViewRoot = (0, _styles.styled)('ul', {
51
+ name: 'MuiTreeView',
52
+ slot: 'Root',
53
+ overridesResolver: (props, styles) => styles.root
54
+ })({
55
+ padding: 0,
56
+ margin: 0,
57
+ listStyle: 'none',
58
+ outline: 0
59
+ });
60
+
61
+ function isPrintableCharacter(string) {
62
+ return string && string.length === 1 && string.match(/\S/);
63
+ }
64
+
65
+ function findNextFirstChar(firstChars, startIndex, char) {
66
+ for (let i = startIndex; i < firstChars.length; i += 1) {
67
+ if (char === firstChars[i]) {
68
+ return i;
69
+ }
70
+ }
71
+
72
+ return -1;
73
+ }
74
+
75
+ function noopSelection() {
76
+ return false;
77
+ }
78
+
79
+ const defaultDefaultExpanded = [];
80
+ const defaultDefaultSelected = [];
81
+ const TreeView = /*#__PURE__*/React.forwardRef(function TreeView(inProps, ref) {
82
+ const props = (0, _styles.useThemeProps)({
83
+ props: inProps,
84
+ name: 'MuiTreeView'
85
+ });
86
+ const {
87
+ children,
88
+ className,
89
+ defaultCollapseIcon,
90
+ defaultEndIcon,
91
+ defaultExpanded = defaultDefaultExpanded,
92
+ defaultExpandIcon,
93
+ defaultParentIcon,
94
+ defaultSelected = defaultDefaultSelected,
95
+ disabledItemsFocusable = false,
96
+ disableSelection = false,
97
+ expanded: expandedProp,
98
+ id: idProp,
99
+ multiSelect = false,
100
+ onBlur,
101
+ onFocus,
102
+ onKeyDown,
103
+ onNodeFocus,
104
+ onNodeSelect,
105
+ onNodeToggle,
106
+ selected: selectedProp
107
+ } = props,
108
+ other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
109
+ const theme = (0, _styles.useTheme)();
110
+ const isRtl = theme.direction === 'rtl';
111
+ const ownerState = (0, _extends2.default)({}, props, {
112
+ defaultExpanded,
113
+ defaultSelected,
114
+ disabledItemsFocusable,
115
+ disableSelection,
116
+ multiSelect
117
+ });
118
+ const classes = useUtilityClasses(ownerState);
119
+ const treeId = (0, _utils.unstable_useId)(idProp);
120
+ const treeRef = React.useRef(null);
121
+ const handleRef = (0, _utils.useForkRef)(treeRef, ref);
122
+ const [focusedNodeId, setFocusedNodeId] = React.useState(null);
123
+ const nodeMap = React.useRef({});
124
+ const firstCharMap = React.useRef({});
125
+ const [expanded, setExpandedState] = (0, _utils.useControlled)({
126
+ controlled: expandedProp,
127
+ default: defaultExpanded,
128
+ name: 'TreeView',
129
+ state: 'expanded'
130
+ });
131
+ const [selected, setSelectedState] = (0, _utils.useControlled)({
132
+ controlled: selectedProp,
133
+ default: defaultSelected,
134
+ name: 'TreeView',
135
+ state: 'selected'
136
+ });
137
+ /*
138
+ * Status Helpers
139
+ */
140
+
141
+ const isExpanded = React.useCallback(id => Array.isArray(expanded) ? expanded.indexOf(id) !== -1 : false, [expanded]);
142
+ const isExpandable = React.useCallback(id => nodeMap.current[id] && nodeMap.current[id].expandable, []);
143
+ const isSelected = React.useCallback(id => Array.isArray(selected) ? selected.indexOf(id) !== -1 : selected === id, [selected]);
144
+ const isDisabled = React.useCallback(id => {
145
+ let node = nodeMap.current[id]; // This can be called before the node has been added to the node map.
146
+
147
+ if (!node) {
148
+ return false;
149
+ }
150
+
151
+ if (node.disabled) {
152
+ return true;
153
+ }
154
+
155
+ while (node.parentId != null) {
156
+ node = nodeMap.current[node.parentId];
157
+
158
+ if (node.disabled) {
159
+ return true;
160
+ }
161
+ }
162
+
163
+ return false;
164
+ }, []);
165
+
166
+ const isFocused = id => focusedNodeId === id;
167
+ /*
168
+ * Child Helpers
169
+ */
170
+ // Using Object.keys -> .map to mimic Object.values we should replace with Object.values() once we stop IE11 support.
171
+
172
+
173
+ const getChildrenIds = id => Object.keys(nodeMap.current).map(key => {
174
+ return nodeMap.current[key];
175
+ }).filter(node => node.parentId === id).sort((a, b) => a.index - b.index).map(child => child.id);
176
+
177
+ const getNavigableChildrenIds = id => {
178
+ let childrenIds = getChildrenIds(id);
179
+
180
+ if (!disabledItemsFocusable) {
181
+ childrenIds = childrenIds.filter(node => !isDisabled(node));
182
+ }
183
+
184
+ return childrenIds;
185
+ };
186
+ /*
187
+ * Node Helpers
188
+ */
189
+
190
+
191
+ const getNextNode = id => {
192
+ // If expanded get first child
193
+ if (isExpanded(id) && getNavigableChildrenIds(id).length > 0) {
194
+ return getNavigableChildrenIds(id)[0];
195
+ }
196
+
197
+ let node = nodeMap.current[id];
198
+
199
+ while (node != null) {
200
+ // Try to get next sibling
201
+ const siblings = getNavigableChildrenIds(node.parentId);
202
+ const nextSibling = siblings[siblings.indexOf(node.id) + 1];
203
+
204
+ if (nextSibling) {
205
+ return nextSibling;
206
+ } // If the sibling does not exist, go up a level to the parent and try again.
207
+
208
+
209
+ node = nodeMap.current[node.parentId];
210
+ }
211
+
212
+ return null;
213
+ };
214
+
215
+ const getPreviousNode = id => {
216
+ const node = nodeMap.current[id];
217
+ const siblings = getNavigableChildrenIds(node.parentId);
218
+ const nodeIndex = siblings.indexOf(id);
219
+
220
+ if (nodeIndex === 0) {
221
+ return node.parentId;
222
+ }
223
+
224
+ let currentNode = siblings[nodeIndex - 1];
225
+
226
+ while (isExpanded(currentNode) && getNavigableChildrenIds(currentNode).length > 0) {
227
+ currentNode = getNavigableChildrenIds(currentNode).pop();
228
+ }
229
+
230
+ return currentNode;
231
+ };
232
+
233
+ const getLastNode = () => {
234
+ let lastNode = getNavigableChildrenIds(null).pop();
235
+
236
+ while (isExpanded(lastNode)) {
237
+ lastNode = getNavigableChildrenIds(lastNode).pop();
238
+ }
239
+
240
+ return lastNode;
241
+ };
242
+
243
+ const getFirstNode = () => getNavigableChildrenIds(null)[0];
244
+
245
+ const getParent = id => nodeMap.current[id].parentId;
246
+ /**
247
+ * This is used to determine the start and end of a selection range so
248
+ * we can get the nodes between the two border nodes.
249
+ *
250
+ * It finds the nodes' common ancestor using
251
+ * a naive implementation of a lowest common ancestor algorithm
252
+ * (https://en.wikipedia.org/wiki/Lowest_common_ancestor).
253
+ * Then compares the ancestor's 2 children that are ancestors of nodeA and NodeB
254
+ * so we can compare their indexes to work out which node comes first in a depth first search.
255
+ * (https://en.wikipedia.org/wiki/Depth-first_search)
256
+ *
257
+ * Another way to put it is which node is shallower in a trémaux tree
258
+ * https://en.wikipedia.org/wiki/Tr%C3%A9maux_tree
259
+ */
260
+
261
+
262
+ const findOrderInTremauxTree = (nodeAId, nodeBId) => {
263
+ if (nodeAId === nodeBId) {
264
+ return [nodeAId, nodeBId];
265
+ }
266
+
267
+ const nodeA = nodeMap.current[nodeAId];
268
+ const nodeB = nodeMap.current[nodeBId];
269
+
270
+ if (nodeA.parentId === nodeB.id || nodeB.parentId === nodeA.id) {
271
+ return nodeB.parentId === nodeA.id ? [nodeA.id, nodeB.id] : [nodeB.id, nodeA.id];
272
+ }
273
+
274
+ const aFamily = [nodeA.id];
275
+ const bFamily = [nodeB.id];
276
+ let aAncestor = nodeA.parentId;
277
+ let bAncestor = nodeB.parentId;
278
+ let aAncestorIsCommon = bFamily.indexOf(aAncestor) !== -1;
279
+ let bAncestorIsCommon = aFamily.indexOf(bAncestor) !== -1;
280
+ let continueA = true;
281
+ let continueB = true;
282
+
283
+ while (!bAncestorIsCommon && !aAncestorIsCommon) {
284
+ if (continueA) {
285
+ aFamily.push(aAncestor);
286
+ aAncestorIsCommon = bFamily.indexOf(aAncestor) !== -1;
287
+ continueA = aAncestor !== null;
288
+
289
+ if (!aAncestorIsCommon && continueA) {
290
+ aAncestor = nodeMap.current[aAncestor].parentId;
291
+ }
292
+ }
293
+
294
+ if (continueB && !aAncestorIsCommon) {
295
+ bFamily.push(bAncestor);
296
+ bAncestorIsCommon = aFamily.indexOf(bAncestor) !== -1;
297
+ continueB = bAncestor !== null;
298
+
299
+ if (!bAncestorIsCommon && continueB) {
300
+ bAncestor = nodeMap.current[bAncestor].parentId;
301
+ }
302
+ }
303
+ }
304
+
305
+ const commonAncestor = aAncestorIsCommon ? aAncestor : bAncestor;
306
+ const ancestorFamily = getChildrenIds(commonAncestor);
307
+ const aSide = aFamily[aFamily.indexOf(commonAncestor) - 1];
308
+ const bSide = bFamily[bFamily.indexOf(commonAncestor) - 1];
309
+ return ancestorFamily.indexOf(aSide) < ancestorFamily.indexOf(bSide) ? [nodeAId, nodeBId] : [nodeBId, nodeAId];
310
+ };
311
+
312
+ const getNodesInRange = (nodeA, nodeB) => {
313
+ const [first, last] = findOrderInTremauxTree(nodeA, nodeB);
314
+ const nodes = [first];
315
+ let current = first;
316
+
317
+ while (current !== last) {
318
+ current = getNextNode(current);
319
+ nodes.push(current);
320
+ }
321
+
322
+ return nodes;
323
+ };
324
+ /*
325
+ * Focus Helpers
326
+ */
327
+
328
+
329
+ const focus = (event, id) => {
330
+ if (id) {
331
+ setFocusedNodeId(id);
332
+
333
+ if (onNodeFocus) {
334
+ onNodeFocus(event, id);
335
+ }
336
+ }
337
+ };
338
+
339
+ const focusNextNode = (event, id) => focus(event, getNextNode(id));
340
+
341
+ const focusPreviousNode = (event, id) => focus(event, getPreviousNode(id));
342
+
343
+ const focusFirstNode = event => focus(event, getFirstNode());
344
+
345
+ const focusLastNode = event => focus(event, getLastNode());
346
+
347
+ const focusByFirstCharacter = (event, id, char) => {
348
+ let start;
349
+ let index;
350
+ const lowercaseChar = char.toLowerCase();
351
+ const firstCharIds = [];
352
+ const firstChars = []; // This really only works since the ids are strings
353
+
354
+ Object.keys(firstCharMap.current).forEach(nodeId => {
355
+ const firstChar = firstCharMap.current[nodeId];
356
+ const map = nodeMap.current[nodeId];
357
+ const visible = map.parentId ? isExpanded(map.parentId) : true;
358
+ const shouldBeSkipped = disabledItemsFocusable ? false : isDisabled(nodeId);
359
+
360
+ if (visible && !shouldBeSkipped) {
361
+ firstCharIds.push(nodeId);
362
+ firstChars.push(firstChar);
363
+ }
364
+ }); // Get start index for search based on position of currentItem
365
+
366
+ start = firstCharIds.indexOf(id) + 1;
367
+
368
+ if (start >= firstCharIds.length) {
369
+ start = 0;
370
+ } // Check remaining slots in the menu
371
+
372
+
373
+ index = findNextFirstChar(firstChars, start, lowercaseChar); // If not found in remaining slots, check from beginning
374
+
375
+ if (index === -1) {
376
+ index = findNextFirstChar(firstChars, 0, lowercaseChar);
377
+ } // If match was found...
378
+
379
+
380
+ if (index > -1) {
381
+ focus(event, firstCharIds[index]);
382
+ }
383
+ };
384
+ /*
385
+ * Expansion Helpers
386
+ */
387
+
388
+
389
+ const toggleExpansion = (event, value = focusedNodeId) => {
390
+ let newExpanded;
391
+
392
+ if (expanded.indexOf(value) !== -1) {
393
+ newExpanded = expanded.filter(id => id !== value);
394
+ } else {
395
+ newExpanded = [value].concat(expanded);
396
+ }
397
+
398
+ if (onNodeToggle) {
399
+ onNodeToggle(event, newExpanded);
400
+ }
401
+
402
+ setExpandedState(newExpanded);
403
+ };
404
+
405
+ const expandAllSiblings = (event, id) => {
406
+ const map = nodeMap.current[id];
407
+ const siblings = getChildrenIds(map.parentId);
408
+ const diff = siblings.filter(child => isExpandable(child) && !isExpanded(child));
409
+ const newExpanded = expanded.concat(diff);
410
+
411
+ if (diff.length > 0) {
412
+ setExpandedState(newExpanded);
413
+
414
+ if (onNodeToggle) {
415
+ onNodeToggle(event, newExpanded);
416
+ }
417
+ }
418
+ };
419
+ /*
420
+ * Selection Helpers
421
+ */
422
+
423
+
424
+ const lastSelectedNode = React.useRef(null);
425
+ const lastSelectionWasRange = React.useRef(false);
426
+ const currentRangeSelection = React.useRef([]);
427
+
428
+ const handleRangeArrowSelect = (event, nodes) => {
429
+ let base = selected.slice();
430
+ const {
431
+ start,
432
+ next,
433
+ current
434
+ } = nodes;
435
+
436
+ if (!next || !current) {
437
+ return;
438
+ }
439
+
440
+ if (currentRangeSelection.current.indexOf(current) === -1) {
441
+ currentRangeSelection.current = [];
442
+ }
443
+
444
+ if (lastSelectionWasRange.current) {
445
+ if (currentRangeSelection.current.indexOf(next) !== -1) {
446
+ base = base.filter(id => id === start || id !== current);
447
+ currentRangeSelection.current = currentRangeSelection.current.filter(id => id === start || id !== current);
448
+ } else {
449
+ base.push(next);
450
+ currentRangeSelection.current.push(next);
451
+ }
452
+ } else {
453
+ base.push(next);
454
+ currentRangeSelection.current.push(current, next);
455
+ }
456
+
457
+ if (onNodeSelect) {
458
+ onNodeSelect(event, base);
459
+ }
460
+
461
+ setSelectedState(base);
462
+ };
463
+
464
+ const handleRangeSelect = (event, nodes) => {
465
+ let base = selected.slice();
466
+ const {
467
+ start,
468
+ end
469
+ } = nodes; // If last selection was a range selection ignore nodes that were selected.
470
+
471
+ if (lastSelectionWasRange.current) {
472
+ base = base.filter(id => currentRangeSelection.current.indexOf(id) === -1);
473
+ }
474
+
475
+ let range = getNodesInRange(start, end);
476
+ range = range.filter(node => !isDisabled(node));
477
+ currentRangeSelection.current = range;
478
+ let newSelected = base.concat(range);
479
+ newSelected = newSelected.filter((id, i) => newSelected.indexOf(id) === i);
480
+
481
+ if (onNodeSelect) {
482
+ onNodeSelect(event, newSelected);
483
+ }
484
+
485
+ setSelectedState(newSelected);
486
+ };
487
+
488
+ const handleMultipleSelect = (event, value) => {
489
+ let newSelected;
490
+
491
+ if (selected.indexOf(value) !== -1) {
492
+ newSelected = selected.filter(id => id !== value);
493
+ } else {
494
+ newSelected = [value].concat(selected);
495
+ }
496
+
497
+ if (onNodeSelect) {
498
+ onNodeSelect(event, newSelected);
499
+ }
500
+
501
+ setSelectedState(newSelected);
502
+ };
503
+
504
+ const handleSingleSelect = (event, value) => {
505
+ const newSelected = multiSelect ? [value] : value;
506
+
507
+ if (onNodeSelect) {
508
+ onNodeSelect(event, newSelected);
509
+ }
510
+
511
+ setSelectedState(newSelected);
512
+ };
513
+
514
+ const selectNode = (event, id, multiple = false) => {
515
+ if (id) {
516
+ if (multiple) {
517
+ handleMultipleSelect(event, id);
518
+ } else {
519
+ handleSingleSelect(event, id);
520
+ }
521
+
522
+ lastSelectedNode.current = id;
523
+ lastSelectionWasRange.current = false;
524
+ currentRangeSelection.current = [];
525
+ return true;
526
+ }
527
+
528
+ return false;
529
+ };
530
+
531
+ const selectRange = (event, nodes, stacked = false) => {
532
+ const {
533
+ start = lastSelectedNode.current,
534
+ end,
535
+ current
536
+ } = nodes;
537
+
538
+ if (stacked) {
539
+ handleRangeArrowSelect(event, {
540
+ start,
541
+ next: end,
542
+ current
543
+ });
544
+ } else if (start != null && end != null) {
545
+ handleRangeSelect(event, {
546
+ start,
547
+ end
548
+ });
549
+ }
550
+
551
+ lastSelectionWasRange.current = true;
552
+ };
553
+
554
+ const rangeSelectToFirst = (event, id) => {
555
+ if (!lastSelectedNode.current) {
556
+ lastSelectedNode.current = id;
557
+ }
558
+
559
+ const start = lastSelectionWasRange.current ? lastSelectedNode.current : id;
560
+ selectRange(event, {
561
+ start,
562
+ end: getFirstNode()
563
+ });
564
+ };
565
+
566
+ const rangeSelectToLast = (event, id) => {
567
+ if (!lastSelectedNode.current) {
568
+ lastSelectedNode.current = id;
569
+ }
570
+
571
+ const start = lastSelectionWasRange.current ? lastSelectedNode.current : id;
572
+ selectRange(event, {
573
+ start,
574
+ end: getLastNode()
575
+ });
576
+ };
577
+
578
+ const selectNextNode = (event, id) => {
579
+ if (!isDisabled(getNextNode(id))) {
580
+ selectRange(event, {
581
+ end: getNextNode(id),
582
+ current: id
583
+ }, true);
584
+ }
585
+ };
586
+
587
+ const selectPreviousNode = (event, id) => {
588
+ if (!isDisabled(getPreviousNode(id))) {
589
+ selectRange(event, {
590
+ end: getPreviousNode(id),
591
+ current: id
592
+ }, true);
593
+ }
594
+ };
595
+
596
+ const selectAllNodes = event => {
597
+ selectRange(event, {
598
+ start: getFirstNode(),
599
+ end: getLastNode()
600
+ });
601
+ };
602
+ /*
603
+ * Mapping Helpers
604
+ */
605
+
606
+
607
+ const registerNode = React.useCallback(node => {
608
+ const {
609
+ id,
610
+ index,
611
+ parentId,
612
+ expandable,
613
+ idAttribute,
614
+ disabled
615
+ } = node;
616
+ nodeMap.current[id] = {
617
+ id,
618
+ index,
619
+ parentId,
620
+ expandable,
621
+ idAttribute,
622
+ disabled
623
+ };
624
+ }, []);
625
+ const unregisterNode = React.useCallback(id => {
626
+ const newMap = (0, _extends2.default)({}, nodeMap.current);
627
+ delete newMap[id];
628
+ nodeMap.current = newMap;
629
+ setFocusedNodeId(oldFocusedNodeId => {
630
+ if (oldFocusedNodeId === id && treeRef.current === (0, _utils.ownerDocument)(treeRef.current).activeElement) {
631
+ return getChildrenIds(null)[0];
632
+ }
633
+
634
+ return oldFocusedNodeId;
635
+ });
636
+ }, []);
637
+ const mapFirstChar = React.useCallback((id, firstChar) => {
638
+ firstCharMap.current[id] = firstChar;
639
+ }, []);
640
+ const unMapFirstChar = React.useCallback(id => {
641
+ const newMap = (0, _extends2.default)({}, firstCharMap.current);
642
+ delete newMap[id];
643
+ firstCharMap.current = newMap;
644
+ }, []);
645
+ /**
646
+ * Event handlers and Navigation
647
+ */
648
+
649
+ const handleNextArrow = event => {
650
+ if (isExpandable(focusedNodeId)) {
651
+ if (isExpanded(focusedNodeId)) {
652
+ focusNextNode(event, focusedNodeId);
653
+ } else if (!isDisabled(focusedNodeId)) {
654
+ toggleExpansion(event);
655
+ }
656
+ }
657
+
658
+ return true;
659
+ };
660
+
661
+ const handlePreviousArrow = event => {
662
+ if (isExpanded(focusedNodeId) && !isDisabled(focusedNodeId)) {
663
+ toggleExpansion(event, focusedNodeId);
664
+ return true;
665
+ }
666
+
667
+ const parent = getParent(focusedNodeId);
668
+
669
+ if (parent) {
670
+ focus(event, parent);
671
+ return true;
672
+ }
673
+
674
+ return false;
675
+ };
676
+
677
+ const handleKeyDown = event => {
678
+ let flag = false;
679
+ const key = event.key; // If the tree is empty there will be no focused node
680
+
681
+ if (event.altKey || event.currentTarget !== event.target || !focusedNodeId) {
682
+ return;
683
+ }
684
+
685
+ const ctrlPressed = event.ctrlKey || event.metaKey;
686
+
687
+ switch (key) {
688
+ case ' ':
689
+ if (!disableSelection && !isDisabled(focusedNodeId)) {
690
+ if (multiSelect && event.shiftKey) {
691
+ selectRange(event, {
692
+ end: focusedNodeId
693
+ });
694
+ flag = true;
695
+ } else if (multiSelect) {
696
+ flag = selectNode(event, focusedNodeId, true);
697
+ } else {
698
+ flag = selectNode(event, focusedNodeId);
699
+ }
700
+ }
701
+
702
+ event.stopPropagation();
703
+ break;
704
+
705
+ case 'Enter':
706
+ if (!isDisabled(focusedNodeId)) {
707
+ if (isExpandable(focusedNodeId)) {
708
+ toggleExpansion(event);
709
+ flag = true;
710
+ } else if (multiSelect) {
711
+ flag = selectNode(event, focusedNodeId, true);
712
+ } else {
713
+ flag = selectNode(event, focusedNodeId);
714
+ }
715
+ }
716
+
717
+ event.stopPropagation();
718
+ break;
719
+
720
+ case 'ArrowDown':
721
+ if (multiSelect && event.shiftKey && !disableSelection) {
722
+ selectNextNode(event, focusedNodeId);
723
+ }
724
+
725
+ focusNextNode(event, focusedNodeId);
726
+ flag = true;
727
+ break;
728
+
729
+ case 'ArrowUp':
730
+ if (multiSelect && event.shiftKey && !disableSelection) {
731
+ selectPreviousNode(event, focusedNodeId);
732
+ }
733
+
734
+ focusPreviousNode(event, focusedNodeId);
735
+ flag = true;
736
+ break;
737
+
738
+ case 'ArrowRight':
739
+ if (isRtl) {
740
+ flag = handlePreviousArrow(event);
741
+ } else {
742
+ flag = handleNextArrow(event);
743
+ }
744
+
745
+ break;
746
+
747
+ case 'ArrowLeft':
748
+ if (isRtl) {
749
+ flag = handleNextArrow(event);
750
+ } else {
751
+ flag = handlePreviousArrow(event);
752
+ }
753
+
754
+ break;
755
+
756
+ case 'Home':
757
+ if (multiSelect && ctrlPressed && event.shiftKey && !disableSelection && !isDisabled(focusedNodeId)) {
758
+ rangeSelectToFirst(event, focusedNodeId);
759
+ }
760
+
761
+ focusFirstNode(event);
762
+ flag = true;
763
+ break;
764
+
765
+ case 'End':
766
+ if (multiSelect && ctrlPressed && event.shiftKey && !disableSelection && !isDisabled(focusedNodeId)) {
767
+ rangeSelectToLast(event, focusedNodeId);
768
+ }
769
+
770
+ focusLastNode(event);
771
+ flag = true;
772
+ break;
773
+
774
+ default:
775
+ if (key === '*') {
776
+ expandAllSiblings(event, focusedNodeId);
777
+ flag = true;
778
+ } else if (multiSelect && ctrlPressed && key.toLowerCase() === 'a' && !disableSelection) {
779
+ selectAllNodes(event);
780
+ flag = true;
781
+ } else if (!ctrlPressed && !event.shiftKey && isPrintableCharacter(key)) {
782
+ focusByFirstCharacter(event, focusedNodeId, key);
783
+ flag = true;
784
+ }
785
+
786
+ }
787
+
788
+ if (flag) {
789
+ event.preventDefault();
790
+ event.stopPropagation();
791
+ }
792
+
793
+ if (onKeyDown) {
794
+ onKeyDown(event);
795
+ }
796
+ };
797
+
798
+ const handleFocus = event => {
799
+ // if the event bubbled (which is React specific) we don't want to steal focus
800
+ if (event.target === event.currentTarget) {
801
+ const firstSelected = Array.isArray(selected) ? selected[0] : selected;
802
+ focus(event, firstSelected || getNavigableChildrenIds(null)[0]);
803
+ }
804
+
805
+ if (onFocus) {
806
+ onFocus(event);
807
+ }
808
+ };
809
+
810
+ const handleBlur = event => {
811
+ setFocusedNodeId(null);
812
+
813
+ if (onBlur) {
814
+ onBlur(event);
815
+ }
816
+ };
817
+
818
+ const activeDescendant = nodeMap.current[focusedNodeId] ? nodeMap.current[focusedNodeId].idAttribute : null;
819
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_TreeViewContext.default.Provider, {
820
+ value: {
821
+ icons: {
822
+ defaultCollapseIcon,
823
+ defaultExpandIcon,
824
+ defaultParentIcon,
825
+ defaultEndIcon
826
+ },
827
+ focus,
828
+ toggleExpansion,
829
+ isExpanded,
830
+ isExpandable,
831
+ isFocused,
832
+ isSelected,
833
+ isDisabled,
834
+ selectNode: disableSelection ? noopSelection : selectNode,
835
+ selectRange: disableSelection ? noopSelection : selectRange,
836
+ multiSelect,
837
+ disabledItemsFocusable,
838
+ mapFirstChar,
839
+ unMapFirstChar,
840
+ registerNode,
841
+ unregisterNode,
842
+ treeId
843
+ },
844
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_descendants.DescendantProvider, {
845
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(TreeViewRoot, (0, _extends2.default)({
846
+ role: "tree",
847
+ id: treeId,
848
+ "aria-activedescendant": activeDescendant,
849
+ "aria-multiselectable": multiSelect,
850
+ className: (0, _clsx.default)(classes.root, className),
851
+ ref: handleRef,
852
+ tabIndex: 0,
853
+ onKeyDown: handleKeyDown,
854
+ onFocus: handleFocus,
855
+ onBlur: handleBlur,
856
+ ownerState: ownerState
857
+ }, other, {
858
+ children: children
859
+ }))
860
+ })
861
+ });
862
+ });
863
+ process.env.NODE_ENV !== "production" ? TreeView.propTypes
864
+ /* remove-proptypes */
865
+ = {
866
+ // ----------------------------- Warning --------------------------------
867
+ // | These PropTypes are generated from the TypeScript type definitions |
868
+ // | To update them edit the d.ts file and run "yarn proptypes" |
869
+ // ----------------------------------------------------------------------
870
+
871
+ /**
872
+ * The content of the component.
873
+ */
874
+ children: _propTypes.default.node,
875
+
876
+ /**
877
+ * Override or extend the styles applied to the component.
878
+ */
879
+ classes: _propTypes.default.object,
880
+
881
+ /**
882
+ * @ignore
883
+ */
884
+ className: _propTypes.default.string,
885
+
886
+ /**
887
+ * The default icon used to collapse the node.
888
+ */
889
+ defaultCollapseIcon: _propTypes.default.node,
890
+
891
+ /**
892
+ * The default icon displayed next to a end node. This is applied to all
893
+ * tree nodes and can be overridden by the TreeItem `icon` prop.
894
+ */
895
+ defaultEndIcon: _propTypes.default.node,
896
+
897
+ /**
898
+ * Expanded node ids. (Uncontrolled)
899
+ * @default []
900
+ */
901
+ defaultExpanded: _propTypes.default.arrayOf(_propTypes.default.string),
902
+
903
+ /**
904
+ * The default icon used to expand the node.
905
+ */
906
+ defaultExpandIcon: _propTypes.default.node,
907
+
908
+ /**
909
+ * The default icon displayed next to a parent node. This is applied to all
910
+ * parent nodes and can be overridden by the TreeItem `icon` prop.
911
+ */
912
+ defaultParentIcon: _propTypes.default.node,
913
+
914
+ /**
915
+ * Selected node ids. (Uncontrolled)
916
+ * When `multiSelect` is true this takes an array of strings; when false (default) a string.
917
+ * @default []
918
+ */
919
+ defaultSelected: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.string), _propTypes.default.string]),
920
+
921
+ /**
922
+ * If `true`, will allow focus on disabled items.
923
+ * @default false
924
+ */
925
+ disabledItemsFocusable: _propTypes.default.bool,
926
+
927
+ /**
928
+ * If `true` selection is disabled.
929
+ * @default false
930
+ */
931
+ disableSelection: _propTypes.default.bool,
932
+
933
+ /**
934
+ * Expanded node ids. (Controlled)
935
+ */
936
+ expanded: _propTypes.default.arrayOf(_propTypes.default.string),
937
+
938
+ /**
939
+ * This prop is used to help implement the accessibility logic.
940
+ * If you don't provide this prop. It falls back to a randomly generated id.
941
+ */
942
+ id: _propTypes.default.string,
943
+
944
+ /**
945
+ * If true `ctrl` and `shift` will trigger multiselect.
946
+ * @default false
947
+ */
948
+ multiSelect: _propTypes.default.bool,
949
+
950
+ /**
951
+ * @ignore
952
+ */
953
+ onBlur: _propTypes.default.func,
954
+
955
+ /**
956
+ * @ignore
957
+ */
958
+ onFocus: _propTypes.default.func,
959
+
960
+ /**
961
+ * @ignore
962
+ */
963
+ onKeyDown: _propTypes.default.func,
964
+
965
+ /**
966
+ * Callback fired when tree items are focused.
967
+ *
968
+ * @param {React.SyntheticEvent} event The event source of the callback **Warning**: This is a generic event not a focus event.
969
+ * @param {string} value of the focused node.
970
+ */
971
+ onNodeFocus: _propTypes.default.func,
972
+
973
+ /**
974
+ * Callback fired when tree items are selected/unselected.
975
+ *
976
+ * @param {React.SyntheticEvent} event The event source of the callback
977
+ * @param {string[] | string} nodeIds Ids of the selected nodes. When `multiSelect` is true
978
+ * this is an array of strings; when false (default) a string.
979
+ */
980
+ onNodeSelect: _propTypes.default.func,
981
+
982
+ /**
983
+ * Callback fired when tree items are expanded/collapsed.
984
+ *
985
+ * @param {React.SyntheticEvent} event The event source of the callback.
986
+ * @param {array} nodeIds The ids of the expanded nodes.
987
+ */
988
+ onNodeToggle: _propTypes.default.func,
989
+
990
+ /**
991
+ * Selected node ids. (Controlled)
992
+ * When `multiSelect` is true this takes an array of strings; when false (default) a string.
993
+ */
994
+ selected: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.string), _propTypes.default.string]),
995
+
996
+ /**
997
+ * The system prop that allows defining system overrides as well as additional CSS styles.
998
+ */
999
+ sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object])
1000
+ } : void 0;
1001
+ var _default = TreeView;
1002
+ exports.default = _default;