@mezzanine-ui/react 0.15.3 → 1.0.0-alpha.0

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 (490) hide show
  1. package/Accordion/Accordion.js +1 -2
  2. package/Accordion/AccordionControlContext.js +1 -0
  3. package/Accordion/AccordionDetails.js +2 -2
  4. package/Accordion/AccordionSummary.d.ts +1 -1
  5. package/Accordion/AccordionSummary.js +11 -12
  6. package/Accordion/index.d.ts +6 -3
  7. package/Alert/Alert.js +1 -2
  8. package/Alert/index.d.ts +3 -2
  9. package/AlertBanner/AlertBanner.d.ts +93 -0
  10. package/AlertBanner/AlertBanner.js +154 -0
  11. package/AlertBanner/index.d.ts +2 -0
  12. package/AlertBanner/index.js +1 -0
  13. package/Anchor/Anchor.js +2 -3
  14. package/Anchor/index.d.ts +2 -1
  15. package/AppBar/AppBar.js +1 -2
  16. package/AppBar/AppBarBrand.js +1 -2
  17. package/AppBar/AppBarMain.js +1 -2
  18. package/AppBar/AppBarSupport.js +1 -2
  19. package/AppBar/index.d.ts +8 -4
  20. package/{Overlay/Overlay.d.ts → Backdrop/Backdrop.d.ts} +12 -16
  21. package/Backdrop/Backdrop.js +40 -0
  22. package/Backdrop/index.d.ts +2 -0
  23. package/Backdrop/index.js +1 -0
  24. package/Badge/Badge.d.ts +20 -14
  25. package/Badge/Badge.js +15 -18
  26. package/Badge/BadgeContainer.d.ts +1 -1
  27. package/Badge/BadgeContainer.js +2 -3
  28. package/Badge/index.d.ts +3 -2
  29. package/Badge/typings.d.ts +48 -0
  30. package/Breadcrumb/Breadcrumb.d.ts +6 -0
  31. package/Breadcrumb/Breadcrumb.js +25 -0
  32. package/Breadcrumb/BreadcrumbItem.d.ts +4 -0
  33. package/Breadcrumb/BreadcrumbItem.js +45 -0
  34. package/Breadcrumb/index.d.ts +2 -0
  35. package/Breadcrumb/index.js +1 -0
  36. package/Breadcrumb/typings.d.ts +70 -0
  37. package/Button/Button.js +24 -19
  38. package/Button/ButtonGroup.d.ts +6 -28
  39. package/Button/ButtonGroup.js +8 -18
  40. package/Button/index.d.ts +6 -12
  41. package/Button/index.js +2 -3
  42. package/Button/typings.d.ts +11 -26
  43. package/Calendar/Calendar.d.ts +31 -2
  44. package/Calendar/Calendar.js +75 -21
  45. package/Calendar/CalendarCell.d.ts +4 -0
  46. package/Calendar/CalendarCell.js +3 -3
  47. package/Calendar/CalendarConfigProviderDayjs.d.ts +21 -0
  48. package/Calendar/CalendarConfigProviderDayjs.js +15 -0
  49. package/Calendar/CalendarConfigProviderLuxon.d.ts +21 -0
  50. package/Calendar/CalendarConfigProviderLuxon.js +15 -0
  51. package/Calendar/CalendarConfigProviderMoment.d.ts +21 -0
  52. package/Calendar/CalendarConfigProviderMoment.js +15 -0
  53. package/Calendar/CalendarContext.d.ts +14 -7
  54. package/Calendar/CalendarContext.js +8 -13
  55. package/Calendar/CalendarControls.d.ts +16 -0
  56. package/Calendar/CalendarControls.js +3 -7
  57. package/Calendar/CalendarDayOfWeek.js +4 -3
  58. package/Calendar/CalendarDays.d.ts +9 -1
  59. package/Calendar/CalendarDays.js +63 -38
  60. package/Calendar/CalendarFooterActions.d.ts +13 -0
  61. package/Calendar/CalendarFooterActions.js +14 -0
  62. package/Calendar/CalendarFooterControl.d.ts +16 -0
  63. package/Calendar/CalendarFooterControl.js +14 -0
  64. package/Calendar/CalendarHalfYears.d.ts +39 -0
  65. package/Calendar/CalendarHalfYears.js +62 -0
  66. package/Calendar/CalendarMonths.js +17 -5
  67. package/Calendar/CalendarQuarters.d.ts +37 -0
  68. package/Calendar/CalendarQuarters.js +64 -0
  69. package/Calendar/CalendarQuickSelect.d.ts +21 -0
  70. package/Calendar/CalendarQuickSelect.js +15 -0
  71. package/Calendar/CalendarWeeks.d.ts +1 -1
  72. package/Calendar/CalendarWeeks.js +89 -44
  73. package/Calendar/CalendarYears.js +14 -4
  74. package/Calendar/RangeCalendar.d.ts +59 -0
  75. package/Calendar/RangeCalendar.js +232 -0
  76. package/Calendar/index.d.ts +33 -10
  77. package/Calendar/index.js +7 -0
  78. package/Calendar/useCalendarControlModifiers.d.ts +4 -4
  79. package/Calendar/useCalendarControlModifiers.js +40 -8
  80. package/Calendar/useCalendarControls.d.ts +2 -0
  81. package/Calendar/useCalendarControls.js +19 -2
  82. package/Calendar/useCalendarModeStack.js +1 -0
  83. package/Calendar/useRangeCalendarControls.d.ts +18 -0
  84. package/Calendar/useRangeCalendarControls.js +115 -0
  85. package/Card/Card.js +1 -2
  86. package/Card/CardActions.js +2 -3
  87. package/Card/index.d.ts +4 -2
  88. package/Checkbox/CheckAll.d.ts +16 -6
  89. package/Checkbox/CheckAll.js +41 -28
  90. package/Checkbox/Checkbox.d.ts +100 -22
  91. package/Checkbox/Checkbox.js +74 -18
  92. package/Checkbox/CheckboxGroup.d.ts +100 -18
  93. package/Checkbox/CheckboxGroup.js +169 -25
  94. package/Checkbox/CheckboxGroupContext.d.ts +0 -2
  95. package/Checkbox/CheckboxGroupContext.js +1 -0
  96. package/Checkbox/index.d.ts +16 -4
  97. package/Checkbox/index.js +6 -2
  98. package/Checkbox/typings.d.ts +37 -0
  99. package/ClearActions/ClearActions.d.ts +41 -0
  100. package/ClearActions/ClearActions.js +23 -0
  101. package/ClearActions/index.d.ts +3 -0
  102. package/ClearActions/index.js +5 -0
  103. package/ConfirmActions/ConfirmActions.d.ts +2 -1
  104. package/ConfirmActions/ConfirmActions.js +1 -2
  105. package/ConfirmActions/index.d.ts +2 -1
  106. package/DatePicker/DatePicker.d.ts +12 -1
  107. package/DatePicker/DatePicker.js +42 -11
  108. package/DatePicker/DatePickerCalendar.d.ts +3 -6
  109. package/DatePicker/DatePickerCalendar.js +38 -39
  110. package/DatePicker/index.d.ts +4 -2
  111. package/DateRangePicker/DateRangePicker.d.ts +18 -2
  112. package/DateRangePicker/DateRangePicker.js +144 -102
  113. package/DateRangePicker/DateRangePickerCalendar.d.ts +13 -9
  114. package/DateRangePicker/DateRangePickerCalendar.js +8 -96
  115. package/DateRangePicker/index.d.ts +6 -3
  116. package/DateRangePicker/useDateRangeCalendarControls.js +11 -6
  117. package/DateRangePicker/useDateRangePickerValue.d.ts +38 -15
  118. package/DateRangePicker/useDateRangePickerValue.js +142 -63
  119. package/DateTimePicker/DateTimePicker.d.ts +31 -10
  120. package/DateTimePicker/DateTimePicker.js +180 -96
  121. package/DateTimePicker/index.d.ts +2 -2
  122. package/DateTimePicker/index.js +0 -1
  123. package/Drawer/Drawer.js +3 -4
  124. package/Drawer/index.d.ts +2 -1
  125. package/Dropdown/Dropdown.js +13 -24
  126. package/Dropdown/index.d.ts +2 -1
  127. package/Empty/Empty.d.ts +1 -16
  128. package/Empty/Empty.js +37 -9
  129. package/Empty/icons/EmptyMainInitialDataIcon.d.ts +4 -0
  130. package/Empty/icons/EmptyMainInitialDataIcon.js +9 -0
  131. package/Empty/icons/EmptyMainResultIcon.d.ts +4 -0
  132. package/Empty/icons/EmptyMainResultIcon.js +9 -0
  133. package/Empty/icons/EmptyMainSystemIcon.d.ts +4 -0
  134. package/Empty/icons/EmptyMainSystemIcon.js +9 -0
  135. package/Empty/index.d.ts +2 -1
  136. package/Empty/typings.d.ts +52 -0
  137. package/Form/FormControlContext.js +1 -0
  138. package/Form/FormField.js +1 -2
  139. package/Form/FormHintText.d.ts +18 -0
  140. package/Form/FormHintText.js +17 -0
  141. package/Form/FormLabel.js +2 -2
  142. package/Form/index.d.ts +9 -5
  143. package/Form/index.js +1 -1
  144. package/Form/useAutoCompleteValueControl.js +2 -0
  145. package/Form/useCheckboxControlValue.js +0 -1
  146. package/Form/useInputWithClearControlValue.d.ts +1 -1
  147. package/Form/useInputWithTagsModeValue.d.ts +1 -1
  148. package/Form/useSelectValueControl.js +2 -0
  149. package/Icon/Icon.js +1 -2
  150. package/InlineMessage/InlineMessage.d.ts +33 -0
  151. package/InlineMessage/InlineMessage.js +42 -0
  152. package/InlineMessage/InlineMessageGroup.d.ts +24 -0
  153. package/InlineMessage/InlineMessageGroup.js +21 -0
  154. package/InlineMessage/index.d.ts +4 -0
  155. package/InlineMessage/index.js +2 -0
  156. package/Input/ActionButton/ActionButton.d.ts +26 -0
  157. package/Input/ActionButton/ActionButton.js +14 -0
  158. package/Input/ActionButton/index.d.ts +2 -0
  159. package/Input/ActionButton/index.js +1 -0
  160. package/Input/Input.d.ts +147 -42
  161. package/Input/Input.js +196 -31
  162. package/Input/PasswordStrengthIndicator/PasswordStrengthIndicator.d.ts +31 -0
  163. package/Input/PasswordStrengthIndicator/PasswordStrengthIndicator.js +18 -0
  164. package/Input/PasswordStrengthIndicator/index.d.ts +2 -0
  165. package/Input/PasswordStrengthIndicator/index.js +1 -0
  166. package/Input/SelectButton/SelectButton.d.ts +20 -0
  167. package/Input/SelectButton/SelectButton.js +21 -0
  168. package/Input/SelectButton/index.d.ts +2 -0
  169. package/Input/SelectButton/index.js +1 -0
  170. package/Input/SpinnerButton/SpinnerButton.d.ts +19 -0
  171. package/Input/SpinnerButton/SpinnerButton.js +14 -0
  172. package/Input/SpinnerButton/index.d.ts +2 -0
  173. package/Input/SpinnerButton/index.js +1 -0
  174. package/Input/index.d.ts +3 -2
  175. package/Menu/Menu.js +2 -2
  176. package/Menu/MenuDivider.js +1 -2
  177. package/Menu/MenuItem.js +1 -2
  178. package/Menu/MenuItemGroup.js +1 -2
  179. package/Menu/index.d.ts +8 -4
  180. package/Message/Message.d.ts +6 -4
  181. package/Message/Message.js +87 -11
  182. package/Message/MessageTimerController.d.ts +14 -0
  183. package/Message/MessageTimerController.js +27 -0
  184. package/Message/index.d.ts +3 -2
  185. package/Modal/Modal.js +3 -4
  186. package/Modal/ModalActions.js +2 -2
  187. package/Modal/ModalBody.js +1 -2
  188. package/Modal/ModalControl.js +1 -0
  189. package/Modal/ModalFooter.js +1 -2
  190. package/Modal/ModalHeader.js +3 -3
  191. package/Modal/index.d.ts +10 -5
  192. package/Modal/useModalContainer.d.ts +1 -1
  193. package/Modal/useModalContainer.js +2 -4
  194. package/Navigation/Navigation.js +38 -36
  195. package/Navigation/NavigationContext.js +1 -0
  196. package/Navigation/NavigationItem.js +2 -2
  197. package/Navigation/NavigationSubMenu.js +17 -28
  198. package/Navigation/index.d.ts +8 -4
  199. package/Notification/Notification.js +1 -3
  200. package/Notification/index.d.ts +3 -2
  201. package/Notifier/NotifierManager.d.ts +16 -3
  202. package/Notifier/NotifierManager.js +60 -18
  203. package/Notifier/createNotifier.d.ts +9 -0
  204. package/Notifier/createNotifier.js +3 -2
  205. package/Notifier/typings.d.ts +3 -1
  206. package/OverflowTooltip/OverflowCounterTag.d.ts +12 -0
  207. package/OverflowTooltip/OverflowCounterTag.js +48 -0
  208. package/OverflowTooltip/OverflowTooltip.d.ts +34 -0
  209. package/OverflowTooltip/OverflowTooltip.js +53 -0
  210. package/OverflowTooltip/index.d.ts +2 -0
  211. package/OverflowTooltip/index.js +2 -0
  212. package/PageFooter/PageFooter.d.ts +73 -8
  213. package/PageFooter/PageFooter.js +35 -5
  214. package/PageFooter/index.d.ts +2 -1
  215. package/PageHeader/PageHeader.d.ts +36 -0
  216. package/PageHeader/PageHeader.js +65 -0
  217. package/PageHeader/index.d.ts +2 -0
  218. package/PageHeader/index.js +1 -0
  219. package/PageToolbar/PageToolbar.d.ts +67 -0
  220. package/PageToolbar/PageToolbar.js +114 -0
  221. package/PageToolbar/index.d.ts +2 -0
  222. package/PageToolbar/index.js +1 -0
  223. package/Pagination/Pagination.d.ts +23 -29
  224. package/Pagination/Pagination.js +4 -6
  225. package/Pagination/PaginationItem.d.ts +1 -1
  226. package/Pagination/PaginationItem.js +7 -5
  227. package/Pagination/PaginationJumper.d.ts +7 -9
  228. package/Pagination/PaginationJumper.js +4 -7
  229. package/Pagination/PaginationPageSize.d.ts +8 -11
  230. package/Pagination/PaginationPageSize.js +6 -6
  231. package/Pagination/index.d.ts +8 -4
  232. package/Pagination/usePagination.d.ts +3 -1
  233. package/Pagination/usePagination.js +30 -21
  234. package/Picker/FormattedInput.d.ts +17 -0
  235. package/Picker/FormattedInput.js +74 -0
  236. package/Picker/MaskFormat.d.ts +39 -0
  237. package/Picker/MaskFormat.js +94 -0
  238. package/Picker/PickerTrigger.d.ts +14 -4
  239. package/Picker/PickerTrigger.js +18 -4
  240. package/Picker/PickerTriggerWithSeparator.d.ts +124 -0
  241. package/Picker/PickerTriggerWithSeparator.js +80 -0
  242. package/Picker/RangePickerTrigger.d.ts +57 -6
  243. package/Picker/RangePickerTrigger.js +66 -9
  244. package/Picker/formatUtils.d.ts +34 -0
  245. package/Picker/formatUtils.js +124 -0
  246. package/Picker/index.d.ts +17 -6
  247. package/Picker/index.js +4 -1
  248. package/Picker/useDateInputFormatter.d.ts +52 -0
  249. package/Picker/useDateInputFormatter.js +382 -0
  250. package/Picker/usePickerDocumentEventClose.d.ts +3 -3
  251. package/Picker/usePickerValue.d.ts +2 -3
  252. package/Picker/usePickerValue.js +8 -13
  253. package/Picker/useTabKeyClose.d.ts +1 -1
  254. package/Popconfirm/Popconfirm.js +3 -4
  255. package/Popconfirm/index.d.ts +2 -1
  256. package/Popover/Popover.js +5 -10
  257. package/Popover/index.d.ts +2 -1
  258. package/Popper/Popper.d.ts +15 -10
  259. package/Popper/Popper.js +89 -19
  260. package/Popper/index.d.ts +2 -1
  261. package/Portal/Portal.d.ts +13 -5
  262. package/Portal/Portal.js +26 -12
  263. package/Portal/index.d.ts +4 -1
  264. package/Portal/index.js +1 -0
  265. package/Portal/portalRegistry.d.ts +17 -0
  266. package/Portal/portalRegistry.js +92 -0
  267. package/Progress/Progress.d.ts +23 -30
  268. package/Progress/Progress.js +72 -23
  269. package/Progress/index.d.ts +3 -2
  270. package/Provider/ConfigProvider.d.ts +2 -1
  271. package/Provider/ConfigProvider.js +1 -0
  272. package/Provider/context.js +1 -0
  273. package/Radio/Radio.d.ts +1 -1
  274. package/Radio/Radio.js +3 -3
  275. package/Radio/RadioGroup.d.ts +1 -1
  276. package/Radio/RadioGroup.js +2 -3
  277. package/Radio/RadioGroupContext.js +1 -0
  278. package/Radio/index.d.ts +4 -2
  279. package/ResultState/ResultState.d.ts +52 -0
  280. package/ResultState/ResultState.js +24 -0
  281. package/ResultState/index.d.ts +2 -0
  282. package/ResultState/index.js +1 -0
  283. package/Select/AutoComplete.d.ts +3 -3
  284. package/Select/AutoComplete.js +6 -13
  285. package/Select/Option.js +2 -2
  286. package/Select/Select.d.ts +1 -1
  287. package/Select/Select.js +3 -3
  288. package/Select/SelectControlContext.js +1 -0
  289. package/Select/SelectTrigger.d.ts +1 -87
  290. package/Select/SelectTrigger.js +27 -23
  291. package/Select/SelectTriggerTags.d.ts +1 -1
  292. package/Select/SelectTriggerTags.js +48 -20
  293. package/Select/TreeSelect.d.ts +1 -1
  294. package/Select/TreeSelect.js +3 -3
  295. package/Select/index.d.ts +14 -7
  296. package/Select/typings.d.ts +99 -0
  297. package/Select/useSelectTriggerTags.d.ts +15 -8
  298. package/Select/useSelectTriggerTags.js +79 -43
  299. package/Selection/Selection.d.ts +98 -0
  300. package/Selection/Selection.js +46 -0
  301. package/Selection/index.d.ts +12 -0
  302. package/Selection/index.js +5 -0
  303. package/Skeleton/Skeleton.d.ts +10 -3
  304. package/Skeleton/Skeleton.js +13 -6
  305. package/Skeleton/index.d.ts +2 -1
  306. package/Slider/Slider.d.ts +44 -7
  307. package/Slider/Slider.js +18 -15
  308. package/Slider/index.d.ts +5 -3
  309. package/Slider/useSlider.d.ts +1 -1
  310. package/Slider/useSlider.js +1 -1
  311. package/Spin/Spin.d.ts +39 -0
  312. package/{Loading/Loading.js → Spin/Spin.js} +9 -10
  313. package/Spin/index.d.ts +2 -0
  314. package/Spin/index.js +1 -0
  315. package/Stepper/Step.d.ts +1 -35
  316. package/Stepper/Step.js +44 -10
  317. package/Stepper/Stepper.d.ts +1 -14
  318. package/Stepper/Stepper.js +50 -17
  319. package/Stepper/index.d.ts +5 -2
  320. package/Stepper/index.js +1 -0
  321. package/Stepper/typings.d.ts +77 -0
  322. package/Stepper/useStepDistance.d.ts +10 -0
  323. package/Stepper/useStepDistance.js +81 -0
  324. package/Stepper/useStepper.d.ts +21 -0
  325. package/Stepper/useStepper.js +26 -0
  326. package/Table/Table.d.ts +1 -1
  327. package/Table/Table.js +3 -4
  328. package/Table/TableBody.js +3 -2
  329. package/Table/TableBodyRow.js +1 -0
  330. package/Table/TableCell.js +1 -2
  331. package/Table/TableContext.js +1 -0
  332. package/Table/TableExpandedTable.js +1 -0
  333. package/Table/TableHeader.js +1 -0
  334. package/Table/draggable/useTableDraggable.d.ts +1 -1
  335. package/Table/editable/TableEditRenderWrapper.js +1 -0
  336. package/Table/expandable/TableExpandable.js +1 -1
  337. package/Table/index.d.ts +7 -4
  338. package/Table/pagination/TablePagination.d.ts +1 -1
  339. package/Table/pagination/TablePagination.js +1 -0
  340. package/Table/pagination/useTablePagination.d.ts +1 -1
  341. package/Table/pagination/useTablePagination.js +1 -0
  342. package/Table/refresh/TableRefresh.js +4 -3
  343. package/Table/rowSelection/TableRowSelection.js +3 -2
  344. package/Table/sorting/TableSortingIcon.js +2 -1
  345. package/Table/sorting/useTableSorting.js +1 -0
  346. package/Table/useTableFetchMore.js +1 -1
  347. package/Table/useTableScroll.d.ts +44 -14
  348. package/Table/useTableScroll.js +10 -8
  349. package/Tabs/Tab.js +1 -2
  350. package/Tabs/TabPane.js +2 -2
  351. package/Tabs/Tabs.js +10 -6
  352. package/Tabs/index.d.ts +6 -3
  353. package/Tabs/useTabsOverflow.d.ts +1 -1
  354. package/Tabs/useTabsOverflow.js +4 -3
  355. package/Tag/Tag.d.ts +2 -25
  356. package/Tag/Tag.js +24 -15
  357. package/Tag/TagGroup.d.ts +12 -0
  358. package/Tag/TagGroup.js +41 -0
  359. package/Tag/index.d.ts +2 -1
  360. package/Tag/typings.d.ts +78 -0
  361. package/TextField/TextField.d.ts +78 -20
  362. package/TextField/TextField.js +59 -24
  363. package/TextField/index.d.ts +2 -1
  364. package/Textarea/Textarea.d.ts +19 -51
  365. package/Textarea/Textarea.js +14 -21
  366. package/Textarea/index.d.ts +2 -2
  367. package/TimePanel/TimePanel.d.ts +1 -22
  368. package/TimePanel/TimePanel.js +32 -28
  369. package/TimePanel/TimePanelAction.d.ts +2 -8
  370. package/TimePanel/TimePanelAction.js +3 -4
  371. package/TimePanel/TimePanelColumn.d.ts +0 -13
  372. package/TimePanel/TimePanelColumn.js +10 -13
  373. package/TimePanel/index.d.ts +6 -3
  374. package/TimePicker/TimePicker.d.ts +10 -1
  375. package/TimePicker/TimePicker.js +87 -37
  376. package/TimePicker/TimePickerPanel.d.ts +1 -2
  377. package/TimePicker/TimePickerPanel.js +3 -4
  378. package/TimePicker/index.d.ts +4 -2
  379. package/Toggle/Toggle.d.ts +46 -0
  380. package/Toggle/Toggle.js +29 -0
  381. package/Toggle/index.d.ts +3 -0
  382. package/Toggle/index.js +1 -0
  383. package/Tooltip/Tooltip.d.ts +14 -3
  384. package/Tooltip/Tooltip.js +53 -18
  385. package/Tooltip/index.d.ts +2 -1
  386. package/Tooltip/useDelayMouseEnterLeave.d.ts +1 -2
  387. package/Tooltip/useDelayMouseEnterLeave.js +10 -13
  388. package/Transition/Collapse.d.ts +2 -0
  389. package/Transition/Collapse.js +7 -12
  390. package/Transition/Fade.js +5 -6
  391. package/Transition/Rotate.d.ts +42 -0
  392. package/Transition/Rotate.js +30 -0
  393. package/Transition/Scale.d.ts +13 -0
  394. package/Transition/{Grow.js → Scale.js} +19 -17
  395. package/Transition/Slide.d.ts +7 -0
  396. package/Transition/{Zoom.js → Slide.js} +14 -13
  397. package/Transition/SlideFade.d.ts +3 -0
  398. package/Transition/SlideFade.js +6 -6
  399. package/Transition/Transition.d.ts +3 -3
  400. package/Transition/Translate.d.ts +14 -0
  401. package/Transition/Translate.js +94 -0
  402. package/Transition/index.d.ts +16 -6
  403. package/Transition/index.js +4 -2
  404. package/Transition/useAutoTransitionDuration.d.ts +1 -1
  405. package/Transition/useAutoTransitionDuration.js +3 -3
  406. package/Transition/useSetNodeTransition.js +0 -2
  407. package/Tree/Tree.js +1 -2
  408. package/Tree/TreeNode.js +8 -8
  409. package/Tree/TreeNodeList.js +1 -2
  410. package/Tree/index.d.ts +10 -5
  411. package/Tree/typings.d.ts +2 -2
  412. package/Typography/Typography.d.ts +6 -9
  413. package/Typography/Typography.js +7 -9
  414. package/Typography/index.d.ts +4 -7
  415. package/Upload/Upload.d.ts +175 -0
  416. package/Upload/Upload.js +279 -0
  417. package/Upload/UploadItem.d.ts +82 -0
  418. package/Upload/UploadItem.js +118 -0
  419. package/Upload/UploadPictureCard.d.ts +110 -0
  420. package/Upload/UploadPictureCard.js +101 -0
  421. package/Upload/Uploader.d.ts +161 -0
  422. package/Upload/Uploader.js +120 -0
  423. package/Upload/index.d.ts +8 -6
  424. package/Upload/index.js +4 -5
  425. package/Upload/upload-utils.d.ts +41 -0
  426. package/Upload/upload-utils.js +65 -0
  427. package/_internal/InputCheck/InputCheck.js +1 -2
  428. package/_internal/InputCheck/InputCheckGroup.js +1 -2
  429. package/_internal/InputCheck/index.d.ts +4 -2
  430. package/_internal/InputTriggerPopper/InputTriggerPopper.js +16 -27
  431. package/_internal/InputTriggerPopper/index.d.ts +2 -1
  432. package/_internal/SlideFadeOverlay/SlideFadeOverlay.d.ts +2 -2
  433. package/_internal/SlideFadeOverlay/SlideFadeOverlay.js +5 -29
  434. package/_internal/SlideFadeOverlay/index.d.ts +2 -1
  435. package/_internal/SlideFadeOverlay/useTopStack.js +1 -0
  436. package/dayjs.d.ts +21 -0
  437. package/dayjs.js +2 -0
  438. package/hooks/useClickAway.d.ts +1 -1
  439. package/hooks/useComposeRefs.js +1 -1
  440. package/hooks/useLastCallback.js +3 -1
  441. package/hooks/useScrollLock.d.ts +28 -0
  442. package/hooks/useScrollLock.js +134 -0
  443. package/index.d.ts +126 -58
  444. package/index.js +103 -90
  445. package/luxon.d.ts +21 -0
  446. package/luxon.js +2 -0
  447. package/moment.d.ts +21 -0
  448. package/moment.js +2 -0
  449. package/package.json +16 -20
  450. package/utils/composeRefs.js +0 -1
  451. package/utils/get-css-variable-value.d.ts +1 -0
  452. package/utils/get-css-variable-value.js +9 -0
  453. package/utils/jsx-types.d.ts +1 -1
  454. package/Button/IconButton.d.ts +0 -21
  455. package/Button/IconButton.js +0 -13
  456. package/DateTimePicker/DateTimePickerPanel.d.ts +0 -28
  457. package/DateTimePicker/DateTimePickerPanel.js +0 -50
  458. package/Form/FormMessage.d.ts +0 -7
  459. package/Form/FormMessage.js +0 -19
  460. package/Form/useInputWithTagsModeValue.js +0 -86
  461. package/Loading/Loading.d.ts +0 -33
  462. package/Loading/index.d.ts +0 -1
  463. package/Loading/index.js +0 -1
  464. package/Overlay/Overlay.js +0 -32
  465. package/Overlay/index.d.ts +0 -1
  466. package/Overlay/index.js +0 -1
  467. package/Picker/useRangePickerValue.d.ts +0 -23
  468. package/Picker/useRangePickerValue.js +0 -99
  469. package/Switch/Switch.d.ts +0 -43
  470. package/Switch/Switch.js +0 -29
  471. package/Switch/index.d.ts +0 -2
  472. package/Switch/index.js +0 -1
  473. package/Transition/Grow.d.ts +0 -12
  474. package/Transition/Zoom.d.ts +0 -7
  475. package/Upload/UploadButton.d.ts +0 -9
  476. package/Upload/UploadButton.js +0 -24
  477. package/Upload/UploadInput.d.ts +0 -20
  478. package/Upload/UploadInput.js +0 -24
  479. package/Upload/UploadPicture.d.ts +0 -49
  480. package/Upload/UploadPicture.js +0 -52
  481. package/Upload/UploadPictureBlock.d.ts +0 -20
  482. package/Upload/UploadPictureBlock.js +0 -82
  483. package/Upload/UploadPictureWall.d.ts +0 -81
  484. package/Upload/UploadPictureWall.js +0 -169
  485. package/Upload/UploadPictureWallItem.d.ts +0 -15
  486. package/Upload/UploadPictureWallItem.js +0 -18
  487. package/Upload/UploadResult.d.ts +0 -35
  488. package/Upload/UploadResult.js +0 -30
  489. package/utils/scroll-lock.d.ts +0 -2
  490. package/utils/scroll-lock.js +0 -24
@@ -30,6 +30,5 @@ const Accordion = forwardRef(function Accordion(props, ref) {
30
30
  }, [disabled, expandedProp, expanded, onToggleExpanded, summary]);
31
31
  return (jsx("div", { ...rest, ref: ref, className: cx(accordionClasses.host, className), children: jsxs(AccordionControlContext.Provider, { value: contextValue, children: [summary, children] }) }));
32
32
  });
33
- var Accordion$1 = Accordion;
34
33
 
35
- export { Accordion$1 as default };
34
+ export { Accordion as default };
@@ -1,3 +1,4 @@
1
+ 'use client';
1
2
  import { createContext } from 'react';
2
3
 
3
4
  const AccordionControlContext = createContext(undefined);
@@ -1,3 +1,4 @@
1
+ 'use client';
1
2
  import { jsx } from 'react/jsx-runtime';
2
3
  import { forwardRef, useContext, useMemo } from 'react';
3
4
  import { accordionClasses } from '@mezzanine-ui/core/accordion';
@@ -21,6 +22,5 @@ const AccordionDetails = forwardRef(function AccordionDetails(props, ref) {
21
22
  [accordionClasses.detailsExpanded]: expandedProp || expanded,
22
23
  }, className), role: "region", children: children }) }));
23
24
  });
24
- var AccordionDetails$1 = AccordionDetails;
25
25
 
26
- export { AccordionDetails$1 as default };
26
+ export { AccordionDetails as default };
@@ -1,4 +1,4 @@
1
- import { ReactNode } from 'react';
1
+ import { ReactNode, type JSX } from 'react';
2
2
  import { NativeElementPropsWithoutKeyAndRef } from '../utils/jsx-types';
3
3
  export interface AccordionSummaryProps extends NativeElementPropsWithoutKeyAndRef<'div'> {
4
4
  /**
@@ -1,3 +1,4 @@
1
+ 'use client';
1
2
  import { jsx, jsxs } from 'react/jsx-runtime';
2
3
  import { forwardRef, useContext, useCallback, useMemo } from 'react';
3
4
  import { ChevronDownIcon } from '@mezzanine-ui/icons';
@@ -34,19 +35,17 @@ const AccordionSummary = forwardRef(function AccordionSummary(props, ref) {
34
35
  }
35
36
  return result;
36
37
  }, [detailsId, expanded]);
37
- const DefaultIcon = useCallback((iconProps) => {
38
- const { className: iconClassNames = '' } = iconProps;
39
- return (jsx(Icon, { color: disabled ? 'disabled' : 'primary', className: cx(accordionClasses.summaryIcon, {
40
- [accordionClasses.summaryIconExpanded]: expanded,
41
- [accordionClasses.summaryIconDisabled]: disabled,
42
- }, iconClassNames, iconClassNameProp), icon: ChevronDownIcon, onClick: onToggle, onMouseDown: (evt) => evt.preventDefault(), role: "button" }));
43
- }, [disabled, expanded, iconClassNameProp, onToggle]);
38
+ const defaultIconElement = useMemo(() => (jsx(Icon, { color: disabled ? 'neutral-faint' : 'neutral', className: cx(accordionClasses.summaryIcon, {
39
+ [accordionClasses.summaryIconExpanded]: expanded,
40
+ [accordionClasses.summaryIconDisabled]: disabled,
41
+ }, iconClassNameProp), icon: ChevronDownIcon, onClick: onToggle, onMouseDown: (evt) => evt.preventDefault(), role: "button" })), [disabled, expanded, iconClassNameProp, onToggle]);
42
+ const defaultIconWithPrefixClassName = useMemo(() => (jsx(Icon, { color: disabled ? 'neutral-faint' : 'neutral', className: cx(accordionClasses.summaryIcon, {
43
+ [accordionClasses.summaryIconExpanded]: expanded,
44
+ [accordionClasses.summaryIconDisabled]: disabled,
45
+ }, accordionClasses.summaryMainPartPrefix, iconClassNameProp), icon: ChevronDownIcon, onClick: onToggle, onMouseDown: (evt) => evt.preventDefault(), role: "button" })), [disabled, expanded, iconClassNameProp, onToggle]);
44
46
  return (jsxs("div", { ...rest, ...ariaProps, ref: ref, className: cx(accordionClasses.summary, {
45
47
  [accordionClasses.summaryDisabled]: disabled,
46
- }, className), onClick: onToggle, onKeyDown: onKeyDown, role: "button", tabIndex: 0, children: [jsxs("div", { className: accordionClasses.summaryMainPart, children: [suffixActions
47
- ? prefixIcon || (jsx(DefaultIcon, { className: accordionClasses.summaryMainPartPrefix }))
48
- : null, children] }), suffixActions || jsx(DefaultIcon, {})] }));
48
+ }, className), onClick: onToggle, onKeyDown: onKeyDown, role: "button", tabIndex: 0, children: [jsxs("div", { className: accordionClasses.summaryMainPart, children: [suffixActions ? prefixIcon || defaultIconWithPrefixClassName : null, children] }), suffixActions || defaultIconElement] }));
49
49
  });
50
- var AccordionSummary$1 = AccordionSummary;
51
50
 
52
- export { AccordionSummary$1 as default };
51
+ export { AccordionSummary as default };
@@ -1,3 +1,6 @@
1
- export { AccordionProps, default } from './Accordion';
2
- export { AccordionSummaryProps, default as AccordionSummary, } from './AccordionSummary';
3
- export { AccordionDetailsProps, default as AccordionDetails, } from './AccordionDetails';
1
+ export type { AccordionProps } from './Accordion';
2
+ export { default } from './Accordion';
3
+ export { default as AccordionSummary } from './AccordionSummary';
4
+ export type { AccordionSummaryProps } from './AccordionSummary';
5
+ export { default as AccordionDetails } from './AccordionDetails';
6
+ export type { AccordionDetailsProps } from './AccordionDetails';
package/Alert/Alert.js CHANGED
@@ -14,6 +14,5 @@ const Alert = forwardRef(function Alert(props, ref) {
14
14
  const targetIcon = alertIcons[severity];
15
15
  return (jsxs("div", { ref: ref, className: cx(alertClasses.host, alertClasses.severity(severity), className), ...rest, children: [jsx(Icon, { className: alertClasses.icon, icon: targetIcon }), jsx("p", { className: alertClasses.message, children: children }), jsx(Icon, { className: alertClasses.closeIcon, icon: TimesIcon, onClick: onClose, role: "button" })] }));
16
16
  });
17
- var Alert$1 = Alert;
18
17
 
19
- export { Alert$1 as default };
18
+ export { Alert as default };
package/Alert/index.d.ts CHANGED
@@ -1,2 +1,3 @@
1
- export { AlertSeverity } from '@mezzanine-ui/core/alert';
2
- export { AlertProps, default } from './Alert';
1
+ export type { AlertSeverity } from '@mezzanine-ui/core/alert';
2
+ export type { AlertProps } from './Alert';
3
+ export { default } from './Alert';
@@ -0,0 +1,93 @@
1
+ import type { Key, MouseEvent, ReactElement } from 'react';
2
+ import { AlertBannerSeverity } from '@mezzanine-ui/core/alert-banner';
3
+ import { IconDefinition } from '@mezzanine-ui/icons';
4
+ import { ButtonPropsBase } from '../Button';
5
+ import { Notifier, NotifierConfig, NotifierData } from '../Notifier';
6
+ import { NativeElementPropsWithoutKeyAndRef } from '../utils/jsx-types';
7
+ export interface AlertBannerAction extends Omit<ButtonPropsBase, 'children'> {
8
+ /**
9
+ * The text content of the button.
10
+ */
11
+ content?: string;
12
+ /**
13
+ * Callback when the button is clicked.
14
+ */
15
+ onClick: (event: MouseEvent<HTMLButtonElement>) => void;
16
+ }
17
+ export type AlertBannerConfigProps = NotifierConfig;
18
+ export interface AlertBannerData extends Omit<NotifierData, 'onClose'>, AlertBannerConfigProps {
19
+ /**
20
+ * The action buttons to be rendered on the right side of the banner.
21
+ * Maximum 2 actions, minimum 0 (will not display if empty).
22
+ */
23
+ actions?: AlertBannerAction[];
24
+ /**
25
+ * Whether to show the close button.
26
+ */
27
+ closable?: boolean;
28
+ /**
29
+ * @internal
30
+ */
31
+ createdAt?: number;
32
+ /**
33
+ * Custom icon. Defaults to severity icon when omitted.
34
+ */
35
+ icon?: IconDefinition;
36
+ /**
37
+ * Main message displayed in the banner.
38
+ */
39
+ message: string;
40
+ /**
41
+ * Callback when the banner is closed.
42
+ */
43
+ onClose?: () => void;
44
+ /**
45
+ * The key of alert banner.
46
+ */
47
+ reference?: Key;
48
+ /**
49
+ * The severity of the banner.
50
+ */
51
+ severity: AlertBannerSeverity;
52
+ }
53
+ export interface AlertBannerProps extends Omit<NativeElementPropsWithoutKeyAndRef<'div'>, 'children' | 'title'> {
54
+ /**
55
+ * The action buttons to be rendered on the right side of the banner.
56
+ * Maximum 2 actions, minimum 0 (will not display if empty).
57
+ */
58
+ actions?: AlertBannerAction[];
59
+ /**
60
+ * Whether to show the close button.
61
+ */
62
+ closable?: boolean;
63
+ /**
64
+ * Disable portal rendering. Only used internally by grouped rendering.
65
+ * @internal
66
+ */
67
+ disablePortal?: boolean;
68
+ /**
69
+ * Custom icon. Defaults to severity icon when omitted.
70
+ */
71
+ icon?: IconDefinition;
72
+ /**
73
+ * Main message displayed in the banner.
74
+ */
75
+ message: string;
76
+ /**
77
+ * Callback when the banner is closed.
78
+ */
79
+ onClose?: () => void;
80
+ /**
81
+ * The severity of the banner.
82
+ */
83
+ severity: AlertBannerSeverity;
84
+ }
85
+ export type AlertBannerType = ((props: AlertBannerData) => ReactElement | null) & Notifier<AlertBannerData, AlertBannerConfigProps> & Record<string, (message: AlertBannerData['message'], props?: Omit<AlertBannerData, 'message' | 'severity' | 'icon'> & {
86
+ key?: Key;
87
+ }) => Key>;
88
+ /**
89
+ * The react component for `mezzanine` alert banner.
90
+ */
91
+ export declare const AlertBannerComponent: import("react").ForwardRefExoticComponent<AlertBannerProps & import("react").RefAttributes<HTMLDivElement>>;
92
+ declare const AlertBanner: AlertBannerType;
93
+ export default AlertBanner;
@@ -0,0 +1,154 @@
1
+ 'use client';
2
+ import { jsx, jsxs } from 'react/jsx-runtime';
3
+ import { useCallback, forwardRef, useState, useRef, useEffect } from 'react';
4
+ import { alertBannerIcons, alertBannerClasses, alertBannerGroupClasses } from '@mezzanine-ui/core/alert-banner';
5
+ import Button from '../Button/Button.js';
6
+ import ClearActions from '../ClearActions/ClearActions.js';
7
+ import { useComposeRefs } from '../hooks/useComposeRefs.js';
8
+ import Icon from '../Icon/Icon.js';
9
+ import Portal from '../Portal/Portal.js';
10
+ import cx from 'clsx';
11
+ import { createNotifier } from '../Notifier/createNotifier.js';
12
+
13
+ function getPriority(severity) {
14
+ if (severity === 'info') {
15
+ return 1;
16
+ }
17
+ return 0;
18
+ }
19
+ function sortAlertNotifiers(notifiers) {
20
+ return [...notifiers].sort((a, b) => {
21
+ const priorityDiff = getPriority(a.severity) - getPriority(b.severity);
22
+ if (priorityDiff !== 0) {
23
+ return priorityDiff;
24
+ }
25
+ if (a.createdAt !== b.createdAt) {
26
+ return b.createdAt - a.createdAt;
27
+ }
28
+ return 0;
29
+ });
30
+ }
31
+ /**
32
+ * The react component for `mezzanine` alert banner.
33
+ */
34
+ const AlertBannerComponent = forwardRef(function AlertBanner(props, ref) {
35
+ var _a;
36
+ const { actions, className, closable = true, disablePortal = false, icon, message, onClose, severity, ...rest } = props;
37
+ const [visible, setVisible] = useState(true);
38
+ const [isExiting, setIsExiting] = useState(false);
39
+ const [isEntering, setIsEntering] = useState(false);
40
+ const nodeRef = useRef(null);
41
+ const composedRef = useComposeRefs([ref, nodeRef]);
42
+ const handleClose = useCallback(() => {
43
+ setIsExiting(true);
44
+ setTimeout(() => {
45
+ setVisible(false);
46
+ if (onClose) {
47
+ onClose();
48
+ }
49
+ }, 250); // moderate duration
50
+ }, [onClose]);
51
+ useEffect(() => {
52
+ if (actions && actions.length > 2) {
53
+ console.warn('AlertBanner: actions maximum is 2');
54
+ }
55
+ }, [actions]);
56
+ useEffect(() => {
57
+ if (visible && !isExiting && nodeRef.current) {
58
+ // Force reflow to ensure initial state is applied
59
+ // eslint-disable-next-line @typescript-eslint/no-unused-expressions
60
+ nodeRef.current.offsetHeight;
61
+ // Trigger entering animation in next frame
62
+ requestAnimationFrame(() => {
63
+ setIsEntering(true);
64
+ });
65
+ }
66
+ }, [visible, isExiting]);
67
+ if (!visible) {
68
+ return null;
69
+ }
70
+ const resolvedIcon = icon !== null && icon !== void 0 ? icon : alertBannerIcons[severity];
71
+ const showCloseButton = closable !== null && closable !== void 0 ? closable : Boolean(onClose);
72
+ const validActions = (_a = actions === null || actions === void 0 ? void 0 : actions.slice(0, 2)) !== null && _a !== void 0 ? _a : []; // Maximum support 2 actions
73
+ const hasActions = validActions.length > 0;
74
+ const actionsArea = hasActions ? (jsx("div", { className: alertBannerClasses.actions, children: validActions.map((action, index) => {
75
+ const { content, onClick, ...buttonProps } = action;
76
+ return (jsx(Button, { onClick: onClick, size: "minor", variant: "inverse", ...buttonProps, children: content }, index));
77
+ }) })) : null;
78
+ const clearActionsArea = showCloseButton ? (jsx(ClearActions, { className: alertBannerClasses.close, onClick: handleClose, type: "standard", variant: "inverse" })) : null;
79
+ const { maxCount: _maxCount, instanceKey: _instanceKey, ...restProps } = rest;
80
+ const content = (jsxs("div", { ...restProps, ref: composedRef, "aria-live": "polite", className: cx(alertBannerClasses.host, alertBannerClasses.severity(severity), isExiting && alertBannerClasses.exiting, isEntering && !isExiting && alertBannerClasses.entering, className), role: "status", children: [jsxs("div", { className: alertBannerClasses.body, children: [jsx(Icon, { className: alertBannerClasses.icon, icon: resolvedIcon }), jsx("span", { className: alertBannerClasses.message, children: message })] }), jsxs("div", { className: alertBannerClasses.controls, children: [actionsArea, clearActionsArea] })] }));
81
+ if (disablePortal) {
82
+ return content;
83
+ }
84
+ return jsx(Portal, { layer: "alert", children: content });
85
+ });
86
+ const AlertBanner = ((props) => {
87
+ const { message, reference, onClose: onCloseProp, maxCount: _maxCount, createdAt: _createdAt, ...restProps } = props;
88
+ const onClose = useCallback(() => {
89
+ if (onCloseProp) {
90
+ onCloseProp();
91
+ }
92
+ if (reference) {
93
+ AlertBanner.remove(reference);
94
+ }
95
+ }, [onCloseProp, reference]);
96
+ return (jsx(AlertBannerComponent, { ...restProps, message: message, onClose: onClose }));
97
+ });
98
+ function initializeAlertBannerNotifier() {
99
+ const notifier = createNotifier({
100
+ maxCount: undefined,
101
+ render: (notifierProps) => {
102
+ const { key, reference: _reference, onClose: onCloseProp, createdAt: _createdAt, ...restProps } = notifierProps;
103
+ return (jsx(AlertBannerComponent, { ...restProps, disablePortal: true, onClose: () => {
104
+ if (onCloseProp) {
105
+ onCloseProp();
106
+ }
107
+ notifier.remove(key);
108
+ } }));
109
+ },
110
+ renderContainer: (children) => (jsx(Portal, { layer: "alert", children: jsx("div", { className: alertBannerGroupClasses.host, children: children }) })),
111
+ sortBeforeUpdate: sortAlertNotifiers,
112
+ });
113
+ return notifier;
114
+ }
115
+ const alertBannerNotifier = initializeAlertBannerNotifier();
116
+ AlertBanner.add = (notifier) => {
117
+ var _a;
118
+ return alertBannerNotifier.add({
119
+ ...notifier,
120
+ createdAt: (_a = notifier.createdAt) !== null && _a !== void 0 ? _a : Date.now(),
121
+ });
122
+ };
123
+ AlertBanner.config = alertBannerNotifier.config;
124
+ AlertBanner.destroy = alertBannerNotifier.destroy;
125
+ AlertBanner.remove = alertBannerNotifier.remove;
126
+ AlertBanner.getConfig = alertBannerNotifier.getConfig;
127
+ const severities = [
128
+ // support severity: info, warning, error
129
+ {
130
+ key: 'info',
131
+ icon: alertBannerIcons.info,
132
+ },
133
+ {
134
+ key: 'warning',
135
+ icon: alertBannerIcons.warning,
136
+ },
137
+ {
138
+ key: 'error',
139
+ icon: alertBannerIcons.error,
140
+ },
141
+ ];
142
+ const validSeverities = ['info', 'warning', 'error'];
143
+ severities.forEach((severity) => {
144
+ AlertBanner[severity.key] = (message, props) => AlertBanner.add({
145
+ ...props,
146
+ message,
147
+ severity: validSeverities.includes(severity.key)
148
+ ? severity.key
149
+ : 'info',
150
+ icon: severity.icon,
151
+ });
152
+ });
153
+
154
+ export { AlertBannerComponent, AlertBanner as default };
@@ -0,0 +1,2 @@
1
+ export { default } from './AlertBanner';
2
+ export type { AlertBannerProps } from './AlertBanner';
@@ -0,0 +1 @@
1
+ export { default } from './AlertBanner.js';
package/Anchor/Anchor.js CHANGED
@@ -9,13 +9,12 @@ import cx from 'clsx';
9
9
  * This component should always be full width of its parent.
10
10
  */
11
11
  const Anchor = forwardRef(function Anchor(props, ref) {
12
- const { activeAnchorId, className, children, ellipsis = false, list, maxWidth, onClick, style, ...rest } = props;
12
+ const { activeAnchorId, className, ellipsis = false, list, maxWidth, onClick, style, ...rest } = props;
13
13
  const resolvedStyle = {
14
14
  ...(style || {}),
15
15
  ...(maxWidth ? { maxWidth: `${maxWidth}px` } : {}),
16
16
  };
17
17
  return (jsxs("div", { ref: ref, className: cx(anchorClasses.host, className), style: resolvedStyle, ...rest, children: [jsx("div", { className: anchorClasses.bar }), list.map((anchor) => (jsx("button", { type: "button", onClick: () => onClick === null || onClick === void 0 ? void 0 : onClick(anchor.id), className: cx(anchorClasses.anchor, activeAnchorId === anchor.id && anchorClasses.anchorActive), children: jsx(Typography, { variant: "input3", color: "inherit", ellipsis: ellipsis, children: anchor.name }) }, anchor.id)))] }));
18
18
  });
19
- var Anchor$1 = Anchor;
20
19
 
21
- export { Anchor$1 as default };
20
+ export { Anchor as default };
package/Anchor/index.d.ts CHANGED
@@ -1 +1,2 @@
1
- export { AnchorProps, default } from './Anchor';
1
+ export type { AnchorProps } from './Anchor';
2
+ export { default } from './Anchor';
package/AppBar/AppBar.js CHANGED
@@ -29,6 +29,5 @@ const AppBar = forwardRef((props, ref) => {
29
29
  });
30
30
  return (jsx("header", { ...rest, ref: ref, className: cx(appBarClasses.host, appBarClasses[orientation], className), children: SortedChildren }));
31
31
  });
32
- var AppBar$1 = AppBar;
33
32
 
34
- export { AppBar$1 as default };
33
+ export { AppBar as default };
@@ -7,6 +7,5 @@ const AppBarBrand = forwardRef((props, ref) => {
7
7
  const { className, children, ...rest } = props;
8
8
  return (jsx("div", { ...rest, ref: ref, className: cx(appBarBrandClasses.host, className), children: children }));
9
9
  });
10
- var AppBarBrand$1 = AppBarBrand;
11
10
 
12
- export { AppBarBrand$1 as default };
11
+ export { AppBarBrand as default };
@@ -7,6 +7,5 @@ const AppBarMain = forwardRef((props, ref) => {
7
7
  const { className, children, ...rest } = props;
8
8
  return (jsx("div", { ...rest, ref: ref, className: cx(appBarMainClasses.host, className), children: children }));
9
9
  });
10
- var AppBarMain$1 = AppBarMain;
11
10
 
12
- export { AppBarMain$1 as default };
11
+ export { AppBarMain as default };
@@ -7,6 +7,5 @@ const AppBarSupport = forwardRef((props, ref) => {
7
7
  const { className, children, ...rest } = props;
8
8
  return (jsx("div", { ...rest, ref: ref, className: cx(appBarSupportClasses.host, className), children: children }));
9
9
  });
10
- var AppBarSupport$1 = AppBarSupport;
11
10
 
12
- export { AppBarSupport$1 as default };
11
+ export { AppBarSupport as default };
package/AppBar/index.d.ts CHANGED
@@ -1,4 +1,8 @@
1
- export { AppBarBrandProps, default as AppBarBrand } from './AppBarBrand';
2
- export { AppBarMainProps, default as AppBarMain } from './AppBarMain';
3
- export { AppBarSupportProps, default as AppBarSupport } from './AppBarSupport';
4
- export { AppBarChild, AppBarChildren, AppBarProps, default } from './AppBar';
1
+ export type { AppBarBrandProps } from './AppBarBrand';
2
+ export { default as AppBarBrand } from './AppBarBrand';
3
+ export type { AppBarMainProps } from './AppBarMain';
4
+ export { default as AppBarMain } from './AppBarMain';
5
+ export type { AppBarSupportProps } from './AppBarSupport';
6
+ export { default as AppBarSupport } from './AppBarSupport';
7
+ export type { AppBarChild, AppBarChildren, AppBarProps } from './AppBar';
8
+ export { default } from './AppBar';
@@ -1,22 +1,18 @@
1
1
  import { MouseEventHandler } from 'react';
2
+ import { BackdropVariant } from '@mezzanine-ui/core/backdrop';
2
3
  import { NativeElementPropsWithoutKeyAndRef } from '../utils/jsx-types';
3
4
  import { PortalProps } from '../Portal';
4
- export interface OverlayProps extends Pick<PortalProps, 'children' | 'container' | 'disablePortal'>, NativeElementPropsWithoutKeyAndRef<'div'> {
5
+ export interface BackdropProps extends Pick<PortalProps, 'children' | 'container' | 'disablePortal'>, NativeElementPropsWithoutKeyAndRef<'div'> {
5
6
  /**
6
7
  * Controls whether to disable closing element while backdrop clicked.
7
8
  * @default false
8
9
  */
9
10
  disableCloseOnBackdropClick?: boolean;
10
11
  /**
11
- * Whether to hide backdrop.
12
+ * Controls whether to disable scroll locking when backdrop is open.
12
13
  * @default false
13
14
  */
14
- hideBackdrop?: boolean;
15
- /**
16
- * Whether to set backdrop invisible
17
- * @default false
18
- */
19
- invisibleBackdrop?: boolean;
15
+ disableScrollLock?: boolean;
20
16
  /**
21
17
  * Click handler for backdrop.
22
18
  */
@@ -25,19 +21,19 @@ export interface OverlayProps extends Pick<PortalProps, 'children' | 'container'
25
21
  * Callback fired while the element will be closed.
26
22
  */
27
23
  onClose?: VoidFunction;
28
- /**
29
- * Overlay is use on top of a component(surface)
30
- * @default false
31
- */
32
- onSurface?: boolean;
33
24
  /**
34
25
  * Controls whether to show the element.
35
26
  * @default false
36
27
  */
37
28
  open?: boolean;
29
+ /**
30
+ * The variant of backdrop.
31
+ * @default 'dark'
32
+ */
33
+ variant?: BackdropVariant;
38
34
  }
39
35
  /**
40
- * The react component for `mezzanine` overlay.
36
+ * The react component for `mezzanine` backdrop.
41
37
  */
42
- declare const Overlay: import("react").ForwardRefExoticComponent<OverlayProps & import("react").RefAttributes<HTMLDivElement>>;
43
- export default Overlay;
38
+ declare const Backdrop: import("react").ForwardRefExoticComponent<BackdropProps & import("react").RefAttributes<HTMLDivElement>>;
39
+ export default Backdrop;
@@ -0,0 +1,40 @@
1
+ 'use client';
2
+ import { jsx, jsxs } from 'react/jsx-runtime';
3
+ import { forwardRef } from 'react';
4
+ import { backdropClasses } from '@mezzanine-ui/core/backdrop';
5
+ import { useScrollLock } from '../hooks/useScrollLock.js';
6
+ import { MOTION_EASING, MOTION_DURATION } from '@mezzanine-ui/system/motion';
7
+ import Portal from '../Portal/Portal.js';
8
+ import Fade from '../Transition/Fade.js';
9
+ import cx from 'clsx';
10
+
11
+ /**
12
+ * The react component for `mezzanine` backdrop.
13
+ */
14
+ const Backdrop = forwardRef(function Backdrop(props, ref) {
15
+ const { children, className, container, disableCloseOnBackdropClick = false, disablePortal, disableScrollLock = false, onBackdropClick, onClose, open = false, variant = 'dark', ...rest } = props;
16
+ // Lock body scroll when backdrop is open
17
+ useScrollLock({ enabled: open && !disableScrollLock });
18
+ // When using custom container or disablePortal, overlay should be absolutely positioned
19
+ // When using default Portal (to #mzn-portal-container), overlay uses relative positioning
20
+ const applyAbsolutePosition = Boolean(disablePortal || container);
21
+ return (jsx(Portal, { container: container, disablePortal: disablePortal, layer: "default", children: jsxs("div", { ...rest, ref: ref, "aria-hidden": !open, className: cx(backdropClasses.host, {
22
+ [backdropClasses.hostAbsolute]: applyAbsolutePosition,
23
+ [backdropClasses.hostOpen]: open,
24
+ }, className), role: "presentation", children: [jsx(Fade, { in: open, duration: {
25
+ enter: MOTION_DURATION.fast,
26
+ exit: MOTION_DURATION.fast,
27
+ }, easing: {
28
+ enter: MOTION_EASING.standard,
29
+ exit: MOTION_EASING.standard,
30
+ }, children: jsx("div", { "aria-hidden": "true", className: cx(backdropClasses.backdrop, backdropClasses.backdropVariant(variant)), onClick: (event) => {
31
+ if (!disableCloseOnBackdropClick && onClose) {
32
+ onClose();
33
+ }
34
+ if (onBackdropClick) {
35
+ onBackdropClick(event);
36
+ }
37
+ } }) }), jsx("div", { className: backdropClasses.content, children: children })] }) }));
38
+ });
39
+
40
+ export { Backdrop as default };
@@ -0,0 +1,2 @@
1
+ export type { BackdropProps } from './Backdrop';
2
+ export { default } from './Backdrop';
@@ -0,0 +1 @@
1
+ export { default } from './Backdrop.js';
package/Badge/Badge.d.ts CHANGED
@@ -1,18 +1,24 @@
1
- import { NativeElementPropsWithoutKeyAndRef } from '../utils/jsx-types';
2
- export interface BadgeProps extends Omit<NativeElementPropsWithoutKeyAndRef<'span'>, 'color'> {
3
- /**
4
- * It `true`, ignore passed children and display as a dot.
5
- * @default false
6
- */
7
- dot?: boolean;
8
- /**
9
- * If the children is number and greater than overflowCount, it will show overflowCount suffixed with a "+".
10
- * @default 99
11
- */
12
- overflowCount?: number;
13
- }
1
+ import { BadgeCountVariant } from '@mezzanine-ui/core/badge';
14
2
  /**
15
3
  * The react component for `mezzanine` badge.
16
4
  */
17
- declare const Badge: import("react").ForwardRefExoticComponent<BadgeProps & import("react").RefAttributes<HTMLSpanElement>>;
5
+ declare const Badge: import("react").ForwardRefExoticComponent<(Omit<Omit<NativeElementPropsWithoutKeyAndRef<"span">, "children"> & {
6
+ children?: never;
7
+ count: number;
8
+ overflowCount?: number;
9
+ text?: never;
10
+ variant: BadgeCountVariant;
11
+ }, "ref"> | Omit<Omit<NativeElementPropsWithoutKeyAndRef<"span">, "children"> & {
12
+ children?: never;
13
+ count?: never;
14
+ overflowCount?: never;
15
+ text?: string;
16
+ variant: import("@mezzanine-ui/core/badge").BadgeDotVariant;
17
+ }, "ref"> | Omit<Omit<NativeElementPropsWithoutKeyAndRef<"span">, "children"> & {
18
+ children?: import("react").ReactNode;
19
+ count?: never;
20
+ overflowCount?: never;
21
+ text?: never;
22
+ variant: import("@mezzanine-ui/core/badge").BadgeDotVariant;
23
+ }, "ref">) & import("react").RefAttributes<HTMLSpanElement>>;
18
24
  export default Badge;
package/Badge/Badge.js CHANGED
@@ -1,28 +1,25 @@
1
- import { jsx } from 'react/jsx-runtime';
1
+ import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import { forwardRef } from 'react';
3
3
  import { badgeClasses } from '@mezzanine-ui/core/badge';
4
4
  import cx from 'clsx';
5
5
 
6
+ const isCountVariant = (variant) => [
7
+ 'count-alert',
8
+ 'count-inactive',
9
+ 'count-inverse',
10
+ 'count-brand',
11
+ 'count-info',
12
+ ].includes(variant);
6
13
  /**
7
14
  * The react component for `mezzanine` badge.
8
15
  */
9
16
  const Badge = forwardRef(function Badge(props, ref) {
10
- const { children: childrenProp, className, dot = false, overflowCount = 99, ...rest } = props;
11
- let children;
12
- if (!dot) {
13
- if (typeof childrenProp === 'number') {
14
- const count = childrenProp;
15
- children = count > overflowCount ? `${overflowCount}+` : count;
16
- }
17
- else {
18
- children = childrenProp;
19
- }
20
- }
21
- return (jsx("span", { ...rest, ref: ref, className: cx(badgeClasses.host, {
22
- [badgeClasses.dot]: dot,
23
- [badgeClasses.hide]: !dot && children === 0,
24
- }, className), children: children }));
17
+ const { children, count, className, overflowCount, text, variant, ...rest } = props;
18
+ return (jsxs("div", { className: badgeClasses.container(!!children), children: [jsx("span", { ...rest, ref: ref, className: cx(badgeClasses.host, badgeClasses.variant(variant), { [badgeClasses.hide]: isCountVariant(variant) && count === 0 }, className), children: isCountVariant(variant)
19
+ ? overflowCount && count > overflowCount
20
+ ? `${overflowCount}+`
21
+ : count
22
+ : text }), children] }));
25
23
  });
26
- var Badge$1 = Badge;
27
24
 
28
- export { Badge$1 as default };
25
+ export { Badge as default };
@@ -1,7 +1,7 @@
1
1
  import { NativeElementPropsWithoutKeyAndRef } from '../utils/jsx-types';
2
2
  export type BadgeContainerProps = NativeElementPropsWithoutKeyAndRef<'span'>;
3
3
  /**
4
- * The react component for `mezzanine` badge container.
4
+ * @deprecated Use `Badge` component instead.
5
5
  */
6
6
  declare const BadgeContainer: import("react").ForwardRefExoticComponent<BadgeContainerProps & import("react").RefAttributes<HTMLSpanElement>>;
7
7
  export default BadgeContainer;
@@ -4,12 +4,11 @@ import { badgeClasses } from '@mezzanine-ui/core/badge';
4
4
  import cx from 'clsx';
5
5
 
6
6
  /**
7
- * The react component for `mezzanine` badge container.
7
+ * @deprecated Use `Badge` component instead.
8
8
  */
9
9
  const BadgeContainer = forwardRef(function BadgeContainer(props, ref) {
10
10
  const { children, className, ...rest } = props;
11
11
  return (jsx("span", { ...rest, ref: ref, className: cx(badgeClasses.container, className), children: children }));
12
12
  });
13
- var BadgeContainer$1 = BadgeContainer;
14
13
 
15
- export { BadgeContainer$1 as default };
14
+ export { BadgeContainer as default };