@mezzanine-ui/react 0.16.0 → 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.
- package/Accordion/AccordionControlContext.js +1 -0
- package/Accordion/AccordionDetails.js +1 -0
- package/Accordion/AccordionSummary.js +10 -10
- package/Accordion/index.d.ts +6 -3
- package/Alert/index.d.ts +3 -2
- package/AlertBanner/AlertBanner.d.ts +93 -0
- package/AlertBanner/AlertBanner.js +154 -0
- package/AlertBanner/index.d.ts +2 -0
- package/AlertBanner/index.js +1 -0
- package/Anchor/Anchor.js +1 -1
- package/Anchor/index.d.ts +2 -1
- package/AppBar/index.d.ts +8 -4
- package/{Overlay/Overlay.d.ts → Backdrop/Backdrop.d.ts} +12 -16
- package/Backdrop/Backdrop.js +40 -0
- package/Backdrop/index.d.ts +2 -0
- package/Backdrop/index.js +1 -0
- package/Badge/Badge.d.ts +20 -14
- package/Badge/Badge.js +14 -16
- package/Badge/BadgeContainer.d.ts +1 -1
- package/Badge/BadgeContainer.js +1 -1
- package/Badge/index.d.ts +3 -2
- package/Badge/typings.d.ts +48 -0
- package/Breadcrumb/Breadcrumb.d.ts +6 -0
- package/Breadcrumb/Breadcrumb.js +25 -0
- package/Breadcrumb/BreadcrumbItem.d.ts +4 -0
- package/Breadcrumb/BreadcrumbItem.js +45 -0
- package/Breadcrumb/index.d.ts +2 -0
- package/Breadcrumb/index.js +1 -0
- package/Breadcrumb/typings.d.ts +70 -0
- package/Button/Button.js +24 -19
- package/Button/ButtonGroup.d.ts +6 -28
- package/Button/ButtonGroup.js +7 -16
- package/Button/index.d.ts +4 -10
- package/Button/index.js +2 -3
- package/Button/typings.d.ts +11 -26
- package/Calendar/Calendar.d.ts +31 -2
- package/Calendar/Calendar.js +74 -19
- package/Calendar/CalendarCell.d.ts +4 -0
- package/Calendar/CalendarCell.js +3 -3
- package/Calendar/CalendarConfigProviderDayjs.d.ts +21 -0
- package/Calendar/CalendarConfigProviderDayjs.js +15 -0
- package/Calendar/CalendarConfigProviderLuxon.d.ts +21 -0
- package/Calendar/CalendarConfigProviderLuxon.js +15 -0
- package/Calendar/CalendarConfigProviderMoment.d.ts +21 -0
- package/Calendar/CalendarConfigProviderMoment.js +15 -0
- package/Calendar/CalendarContext.d.ts +14 -7
- package/Calendar/CalendarContext.js +8 -13
- package/Calendar/CalendarControls.d.ts +16 -0
- package/Calendar/CalendarControls.js +3 -7
- package/Calendar/CalendarDayOfWeek.js +4 -3
- package/Calendar/CalendarDays.d.ts +9 -1
- package/Calendar/CalendarDays.js +63 -38
- package/Calendar/CalendarFooterActions.d.ts +13 -0
- package/Calendar/CalendarFooterActions.js +14 -0
- package/Calendar/CalendarFooterControl.d.ts +16 -0
- package/Calendar/CalendarFooterControl.js +14 -0
- package/Calendar/CalendarHalfYears.d.ts +39 -0
- package/Calendar/CalendarHalfYears.js +62 -0
- package/Calendar/CalendarMonths.js +16 -4
- package/Calendar/CalendarQuarters.d.ts +37 -0
- package/Calendar/CalendarQuarters.js +64 -0
- package/Calendar/CalendarQuickSelect.d.ts +21 -0
- package/Calendar/CalendarQuickSelect.js +15 -0
- package/Calendar/CalendarWeeks.d.ts +1 -1
- package/Calendar/CalendarWeeks.js +89 -44
- package/Calendar/CalendarYears.js +13 -3
- package/Calendar/RangeCalendar.d.ts +59 -0
- package/Calendar/RangeCalendar.js +232 -0
- package/Calendar/index.d.ts +33 -10
- package/Calendar/index.js +7 -0
- package/Calendar/useCalendarControlModifiers.d.ts +4 -4
- package/Calendar/useCalendarControlModifiers.js +40 -8
- package/Calendar/useCalendarControls.d.ts +2 -0
- package/Calendar/useCalendarControls.js +19 -2
- package/Calendar/useCalendarModeStack.js +1 -0
- package/Calendar/useRangeCalendarControls.d.ts +18 -0
- package/Calendar/useRangeCalendarControls.js +115 -0
- package/Card/CardActions.js +1 -1
- package/Card/index.d.ts +4 -2
- package/Checkbox/CheckAll.d.ts +16 -6
- package/Checkbox/CheckAll.js +40 -26
- package/Checkbox/Checkbox.d.ts +100 -22
- package/Checkbox/Checkbox.js +73 -16
- package/Checkbox/CheckboxGroup.d.ts +100 -18
- package/Checkbox/CheckboxGroup.js +169 -24
- package/Checkbox/CheckboxGroupContext.d.ts +0 -2
- package/Checkbox/CheckboxGroupContext.js +1 -0
- package/Checkbox/index.d.ts +16 -4
- package/Checkbox/index.js +6 -2
- package/Checkbox/typings.d.ts +37 -0
- package/ClearActions/ClearActions.d.ts +41 -0
- package/ClearActions/ClearActions.js +23 -0
- package/ClearActions/index.d.ts +3 -0
- package/ClearActions/index.js +5 -0
- package/ConfirmActions/ConfirmActions.d.ts +2 -1
- package/ConfirmActions/index.d.ts +2 -1
- package/DatePicker/DatePicker.d.ts +12 -1
- package/DatePicker/DatePicker.js +41 -9
- package/DatePicker/DatePickerCalendar.d.ts +2 -5
- package/DatePicker/DatePickerCalendar.js +37 -37
- package/DatePicker/index.d.ts +4 -2
- package/DateRangePicker/DateRangePicker.d.ts +18 -2
- package/DateRangePicker/DateRangePicker.js +143 -100
- package/DateRangePicker/DateRangePickerCalendar.d.ts +13 -9
- package/DateRangePicker/DateRangePickerCalendar.js +7 -94
- package/DateRangePicker/index.d.ts +6 -3
- package/DateRangePicker/useDateRangeCalendarControls.js +11 -6
- package/DateRangePicker/useDateRangePickerValue.d.ts +38 -15
- package/DateRangePicker/useDateRangePickerValue.js +142 -63
- package/DateTimePicker/DateTimePicker.d.ts +31 -10
- package/DateTimePicker/DateTimePicker.js +179 -94
- package/DateTimePicker/index.d.ts +2 -2
- package/DateTimePicker/index.js +0 -1
- package/Drawer/Drawer.js +2 -2
- package/Drawer/index.d.ts +2 -1
- package/Dropdown/Dropdown.js +12 -22
- package/Dropdown/index.d.ts +2 -1
- package/Empty/Empty.d.ts +1 -16
- package/Empty/Empty.js +36 -7
- package/Empty/icons/EmptyMainInitialDataIcon.d.ts +4 -0
- package/Empty/icons/EmptyMainInitialDataIcon.js +9 -0
- package/Empty/icons/EmptyMainResultIcon.d.ts +4 -0
- package/Empty/icons/EmptyMainResultIcon.js +9 -0
- package/Empty/icons/EmptyMainSystemIcon.d.ts +4 -0
- package/Empty/icons/EmptyMainSystemIcon.js +9 -0
- package/Empty/index.d.ts +2 -1
- package/Empty/typings.d.ts +52 -0
- package/Form/FormControlContext.js +1 -0
- package/Form/FormHintText.d.ts +18 -0
- package/Form/FormHintText.js +17 -0
- package/Form/FormLabel.js +1 -0
- package/Form/index.d.ts +9 -5
- package/Form/index.js +1 -1
- package/Form/useAutoCompleteValueControl.js +2 -0
- package/Form/useCheckboxControlValue.js +0 -1
- package/Form/useSelectValueControl.js +2 -0
- package/InlineMessage/InlineMessage.d.ts +33 -0
- package/InlineMessage/InlineMessage.js +42 -0
- package/InlineMessage/InlineMessageGroup.d.ts +24 -0
- package/InlineMessage/InlineMessageGroup.js +21 -0
- package/InlineMessage/index.d.ts +4 -0
- package/InlineMessage/index.js +2 -0
- package/Input/ActionButton/ActionButton.d.ts +26 -0
- package/Input/ActionButton/ActionButton.js +14 -0
- package/Input/ActionButton/index.d.ts +2 -0
- package/Input/ActionButton/index.js +1 -0
- package/Input/Input.d.ts +147 -42
- package/Input/Input.js +195 -27
- package/Input/PasswordStrengthIndicator/PasswordStrengthIndicator.d.ts +31 -0
- package/Input/PasswordStrengthIndicator/PasswordStrengthIndicator.js +18 -0
- package/Input/PasswordStrengthIndicator/index.d.ts +2 -0
- package/Input/PasswordStrengthIndicator/index.js +1 -0
- package/Input/SelectButton/SelectButton.d.ts +20 -0
- package/Input/SelectButton/SelectButton.js +21 -0
- package/Input/SelectButton/index.d.ts +2 -0
- package/Input/SelectButton/index.js +1 -0
- package/Input/SpinnerButton/SpinnerButton.d.ts +19 -0
- package/Input/SpinnerButton/SpinnerButton.js +14 -0
- package/Input/SpinnerButton/index.d.ts +2 -0
- package/Input/SpinnerButton/index.js +1 -0
- package/Input/index.d.ts +3 -2
- package/Menu/Menu.js +1 -0
- package/Menu/index.d.ts +8 -4
- package/Message/Message.d.ts +6 -4
- package/Message/Message.js +86 -9
- package/Message/MessageTimerController.d.ts +14 -0
- package/Message/MessageTimerController.js +27 -0
- package/Message/index.d.ts +3 -2
- package/Modal/Modal.js +2 -2
- package/Modal/ModalActions.js +1 -0
- package/Modal/ModalControl.js +1 -0
- package/Modal/ModalHeader.js +1 -0
- package/Modal/index.d.ts +10 -5
- package/Modal/useModalContainer.d.ts +1 -1
- package/Modal/useModalContainer.js +2 -4
- package/Navigation/Navigation.js +37 -34
- package/Navigation/NavigationContext.js +1 -0
- package/Navigation/NavigationItem.js +1 -0
- package/Navigation/NavigationSubMenu.js +16 -26
- package/Navigation/index.d.ts +8 -4
- package/Notification/Notification.js +0 -1
- package/Notification/index.d.ts +3 -2
- package/Notifier/NotifierManager.d.ts +15 -2
- package/Notifier/NotifierManager.js +60 -18
- package/Notifier/createNotifier.d.ts +9 -0
- package/Notifier/createNotifier.js +3 -2
- package/Notifier/typings.d.ts +3 -1
- package/OverflowTooltip/OverflowCounterTag.d.ts +12 -0
- package/OverflowTooltip/OverflowCounterTag.js +48 -0
- package/OverflowTooltip/OverflowTooltip.d.ts +34 -0
- package/OverflowTooltip/OverflowTooltip.js +53 -0
- package/OverflowTooltip/index.d.ts +2 -0
- package/OverflowTooltip/index.js +2 -0
- package/PageFooter/PageFooter.d.ts +73 -8
- package/PageFooter/PageFooter.js +34 -3
- package/PageFooter/index.d.ts +2 -1
- package/PageHeader/PageHeader.d.ts +36 -0
- package/PageHeader/PageHeader.js +65 -0
- package/PageHeader/index.d.ts +2 -0
- package/PageHeader/index.js +1 -0
- package/PageToolbar/PageToolbar.d.ts +67 -0
- package/PageToolbar/PageToolbar.js +114 -0
- package/PageToolbar/index.d.ts +2 -0
- package/PageToolbar/index.js +1 -0
- package/Pagination/Pagination.d.ts +23 -29
- package/Pagination/Pagination.js +3 -4
- package/Pagination/PaginationItem.d.ts +1 -1
- package/Pagination/PaginationItem.js +6 -3
- package/Pagination/PaginationJumper.d.ts +7 -9
- package/Pagination/PaginationJumper.js +3 -5
- package/Pagination/PaginationPageSize.d.ts +8 -11
- package/Pagination/PaginationPageSize.js +5 -4
- package/Pagination/index.d.ts +8 -4
- package/Pagination/usePagination.d.ts +3 -1
- package/Pagination/usePagination.js +30 -21
- package/Picker/FormattedInput.d.ts +17 -0
- package/Picker/FormattedInput.js +74 -0
- package/Picker/MaskFormat.d.ts +39 -0
- package/Picker/MaskFormat.js +94 -0
- package/Picker/PickerTrigger.d.ts +13 -3
- package/Picker/PickerTrigger.js +17 -2
- package/Picker/PickerTriggerWithSeparator.d.ts +124 -0
- package/Picker/PickerTriggerWithSeparator.js +80 -0
- package/Picker/RangePickerTrigger.d.ts +55 -4
- package/Picker/RangePickerTrigger.js +65 -7
- package/Picker/formatUtils.d.ts +34 -0
- package/Picker/formatUtils.js +124 -0
- package/Picker/index.d.ts +17 -6
- package/Picker/index.js +4 -1
- package/Picker/useDateInputFormatter.d.ts +52 -0
- package/Picker/useDateInputFormatter.js +382 -0
- package/Picker/usePickerValue.d.ts +1 -2
- package/Picker/usePickerValue.js +8 -13
- package/Popconfirm/Popconfirm.js +1 -1
- package/Popconfirm/index.d.ts +2 -1
- package/Popover/Popover.js +4 -8
- package/Popover/index.d.ts +2 -1
- package/Popper/Popper.d.ts +15 -10
- package/Popper/Popper.js +88 -17
- package/Popper/index.d.ts +2 -1
- package/Portal/Portal.d.ts +13 -5
- package/Portal/Portal.js +25 -10
- package/Portal/index.d.ts +4 -1
- package/Portal/index.js +1 -0
- package/Portal/portalRegistry.d.ts +17 -0
- package/Portal/portalRegistry.js +92 -0
- package/Progress/Progress.d.ts +23 -30
- package/Progress/Progress.js +71 -21
- package/Progress/index.d.ts +3 -2
- package/Provider/ConfigProvider.d.ts +1 -0
- package/Provider/ConfigProvider.js +1 -0
- package/Provider/context.js +1 -0
- package/Radio/Radio.d.ts +1 -1
- package/Radio/Radio.js +2 -1
- package/Radio/RadioGroup.d.ts +1 -1
- package/Radio/RadioGroup.js +1 -1
- package/Radio/RadioGroupContext.js +1 -0
- package/Radio/index.d.ts +4 -2
- package/ResultState/ResultState.d.ts +52 -0
- package/ResultState/ResultState.js +24 -0
- package/ResultState/index.d.ts +2 -0
- package/ResultState/index.js +1 -0
- package/Select/AutoComplete.d.ts +1 -1
- package/Select/AutoComplete.js +2 -1
- package/Select/Option.js +1 -0
- package/Select/Select.d.ts +1 -1
- package/Select/Select.js +2 -1
- package/Select/SelectControlContext.js +1 -0
- package/Select/SelectTrigger.d.ts +1 -87
- package/Select/SelectTrigger.js +26 -21
- package/Select/SelectTriggerTags.d.ts +1 -1
- package/Select/SelectTriggerTags.js +47 -18
- package/Select/TreeSelect.d.ts +1 -1
- package/Select/TreeSelect.js +2 -1
- package/Select/index.d.ts +14 -7
- package/Select/typings.d.ts +99 -0
- package/Select/useSelectTriggerTags.d.ts +15 -8
- package/Select/useSelectTriggerTags.js +83 -44
- package/Selection/Selection.d.ts +98 -0
- package/Selection/Selection.js +46 -0
- package/Selection/index.d.ts +12 -0
- package/Selection/index.js +5 -0
- package/Skeleton/Skeleton.d.ts +10 -3
- package/Skeleton/Skeleton.js +12 -4
- package/Skeleton/index.d.ts +2 -1
- package/Slider/Slider.d.ts +44 -7
- package/Slider/Slider.js +17 -13
- package/Slider/index.d.ts +5 -3
- package/Spin/Spin.d.ts +39 -0
- package/{Loading/Loading.js → Spin/Spin.js} +9 -9
- package/Spin/index.d.ts +2 -0
- package/Spin/index.js +1 -0
- package/Stepper/Step.d.ts +1 -35
- package/Stepper/Step.js +43 -8
- package/Stepper/Stepper.d.ts +1 -14
- package/Stepper/Stepper.js +49 -15
- package/Stepper/index.d.ts +5 -2
- package/Stepper/index.js +1 -0
- package/Stepper/typings.d.ts +77 -0
- package/Stepper/useStepDistance.d.ts +10 -0
- package/Stepper/useStepDistance.js +81 -0
- package/Stepper/useStepper.d.ts +21 -0
- package/Stepper/useStepper.js +26 -0
- package/Table/Table.js +2 -2
- package/Table/TableBody.js +3 -2
- package/Table/TableBodyRow.js +1 -0
- package/Table/TableContext.js +1 -0
- package/Table/TableExpandedTable.js +1 -0
- package/Table/TableHeader.js +1 -0
- package/Table/editable/TableEditRenderWrapper.js +1 -0
- package/Table/expandable/TableExpandable.js +1 -1
- package/Table/index.d.ts +7 -4
- package/Table/pagination/TablePagination.js +1 -0
- package/Table/pagination/useTablePagination.js +1 -0
- package/Table/refresh/TableRefresh.js +3 -1
- package/Table/rowSelection/TableRowSelection.js +3 -2
- package/Table/sorting/TableSortingIcon.js +2 -1
- package/Table/sorting/useTableSorting.js +1 -0
- package/Table/useTableFetchMore.js +1 -1
- package/Table/useTableScroll.d.ts +4 -8
- package/Table/useTableScroll.js +9 -7
- package/Tabs/TabPane.js +1 -0
- package/Tabs/Tabs.js +9 -4
- package/Tabs/index.d.ts +6 -3
- package/Tabs/useTabsOverflow.js +4 -3
- package/Tag/Tag.d.ts +2 -25
- package/Tag/Tag.js +23 -13
- package/Tag/TagGroup.d.ts +12 -0
- package/Tag/TagGroup.js +41 -0
- package/Tag/index.d.ts +2 -1
- package/Tag/typings.d.ts +78 -0
- package/TextField/TextField.d.ts +78 -19
- package/TextField/TextField.js +58 -22
- package/TextField/index.d.ts +2 -1
- package/Textarea/Textarea.d.ts +19 -51
- package/Textarea/Textarea.js +13 -19
- package/Textarea/index.d.ts +2 -2
- package/TimePanel/TimePanel.d.ts +1 -22
- package/TimePanel/TimePanel.js +31 -26
- package/TimePanel/TimePanelAction.d.ts +2 -8
- package/TimePanel/TimePanelAction.js +2 -2
- package/TimePanel/TimePanelColumn.d.ts +0 -13
- package/TimePanel/TimePanelColumn.js +9 -11
- package/TimePanel/index.d.ts +6 -3
- package/TimePicker/TimePicker.d.ts +10 -1
- package/TimePicker/TimePicker.js +86 -35
- package/TimePicker/TimePickerPanel.d.ts +1 -2
- package/TimePicker/TimePickerPanel.js +2 -2
- package/TimePicker/index.d.ts +4 -2
- package/Toggle/Toggle.d.ts +46 -0
- package/Toggle/Toggle.js +29 -0
- package/Toggle/index.d.ts +3 -0
- package/Toggle/index.js +1 -0
- package/Tooltip/Tooltip.d.ts +13 -2
- package/Tooltip/Tooltip.js +56 -10
- package/Tooltip/index.d.ts +2 -1
- package/Tooltip/useDelayMouseEnterLeave.d.ts +1 -2
- package/Tooltip/useDelayMouseEnterLeave.js +10 -13
- package/Transition/Collapse.d.ts +2 -0
- package/Transition/Collapse.js +5 -6
- package/Transition/Fade.js +4 -4
- package/Transition/Rotate.d.ts +42 -0
- package/Transition/Rotate.js +30 -0
- package/Transition/Scale.d.ts +13 -0
- package/Transition/{Grow.js → Scale.js} +19 -16
- package/Transition/Slide.d.ts +7 -0
- package/Transition/{Zoom.js → Slide.js} +14 -12
- package/Transition/SlideFade.d.ts +3 -0
- package/Transition/SlideFade.js +5 -4
- package/Transition/Transition.d.ts +2 -2
- package/Transition/Translate.d.ts +14 -0
- package/Transition/Translate.js +94 -0
- package/Transition/index.d.ts +16 -6
- package/Transition/index.js +4 -2
- package/Transition/useAutoTransitionDuration.d.ts +1 -1
- package/Transition/useAutoTransitionDuration.js +3 -3
- package/Transition/useSetNodeTransition.js +0 -2
- package/Tree/TreeNode.js +7 -6
- package/Tree/index.d.ts +10 -5
- package/Typography/Typography.d.ts +6 -9
- package/Typography/Typography.js +7 -9
- package/Typography/index.d.ts +2 -5
- package/Upload/Upload.d.ts +175 -0
- package/Upload/Upload.js +279 -0
- package/Upload/UploadItem.d.ts +82 -0
- package/Upload/UploadItem.js +118 -0
- package/Upload/UploadPictureCard.d.ts +110 -0
- package/Upload/UploadPictureCard.js +101 -0
- package/Upload/Uploader.d.ts +161 -0
- package/Upload/Uploader.js +120 -0
- package/Upload/index.d.ts +8 -6
- package/Upload/index.js +4 -5
- package/Upload/upload-utils.d.ts +41 -0
- package/Upload/upload-utils.js +65 -0
- package/_internal/InputCheck/index.d.ts +4 -2
- package/_internal/InputTriggerPopper/InputTriggerPopper.js +15 -25
- package/_internal/InputTriggerPopper/index.d.ts +2 -1
- package/_internal/SlideFadeOverlay/SlideFadeOverlay.d.ts +2 -2
- package/_internal/SlideFadeOverlay/SlideFadeOverlay.js +4 -27
- package/_internal/SlideFadeOverlay/index.d.ts +2 -1
- package/_internal/SlideFadeOverlay/useTopStack.js +1 -0
- package/dayjs.d.ts +21 -0
- package/dayjs.js +2 -0
- package/hooks/useComposeRefs.js +1 -1
- package/hooks/useLastCallback.js +3 -1
- package/hooks/useScrollLock.d.ts +28 -0
- package/hooks/useScrollLock.js +134 -0
- package/index.d.ts +126 -58
- package/index.js +93 -80
- package/luxon.d.ts +21 -0
- package/luxon.js +2 -0
- package/moment.d.ts +21 -0
- package/moment.js +2 -0
- package/package.json +13 -17
- package/utils/composeRefs.js +0 -1
- package/utils/get-css-variable-value.d.ts +1 -0
- package/utils/get-css-variable-value.js +9 -0
- package/Button/IconButton.d.ts +0 -21
- package/Button/IconButton.js +0 -13
- package/DateTimePicker/DateTimePickerPanel.d.ts +0 -28
- package/DateTimePicker/DateTimePickerPanel.js +0 -49
- package/Form/FormMessage.d.ts +0 -7
- package/Form/FormMessage.js +0 -18
- package/Form/useInputWithTagsModeValue.js +0 -86
- package/Loading/Loading.d.ts +0 -33
- package/Loading/index.d.ts +0 -1
- package/Loading/index.js +0 -1
- package/Overlay/Overlay.js +0 -31
- package/Overlay/index.d.ts +0 -1
- package/Overlay/index.js +0 -1
- package/Picker/useRangePickerValue.d.ts +0 -23
- package/Picker/useRangePickerValue.js +0 -99
- package/Switch/Switch.d.ts +0 -43
- package/Switch/Switch.js +0 -28
- package/Switch/index.d.ts +0 -2
- package/Switch/index.js +0 -1
- package/Transition/Grow.d.ts +0 -12
- package/Transition/Zoom.d.ts +0 -7
- package/Upload/UploadButton.d.ts +0 -9
- package/Upload/UploadButton.js +0 -23
- package/Upload/UploadInput.d.ts +0 -20
- package/Upload/UploadInput.js +0 -24
- package/Upload/UploadPicture.d.ts +0 -49
- package/Upload/UploadPicture.js +0 -51
- package/Upload/UploadPictureBlock.d.ts +0 -20
- package/Upload/UploadPictureBlock.js +0 -81
- package/Upload/UploadPictureWall.d.ts +0 -81
- package/Upload/UploadPictureWall.js +0 -168
- package/Upload/UploadPictureWallItem.d.ts +0 -15
- package/Upload/UploadPictureWallItem.js +0 -18
- package/Upload/UploadResult.d.ts +0 -35
- package/Upload/UploadResult.js +0 -29
- package/utils/scroll-lock.d.ts +0 -2
- package/utils/scroll-lock.js +0 -24
|
@@ -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,18 +35,17 @@ const AccordionSummary = forwardRef(function AccordionSummary(props, ref) {
|
|
|
34
35
|
}
|
|
35
36
|
return result;
|
|
36
37
|
}, [detailsId, expanded]);
|
|
37
|
-
const
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
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
50
|
|
|
51
51
|
export { AccordionSummary as default };
|
package/Accordion/index.d.ts
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
|
-
export { AccordionProps
|
|
2
|
-
export {
|
|
3
|
-
export {
|
|
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/index.d.ts
CHANGED
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
export { AlertSeverity } from '@mezzanine-ui/core/alert';
|
|
2
|
-
export { AlertProps
|
|
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 @@
|
|
|
1
|
+
export { default } from './AlertBanner.js';
|
package/Anchor/Anchor.js
CHANGED
|
@@ -9,7 +9,7 @@ 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,
|
|
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` } : {}),
|
package/Anchor/index.d.ts
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
export { AnchorProps
|
|
1
|
+
export type { AnchorProps } from './Anchor';
|
|
2
|
+
export { default } from './Anchor';
|
package/AppBar/index.d.ts
CHANGED
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
export { AppBarBrandProps
|
|
2
|
-
export {
|
|
3
|
-
export {
|
|
4
|
-
export {
|
|
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
|
|
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
|
-
*
|
|
12
|
+
* Controls whether to disable scroll locking when backdrop is open.
|
|
12
13
|
* @default false
|
|
13
14
|
*/
|
|
14
|
-
|
|
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`
|
|
36
|
+
* The react component for `mezzanine` backdrop.
|
|
41
37
|
*/
|
|
42
|
-
declare const
|
|
43
|
-
export default
|
|
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 @@
|
|
|
1
|
+
export { default } from './Backdrop.js';
|
package/Badge/Badge.d.ts
CHANGED
|
@@ -1,18 +1,24 @@
|
|
|
1
|
-
import {
|
|
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<
|
|
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,27 +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
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
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
24
|
|
|
27
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
|
-
*
|
|
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;
|
package/Badge/BadgeContainer.js
CHANGED
|
@@ -4,7 +4,7 @@ import { badgeClasses } from '@mezzanine-ui/core/badge';
|
|
|
4
4
|
import cx from 'clsx';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
|
-
*
|
|
7
|
+
* @deprecated Use `Badge` component instead.
|
|
8
8
|
*/
|
|
9
9
|
const BadgeContainer = forwardRef(function BadgeContainer(props, ref) {
|
|
10
10
|
const { children, className, ...rest } = props;
|
package/Badge/index.d.ts
CHANGED
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
export { BadgeProps
|
|
2
|
-
export {
|
|
1
|
+
export type { BadgeProps } from './typings';
|
|
2
|
+
export { default } from './Badge';
|
|
3
|
+
export { default as BadgeContainer } from './BadgeContainer';
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { BadgeCountVariant, BadgeDotVariant } from '@mezzanine-ui/core/badge';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
import { NativeElementPropsWithoutKeyAndRef } from 'react/src/utils/jsx-types';
|
|
4
|
+
export type BadgeProps = Omit<NativeElementPropsWithoutKeyAndRef<'span'>, 'children'> & BadgeVariantProps;
|
|
5
|
+
type BadgeVariantProps = BadgeCountProps | BadgeDotWithTextProps | BadgeDotProps;
|
|
6
|
+
type BadgeCountProps = {
|
|
7
|
+
/**
|
|
8
|
+
* ONLY AVAILABLE FOR DOT BADGE(WITHOUT TEXT).
|
|
9
|
+
* When dot badges have children (typically an icon),
|
|
10
|
+
* the dot appears on the children's top-right corner.
|
|
11
|
+
*/
|
|
12
|
+
children?: never;
|
|
13
|
+
/**
|
|
14
|
+
* ONLY AVAILABLE FOR COUNT BADGE.
|
|
15
|
+
* Base number rendered inside the badge when using the count variant.
|
|
16
|
+
*/
|
|
17
|
+
count: number;
|
|
18
|
+
/**
|
|
19
|
+
* ONLY AVAILABLE FOR COUNT BADGE.
|
|
20
|
+
* If the children is number and greater than overflowCount,
|
|
21
|
+
* it will show overflowCount suffixed with a "+".
|
|
22
|
+
*/
|
|
23
|
+
overflowCount?: number;
|
|
24
|
+
/**
|
|
25
|
+
* ONLY AVAILABLE FOR DOT WITH TEXT BADGE.
|
|
26
|
+
* String displayed next to the dot badge.
|
|
27
|
+
*/
|
|
28
|
+
text?: never;
|
|
29
|
+
/**
|
|
30
|
+
* Controls the visual style (dot vs count variants) and enables the related overflow/hide rules.
|
|
31
|
+
*/
|
|
32
|
+
variant: BadgeCountVariant;
|
|
33
|
+
};
|
|
34
|
+
type BadgeDotWithTextProps = {
|
|
35
|
+
children?: never;
|
|
36
|
+
count?: never;
|
|
37
|
+
overflowCount?: never;
|
|
38
|
+
text?: string;
|
|
39
|
+
variant: BadgeDotVariant;
|
|
40
|
+
};
|
|
41
|
+
type BadgeDotProps = {
|
|
42
|
+
children?: ReactNode;
|
|
43
|
+
count?: never;
|
|
44
|
+
overflowCount?: never;
|
|
45
|
+
text?: never;
|
|
46
|
+
variant: BadgeDotVariant;
|
|
47
|
+
};
|
|
48
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { BreadcrumbProps } from './typings';
|
|
2
|
+
/**
|
|
3
|
+
* The react component for `mezzanine` breadcrumb.
|
|
4
|
+
*/
|
|
5
|
+
declare const Breadcrumb: import("react").ForwardRefExoticComponent<BreadcrumbProps & import("react").RefAttributes<HTMLElement>>;
|
|
6
|
+
export default Breadcrumb;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
2
|
+
import { forwardRef } from 'react';
|
|
3
|
+
import { SlashIcon } from '@mezzanine-ui/icons';
|
|
4
|
+
import { breadcrumbClasses } from '@mezzanine-ui/core/breadcrumb';
|
|
5
|
+
import BreadcrumbItem from './BreadcrumbItem.js';
|
|
6
|
+
import Icon from '../Icon/Icon.js';
|
|
7
|
+
import cx from 'clsx';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* The react component for `mezzanine` breadcrumb.
|
|
11
|
+
*/
|
|
12
|
+
const Breadcrumb = forwardRef(function Breadcrumb(props, ref) {
|
|
13
|
+
const { className, condensed, items, ...rest } = props;
|
|
14
|
+
const lastIndex = items.length - 1;
|
|
15
|
+
return (jsxs("nav", { ...rest, "aria-label": "Breadcrumb", className: cx(breadcrumbClasses.host, className), ref: ref, children: [!condensed && lastIndex >= 0 && (jsx(BreadcrumbItem, { ...items[0], current: lastIndex === 0 })), !condensed && lastIndex >= 1 && (jsxs(Fragment, { children: [jsx(Icon, { icon: SlashIcon, size: 14 }), jsx(BreadcrumbItem, { ...items[1], current: lastIndex === 1 })] })), !condensed && items.length <= 4 && (jsxs(Fragment, { children: [lastIndex >= 2 && (jsxs(Fragment, { children: [jsx(Icon, { icon: SlashIcon, size: 14 }), jsx(BreadcrumbItem, { ...items[2], current: lastIndex === 2 })] })), lastIndex === 3 && (jsxs(Fragment, { children: [jsx(Icon, { icon: SlashIcon, size: 14 }), jsx(BreadcrumbItem, { ...items[3], current: true })] }))] })), (items.length > 4 || condensed) && (jsxs(Fragment, { children: [!condensed && jsx(Icon, { icon: SlashIcon, size: 14 }), (!condensed || items.length > 2) && (jsxs(Fragment, { children: [jsx(BreadcrumbItem, { options: (condensed
|
|
16
|
+
? items.slice(0, lastIndex - 1)
|
|
17
|
+
: items.slice(2, lastIndex - 1)).map((item) => ({
|
|
18
|
+
label: item.label,
|
|
19
|
+
href: item.href,
|
|
20
|
+
target: item.target,
|
|
21
|
+
id: item.id,
|
|
22
|
+
})) }), jsx(Icon, { icon: SlashIcon, size: 14 })] })), lastIndex - 1 >= 0 && (jsxs(Fragment, { children: [jsx(BreadcrumbItem, { ...items[lastIndex - 1] }), jsx(Icon, { icon: SlashIcon, size: 14 })] })), jsx(BreadcrumbItem, { ...items[lastIndex], current: true })] }))] }));
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
export { Breadcrumb as default };
|