@solostylist/ui-kit 2.0.1 → 2.0.2
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/dist/Add-CEnTWsXs.js +6 -0
- package/dist/ArrowUpward-udL1ltj2.js +6 -0
- package/dist/Box-9oeZgA1U.js +46 -0
- package/dist/Button-DaLr1m20.js +534 -0
- package/dist/ButtonBase-DovDC6-1.js +700 -0
- package/dist/Checkbox-C-Xjbzzh.js +152 -0
- package/dist/ChevronRight-DsPfsFKB.js +6 -0
- package/dist/Close-CIYOM-Sc.js +6 -0
- package/dist/Collapse-DPUr1cbP.js +266 -0
- package/dist/ContentCopy-Hlh3azVb.js +6 -0
- package/dist/DefaultPropsProvider-ebWx4_5E.js +128 -0
- package/dist/DialogContent-b3xbJVC6.js +450 -0
- package/dist/Download-D9PkFi7a.js +6 -0
- package/dist/ExpandMore-sOgvEha9.js +6 -0
- package/dist/Favorite-BP343hjM.js +6 -0
- package/dist/FavoriteBorder-D15j9xEL.js +6 -0
- package/dist/FormControl-DwMfZCiz.js +215 -0
- package/dist/FormControlLabel-Ihga1FTB.js +173 -0
- package/dist/Grow-BQR7x52V.js +121 -0
- package/dist/IconButton-CE-4GamO.js +448 -0
- package/dist/InfoOutlined-lpvhO6P8.js +6 -0
- package/dist/List-RNcZhRdr.js +105 -0
- package/dist/Menu-CnyB4SDS.js +180 -0
- package/dist/MenuItem-Ck30dBOR.js +224 -0
- package/dist/MenuList-Cc98uWXq.js +160 -0
- package/dist/Modal-CD2EBfU8.js +702 -0
- package/dist/Paper-_3qggtBp.js +115 -0
- package/dist/Popover-BFdKSYI5.js +340 -0
- package/dist/Popper-DYNAMSDd.js +1351 -0
- package/dist/Portal-i_wgIe9-.js +49 -0
- package/dist/Remove-DDEn8ek8.js +6 -0
- package/dist/RtlProvider-B7uVJXUY.js +19 -0
- package/dist/Skeleton-iZFynl7z.js +220 -0
- package/dist/Stack-C0LGzM4c.js +158 -0
- package/dist/SwitchBase-CjWtDdmE.js +198 -0
- package/dist/Tooltip-B1sn94L0.js +448 -0
- package/dist/Typography-_P0svrkO.js +168 -0
- package/dist/UnfoldMoreRounded-CuCrdxoy.js +6 -0
- package/dist/appendOwnerState-CFQTq3pb.js +17 -0
- package/dist/assets/stripe-input.css +1 -0
- package/dist/autocomplete-BgARERpp.js +43 -0
- package/dist/avatar-XNOdbbRz.js +10 -0
- package/dist/buttonBaseClasses-B90LjsNK.js +13 -0
- package/dist/capitalize-C0baBJCm.js +5 -0
- package/dist/chainPropTypes-CkMRtDjQ.js +8 -0
- package/dist/checkbox-D1U_JKqs.js +88 -0
- package/dist/checkboxClasses-B1up2lUn.js +18 -0
- package/dist/chunk-C_CI6nMA.js +13 -0
- package/dist/clsx-DGZSe4Nt.js +16 -0
- package/dist/colorManipulator-DmUjcif3.js +129 -0
- package/dist/contains-DnqPQsQU.js +16 -0
- package/dist/createSimplePaletteValueFilter-DFvyXHoZ.js +14 -0
- package/dist/createSvgIcon-3y-gS0r1.js +155 -0
- package/dist/createTheme-xB2Em0Na.js +1869 -0
- package/dist/defaultTheme-BaGcIzCh.js +210 -0
- package/dist/elementAcceptingRef-pKEY6jPR.js +25 -0
- package/dist/elementTypeAcceptingRef-xl_04Y5-.js +19 -0
- package/dist/exactProp-C_IsucXf.js +13 -0
- package/dist/extends-DXMyyJCW.js +12 -0
- package/dist/field-label-styles-4praXMaE.js +50 -0
- package/dist/formLabelClasses-AuZHWfTs.js +18 -0
- package/dist/generateUtilityClass-PAIOm1jC.js +34 -0
- package/dist/generateUtilityClasses-DvX505Gy.js +10 -0
- package/dist/getActiveElement-BfBkhgy6.js +8 -0
- package/dist/{gradients-DSnBONEQ.js → gradients-mQAYCK0_.js} +1 -1
- package/dist/iconButtonClasses-CVVRFXRo.js +27 -0
- package/dist/inputAdornmentClasses-BbB8s-Z4.js +19 -0
- package/dist/inputBaseClasses-Ce_jjdp9.js +25 -0
- package/dist/integerPropType-CCkQD1JY.js +27 -0
- package/dist/isEventHandler-QShLXBxE.js +7 -0
- package/dist/isFocusVisible-4OIE8TST.js +11 -0
- package/dist/isLayoutSupported-Btg2X3QE.js +6 -0
- package/dist/isMuiElement-CPjhi284.js +10 -0
- package/dist/main.js +1 -1
- package/dist/mega-menu-trigger-BcOo8I5_.js +53 -0
- package/dist/memoTheme-qFyKAk7y.js +15 -0
- package/dist/mergeSlotProps-DC8r4QzS.js +45 -0
- package/dist/monthCalendarClasses-b964KRbc.js +14 -0
- package/dist/objectWithoutPropertiesLoose-q4Zwd1RV.js +12 -0
- package/dist/outlinedInputClasses-ci1zDasn.js +17 -0
- package/dist/ownerDocument-CJjQZweZ.js +6 -0
- package/dist/ownerDocument-pYjJiXem.js +5 -0
- package/dist/ownerWindow-SSeeoqPT.js +18 -0
- package/dist/palettes/index.js +1 -1
- package/dist/{palettes-CJLuEy1m.js → palettes-B1FcGUYs.js} +163 -163
- package/dist/pickersCalendarHeaderClasses-BAiPN_oY.js +12 -0
- package/dist/prop-types-BzYPyWN7.js +516 -0
- package/dist/refType-j5S9pc_e.js +6 -0
- package/dist/resolveProps-7jIA45vn.js +30 -0
- package/dist/s-accordion/index.js +1 -1
- package/dist/s-accordion/s-accordion.js +2 -70
- package/dist/s-accordion-1oLxQhod.js +487 -0
- package/dist/s-action-overlay/s-action-overlay.js +21 -21
- package/dist/s-animated-gradient-text/index.d.ts +2 -0
- package/dist/s-animated-gradient-text/index.js +2 -0
- package/dist/s-animated-gradient-text/s-animated-gradient-text.d.ts +64 -0
- package/dist/s-animated-gradient-text/s-animated-gradient-text.js +93 -0
- package/dist/s-announcement-bar/index.d.ts +2 -0
- package/dist/s-announcement-bar/index.js +2 -0
- package/dist/s-announcement-bar/s-announcement-bar.d.ts +113 -0
- package/dist/s-announcement-bar/s-announcement-bar.js +275 -0
- package/dist/s-autocomplete/s-autocomplete.js +1 -1
- package/dist/s-avatar/s-avatar.js +17 -17
- package/dist/s-blur-text/s-blur-text.js +16 -16
- package/dist/s-brand-logo/index.js +1 -1
- package/dist/s-brand-logo/s-brand-logo.js +1 -1
- package/dist/s-breadcrumbs/s-breadcrumbs.js +19 -19
- package/dist/s-carousel/index.js +1 -1
- package/dist/s-carousel/s-carousel.d.ts +2 -0
- package/dist/s-carousel/s-carousel.js +2 -184
- package/dist/s-carousel-CAyAl3ka.js +1355 -0
- package/dist/s-category-card/s-category-card.js +22 -22
- package/dist/s-chat-input/index.js +1 -1
- package/dist/s-chat-input/s-chat-input.js +2 -398
- package/dist/s-chat-input-T3gyan60.js +419 -0
- package/dist/s-chat-message/index.js +1 -1
- package/dist/s-chat-message/s-chat-message.js +2 -314
- package/dist/s-chat-message-NFTpNgt5.js +315 -0
- package/dist/s-checkbox/s-checkbox.js +19 -18
- package/dist/s-chips/index.js +1 -1
- package/dist/s-chips/s-chips.js +2 -174
- package/dist/s-chips-Dqq1fgz-.js +176 -0
- package/dist/s-code-block/index.js +1 -1
- package/dist/s-code-block/s-code-block.js +2 -103
- package/dist/s-code-block-DyDtctGG.js +658 -0
- package/dist/s-comment-message/index.js +1 -1
- package/dist/s-comment-message/s-comment-message.js +2 -189
- package/dist/s-comment-message-DpCVBKiE.js +192 -0
- package/dist/s-copyable-text/s-copyable-text.js +18 -18
- package/dist/s-countdown/s-count-box.js +18 -18
- package/dist/s-data-table/index.js +1 -1
- package/dist/s-data-table/s-data-table.js +2 -213
- package/dist/s-data-table-D4V58HFR.js +805 -0
- package/dist/s-date-picker/index.js +1 -1
- package/dist/s-date-picker/s-date-picker.js +2 -106
- package/dist/s-date-picker-BFIQOA8C.js +657 -0
- package/dist/s-datetime-picker/index.js +1 -1
- package/dist/s-datetime-picker/s-datetime-picker.js +2 -108
- package/dist/s-datetime-picker-zfg7BEOW.js +3886 -0
- package/dist/s-dialog/index.js +1 -1
- package/dist/s-dialog/s-dialog.js +2 -80
- package/dist/s-dialog-BNlXsVVP.js +123 -0
- package/dist/s-dialog-confirm/s-dialog-confirm.js +33 -32
- package/dist/s-dialog-message/s-dialog-message.js +32 -31
- package/dist/s-drawer/index.d.ts +3 -0
- package/dist/s-drawer/index.js +2 -0
- package/dist/s-drawer/s-drawer.d.ts +70 -0
- package/dist/s-drawer/s-drawer.js +2 -0
- package/dist/s-drawer-4h5ZyoM8.js +562 -0
- package/dist/s-empty/s-empty.js +14 -13
- package/dist/s-file-dropzone/index.js +1 -1
- package/dist/s-file-dropzone/s-file-dropzone.js +2 -219
- package/dist/s-file-dropzone-Cfzv1Cm8.js +422 -0
- package/dist/s-file-icon/s-file-icon.js +88 -87
- package/dist/s-flex-box/s-flex-box.js +12 -11
- package/dist/s-form/s-form.js +15 -15
- package/dist/s-gallery/s-gallery.js +1 -1
- package/dist/s-glow-button/s-glow-button.js +10 -9
- package/dist/s-gradient-blob-pulse/index.d.ts +2 -0
- package/dist/s-gradient-blob-pulse/index.js +2 -0
- package/dist/s-gradient-blob-pulse/s-gradient-blob-pulse.d.ts +62 -0
- package/dist/s-gradient-blob-pulse/s-gradient-blob-pulse.js +237 -0
- package/dist/s-gradient-icon/index.d.ts +1 -1
- package/dist/s-gradient-icon/s-gradient-icon.d.ts +4 -4
- package/dist/s-gradient-icon/s-gradient-icon.js +2 -2
- package/dist/s-icon-button/s-icon-button.d.ts +6 -2
- package/dist/s-icon-button/s-icon-button.js +14 -13
- package/dist/s-image-comparison/s-image-comparison.js +31 -29
- package/dist/s-image-viewer/image-viewer-thumbnail-dock.js +1 -1
- package/dist/s-image-viewer/index.js +3 -3
- package/dist/s-image-viewer/s-image-viewer.js +2 -266
- package/dist/s-image-viewer/use-image-viewer-navigation.js +7 -7
- package/dist/s-image-viewer-CjK67-rs.js +269 -0
- package/dist/s-interactive-card/index.d.ts +3 -0
- package/dist/s-interactive-card/index.js +2 -0
- package/dist/s-interactive-card/s-interactive-card.d.ts +57 -0
- package/dist/s-interactive-card/s-interactive-card.js +152 -0
- package/dist/s-label/s-label.js +26 -25
- package/dist/s-language-switcher/index.js +2 -2
- package/dist/s-language-switcher/s-language-switcher.js +2 -150
- package/dist/s-language-switcher-PaMgHWc2.js +246 -0
- package/dist/s-lazy-image/s-lazy-image.js +18 -17
- package/dist/s-link/index.js +1 -1
- package/dist/s-link/s-link.js +2 -5
- package/dist/s-link-Db1aabHh.js +235 -0
- package/dist/s-list-action-item/index.d.ts +2 -0
- package/dist/s-list-action-item/index.js +2 -0
- package/dist/s-list-action-item/s-list-action-item.d.ts +89 -0
- package/dist/s-list-action-item/s-list-action-item.js +150 -0
- package/dist/s-localization-provider/index.js +1 -1
- package/dist/s-localization-provider/s-localization-provider.js +2 -12
- package/dist/s-localization-provider-CeyB_SGz.js +519 -0
- package/dist/s-mega-menu/index.d.ts +3 -0
- package/dist/s-mega-menu/index.js +2 -0
- package/dist/s-mega-menu/mega-menu-panel.d.ts +38 -0
- package/dist/s-mega-menu/mega-menu-panel.js +253 -0
- package/dist/s-mega-menu/mega-menu-slots.d.ts +65 -0
- package/dist/s-mega-menu/mega-menu-slots.js +232 -0
- package/dist/s-mega-menu/mega-menu-trigger.d.ts +35 -0
- package/dist/s-mega-menu/mega-menu-trigger.js +2 -0
- package/dist/s-mega-menu/s-mega-menu.d.ts +23 -0
- package/dist/s-mega-menu/s-mega-menu.js +228 -0
- package/dist/s-mega-menu/types.d.ts +188 -0
- package/dist/s-mega-menu/types.js +0 -0
- package/dist/s-mega-menu/utils.d.ts +51 -0
- package/dist/s-mega-menu/utils.js +51 -0
- package/dist/s-mobile-dock/index.d.ts +3 -0
- package/dist/s-mobile-dock/index.js +2 -0
- package/dist/s-mobile-dock/s-mobile-dock.d.ts +96 -0
- package/dist/s-mobile-dock/s-mobile-dock.js +2 -0
- package/dist/s-mobile-dock-8F3UWAb8.js +615 -0
- package/dist/s-nav-item/index.d.ts +1 -1
- package/dist/s-nav-item/s-nav-item.d.ts +35 -16
- package/dist/s-nav-item/s-nav-item.js +56 -77
- package/dist/s-nav-items/s-nav-items.js +78 -121
- package/dist/s-no-ssr/index.js +1 -1
- package/dist/s-no-ssr/s-no-ssr.js +2 -5
- package/dist/s-no-ssr-DH57_uP_.js +25 -0
- package/dist/s-number-range/index.d.ts +3 -0
- package/dist/s-number-range/index.js +2 -0
- package/dist/s-number-range/s-number-range.d.ts +109 -0
- package/dist/s-number-range/s-number-range.js +2 -0
- package/dist/s-number-range-Low5QjuD.js +253 -0
- package/dist/s-pagination/index.js +1 -1
- package/dist/s-pagination/s-pagination.js +2 -85
- package/dist/s-pagination-s46hBifh.js +606 -0
- package/dist/s-pixel-reveal/s-pixel-reveal.js +20 -20
- package/dist/s-popover/index.d.ts +5 -0
- package/dist/s-popover/index.js +3 -0
- package/dist/s-popover/placement.d.ts +14 -0
- package/dist/s-popover/placement.js +65 -0
- package/dist/s-popover/s-popover-content.d.ts +22 -0
- package/dist/s-popover/s-popover-content.js +22 -0
- package/dist/s-popover/s-popover.d.ts +59 -0
- package/dist/s-popover/s-popover.js +68 -0
- package/dist/s-product-card/index.d.ts +3 -0
- package/dist/s-product-card/index.js +2 -0
- package/dist/s-product-card/s-product-card.d.ts +216 -0
- package/dist/s-product-card/s-product-card.js +502 -0
- package/dist/s-product-gallery/index.d.ts +3 -0
- package/dist/s-product-gallery/index.js +2 -0
- package/dist/s-product-gallery/s-product-gallery.d.ts +116 -0
- package/dist/s-product-gallery/s-product-gallery.js +2 -0
- package/dist/s-product-gallery-Dj9eGg5i.js +430 -0
- package/dist/s-quantity-input/s-quantity-input.js +24 -24
- package/dist/s-review/index.js +1 -1
- package/dist/s-review/s-review.js +2 -272
- package/dist/s-review--Q2C0ngO.js +272 -0
- package/dist/s-scroll-reveal/s-scroll-reveal.js +8 -7
- package/dist/s-scroll-to-top/s-scroll-to-top.d.ts +1 -1
- package/dist/s-scroll-to-top/s-scroll-to-top.js +28 -27
- package/dist/s-scroll-velocity/scroll-velocity-row.js +29 -29
- package/dist/s-segmented-control/index.d.ts +3 -0
- package/dist/s-segmented-control/index.js +2 -0
- package/dist/s-segmented-control/s-segmented-control.d.ts +94 -0
- package/dist/s-segmented-control/s-segmented-control.js +302 -0
- package/dist/s-select/index.js +1 -1
- package/dist/s-select/s-select.js +2 -201
- package/dist/s-select-CtVKEOZ5.js +204 -0
- package/dist/s-select-list/s-select-list.js +50 -47
- package/dist/s-skeleton/s-skeleton.js +13 -12
- package/dist/s-snackbar-message/index.js +2 -2
- package/dist/s-snackbar-message/s-snackbar-message.js +2 -89
- package/dist/s-snackbar-message-DsfJlDYd.js +810 -0
- package/dist/s-spotlight-cursor/s-spotlight-cursor.js +27 -27
- package/dist/s-status-illustration/s-status-illustration.js +74 -74
- package/dist/s-stepper/index.d.ts +3 -0
- package/dist/s-stepper/index.js +2 -0
- package/dist/s-stepper/s-stepper.d.ts +90 -0
- package/dist/s-stepper/s-stepper.js +2 -0
- package/dist/s-stepper-BtODHVro.js +892 -0
- package/dist/s-stripe/s-stripe.js +12 -11
- package/dist/s-stripe/stripe-input.js +2 -3
- package/dist/s-swatch/index.d.ts +3 -0
- package/dist/s-swatch/index.js +2 -0
- package/dist/s-swatch/s-swatch.d.ts +235 -0
- package/dist/s-swatch/s-swatch.js +219 -0
- package/dist/s-switch/index.js +1 -1
- package/dist/s-switch/s-switch.js +2 -48
- package/dist/s-switch-BCeBoxWf.js +307 -0
- package/dist/s-tabs/s-tabs.js +50 -48
- package/dist/s-text-editor/index.js +1 -1
- package/dist/s-text-editor/s-text-editor-toolbar.js +2 -216
- package/dist/s-text-editor/s-text-editor.js +26 -25
- package/dist/s-text-editor-toolbar-D5eQ-jCs.js +2124 -0
- package/dist/s-text-field/index.js +1 -1
- package/dist/s-text-field/s-text-field.js +2 -52
- package/dist/s-text-field-HYyDf1Jo.js +51 -0
- package/dist/s-text-shimmer/s-text-shimmer.js +3 -1
- package/dist/s-text-truncation/s-text-truncation.js +20 -20
- package/dist/s-theme-demo/s-theme-demo.js +8 -8
- package/dist/s-theme-demo/theme-demo-color-palette-section.js +1 -1
- package/dist/s-theme-demo/theme-demo-color-ramps-section.js +1 -1
- package/dist/s-theme-demo/theme-demo-components-section.js +2 -265
- package/dist/s-theme-demo/theme-demo-typography-section.js +10 -10
- package/dist/s-theme-provider/s-theme-provider.js +1 -1
- package/dist/s-theme-switch/index.js +1 -1
- package/dist/s-theme-switch/s-theme-switch.js +2 -60
- package/dist/s-theme-switch-BFWpADh3.js +60 -0
- package/dist/s-tip/index.js +1 -1
- package/dist/s-tip/s-tip.js +2 -61
- package/dist/s-tip-jbL7vtoU.js +62 -0
- package/dist/s-tool-bar/s-tool-bar.js +28 -28
- package/dist/s-tool-bar/tool-bar-action-buttons.js +2 -55
- package/dist/s-tool-bar/tool-bar-image-input.js +2 -148
- package/dist/s-tool-bar/tool-bar-inputs.js +55 -55
- package/dist/s-tool-item/s-tool-item.d.ts +10 -6
- package/dist/s-tool-item/s-tool-item.js +29 -29
- package/dist/s-two-pane-layout/s-two-pane-layout.js +32 -32
- package/dist/s-zoom-image/s-zoom-image.js +19 -18
- package/dist/selectClasses-CPxME5jE.js +22 -0
- package/dist/setRef-BWPyWnrr.js +6 -0
- package/dist/styled-Bog8QCl3.js +163 -0
- package/dist/svgIconClasses-1kWGzgux.js +20 -0
- package/dist/switchClasses-BtweO7PC.js +23 -0
- package/dist/theme/component-augmentation.d.ts +65 -1
- package/dist/theme/components/autocomplete.js +2 -43
- package/dist/theme/components/avatar.js +2 -9
- package/dist/theme/components/card.js +3 -3
- package/dist/theme/components/checkbox.js +2 -90
- package/dist/theme/components/chip.js +3 -3
- package/dist/theme/components/components.js +20 -20
- package/dist/theme/components/date-calendar.js +0 -1
- package/dist/theme/components/day-calendar.js +0 -1
- package/dist/theme/components/drawer.d.ts +1 -0
- package/dist/theme/components/drawer.js +4 -1
- package/dist/theme/components/field-label-styles.js +2 -19
- package/dist/theme/components/form-label.js +1 -1
- package/dist/theme/components/list-item-button.js +1 -1
- package/dist/theme/components/list-item.js +7 -7
- package/dist/theme/components/month-calendar.js +13 -14
- package/dist/theme/components/multi-section-digital-clock-section.js +0 -1
- package/dist/theme/components/outlined-input.js +6 -6
- package/dist/theme/components/picker-day.js +0 -1
- package/dist/theme/components/pickers-arrow-switcher.js +0 -1
- package/dist/theme/components/pickers-calendar-header.js +2 -3
- package/dist/theme/components/select.js +6 -6
- package/dist/theme/components/slider.js +18 -1
- package/dist/theme/components/step-connector.d.ts +0 -3
- package/dist/theme/components/step-connector.js +1 -6
- package/dist/theme/components/step-icon.d.ts +3 -12
- package/dist/theme/components/step-icon.js +3 -14
- package/dist/theme/components/switch.js +1 -1
- package/dist/theme/components/table-pagination.js +1 -1
- package/dist/theme/components/toggle-button.js +2 -93
- package/dist/theme/components/year-calendar.js +13 -14
- package/dist/theme/theme-primitives.js +2 -2
- package/dist/theme-demo-components-section-C7l_2KAo.js +267 -0
- package/dist/{theme-primitives-CRfnMsNy.js → theme-primitives-CXtaMdVj.js} +109 -108
- package/dist/toggle-button-BsGb-tOr.js +104 -0
- package/dist/tool-bar-action-buttons-v1koaasr.js +54 -0
- package/dist/tool-bar-image-input-DtXTyEe1.js +148 -0
- package/dist/typographyClasses-BH_-zLwg.js +31 -0
- package/dist/unsupportedProp-whMV_uOi.js +11 -0
- package/dist/useControlled-DqNPBJNp.js +5 -0
- package/dist/useControlled-uxVKygk1.js +29 -0
- package/dist/useEnhancedEffect-DFq_FMGX.js +5 -0
- package/dist/useEnhancedEffect-dBFfkm1e.js +5 -0
- package/dist/useEventCallback-DGCsaRIu.js +5 -0
- package/dist/useEventCallback-DhCPBxRG.js +11 -0
- package/dist/useForkRef-BuNFTXxE.js +29 -0
- package/dist/useFormControl-gXwNeUM1.js +18 -0
- package/dist/useMobilePicker-CdrT935R.js +7584 -0
- package/dist/useRovingTabIndex-DPlW997R.js +242 -0
- package/dist/useSlot-BG8ReOxN.js +83 -0
- package/dist/useSlotProps-BOO3qaI9.js +16 -0
- package/dist/useTheme-BIWMbX3i.js +9 -0
- package/dist/useThemeProps-Dw9dmKyT.js +29 -0
- package/dist/useTimeout-CoK-Khfm.js +49 -0
- package/dist/utils/dayjs.js +146 -9
- package/dist/utils-Bfqbev5I.js +248 -0
- package/dist/warning-D5YhCbje.js +99 -0
- package/dist/yearCalendarClasses-D9k_KT38.js +14 -0
- package/package.json +1 -1
- package/dist/theme/components/components.d.ts +0 -2
- package/dist/theme/components/slider.d.ts +0 -34
- /package/dist/{colors-CNjL5fhq.js → colors-Bik9qOU9.js} +0 -0
- /package/dist/{s-brand-logo-CErW9Slg.js → s-brand-logo-D7Jovf5K.js} +0 -0
- /package/dist/{utils-CMeAWSRO.js → utils-DOY6v6ln.js} +0 -0
|
@@ -0,0 +1,253 @@
|
|
|
1
|
+
import { toSxArray as e } from "../utils/sx.js";
|
|
2
|
+
import { resolveOwnerStateSlotProps as t } from "../utils/slots.js";
|
|
3
|
+
import { t as n } from "../useForkRef-BuNFTXxE.js";
|
|
4
|
+
import { t as r } from "../useEventCallback-DGCsaRIu.js";
|
|
5
|
+
import { t as i } from "../appendOwnerState-CFQTq3pb.js";
|
|
6
|
+
import { t as a } from "../mergeSlotProps-DC8r4QzS.js";
|
|
7
|
+
import { t as o } from "../ChevronRight-DsPfsFKB.js";
|
|
8
|
+
import { LIST_ATTRIBUTE as s, NODE_ATTRIBUTE as c, PANEL_ATTRIBUTE as l, ROW_ATTRIBUTE as u, focusAdjacentList as d, focusRowByOffset as f, getFirstRow as p, getSiblingRows as m, hasNestedChildren as h, resolveLayout as g, resolveSubmenuSide as _ } from "./utils.js";
|
|
9
|
+
import { SMegaMenuColumn as v, SMegaMenuHeading as y, SMegaMenuItemRoot as b, SMegaMenuPanel as x, SMegaMenuSubmenu as S, SMegaMenuSubmenuNode as C } from "./mega-menu-slots.js";
|
|
10
|
+
import * as w from "react";
|
|
11
|
+
import { jsx as T, jsxs as E } from "react/jsx-runtime";
|
|
12
|
+
//#region lib/s-mega-menu/mega-menu-panel.tsx
|
|
13
|
+
function D(e, t, n) {
|
|
14
|
+
return {
|
|
15
|
+
...e.ownerState,
|
|
16
|
+
active: e.getIsActive(t),
|
|
17
|
+
hasChildren: !!t.children?.length,
|
|
18
|
+
item: t,
|
|
19
|
+
...n
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
function O({ closeParent: e, ctx: s, depth: c, item: l, onOpenSubmenu: p, onRowClick: h, open: g = !1, resolvedLayout: _, rowRef: v, side: y = "right", submenuId: x, triggerId: S }) {
|
|
23
|
+
let C = D(s, l, {
|
|
24
|
+
depth: c,
|
|
25
|
+
heading: !1,
|
|
26
|
+
open: g,
|
|
27
|
+
resolvedLayout: _,
|
|
28
|
+
side: y
|
|
29
|
+
}), w = s.slots?.item ?? b, E = C.hasChildren, O = r((t) => {
|
|
30
|
+
let n = t.currentTarget;
|
|
31
|
+
switch (t.key) {
|
|
32
|
+
case "ArrowDown":
|
|
33
|
+
t.preventDefault(), f(m(n), n, 1);
|
|
34
|
+
break;
|
|
35
|
+
case "ArrowUp":
|
|
36
|
+
t.preventDefault(), f(m(n), n, -1);
|
|
37
|
+
break;
|
|
38
|
+
case "Home":
|
|
39
|
+
t.preventDefault(), m(n)[0]?.focus();
|
|
40
|
+
break;
|
|
41
|
+
case "End": {
|
|
42
|
+
t.preventDefault();
|
|
43
|
+
let e = m(n);
|
|
44
|
+
e[e.length - 1]?.focus();
|
|
45
|
+
break;
|
|
46
|
+
}
|
|
47
|
+
case "ArrowRight":
|
|
48
|
+
t.preventDefault(), p ? p() : d(n, 1);
|
|
49
|
+
break;
|
|
50
|
+
case "ArrowLeft":
|
|
51
|
+
t.preventDefault(), e ? e() : d(n, -1) || s.closeMenu({
|
|
52
|
+
event: t,
|
|
53
|
+
focusTrigger: !0,
|
|
54
|
+
reason: "triggerKeyDown"
|
|
55
|
+
});
|
|
56
|
+
break;
|
|
57
|
+
case "Escape":
|
|
58
|
+
t.preventDefault(), s.closeMenu({
|
|
59
|
+
event: t,
|
|
60
|
+
focusTrigger: !0,
|
|
61
|
+
reason: "escapeKeyDown"
|
|
62
|
+
});
|
|
63
|
+
break;
|
|
64
|
+
default: break;
|
|
65
|
+
}
|
|
66
|
+
}), k = E ? void 0 : l.component ?? (l.href ? s.linkComponent : void 0), A = E ? void 0 : l.href, { slotProps: j, ...M } = t(s.slotProps?.item, C) ?? {}, { ref: N, ...P } = i(w, a(M, {
|
|
67
|
+
[u]: "",
|
|
68
|
+
"aria-controls": E ? x : void 0,
|
|
69
|
+
"aria-current": C.active && A ? "page" : void 0,
|
|
70
|
+
"aria-expanded": E ? g : void 0,
|
|
71
|
+
component: k,
|
|
72
|
+
description: l.description,
|
|
73
|
+
disabled: l.disabled,
|
|
74
|
+
href: A,
|
|
75
|
+
icon: l.icon,
|
|
76
|
+
onClick: h,
|
|
77
|
+
onKeyDown: O,
|
|
78
|
+
rel: A ? l.rel : void 0,
|
|
79
|
+
selected: C.active,
|
|
80
|
+
slotProps: {
|
|
81
|
+
...j,
|
|
82
|
+
label: a(j?.label, { variant: c === 0 ? "body1" : "body2" }),
|
|
83
|
+
trailing: a(j?.trailing, { sx: { color: "inherit" } })
|
|
84
|
+
},
|
|
85
|
+
target: A ? l.target : void 0,
|
|
86
|
+
trailing: E ? /* @__PURE__ */ T(o, { fontSize: "small" }) : void 0,
|
|
87
|
+
id: S,
|
|
88
|
+
variant: _ === "columns" ? "plain" : "inset"
|
|
89
|
+
}), C), F = n(N, v);
|
|
90
|
+
return /* @__PURE__ */ T(w, {
|
|
91
|
+
...P,
|
|
92
|
+
ref: F,
|
|
93
|
+
label: s.renderItem ? s.renderItem(l, C) : l.label
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
function k({ closeParent: o, ctx: s, depth: l, item: u, onSubmenuOpenChange: d, open: f = !1, resolvedLayout: m }) {
|
|
97
|
+
let h = w.useRef(null), g = w.useRef(null), v = w.useRef(null), y = w.useRef(void 0), b = w.useRef(!1), [x, k] = w.useState("right"), A = w.useId(), M = `${A}-submenu`, N = `${A}-trigger`, P = u.children ?? [], F = w.useCallback(() => {
|
|
98
|
+
y.current &&= (clearTimeout(y.current), void 0);
|
|
99
|
+
}, []);
|
|
100
|
+
w.useEffect(() => F, [F]);
|
|
101
|
+
let I = r(() => {
|
|
102
|
+
k(_(h.current, g.current));
|
|
103
|
+
});
|
|
104
|
+
w.useLayoutEffect(() => {
|
|
105
|
+
f && (I(), b.current && (b.current = !1, p(g.current)?.focus()));
|
|
106
|
+
}, [f, I]);
|
|
107
|
+
let L = r(() => {
|
|
108
|
+
F(), !u.disabled && (I(), d?.(!0));
|
|
109
|
+
}), R = r(() => {
|
|
110
|
+
F(), y.current = setTimeout(() => d?.(!1), s.ownerState.closeDelay);
|
|
111
|
+
}), z = r((e) => {
|
|
112
|
+
F(), d?.(!1), e && v.current?.focus();
|
|
113
|
+
}), B = r(() => {
|
|
114
|
+
if (f) {
|
|
115
|
+
p(g.current)?.focus();
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
b.current = !0, L();
|
|
119
|
+
}), V = r(() => {
|
|
120
|
+
if (!f) {
|
|
121
|
+
L();
|
|
122
|
+
return;
|
|
123
|
+
}
|
|
124
|
+
z(!1);
|
|
125
|
+
}), H = D(s, u, {
|
|
126
|
+
depth: l,
|
|
127
|
+
heading: !1,
|
|
128
|
+
open: f,
|
|
129
|
+
resolvedLayout: m,
|
|
130
|
+
side: x
|
|
131
|
+
}), U = s.slots?.submenuNode ?? C, W = s.slots?.submenu ?? S, G = r((e) => {
|
|
132
|
+
let t = e.relatedTarget;
|
|
133
|
+
!t || e.currentTarget.contains(t) || z(!1);
|
|
134
|
+
}), { ref: K, ...q } = i(U, a(t(s.slotProps?.submenuNode, H), {
|
|
135
|
+
[c]: "",
|
|
136
|
+
"data-side": x,
|
|
137
|
+
onBlurCapture: G,
|
|
138
|
+
onFocus: I,
|
|
139
|
+
onPointerEnter: (e) => {
|
|
140
|
+
!u.disabled && e.pointerType !== "touch" && L();
|
|
141
|
+
},
|
|
142
|
+
onPointerLeave: (e) => {
|
|
143
|
+
e.pointerType !== "touch" && R();
|
|
144
|
+
}
|
|
145
|
+
}), H), J = n(K, h), { ref: Y, sx: X, ...Z } = i(W, a(t(s.slotProps?.submenu, H), {
|
|
146
|
+
"aria-hidden": f ? void 0 : !0,
|
|
147
|
+
"aria-labelledby": N,
|
|
148
|
+
id: M,
|
|
149
|
+
role: "region"
|
|
150
|
+
}), H), Q = n(Y, g);
|
|
151
|
+
return /* @__PURE__ */ E(U, {
|
|
152
|
+
...q,
|
|
153
|
+
ref: J,
|
|
154
|
+
children: [/* @__PURE__ */ T(O, {
|
|
155
|
+
closeParent: o,
|
|
156
|
+
ctx: s,
|
|
157
|
+
depth: l,
|
|
158
|
+
item: u,
|
|
159
|
+
onOpenSubmenu: B,
|
|
160
|
+
onRowClick: V,
|
|
161
|
+
open: f,
|
|
162
|
+
resolvedLayout: m,
|
|
163
|
+
rowRef: v,
|
|
164
|
+
side: x,
|
|
165
|
+
submenuId: M,
|
|
166
|
+
triggerId: N
|
|
167
|
+
}), /* @__PURE__ */ T(W, {
|
|
168
|
+
...Z,
|
|
169
|
+
ref: Q,
|
|
170
|
+
sx: [...e(X)],
|
|
171
|
+
children: f || s.keepMounted ? /* @__PURE__ */ T(j, {
|
|
172
|
+
closeParent: () => z(!0),
|
|
173
|
+
ctx: s,
|
|
174
|
+
depth: l + 1,
|
|
175
|
+
items: P
|
|
176
|
+
}) : null
|
|
177
|
+
})]
|
|
178
|
+
});
|
|
179
|
+
}
|
|
180
|
+
function A({ closeParent: e, ctx: n, depth: r, item: o }) {
|
|
181
|
+
let c = D(n, o, {
|
|
182
|
+
depth: r,
|
|
183
|
+
heading: !0,
|
|
184
|
+
open: !1,
|
|
185
|
+
resolvedLayout: "columns",
|
|
186
|
+
side: "right"
|
|
187
|
+
}), l = `${w.useId()}-heading`, u = n.slots?.column ?? v, d = n.slots?.heading ?? y, f = i(u, a(t(n.slotProps?.column, c), {
|
|
188
|
+
[s]: "",
|
|
189
|
+
"aria-labelledby": l
|
|
190
|
+
}), c), p = i(d, a(t(n.slotProps?.heading, c), {
|
|
191
|
+
component: "h3",
|
|
192
|
+
id: l
|
|
193
|
+
}), c);
|
|
194
|
+
return /* @__PURE__ */ E(u, {
|
|
195
|
+
...f,
|
|
196
|
+
children: [/* @__PURE__ */ T(d, {
|
|
197
|
+
...p,
|
|
198
|
+
children: n.renderItem ? n.renderItem(o, c) : o.label
|
|
199
|
+
}), (o.children ?? []).map((t) => /* @__PURE__ */ T(O, {
|
|
200
|
+
closeParent: e,
|
|
201
|
+
ctx: n,
|
|
202
|
+
depth: r + 1,
|
|
203
|
+
item: t,
|
|
204
|
+
onRowClick: (e) => n.closeMenu({
|
|
205
|
+
event: e,
|
|
206
|
+
reason: "itemClick"
|
|
207
|
+
}),
|
|
208
|
+
resolvedLayout: "columns"
|
|
209
|
+
}, t.id))]
|
|
210
|
+
});
|
|
211
|
+
}
|
|
212
|
+
function j({ closeParent: n, ctx: r, depth: o, items: c }) {
|
|
213
|
+
let u = g(c, r.ownerState.layout), [d, f] = w.useState(null), p = u === "columns" || !h(c), m = {
|
|
214
|
+
...r.ownerState,
|
|
215
|
+
depth: o,
|
|
216
|
+
resolvedLayout: u,
|
|
217
|
+
scrollable: p
|
|
218
|
+
}, _ = r.slots?.panel ?? x, { sx: v, ...y } = i(_, a(t(r.slotProps?.panel, m), {
|
|
219
|
+
[l]: "",
|
|
220
|
+
...u === "list" ? { [s]: "" } : {}
|
|
221
|
+
}), m);
|
|
222
|
+
return /* @__PURE__ */ T(_, {
|
|
223
|
+
...y,
|
|
224
|
+
sx: [...e(v)],
|
|
225
|
+
children: u === "columns" ? c.map((e) => /* @__PURE__ */ T(A, {
|
|
226
|
+
closeParent: n,
|
|
227
|
+
ctx: r,
|
|
228
|
+
depth: o,
|
|
229
|
+
item: e,
|
|
230
|
+
resolvedLayout: u
|
|
231
|
+
}, e.id)) : c.map((e) => e.children?.length ? /* @__PURE__ */ T(k, {
|
|
232
|
+
closeParent: n,
|
|
233
|
+
ctx: r,
|
|
234
|
+
depth: o,
|
|
235
|
+
item: e,
|
|
236
|
+
onSubmenuOpenChange: (t) => f((n) => t ? e.id : n === e.id ? null : n),
|
|
237
|
+
open: d === e.id,
|
|
238
|
+
resolvedLayout: u
|
|
239
|
+
}, e.id) : /* @__PURE__ */ T(O, {
|
|
240
|
+
closeParent: n,
|
|
241
|
+
ctx: r,
|
|
242
|
+
depth: o,
|
|
243
|
+
item: e,
|
|
244
|
+
onRowClick: (e) => r.closeMenu({
|
|
245
|
+
event: e,
|
|
246
|
+
reason: "itemClick"
|
|
247
|
+
}),
|
|
248
|
+
resolvedLayout: u
|
|
249
|
+
}, e.id))
|
|
250
|
+
});
|
|
251
|
+
}
|
|
252
|
+
//#endregion
|
|
253
|
+
export { j as MegaMenuPanelContent };
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { SMegaMenuItemState, SMegaMenuOwnerState, SMegaMenuPanelState, SMegaMenuTriggerState } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Navigation root. Semantic `nav` markup is fixed by the default slot; consumers
|
|
4
|
+
* can replace the slot when their application needs a custom navigation root.
|
|
5
|
+
*/
|
|
6
|
+
export declare const SMegaMenuRoot: import('@emotion/styled').StyledComponent<import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme> & {
|
|
7
|
+
ownerState: SMegaMenuOwnerState;
|
|
8
|
+
}, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLElement>, HTMLElement>, {}>;
|
|
9
|
+
/**
|
|
10
|
+
* Top-level trigger.
|
|
11
|
+
*
|
|
12
|
+
* While its panel is open an invisible `::after` bridge extends past the bottom
|
|
13
|
+
* edge so the pointer never leaves a hoverable element on its way down to the
|
|
14
|
+
* panel surface. See the close-intent explanation in `s-mega-menu.tsx`.
|
|
15
|
+
*/
|
|
16
|
+
export declare const SMegaMenuTrigger: import('@emotion/styled').StyledComponent<import('@mui/material').ButtonBaseOwnProps & Omit<import('@mui/material').ButtonBaseOwnProps, keyof import('@mui/material').ButtonBaseOwnProps> & import('@mui/material/OverridableComponent').CommonProps & Omit<import('react').DetailedHTMLProps<import('react').ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "className" | "style" | "classes" | "children" | "sx" | "disabled" | "tabIndex" | "action" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "nativeButton" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "type"> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme> & {
|
|
17
|
+
ownerState: SMegaMenuTriggerState;
|
|
18
|
+
}, {}, {}>;
|
|
19
|
+
/** Chevron rendered by the default trigger content, rotated while the panel is open. */
|
|
20
|
+
export declare const SMegaMenuTriggerArrow: import('@emotion/styled').StyledComponent<import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme> & {
|
|
21
|
+
ownerState: SMegaMenuTriggerState;
|
|
22
|
+
}, import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {}>;
|
|
23
|
+
/**
|
|
24
|
+
* Popover hosting the top-level panel.
|
|
25
|
+
*
|
|
26
|
+
* `pointerEvents: 'none'` on the popover root plus `pointerEvents: 'auto'` on the
|
|
27
|
+
* surface keeps the page underneath interactive — the non-modal pattern
|
|
28
|
+
* documented in the SPopover `hover-preview` example. Without it the modal root
|
|
29
|
+
* would swallow every pointer event outside the surface.
|
|
30
|
+
*/
|
|
31
|
+
export declare const SMegaMenuPopover: import('@emotion/styled').StyledComponent<Omit<import('../s-popover').SPopoverProps, "ref"> & import('react').RefAttributes<HTMLDivElement> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme> & {
|
|
32
|
+
ownerState?: SMegaMenuOwnerState;
|
|
33
|
+
}, {}, {}>;
|
|
34
|
+
/** Content container inside a panel surface. Also used for every flyout submenu. */
|
|
35
|
+
export declare const SMegaMenuPanel: import('@emotion/styled').StyledComponent<import('@mui/system').BoxOwnProps<import('@mui/material').Theme> & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof import('@mui/system').BoxOwnProps<import('@mui/material').Theme>> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme> & {
|
|
36
|
+
ownerState: SMegaMenuPanelState;
|
|
37
|
+
}, {}, {}>;
|
|
38
|
+
/** Column wrapper in the `columns` layout. */
|
|
39
|
+
export declare const SMegaMenuColumn: import('@emotion/styled').StyledComponent<import('@mui/system').BoxOwnProps<import('@mui/material').Theme> & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof import('@mui/system').BoxOwnProps<import('@mui/material').Theme>> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme> & {
|
|
40
|
+
ownerState: SMegaMenuItemState;
|
|
41
|
+
}, {}, {}>;
|
|
42
|
+
/** Non-interactive label of one column group. */
|
|
43
|
+
export declare const SMegaMenuHeading: import('@emotion/styled').StyledComponent<import('@mui/material').TypographyOwnProps & import('@mui/material/OverridableComponent').CommonProps & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "color" | "className" | "style" | "classes" | "children" | "sx" | "variant" | "align" | "gutterBottom" | "noWrap" | "variantMapping"> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme> & {
|
|
44
|
+
ownerState: SMegaMenuItemState;
|
|
45
|
+
}, {}, {}>;
|
|
46
|
+
/** Panel row. */
|
|
47
|
+
export declare const SMegaMenuItemRoot: import('@emotion/styled').StyledComponent<Omit<import('../s-list-action-item').SListActionItemProps, "ref"> & import('react').RefAttributes<HTMLElement> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme> & {
|
|
48
|
+
ownerState: SMegaMenuItemState;
|
|
49
|
+
}, {}, {}>;
|
|
50
|
+
/**
|
|
51
|
+
* Positioned wrapper around a row plus its flyout submenu.
|
|
52
|
+
*
|
|
53
|
+
* While open, an invisible `::after` bridge spans the horizontal gap between the
|
|
54
|
+
* row and the submenu, flipped to the other side when collision detection moved
|
|
55
|
+
* the submenu left. Because the submenu is a DOM descendant of this wrapper, the
|
|
56
|
+
* pointer never leaves the wrapper on its way across — `pointerleave` simply
|
|
57
|
+
* does not fire.
|
|
58
|
+
*/
|
|
59
|
+
export declare const SMegaMenuSubmenuNode: import('@emotion/styled').StyledComponent<import('@mui/system').BoxOwnProps<import('@mui/material').Theme> & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof import('@mui/system').BoxOwnProps<import('@mui/material').Theme>> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme> & {
|
|
60
|
+
ownerState: SMegaMenuItemState;
|
|
61
|
+
}, {}, {}>;
|
|
62
|
+
/** Flyout submenu surface rendered next to a nested row. */
|
|
63
|
+
export declare const SMegaMenuSubmenu: import('@emotion/styled').StyledComponent<import('@mui/material').PaperOwnProps & import('@mui/material/OverridableComponent').CommonProps & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "className" | "style" | "classes" | "children" | "elevation" | "square" | "sx" | "variant"> & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme> & {
|
|
64
|
+
ownerState: SMegaMenuItemState;
|
|
65
|
+
}, {}, {}>;
|
|
@@ -0,0 +1,232 @@
|
|
|
1
|
+
import { actionHoverMedia as e, getFocusVisibleStyle as t, reducedMotionMedia as n } from "../theme/components/action-styles.js";
|
|
2
|
+
import { SListActionItem as r } from "../s-list-action-item/s-list-action-item.js";
|
|
3
|
+
import { SPopover as i } from "../s-popover/s-popover.js";
|
|
4
|
+
import { Box as a, ButtonBase as o, Paper as s, Typography as c, styled as l } from "@mui/material";
|
|
5
|
+
//#region lib/s-mega-menu/mega-menu-slots.tsx
|
|
6
|
+
var u = 44, d = .75, f = l("nav", {
|
|
7
|
+
name: "SMegaMenu",
|
|
8
|
+
slot: "Root",
|
|
9
|
+
shouldForwardProp: (e) => e !== "ownerState"
|
|
10
|
+
})(({ theme: e }) => ({
|
|
11
|
+
alignItems: "center",
|
|
12
|
+
display: "flex",
|
|
13
|
+
flexWrap: "nowrap",
|
|
14
|
+
gap: e.spacing(1.25),
|
|
15
|
+
minWidth: 0,
|
|
16
|
+
[e.breakpoints.down("lg")]: { gap: e.spacing(.75) }
|
|
17
|
+
})), p = l(o, {
|
|
18
|
+
name: "SMegaMenu",
|
|
19
|
+
slot: "Trigger",
|
|
20
|
+
shouldForwardProp: (e) => e !== "ownerState"
|
|
21
|
+
})(({ theme: r }) => ({
|
|
22
|
+
...r.typography.body1,
|
|
23
|
+
alignItems: "center",
|
|
24
|
+
backgroundColor: "transparent",
|
|
25
|
+
border: "1px solid transparent",
|
|
26
|
+
borderRadius: r.radius.md,
|
|
27
|
+
color: (r.vars ?? r).palette.text.primary,
|
|
28
|
+
display: "inline-flex",
|
|
29
|
+
gap: r.spacing(1.25),
|
|
30
|
+
minHeight: u,
|
|
31
|
+
minWidth: 0,
|
|
32
|
+
padding: r.spacing(.75, 1.5),
|
|
33
|
+
position: "relative",
|
|
34
|
+
textDecoration: "none",
|
|
35
|
+
transition: r.transitions.create([
|
|
36
|
+
"background-color",
|
|
37
|
+
"border-color",
|
|
38
|
+
"color"
|
|
39
|
+
], { duration: r.transitions.duration.shorter }),
|
|
40
|
+
whiteSpace: "nowrap",
|
|
41
|
+
[e]: { "&:hover": { backgroundColor: (r.vars ?? r).palette.action.hover } },
|
|
42
|
+
"&.Mui-focusVisible": {
|
|
43
|
+
backgroundColor: (r.vars ?? r).palette.action.focus,
|
|
44
|
+
...t(r)
|
|
45
|
+
},
|
|
46
|
+
"&.Mui-disabled": { color: (r.vars ?? r).palette.text.disabled },
|
|
47
|
+
[r.breakpoints.down("lg")]: { padding: r.spacing(.75, 1) },
|
|
48
|
+
[n]: { transition: "none" },
|
|
49
|
+
variants: [{
|
|
50
|
+
props: ({ ownerState: e }) => e.open,
|
|
51
|
+
style: {
|
|
52
|
+
backgroundColor: (r.vars ?? r).palette.action.selected,
|
|
53
|
+
"&::after": {
|
|
54
|
+
content: "\"\"",
|
|
55
|
+
height: r.spacing(2.5),
|
|
56
|
+
left: 0,
|
|
57
|
+
position: "absolute",
|
|
58
|
+
top: "100%",
|
|
59
|
+
width: "100%"
|
|
60
|
+
},
|
|
61
|
+
[e]: { "&:hover": { backgroundColor: (r.vars ?? r).palette.action.selected } }
|
|
62
|
+
}
|
|
63
|
+
}, {
|
|
64
|
+
props: ({ ownerState: e }) => e.active,
|
|
65
|
+
style: {
|
|
66
|
+
backgroundColor: (r.vars ?? r).palette.action.selected,
|
|
67
|
+
color: (r.vars ?? r).palette.text.primary,
|
|
68
|
+
fontWeight: r.typography.fontWeightMedium,
|
|
69
|
+
[e]: { "&:hover": { backgroundColor: (r.vars ?? r).palette.action.selected } }
|
|
70
|
+
}
|
|
71
|
+
}]
|
|
72
|
+
})), m = l("span", {
|
|
73
|
+
name: "SMegaMenu",
|
|
74
|
+
slot: "TriggerArrow",
|
|
75
|
+
shouldForwardProp: (e) => e !== "ownerState"
|
|
76
|
+
})(({ theme: e }) => ({
|
|
77
|
+
alignItems: "center",
|
|
78
|
+
color: "inherit",
|
|
79
|
+
display: "inline-flex",
|
|
80
|
+
flexShrink: 0,
|
|
81
|
+
transition: e.transitions.create(["transform"], { duration: e.transitions.duration.shorter }),
|
|
82
|
+
[n]: { transition: "none" },
|
|
83
|
+
variants: [{
|
|
84
|
+
props: ({ ownerState: e }) => e.open,
|
|
85
|
+
style: { transform: "rotate(180deg)" }
|
|
86
|
+
}]
|
|
87
|
+
})), h = l(i, {
|
|
88
|
+
name: "SMegaMenu",
|
|
89
|
+
slot: "Popover",
|
|
90
|
+
shouldForwardProp: (e) => e !== "ownerState"
|
|
91
|
+
})({ pointerEvents: "none" }), g = l(a, {
|
|
92
|
+
name: "SMegaMenu",
|
|
93
|
+
slot: "Panel",
|
|
94
|
+
shouldForwardProp: (e) => e !== "ownerState"
|
|
95
|
+
})(({ theme: e }) => ({
|
|
96
|
+
minWidth: 0,
|
|
97
|
+
variants: [
|
|
98
|
+
{
|
|
99
|
+
props: ({ ownerState: e }) => e.resolvedLayout === "list",
|
|
100
|
+
style: {
|
|
101
|
+
display: "block",
|
|
102
|
+
paddingBlock: e.spacing(d)
|
|
103
|
+
}
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
props: ({ ownerState: e }) => e.resolvedLayout === "columns",
|
|
107
|
+
style: {
|
|
108
|
+
alignItems: "start",
|
|
109
|
+
columnGap: e.spacing(5),
|
|
110
|
+
display: "grid",
|
|
111
|
+
gridAutoColumns: "1fr",
|
|
112
|
+
gridAutoFlow: "column",
|
|
113
|
+
padding: e.spacing(d)
|
|
114
|
+
}
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
props: ({ ownerState: e }) => e.scrollable,
|
|
118
|
+
style: {
|
|
119
|
+
maxHeight: "min(70vh, 620px)",
|
|
120
|
+
overflowY: "auto"
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
]
|
|
124
|
+
})), _ = l(a, {
|
|
125
|
+
name: "SMegaMenu",
|
|
126
|
+
slot: "Column",
|
|
127
|
+
shouldForwardProp: (e) => e !== "ownerState"
|
|
128
|
+
})(({ theme: e }) => ({
|
|
129
|
+
display: "flex",
|
|
130
|
+
flexDirection: "column",
|
|
131
|
+
gap: e.spacing(d),
|
|
132
|
+
minWidth: 0
|
|
133
|
+
})), v = l(c, {
|
|
134
|
+
name: "SMegaMenu",
|
|
135
|
+
slot: "Heading",
|
|
136
|
+
shouldForwardProp: (e) => e !== "ownerState"
|
|
137
|
+
})(({ theme: e }) => ({
|
|
138
|
+
...e.typography.subtitle1,
|
|
139
|
+
color: (e.vars ?? e).palette.text.primary,
|
|
140
|
+
margin: 0,
|
|
141
|
+
padding: e.spacing(1, 1.5, .5),
|
|
142
|
+
whiteSpace: "nowrap"
|
|
143
|
+
})), y = l(r, {
|
|
144
|
+
name: "SMegaMenu",
|
|
145
|
+
slot: "Item",
|
|
146
|
+
shouldForwardProp: (e) => e !== "ownerState"
|
|
147
|
+
})(({ theme: e }) => ({
|
|
148
|
+
borderRadius: e.radius.md,
|
|
149
|
+
flex: "0 0 auto",
|
|
150
|
+
paddingInline: e.spacing(1.5),
|
|
151
|
+
whiteSpace: "nowrap",
|
|
152
|
+
variants: [{
|
|
153
|
+
props: ({ ownerState: e }) => e.resolvedLayout === "list",
|
|
154
|
+
style: {
|
|
155
|
+
marginInline: e.spacing(d),
|
|
156
|
+
width: `calc(100% - ${e.spacing(d * 2)})`
|
|
157
|
+
}
|
|
158
|
+
}]
|
|
159
|
+
})), b = l(a, {
|
|
160
|
+
name: "SMegaMenu",
|
|
161
|
+
slot: "SubmenuNode",
|
|
162
|
+
shouldForwardProp: (e) => e !== "ownerState"
|
|
163
|
+
})(({ theme: e }) => ({
|
|
164
|
+
minWidth: 0,
|
|
165
|
+
position: "relative",
|
|
166
|
+
variants: [{
|
|
167
|
+
props: ({ ownerState: e }) => e.open,
|
|
168
|
+
style: { "&::after": {
|
|
169
|
+
content: "\"\"",
|
|
170
|
+
height: "100%",
|
|
171
|
+
left: "100%",
|
|
172
|
+
position: "absolute",
|
|
173
|
+
top: 0,
|
|
174
|
+
width: e.spacing(1.5)
|
|
175
|
+
} }
|
|
176
|
+
}, {
|
|
177
|
+
props: ({ ownerState: e }) => e.open && e.side === "left",
|
|
178
|
+
style: { "&::after": {
|
|
179
|
+
left: "auto",
|
|
180
|
+
right: "100%"
|
|
181
|
+
} }
|
|
182
|
+
}]
|
|
183
|
+
})), x = l(s, {
|
|
184
|
+
name: "SMegaMenu",
|
|
185
|
+
slot: "Submenu",
|
|
186
|
+
shouldForwardProp: (e) => e !== "ownerState"
|
|
187
|
+
})(({ theme: e }) => ({
|
|
188
|
+
backgroundColor: (e.vars ?? e).palette.background.paper,
|
|
189
|
+
backgroundImage: "none",
|
|
190
|
+
border: "1px solid",
|
|
191
|
+
borderColor: (e.vars ?? e).palette.divider,
|
|
192
|
+
borderRadius: e.radius.md,
|
|
193
|
+
left: `calc(100% + ${e.spacing(1.5)})`,
|
|
194
|
+
minWidth: e.spacing(25),
|
|
195
|
+
opacity: 0,
|
|
196
|
+
overflow: "visible",
|
|
197
|
+
pointerEvents: "none",
|
|
198
|
+
position: "absolute",
|
|
199
|
+
top: 0,
|
|
200
|
+
transform: `translateX(${e.spacing(1)})`,
|
|
201
|
+
transition: e.transitions.create([
|
|
202
|
+
"opacity",
|
|
203
|
+
"transform",
|
|
204
|
+
"visibility"
|
|
205
|
+
], { duration: e.transitions.duration.shorter }),
|
|
206
|
+
visibility: "hidden",
|
|
207
|
+
width: "max-content",
|
|
208
|
+
zIndex: 1,
|
|
209
|
+
[n]: {
|
|
210
|
+
transform: "none",
|
|
211
|
+
transition: "none"
|
|
212
|
+
},
|
|
213
|
+
variants: [{
|
|
214
|
+
props: ({ ownerState: e }) => e.side === "left",
|
|
215
|
+
style: {
|
|
216
|
+
left: "auto",
|
|
217
|
+
right: `calc(100% + ${e.spacing(1.5)})`,
|
|
218
|
+
transform: `translateX(-${e.spacing(1)})`
|
|
219
|
+
}
|
|
220
|
+
}, {
|
|
221
|
+
props: ({ ownerState: e }) => e.open,
|
|
222
|
+
style: {
|
|
223
|
+
opacity: 1,
|
|
224
|
+
pointerEvents: "auto",
|
|
225
|
+
transform: "translateX(0)",
|
|
226
|
+
visibility: "visible",
|
|
227
|
+
zIndex: 2
|
|
228
|
+
}
|
|
229
|
+
}]
|
|
230
|
+
}));
|
|
231
|
+
//#endregion
|
|
232
|
+
export { _ as SMegaMenuColumn, v as SMegaMenuHeading, y as SMegaMenuItemRoot, g as SMegaMenuPanel, h as SMegaMenuPopover, f as SMegaMenuRoot, x as SMegaMenuSubmenu, b as SMegaMenuSubmenuNode, p as SMegaMenuTrigger, m as SMegaMenuTriggerArrow };
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { SMegaMenuItem, SMegaMenuOwnerState, SMegaMenuSlotProps, SMegaMenuSlots, SMegaMenuTriggerState } from './types';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
export interface MegaMenuTriggerButtonProps<T = unknown> {
|
|
4
|
+
/** The trigger points at the active `href`. */
|
|
5
|
+
active: boolean;
|
|
6
|
+
/** The item has children, so the trigger owns a panel. */
|
|
7
|
+
hasPanel: boolean;
|
|
8
|
+
item: SMegaMenuItem<T>;
|
|
9
|
+
/** Default element used when the item has an `href`. */
|
|
10
|
+
linkComponent?: React.ElementType;
|
|
11
|
+
onClick: React.MouseEventHandler<HTMLElement>;
|
|
12
|
+
onFocus: React.FocusEventHandler<HTMLElement>;
|
|
13
|
+
onKeyDown: React.KeyboardEventHandler<HTMLElement>;
|
|
14
|
+
onPointerEnter: React.PointerEventHandler<HTMLElement>;
|
|
15
|
+
onPointerLeave: React.PointerEventHandler<HTMLElement>;
|
|
16
|
+
/** The trigger's panel is open. */
|
|
17
|
+
open: boolean;
|
|
18
|
+
ownerState: SMegaMenuOwnerState<T>;
|
|
19
|
+
/** `id` of the panel surface, referenced by `aria-controls` while open. */
|
|
20
|
+
panelId: string;
|
|
21
|
+
/** Registers the rendered element so the menu can anchor to it and restore focus. */
|
|
22
|
+
registerRef: (id: string, node: HTMLElement | null) => void;
|
|
23
|
+
renderTrigger?: (item: SMegaMenuItem<T>, state: SMegaMenuTriggerState<T>) => React.ReactNode;
|
|
24
|
+
slotProps?: SMegaMenuSlotProps<T>;
|
|
25
|
+
slots?: SMegaMenuSlots;
|
|
26
|
+
/** Stable accessible relationship target for the panel's `aria-labelledby`. */
|
|
27
|
+
triggerId: string;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* A single top-level trigger.
|
|
31
|
+
*
|
|
32
|
+
* Extracted from `SMegaMenu` so the per-item `useForkRef` stays a top-level hook
|
|
33
|
+
* instead of being called inside a render loop.
|
|
34
|
+
*/
|
|
35
|
+
export declare function MegaMenuTriggerButton<T>({ active, hasPanel, item, linkComponent, onClick, onFocus, onKeyDown, onPointerEnter, onPointerLeave, open, ownerState, panelId, registerRef, renderTrigger, slotProps, slots, triggerId, }: Readonly<MegaMenuTriggerButtonProps<T>>): React.JSX.Element;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { SMegaMenuProps } from './types';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
interface SMegaMenuComponent {
|
|
4
|
+
<T = unknown>(props: SMegaMenuProps<T> & React.RefAttributes<HTMLElement>): React.JSX.Element;
|
|
5
|
+
displayName?: string;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Multi-level navigation mega menu built on `SPopover`.
|
|
9
|
+
*
|
|
10
|
+
* The panel opens on hover, click/tap and keyboard, and — the point of
|
|
11
|
+
* the component — never closes while the pointer or focus travels between the
|
|
12
|
+
* trigger and the panel content:
|
|
13
|
+
*
|
|
14
|
+
* 1. An invisible `::after` bridge under an open trigger covers the vertical gap,
|
|
15
|
+
* and a second bridge on every submenu wrapper covers the horizontal gap, so
|
|
16
|
+
* `pointerleave` usually does not fire at all while crossing.
|
|
17
|
+
* 2. Any `pointerleave` that does fire only *schedules* a close after
|
|
18
|
+
* `closeDelay`; entering the panel surface cancels the pending close.
|
|
19
|
+
* 3. Focus never closes the panel unless `relatedTarget` is outside both the
|
|
20
|
+
* navigation root and the panel surface.
|
|
21
|
+
*/
|
|
22
|
+
export declare const SMegaMenu: SMegaMenuComponent;
|
|
23
|
+
export default SMegaMenu;
|